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

View Problem - Process Solution

%------------------------------------------------------------------------------
% File     : cocATP---0.2.0
% Problem  : SEU949^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 : n099.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:25 EDT 2014

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

% Comments : 
%------------------------------------------------------------------------------
%----NO SOLUTION OUTPUT BY SYSTEM
%------------------------------------------------------------------------------
%----ORIGINAL SYSTEM OUTPUT
% % Problem  : SEU949^5 : TPTP v6.1.0. Released v4.0.0.
% % Command  : python CASC.py /export/starexec/sandbox/benchmark/theBenchmark.p
% % Computer : n099.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:45:01 CDT 2014
% % CPUTime  : 300.09 
% Python 2.7.5
% Using paths ['/home/cristobal/cocATP/CASC/TPTP/', '/export/starexec/sandbox/benchmark/', '/export/starexec/sandbox/benchmark/']
% FOF formula (<kernel.Constant object at 0xdd2f80>, <kernel.DependentProduct object at 0xdd2488>) of role type named f
% Using role type
% Declaring f:(fofType->(fofType->Prop))
% FOF formula (<kernel.Constant object at 0xfabab8>, <kernel.DependentProduct object at 0xdd2488>) of role type named g
% Using role type
% Declaring g:(fofType->(fofType->Prop))
% FOF formula ((forall (Xx:fofType) (Xy:fofType), ((((eq (fofType->Prop)) (g Xx)) (g Xy))->(((eq (fofType->Prop)) (f Xx)) (f Xy))))->((ex ((fofType->Prop)->(fofType->Prop))) (fun (Xh:((fofType->Prop)->(fofType->Prop)))=> (((eq (fofType->(fofType->Prop))) (fun (Xx:fofType)=> (Xh (g Xx)))) f)))) of role conjecture named cTHM589_pme
% Conjecture to prove = ((forall (Xx:fofType) (Xy:fofType), ((((eq (fofType->Prop)) (g Xx)) (g Xy))->(((eq (fofType->Prop)) (f Xx)) (f Xy))))->((ex ((fofType->Prop)->(fofType->Prop))) (fun (Xh:((fofType->Prop)->(fofType->Prop)))=> (((eq (fofType->(fofType->Prop))) (fun (Xx:fofType)=> (Xh (g Xx)))) f)))):Prop
% Parameter fofType_DUMMY:fofType.
% We need to prove ['((forall (Xx:fofType) (Xy:fofType), ((((eq (fofType->Prop)) (g Xx)) (g Xy))->(((eq (fofType->Prop)) (f Xx)) (f Xy))))->((ex ((fofType->Prop)->(fofType->Prop))) (fun (Xh:((fofType->Prop)->(fofType->Prop)))=> (((eq (fofType->(fofType->Prop))) (fun (Xx:fofType)=> (Xh (g Xx)))) f))))']
% Parameter fofType:Type.
% Parameter f:(fofType->(fofType->Prop)).
% Parameter g:(fofType->(fofType->Prop)).
% Trying to prove ((forall (Xx:fofType) (Xy:fofType), ((((eq (fofType->Prop)) (g Xx)) (g Xy))->(((eq (fofType->Prop)) (f Xx)) (f Xy))))->((ex ((fofType->Prop)->(fofType->Prop))) (fun (Xh:((fofType->Prop)->(fofType->Prop)))=> (((eq (fofType->(fofType->Prop))) (fun (Xx:fofType)=> (Xh (g Xx)))) f))))
% Found eq_ref00:=(eq_ref0 (x0 (g x1))):(((eq (fofType->Prop)) (x0 (g x1))) (x0 (g x1)))
% Found (eq_ref0 (x0 (g x1))) as proof of (((eq (fofType->Prop)) (x0 (g x1))) (f x1))
% Found ((eq_ref (fofType->Prop)) (x0 (g x1))) as proof of (((eq (fofType->Prop)) (x0 (g x1))) (f x1))
% Found ((eq_ref (fofType->Prop)) (x0 (g x1))) as proof of (((eq (fofType->Prop)) (x0 (g x1))) (f x1))
% Found eq_ref00:=(eq_ref0 (x0 (g x1))):(((eq (fofType->Prop)) (x0 (g x1))) (x0 (g x1)))
% Found (eq_ref0 (x0 (g x1))) as proof of (((eq (fofType->Prop)) (x0 (g x1))) (f x1))
% Found ((eq_ref (fofType->Prop)) (x0 (g x1))) as proof of (((eq (fofType->Prop)) (x0 (g x1))) (f x1))
% Found ((eq_ref (fofType->Prop)) (x0 (g x1))) as proof of (((eq (fofType->Prop)) (x0 (g x1))) (f x1))
% Found eq_ref000:=(eq_ref00 P):((P (x0 (g x1)))->(P (x0 (g x1))))
% Found (eq_ref00 P) as proof of ((P (x0 (g x1)))->(P (f x1)))
% Found ((eq_ref0 (x0 (g x1))) P) as proof of ((P (x0 (g x1)))->(P (f x1)))
% Found (((eq_ref (fofType->Prop)) (x0 (g x1))) P) as proof of ((P (x0 (g x1)))->(P (f x1)))
% Found (((eq_ref (fofType->Prop)) (x0 (g x1))) P) as proof of ((P (x0 (g x1)))->(P (f x1)))
% Found (fun (P:((fofType->Prop)->Prop))=> (((eq_ref (fofType->Prop)) (x0 (g x1))) P)) as proof of ((P (x0 (g x1)))->(P (f x1)))
% Found eq_ref000:=(eq_ref00 P):((P (x0 (g x1)))->(P (x0 (g x1))))
% Found (eq_ref00 P) as proof of ((P (x0 (g x1)))->(P (f x1)))
% Found ((eq_ref0 (x0 (g x1))) P) as proof of ((P (x0 (g x1)))->(P (f x1)))
% Found (((eq_ref (fofType->Prop)) (x0 (g x1))) P) as proof of ((P (x0 (g x1)))->(P (f x1)))
% Found (((eq_ref (fofType->Prop)) (x0 (g x1))) P) as proof of ((P (x0 (g x1)))->(P (f x1)))
% Found (fun (P:((fofType->Prop)->Prop))=> (((eq_ref (fofType->Prop)) (x0 (g x1))) P)) as proof of ((P (x0 (g x1)))->(P (f x1)))
% Found eq_ref00:=(eq_ref0 ((x0 (g x1)) y)):(((eq Prop) ((x0 (g x1)) y)) ((x0 (g x1)) y))
% Found (eq_ref0 ((x0 (g x1)) y)) as proof of (((eq Prop) ((x0 (g x1)) y)) ((f x1) y))
% Found ((eq_ref Prop) ((x0 (g x1)) y)) as proof of (((eq Prop) ((x0 (g x1)) y)) ((f x1) y))
% Found ((eq_ref Prop) ((x0 (g x1)) y)) as proof of (((eq Prop) ((x0 (g x1)) y)) ((f x1) y))
% Found (fun (y:fofType)=> ((eq_ref Prop) ((x0 (g x1)) y))) as proof of (((eq Prop) ((x0 (g x1)) y)) ((f x1) y))
% Found eq_ref000:=(eq_ref00 P):((P ((x0 (g x1)) y))->(P ((x0 (g x1)) y)))
% Found (eq_ref00 P) as proof of ((P ((x0 (g x1)) y))->(P ((f x1) y)))
% Found ((eq_ref0 ((x0 (g x1)) y)) P) as proof of ((P ((x0 (g x1)) y))->(P ((f x1) y)))
% Found (((eq_ref Prop) ((x0 (g x1)) y)) P) as proof of ((P ((x0 (g x1)) y))->(P ((f x1) y)))
% Found (((eq_ref Prop) ((x0 (g x1)) y)) P) as proof of ((P ((x0 (g x1)) y))->(P ((f x1) y)))
% Found (fun (P:(Prop->Prop))=> (((eq_ref Prop) ((x0 (g x1)) y)) P)) as proof of ((P ((x0 (g x1)) y))->(P ((f x1) y)))
% Found (fun (y:fofType) (P:(Prop->Prop))=> (((eq_ref Prop) ((x0 (g x1)) y)) P)) as proof of (((eq Prop) ((x0 (g x1)) y)) ((f x1) y))
% Found eq_ref00:=(eq_ref0 ((x0 (g x1)) x2)):(((eq Prop) ((x0 (g x1)) x2)) ((x0 (g x1)) x2))
% Found (eq_ref0 ((x0 (g x1)) x2)) as proof of (((eq Prop) ((x0 (g x1)) x2)) ((f x1) x2))
% Found ((eq_ref Prop) ((x0 (g x1)) x2)) as proof of (((eq Prop) ((x0 (g x1)) x2)) ((f x1) x2))
% Found ((eq_ref Prop) ((x0 (g x1)) x2)) as proof of (((eq Prop) ((x0 (g x1)) x2)) ((f x1) x2))
% Found (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2))) as proof of (((eq Prop) ((x0 (g x1)) x2)) ((f x1) x2))
% Found (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2))) as proof of (forall (x:fofType), (((eq Prop) ((x0 (g x1)) x)) ((f x1) x)))
% Found (functional_extensionality0100 (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2)))) as proof of (((eq (fofType->Prop)) (x0 (g x1))) (f x1))
% Found ((functional_extensionality010 (f x1)) (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2)))) as proof of (((eq (fofType->Prop)) (x0 (g x1))) (f x1))
% Found (((functional_extensionality01 (x0 (g x1))) (f x1)) (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2)))) as proof of (((eq (fofType->Prop)) (x0 (g x1))) (f x1))
% Found ((((functional_extensionality0 Prop) (x0 (g x1))) (f x1)) (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2)))) as proof of (((eq (fofType->Prop)) (x0 (g x1))) (f x1))
% Found eq_ref00:=(eq_ref0 ((x0 (g x1)) x2)):(((eq Prop) ((x0 (g x1)) x2)) ((x0 (g x1)) x2))
% Found (eq_ref0 ((x0 (g x1)) x2)) as proof of (((eq Prop) ((x0 (g x1)) x2)) ((f x1) x2))
% Found ((eq_ref Prop) ((x0 (g x1)) x2)) as proof of (((eq Prop) ((x0 (g x1)) x2)) ((f x1) x2))
% Found ((eq_ref Prop) ((x0 (g x1)) x2)) as proof of (((eq Prop) ((x0 (g x1)) x2)) ((f x1) x2))
% Found (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2))) as proof of (((eq Prop) ((x0 (g x1)) x2)) ((f x1) x2))
% Found (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2))) as proof of (forall (x:fofType), (((eq Prop) ((x0 (g x1)) x)) ((f x1) x)))
% Found (functional_extensionality_dep0100 (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2)))) as proof of (((eq (fofType->Prop)) (x0 (g x1))) (f x1))
% Found ((functional_extensionality_dep010 (f x1)) (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2)))) as proof of (((eq (fofType->Prop)) (x0 (g x1))) (f x1))
% Found (((functional_extensionality_dep01 (x0 (g x1))) (f x1)) (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2)))) as proof of (((eq (fofType->Prop)) (x0 (g x1))) (f x1))
% Found ((((functional_extensionality_dep0 (fun (x4:fofType)=> Prop)) (x0 (g x1))) (f x1)) (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2)))) as proof of (((eq (fofType->Prop)) (x0 (g x1))) (f x1))
% Found eq_ref00:=(eq_ref0 ((x0 (g x1)) x2)):(((eq Prop) ((x0 (g x1)) x2)) ((x0 (g x1)) x2))
% Found (eq_ref0 ((x0 (g x1)) x2)) as proof of (((eq Prop) ((x0 (g x1)) x2)) ((f x1) x2))
% Found ((eq_ref Prop) ((x0 (g x1)) x2)) as proof of (((eq Prop) ((x0 (g x1)) x2)) ((f x1) x2))
% Found ((eq_ref Prop) ((x0 (g x1)) x2)) as proof of (((eq Prop) ((x0 (g x1)) x2)) ((f x1) x2))
% Found (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2))) as proof of (((eq Prop) ((x0 (g x1)) x2)) ((f x1) x2))
% Found (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2))) as proof of (forall (x:fofType), (((eq Prop) ((x0 (g x1)) x)) ((f x1) x)))
% Found (functional_extensionality0000 (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2)))) as proof of (((eq (fofType->Prop)) (x0 (g x1))) (f x1))
% Found ((functional_extensionality000 (f x1)) (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2)))) as proof of (((eq (fofType->Prop)) (x0 (g x1))) (f x1))
% Found (((functional_extensionality00 (x0 (g x1))) (f x1)) (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2)))) as proof of (((eq (fofType->Prop)) (x0 (g x1))) (f x1))
% Found ((((functional_extensionality0 Prop) (x0 (g x1))) (f x1)) (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2)))) as proof of (((eq (fofType->Prop)) (x0 (g x1))) (f x1))
% Found (((((functional_extensionality fofType) Prop) (x0 (g x1))) (f x1)) (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2)))) as proof of (((eq (fofType->Prop)) (x0 (g x1))) (f x1))
% Found eq_ref00:=(eq_ref0 ((x0 (g x1)) x2)):(((eq Prop) ((x0 (g x1)) x2)) ((x0 (g x1)) x2))
% Found (eq_ref0 ((x0 (g x1)) x2)) as proof of (((eq Prop) ((x0 (g x1)) x2)) ((f x1) x2))
% Found ((eq_ref Prop) ((x0 (g x1)) x2)) as proof of (((eq Prop) ((x0 (g x1)) x2)) ((f x1) x2))
% Found ((eq_ref Prop) ((x0 (g x1)) x2)) as proof of (((eq Prop) ((x0 (g x1)) x2)) ((f x1) x2))
% Found (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2))) as proof of (((eq Prop) ((x0 (g x1)) x2)) ((f x1) x2))
% Found (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2))) as proof of (forall (x:fofType), (((eq Prop) ((x0 (g x1)) x)) ((f x1) x)))
% Found (functional_extensionality_dep0000 (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2)))) as proof of (((eq (fofType->Prop)) (x0 (g x1))) (f x1))
% Found ((functional_extensionality_dep000 (f x1)) (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2)))) as proof of (((eq (fofType->Prop)) (x0 (g x1))) (f x1))
% Found (((functional_extensionality_dep00 (x0 (g x1))) (f x1)) (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2)))) as proof of (((eq (fofType->Prop)) (x0 (g x1))) (f x1))
% Found ((((functional_extensionality_dep0 (fun (x4:fofType)=> Prop)) (x0 (g x1))) (f x1)) (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2)))) as proof of (((eq (fofType->Prop)) (x0 (g x1))) (f x1))
% Found (((((functional_extensionality_dep fofType) (fun (x4:fofType)=> Prop)) (x0 (g x1))) (f x1)) (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2)))) as proof of (((eq (fofType->Prop)) (x0 (g x1))) (f x1))
% Found eq_ref00:=(eq_ref0 (x0 (g x1))):(((eq (fofType->Prop)) (x0 (g x1))) (x0 (g x1)))
% Found (eq_ref0 (x0 (g x1))) as proof of (((eq (fofType->Prop)) (x0 (g x1))) (f x1))
% Found ((eq_ref (fofType->Prop)) (x0 (g x1))) as proof of (((eq (fofType->Prop)) (x0 (g x1))) (f x1))
% Found ((eq_ref (fofType->Prop)) (x0 (g x1))) as proof of (((eq (fofType->Prop)) (x0 (g x1))) (f x1))
% Found ((eq_ref (fofType->Prop)) (x0 (g x1))) as proof of (((eq (fofType->Prop)) (x0 (g x1))) (f x1))
% Found (eq_sym100 ((eq_ref (fofType->Prop)) (x0 (g x1)))) as proof of (((eq (fofType->Prop)) (f x1)) (x0 (g x1)))
% Found ((eq_sym10 (f x1)) ((eq_ref (fofType->Prop)) (x0 (g x1)))) as proof of (((eq (fofType->Prop)) (f x1)) (x0 (g x1)))
% Found (((eq_sym1 (x0 (g x1))) (f x1)) ((eq_ref (fofType->Prop)) (x0 (g x1)))) as proof of (((eq (fofType->Prop)) (f x1)) (x0 (g x1)))
% Found ((((eq_sym (fofType->Prop)) (x0 (g x1))) (f x1)) ((eq_ref (fofType->Prop)) (x0 (g x1)))) as proof of (((eq (fofType->Prop)) (f x1)) (x0 (g x1)))
% Found eq_ref00:=(eq_ref0 (x0 (g x1))):(((eq (fofType->Prop)) (x0 (g x1))) (x0 (g x1)))
% Found (eq_ref0 (x0 (g x1))) as proof of (((eq (fofType->Prop)) (x0 (g x1))) (f x1))
% Found ((eq_ref (fofType->Prop)) (x0 (g x1))) as proof of (((eq (fofType->Prop)) (x0 (g x1))) (f x1))
% Found ((eq_ref (fofType->Prop)) (x0 (g x1))) as proof of (((eq (fofType->Prop)) (x0 (g x1))) (f x1))
% Found ((eq_ref (fofType->Prop)) (x0 (g x1))) as proof of (((eq (fofType->Prop)) (x0 (g x1))) (f x1))
% Found (eq_sym100 ((eq_ref (fofType->Prop)) (x0 (g x1)))) as proof of (((eq (fofType->Prop)) (f x1)) (x0 (g x1)))
% Found ((eq_sym10 (f x1)) ((eq_ref (fofType->Prop)) (x0 (g x1)))) as proof of (((eq (fofType->Prop)) (f x1)) (x0 (g x1)))
% Found (((eq_sym1 (x0 (g x1))) (f x1)) ((eq_ref (fofType->Prop)) (x0 (g x1)))) as proof of (((eq (fofType->Prop)) (f x1)) (x0 (g x1)))
% Found ((((eq_sym (fofType->Prop)) (x0 (g x1))) (f x1)) ((eq_ref (fofType->Prop)) (x0 (g x1)))) as proof of (((eq (fofType->Prop)) (f x1)) (x0 (g x1)))
% Found eq_ref00:=(eq_ref0 ((x0 (g x1)) y)):(((eq Prop) ((x0 (g x1)) y)) ((x0 (g x1)) y))
% Found (eq_ref0 ((x0 (g x1)) y)) as proof of (((eq Prop) ((x0 (g x1)) y)) ((f x1) y))
% Found ((eq_ref Prop) ((x0 (g x1)) y)) as proof of (((eq Prop) ((x0 (g x1)) y)) ((f x1) y))
% Found ((eq_ref Prop) ((x0 (g x1)) y)) as proof of (((eq Prop) ((x0 (g x1)) y)) ((f x1) y))
% Found ((eq_ref Prop) ((x0 (g x1)) y)) as proof of (((eq Prop) ((x0 (g x1)) y)) ((f x1) y))
% Found (eq_sym100 ((eq_ref Prop) ((x0 (g x1)) y))) as proof of (((eq Prop) ((f x1) y)) ((x0 (g x1)) y))
% Found ((eq_sym10 ((f x1) y)) ((eq_ref Prop) ((x0 (g x1)) y))) as proof of (((eq Prop) ((f x1) y)) ((x0 (g x1)) y))
% Found (((eq_sym1 ((x0 (g x1)) y)) ((f x1) y)) ((eq_ref Prop) ((x0 (g x1)) y))) as proof of (((eq Prop) ((f x1) y)) ((x0 (g x1)) y))
% Found ((((eq_sym Prop) ((x0 (g x1)) y)) ((f x1) y)) ((eq_ref Prop) ((x0 (g x1)) y))) as proof of (((eq Prop) ((f x1) y)) ((x0 (g x1)) y))
% Found (fun (y:fofType)=> ((((eq_sym Prop) ((x0 (g x1)) y)) ((f x1) y)) ((eq_ref Prop) ((x0 (g x1)) y)))) as proof of (((eq Prop) ((f x1) y)) ((x0 (g x1)) y))
% Found eta_expansion_dep000:=(eta_expansion_dep00 (fun (Xh:((fofType->Prop)->(fofType->Prop)))=> (((eq (fofType->(fofType->Prop))) (fun (Xx:fofType)=> (Xh (g Xx)))) f))):(((eq (((fofType->Prop)->(fofType->Prop))->Prop)) (fun (Xh:((fofType->Prop)->(fofType->Prop)))=> (((eq (fofType->(fofType->Prop))) (fun (Xx:fofType)=> (Xh (g Xx)))) f))) (fun (x:((fofType->Prop)->(fofType->Prop)))=> (((eq (fofType->(fofType->Prop))) (fun (Xx:fofType)=> (x (g Xx)))) f)))
% Found (eta_expansion_dep00 (fun (Xh:((fofType->Prop)->(fofType->Prop)))=> (((eq (fofType->(fofType->Prop))) (fun (Xx:fofType)=> (Xh (g Xx)))) f))) as proof of (((eq (((fofType->Prop)->(fofType->Prop))->Prop)) (fun (Xh:((fofType->Prop)->(fofType->Prop)))=> (((eq (fofType->(fofType->Prop))) (fun (Xx:fofType)=> (Xh (g Xx)))) f))) b)
% Found ((eta_expansion_dep0 (fun (x1:((fofType->Prop)->(fofType->Prop)))=> Prop)) (fun (Xh:((fofType->Prop)->(fofType->Prop)))=> (((eq (fofType->(fofType->Prop))) (fun (Xx:fofType)=> (Xh (g Xx)))) f))) as proof of (((eq (((fofType->Prop)->(fofType->Prop))->Prop)) (fun (Xh:((fofType->Prop)->(fofType->Prop)))=> (((eq (fofType->(fofType->Prop))) (fun (Xx:fofType)=> (Xh (g Xx)))) f))) b)
% Found (((eta_expansion_dep ((fofType->Prop)->(fofType->Prop))) (fun (x1:((fofType->Prop)->(fofType->Prop)))=> Prop)) (fun (Xh:((fofType->Prop)->(fofType->Prop)))=> (((eq (fofType->(fofType->Prop))) (fun (Xx:fofType)=> (Xh (g Xx)))) f))) as proof of (((eq (((fofType->Prop)->(fofType->Prop))->Prop)) (fun (Xh:((fofType->Prop)->(fofType->Prop)))=> (((eq (fofType->(fofType->Prop))) (fun (Xx:fofType)=> (Xh (g Xx)))) f))) b)
% Found (((eta_expansion_dep ((fofType->Prop)->(fofType->Prop))) (fun (x1:((fofType->Prop)->(fofType->Prop)))=> Prop)) (fun (Xh:((fofType->Prop)->(fofType->Prop)))=> (((eq (fofType->(fofType->Prop))) (fun (Xx:fofType)=> (Xh (g Xx)))) f))) as proof of (((eq (((fofType->Prop)->(fofType->Prop))->Prop)) (fun (Xh:((fofType->Prop)->(fofType->Prop)))=> (((eq (fofType->(fofType->Prop))) (fun (Xx:fofType)=> (Xh (g Xx)))) f))) b)
% Found (((eta_expansion_dep ((fofType->Prop)->(fofType->Prop))) (fun (x1:((fofType->Prop)->(fofType->Prop)))=> Prop)) (fun (Xh:((fofType->Prop)->(fofType->Prop)))=> (((eq (fofType->(fofType->Prop))) (fun (Xx:fofType)=> (Xh (g Xx)))) f))) as proof of (((eq (((fofType->Prop)->(fofType->Prop))->Prop)) (fun (Xh:((fofType->Prop)->(fofType->Prop)))=> (((eq (fofType->(fofType->Prop))) (fun (Xx:fofType)=> (Xh (g Xx)))) f))) b)
% Found eq_ref00:=(eq_ref0 (f0 x0)):(((eq Prop) (f0 x0)) (f0 x0))
% Found (eq_ref0 (f0 x0)) as proof of (((eq Prop) (f0 x0)) (((eq (fofType->(fofType->Prop))) (fun (Xx:fofType)=> (x0 (g Xx)))) f))
% Found ((eq_ref Prop) (f0 x0)) as proof of (((eq Prop) (f0 x0)) (((eq (fofType->(fofType->Prop))) (fun (Xx:fofType)=> (x0 (g Xx)))) f))
% Found ((eq_ref Prop) (f0 x0)) as proof of (((eq Prop) (f0 x0)) (((eq (fofType->(fofType->Prop))) (fun (Xx:fofType)=> (x0 (g Xx)))) f))
% Found (fun (x0:((fofType->Prop)->(fofType->Prop)))=> ((eq_ref Prop) (f0 x0))) as proof of (((eq Prop) (f0 x0)) (((eq (fofType->(fofType->Prop))) (fun (Xx:fofType)=> (x0 (g Xx)))) f))
% Found (fun (x0:((fofType->Prop)->(fofType->Prop)))=> ((eq_ref Prop) (f0 x0))) as proof of (forall (x:((fofType->Prop)->(fofType->Prop))), (((eq Prop) (f0 x)) (((eq (fofType->(fofType->Prop))) (fun (Xx:fofType)=> (x (g Xx)))) f)))
% Found eq_ref00:=(eq_ref0 (f0 x0)):(((eq Prop) (f0 x0)) (f0 x0))
% Found (eq_ref0 (f0 x0)) as proof of (((eq Prop) (f0 x0)) (((eq (fofType->(fofType->Prop))) (fun (Xx:fofType)=> (x0 (g Xx)))) f))
% Found ((eq_ref Prop) (f0 x0)) as proof of (((eq Prop) (f0 x0)) (((eq (fofType->(fofType->Prop))) (fun (Xx:fofType)=> (x0 (g Xx)))) f))
% Found ((eq_ref Prop) (f0 x0)) as proof of (((eq Prop) (f0 x0)) (((eq (fofType->(fofType->Prop))) (fun (Xx:fofType)=> (x0 (g Xx)))) f))
% Found (fun (x0:((fofType->Prop)->(fofType->Prop)))=> ((eq_ref Prop) (f0 x0))) as proof of (((eq Prop) (f0 x0)) (((eq (fofType->(fofType->Prop))) (fun (Xx:fofType)=> (x0 (g Xx)))) f))
% Found (fun (x0:((fofType->Prop)->(fofType->Prop)))=> ((eq_ref Prop) (f0 x0))) as proof of (forall (x:((fofType->Prop)->(fofType->Prop))), (((eq Prop) (f0 x)) (((eq (fofType->(fofType->Prop))) (fun (Xx:fofType)=> (x (g Xx)))) f)))
% Found eta_expansion_dep0000:=(eta_expansion_dep000 P):((P (fun (Xx:fofType)=> (x0 (g Xx))))->(P (fun (x:fofType)=> (x0 (g x)))))
% Found (eta_expansion_dep000 P) as proof of (P0 (fun (Xx:fofType)=> (x0 (g Xx))))
% Found ((eta_expansion_dep00 (fun (Xx:fofType)=> (x0 (g Xx)))) P) as proof of (P0 (fun (Xx:fofType)=> (x0 (g Xx))))
% Found (((eta_expansion_dep0 (fun (x2:fofType)=> (fofType->Prop))) (fun (Xx:fofType)=> (x0 (g Xx)))) P) as proof of (P0 (fun (Xx:fofType)=> (x0 (g Xx))))
% Found ((((eta_expansion_dep fofType) (fun (x2:fofType)=> (fofType->Prop))) (fun (Xx:fofType)=> (x0 (g Xx)))) P) as proof of (P0 (fun (Xx:fofType)=> (x0 (g Xx))))
% Found ((((eta_expansion_dep fofType) (fun (x2:fofType)=> (fofType->Prop))) (fun (Xx:fofType)=> (x0 (g Xx)))) P) as proof of (P0 (fun (Xx:fofType)=> (x0 (g Xx))))
% Found eq_ref00:=(eq_ref0 (x0 (g x1))):(((eq (fofType->Prop)) (x0 (g x1))) (x0 (g x1)))
% Found (eq_ref0 (x0 (g x1))) as proof of (((eq (fofType->Prop)) (x0 (g x1))) (f x1))
% Found ((eq_ref (fofType->Prop)) (x0 (g x1))) as proof of (((eq (fofType->Prop)) (x0 (g x1))) (f x1))
% Found ((eq_ref (fofType->Prop)) (x0 (g x1))) as proof of (((eq (fofType->Prop)) (x0 (g x1))) (f x1))
% Found eq_ref00:=(eq_ref0 (x0 (g x1))):(((eq (fofType->Prop)) (x0 (g x1))) (x0 (g x1)))
% Found (eq_ref0 (x0 (g x1))) as proof of (((eq (fofType->Prop)) (x0 (g x1))) (f x1))
% Found ((eq_ref (fofType->Prop)) (x0 (g x1))) as proof of (((eq (fofType->Prop)) (x0 (g x1))) (f x1))
% Found ((eq_ref (fofType->Prop)) (x0 (g x1))) as proof of (((eq (fofType->Prop)) (x0 (g x1))) (f x1))
% Found eq_ref00:=(eq_ref0 b):(((eq (fofType->(fofType->Prop))) b) b)
% Found (eq_ref0 b) as proof of (((eq (fofType->(fofType->Prop))) b) f)
% Found ((eq_ref (fofType->(fofType->Prop))) b) as proof of (((eq (fofType->(fofType->Prop))) b) f)
% Found ((eq_ref (fofType->(fofType->Prop))) b) as proof of (((eq (fofType->(fofType->Prop))) b) f)
% Found ((eq_ref (fofType->(fofType->Prop))) b) as proof of (((eq (fofType->(fofType->Prop))) b) f)
% Found eq_ref00:=(eq_ref0 (fun (Xx:fofType)=> (x0 (g Xx)))):(((eq (fofType->(fofType->Prop))) (fun (Xx:fofType)=> (x0 (g Xx)))) (fun (Xx:fofType)=> (x0 (g Xx))))
% Found (eq_ref0 (fun (Xx:fofType)=> (x0 (g Xx)))) as proof of (((eq (fofType->(fofType->Prop))) (fun (Xx:fofType)=> (x0 (g Xx)))) b)
% Found ((eq_ref (fofType->(fofType->Prop))) (fun (Xx:fofType)=> (x0 (g Xx)))) as proof of (((eq (fofType->(fofType->Prop))) (fun (Xx:fofType)=> (x0 (g Xx)))) b)
% Found ((eq_ref (fofType->(fofType->Prop))) (fun (Xx:fofType)=> (x0 (g Xx)))) as proof of (((eq (fofType->(fofType->Prop))) (fun (Xx:fofType)=> (x0 (g Xx)))) b)
% Found ((eq_ref (fofType->(fofType->Prop))) (fun (Xx:fofType)=> (x0 (g Xx)))) as proof of (((eq (fofType->(fofType->Prop))) (fun (Xx:fofType)=> (x0 (g Xx)))) b)
% Found eta_expansion0000:=(eta_expansion000 P):((P (fun (Xx:fofType)=> (x0 (g Xx))))->(P (fun (x:fofType)=> (x0 (g x)))))
% Found (eta_expansion000 P) as proof of (P0 (fun (Xx:fofType)=> (x0 (g Xx))))
% Found ((eta_expansion00 (fun (Xx:fofType)=> (x0 (g Xx)))) P) as proof of (P0 (fun (Xx:fofType)=> (x0 (g Xx))))
% Found (((eta_expansion0 (fofType->Prop)) (fun (Xx:fofType)=> (x0 (g Xx)))) P) as proof of (P0 (fun (Xx:fofType)=> (x0 (g Xx))))
% Found ((((eta_expansion fofType) (fofType->Prop)) (fun (Xx:fofType)=> (x0 (g Xx)))) P) as proof of (P0 (fun (Xx:fofType)=> (x0 (g Xx))))
% Found ((((eta_expansion fofType) (fofType->Prop)) (fun (Xx:fofType)=> (x0 (g Xx)))) P) as proof of (P0 (fun (Xx:fofType)=> (x0 (g Xx))))
% Found eq_ref00:=(eq_ref0 (x0 (g x1))):(((eq (fofType->Prop)) (x0 (g x1))) (x0 (g x1)))
% Found (eq_ref0 (x0 (g x1))) as proof of (((eq (fofType->Prop)) (x0 (g x1))) (f x1))
% Found ((eq_ref (fofType->Prop)) (x0 (g x1))) as proof of (((eq (fofType->Prop)) (x0 (g x1))) (f x1))
% Found ((eq_ref (fofType->Prop)) (x0 (g x1))) as proof of (((eq (fofType->Prop)) (x0 (g x1))) (f x1))
% Found eta_expansion0000:=(eta_expansion000 P):((P (fun (Xx:fofType)=> (x0 (g Xx))))->(P (fun (x:fofType)=> (x0 (g x)))))
% Found (eta_expansion000 P) as proof of (P0 (fun (Xx:fofType)=> (x0 (g Xx))))
% Found ((eta_expansion00 (fun (Xx:fofType)=> (x0 (g Xx)))) P) as proof of (P0 (fun (Xx:fofType)=> (x0 (g Xx))))
% Found (((eta_expansion0 (fofType->Prop)) (fun (Xx:fofType)=> (x0 (g Xx)))) P) as proof of (P0 (fun (Xx:fofType)=> (x0 (g Xx))))
% Found ((((eta_expansion fofType) (fofType->Prop)) (fun (Xx:fofType)=> (x0 (g Xx)))) P) as proof of (P0 (fun (Xx:fofType)=> (x0 (g Xx))))
% Found ((((eta_expansion fofType) (fofType->Prop)) (fun (Xx:fofType)=> (x0 (g Xx)))) P) as proof of (P0 (fun (Xx:fofType)=> (x0 (g Xx))))
% Found eq_ref00:=(eq_ref0 (x0 (g x1))):(((eq (fofType->Prop)) (x0 (g x1))) (x0 (g x1)))
% Found (eq_ref0 (x0 (g x1))) as proof of (((eq (fofType->Prop)) (x0 (g x1))) (f x1))
% Found ((eq_ref (fofType->Prop)) (x0 (g x1))) as proof of (((eq (fofType->Prop)) (x0 (g x1))) (f x1))
% Found ((eq_ref (fofType->Prop)) (x0 (g x1))) as proof of (((eq (fofType->Prop)) (x0 (g x1))) (f x1))
% Found eq_ref000:=(eq_ref00 P1):((P1 (x0 (g x1)))->(P1 (x0 (g x1))))
% Found (eq_ref00 P1) as proof of ((P1 (x0 (g x1)))->(P1 (f x1)))
% Found ((eq_ref0 (x0 (g x1))) P1) as proof of ((P1 (x0 (g x1)))->(P1 (f x1)))
% Found (((eq_ref (fofType->Prop)) (x0 (g x1))) P1) as proof of ((P1 (x0 (g x1)))->(P1 (f x1)))
% Found (((eq_ref (fofType->Prop)) (x0 (g x1))) P1) as proof of ((P1 (x0 (g x1)))->(P1 (f x1)))
% Found (fun (P1:((fofType->Prop)->Prop))=> (((eq_ref (fofType->Prop)) (x0 (g x1))) P1)) as proof of ((P1 (x0 (g x1)))->(P1 (f x1)))
% Found eq_ref000:=(eq_ref00 P1):((P1 (x0 (g x1)))->(P1 (x0 (g x1))))
% Found (eq_ref00 P1) as proof of ((P1 (x0 (g x1)))->(P1 (f x1)))
% Found ((eq_ref0 (x0 (g x1))) P1) as proof of ((P1 (x0 (g x1)))->(P1 (f x1)))
% Found (((eq_ref (fofType->Prop)) (x0 (g x1))) P1) as proof of ((P1 (x0 (g x1)))->(P1 (f x1)))
% Found (((eq_ref (fofType->Prop)) (x0 (g x1))) P1) as proof of ((P1 (x0 (g x1)))->(P1 (f x1)))
% Found (fun (P1:((fofType->Prop)->Prop))=> (((eq_ref (fofType->Prop)) (x0 (g x1))) P1)) as proof of ((P1 (x0 (g x1)))->(P1 (f x1)))
% Found eq_ref000:=(eq_ref00 P1):((P1 (x0 (g x1)))->(P1 (x0 (g x1))))
% Found (eq_ref00 P1) as proof of ((P1 (x0 (g x1)))->(P1 (f x1)))
% Found ((eq_ref0 (x0 (g x1))) P1) as proof of ((P1 (x0 (g x1)))->(P1 (f x1)))
% Found (((eq_ref (fofType->Prop)) (x0 (g x1))) P1) as proof of ((P1 (x0 (g x1)))->(P1 (f x1)))
% Found (((eq_ref (fofType->Prop)) (x0 (g x1))) P1) as proof of ((P1 (x0 (g x1)))->(P1 (f x1)))
% Found (fun (P1:((fofType->Prop)->Prop))=> (((eq_ref (fofType->Prop)) (x0 (g x1))) P1)) as proof of ((P1 (x0 (g x1)))->(P1 (f x1)))
% Found eq_ref000:=(eq_ref00 P1):((P1 (x0 (g x1)))->(P1 (x0 (g x1))))
% Found (eq_ref00 P1) as proof of ((P1 (x0 (g x1)))->(P1 (f x1)))
% Found ((eq_ref0 (x0 (g x1))) P1) as proof of ((P1 (x0 (g x1)))->(P1 (f x1)))
% Found (((eq_ref (fofType->Prop)) (x0 (g x1))) P1) as proof of ((P1 (x0 (g x1)))->(P1 (f x1)))
% Found (((eq_ref (fofType->Prop)) (x0 (g x1))) P1) as proof of ((P1 (x0 (g x1)))->(P1 (f x1)))
% Found (fun (P1:((fofType->Prop)->Prop))=> (((eq_ref (fofType->Prop)) (x0 (g x1))) P1)) as proof of ((P1 (x0 (g x1)))->(P1 (f x1)))
% Found eq_ref00:=(eq_ref0 ((x0 (g x1)) x2)):(((eq Prop) ((x0 (g x1)) x2)) ((x0 (g x1)) x2))
% Found (eq_ref0 ((x0 (g x1)) x2)) as proof of (((eq Prop) ((x0 (g x1)) x2)) ((f x1) x2))
% Found ((eq_ref Prop) ((x0 (g x1)) x2)) as proof of (((eq Prop) ((x0 (g x1)) x2)) ((f x1) x2))
% Found ((eq_ref Prop) ((x0 (g x1)) x2)) as proof of (((eq Prop) ((x0 (g x1)) x2)) ((f x1) x2))
% Found ((eq_ref Prop) ((x0 (g x1)) x2)) as proof of (((eq Prop) ((x0 (g x1)) x2)) ((f x1) x2))
% Found (eq_sym100 ((eq_ref Prop) ((x0 (g x1)) x2))) as proof of (((eq Prop) ((f x1) x2)) ((x0 (g x1)) x2))
% Found ((eq_sym10 ((f x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2))) as proof of (((eq Prop) ((f x1) x2)) ((x0 (g x1)) x2))
% Found (((eq_sym1 ((x0 (g x1)) x2)) ((f x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2))) as proof of (((eq Prop) ((f x1) x2)) ((x0 (g x1)) x2))
% Found ((((eq_sym Prop) ((x0 (g x1)) x2)) ((f x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2))) as proof of (((eq Prop) ((f x1) x2)) ((x0 (g x1)) x2))
% Found (fun (x2:fofType)=> ((((eq_sym Prop) ((x0 (g x1)) x2)) ((f x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2)))) as proof of (((eq Prop) ((f x1) x2)) ((x0 (g x1)) x2))
% Found (fun (x2:fofType)=> ((((eq_sym Prop) ((x0 (g x1)) x2)) ((f x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2)))) as proof of (forall (x:fofType), (((eq Prop) ((f x1) x)) ((x0 (g x1)) x)))
% Found (functional_extensionality0100 (fun (x2:fofType)=> ((((eq_sym Prop) ((x0 (g x1)) x2)) ((f x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2))))) as proof of (((eq (fofType->Prop)) (f x1)) (x0 (g x1)))
% Found ((functional_extensionality010 (x0 (g x1))) (fun (x2:fofType)=> ((((eq_sym Prop) ((x0 (g x1)) x2)) ((f x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2))))) as proof of (((eq (fofType->Prop)) (f x1)) (x0 (g x1)))
% Found (((functional_extensionality01 (f x1)) (x0 (g x1))) (fun (x2:fofType)=> ((((eq_sym Prop) ((x0 (g x1)) x2)) ((f x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2))))) as proof of (((eq (fofType->Prop)) (f x1)) (x0 (g x1)))
% Found ((((functional_extensionality0 Prop) (f x1)) (x0 (g x1))) (fun (x2:fofType)=> ((((eq_sym Prop) ((x0 (g x1)) x2)) ((f x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2))))) as proof of (((eq (fofType->Prop)) (f x1)) (x0 (g x1)))
% Found ((((functional_extensionality0 Prop) (f x1)) (x0 (g x1))) (fun (x2:fofType)=> ((((eq_sym Prop) ((x0 (g x1)) x2)) ((f x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2))))) as proof of (((eq (fofType->Prop)) (f x1)) (x0 (g x1)))
% Found (eq_sym000 ((((functional_extensionality0 Prop) (f x1)) (x0 (g x1))) (fun (x2:fofType)=> ((((eq_sym Prop) ((x0 (g x1)) x2)) ((f x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2)))))) as proof of (((eq (fofType->Prop)) (x0 (g x1))) (f x1))
% Found ((eq_sym00 (x0 (g x1))) ((((functional_extensionality0 Prop) (f x1)) (x0 (g x1))) (fun (x2:fofType)=> ((((eq_sym Prop) ((x0 (g x1)) x2)) ((f x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2)))))) as proof of (((eq (fofType->Prop)) (x0 (g x1))) (f x1))
% Found (((eq_sym0 (f x1)) (x0 (g x1))) ((((functional_extensionality0 Prop) (f x1)) (x0 (g x1))) (fun (x2:fofType)=> ((((eq_sym Prop) ((x0 (g x1)) x2)) ((f x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2)))))) as proof of (((eq (fofType->Prop)) (x0 (g x1))) (f x1))
% Found ((((eq_sym (fofType->Prop)) (f x1)) (x0 (g x1))) ((((functional_extensionality0 Prop) (f x1)) (x0 (g x1))) (fun (x2:fofType)=> ((((eq_sym Prop) ((x0 (g x1)) x2)) ((f x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2)))))) as proof of (((eq (fofType->Prop)) (x0 (g x1))) (f x1))
% Found eq_ref00:=(eq_ref0 ((x0 (g x1)) x2)):(((eq Prop) ((x0 (g x1)) x2)) ((x0 (g x1)) x2))
% Found (eq_ref0 ((x0 (g x1)) x2)) as proof of (((eq Prop) ((x0 (g x1)) x2)) ((f x1) x2))
% Found ((eq_ref Prop) ((x0 (g x1)) x2)) as proof of (((eq Prop) ((x0 (g x1)) x2)) ((f x1) x2))
% Found ((eq_ref Prop) ((x0 (g x1)) x2)) as proof of (((eq Prop) ((x0 (g x1)) x2)) ((f x1) x2))
% Found ((eq_ref Prop) ((x0 (g x1)) x2)) as proof of (((eq Prop) ((x0 (g x1)) x2)) ((f x1) x2))
% Found (eq_sym100 ((eq_ref Prop) ((x0 (g x1)) x2))) as proof of (((eq Prop) ((f x1) x2)) ((x0 (g x1)) x2))
% Found ((eq_sym10 ((f x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2))) as proof of (((eq Prop) ((f x1) x2)) ((x0 (g x1)) x2))
% Found (((eq_sym1 ((x0 (g x1)) x2)) ((f x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2))) as proof of (((eq Prop) ((f x1) x2)) ((x0 (g x1)) x2))
% Found ((((eq_sym Prop) ((x0 (g x1)) x2)) ((f x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2))) as proof of (((eq Prop) ((f x1) x2)) ((x0 (g x1)) x2))
% Found (fun (x2:fofType)=> ((((eq_sym Prop) ((x0 (g x1)) x2)) ((f x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2)))) as proof of (((eq Prop) ((f x1) x2)) ((x0 (g x1)) x2))
% Found (fun (x2:fofType)=> ((((eq_sym Prop) ((x0 (g x1)) x2)) ((f x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2)))) as proof of (forall (x:fofType), (((eq Prop) ((f x1) x)) ((x0 (g x1)) x)))
% Found (functional_extensionality_dep0100 (fun (x2:fofType)=> ((((eq_sym Prop) ((x0 (g x1)) x2)) ((f x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2))))) as proof of (((eq (fofType->Prop)) (f x1)) (x0 (g x1)))
% Found ((functional_extensionality_dep010 (x0 (g x1))) (fun (x2:fofType)=> ((((eq_sym Prop) ((x0 (g x1)) x2)) ((f x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2))))) as proof of (((eq (fofType->Prop)) (f x1)) (x0 (g x1)))
% Found (((functional_extensionality_dep01 (f x1)) (x0 (g x1))) (fun (x2:fofType)=> ((((eq_sym Prop) ((x0 (g x1)) x2)) ((f x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2))))) as proof of (((eq (fofType->Prop)) (f x1)) (x0 (g x1)))
% Found ((((functional_extensionality_dep0 (fun (x4:fofType)=> Prop)) (f x1)) (x0 (g x1))) (fun (x2:fofType)=> ((((eq_sym Prop) ((x0 (g x1)) x2)) ((f x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2))))) as proof of (((eq (fofType->Prop)) (f x1)) (x0 (g x1)))
% Found ((((functional_extensionality_dep0 (fun (x4:fofType)=> Prop)) (f x1)) (x0 (g x1))) (fun (x2:fofType)=> ((((eq_sym Prop) ((x0 (g x1)) x2)) ((f x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2))))) as proof of (((eq (fofType->Prop)) (f x1)) (x0 (g x1)))
% Found (eq_sym000 ((((functional_extensionality_dep0 (fun (x4:fofType)=> Prop)) (f x1)) (x0 (g x1))) (fun (x2:fofType)=> ((((eq_sym Prop) ((x0 (g x1)) x2)) ((f x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2)))))) as proof of (((eq (fofType->Prop)) (x0 (g x1))) (f x1))
% Found ((eq_sym00 (x0 (g x1))) ((((functional_extensionality_dep0 (fun (x4:fofType)=> Prop)) (f x1)) (x0 (g x1))) (fun (x2:fofType)=> ((((eq_sym Prop) ((x0 (g x1)) x2)) ((f x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2)))))) as proof of (((eq (fofType->Prop)) (x0 (g x1))) (f x1))
% Found (((eq_sym0 (f x1)) (x0 (g x1))) ((((functional_extensionality_dep0 (fun (x4:fofType)=> Prop)) (f x1)) (x0 (g x1))) (fun (x2:fofType)=> ((((eq_sym Prop) ((x0 (g x1)) x2)) ((f x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2)))))) as proof of (((eq (fofType->Prop)) (x0 (g x1))) (f x1))
% Found ((((eq_sym (fofType->Prop)) (f x1)) (x0 (g x1))) ((((functional_extensionality_dep0 (fun (x4:fofType)=> Prop)) (f x1)) (x0 (g x1))) (fun (x2:fofType)=> ((((eq_sym Prop) ((x0 (g x1)) x2)) ((f x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2)))))) as proof of (((eq (fofType->Prop)) (x0 (g x1))) (f x1))
% Found eq_ref00:=(eq_ref0 ((x0 (g x1)) x2)):(((eq Prop) ((x0 (g x1)) x2)) ((x0 (g x1)) x2))
% Found (eq_ref0 ((x0 (g x1)) x2)) as proof of (((eq Prop) ((x0 (g x1)) x2)) ((f x1) x2))
% Found ((eq_ref Prop) ((x0 (g x1)) x2)) as proof of (((eq Prop) ((x0 (g x1)) x2)) ((f x1) x2))
% Found ((eq_ref Prop) ((x0 (g x1)) x2)) as proof of (((eq Prop) ((x0 (g x1)) x2)) ((f x1) x2))
% Found ((eq_ref Prop) ((x0 (g x1)) x2)) as proof of (((eq Prop) ((x0 (g x1)) x2)) ((f x1) x2))
% Found (eq_sym100 ((eq_ref Prop) ((x0 (g x1)) x2))) as proof of (((eq Prop) ((f x1) x2)) ((x0 (g x1)) x2))
% Found ((eq_sym10 ((f x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2))) as proof of (((eq Prop) ((f x1) x2)) ((x0 (g x1)) x2))
% Found (((eq_sym1 ((x0 (g x1)) x2)) ((f x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2))) as proof of (((eq Prop) ((f x1) x2)) ((x0 (g x1)) x2))
% Found ((((eq_sym Prop) ((x0 (g x1)) x2)) ((f x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2))) as proof of (((eq Prop) ((f x1) x2)) ((x0 (g x1)) x2))
% Found (fun (x2:fofType)=> ((((eq_sym Prop) ((x0 (g x1)) x2)) ((f x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2)))) as proof of (((eq Prop) ((f x1) x2)) ((x0 (g x1)) x2))
% Found (fun (x2:fofType)=> ((((eq_sym Prop) ((x0 (g x1)) x2)) ((f x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2)))) as proof of (forall (x:fofType), (((eq Prop) ((f x1) x)) ((x0 (g x1)) x)))
% Found (functional_extensionality_dep0100 (fun (x2:fofType)=> ((((eq_sym Prop) ((x0 (g x1)) x2)) ((f x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2))))) as proof of (((eq (fofType->Prop)) (f x1)) (x0 (g x1)))
% Found ((functional_extensionality_dep010 (x0 (g x1))) (fun (x2:fofType)=> ((((eq_sym Prop) ((x0 (g x1)) x2)) ((f x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2))))) as proof of (((eq (fofType->Prop)) (f x1)) (x0 (g x1)))
% Found (((functional_extensionality_dep01 (f x1)) (x0 (g x1))) (fun (x2:fofType)=> ((((eq_sym Prop) ((x0 (g x1)) x2)) ((f x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2))))) as proof of (((eq (fofType->Prop)) (f x1)) (x0 (g x1)))
% Found ((((functional_extensionality_dep0 (fun (x4:fofType)=> Prop)) (f x1)) (x0 (g x1))) (fun (x2:fofType)=> ((((eq_sym Prop) ((x0 (g x1)) x2)) ((f x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2))))) as proof of (((eq (fofType->Prop)) (f x1)) (x0 (g x1)))
% Found eq_ref00:=(eq_ref0 ((x0 (g x1)) x2)):(((eq Prop) ((x0 (g x1)) x2)) ((x0 (g x1)) x2))
% Found (eq_ref0 ((x0 (g x1)) x2)) as proof of (((eq Prop) ((x0 (g x1)) x2)) ((f x1) x2))
% Found ((eq_ref Prop) ((x0 (g x1)) x2)) as proof of (((eq Prop) ((x0 (g x1)) x2)) ((f x1) x2))
% Found ((eq_ref Prop) ((x0 (g x1)) x2)) as proof of (((eq Prop) ((x0 (g x1)) x2)) ((f x1) x2))
% Found ((eq_ref Prop) ((x0 (g x1)) x2)) as proof of (((eq Prop) ((x0 (g x1)) x2)) ((f x1) x2))
% Found (eq_sym100 ((eq_ref Prop) ((x0 (g x1)) x2))) as proof of (((eq Prop) ((f x1) x2)) ((x0 (g x1)) x2))
% Found ((eq_sym10 ((f x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2))) as proof of (((eq Prop) ((f x1) x2)) ((x0 (g x1)) x2))
% Found (((eq_sym1 ((x0 (g x1)) x2)) ((f x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2))) as proof of (((eq Prop) ((f x1) x2)) ((x0 (g x1)) x2))
% Found ((((eq_sym Prop) ((x0 (g x1)) x2)) ((f x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2))) as proof of (((eq Prop) ((f x1) x2)) ((x0 (g x1)) x2))
% Found (fun (x2:fofType)=> ((((eq_sym Prop) ((x0 (g x1)) x2)) ((f x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2)))) as proof of (((eq Prop) ((f x1) x2)) ((x0 (g x1)) x2))
% Found (fun (x2:fofType)=> ((((eq_sym Prop) ((x0 (g x1)) x2)) ((f x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2)))) as proof of (forall (x:fofType), (((eq Prop) ((f x1) x)) ((x0 (g x1)) x)))
% Found (functional_extensionality0100 (fun (x2:fofType)=> ((((eq_sym Prop) ((x0 (g x1)) x2)) ((f x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2))))) as proof of (((eq (fofType->Prop)) (f x1)) (x0 (g x1)))
% Found ((functional_extensionality010 (x0 (g x1))) (fun (x2:fofType)=> ((((eq_sym Prop) ((x0 (g x1)) x2)) ((f x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2))))) as proof of (((eq (fofType->Prop)) (f x1)) (x0 (g x1)))
% Found (((functional_extensionality01 (f x1)) (x0 (g x1))) (fun (x2:fofType)=> ((((eq_sym Prop) ((x0 (g x1)) x2)) ((f x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2))))) as proof of (((eq (fofType->Prop)) (f x1)) (x0 (g x1)))
% Found ((((functional_extensionality0 Prop) (f x1)) (x0 (g x1))) (fun (x2:fofType)=> ((((eq_sym Prop) ((x0 (g x1)) x2)) ((f x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2))))) as proof of (((eq (fofType->Prop)) (f x1)) (x0 (g x1)))
% Found eta_expansion0000:=(eta_expansion000 P):((P (fun (Xx:fofType)=> (x0 (g Xx))))->(P (fun (x:fofType)=> (x0 (g x)))))
% Found (eta_expansion000 P) as proof of (P0 (fun (Xx:fofType)=> (x0 (g Xx))))
% Found ((eta_expansion00 (fun (Xx:fofType)=> (x0 (g Xx)))) P) as proof of (P0 (fun (Xx:fofType)=> (x0 (g Xx))))
% Found (((eta_expansion0 (fofType->Prop)) (fun (Xx:fofType)=> (x0 (g Xx)))) P) as proof of (P0 (fun (Xx:fofType)=> (x0 (g Xx))))
% Found ((((eta_expansion fofType) (fofType->Prop)) (fun (Xx:fofType)=> (x0 (g Xx)))) P) as proof of (P0 (fun (Xx:fofType)=> (x0 (g Xx))))
% Found ((((eta_expansion fofType) (fofType->Prop)) (fun (Xx:fofType)=> (x0 (g Xx)))) P) as proof of (P0 (fun (Xx:fofType)=> (x0 (g Xx))))
% Found eq_ref00:=(eq_ref0 ((x0 (g x1)) y)):(((eq Prop) ((x0 (g x1)) y)) ((x0 (g x1)) y))
% Found (eq_ref0 ((x0 (g x1)) y)) as proof of (((eq Prop) ((x0 (g x1)) y)) ((f x1) y))
% Found ((eq_ref Prop) ((x0 (g x1)) y)) as proof of (((eq Prop) ((x0 (g x1)) y)) ((f x1) y))
% Found ((eq_ref Prop) ((x0 (g x1)) y)) as proof of (((eq Prop) ((x0 (g x1)) y)) ((f x1) y))
% Found (fun (y:fofType)=> ((eq_ref Prop) ((x0 (g x1)) y))) as proof of (((eq Prop) ((x0 (g x1)) y)) ((f x1) y))
% Found eq_ref00:=(eq_ref0 ((x0 (g x1)) y)):(((eq Prop) ((x0 (g x1)) y)) ((x0 (g x1)) y))
% Found (eq_ref0 ((x0 (g x1)) y)) as proof of (((eq Prop) ((x0 (g x1)) y)) ((f x1) y))
% Found ((eq_ref Prop) ((x0 (g x1)) y)) as proof of (((eq Prop) ((x0 (g x1)) y)) ((f x1) y))
% Found ((eq_ref Prop) ((x0 (g x1)) y)) as proof of (((eq Prop) ((x0 (g x1)) y)) ((f x1) y))
% Found (fun (y:fofType)=> ((eq_ref Prop) ((x0 (g x1)) y))) as proof of (((eq Prop) ((x0 (g x1)) y)) ((f x1) y))
% Found eq_ref000:=(eq_ref00 P1):((P1 ((x0 (g x1)) y))->(P1 ((x0 (g x1)) y)))
% Found (eq_ref00 P1) as proof of ((P1 ((x0 (g x1)) y))->(P1 ((f x1) y)))
% Found ((eq_ref0 ((x0 (g x1)) y)) P1) as proof of ((P1 ((x0 (g x1)) y))->(P1 ((f x1) y)))
% Found (((eq_ref Prop) ((x0 (g x1)) y)) P1) as proof of ((P1 ((x0 (g x1)) y))->(P1 ((f x1) y)))
% Found (((eq_ref Prop) ((x0 (g x1)) y)) P1) as proof of ((P1 ((x0 (g x1)) y))->(P1 ((f x1) y)))
% Found (fun (P1:(Prop->Prop))=> (((eq_ref Prop) ((x0 (g x1)) y)) P1)) as proof of ((P1 ((x0 (g x1)) y))->(P1 ((f x1) y)))
% Found (fun (y:fofType) (P1:(Prop->Prop))=> (((eq_ref Prop) ((x0 (g x1)) y)) P1)) as proof of (((eq Prop) ((x0 (g x1)) y)) ((f x1) y))
% Found eq_ref000:=(eq_ref00 P1):((P1 ((x0 (g x1)) y))->(P1 ((x0 (g x1)) y)))
% Found (eq_ref00 P1) as proof of ((P1 ((x0 (g x1)) y))->(P1 ((f x1) y)))
% Found ((eq_ref0 ((x0 (g x1)) y)) P1) as proof of ((P1 ((x0 (g x1)) y))->(P1 ((f x1) y)))
% Found (((eq_ref Prop) ((x0 (g x1)) y)) P1) as proof of ((P1 ((x0 (g x1)) y))->(P1 ((f x1) y)))
% Found (((eq_ref Prop) ((x0 (g x1)) y)) P1) as proof of ((P1 ((x0 (g x1)) y))->(P1 ((f x1) y)))
% Found (fun (P1:(Prop->Prop))=> (((eq_ref Prop) ((x0 (g x1)) y)) P1)) as proof of ((P1 ((x0 (g x1)) y))->(P1 ((f x1) y)))
% Found (fun (y:fofType) (P1:(Prop->Prop))=> (((eq_ref Prop) ((x0 (g x1)) y)) P1)) as proof of (((eq Prop) ((x0 (g x1)) y)) ((f x1) y))
% Found eq_ref00:=(eq_ref0 ((x0 (g x1)) x2)):(((eq Prop) ((x0 (g x1)) x2)) ((x0 (g x1)) x2))
% Found (eq_ref0 ((x0 (g x1)) x2)) as proof of (((eq Prop) ((x0 (g x1)) x2)) ((f x1) x2))
% Found ((eq_ref Prop) ((x0 (g x1)) x2)) as proof of (((eq Prop) ((x0 (g x1)) x2)) ((f x1) x2))
% Found ((eq_ref Prop) ((x0 (g x1)) x2)) as proof of (((eq Prop) ((x0 (g x1)) x2)) ((f x1) x2))
% Found ((eq_ref Prop) ((x0 (g x1)) x2)) as proof of (((eq Prop) ((x0 (g x1)) x2)) ((f x1) x2))
% Found (eq_sym100 ((eq_ref Prop) ((x0 (g x1)) x2))) as proof of (((eq Prop) ((f x1) x2)) ((x0 (g x1)) x2))
% Found ((eq_sym10 ((f x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2))) as proof of (((eq Prop) ((f x1) x2)) ((x0 (g x1)) x2))
% Found (((eq_sym1 ((x0 (g x1)) x2)) ((f x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2))) as proof of (((eq Prop) ((f x1) x2)) ((x0 (g x1)) x2))
% Found ((((eq_sym Prop) ((x0 (g x1)) x2)) ((f x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2))) as proof of (((eq Prop) ((f x1) x2)) ((x0 (g x1)) x2))
% Found (fun (x2:fofType)=> ((((eq_sym Prop) ((x0 (g x1)) x2)) ((f x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2)))) as proof of (((eq Prop) ((f x1) x2)) ((x0 (g x1)) x2))
% Found (fun (x2:fofType)=> ((((eq_sym Prop) ((x0 (g x1)) x2)) ((f x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2)))) as proof of (forall (x:fofType), (((eq Prop) ((f x1) x)) ((x0 (g x1)) x)))
% Found (functional_extensionality0000 (fun (x2:fofType)=> ((((eq_sym Prop) ((x0 (g x1)) x2)) ((f x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2))))) as proof of (((eq (fofType->Prop)) (f x1)) (x0 (g x1)))
% Found ((functional_extensionality000 (x0 (g x1))) (fun (x2:fofType)=> ((((eq_sym Prop) ((x0 (g x1)) x2)) ((f x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2))))) as proof of (((eq (fofType->Prop)) (f x1)) (x0 (g x1)))
% Found (((functional_extensionality00 (f x1)) (x0 (g x1))) (fun (x2:fofType)=> ((((eq_sym Prop) ((x0 (g x1)) x2)) ((f x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2))))) as proof of (((eq (fofType->Prop)) (f x1)) (x0 (g x1)))
% Found ((((functional_extensionality0 Prop) (f x1)) (x0 (g x1))) (fun (x2:fofType)=> ((((eq_sym Prop) ((x0 (g x1)) x2)) ((f x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2))))) as proof of (((eq (fofType->Prop)) (f x1)) (x0 (g x1)))
% Found (((((functional_extensionality fofType) Prop) (f x1)) (x0 (g x1))) (fun (x2:fofType)=> ((((eq_sym Prop) ((x0 (g x1)) x2)) ((f x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2))))) as proof of (((eq (fofType->Prop)) (f x1)) (x0 (g x1)))
% Found eq_ref00:=(eq_ref0 ((x0 (g x1)) x2)):(((eq Prop) ((x0 (g x1)) x2)) ((x0 (g x1)) x2))
% Found (eq_ref0 ((x0 (g x1)) x2)) as proof of (((eq Prop) ((x0 (g x1)) x2)) ((f x1) x2))
% Found ((eq_ref Prop) ((x0 (g x1)) x2)) as proof of (((eq Prop) ((x0 (g x1)) x2)) ((f x1) x2))
% Found ((eq_ref Prop) ((x0 (g x1)) x2)) as proof of (((eq Prop) ((x0 (g x1)) x2)) ((f x1) x2))
% Found ((eq_ref Prop) ((x0 (g x1)) x2)) as proof of (((eq Prop) ((x0 (g x1)) x2)) ((f x1) x2))
% Found (eq_sym100 ((eq_ref Prop) ((x0 (g x1)) x2))) as proof of (((eq Prop) ((f x1) x2)) ((x0 (g x1)) x2))
% Found ((eq_sym10 ((f x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2))) as proof of (((eq Prop) ((f x1) x2)) ((x0 (g x1)) x2))
% Found (((eq_sym1 ((x0 (g x1)) x2)) ((f x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2))) as proof of (((eq Prop) ((f x1) x2)) ((x0 (g x1)) x2))
% Found ((((eq_sym Prop) ((x0 (g x1)) x2)) ((f x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2))) as proof of (((eq Prop) ((f x1) x2)) ((x0 (g x1)) x2))
% Found (fun (x2:fofType)=> ((((eq_sym Prop) ((x0 (g x1)) x2)) ((f x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2)))) as proof of (((eq Prop) ((f x1) x2)) ((x0 (g x1)) x2))
% Found (fun (x2:fofType)=> ((((eq_sym Prop) ((x0 (g x1)) x2)) ((f x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2)))) as proof of (forall (x:fofType), (((eq Prop) ((f x1) x)) ((x0 (g x1)) x)))
% Found (functional_extensionality_dep0000 (fun (x2:fofType)=> ((((eq_sym Prop) ((x0 (g x1)) x2)) ((f x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2))))) as proof of (((eq (fofType->Prop)) (f x1)) (x0 (g x1)))
% Found ((functional_extensionality_dep000 (x0 (g x1))) (fun (x2:fofType)=> ((((eq_sym Prop) ((x0 (g x1)) x2)) ((f x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2))))) as proof of (((eq (fofType->Prop)) (f x1)) (x0 (g x1)))
% Found (((functional_extensionality_dep00 (f x1)) (x0 (g x1))) (fun (x2:fofType)=> ((((eq_sym Prop) ((x0 (g x1)) x2)) ((f x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2))))) as proof of (((eq (fofType->Prop)) (f x1)) (x0 (g x1)))
% Found ((((functional_extensionality_dep0 (fun (x4:fofType)=> Prop)) (f x1)) (x0 (g x1))) (fun (x2:fofType)=> ((((eq_sym Prop) ((x0 (g x1)) x2)) ((f x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2))))) as proof of (((eq (fofType->Prop)) (f x1)) (x0 (g x1)))
% Found (((((functional_extensionality_dep fofType) (fun (x4:fofType)=> Prop)) (f x1)) (x0 (g x1))) (fun (x2:fofType)=> ((((eq_sym Prop) ((x0 (g x1)) x2)) ((f x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2))))) as proof of (((eq (fofType->Prop)) (f x1)) (x0 (g x1)))
% Found eq_ref00:=(eq_ref0 (g x1)):(((eq (fofType->Prop)) (g x1)) (g x1))
% Found (eq_ref0 (g x1)) as proof of (((eq (fofType->Prop)) (g x1)) (g x1))
% Found ((eq_ref (fofType->Prop)) (g x1)) as proof of (((eq (fofType->Prop)) (g x1)) (g x1))
% Found ((eq_ref (fofType->Prop)) (g x1)) as proof of (((eq (fofType->Prop)) (g x1)) (g x1))
% Found (x200 ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P (x0 (g x1)))->(P (f x1)))
% Found (x200 ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P (x0 (g x1)))->(P (f x1)))
% Found ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> ((x20 x3) P)) ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P (x0 (g x1)))->(P (f x1)))
% Found ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> (((x2 x1) x3) P)) ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P (x0 (g x1)))->(P (f x1)))
% Found ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> ((((x x1) x1) x3) P)) ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P (x0 (g x1)))->(P (f x1)))
% Found ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> ((((x x1) x1) x3) P)) ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P (x0 (g x1)))->(P (f x1)))
% Found (fun (P:((fofType->Prop)->Prop))=> ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> ((((x x1) x1) x3) P)) ((eq_ref (fofType->Prop)) (g x1)))) as proof of ((P (x0 (g x1)))->(P (f x1)))
% Found eq_ref00:=(eq_ref0 (g x1)):(((eq (fofType->Prop)) (g x1)) (g x1))
% Found (eq_ref0 (g x1)) as proof of (((eq (fofType->Prop)) (g x1)) (g x1))
% Found ((eq_ref (fofType->Prop)) (g x1)) as proof of (((eq (fofType->Prop)) (g x1)) (g x1))
% Found ((eq_ref (fofType->Prop)) (g x1)) as proof of (((eq (fofType->Prop)) (g x1)) (g x1))
% Found (x200 ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P (x0 (g x1)))->(P (f x1)))
% Found (x200 ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P (x0 (g x1)))->(P (f x1)))
% Found ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> ((x20 x3) (fun (x4:(fofType->Prop))=> (P (x0 (g x1)))))) ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P (x0 (g x1)))->(P (f x1)))
% Found ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> (((x2 x1) x3) (fun (x4:(fofType->Prop))=> (P (x0 (g x1)))))) ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P (x0 (g x1)))->(P (f x1)))
% Found ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> ((((x x1) x1) x3) (fun (x4:(fofType->Prop))=> (P (x0 (g x1)))))) ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P (x0 (g x1)))->(P (f x1)))
% Found ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> ((((x x1) x1) x3) (fun (x4:(fofType->Prop))=> (P (x0 (g x1)))))) ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P (x0 (g x1)))->(P (f x1)))
% Found (fun (P:((fofType->Prop)->Prop))=> ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> ((((x x1) x1) x3) (fun (x4:(fofType->Prop))=> (P (x0 (g x1)))))) ((eq_ref (fofType->Prop)) (g x1)))) as proof of ((P (x0 (g x1)))->(P (f x1)))
% Found eq_ref00:=(eq_ref0 (g x1)):(((eq (fofType->Prop)) (g x1)) (g x1))
% Found (eq_ref0 (g x1)) as proof of (((eq (fofType->Prop)) (g x1)) (g x1))
% Found ((eq_ref (fofType->Prop)) (g x1)) as proof of (((eq (fofType->Prop)) (g x1)) (g x1))
% Found ((eq_ref (fofType->Prop)) (g x1)) as proof of (((eq (fofType->Prop)) (g x1)) (g x1))
% Found (x200 ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P (x0 (g x1)))->(P (f x1)))
% Found (x200 ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P (x0 (g x1)))->(P (f x1)))
% Found ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> ((x20 x3) (fun (x4:(fofType->Prop))=> (P (x0 (g x1)))))) ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P (x0 (g x1)))->(P (f x1)))
% Found ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> (((x2 x1) x3) (fun (x4:(fofType->Prop))=> (P (x0 (g x1)))))) ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P (x0 (g x1)))->(P (f x1)))
% Found ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> ((((x x1) x1) x3) (fun (x4:(fofType->Prop))=> (P (x0 (g x1)))))) ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P (x0 (g x1)))->(P (f x1)))
% Found ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> ((((x x1) x1) x3) (fun (x4:(fofType->Prop))=> (P (x0 (g x1)))))) ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P (x0 (g x1)))->(P (f x1)))
% Found (fun (P:((fofType->Prop)->Prop))=> ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> ((((x x1) x1) x3) (fun (x4:(fofType->Prop))=> (P (x0 (g x1)))))) ((eq_ref (fofType->Prop)) (g x1)))) as proof of ((P (x0 (g x1)))->(P (f x1)))
% Found eq_ref00:=(eq_ref0 (g x1)):(((eq (fofType->Prop)) (g x1)) (g x1))
% Found (eq_ref0 (g x1)) as proof of (((eq (fofType->Prop)) (g x1)) (g x1))
% Found ((eq_ref (fofType->Prop)) (g x1)) as proof of (((eq (fofType->Prop)) (g x1)) (g x1))
% Found ((eq_ref (fofType->Prop)) (g x1)) as proof of (((eq (fofType->Prop)) (g x1)) (g x1))
% Found (x200 ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P (x0 (g x1)))->(P (f x1)))
% Found (x200 ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P (x0 (g x1)))->(P (f x1)))
% Found ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> ((x20 x3) P)) ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P (x0 (g x1)))->(P (f x1)))
% Found ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> (((x2 x1) x3) P)) ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P (x0 (g x1)))->(P (f x1)))
% Found ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> ((((x x1) x1) x3) P)) ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P (x0 (g x1)))->(P (f x1)))
% Found ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> ((((x x1) x1) x3) P)) ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P (x0 (g x1)))->(P (f x1)))
% Found (fun (P:((fofType->Prop)->Prop))=> ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> ((((x x1) x1) x3) P)) ((eq_ref (fofType->Prop)) (g x1)))) as proof of ((P (x0 (g x1)))->(P (f x1)))
% Found eq_ref00:=(eq_ref0 (g x1)):(((eq (fofType->Prop)) (g x1)) (g x1))
% Found (eq_ref0 (g x1)) as proof of (((eq (fofType->Prop)) (g x1)) (g x1))
% Found ((eq_ref (fofType->Prop)) (g x1)) as proof of (((eq (fofType->Prop)) (g x1)) (g x1))
% Found ((eq_ref (fofType->Prop)) (g x1)) as proof of (((eq (fofType->Prop)) (g x1)) (g x1))
% Found (x200 ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P (x0 (g x1)))->(P (f x1)))
% Found (x200 ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P (x0 (g x1)))->(P (f x1)))
% Found ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> ((x20 x3) P)) ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P (x0 (g x1)))->(P (f x1)))
% Found ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> (((x2 x1) x3) P)) ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P (x0 (g x1)))->(P (f x1)))
% Found ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> ((((x x1) x1) x3) P)) ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P (x0 (g x1)))->(P (f x1)))
% Found ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> ((((x x1) x1) x3) P)) ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P (x0 (g x1)))->(P (f x1)))
% Found (fun (P:((fofType->Prop)->Prop))=> ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> ((((x x1) x1) x3) P)) ((eq_ref (fofType->Prop)) (g x1)))) as proof of ((P (x0 (g x1)))->(P (f x1)))
% Found eq_ref00:=(eq_ref0 (g x1)):(((eq (fofType->Prop)) (g x1)) (g x1))
% Found (eq_ref0 (g x1)) as proof of (((eq (fofType->Prop)) (g x1)) (g x1))
% Found ((eq_ref (fofType->Prop)) (g x1)) as proof of (((eq (fofType->Prop)) (g x1)) (g x1))
% Found ((eq_ref (fofType->Prop)) (g x1)) as proof of (((eq (fofType->Prop)) (g x1)) (g x1))
% Found (x200 ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P (x0 (g x1)))->(P (f x1)))
% Found (x200 ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P (x0 (g x1)))->(P (f x1)))
% Found ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> ((x20 x3) (fun (x4:(fofType->Prop))=> (P (x0 (g x1)))))) ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P (x0 (g x1)))->(P (f x1)))
% Found ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> (((x2 x1) x3) (fun (x4:(fofType->Prop))=> (P (x0 (g x1)))))) ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P (x0 (g x1)))->(P (f x1)))
% Found ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> ((((x x1) x1) x3) (fun (x4:(fofType->Prop))=> (P (x0 (g x1)))))) ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P (x0 (g x1)))->(P (f x1)))
% Found ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> ((((x x1) x1) x3) (fun (x4:(fofType->Prop))=> (P (x0 (g x1)))))) ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P (x0 (g x1)))->(P (f x1)))
% Found (fun (P:((fofType->Prop)->Prop))=> ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> ((((x x1) x1) x3) (fun (x4:(fofType->Prop))=> (P (x0 (g x1)))))) ((eq_ref (fofType->Prop)) (g x1)))) as proof of ((P (x0 (g x1)))->(P (f x1)))
% Found eq_ref00:=(eq_ref0 (g x1)):(((eq (fofType->Prop)) (g x1)) (g x1))
% Found (eq_ref0 (g x1)) as proof of (((eq (fofType->Prop)) (g x1)) (g x1))
% Found ((eq_ref (fofType->Prop)) (g x1)) as proof of (((eq (fofType->Prop)) (g x1)) (g x1))
% Found ((eq_ref (fofType->Prop)) (g x1)) as proof of (((eq (fofType->Prop)) (g x1)) (g x1))
% Found (x200 ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P (x0 (g x1)))->(P (f x1)))
% Found (x200 ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P (x0 (g x1)))->(P (f x1)))
% Found ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> ((x20 x3) (fun (x4:(fofType->Prop))=> (P (x0 (g x1)))))) ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P (x0 (g x1)))->(P (f x1)))
% Found ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> (((x2 x1) x3) (fun (x4:(fofType->Prop))=> (P (x0 (g x1)))))) ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P (x0 (g x1)))->(P (f x1)))
% Found ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> ((((x x1) x1) x3) (fun (x4:(fofType->Prop))=> (P (x0 (g x1)))))) ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P (x0 (g x1)))->(P (f x1)))
% Found ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> ((((x x1) x1) x3) (fun (x4:(fofType->Prop))=> (P (x0 (g x1)))))) ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P (x0 (g x1)))->(P (f x1)))
% Found (fun (P:((fofType->Prop)->Prop))=> ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> ((((x x1) x1) x3) (fun (x4:(fofType->Prop))=> (P (x0 (g x1)))))) ((eq_ref (fofType->Prop)) (g x1)))) as proof of ((P (x0 (g x1)))->(P (f x1)))
% Found eq_ref00:=(eq_ref0 (g x1)):(((eq (fofType->Prop)) (g x1)) (g x1))
% Found (eq_ref0 (g x1)) as proof of (((eq (fofType->Prop)) (g x1)) (g x1))
% Found ((eq_ref (fofType->Prop)) (g x1)) as proof of (((eq (fofType->Prop)) (g x1)) (g x1))
% Found ((eq_ref (fofType->Prop)) (g x1)) as proof of (((eq (fofType->Prop)) (g x1)) (g x1))
% Found (x200 ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P (x0 (g x1)))->(P (f x1)))
% Found (x200 ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P (x0 (g x1)))->(P (f x1)))
% Found ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> ((x20 x3) P)) ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P (x0 (g x1)))->(P (f x1)))
% Found ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> (((x2 x1) x3) P)) ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P (x0 (g x1)))->(P (f x1)))
% Found ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> ((((x x1) x1) x3) P)) ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P (x0 (g x1)))->(P (f x1)))
% Found ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> ((((x x1) x1) x3) P)) ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P (x0 (g x1)))->(P (f x1)))
% Found (fun (P:((fofType->Prop)->Prop))=> ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> ((((x x1) x1) x3) P)) ((eq_ref (fofType->Prop)) (g x1)))) as proof of ((P (x0 (g x1)))->(P (f x1)))
% Found eq_ref00:=(eq_ref0 (x0 (g x1))):(((eq (fofType->Prop)) (x0 (g x1))) (x0 (g x1)))
% Found (eq_ref0 (x0 (g x1))) as proof of (((eq (fofType->Prop)) (x0 (g x1))) (b x1))
% Found ((eq_ref (fofType->Prop)) (x0 (g x1))) as proof of (((eq (fofType->Prop)) (x0 (g x1))) (b x1))
% Found ((eq_ref (fofType->Prop)) (x0 (g x1))) as proof of (((eq (fofType->Prop)) (x0 (g x1))) (b x1))
% Found eq_ref00:=(eq_ref0 (x0 (g x1))):(((eq (fofType->Prop)) (x0 (g x1))) (x0 (g x1)))
% Found (eq_ref0 (x0 (g x1))) as proof of (((eq (fofType->Prop)) (x0 (g x1))) (b x1))
% Found ((eq_ref (fofType->Prop)) (x0 (g x1))) as proof of (((eq (fofType->Prop)) (x0 (g x1))) (b x1))
% Found ((eq_ref (fofType->Prop)) (x0 (g x1))) as proof of (((eq (fofType->Prop)) (x0 (g x1))) (b x1))
% Found eq_ref00:=(eq_ref0 (g x1)):(((eq (fofType->Prop)) (g x1)) (g x1))
% Found (eq_ref0 (g x1)) as proof of (((eq (fofType->Prop)) (g x1)) (g x1))
% Found ((eq_ref (fofType->Prop)) (g x1)) as proof of (((eq (fofType->Prop)) (g x1)) (g x1))
% Found ((eq_ref (fofType->Prop)) (g x1)) as proof of (((eq (fofType->Prop)) (g x1)) (g x1))
% Found (x200 ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P ((x0 (g x1)) y))->(P ((f x1) y)))
% Found (x200 ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P ((x0 (g x1)) y))->(P ((f x1) y)))
% Found ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> ((x20 x3) (fun (x4:(fofType->Prop))=> (P (x4 y))))) ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P ((x0 (g x1)) y))->(P ((f x1) y)))
% Found ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> (((x2 x1) x3) (fun (x4:(fofType->Prop))=> (P (x4 y))))) ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P ((x0 (g x1)) y))->(P ((f x1) y)))
% Found ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> ((((x x1) x1) x3) (fun (x4:(fofType->Prop))=> (P (x4 y))))) ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P ((x0 (g x1)) y))->(P ((f x1) y)))
% Found ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> ((((x x1) x1) x3) (fun (x4:(fofType->Prop))=> (P (x4 y))))) ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P ((x0 (g x1)) y))->(P ((f x1) y)))
% Found (fun (P:(Prop->Prop))=> ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> ((((x x1) x1) x3) (fun (x4:(fofType->Prop))=> (P (x4 y))))) ((eq_ref (fofType->Prop)) (g x1)))) as proof of ((P ((x0 (g x1)) y))->(P ((f x1) y)))
% Found (fun (y:fofType) (P:(Prop->Prop))=> ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> ((((x x1) x1) x3) (fun (x4:(fofType->Prop))=> (P (x4 y))))) ((eq_ref (fofType->Prop)) (g x1)))) as proof of (((eq Prop) ((x0 (g x1)) y)) ((f x1) y))
% Found eq_ref00:=(eq_ref0 (g x1)):(((eq (fofType->Prop)) (g x1)) (g x1))
% Found (eq_ref0 (g x1)) as proof of (((eq (fofType->Prop)) (g x1)) (g x1))
% Found ((eq_ref (fofType->Prop)) (g x1)) as proof of (((eq (fofType->Prop)) (g x1)) (g x1))
% Found ((eq_ref (fofType->Prop)) (g x1)) as proof of (((eq (fofType->Prop)) (g x1)) (g x1))
% Found (x200 ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P ((x0 (g x1)) y))->(P ((f x1) y)))
% Found (x200 ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P ((x0 (g x1)) y))->(P ((f x1) y)))
% Found ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> ((x20 x3) (fun (x4:(fofType->Prop))=> (P ((x0 (g x1)) y))))) ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P ((x0 (g x1)) y))->(P ((f x1) y)))
% Found ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> (((x2 x1) x3) (fun (x4:(fofType->Prop))=> (P ((x0 (g x1)) y))))) ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P ((x0 (g x1)) y))->(P ((f x1) y)))
% Found ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> ((((x x1) x1) x3) (fun (x4:(fofType->Prop))=> (P ((x0 (g x1)) y))))) ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P ((x0 (g x1)) y))->(P ((f x1) y)))
% Found ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> ((((x x1) x1) x3) (fun (x4:(fofType->Prop))=> (P ((x0 (g x1)) y))))) ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P ((x0 (g x1)) y))->(P ((f x1) y)))
% Found (fun (P:(Prop->Prop))=> ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> ((((x x1) x1) x3) (fun (x4:(fofType->Prop))=> (P ((x0 (g x1)) y))))) ((eq_ref (fofType->Prop)) (g x1)))) as proof of ((P ((x0 (g x1)) y))->(P ((f x1) y)))
% Found (fun (y:fofType) (P:(Prop->Prop))=> ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> ((((x x1) x1) x3) (fun (x4:(fofType->Prop))=> (P ((x0 (g x1)) y))))) ((eq_ref (fofType->Prop)) (g x1)))) as proof of (((eq Prop) ((x0 (g x1)) y)) ((f x1) y))
% Found eq_ref00:=(eq_ref0 (g x1)):(((eq (fofType->Prop)) (g x1)) (g x1))
% Found (eq_ref0 (g x1)) as proof of (((eq (fofType->Prop)) (g x1)) (g x1))
% Found ((eq_ref (fofType->Prop)) (g x1)) as proof of (((eq (fofType->Prop)) (g x1)) (g x1))
% Found ((eq_ref (fofType->Prop)) (g x1)) as proof of (((eq (fofType->Prop)) (g x1)) (g x1))
% Found (x200 ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P ((x0 (g x1)) y))->(P ((f x1) y)))
% Found (x200 ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P ((x0 (g x1)) y))->(P ((f x1) y)))
% Found ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> ((x20 x3) (fun (x4:(fofType->Prop))=> (P ((x0 (g x1)) y))))) ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P ((x0 (g x1)) y))->(P ((f x1) y)))
% Found ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> (((x2 x1) x3) (fun (x4:(fofType->Prop))=> (P ((x0 (g x1)) y))))) ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P ((x0 (g x1)) y))->(P ((f x1) y)))
% Found ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> ((((x x1) x1) x3) (fun (x4:(fofType->Prop))=> (P ((x0 (g x1)) y))))) ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P ((x0 (g x1)) y))->(P ((f x1) y)))
% Found ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> ((((x x1) x1) x3) (fun (x4:(fofType->Prop))=> (P ((x0 (g x1)) y))))) ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P ((x0 (g x1)) y))->(P ((f x1) y)))
% Found (fun (P:(Prop->Prop))=> ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> ((((x x1) x1) x3) (fun (x4:(fofType->Prop))=> (P ((x0 (g x1)) y))))) ((eq_ref (fofType->Prop)) (g x1)))) as proof of ((P ((x0 (g x1)) y))->(P ((f x1) y)))
% Found (fun (y:fofType) (P:(Prop->Prop))=> ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> ((((x x1) x1) x3) (fun (x4:(fofType->Prop))=> (P ((x0 (g x1)) y))))) ((eq_ref (fofType->Prop)) (g x1)))) as proof of (((eq Prop) ((x0 (g x1)) y)) ((f x1) y))
% Found eq_ref00:=(eq_ref0 (g x1)):(((eq (fofType->Prop)) (g x1)) (g x1))
% Found (eq_ref0 (g x1)) as proof of (((eq (fofType->Prop)) (g x1)) (g x1))
% Found ((eq_ref (fofType->Prop)) (g x1)) as proof of (((eq (fofType->Prop)) (g x1)) (g x1))
% Found ((eq_ref (fofType->Prop)) (g x1)) as proof of (((eq (fofType->Prop)) (g x1)) (g x1))
% Found (x200 ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P ((x0 (g x1)) y))->(P ((f x1) y)))
% Found (x200 ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P ((x0 (g x1)) y))->(P ((f x1) y)))
% Found ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> ((x20 x3) (fun (x4:(fofType->Prop))=> (P (x4 y))))) ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P ((x0 (g x1)) y))->(P ((f x1) y)))
% Found ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> (((x2 x1) x3) (fun (x4:(fofType->Prop))=> (P (x4 y))))) ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P ((x0 (g x1)) y))->(P ((f x1) y)))
% Found ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> ((((x x1) x1) x3) (fun (x4:(fofType->Prop))=> (P (x4 y))))) ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P ((x0 (g x1)) y))->(P ((f x1) y)))
% Found ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> ((((x x1) x1) x3) (fun (x4:(fofType->Prop))=> (P (x4 y))))) ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P ((x0 (g x1)) y))->(P ((f x1) y)))
% Found (fun (P:(Prop->Prop))=> ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> ((((x x1) x1) x3) (fun (x4:(fofType->Prop))=> (P (x4 y))))) ((eq_ref (fofType->Prop)) (g x1)))) as proof of ((P ((x0 (g x1)) y))->(P ((f x1) y)))
% Found (fun (y:fofType) (P:(Prop->Prop))=> ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> ((((x x1) x1) x3) (fun (x4:(fofType->Prop))=> (P (x4 y))))) ((eq_ref (fofType->Prop)) (g x1)))) as proof of (((eq Prop) ((x0 (g x1)) y)) ((f x1) y))
% Found eq_ref00:=(eq_ref0 (g x1)):(((eq (fofType->Prop)) (g x1)) (g x1))
% Found (eq_ref0 (g x1)) as proof of (((eq (fofType->Prop)) (g x1)) (g x1))
% Found ((eq_ref (fofType->Prop)) (g x1)) as proof of (((eq (fofType->Prop)) (g x1)) (g x1))
% Found ((eq_ref (fofType->Prop)) (g x1)) as proof of (((eq (fofType->Prop)) (g x1)) (g x1))
% Found (x200 ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P (x0 (g x1)))->(P (f x1)))
% Found (x200 ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P (x0 (g x1)))->(P (f x1)))
% Found ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> ((x20 x3) (fun (x4:(fofType->Prop))=> (P (x0 (g x1)))))) ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P (x0 (g x1)))->(P (f x1)))
% Found ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> (((x2 x1) x3) (fun (x4:(fofType->Prop))=> (P (x0 (g x1)))))) ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P (x0 (g x1)))->(P (f x1)))
% Found ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> ((((fun (Xx:fofType)=> ((x Xx) x1)) x1) x3) (fun (x4:(fofType->Prop))=> (P (x0 (g x1)))))) ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P (x0 (g x1)))->(P (f x1)))
% Found ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> ((((fun (Xx:fofType)=> ((x Xx) x1)) x1) x3) (fun (x4:(fofType->Prop))=> (P (x0 (g x1)))))) ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P (x0 (g x1)))->(P (f x1)))
% Found (fun (P:((fofType->Prop)->Prop))=> ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> ((((fun (Xx:fofType)=> ((x Xx) x1)) x1) x3) (fun (x4:(fofType->Prop))=> (P (x0 (g x1)))))) ((eq_ref (fofType->Prop)) (g x1)))) as proof of ((P (x0 (g x1)))->(P (f x1)))
% Found eq_ref00:=(eq_ref0 (g x1)):(((eq (fofType->Prop)) (g x1)) (g x1))
% Found (eq_ref0 (g x1)) as proof of (((eq (fofType->Prop)) (g x1)) (g x1))
% Found ((eq_ref (fofType->Prop)) (g x1)) as proof of (((eq (fofType->Prop)) (g x1)) (g x1))
% Found ((eq_ref (fofType->Prop)) (g x1)) as proof of (((eq (fofType->Prop)) (g x1)) (g x1))
% Found (x200 ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P (x0 (g x1)))->(P (f x1)))
% Found (x200 ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P (x0 (g x1)))->(P (f x1)))
% Found ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> ((x20 x3) P)) ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P (x0 (g x1)))->(P (f x1)))
% Found ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> (((x2 x1) x3) P)) ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P (x0 (g x1)))->(P (f x1)))
% Found ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> ((((fun (Xx:fofType)=> ((x Xx) x1)) x1) x3) P)) ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P (x0 (g x1)))->(P (f x1)))
% Found ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> ((((fun (Xx:fofType)=> ((x Xx) x1)) x1) x3) P)) ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P (x0 (g x1)))->(P (f x1)))
% Found (fun (P:((fofType->Prop)->Prop))=> ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> ((((fun (Xx:fofType)=> ((x Xx) x1)) x1) x3) P)) ((eq_ref (fofType->Prop)) (g x1)))) as proof of ((P (x0 (g x1)))->(P (f x1)))
% Found eq_ref00:=(eq_ref0 (g x1)):(((eq (fofType->Prop)) (g x1)) (g x1))
% Found (eq_ref0 (g x1)) as proof of (((eq (fofType->Prop)) (g x1)) (g x1))
% Found ((eq_ref (fofType->Prop)) (g x1)) as proof of (((eq (fofType->Prop)) (g x1)) (g x1))
% Found ((eq_ref (fofType->Prop)) (g x1)) as proof of (((eq (fofType->Prop)) (g x1)) (g x1))
% Found (x200 ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P (x0 (g x1)))->(P (f x1)))
% Found (x200 ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P (x0 (g x1)))->(P (f x1)))
% Found ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> ((x20 x3) (fun (x4:(fofType->Prop))=> (P (x0 (g x1)))))) ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P (x0 (g x1)))->(P (f x1)))
% Found ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> (((x2 x1) x3) (fun (x4:(fofType->Prop))=> (P (x0 (g x1)))))) ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P (x0 (g x1)))->(P (f x1)))
% Found ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> (((x2 x1) x3) (fun (x4:(fofType->Prop))=> (P (x0 (g x1)))))) ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P (x0 (g x1)))->(P (f x1)))
% Found ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> ((((fun (Xx:fofType)=> ((x Xx) x1)) x1) x3) (fun (x4:(fofType->Prop))=> (P (x0 (g x1)))))) ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P (x0 (g x1)))->(P (f x1)))
% Found (fun (P:((fofType->Prop)->Prop))=> ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> ((((fun (Xx:fofType)=> ((x Xx) x1)) x1) x3) (fun (x4:(fofType->Prop))=> (P (x0 (g x1)))))) ((eq_ref (fofType->Prop)) (g x1)))) as proof of ((P (x0 (g x1)))->(P (f x1)))
% Found eq_ref00:=(eq_ref0 (g x1)):(((eq (fofType->Prop)) (g x1)) (g x1))
% Found (eq_ref0 (g x1)) as proof of (((eq (fofType->Prop)) (g x1)) (g x1))
% Found ((eq_ref (fofType->Prop)) (g x1)) as proof of (((eq (fofType->Prop)) (g x1)) (g x1))
% Found ((eq_ref (fofType->Prop)) (g x1)) as proof of (((eq (fofType->Prop)) (g x1)) (g x1))
% Found (x200 ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P (x0 (g x1)))->(P (f x1)))
% Found (x200 ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P (x0 (g x1)))->(P (f x1)))
% Found ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> ((x20 x3) P)) ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P (x0 (g x1)))->(P (f x1)))
% Found ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> (((x2 x1) x3) P)) ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P (x0 (g x1)))->(P (f x1)))
% Found ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> (((x2 x1) x3) P)) ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P (x0 (g x1)))->(P (f x1)))
% Found ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> ((((fun (Xx:fofType)=> ((x Xx) x1)) x1) x3) P)) ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P (x0 (g x1)))->(P (f x1)))
% Found (fun (P:((fofType->Prop)->Prop))=> ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> ((((fun (Xx:fofType)=> ((x Xx) x1)) x1) x3) P)) ((eq_ref (fofType->Prop)) (g x1)))) as proof of ((P (x0 (g x1)))->(P (f x1)))
% Found eq_ref00:=(eq_ref0 (g x1)):(((eq (fofType->Prop)) (g x1)) (g x1))
% Found (eq_ref0 (g x1)) as proof of (((eq (fofType->Prop)) (g x1)) (g x1))
% Found ((eq_ref (fofType->Prop)) (g x1)) as proof of (((eq (fofType->Prop)) (g x1)) (g x1))
% Found ((eq_ref (fofType->Prop)) (g x1)) as proof of (((eq (fofType->Prop)) (g x1)) (g x1))
% Found (x200 ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P (x0 (g x1)))->(P (f x1)))
% Found (x200 ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P (x0 (g x1)))->(P (f x1)))
% Found ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> ((x20 x3) (fun (x4:(fofType->Prop))=> (P (x0 (g x1)))))) ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P (x0 (g x1)))->(P (f x1)))
% Found ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> (((x2 x1) x3) (fun (x4:(fofType->Prop))=> (P (x0 (g x1)))))) ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P (x0 (g x1)))->(P (f x1)))
% Found ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> ((((fun (Xx:fofType)=> ((x Xx) x1)) x1) x3) (fun (x4:(fofType->Prop))=> (P (x0 (g x1)))))) ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P (x0 (g x1)))->(P (f x1)))
% Found ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> ((((fun (Xx:fofType)=> ((x Xx) x1)) x1) x3) (fun (x4:(fofType->Prop))=> (P (x0 (g x1)))))) ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P (x0 (g x1)))->(P (f x1)))
% Found (fun (P:((fofType->Prop)->Prop))=> ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> ((((fun (Xx:fofType)=> ((x Xx) x1)) x1) x3) (fun (x4:(fofType->Prop))=> (P (x0 (g x1)))))) ((eq_ref (fofType->Prop)) (g x1)))) as proof of ((P (x0 (g x1)))->(P (f x1)))
% Found eq_ref00:=(eq_ref0 (g x1)):(((eq (fofType->Prop)) (g x1)) (g x1))
% Found (eq_ref0 (g x1)) as proof of (((eq (fofType->Prop)) (g x1)) (g x1))
% Found ((eq_ref (fofType->Prop)) (g x1)) as proof of (((eq (fofType->Prop)) (g x1)) (g x1))
% Found ((eq_ref (fofType->Prop)) (g x1)) as proof of (((eq (fofType->Prop)) (g x1)) (g x1))
% Found (x200 ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P (x0 (g x1)))->(P (f x1)))
% Found (x200 ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P (x0 (g x1)))->(P (f x1)))
% Found ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> ((x20 x3) P)) ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P (x0 (g x1)))->(P (f x1)))
% Found ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> (((x2 x1) x3) P)) ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P (x0 (g x1)))->(P (f x1)))
% Found ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> ((((fun (Xx:fofType)=> ((x Xx) x1)) x1) x3) P)) ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P (x0 (g x1)))->(P (f x1)))
% Found ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> ((((fun (Xx:fofType)=> ((x Xx) x1)) x1) x3) P)) ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P (x0 (g x1)))->(P (f x1)))
% Found (fun (P:((fofType->Prop)->Prop))=> ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> ((((fun (Xx:fofType)=> ((x Xx) x1)) x1) x3) P)) ((eq_ref (fofType->Prop)) (g x1)))) as proof of ((P (x0 (g x1)))->(P (f x1)))
% Found eq_ref00:=(eq_ref0 (g x1)):(((eq (fofType->Prop)) (g x1)) (g x1))
% Found (eq_ref0 (g x1)) as proof of (((eq (fofType->Prop)) (g x1)) (g x1))
% Found ((eq_ref (fofType->Prop)) (g x1)) as proof of (((eq (fofType->Prop)) (g x1)) (g x1))
% Found ((eq_ref (fofType->Prop)) (g x1)) as proof of (((eq (fofType->Prop)) (g x1)) (g x1))
% Found (x200 ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P (x0 (g x1)))->(P (f x1)))
% Found (x200 ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P (x0 (g x1)))->(P (f x1)))
% Found ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> ((x20 x3) P)) ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P (x0 (g x1)))->(P (f x1)))
% Found ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> (((x2 x1) x3) P)) ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P (x0 (g x1)))->(P (f x1)))
% Found ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> (((x2 x1) x3) P)) ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P (x0 (g x1)))->(P (f x1)))
% Found ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> ((((fun (Xx:fofType)=> ((x Xx) x1)) x1) x3) P)) ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P (x0 (g x1)))->(P (f x1)))
% Found (fun (P:((fofType->Prop)->Prop))=> ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> ((((fun (Xx:fofType)=> ((x Xx) x1)) x1) x3) P)) ((eq_ref (fofType->Prop)) (g x1)))) as proof of ((P (x0 (g x1)))->(P (f x1)))
% Found eq_ref00:=(eq_ref0 (g x1)):(((eq (fofType->Prop)) (g x1)) (g x1))
% Found (eq_ref0 (g x1)) as proof of (((eq (fofType->Prop)) (g x1)) (g x1))
% Found ((eq_ref (fofType->Prop)) (g x1)) as proof of (((eq (fofType->Prop)) (g x1)) (g x1))
% Found ((eq_ref (fofType->Prop)) (g x1)) as proof of (((eq (fofType->Prop)) (g x1)) (g x1))
% Found (x200 ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P (x0 (g x1)))->(P (f x1)))
% Found (x200 ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P (x0 (g x1)))->(P (f x1)))
% Found ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> ((x20 x3) (fun (x4:(fofType->Prop))=> (P (x0 (g x1)))))) ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P (x0 (g x1)))->(P (f x1)))
% Found ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> (((x2 x1) x3) (fun (x4:(fofType->Prop))=> (P (x0 (g x1)))))) ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P (x0 (g x1)))->(P (f x1)))
% Found ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> (((x2 x1) x3) (fun (x4:(fofType->Prop))=> (P (x0 (g x1)))))) ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P (x0 (g x1)))->(P (f x1)))
% Found ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> ((((fun (Xx:fofType)=> ((x Xx) x1)) x1) x3) (fun (x4:(fofType->Prop))=> (P (x0 (g x1)))))) ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P (x0 (g x1)))->(P (f x1)))
% Found (fun (P:((fofType->Prop)->Prop))=> ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> ((((fun (Xx:fofType)=> ((x Xx) x1)) x1) x3) (fun (x4:(fofType->Prop))=> (P (x0 (g x1)))))) ((eq_ref (fofType->Prop)) (g x1)))) as proof of ((P (x0 (g x1)))->(P (f x1)))
% Found eta_expansion_dep000:=(eta_expansion_dep00 f):(((eq (fofType->(fofType->Prop))) f) (fun (x:fofType)=> (f x)))
% Found (eta_expansion_dep00 f) as proof of (((eq (fofType->(fofType->Prop))) f) b)
% Found ((eta_expansion_dep0 (fun (x2:fofType)=> (fofType->Prop))) f) as proof of (((eq (fofType->(fofType->Prop))) f) b)
% Found (((eta_expansion_dep fofType) (fun (x2:fofType)=> (fofType->Prop))) f) as proof of (((eq (fofType->(fofType->Prop))) f) b)
% Found (((eta_expansion_dep fofType) (fun (x2:fofType)=> (fofType->Prop))) f) as proof of (((eq (fofType->(fofType->Prop))) f) b)
% Found (((eta_expansion_dep fofType) (fun (x2:fofType)=> (fofType->Prop))) f) as proof of (((eq (fofType->(fofType->Prop))) f) b)
% Found eta_expansion000:=(eta_expansion00 b):(((eq (fofType->(fofType->Prop))) b) (fun (x:fofType)=> (b x)))
% Found (eta_expansion00 b) as proof of (((eq (fofType->(fofType->Prop))) b) (fun (Xx:fofType)=> (x0 (g Xx))))
% Found ((eta_expansion0 (fofType->Prop)) b) as proof of (((eq (fofType->(fofType->Prop))) b) (fun (Xx:fofType)=> (x0 (g Xx))))
% Found (((eta_expansion fofType) (fofType->Prop)) b) as proof of (((eq (fofType->(fofType->Prop))) b) (fun (Xx:fofType)=> (x0 (g Xx))))
% Found (((eta_expansion fofType) (fofType->Prop)) b) as proof of (((eq (fofType->(fofType->Prop))) b) (fun (Xx:fofType)=> (x0 (g Xx))))
% Found (((eta_expansion fofType) (fofType->Prop)) b) as proof of (((eq (fofType->(fofType->Prop))) b) (fun (Xx:fofType)=> (x0 (g Xx))))
% Found eq_ref000:=(eq_ref00 P):((P (x0 (g x1)))->(P (x0 (g x1))))
% Found (eq_ref00 P) as proof of ((P (x0 (g x1)))->(P (b x1)))
% Found ((eq_ref0 (x0 (g x1))) P) as proof of ((P (x0 (g x1)))->(P (b x1)))
% Found (((eq_ref (fofType->Prop)) (x0 (g x1))) P) as proof of ((P (x0 (g x1)))->(P (b x1)))
% Found (((eq_ref (fofType->Prop)) (x0 (g x1))) P) as proof of ((P (x0 (g x1)))->(P (b x1)))
% Found (fun (P:((fofType->Prop)->Prop))=> (((eq_ref (fofType->Prop)) (x0 (g x1))) P)) as proof of ((P (x0 (g x1)))->(P (b x1)))
% Found eq_ref000:=(eq_ref00 P):((P (x0 (g x1)))->(P (x0 (g x1))))
% Found (eq_ref00 P) as proof of ((P (x0 (g x1)))->(P (b x1)))
% Found ((eq_ref0 (x0 (g x1))) P) as proof of ((P (x0 (g x1)))->(P (b x1)))
% Found (((eq_ref (fofType->Prop)) (x0 (g x1))) P) as proof of ((P (x0 (g x1)))->(P (b x1)))
% Found (((eq_ref (fofType->Prop)) (x0 (g x1))) P) as proof of ((P (x0 (g x1)))->(P (b x1)))
% Found (fun (P:((fofType->Prop)->Prop))=> (((eq_ref (fofType->Prop)) (x0 (g x1))) P)) as proof of ((P (x0 (g x1)))->(P (b x1)))
% Found eq_ref000:=(eq_ref00 P):((P f)->(P f))
% Found (eq_ref00 P) as proof of (P0 f)
% Found ((eq_ref0 f) P) as proof of (P0 f)
% Found (((eq_ref (fofType->(fofType->Prop))) f) P) as proof of (P0 f)
% Found (((eq_ref (fofType->(fofType->Prop))) f) P) as proof of (P0 f)
% Found eq_ref000:=(eq_ref00 P):((P f)->(P f))
% Found (eq_ref00 P) as proof of (P0 f)
% Found ((eq_ref0 f) P) as proof of (P0 f)
% Found (((eq_ref (fofType->(fofType->Prop))) f) P) as proof of (P0 f)
% Found (((eq_ref (fofType->(fofType->Prop))) f) P) as proof of (P0 f)
% Found eq_ref00:=(eq_ref0 ((x0 (g x1)) x2)):(((eq Prop) ((x0 (g x1)) x2)) ((x0 (g x1)) x2))
% Found (eq_ref0 ((x0 (g x1)) x2)) as proof of (((eq Prop) ((x0 (g x1)) x2)) ((f x1) x2))
% Found ((eq_ref Prop) ((x0 (g x1)) x2)) as proof of (((eq Prop) ((x0 (g x1)) x2)) ((f x1) x2))
% Found ((eq_ref Prop) ((x0 (g x1)) x2)) as proof of (((eq Prop) ((x0 (g x1)) x2)) ((f x1) x2))
% Found (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2))) as proof of (((eq Prop) ((x0 (g x1)) x2)) ((f x1) x2))
% Found (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2))) as proof of (forall (x:fofType), (((eq Prop) ((x0 (g x1)) x)) ((f x1) x)))
% Found (functional_extensionality_dep01000 (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2)))) as proof of ((P (x0 (g x1)))->(P (f x1)))
% Found (functional_extensionality_dep01000 (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2)))) as proof of ((P (x0 (g x1)))->(P (f x1)))
% Found ((fun (x2:(forall (x:fofType), (((eq Prop) ((x0 (g x1)) x)) ((f x1) x))))=> ((functional_extensionality_dep0100 x2) P)) (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2)))) as proof of ((P (x0 (g x1)))->(P (f x1)))
% Found ((fun (x2:(forall (x:fofType), (((eq Prop) ((x0 (g x1)) x)) ((f x1) x))))=> (((functional_extensionality_dep010 (f x1)) x2) P)) (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2)))) as proof of ((P (x0 (g x1)))->(P (f x1)))
% Found ((fun (x2:(forall (x:fofType), (((eq Prop) ((x0 (g x1)) x)) ((f x1) x))))=> ((((functional_extensionality_dep01 (x0 (g x1))) (f x1)) x2) P)) (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2)))) as proof of ((P (x0 (g x1)))->(P (f x1)))
% Found ((fun (x2:(forall (x:fofType), (((eq Prop) ((x0 (g x1)) x)) ((f x1) x))))=> (((((functional_extensionality_dep0 (fun (x4:fofType)=> Prop)) (x0 (g x1))) (f x1)) x2) P)) (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2)))) as proof of ((P (x0 (g x1)))->(P (f x1)))
% Found (fun (P:((fofType->Prop)->Prop))=> ((fun (x2:(forall (x:fofType), (((eq Prop) ((x0 (g x1)) x)) ((f x1) x))))=> (((((functional_extensionality_dep0 (fun (x4:fofType)=> Prop)) (x0 (g x1))) (f x1)) x2) P)) (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2))))) as proof of ((P (x0 (g x1)))->(P (f x1)))
% Found eq_ref00:=(eq_ref0 ((x0 (g x1)) x2)):(((eq Prop) ((x0 (g x1)) x2)) ((x0 (g x1)) x2))
% Found (eq_ref0 ((x0 (g x1)) x2)) as proof of (((eq Prop) ((x0 (g x1)) x2)) ((f x1) x2))
% Found ((eq_ref Prop) ((x0 (g x1)) x2)) as proof of (((eq Prop) ((x0 (g x1)) x2)) ((f x1) x2))
% Found ((eq_ref Prop) ((x0 (g x1)) x2)) as proof of (((eq Prop) ((x0 (g x1)) x2)) ((f x1) x2))
% Found (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2))) as proof of (((eq Prop) ((x0 (g x1)) x2)) ((f x1) x2))
% Found (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2))) as proof of (forall (x:fofType), (((eq Prop) ((x0 (g x1)) x)) ((f x1) x)))
% Found (functional_extensionality01000 (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2)))) as proof of ((P (x0 (g x1)))->(P (f x1)))
% Found (functional_extensionality01000 (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2)))) as proof of ((P (x0 (g x1)))->(P (f x1)))
% Found ((fun (x2:(forall (x:fofType), (((eq Prop) ((x0 (g x1)) x)) ((f x1) x))))=> ((functional_extensionality0100 x2) P)) (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2)))) as proof of ((P (x0 (g x1)))->(P (f x1)))
% Found ((fun (x2:(forall (x:fofType), (((eq Prop) ((x0 (g x1)) x)) ((f x1) x))))=> (((functional_extensionality010 (f x1)) x2) P)) (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2)))) as proof of ((P (x0 (g x1)))->(P (f x1)))
% Found ((fun (x2:(forall (x:fofType), (((eq Prop) ((x0 (g x1)) x)) ((f x1) x))))=> ((((functional_extensionality01 (x0 (g x1))) (f x1)) x2) P)) (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2)))) as proof of ((P (x0 (g x1)))->(P (f x1)))
% Found ((fun (x2:(forall (x:fofType), (((eq Prop) ((x0 (g x1)) x)) ((f x1) x))))=> (((((functional_extensionality0 Prop) (x0 (g x1))) (f x1)) x2) P)) (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2)))) as proof of ((P (x0 (g x1)))->(P (f x1)))
% Found (fun (P:((fofType->Prop)->Prop))=> ((fun (x2:(forall (x:fofType), (((eq Prop) ((x0 (g x1)) x)) ((f x1) x))))=> (((((functional_extensionality0 Prop) (x0 (g x1))) (f x1)) x2) P)) (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2))))) as proof of ((P (x0 (g x1)))->(P (f x1)))
% Found eq_ref00:=(eq_ref0 ((x0 (g x1)) x2)):(((eq Prop) ((x0 (g x1)) x2)) ((x0 (g x1)) x2))
% Found (eq_ref0 ((x0 (g x1)) x2)) as proof of (((eq Prop) ((x0 (g x1)) x2)) ((f x1) x2))
% Found ((eq_ref Prop) ((x0 (g x1)) x2)) as proof of (((eq Prop) ((x0 (g x1)) x2)) ((f x1) x2))
% Found ((eq_ref Prop) ((x0 (g x1)) x2)) as proof of (((eq Prop) ((x0 (g x1)) x2)) ((f x1) x2))
% Found (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2))) as proof of (((eq Prop) ((x0 (g x1)) x2)) ((f x1) x2))
% Found (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2))) as proof of (forall (x:fofType), (((eq Prop) ((x0 (g x1)) x)) ((f x1) x)))
% Found (functional_extensionality0100 (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2)))) as proof of (((eq (fofType->Prop)) (x0 (g x1))) (f x1))
% Found ((functional_extensionality010 (f x1)) (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2)))) as proof of (((eq (fofType->Prop)) (x0 (g x1))) (f x1))
% Found (((functional_extensionality01 (x0 (g x1))) (f x1)) (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2)))) as proof of (((eq (fofType->Prop)) (x0 (g x1))) (f x1))
% Found ((((functional_extensionality0 Prop) (x0 (g x1))) (f x1)) (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2)))) as proof of (((eq (fofType->Prop)) (x0 (g x1))) (f x1))
% Found eq_ref00:=(eq_ref0 ((x0 (g x1)) x2)):(((eq Prop) ((x0 (g x1)) x2)) ((x0 (g x1)) x2))
% Found (eq_ref0 ((x0 (g x1)) x2)) as proof of (((eq Prop) ((x0 (g x1)) x2)) ((f x1) x2))
% Found ((eq_ref Prop) ((x0 (g x1)) x2)) as proof of (((eq Prop) ((x0 (g x1)) x2)) ((f x1) x2))
% Found ((eq_ref Prop) ((x0 (g x1)) x2)) as proof of (((eq Prop) ((x0 (g x1)) x2)) ((f x1) x2))
% Found (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2))) as proof of (((eq Prop) ((x0 (g x1)) x2)) ((f x1) x2))
% Found (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2))) as proof of (forall (x:fofType), (((eq Prop) ((x0 (g x1)) x)) ((f x1) x)))
% Found (functional_extensionality_dep0100 (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2)))) as proof of (((eq (fofType->Prop)) (x0 (g x1))) (f x1))
% Found ((functional_extensionality_dep010 (f x1)) (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2)))) as proof of (((eq (fofType->Prop)) (x0 (g x1))) (f x1))
% Found (((functional_extensionality_dep01 (x0 (g x1))) (f x1)) (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2)))) as proof of (((eq (fofType->Prop)) (x0 (g x1))) (f x1))
% Found ((((functional_extensionality_dep0 (fun (x4:fofType)=> Prop)) (x0 (g x1))) (f x1)) (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2)))) as proof of (((eq (fofType->Prop)) (x0 (g x1))) (f x1))
% Found eq_ref00:=(eq_ref0 ((x0 (g x1)) x2)):(((eq Prop) ((x0 (g x1)) x2)) ((x0 (g x1)) x2))
% Found (eq_ref0 ((x0 (g x1)) x2)) as proof of (((eq Prop) ((x0 (g x1)) x2)) ((f x1) x2))
% Found ((eq_ref Prop) ((x0 (g x1)) x2)) as proof of (((eq Prop) ((x0 (g x1)) x2)) ((f x1) x2))
% Found ((eq_ref Prop) ((x0 (g x1)) x2)) as proof of (((eq Prop) ((x0 (g x1)) x2)) ((f x1) x2))
% Found (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2))) as proof of (((eq Prop) ((x0 (g x1)) x2)) ((f x1) x2))
% Found (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2))) as proof of (forall (x:fofType), (((eq Prop) ((x0 (g x1)) x)) ((f x1) x)))
% Found (functional_extensionality_dep0100 (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2)))) as proof of (((eq (fofType->Prop)) (x0 (g x1))) (f x1))
% Found ((functional_extensionality_dep010 (f x1)) (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2)))) as proof of (((eq (fofType->Prop)) (x0 (g x1))) (f x1))
% Found (((functional_extensionality_dep01 (x0 (g x1))) (f x1)) (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2)))) as proof of (((eq (fofType->Prop)) (x0 (g x1))) (f x1))
% Found ((((functional_extensionality_dep0 (fun (x4:fofType)=> Prop)) (x0 (g x1))) (f x1)) (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2)))) as proof of (((eq (fofType->Prop)) (x0 (g x1))) (f x1))
% Found eq_ref00:=(eq_ref0 ((x0 (g x1)) x2)):(((eq Prop) ((x0 (g x1)) x2)) ((x0 (g x1)) x2))
% Found (eq_ref0 ((x0 (g x1)) x2)) as proof of (((eq Prop) ((x0 (g x1)) x2)) ((f x1) x2))
% Found ((eq_ref Prop) ((x0 (g x1)) x2)) as proof of (((eq Prop) ((x0 (g x1)) x2)) ((f x1) x2))
% Found ((eq_ref Prop) ((x0 (g x1)) x2)) as proof of (((eq Prop) ((x0 (g x1)) x2)) ((f x1) x2))
% Found (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2))) as proof of (((eq Prop) ((x0 (g x1)) x2)) ((f x1) x2))
% Found (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2))) as proof of (forall (x:fofType), (((eq Prop) ((x0 (g x1)) x)) ((f x1) x)))
% Found (functional_extensionality0100 (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2)))) as proof of (((eq (fofType->Prop)) (x0 (g x1))) (f x1))
% Found ((functional_extensionality010 (f x1)) (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2)))) as proof of (((eq (fofType->Prop)) (x0 (g x1))) (f x1))
% Found (((functional_extensionality01 (x0 (g x1))) (f x1)) (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2)))) as proof of (((eq (fofType->Prop)) (x0 (g x1))) (f x1))
% Found ((((functional_extensionality0 Prop) (x0 (g x1))) (f x1)) (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2)))) as proof of (((eq (fofType->Prop)) (x0 (g x1))) (f x1))
% Found eq_ref00:=(eq_ref0 ((x0 (g x1)) y)):(((eq Prop) ((x0 (g x1)) y)) ((x0 (g x1)) y))
% Found (eq_ref0 ((x0 (g x1)) y)) as proof of (((eq Prop) ((x0 (g x1)) y)) ((b x1) y))
% Found ((eq_ref Prop) ((x0 (g x1)) y)) as proof of (((eq Prop) ((x0 (g x1)) y)) ((b x1) y))
% Found ((eq_ref Prop) ((x0 (g x1)) y)) as proof of (((eq Prop) ((x0 (g x1)) y)) ((b x1) y))
% Found (fun (y:fofType)=> ((eq_ref Prop) ((x0 (g x1)) y))) as proof of (((eq Prop) ((x0 (g x1)) y)) ((b x1) y))
% Found eq_ref000:=(eq_ref00 P):((P (x0 (g x1)))->(P (x0 (g x1))))
% Found (eq_ref00 P) as proof of (P0 (x0 (g x1)))
% Found ((eq_ref0 (x0 (g x1))) P) as proof of (P0 (x0 (g x1)))
% Found (((eq_ref (fofType->Prop)) (x0 (g x1))) P) as proof of (P0 (x0 (g x1)))
% Found (((eq_ref (fofType->Prop)) (x0 (g x1))) P) as proof of (P0 (x0 (g x1)))
% Found eq_ref00:=(eq_ref0 ((x0 (g x1)) x2)):(((eq Prop) ((x0 (g x1)) x2)) ((x0 (g x1)) x2))
% Found (eq_ref0 ((x0 (g x1)) x2)) as proof of (((eq Prop) ((x0 (g x1)) x2)) ((f x1) x2))
% Found ((eq_ref Prop) ((x0 (g x1)) x2)) as proof of (((eq Prop) ((x0 (g x1)) x2)) ((f x1) x2))
% Found ((eq_ref Prop) ((x0 (g x1)) x2)) as proof of (((eq Prop) ((x0 (g x1)) x2)) ((f x1) x2))
% Found (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2))) as proof of (((eq Prop) ((x0 (g x1)) x2)) ((f x1) x2))
% Found (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2))) as proof of (forall (x:fofType), (((eq Prop) ((x0 (g x1)) x)) ((f x1) x)))
% Found ((functional_extensionality01000 (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2)))) (((eq_ref (fofType->Prop)) (x0 (g x1))) P)) as proof of ((P (x0 (g x1)))->(P (f x1)))
% Found ((functional_extensionality01000 (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2)))) (((eq_ref (fofType->Prop)) (x0 (g x1))) P)) as proof of ((P (x0 (g x1)))->(P (f x1)))
% Found (((fun (x2:(forall (x:fofType), (((eq Prop) ((x0 (g x1)) x)) ((f x1) x))))=> ((functional_extensionality0100 x2) (fun (x4:(fofType->Prop))=> ((P (x0 (g x1)))->(P x4))))) (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2)))) (((eq_ref (fofType->Prop)) (x0 (g x1))) P)) as proof of ((P (x0 (g x1)))->(P (f x1)))
% Found (((fun (x2:(forall (x:fofType), (((eq Prop) ((x0 (g x1)) x)) ((f x1) x))))=> (((functional_extensionality010 (f x1)) x2) (fun (x4:(fofType->Prop))=> ((P (x0 (g x1)))->(P x4))))) (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2)))) (((eq_ref (fofType->Prop)) (x0 (g x1))) P)) as proof of ((P (x0 (g x1)))->(P (f x1)))
% Found (((fun (x2:(forall (x:fofType), (((eq Prop) ((x0 (g x1)) x)) ((f x1) x))))=> ((((functional_extensionality01 (x0 (g x1))) (f x1)) x2) (fun (x4:(fofType->Prop))=> ((P (x0 (g x1)))->(P x4))))) (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2)))) (((eq_ref (fofType->Prop)) (x0 (g x1))) P)) as proof of ((P (x0 (g x1)))->(P (f x1)))
% Found (((fun (x2:(forall (x:fofType), (((eq Prop) ((x0 (g x1)) x)) ((f x1) x))))=> (((((functional_extensionality0 Prop) (x0 (g x1))) (f x1)) x2) (fun (x4:(fofType->Prop))=> ((P (x0 (g x1)))->(P x4))))) (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2)))) (((eq_ref (fofType->Prop)) (x0 (g x1))) P)) as proof of ((P (x0 (g x1)))->(P (f x1)))
% Found (fun (P:((fofType->Prop)->Prop))=> (((fun (x2:(forall (x:fofType), (((eq Prop) ((x0 (g x1)) x)) ((f x1) x))))=> (((((functional_extensionality0 Prop) (x0 (g x1))) (f x1)) x2) (fun (x4:(fofType->Prop))=> ((P (x0 (g x1)))->(P x4))))) (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2)))) (((eq_ref (fofType->Prop)) (x0 (g x1))) P))) as proof of ((P (x0 (g x1)))->(P (f x1)))
% Found eq_ref000:=(eq_ref00 P):((P (x0 (g x1)))->(P (x0 (g x1))))
% Found (eq_ref00 P) as proof of (P0 (x0 (g x1)))
% Found ((eq_ref0 (x0 (g x1))) P) as proof of (P0 (x0 (g x1)))
% Found (((eq_ref (fofType->Prop)) (x0 (g x1))) P) as proof of (P0 (x0 (g x1)))
% Found (((eq_ref (fofType->Prop)) (x0 (g x1))) P) as proof of (P0 (x0 (g x1)))
% Found eq_ref00:=(eq_ref0 ((x0 (g x1)) x2)):(((eq Prop) ((x0 (g x1)) x2)) ((x0 (g x1)) x2))
% Found (eq_ref0 ((x0 (g x1)) x2)) as proof of (((eq Prop) ((x0 (g x1)) x2)) ((f x1) x2))
% Found ((eq_ref Prop) ((x0 (g x1)) x2)) as proof of (((eq Prop) ((x0 (g x1)) x2)) ((f x1) x2))
% Found ((eq_ref Prop) ((x0 (g x1)) x2)) as proof of (((eq Prop) ((x0 (g x1)) x2)) ((f x1) x2))
% Found (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2))) as proof of (((eq Prop) ((x0 (g x1)) x2)) ((f x1) x2))
% Found (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2))) as proof of (forall (x:fofType), (((eq Prop) ((x0 (g x1)) x)) ((f x1) x)))
% Found ((functional_extensionality_dep01000 (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2)))) (((eq_ref (fofType->Prop)) (x0 (g x1))) P)) as proof of ((P (x0 (g x1)))->(P (f x1)))
% Found ((functional_extensionality_dep01000 (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2)))) (((eq_ref (fofType->Prop)) (x0 (g x1))) P)) as proof of ((P (x0 (g x1)))->(P (f x1)))
% Found (((fun (x2:(forall (x:fofType), (((eq Prop) ((x0 (g x1)) x)) ((f x1) x))))=> ((functional_extensionality_dep0100 x2) (fun (x4:(fofType->Prop))=> ((P (x0 (g x1)))->(P x4))))) (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2)))) (((eq_ref (fofType->Prop)) (x0 (g x1))) P)) as proof of ((P (x0 (g x1)))->(P (f x1)))
% Found (((fun (x2:(forall (x:fofType), (((eq Prop) ((x0 (g x1)) x)) ((f x1) x))))=> (((functional_extensionality_dep010 (f x1)) x2) (fun (x4:(fofType->Prop))=> ((P (x0 (g x1)))->(P x4))))) (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2)))) (((eq_ref (fofType->Prop)) (x0 (g x1))) P)) as proof of ((P (x0 (g x1)))->(P (f x1)))
% Found (((fun (x2:(forall (x:fofType), (((eq Prop) ((x0 (g x1)) x)) ((f x1) x))))=> ((((functional_extensionality_dep01 (x0 (g x1))) (f x1)) x2) (fun (x4:(fofType->Prop))=> ((P (x0 (g x1)))->(P x4))))) (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2)))) (((eq_ref (fofType->Prop)) (x0 (g x1))) P)) as proof of ((P (x0 (g x1)))->(P (f x1)))
% Found (((fun (x2:(forall (x:fofType), (((eq Prop) ((x0 (g x1)) x)) ((f x1) x))))=> (((((functional_extensionality_dep0 (fun (x4:fofType)=> Prop)) (x0 (g x1))) (f x1)) x2) (fun (x4:(fofType->Prop))=> ((P (x0 (g x1)))->(P x4))))) (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2)))) (((eq_ref (fofType->Prop)) (x0 (g x1))) P)) as proof of ((P (x0 (g x1)))->(P (f x1)))
% Found (fun (P:((fofType->Prop)->Prop))=> (((fun (x2:(forall (x:fofType), (((eq Prop) ((x0 (g x1)) x)) ((f x1) x))))=> (((((functional_extensionality_dep0 (fun (x4:fofType)=> Prop)) (x0 (g x1))) (f x1)) x2) (fun (x4:(fofType->Prop))=> ((P (x0 (g x1)))->(P x4))))) (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2)))) (((eq_ref (fofType->Prop)) (x0 (g x1))) P))) as proof of ((P (x0 (g x1)))->(P (f x1)))
% Found eq_ref000:=(eq_ref00 P):((P (x0 (g x1)))->(P (x0 (g x1))))
% Found (eq_ref00 P) as proof of (P0 (x0 (g x1)))
% Found ((eq_ref0 (x0 (g x1))) P) as proof of (P0 (x0 (g x1)))
% Found (((eq_ref (fofType->Prop)) (x0 (g x1))) P) as proof of (P0 (x0 (g x1)))
% Found (((eq_ref (fofType->Prop)) (x0 (g x1))) P) as proof of (P0 (x0 (g x1)))
% Found eq_ref000:=(eq_ref00 P):((P (x0 (g x1)))->(P (x0 (g x1))))
% Found (eq_ref00 P) as proof of (P0 (x0 (g x1)))
% Found ((eq_ref0 (x0 (g x1))) P) as proof of (P0 (x0 (g x1)))
% Found (((eq_ref (fofType->Prop)) (x0 (g x1))) P) as proof of (P0 (x0 (g x1)))
% Found (((eq_ref (fofType->Prop)) (x0 (g x1))) P) as proof of (P0 (x0 (g x1)))
% Found eq_ref00:=(eq_ref0 b):(((eq (fofType->Prop)) b) b)
% Found (eq_ref0 b) as proof of (((eq (fofType->Prop)) b) (f x1))
% Found ((eq_ref (fofType->Prop)) b) as proof of (((eq (fofType->Prop)) b) (f x1))
% Found ((eq_ref (fofType->Prop)) b) as proof of (((eq (fofType->Prop)) b) (f x1))
% Found ((eq_ref (fofType->Prop)) b) as proof of (((eq (fofType->Prop)) b) (f x1))
% Found eta_expansion000:=(eta_expansion00 (x0 (g x1))):(((eq (fofType->Prop)) (x0 (g x1))) (fun (x:fofType)=> ((x0 (g x1)) x)))
% Found (eta_expansion00 (x0 (g x1))) as proof of (((eq (fofType->Prop)) (x0 (g x1))) b)
% Found ((eta_expansion0 Prop) (x0 (g x1))) as proof of (((eq (fofType->Prop)) (x0 (g x1))) b)
% Found (((eta_expansion fofType) Prop) (x0 (g x1))) as proof of (((eq (fofType->Prop)) (x0 (g x1))) b)
% Found (((eta_expansion fofType) Prop) (x0 (g x1))) as proof of (((eq (fofType->Prop)) (x0 (g x1))) b)
% Found (((eta_expansion fofType) Prop) (x0 (g x1))) as proof of (((eq (fofType->Prop)) (x0 (g x1))) b)
% Found eq_ref00:=(eq_ref0 (x0 (g x1))):(((eq (fofType->Prop)) (x0 (g x1))) (x0 (g x1)))
% Found (eq_ref0 (x0 (g x1))) as proof of (((eq (fofType->Prop)) (x0 (g x1))) b)
% Found ((eq_ref (fofType->Prop)) (x0 (g x1))) as proof of (((eq (fofType->Prop)) (x0 (g x1))) b)
% Found ((eq_ref (fofType->Prop)) (x0 (g x1))) as proof of (((eq (fofType->Prop)) (x0 (g x1))) b)
% Found ((eq_ref (fofType->Prop)) (x0 (g x1))) as proof of (((eq (fofType->Prop)) (x0 (g x1))) b)
% Found ((eq_trans0000 ((eq_ref (fofType->Prop)) (x0 (g x1)))) ((eq_ref (fofType->Prop)) b)) as proof of (((eq (fofType->Prop)) (x0 (g x1))) (f x1))
% Found (((eq_trans000 (f x1)) ((eq_ref (fofType->Prop)) (x0 (g x1)))) ((eq_ref (fofType->Prop)) b)) as proof of (((eq (fofType->Prop)) (x0 (g x1))) (f x1))
% Found ((((eq_trans00 (f x1)) (f x1)) ((eq_ref (fofType->Prop)) (x0 (g x1)))) ((eq_ref (fofType->Prop)) (f x1))) as proof of (((eq (fofType->Prop)) (x0 (g x1))) (f x1))
% Found (((((eq_trans0 (x0 (g x1))) (f x1)) (f x1)) ((eq_ref (fofType->Prop)) (x0 (g x1)))) ((eq_ref (fofType->Prop)) (f x1))) as proof of (((eq (fofType->Prop)) (x0 (g x1))) (f x1))
% Found ((((((eq_trans (fofType->Prop)) (x0 (g x1))) (f x1)) (f x1)) ((eq_ref (fofType->Prop)) (x0 (g x1)))) ((eq_ref (fofType->Prop)) (f x1))) as proof of (((eq (fofType->Prop)) (x0 (g x1))) (f x1))
% Found eq_ref00:=(eq_ref0 b):(((eq (fofType->Prop)) b) b)
% Found (eq_ref0 b) as proof of (((eq (fofType->Prop)) b) (f x1))
% Found ((eq_ref (fofType->Prop)) b) as proof of (((eq (fofType->Prop)) b) (f x1))
% Found ((eq_ref (fofType->Prop)) b) as proof of (((eq (fofType->Prop)) b) (f x1))
% Found ((eq_ref (fofType->Prop)) b) as proof of (((eq (fofType->Prop)) b) (f x1))
% Found eq_ref00:=(eq_ref0 (x0 (g x1))):(((eq (fofType->Prop)) (x0 (g x1))) (x0 (g x1)))
% Found (eq_ref0 (x0 (g x1))) as proof of (((eq (fofType->Prop)) (x0 (g x1))) b)
% Found ((eq_ref (fofType->Prop)) (x0 (g x1))) as proof of (((eq (fofType->Prop)) (x0 (g x1))) b)
% Found ((eq_ref (fofType->Prop)) (x0 (g x1))) as proof of (((eq (fofType->Prop)) (x0 (g x1))) b)
% Found ((eq_ref (fofType->Prop)) (x0 (g x1))) as proof of (((eq (fofType->Prop)) (x0 (g x1))) b)
% Found ((eq_trans0000 ((eq_ref (fofType->Prop)) (x0 (g x1)))) ((eq_ref (fofType->Prop)) b)) as proof of (((eq (fofType->Prop)) (x0 (g x1))) (f x1))
% Found (((eq_trans000 (f x1)) ((eq_ref (fofType->Prop)) (x0 (g x1)))) ((eq_ref (fofType->Prop)) b)) as proof of (((eq (fofType->Prop)) (x0 (g x1))) (f x1))
% Found ((((eq_trans00 (f x1)) (f x1)) ((eq_ref (fofType->Prop)) (x0 (g x1)))) ((eq_ref (fofType->Prop)) (f x1))) as proof of (((eq (fofType->Prop)) (x0 (g x1))) (f x1))
% Found (((((eq_trans0 (x0 (g x1))) (f x1)) (f x1)) ((eq_ref (fofType->Prop)) (x0 (g x1)))) ((eq_ref (fofType->Prop)) (f x1))) as proof of (((eq (fofType->Prop)) (x0 (g x1))) (f x1))
% Found ((((((eq_trans (fofType->Prop)) (x0 (g x1))) (f x1)) (f x1)) ((eq_ref (fofType->Prop)) (x0 (g x1)))) ((eq_ref (fofType->Prop)) (f x1))) as proof of (((eq (fofType->Prop)) (x0 (g x1))) (f x1))
% Found eq_ref000:=(eq_ref00 P):((P f)->(P f))
% Found (eq_ref00 P) as proof of (P0 f)
% Found ((eq_ref0 f) P) as proof of (P0 f)
% Found (((eq_ref (fofType->(fofType->Prop))) f) P) as proof of (P0 f)
% Found (((eq_ref (fofType->(fofType->Prop))) f) P) as proof of (P0 f)
% Found eq_ref00:=(eq_ref0 (g x1)):(((eq (fofType->Prop)) (g x1)) (g x1))
% Found (eq_ref0 (g x1)) as proof of (((eq (fofType->Prop)) (g x1)) (g x1))
% Found ((eq_ref (fofType->Prop)) (g x1)) as proof of (((eq (fofType->Prop)) (g x1)) (g x1))
% Found ((eq_ref (fofType->Prop)) (g x1)) as proof of (((eq (fofType->Prop)) (g x1)) (g x1))
% Found (x200 ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P ((x0 (g x1)) y))->(P ((f x1) y)))
% Found (x200 ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P ((x0 (g x1)) y))->(P ((f x1) y)))
% Found ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> ((x20 x3) (fun (x4:(fofType->Prop))=> (P (x4 y))))) ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P ((x0 (g x1)) y))->(P ((f x1) y)))
% Found ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> (((x2 x1) x3) (fun (x4:(fofType->Prop))=> (P (x4 y))))) ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P ((x0 (g x1)) y))->(P ((f x1) y)))
% Found ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> ((((fun (Xx:fofType)=> ((x Xx) x1)) x1) x3) (fun (x4:(fofType->Prop))=> (P (x4 y))))) ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P ((x0 (g x1)) y))->(P ((f x1) y)))
% Found ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> ((((fun (Xx:fofType)=> ((x Xx) x1)) x1) x3) (fun (x4:(fofType->Prop))=> (P (x4 y))))) ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P ((x0 (g x1)) y))->(P ((f x1) y)))
% Found (fun (P:(Prop->Prop))=> ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> ((((fun (Xx:fofType)=> ((x Xx) x1)) x1) x3) (fun (x4:(fofType->Prop))=> (P (x4 y))))) ((eq_ref (fofType->Prop)) (g x1)))) as proof of ((P ((x0 (g x1)) y))->(P ((f x1) y)))
% Found (fun (y:fofType) (P:(Prop->Prop))=> ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> ((((fun (Xx:fofType)=> ((x Xx) x1)) x1) x3) (fun (x4:(fofType->Prop))=> (P (x4 y))))) ((eq_ref (fofType->Prop)) (g x1)))) as proof of (((eq Prop) ((x0 (g x1)) y)) ((f x1) y))
% Found eq_ref00:=(eq_ref0 (g x1)):(((eq (fofType->Prop)) (g x1)) (g x1))
% Found (eq_ref0 (g x1)) as proof of (((eq (fofType->Prop)) (g x1)) (g x1))
% Found ((eq_ref (fofType->Prop)) (g x1)) as proof of (((eq (fofType->Prop)) (g x1)) (g x1))
% Found ((eq_ref (fofType->Prop)) (g x1)) as proof of (((eq (fofType->Prop)) (g x1)) (g x1))
% Found (x200 ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P ((x0 (g x1)) y))->(P ((f x1) y)))
% Found (x200 ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P ((x0 (g x1)) y))->(P ((f x1) y)))
% Found ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> ((x20 x3) (fun (x4:(fofType->Prop))=> (P ((x0 (g x1)) y))))) ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P ((x0 (g x1)) y))->(P ((f x1) y)))
% Found ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> (((x2 x1) x3) (fun (x4:(fofType->Prop))=> (P ((x0 (g x1)) y))))) ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P ((x0 (g x1)) y))->(P ((f x1) y)))
% Found ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> ((((fun (Xx:fofType)=> ((x Xx) x1)) x1) x3) (fun (x4:(fofType->Prop))=> (P ((x0 (g x1)) y))))) ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P ((x0 (g x1)) y))->(P ((f x1) y)))
% Found ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> ((((fun (Xx:fofType)=> ((x Xx) x1)) x1) x3) (fun (x4:(fofType->Prop))=> (P ((x0 (g x1)) y))))) ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P ((x0 (g x1)) y))->(P ((f x1) y)))
% Found (fun (P:(Prop->Prop))=> ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> ((((fun (Xx:fofType)=> ((x Xx) x1)) x1) x3) (fun (x4:(fofType->Prop))=> (P ((x0 (g x1)) y))))) ((eq_ref (fofType->Prop)) (g x1)))) as proof of ((P ((x0 (g x1)) y))->(P ((f x1) y)))
% Found (fun (y:fofType) (P:(Prop->Prop))=> ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> ((((fun (Xx:fofType)=> ((x Xx) x1)) x1) x3) (fun (x4:(fofType->Prop))=> (P ((x0 (g x1)) y))))) ((eq_ref (fofType->Prop)) (g x1)))) as proof of (((eq Prop) ((x0 (g x1)) y)) ((f x1) y))
% Found eq_ref00:=(eq_ref0 (g x1)):(((eq (fofType->Prop)) (g x1)) (g x1))
% Found (eq_ref0 (g x1)) as proof of (((eq (fofType->Prop)) (g x1)) (g x1))
% Found ((eq_ref (fofType->Prop)) (g x1)) as proof of (((eq (fofType->Prop)) (g x1)) (g x1))
% Found ((eq_ref (fofType->Prop)) (g x1)) as proof of (((eq (fofType->Prop)) (g x1)) (g x1))
% Found (x200 ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P ((x0 (g x1)) y))->(P ((f x1) y)))
% Found (x200 ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P ((x0 (g x1)) y))->(P ((f x1) y)))
% Found ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> ((x20 x3) (fun (x4:(fofType->Prop))=> (P ((x0 (g x1)) y))))) ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P ((x0 (g x1)) y))->(P ((f x1) y)))
% Found ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> (((x2 x1) x3) (fun (x4:(fofType->Prop))=> (P ((x0 (g x1)) y))))) ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P ((x0 (g x1)) y))->(P ((f x1) y)))
% Found ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> (((x2 x1) x3) (fun (x4:(fofType->Prop))=> (P ((x0 (g x1)) y))))) ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P ((x0 (g x1)) y))->(P ((f x1) y)))
% Found ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> ((((fun (Xx:fofType)=> ((x Xx) x1)) x1) x3) (fun (x4:(fofType->Prop))=> (P ((x0 (g x1)) y))))) ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P ((x0 (g x1)) y))->(P ((f x1) y)))
% Found (fun (P:(Prop->Prop))=> ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> ((((fun (Xx:fofType)=> ((x Xx) x1)) x1) x3) (fun (x4:(fofType->Prop))=> (P ((x0 (g x1)) y))))) ((eq_ref (fofType->Prop)) (g x1)))) as proof of ((P ((x0 (g x1)) y))->(P ((f x1) y)))
% Found (fun (y:fofType) (P:(Prop->Prop))=> ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> ((((fun (Xx:fofType)=> ((x Xx) x1)) x1) x3) (fun (x4:(fofType->Prop))=> (P ((x0 (g x1)) y))))) ((eq_ref (fofType->Prop)) (g x1)))) as proof of (((eq Prop) ((x0 (g x1)) y)) ((f x1) y))
% Found eq_ref00:=(eq_ref0 (g x1)):(((eq (fofType->Prop)) (g x1)) (g x1))
% Found (eq_ref0 (g x1)) as proof of (((eq (fofType->Prop)) (g x1)) (g x1))
% Found ((eq_ref (fofType->Prop)) (g x1)) as proof of (((eq (fofType->Prop)) (g x1)) (g x1))
% Found ((eq_ref (fofType->Prop)) (g x1)) as proof of (((eq (fofType->Prop)) (g x1)) (g x1))
% Found (x200 ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P ((x0 (g x1)) y))->(P ((f x1) y)))
% Found (x200 ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P ((x0 (g x1)) y))->(P ((f x1) y)))
% Found ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> ((x20 x3) (fun (x4:(fofType->Prop))=> (P (x4 y))))) ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P ((x0 (g x1)) y))->(P ((f x1) y)))
% Found ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> (((x2 x1) x3) (fun (x4:(fofType->Prop))=> (P (x4 y))))) ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P ((x0 (g x1)) y))->(P ((f x1) y)))
% Found ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> (((x2 x1) x3) (fun (x4:(fofType->Prop))=> (P (x4 y))))) ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P ((x0 (g x1)) y))->(P ((f x1) y)))
% Found ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> ((((fun (Xx:fofType)=> ((x Xx) x1)) x1) x3) (fun (x4:(fofType->Prop))=> (P (x4 y))))) ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P ((x0 (g x1)) y))->(P ((f x1) y)))
% Found (fun (P:(Prop->Prop))=> ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> ((((fun (Xx:fofType)=> ((x Xx) x1)) x1) x3) (fun (x4:(fofType->Prop))=> (P (x4 y))))) ((eq_ref (fofType->Prop)) (g x1)))) as proof of ((P ((x0 (g x1)) y))->(P ((f x1) y)))
% Found (fun (y:fofType) (P:(Prop->Prop))=> ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> ((((fun (Xx:fofType)=> ((x Xx) x1)) x1) x3) (fun (x4:(fofType->Prop))=> (P (x4 y))))) ((eq_ref (fofType->Prop)) (g x1)))) as proof of (((eq Prop) ((x0 (g x1)) y)) ((f x1) y))
% Found eq_ref00:=(eq_ref0 ((x0 (g x1)) x2)):(((eq Prop) ((x0 (g x1)) x2)) ((x0 (g x1)) x2))
% Found (eq_ref0 ((x0 (g x1)) x2)) as proof of (((eq Prop) ((x0 (g x1)) x2)) ((f x1) x2))
% Found ((eq_ref Prop) ((x0 (g x1)) x2)) as proof of (((eq Prop) ((x0 (g x1)) x2)) ((f x1) x2))
% Found ((eq_ref Prop) ((x0 (g x1)) x2)) as proof of (((eq Prop) ((x0 (g x1)) x2)) ((f x1) x2))
% Found (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2))) as proof of (((eq Prop) ((x0 (g x1)) x2)) ((f x1) x2))
% Found (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2))) as proof of (forall (x:fofType), (((eq Prop) ((x0 (g x1)) x)) ((f x1) x)))
% Found (functional_extensionality00000 (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2)))) as proof of ((P (x0 (g x1)))->(P (f x1)))
% Found (functional_extensionality00000 (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2)))) as proof of ((P (x0 (g x1)))->(P (f x1)))
% Found ((fun (x2:(forall (x:fofType), (((eq Prop) ((x0 (g x1)) x)) ((f x1) x))))=> ((functional_extensionality0000 x2) P)) (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2)))) as proof of ((P (x0 (g x1)))->(P (f x1)))
% Found ((fun (x2:(forall (x:fofType), (((eq Prop) ((x0 (g x1)) x)) ((f x1) x))))=> (((functional_extensionality000 (f x1)) x2) P)) (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2)))) as proof of ((P (x0 (g x1)))->(P (f x1)))
% Found ((fun (x2:(forall (x:fofType), (((eq Prop) ((x0 (g x1)) x)) ((f x1) x))))=> ((((functional_extensionality00 (x0 (g x1))) (f x1)) x2) P)) (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2)))) as proof of ((P (x0 (g x1)))->(P (f x1)))
% Found ((fun (x2:(forall (x:fofType), (((eq Prop) ((x0 (g x1)) x)) ((f x1) x))))=> (((((functional_extensionality0 Prop) (x0 (g x1))) (f x1)) x2) P)) (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2)))) as proof of ((P (x0 (g x1)))->(P (f x1)))
% Found ((fun (x2:(forall (x:fofType), (((eq Prop) ((x0 (g x1)) x)) ((f x1) x))))=> ((((((functional_extensionality fofType) Prop) (x0 (g x1))) (f x1)) x2) P)) (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2)))) as proof of ((P (x0 (g x1)))->(P (f x1)))
% Found (fun (P:((fofType->Prop)->Prop))=> ((fun (x2:(forall (x:fofType), (((eq Prop) ((x0 (g x1)) x)) ((f x1) x))))=> ((((((functional_extensionality fofType) Prop) (x0 (g x1))) (f x1)) x2) P)) (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2))))) as proof of ((P (x0 (g x1)))->(P (f x1)))
% Found eq_ref00:=(eq_ref0 ((x0 (g x1)) x2)):(((eq Prop) ((x0 (g x1)) x2)) ((x0 (g x1)) x2))
% Found (eq_ref0 ((x0 (g x1)) x2)) as proof of (((eq Prop) ((x0 (g x1)) x2)) ((f x1) x2))
% Found ((eq_ref Prop) ((x0 (g x1)) x2)) as proof of (((eq Prop) ((x0 (g x1)) x2)) ((f x1) x2))
% Found ((eq_ref Prop) ((x0 (g x1)) x2)) as proof of (((eq Prop) ((x0 (g x1)) x2)) ((f x1) x2))
% Found (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2))) as proof of (((eq Prop) ((x0 (g x1)) x2)) ((f x1) x2))
% Found (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2))) as proof of (forall (x:fofType), (((eq Prop) ((x0 (g x1)) x)) ((f x1) x)))
% Found (functional_extensionality_dep00000 (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2)))) as proof of ((P (x0 (g x1)))->(P (f x1)))
% Found (functional_extensionality_dep00000 (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2)))) as proof of ((P (x0 (g x1)))->(P (f x1)))
% Found ((fun (x2:(forall (x:fofType), (((eq Prop) ((x0 (g x1)) x)) ((f x1) x))))=> ((functional_extensionality_dep0000 x2) P)) (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2)))) as proof of ((P (x0 (g x1)))->(P (f x1)))
% Found ((fun (x2:(forall (x:fofType), (((eq Prop) ((x0 (g x1)) x)) ((f x1) x))))=> (((functional_extensionality_dep000 (f x1)) x2) P)) (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2)))) as proof of ((P (x0 (g x1)))->(P (f x1)))
% Found ((fun (x2:(forall (x:fofType), (((eq Prop) ((x0 (g x1)) x)) ((f x1) x))))=> ((((functional_extensionality_dep00 (x0 (g x1))) (f x1)) x2) P)) (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2)))) as proof of ((P (x0 (g x1)))->(P (f x1)))
% Found ((fun (x2:(forall (x:fofType), (((eq Prop) ((x0 (g x1)) x)) ((f x1) x))))=> (((((functional_extensionality_dep0 (fun (x4:fofType)=> Prop)) (x0 (g x1))) (f x1)) x2) P)) (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2)))) as proof of ((P (x0 (g x1)))->(P (f x1)))
% Found ((fun (x2:(forall (x:fofType), (((eq Prop) ((x0 (g x1)) x)) ((f x1) x))))=> ((((((functional_extensionality_dep fofType) (fun (x4:fofType)=> Prop)) (x0 (g x1))) (f x1)) x2) P)) (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2)))) as proof of ((P (x0 (g x1)))->(P (f x1)))
% Found (fun (P:((fofType->Prop)->Prop))=> ((fun (x2:(forall (x:fofType), (((eq Prop) ((x0 (g x1)) x)) ((f x1) x))))=> ((((((functional_extensionality_dep fofType) (fun (x4:fofType)=> Prop)) (x0 (g x1))) (f x1)) x2) P)) (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2))))) as proof of ((P (x0 (g x1)))->(P (f x1)))
% Found eq_ref00:=(eq_ref0 ((x0 (g x1)) x2)):(((eq Prop) ((x0 (g x1)) x2)) ((x0 (g x1)) x2))
% Found (eq_ref0 ((x0 (g x1)) x2)) as proof of (((eq Prop) ((x0 (g x1)) x2)) ((f x1) x2))
% Found ((eq_ref Prop) ((x0 (g x1)) x2)) as proof of (((eq Prop) ((x0 (g x1)) x2)) ((f x1) x2))
% Found ((eq_ref Prop) ((x0 (g x1)) x2)) as proof of (((eq Prop) ((x0 (g x1)) x2)) ((f x1) x2))
% Found (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2))) as proof of (((eq Prop) ((x0 (g x1)) x2)) ((f x1) x2))
% Found (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2))) as proof of (forall (x:fofType), (((eq Prop) ((x0 (g x1)) x)) ((f x1) x)))
% Found (functional_extensionality_dep0000 (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2)))) as proof of (((eq (fofType->Prop)) (x0 (g x1))) (f x1))
% Found ((functional_extensionality_dep000 (f x1)) (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2)))) as proof of (((eq (fofType->Prop)) (x0 (g x1))) (f x1))
% Found (((functional_extensionality_dep00 (x0 (g x1))) (f x1)) (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2)))) as proof of (((eq (fofType->Prop)) (x0 (g x1))) (f x1))
% Found ((((functional_extensionality_dep0 (fun (x4:fofType)=> Prop)) (x0 (g x1))) (f x1)) (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2)))) as proof of (((eq (fofType->Prop)) (x0 (g x1))) (f x1))
% Found (((((functional_extensionality_dep fofType) (fun (x4:fofType)=> Prop)) (x0 (g x1))) (f x1)) (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2)))) as proof of (((eq (fofType->Prop)) (x0 (g x1))) (f x1))
% Found eq_ref00:=(eq_ref0 ((x0 (g x1)) x2)):(((eq Prop) ((x0 (g x1)) x2)) ((x0 (g x1)) x2))
% Found (eq_ref0 ((x0 (g x1)) x2)) as proof of (((eq Prop) ((x0 (g x1)) x2)) ((f x1) x2))
% Found ((eq_ref Prop) ((x0 (g x1)) x2)) as proof of (((eq Prop) ((x0 (g x1)) x2)) ((f x1) x2))
% Found ((eq_ref Prop) ((x0 (g x1)) x2)) as proof of (((eq Prop) ((x0 (g x1)) x2)) ((f x1) x2))
% Found (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2))) as proof of (((eq Prop) ((x0 (g x1)) x2)) ((f x1) x2))
% Found (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2))) as proof of (forall (x:fofType), (((eq Prop) ((x0 (g x1)) x)) ((f x1) x)))
% Found (functional_extensionality0000 (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2)))) as proof of (((eq (fofType->Prop)) (x0 (g x1))) (f x1))
% Found ((functional_extensionality000 (f x1)) (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2)))) as proof of (((eq (fofType->Prop)) (x0 (g x1))) (f x1))
% Found (((functional_extensionality00 (x0 (g x1))) (f x1)) (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2)))) as proof of (((eq (fofType->Prop)) (x0 (g x1))) (f x1))
% Found ((((functional_extensionality0 Prop) (x0 (g x1))) (f x1)) (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2)))) as proof of (((eq (fofType->Prop)) (x0 (g x1))) (f x1))
% Found (((((functional_extensionality fofType) Prop) (x0 (g x1))) (f x1)) (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2)))) as proof of (((eq (fofType->Prop)) (x0 (g x1))) (f x1))
% Found eq_ref00:=(eq_ref0 ((x0 (g x1)) x2)):(((eq Prop) ((x0 (g x1)) x2)) ((x0 (g x1)) x2))
% Found (eq_ref0 ((x0 (g x1)) x2)) as proof of (((eq Prop) ((x0 (g x1)) x2)) ((f x1) x2))
% Found ((eq_ref Prop) ((x0 (g x1)) x2)) as proof of (((eq Prop) ((x0 (g x1)) x2)) ((f x1) x2))
% Found ((eq_ref Prop) ((x0 (g x1)) x2)) as proof of (((eq Prop) ((x0 (g x1)) x2)) ((f x1) x2))
% Found (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2))) as proof of (((eq Prop) ((x0 (g x1)) x2)) ((f x1) x2))
% Found (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2))) as proof of (forall (x:fofType), (((eq Prop) ((x0 (g x1)) x)) ((f x1) x)))
% Found (functional_extensionality_dep0000 (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2)))) as proof of (((eq (fofType->Prop)) (x0 (g x1))) (f x1))
% Found ((functional_extensionality_dep000 (f x1)) (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2)))) as proof of (((eq (fofType->Prop)) (x0 (g x1))) (f x1))
% Found (((functional_extensionality_dep00 (x0 (g x1))) (f x1)) (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2)))) as proof of (((eq (fofType->Prop)) (x0 (g x1))) (f x1))
% Found ((((functional_extensionality_dep0 (fun (x4:fofType)=> Prop)) (x0 (g x1))) (f x1)) (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2)))) as proof of (((eq (fofType->Prop)) (x0 (g x1))) (f x1))
% Found (((((functional_extensionality_dep fofType) (fun (x4:fofType)=> Prop)) (x0 (g x1))) (f x1)) (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2)))) as proof of (((eq (fofType->Prop)) (x0 (g x1))) (f x1))
% Found eq_ref00:=(eq_ref0 ((x0 (g x1)) x2)):(((eq Prop) ((x0 (g x1)) x2)) ((x0 (g x1)) x2))
% Found (eq_ref0 ((x0 (g x1)) x2)) as proof of (((eq Prop) ((x0 (g x1)) x2)) ((f x1) x2))
% Found ((eq_ref Prop) ((x0 (g x1)) x2)) as proof of (((eq Prop) ((x0 (g x1)) x2)) ((f x1) x2))
% Found ((eq_ref Prop) ((x0 (g x1)) x2)) as proof of (((eq Prop) ((x0 (g x1)) x2)) ((f x1) x2))
% Found (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2))) as proof of (((eq Prop) ((x0 (g x1)) x2)) ((f x1) x2))
% Found (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2))) as proof of (forall (x:fofType), (((eq Prop) ((x0 (g x1)) x)) ((f x1) x)))
% Found (functional_extensionality0000 (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2)))) as proof of (((eq (fofType->Prop)) (x0 (g x1))) (f x1))
% Found ((functional_extensionality000 (f x1)) (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2)))) as proof of (((eq (fofType->Prop)) (x0 (g x1))) (f x1))
% Found (((functional_extensionality00 (x0 (g x1))) (f x1)) (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2)))) as proof of (((eq (fofType->Prop)) (x0 (g x1))) (f x1))
% Found ((((functional_extensionality0 Prop) (x0 (g x1))) (f x1)) (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2)))) as proof of (((eq (fofType->Prop)) (x0 (g x1))) (f x1))
% Found (((((functional_extensionality fofType) Prop) (x0 (g x1))) (f x1)) (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2)))) as proof of (((eq (fofType->Prop)) (x0 (g x1))) (f x1))
% Found eq_ref000:=(eq_ref00 P):((P (x0 (g x1)))->(P (x0 (g x1))))
% Found (eq_ref00 P) as proof of (P0 (x0 (g x1)))
% Found ((eq_ref0 (x0 (g x1))) P) as proof of (P0 (x0 (g x1)))
% Found (((eq_ref (fofType->Prop)) (x0 (g x1))) P) as proof of (P0 (x0 (g x1)))
% Found (((eq_ref (fofType->Prop)) (x0 (g x1))) P) as proof of (P0 (x0 (g x1)))
% Found eq_ref00:=(eq_ref0 ((x0 (g x1)) x2)):(((eq Prop) ((x0 (g x1)) x2)) ((x0 (g x1)) x2))
% Found (eq_ref0 ((x0 (g x1)) x2)) as proof of (((eq Prop) ((x0 (g x1)) x2)) ((f x1) x2))
% Found ((eq_ref Prop) ((x0 (g x1)) x2)) as proof of (((eq Prop) ((x0 (g x1)) x2)) ((f x1) x2))
% Found ((eq_ref Prop) ((x0 (g x1)) x2)) as proof of (((eq Prop) ((x0 (g x1)) x2)) ((f x1) x2))
% Found (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2))) as proof of (((eq Prop) ((x0 (g x1)) x2)) ((f x1) x2))
% Found (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2))) as proof of (forall (x:fofType), (((eq Prop) ((x0 (g x1)) x)) ((f x1) x)))
% Found ((functional_extensionality00000 (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2)))) (((eq_ref (fofType->Prop)) (x0 (g x1))) P)) as proof of ((P (x0 (g x1)))->(P (f x1)))
% Found ((functional_extensionality00000 (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2)))) (((eq_ref (fofType->Prop)) (x0 (g x1))) P)) as proof of ((P (x0 (g x1)))->(P (f x1)))
% Found (((fun (x2:(forall (x:fofType), (((eq Prop) ((x0 (g x1)) x)) ((f x1) x))))=> ((functional_extensionality0000 x2) (fun (x4:(fofType->Prop))=> ((P (x0 (g x1)))->(P x4))))) (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2)))) (((eq_ref (fofType->Prop)) (x0 (g x1))) P)) as proof of ((P (x0 (g x1)))->(P (f x1)))
% Found (((fun (x2:(forall (x:fofType), (((eq Prop) ((x0 (g x1)) x)) ((f x1) x))))=> (((functional_extensionality000 (f x1)) x2) (fun (x4:(fofType->Prop))=> ((P (x0 (g x1)))->(P x4))))) (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2)))) (((eq_ref (fofType->Prop)) (x0 (g x1))) P)) as proof of ((P (x0 (g x1)))->(P (f x1)))
% Found (((fun (x2:(forall (x:fofType), (((eq Prop) ((x0 (g x1)) x)) ((f x1) x))))=> ((((functional_extensionality00 (x0 (g x1))) (f x1)) x2) (fun (x4:(fofType->Prop))=> ((P (x0 (g x1)))->(P x4))))) (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2)))) (((eq_ref (fofType->Prop)) (x0 (g x1))) P)) as proof of ((P (x0 (g x1)))->(P (f x1)))
% Found (((fun (x2:(forall (x:fofType), (((eq Prop) ((x0 (g x1)) x)) ((f x1) x))))=> (((((functional_extensionality0 Prop) (x0 (g x1))) (f x1)) x2) (fun (x4:(fofType->Prop))=> ((P (x0 (g x1)))->(P x4))))) (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2)))) (((eq_ref (fofType->Prop)) (x0 (g x1))) P)) as proof of ((P (x0 (g x1)))->(P (f x1)))
% Found (((fun (x2:(forall (x:fofType), (((eq Prop) ((x0 (g x1)) x)) ((f x1) x))))=> ((((((functional_extensionality fofType) Prop) (x0 (g x1))) (f x1)) x2) (fun (x4:(fofType->Prop))=> ((P (x0 (g x1)))->(P x4))))) (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2)))) (((eq_ref (fofType->Prop)) (x0 (g x1))) P)) as proof of ((P (x0 (g x1)))->(P (f x1)))
% Found (fun (P:((fofType->Prop)->Prop))=> (((fun (x2:(forall (x:fofType), (((eq Prop) ((x0 (g x1)) x)) ((f x1) x))))=> ((((((functional_extensionality fofType) Prop) (x0 (g x1))) (f x1)) x2) (fun (x4:(fofType->Prop))=> ((P (x0 (g x1)))->(P x4))))) (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2)))) (((eq_ref (fofType->Prop)) (x0 (g x1))) P))) as proof of ((P (x0 (g x1)))->(P (f x1)))
% Found eq_ref000:=(eq_ref00 P):((P (x0 (g x1)))->(P (x0 (g x1))))
% Found (eq_ref00 P) as proof of (P0 (x0 (g x1)))
% Found ((eq_ref0 (x0 (g x1))) P) as proof of (P0 (x0 (g x1)))
% Found (((eq_ref (fofType->Prop)) (x0 (g x1))) P) as proof of (P0 (x0 (g x1)))
% Found (((eq_ref (fofType->Prop)) (x0 (g x1))) P) as proof of (P0 (x0 (g x1)))
% Found eq_ref00:=(eq_ref0 ((x0 (g x1)) x2)):(((eq Prop) ((x0 (g x1)) x2)) ((x0 (g x1)) x2))
% Found (eq_ref0 ((x0 (g x1)) x2)) as proof of (((eq Prop) ((x0 (g x1)) x2)) ((f x1) x2))
% Found ((eq_ref Prop) ((x0 (g x1)) x2)) as proof of (((eq Prop) ((x0 (g x1)) x2)) ((f x1) x2))
% Found ((eq_ref Prop) ((x0 (g x1)) x2)) as proof of (((eq Prop) ((x0 (g x1)) x2)) ((f x1) x2))
% Found (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2))) as proof of (((eq Prop) ((x0 (g x1)) x2)) ((f x1) x2))
% Found (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2))) as proof of (forall (x:fofType), (((eq Prop) ((x0 (g x1)) x)) ((f x1) x)))
% Found ((functional_extensionality_dep00000 (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2)))) (((eq_ref (fofType->Prop)) (x0 (g x1))) P)) as proof of ((P (x0 (g x1)))->(P (f x1)))
% Found ((functional_extensionality_dep00000 (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2)))) (((eq_ref (fofType->Prop)) (x0 (g x1))) P)) as proof of ((P (x0 (g x1)))->(P (f x1)))
% Found (((fun (x2:(forall (x:fofType), (((eq Prop) ((x0 (g x1)) x)) ((f x1) x))))=> ((functional_extensionality_dep0000 x2) (fun (x4:(fofType->Prop))=> ((P (x0 (g x1)))->(P x4))))) (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2)))) (((eq_ref (fofType->Prop)) (x0 (g x1))) P)) as proof of ((P (x0 (g x1)))->(P (f x1)))
% Found (((fun (x2:(forall (x:fofType), (((eq Prop) ((x0 (g x1)) x)) ((f x1) x))))=> (((functional_extensionality_dep000 (f x1)) x2) (fun (x4:(fofType->Prop))=> ((P (x0 (g x1)))->(P x4))))) (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2)))) (((eq_ref (fofType->Prop)) (x0 (g x1))) P)) as proof of ((P (x0 (g x1)))->(P (f x1)))
% Found (((fun (x2:(forall (x:fofType), (((eq Prop) ((x0 (g x1)) x)) ((f x1) x))))=> ((((functional_extensionality_dep00 (x0 (g x1))) (f x1)) x2) (fun (x4:(fofType->Prop))=> ((P (x0 (g x1)))->(P x4))))) (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2)))) (((eq_ref (fofType->Prop)) (x0 (g x1))) P)) as proof of ((P (x0 (g x1)))->(P (f x1)))
% Found (((fun (x2:(forall (x:fofType), (((eq Prop) ((x0 (g x1)) x)) ((f x1) x))))=> (((((functional_extensionality_dep0 (fun (x4:fofType)=> Prop)) (x0 (g x1))) (f x1)) x2) (fun (x4:(fofType->Prop))=> ((P (x0 (g x1)))->(P x4))))) (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2)))) (((eq_ref (fofType->Prop)) (x0 (g x1))) P)) as proof of ((P (x0 (g x1)))->(P (f x1)))
% Found (((fun (x2:(forall (x:fofType), (((eq Prop) ((x0 (g x1)) x)) ((f x1) x))))=> ((((((functional_extensionality_dep fofType) (fun (x4:fofType)=> Prop)) (x0 (g x1))) (f x1)) x2) (fun (x4:(fofType->Prop))=> ((P (x0 (g x1)))->(P x4))))) (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2)))) (((eq_ref (fofType->Prop)) (x0 (g x1))) P)) as proof of ((P (x0 (g x1)))->(P (f x1)))
% Found (fun (P:((fofType->Prop)->Prop))=> (((fun (x2:(forall (x:fofType), (((eq Prop) ((x0 (g x1)) x)) ((f x1) x))))=> ((((((functional_extensionality_dep fofType) (fun (x4:fofType)=> Prop)) (x0 (g x1))) (f x1)) x2) (fun (x4:(fofType->Prop))=> ((P (x0 (g x1)))->(P x4))))) (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2)))) (((eq_ref (fofType->Prop)) (x0 (g x1))) P))) as proof of ((P (x0 (g x1)))->(P (f x1)))
% Found eq_ref000:=(eq_ref00 P):((P ((x0 (g x1)) y))->(P ((x0 (g x1)) y)))
% Found (eq_ref00 P) as proof of ((P ((x0 (g x1)) y))->(P ((b x1) y)))
% Found ((eq_ref0 ((x0 (g x1)) y)) P) as proof of ((P ((x0 (g x1)) y))->(P ((b x1) y)))
% Found (((eq_ref Prop) ((x0 (g x1)) y)) P) as proof of ((P ((x0 (g x1)) y))->(P ((b x1) y)))
% Found (((eq_ref Prop) ((x0 (g x1)) y)) P) as proof of ((P ((x0 (g x1)) y))->(P ((b x1) y)))
% Found (fun (P:(Prop->Prop))=> (((eq_ref Prop) ((x0 (g x1)) y)) P)) as proof of ((P ((x0 (g x1)) y))->(P ((b x1) y)))
% Found (fun (y:fofType) (P:(Prop->Prop))=> (((eq_ref Prop) ((x0 (g x1)) y)) P)) as proof of (((eq Prop) ((x0 (g x1)) y)) ((b x1) y))
% Found eq_ref00:=(eq_ref0 y):(((eq fofType) y) y)
% Found (eq_ref0 y) as proof of (((eq fofType) y) b)
% Found ((eq_ref fofType) y) as proof of (((eq fofType) y) b)
% Found ((eq_ref fofType) y) as proof of (((eq fofType) y) b)
% Found ((eq_ref fofType) y) as proof of (((eq fofType) y) b)
% Found (eq_substitution00000 ((eq_ref fofType) y)) as proof of (((eq Prop) ((x0 (g x1)) y)) ((f x1) y))
% Found ((eq_substitution0000 (x0 (g x1))) ((eq_ref fofType) y)) as proof of (((eq Prop) ((x0 (g x1)) y)) ((f x1) y))
% Found (((eq_substitution000 y) (x0 (g x1))) ((eq_ref fofType) y)) as proof of (((eq Prop) ((x0 (g x1)) y)) ((f x1) y))
% Found ((((eq_substitution00 y) y) (x0 (g x1))) ((eq_ref fofType) y)) as proof of (((eq Prop) ((x0 (g x1)) y)) ((f x1) y))
% Found (((((eq_substitution0 Prop) y) y) (x0 (g x1))) ((eq_ref fofType) y)) as proof of (((eq Prop) ((x0 (g x1)) y)) ((f x1) y))
% Found ((((((eq_substitution fofType) Prop) y) y) (x0 (g x1))) ((eq_ref fofType) y)) as proof of (((eq Prop) ((x0 (g x1)) y)) ((f x1) y))
% Found ((((((eq_substitution fofType) Prop) y) y) (x0 (g x1))) ((eq_ref fofType) y)) as proof of (((eq Prop) ((x0 (g x1)) y)) ((f x1) y))
% Found eq_ref000:=(eq_ref00 P):((P ((x0 (g x1)) y))->(P ((x0 (g x1)) y)))
% Found (eq_ref00 P) as proof of (P0 ((x0 (g x1)) y))
% Found ((eq_ref0 ((x0 (g x1)) y)) P) as proof of (P0 ((x0 (g x1)) y))
% Found (((eq_ref Prop) ((x0 (g x1)) y)) P) as proof of (P0 ((x0 (g x1)) y))
% Found (((eq_ref Prop) ((x0 (g x1)) y)) P) as proof of (P0 ((x0 (g x1)) y))
% Found eq_ref00:=(eq_ref0 y):(((eq fofType) y) y)
% Found (eq_ref0 y) as proof of (((eq fofType) y) b)
% Found ((eq_ref fofType) y) as proof of (((eq fofType) y) b)
% Found ((eq_ref fofType) y) as proof of (((eq fofType) y) b)
% Found ((eq_ref fofType) y) as proof of (((eq fofType) y) b)
% Found (eq_substitution00000 ((eq_ref fofType) y)) as proof of (((eq Prop) ((x0 (g x1)) y)) ((f x1) y))
% Found ((eq_substitution0000 (fun (x5:fofType)=> ((x0 (g x1)) y))) ((eq_ref fofType) y)) as proof of (((eq Prop) ((x0 (g x1)) y)) ((f x1) y))
% Found (((eq_substitution000 y) (fun (x5:fofType)=> ((x0 (g x1)) y))) ((eq_ref fofType) y)) as proof of (((eq Prop) ((x0 (g x1)) y)) ((f x1) y))
% Found ((((eq_substitution00 y) y) (fun (x5:fofType)=> ((x0 (g x1)) y))) ((eq_ref fofType) y)) as proof of (((eq Prop) ((x0 (g x1)) y)) ((f x1) y))
% Found (((((eq_substitution0 Prop) y) y) (fun (x5:fofType)=> ((x0 (g x1)) y))) ((eq_ref fofType) y)) as proof of (((eq Prop) ((x0 (g x1)) y)) ((f x1) y))
% Found ((((((eq_substitution fofType) Prop) y) y) (fun (x5:fofType)=> ((x0 (g x1)) y))) ((eq_ref fofType) y)) as proof of (((eq Prop) ((x0 (g x1)) y)) ((f x1) y))
% Found ((((((eq_substitution fofType) Prop) y) y) (fun (x5:fofType)=> ((x0 (g x1)) y))) ((eq_ref fofType) y)) as proof of (((eq Prop) ((x0 (g x1)) y)) ((f x1) y))
% Found eq_ref00:=(eq_ref0 ((x0 (g x1)) y)):(((eq Prop) ((x0 (g x1)) y)) ((x0 (g x1)) y))
% Found (eq_ref0 ((x0 (g x1)) y)) as proof of (((eq Prop) ((x0 (g x1)) y)) b)
% Found ((eq_ref Prop) ((x0 (g x1)) y)) as proof of (((eq Prop) ((x0 (g x1)) y)) b)
% Found ((eq_ref Prop) ((x0 (g x1)) y)) as proof of (((eq Prop) ((x0 (g x1)) y)) b)
% Found ((eq_ref Prop) ((x0 (g x1)) y)) as proof of (((eq Prop) ((x0 (g x1)) y)) b)
% Found eq_ref00:=(eq_ref0 b):(((eq Prop) b) b)
% Found (eq_ref0 b) as proof of (((eq Prop) b) ((f x1) y))
% Found ((eq_ref Prop) b) as proof of (((eq Prop) b) ((f x1) y))
% Found ((eq_ref Prop) b) as proof of (((eq Prop) b) ((f x1) y))
% Found ((eq_ref Prop) b) as proof of (((eq Prop) b) ((f x1) y))
% Found ((eq_trans0000 ((eq_ref Prop) ((x0 (g x1)) y))) ((eq_ref Prop) b)) as proof of (((eq Prop) ((x0 (g x1)) y)) ((f x1) y))
% Found (((eq_trans000 ((f x1) y)) ((eq_ref Prop) ((x0 (g x1)) y))) ((eq_ref Prop) b)) as proof of (((eq Prop) ((x0 (g x1)) y)) ((f x1) y))
% Found ((((eq_trans00 ((f x1) y)) ((f x1) y)) ((eq_ref Prop) ((x0 (g x1)) y))) ((eq_ref Prop) ((f x1) y))) as proof of (((eq Prop) ((x0 (g x1)) y)) ((f x1) y))
% Found (((((eq_trans0 ((x0 (g x1)) y)) ((f x1) y)) ((f x1) y)) ((eq_ref Prop) ((x0 (g x1)) y))) ((eq_ref Prop) ((f x1) y))) as proof of (((eq Prop) ((x0 (g x1)) y)) ((f x1) y))
% Found ((((((eq_trans Prop) ((x0 (g x1)) y)) ((f x1) y)) ((f x1) y)) ((eq_ref Prop) ((x0 (g x1)) y))) ((eq_ref Prop) ((f x1) y))) as proof of (((eq Prop) ((x0 (g x1)) y)) ((f x1) y))
% Found eq_ref00:=(eq_ref0 (x0 (g x1))):(((eq (fofType->Prop)) (x0 (g x1))) (x0 (g x1)))
% Found (eq_ref0 (x0 (g x1))) as proof of (forall (P:((fofType->Prop)->Prop)), ((P (x0 (g x1)))->(P (f x1))))
% Found ((eq_ref (fofType->Prop)) (x0 (g x1))) as proof of (forall (P:((fofType->Prop)->Prop)), ((P (x0 (g x1)))->(P (f x1))))
% Found ((eq_ref (fofType->Prop)) (x0 (g x1))) as proof of (forall (P:((fofType->Prop)->Prop)), ((P (x0 (g x1)))->(P (f x1))))
% Found ((eq_ref (fofType->Prop)) (x0 (g x1))) as proof of (forall (P:((fofType->Prop)->Prop)), ((P (x0 (g x1)))->(P (f x1))))
% Found eq_ref00:=(eq_ref0 (x0 (g x1))):(((eq (fofType->Prop)) (x0 (g x1))) (x0 (g x1)))
% Found (eq_ref0 (x0 (g x1))) as proof of (forall (P:((fofType->Prop)->Prop)), ((P (x0 (g x1)))->(P (f x1))))
% Found ((eq_ref (fofType->Prop)) (x0 (g x1))) as proof of (forall (P:((fofType->Prop)->Prop)), ((P (x0 (g x1)))->(P (f x1))))
% Found ((eq_ref (fofType->Prop)) (x0 (g x1))) as proof of (forall (P:((fofType->Prop)->Prop)), ((P (x0 (g x1)))->(P (f x1))))
% Found ((eq_ref (fofType->Prop)) (x0 (g x1))) as proof of (forall (P:((fofType->Prop)->Prop)), ((P (x0 (g x1)))->(P (f x1))))
% Found eq_ref00:=(eq_ref0 (x0 (g x1))):(((eq (fofType->Prop)) (x0 (g x1))) (x0 (g x1)))
% Found (eq_ref0 (x0 (g x1))) as proof of (((eq (fofType->Prop)) (x0 (g x1))) (f x1))
% Found ((eq_ref (fofType->Prop)) (x0 (g x1))) as proof of (((eq (fofType->Prop)) (x0 (g x1))) (f x1))
% Found ((eq_ref (fofType->Prop)) (x0 (g x1))) as proof of (((eq (fofType->Prop)) (x0 (g x1))) (f x1))
% Found eq_ref00:=(eq_ref0 (x0 (g x1))):(((eq (fofType->Prop)) (x0 (g x1))) (x0 (g x1)))
% Found (eq_ref0 (x0 (g x1))) as proof of (((eq (fofType->Prop)) (x0 (g x1))) (f x1))
% Found ((eq_ref (fofType->Prop)) (x0 (g x1))) as proof of (((eq (fofType->Prop)) (x0 (g x1))) (f x1))
% Found ((eq_ref (fofType->Prop)) (x0 (g x1))) as proof of (((eq (fofType->Prop)) (x0 (g x1))) (f x1))
% Found eq_ref000:=(eq_ref00 P):((P (x0 (g x1)))->(P (x0 (g x1))))
% Found (eq_ref00 P) as proof of ((P (x0 (g x1)))->(P (f x1)))
% Found ((eq_ref0 (x0 (g x1))) P) as proof of ((P (x0 (g x1)))->(P (f x1)))
% Found (((eq_ref (fofType->Prop)) (x0 (g x1))) P) as proof of ((P (x0 (g x1)))->(P (f x1)))
% Found (((eq_ref (fofType->Prop)) (x0 (g x1))) P) as proof of ((P (x0 (g x1)))->(P (f x1)))
% Found (fun (P:((fofType->Prop)->Prop))=> (((eq_ref (fofType->Prop)) (x0 (g x1))) P)) as proof of ((P (x0 (g x1)))->(P (f x1)))
% Found (fun (P:((fofType->Prop)->Prop))=> (((eq_ref (fofType->Prop)) (x0 (g x1))) P)) as proof of (forall (P:((fofType->Prop)->Prop)), ((P (x0 (g x1)))->(P (f x1))))
% Found eq_ref000:=(eq_ref00 P):((P (x0 (g x1)))->(P (x0 (g x1))))
% Found (eq_ref00 P) as proof of ((P (x0 (g x1)))->(P (f x1)))
% Found ((eq_ref0 (x0 (g x1))) P) as proof of ((P (x0 (g x1)))->(P (f x1)))
% Found (((eq_ref (fofType->Prop)) (x0 (g x1))) P) as proof of ((P (x0 (g x1)))->(P (f x1)))
% Found (((eq_ref (fofType->Prop)) (x0 (g x1))) P) as proof of ((P (x0 (g x1)))->(P (f x1)))
% Found (fun (P:((fofType->Prop)->Prop))=> (((eq_ref (fofType->Prop)) (x0 (g x1))) P)) as proof of ((P (x0 (g x1)))->(P (f x1)))
% Found (fun (P:((fofType->Prop)->Prop))=> (((eq_ref (fofType->Prop)) (x0 (g x1))) P)) as proof of (forall (P:((fofType->Prop)->Prop)), ((P (x0 (g x1)))->(P (f x1))))
% Found eq_ref000:=(eq_ref00 P):((P (x0 (g x1)))->(P (x0 (g x1))))
% Found (eq_ref00 P) as proof of ((P (x0 (g x1)))->(P (f x1)))
% Found ((eq_ref0 (x0 (g x1))) P) as proof of ((P (x0 (g x1)))->(P (f x1)))
% Found (((eq_ref (fofType->Prop)) (x0 (g x1))) P) as proof of ((P (x0 (g x1)))->(P (f x1)))
% Found (((eq_ref (fofType->Prop)) (x0 (g x1))) P) as proof of ((P (x0 (g x1)))->(P (f x1)))
% Found (fun (P:((fofType->Prop)->Prop))=> (((eq_ref (fofType->Prop)) (x0 (g x1))) P)) as proof of ((P (x0 (g x1)))->(P (f x1)))
% Found eq_ref000:=(eq_ref00 P):((P (x0 (g x1)))->(P (x0 (g x1))))
% Found (eq_ref00 P) as proof of ((P (x0 (g x1)))->(P (f x1)))
% Found ((eq_ref0 (x0 (g x1))) P) as proof of ((P (x0 (g x1)))->(P (f x1)))
% Found (((eq_ref (fofType->Prop)) (x0 (g x1))) P) as proof of ((P (x0 (g x1)))->(P (f x1)))
% Found (((eq_ref (fofType->Prop)) (x0 (g x1))) P) as proof of ((P (x0 (g x1)))->(P (f x1)))
% Found (fun (P:((fofType->Prop)->Prop))=> (((eq_ref (fofType->Prop)) (x0 (g x1))) P)) as proof of ((P (x0 (g x1)))->(P (f x1)))
% Found eq_ref00:=(eq_ref0 ((x0 (g x1)) y)):(((eq Prop) ((x0 (g x1)) y)) ((x0 (g x1)) y))
% Found (eq_ref0 ((x0 (g x1)) y)) as proof of (forall (P:(Prop->Prop)), ((P ((x0 (g x1)) y))->(P ((f x1) y))))
% Found ((eq_ref Prop) ((x0 (g x1)) y)) as proof of (forall (P:(Prop->Prop)), ((P ((x0 (g x1)) y))->(P ((f x1) y))))
% Found ((eq_ref Prop) ((x0 (g x1)) y)) as proof of (forall (P:(Prop->Prop)), ((P ((x0 (g x1)) y))->(P ((f x1) y))))
% Found ((eq_ref Prop) ((x0 (g x1)) y)) as proof of (forall (P:(Prop->Prop)), ((P ((x0 (g x1)) y))->(P ((f x1) y))))
% Found (fun (y:fofType)=> ((eq_ref Prop) ((x0 (g x1)) y))) as proof of (((eq Prop) ((x0 (g x1)) y)) ((f x1) y))
% Found eq_ref00:=(eq_ref0 ((x0 (g x1)) y)):(((eq Prop) ((x0 (g x1)) y)) ((x0 (g x1)) y))
% Found (eq_ref0 ((x0 (g x1)) y)) as proof of (((eq Prop) ((x0 (g x1)) y)) ((f x1) y))
% Found ((eq_ref Prop) ((x0 (g x1)) y)) as proof of (((eq Prop) ((x0 (g x1)) y)) ((f x1) y))
% Found ((eq_ref Prop) ((x0 (g x1)) y)) as proof of (((eq Prop) ((x0 (g x1)) y)) ((f x1) y))
% Found (fun (y:fofType)=> ((eq_ref Prop) ((x0 (g x1)) y))) as proof of (((eq Prop) ((x0 (g x1)) y)) ((f x1) y))
% Found eq_ref00:=(eq_ref0 ((x0 (g x1)) x2)):(((eq Prop) ((x0 (g x1)) x2)) ((x0 (g x1)) x2))
% Found (eq_ref0 ((x0 (g x1)) x2)) as proof of (((eq Prop) ((x0 (g x1)) x2)) ((b x1) x2))
% Found ((eq_ref Prop) ((x0 (g x1)) x2)) as proof of (((eq Prop) ((x0 (g x1)) x2)) ((b x1) x2))
% Found ((eq_ref Prop) ((x0 (g x1)) x2)) as proof of (((eq Prop) ((x0 (g x1)) x2)) ((b x1) x2))
% Found (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2))) as proof of (((eq Prop) ((x0 (g x1)) x2)) ((b x1) x2))
% Found (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2))) as proof of (forall (x:fofType), (((eq Prop) ((x0 (g x1)) x)) ((b x1) x)))
% Found (functional_extensionality_dep0100 (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2)))) as proof of (((eq (fofType->Prop)) (x0 (g x1))) (b x1))
% Found ((functional_extensionality_dep010 (b x1)) (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2)))) as proof of (((eq (fofType->Prop)) (x0 (g x1))) (b x1))
% Found (((functional_extensionality_dep01 (x0 (g x1))) (b x1)) (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2)))) as proof of (((eq (fofType->Prop)) (x0 (g x1))) (b x1))
% Found ((((functional_extensionality_dep0 (fun (x4:fofType)=> Prop)) (x0 (g x1))) (b x1)) (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2)))) as proof of (((eq (fofType->Prop)) (x0 (g x1))) (b x1))
% Found eq_ref00:=(eq_ref0 ((x0 (g x1)) x2)):(((eq Prop) ((x0 (g x1)) x2)) ((x0 (g x1)) x2))
% Found (eq_ref0 ((x0 (g x1)) x2)) as proof of (((eq Prop) ((x0 (g x1)) x2)) ((b x1) x2))
% Found ((eq_ref Prop) ((x0 (g x1)) x2)) as proof of (((eq Prop) ((x0 (g x1)) x2)) ((b x1) x2))
% Found ((eq_ref Prop) ((x0 (g x1)) x2)) as proof of (((eq Prop) ((x0 (g x1)) x2)) ((b x1) x2))
% Found (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2))) as proof of (((eq Prop) ((x0 (g x1)) x2)) ((b x1) x2))
% Found (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2))) as proof of (forall (x:fofType), (((eq Prop) ((x0 (g x1)) x)) ((b x1) x)))
% Found (functional_extensionality0100 (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2)))) as proof of (((eq (fofType->Prop)) (x0 (g x1))) (b x1))
% Found ((functional_extensionality010 (b x1)) (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2)))) as proof of (((eq (fofType->Prop)) (x0 (g x1))) (b x1))
% Found (((functional_extensionality01 (x0 (g x1))) (b x1)) (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2)))) as proof of (((eq (fofType->Prop)) (x0 (g x1))) (b x1))
% Found ((((functional_extensionality0 Prop) (x0 (g x1))) (b x1)) (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2)))) as proof of (((eq (fofType->Prop)) (x0 (g x1))) (b x1))
% Found eq_ref000:=(eq_ref00 P):((P ((x0 (g x1)) y))->(P ((x0 (g x1)) y)))
% Found (eq_ref00 P) as proof of ((P ((x0 (g x1)) y))->(P ((f x1) y)))
% Found ((eq_ref0 ((x0 (g x1)) y)) P) as proof of ((P ((x0 (g x1)) y))->(P ((f x1) y)))
% Found (((eq_ref Prop) ((x0 (g x1)) y)) P) as proof of ((P ((x0 (g x1)) y))->(P ((f x1) y)))
% Found (((eq_ref Prop) ((x0 (g x1)) y)) P) as proof of ((P ((x0 (g x1)) y))->(P ((f x1) y)))
% Found (fun (P:(Prop->Prop))=> (((eq_ref Prop) ((x0 (g x1)) y)) P)) as proof of ((P ((x0 (g x1)) y))->(P ((f x1) y)))
% Found (fun (P:(Prop->Prop))=> (((eq_ref Prop) ((x0 (g x1)) y)) P)) as proof of (forall (P:(Prop->Prop)), ((P ((x0 (g x1)) y))->(P ((f x1) y))))
% Found (fun (y:fofType) (P:(Prop->Prop))=> (((eq_ref Prop) ((x0 (g x1)) y)) P)) as proof of (((eq Prop) ((x0 (g x1)) y)) ((f x1) y))
% Found eq_ref000:=(eq_ref00 P):((P ((x0 (g x1)) y))->(P ((x0 (g x1)) y)))
% Found (eq_ref00 P) as proof of ((P ((x0 (g x1)) y))->(P ((f x1) y)))
% Found ((eq_ref0 ((x0 (g x1)) y)) P) as proof of ((P ((x0 (g x1)) y))->(P ((f x1) y)))
% Found (((eq_ref Prop) ((x0 (g x1)) y)) P) as proof of ((P ((x0 (g x1)) y))->(P ((f x1) y)))
% Found (((eq_ref Prop) ((x0 (g x1)) y)) P) as proof of ((P ((x0 (g x1)) y))->(P ((f x1) y)))
% Found (fun (P:(Prop->Prop))=> (((eq_ref Prop) ((x0 (g x1)) y)) P)) as proof of ((P ((x0 (g x1)) y))->(P ((f x1) y)))
% Found (fun (y:fofType) (P:(Prop->Prop))=> (((eq_ref Prop) ((x0 (g x1)) y)) P)) as proof of (((eq Prop) ((x0 (g x1)) y)) ((f x1) y))
% Found eq_ref00:=(eq_ref0 (x0 (g x1))):(((eq (fofType->Prop)) (x0 (g x1))) (x0 (g x1)))
% Found (eq_ref0 (x0 (g x1))) as proof of (((eq (fofType->Prop)) (x0 (g x1))) (f x1))
% Found ((eq_ref (fofType->Prop)) (x0 (g x1))) as proof of (((eq (fofType->Prop)) (x0 (g x1))) (f x1))
% Found ((eq_ref (fofType->Prop)) (x0 (g x1))) as proof of (((eq (fofType->Prop)) (x0 (g x1))) (f x1))
% Found ((eq_ref (fofType->Prop)) (x0 (g x1))) as proof of (((eq (fofType->Prop)) (x0 (g x1))) (f x1))
% Found (eq_sym1000 ((eq_ref (fofType->Prop)) (x0 (g x1)))) as proof of ((P (f x1))->(P (x0 (g x1))))
% Found (eq_sym1000 ((eq_ref (fofType->Prop)) (x0 (g x1)))) as proof of ((P (f x1))->(P (x0 (g x1))))
% Found ((fun (x2:(((eq (fofType->Prop)) (x0 (g x1))) (f x1)))=> ((eq_sym100 x2) P)) ((eq_ref (fofType->Prop)) (x0 (g x1)))) as proof of ((P (f x1))->(P (x0 (g x1))))
% Found ((fun (x2:(((eq (fofType->Prop)) (x0 (g x1))) (f x1)))=> (((eq_sym10 (f x1)) x2) P)) ((eq_ref (fofType->Prop)) (x0 (g x1)))) as proof of ((P (f x1))->(P (x0 (g x1))))
% Found ((fun (x2:(((eq (fofType->Prop)) (x0 (g x1))) (f x1)))=> ((((eq_sym1 (x0 (g x1))) (f x1)) x2) P)) ((eq_ref (fofType->Prop)) (x0 (g x1)))) as proof of ((P (f x1))->(P (x0 (g x1))))
% Found ((fun (x2:(((eq (fofType->Prop)) (x0 (g x1))) (f x1)))=> (((((eq_sym (fofType->Prop)) (x0 (g x1))) (f x1)) x2) P)) ((eq_ref (fofType->Prop)) (x0 (g x1)))) as proof of ((P (f x1))->(P (x0 (g x1))))
% Found (fun (P:((fofType->Prop)->Prop))=> ((fun (x2:(((eq (fofType->Prop)) (x0 (g x1))) (f x1)))=> (((((eq_sym (fofType->Prop)) (x0 (g x1))) (f x1)) x2) P)) ((eq_ref (fofType->Prop)) (x0 (g x1))))) as proof of ((P (f x1))->(P (x0 (g x1))))
% Found eq_ref00:=(eq_ref0 (x0 (g x1))):(((eq (fofType->Prop)) (x0 (g x1))) (x0 (g x1)))
% Found (eq_ref0 (x0 (g x1))) as proof of (((eq (fofType->Prop)) (x0 (g x1))) (f x1))
% Found ((eq_ref (fofType->Prop)) (x0 (g x1))) as proof of (((eq (fofType->Prop)) (x0 (g x1))) (f x1))
% Found ((eq_ref (fofType->Prop)) (x0 (g x1))) as proof of (((eq (fofType->Prop)) (x0 (g x1))) (f x1))
% Found ((eq_ref (fofType->Prop)) (x0 (g x1))) as proof of (((eq (fofType->Prop)) (x0 (g x1))) (f x1))
% Found (eq_sym1000 ((eq_ref (fofType->Prop)) (x0 (g x1)))) as proof of ((P (f x1))->(P (x0 (g x1))))
% Found (eq_sym1000 ((eq_ref (fofType->Prop)) (x0 (g x1)))) as proof of ((P (f x1))->(P (x0 (g x1))))
% Found ((fun (x2:(((eq (fofType->Prop)) (x0 (g x1))) (f x1)))=> ((eq_sym100 x2) P)) ((eq_ref (fofType->Prop)) (x0 (g x1)))) as proof of ((P (f x1))->(P (x0 (g x1))))
% Found ((fun (x2:(((eq (fofType->Prop)) (x0 (g x1))) (f x1)))=> (((eq_sym10 (f x1)) x2) P)) ((eq_ref (fofType->Prop)) (x0 (g x1)))) as proof of ((P (f x1))->(P (x0 (g x1))))
% Found ((fun (x2:(((eq (fofType->Prop)) (x0 (g x1))) (f x1)))=> ((((eq_sym1 (x0 (g x1))) (f x1)) x2) P)) ((eq_ref (fofType->Prop)) (x0 (g x1)))) as proof of ((P (f x1))->(P (x0 (g x1))))
% Found ((fun (x2:(((eq (fofType->Prop)) (x0 (g x1))) (f x1)))=> (((((eq_sym (fofType->Prop)) (x0 (g x1))) (f x1)) x2) P)) ((eq_ref (fofType->Prop)) (x0 (g x1)))) as proof of ((P (f x1))->(P (x0 (g x1))))
% Found (fun (P:((fofType->Prop)->Prop))=> ((fun (x2:(((eq (fofType->Prop)) (x0 (g x1))) (f x1)))=> (((((eq_sym (fofType->Prop)) (x0 (g x1))) (f x1)) x2) P)) ((eq_ref (fofType->Prop)) (x0 (g x1))))) as proof of ((P (f x1))->(P (x0 (g x1))))
% Found eq_ref00:=(eq_ref0 (x0 (g x1))):(((eq (fofType->Prop)) (x0 (g x1))) (x0 (g x1)))
% Found (eq_ref0 (x0 (g x1))) as proof of (((eq (fofType->Prop)) (x0 (g x1))) (f x1))
% Found ((eq_ref (fofType->Prop)) (x0 (g x1))) as proof of (((eq (fofType->Prop)) (x0 (g x1))) (f x1))
% Found ((eq_ref (fofType->Prop)) (x0 (g x1))) as proof of (((eq (fofType->Prop)) (x0 (g x1))) (f x1))
% Found ((eq_ref (fofType->Prop)) (x0 (g x1))) as proof of (((eq (fofType->Prop)) (x0 (g x1))) (f x1))
% Found (eq_sym100 ((eq_ref (fofType->Prop)) (x0 (g x1)))) as proof of (((eq (fofType->Prop)) (f x1)) (x0 (g x1)))
% Found ((eq_sym10 (f x1)) ((eq_ref (fofType->Prop)) (x0 (g x1)))) as proof of (((eq (fofType->Prop)) (f x1)) (x0 (g x1)))
% Found (((eq_sym1 (x0 (g x1))) (f x1)) ((eq_ref (fofType->Prop)) (x0 (g x1)))) as proof of (((eq (fofType->Prop)) (f x1)) (x0 (g x1)))
% Found ((((eq_sym (fofType->Prop)) (x0 (g x1))) (f x1)) ((eq_ref (fofType->Prop)) (x0 (g x1)))) as proof of (((eq (fofType->Prop)) (f x1)) (x0 (g x1)))
% Found eq_ref00:=(eq_ref0 (x0 (g x1))):(((eq (fofType->Prop)) (x0 (g x1))) (x0 (g x1)))
% Found (eq_ref0 (x0 (g x1))) as proof of (((eq (fofType->Prop)) (x0 (g x1))) (f x1))
% Found ((eq_ref (fofType->Prop)) (x0 (g x1))) as proof of (((eq (fofType->Prop)) (x0 (g x1))) (f x1))
% Found ((eq_ref (fofType->Prop)) (x0 (g x1))) as proof of (((eq (fofType->Prop)) (x0 (g x1))) (f x1))
% Found ((eq_ref (fofType->Prop)) (x0 (g x1))) as proof of (((eq (fofType->Prop)) (x0 (g x1))) (f x1))
% Found (eq_sym100 ((eq_ref (fofType->Prop)) (x0 (g x1)))) as proof of (((eq (fofType->Prop)) (f x1)) (x0 (g x1)))
% Found ((eq_sym10 (f x1)) ((eq_ref (fofType->Prop)) (x0 (g x1)))) as proof of (((eq (fofType->Prop)) (f x1)) (x0 (g x1)))
% Found (((eq_sym1 (x0 (g x1))) (f x1)) ((eq_ref (fofType->Prop)) (x0 (g x1)))) as proof of (((eq (fofType->Prop)) (f x1)) (x0 (g x1)))
% Found ((((eq_sym (fofType->Prop)) (x0 (g x1))) (f x1)) ((eq_ref (fofType->Prop)) (x0 (g x1)))) as proof of (((eq (fofType->Prop)) (f x1)) (x0 (g x1)))
% Found eq_ref00:=(eq_ref0 (x0 (g x1))):(((eq (fofType->Prop)) (x0 (g x1))) (x0 (g x1)))
% Found (eq_ref0 (x0 (g x1))) as proof of (((eq (fofType->Prop)) (x0 (g x1))) (f x1))
% Found ((eq_ref (fofType->Prop)) (x0 (g x1))) as proof of (((eq (fofType->Prop)) (x0 (g x1))) (f x1))
% Found ((eq_ref (fofType->Prop)) (x0 (g x1))) as proof of (((eq (fofType->Prop)) (x0 (g x1))) (f x1))
% Found ((eq_ref (fofType->Prop)) (x0 (g x1))) as proof of (((eq (fofType->Prop)) (x0 (g x1))) (f x1))
% Found (eq_sym100 ((eq_ref (fofType->Prop)) (x0 (g x1)))) as proof of (((eq (fofType->Prop)) (f x1)) (x0 (g x1)))
% Found ((eq_sym10 (f x1)) ((eq_ref (fofType->Prop)) (x0 (g x1)))) as proof of (((eq (fofType->Prop)) (f x1)) (x0 (g x1)))
% Found (((eq_sym1 (x0 (g x1))) (f x1)) ((eq_ref (fofType->Prop)) (x0 (g x1)))) as proof of (((eq (fofType->Prop)) (f x1)) (x0 (g x1)))
% Found ((((eq_sym (fofType->Prop)) (x0 (g x1))) (f x1)) ((eq_ref (fofType->Prop)) (x0 (g x1)))) as proof of (((eq (fofType->Prop)) (f x1)) (x0 (g x1)))
% Found eq_ref00:=(eq_ref0 (x0 (g x1))):(((eq (fofType->Prop)) (x0 (g x1))) (x0 (g x1)))
% Found (eq_ref0 (x0 (g x1))) as proof of (((eq (fofType->Prop)) (x0 (g x1))) (f x1))
% Found ((eq_ref (fofType->Prop)) (x0 (g x1))) as proof of (((eq (fofType->Prop)) (x0 (g x1))) (f x1))
% Found ((eq_ref (fofType->Prop)) (x0 (g x1))) as proof of (((eq (fofType->Prop)) (x0 (g x1))) (f x1))
% Found ((eq_ref (fofType->Prop)) (x0 (g x1))) as proof of (((eq (fofType->Prop)) (x0 (g x1))) (f x1))
% Found (eq_sym100 ((eq_ref (fofType->Prop)) (x0 (g x1)))) as proof of (((eq (fofType->Prop)) (f x1)) (x0 (g x1)))
% Found ((eq_sym10 (f x1)) ((eq_ref (fofType->Prop)) (x0 (g x1)))) as proof of (((eq (fofType->Prop)) (f x1)) (x0 (g x1)))
% Found (((eq_sym1 (x0 (g x1))) (f x1)) ((eq_ref (fofType->Prop)) (x0 (g x1)))) as proof of (((eq (fofType->Prop)) (f x1)) (x0 (g x1)))
% Found ((((eq_sym (fofType->Prop)) (x0 (g x1))) (f x1)) ((eq_ref (fofType->Prop)) (x0 (g x1)))) as proof of (((eq (fofType->Prop)) (f x1)) (x0 (g x1)))
% Found eq_ref00:=(eq_ref0 (x0 (g x1))):(((eq (fofType->Prop)) (x0 (g x1))) (x0 (g x1)))
% Found (eq_ref0 (x0 (g x1))) as proof of (((eq (fofType->Prop)) (x0 (g x1))) (f x1))
% Found ((eq_ref (fofType->Prop)) (x0 (g x1))) as proof of (((eq (fofType->Prop)) (x0 (g x1))) (f x1))
% Found ((eq_ref (fofType->Prop)) (x0 (g x1))) as proof of (((eq (fofType->Prop)) (x0 (g x1))) (f x1))
% Found ((eq_ref (fofType->Prop)) (x0 (g x1))) as proof of (((eq (fofType->Prop)) (x0 (g x1))) (f x1))
% Found (eq_sym100 ((eq_ref (fofType->Prop)) (x0 (g x1)))) as proof of (((eq (fofType->Prop)) (f x1)) (x0 (g x1)))
% Found ((eq_sym10 (f x1)) ((eq_ref (fofType->Prop)) (x0 (g x1)))) as proof of (((eq (fofType->Prop)) (f x1)) (x0 (g x1)))
% Found (((eq_sym1 (x0 (g x1))) (f x1)) ((eq_ref (fofType->Prop)) (x0 (g x1)))) as proof of (((eq (fofType->Prop)) (f x1)) (x0 (g x1)))
% Found ((((eq_sym (fofType->Prop)) (x0 (g x1))) (f x1)) ((eq_ref (fofType->Prop)) (x0 (g x1)))) as proof of (((eq (fofType->Prop)) (f x1)) (x0 (g x1)))
% Found eq_ref00:=(eq_ref0 (x0 (g x1))):(((eq (fofType->Prop)) (x0 (g x1))) (x0 (g x1)))
% Found (eq_ref0 (x0 (g x1))) as proof of (((eq (fofType->Prop)) (x0 (g x1))) (f x1))
% Found ((eq_ref (fofType->Prop)) (x0 (g x1))) as proof of (((eq (fofType->Prop)) (x0 (g x1))) (f x1))
% Found ((eq_ref (fofType->Prop)) (x0 (g x1))) as proof of (((eq (fofType->Prop)) (x0 (g x1))) (f x1))
% Found ((eq_ref (fofType->Prop)) (x0 (g x1))) as proof of (((eq (fofType->Prop)) (x0 (g x1))) (f x1))
% Found (eq_sym100 ((eq_ref (fofType->Prop)) (x0 (g x1)))) as proof of (((eq (fofType->Prop)) (f x1)) (x0 (g x1)))
% Found ((eq_sym10 (f x1)) ((eq_ref (fofType->Prop)) (x0 (g x1)))) as proof of (((eq (fofType->Prop)) (f x1)) (x0 (g x1)))
% Found (((eq_sym1 (x0 (g x1))) (f x1)) ((eq_ref (fofType->Prop)) (x0 (g x1)))) as proof of (((eq (fofType->Prop)) (f x1)) (x0 (g x1)))
% Found ((((eq_sym (fofType->Prop)) (x0 (g x1))) (f x1)) ((eq_ref (fofType->Prop)) (x0 (g x1)))) as proof of (((eq (fofType->Prop)) (f x1)) (x0 (g x1)))
% Found eq_ref00:=(eq_ref0 (x0 (g x1))):(((eq (fofType->Prop)) (x0 (g x1))) (x0 (g x1)))
% Found (eq_ref0 (x0 (g x1))) as proof of (((eq (fofType->Prop)) (x0 (g x1))) (f x1))
% Found ((eq_ref (fofType->Prop)) (x0 (g x1))) as proof of (((eq (fofType->Prop)) (x0 (g x1))) (f x1))
% Found ((eq_ref (fofType->Prop)) (x0 (g x1))) as proof of (((eq (fofType->Prop)) (x0 (g x1))) (f x1))
% Found ((eq_ref (fofType->Prop)) (x0 (g x1))) as proof of (((eq (fofType->Prop)) (x0 (g x1))) (f x1))
% Found (eq_sym100 ((eq_ref (fofType->Prop)) (x0 (g x1)))) as proof of (((eq (fofType->Prop)) (f x1)) (x0 (g x1)))
% Found ((eq_sym10 (f x1)) ((eq_ref (fofType->Prop)) (x0 (g x1)))) as proof of (((eq (fofType->Prop)) (f x1)) (x0 (g x1)))
% Found (((eq_sym1 (x0 (g x1))) (f x1)) ((eq_ref (fofType->Prop)) (x0 (g x1)))) as proof of (((eq (fofType->Prop)) (f x1)) (x0 (g x1)))
% Found ((((eq_sym (fofType->Prop)) (x0 (g x1))) (f x1)) ((eq_ref (fofType->Prop)) (x0 (g x1)))) as proof of (((eq (fofType->Prop)) (f x1)) (x0 (g x1)))
% Found eq_ref00:=(eq_ref0 (x0 (g x1))):(((eq (fofType->Prop)) (x0 (g x1))) (x0 (g x1)))
% Found (eq_ref0 (x0 (g x1))) as proof of (((eq (fofType->Prop)) (x0 (g x1))) (f x1))
% Found ((eq_ref (fofType->Prop)) (x0 (g x1))) as proof of (((eq (fofType->Prop)) (x0 (g x1))) (f x1))
% Found ((eq_ref (fofType->Prop)) (x0 (g x1))) as proof of (((eq (fofType->Prop)) (x0 (g x1))) (f x1))
% Found ((eq_ref (fofType->Prop)) (x0 (g x1))) as proof of (((eq (fofType->Prop)) (x0 (g x1))) (f x1))
% Found (eq_sym100 ((eq_ref (fofType->Prop)) (x0 (g x1)))) as proof of (((eq (fofType->Prop)) (f x1)) (x0 (g x1)))
% Found ((eq_sym10 (f x1)) ((eq_ref (fofType->Prop)) (x0 (g x1)))) as proof of (((eq (fofType->Prop)) (f x1)) (x0 (g x1)))
% Found (((eq_sym1 (x0 (g x1))) (f x1)) ((eq_ref (fofType->Prop)) (x0 (g x1)))) as proof of (((eq (fofType->Prop)) (f x1)) (x0 (g x1)))
% Found ((((eq_sym (fofType->Prop)) (x0 (g x1))) (f x1)) ((eq_ref (fofType->Prop)) (x0 (g x1)))) as proof of (((eq (fofType->Prop)) (f x1)) (x0 (g x1)))
% Found eq_ref000:=(eq_ref00 P):((P (f x1))->(P (f x1)))
% Found (eq_ref00 P) as proof of (P0 (f x1))
% Found ((eq_ref0 (f x1)) P) as proof of (P0 (f x1))
% Found (((eq_ref (fofType->Prop)) (f x1)) P) as proof of (P0 (f x1))
% Found (((eq_ref (fofType->Prop)) (f x1)) P) as proof of (P0 (f x1))
% Found eq_ref00:=(eq_ref0 (x0 (g x1))):(((eq (fofType->Prop)) (x0 (g x1))) (x0 (g x1)))
% Found (eq_ref0 (x0 (g x1))) as proof of (((eq (fofType->Prop)) (x0 (g x1))) (f x1))
% Found ((eq_ref (fofType->Prop)) (x0 (g x1))) as proof of (((eq (fofType->Prop)) (x0 (g x1))) (f x1))
% Found ((eq_ref (fofType->Prop)) (x0 (g x1))) as proof of (((eq (fofType->Prop)) (x0 (g x1))) (f x1))
% Found ((eq_ref (fofType->Prop)) (x0 (g x1))) as proof of (((eq (fofType->Prop)) (x0 (g x1))) (f x1))
% Found ((eq_sym1000 ((eq_ref (fofType->Prop)) (x0 (g x1)))) (((eq_ref (fofType->Prop)) (f x1)) P)) as proof of ((P (f x1))->(P (x0 (g x1))))
% Found ((eq_sym1000 ((eq_ref (fofType->Prop)) (x0 (g x1)))) (((eq_ref (fofType->Prop)) (f x1)) P)) as proof of ((P (f x1))->(P (x0 (g x1))))
% Found (((fun (x2:(((eq (fofType->Prop)) (x0 (g x1))) (f x1)))=> ((eq_sym100 x2) (fun (x4:(fofType->Prop))=> ((P (f x1))->(P x4))))) ((eq_ref (fofType->Prop)) (x0 (g x1)))) (((eq_ref (fofType->Prop)) (f x1)) P)) as proof of ((P (f x1))->(P (x0 (g x1))))
% Found (((fun (x2:(((eq (fofType->Prop)) (x0 (g x1))) (f x1)))=> (((eq_sym10 (f x1)) x2) (fun (x4:(fofType->Prop))=> ((P (f x1))->(P x4))))) ((eq_ref (fofType->Prop)) (x0 (g x1)))) (((eq_ref (fofType->Prop)) (f x1)) P)) as proof of ((P (f x1))->(P (x0 (g x1))))
% Found (((fun (x2:(((eq (fofType->Prop)) (x0 (g x1))) (f x1)))=> ((((eq_sym1 (x0 (g x1))) (f x1)) x2) (fun (x4:(fofType->Prop))=> ((P (f x1))->(P x4))))) ((eq_ref (fofType->Prop)) (x0 (g x1)))) (((eq_ref (fofType->Prop)) (f x1)) P)) as proof of ((P (f x1))->(P (x0 (g x1))))
% Found (((fun (x2:(((eq (fofType->Prop)) (x0 (g x1))) (f x1)))=> (((((eq_sym (fofType->Prop)) (x0 (g x1))) (f x1)) x2) (fun (x4:(fofType->Prop))=> ((P (f x1))->(P x4))))) ((eq_ref (fofType->Prop)) (x0 (g x1)))) (((eq_ref (fofType->Prop)) (f x1)) P)) as proof of ((P (f x1))->(P (x0 (g x1))))
% Found (fun (P:((fofType->Prop)->Prop))=> (((fun (x2:(((eq (fofType->Prop)) (x0 (g x1))) (f x1)))=> (((((eq_sym (fofType->Prop)) (x0 (g x1))) (f x1)) x2) (fun (x4:(fofType->Prop))=> ((P (f x1))->(P x4))))) ((eq_ref (fofType->Prop)) (x0 (g x1)))) (((eq_ref (fofType->Prop)) (f x1)) P))) as proof of ((P (f x1))->(P (x0 (g x1))))
% Found eq_ref000:=(eq_ref00 P):((P (f x1))->(P (f x1)))
% Found (eq_ref00 P) as proof of (P0 (f x1))
% Found ((eq_ref0 (f x1)) P) as proof of (P0 (f x1))
% Found (((eq_ref (fofType->Prop)) (f x1)) P) as proof of (P0 (f x1))
% Found (((eq_ref (fofType->Prop)) (f x1)) P) as proof of (P0 (f x1))
% Found eq_ref000:=(eq_ref00 P):((P (f x1))->(P (f x1)))
% Found (eq_ref00 P) as proof of (P0 (f x1))
% Found ((eq_ref0 (f x1)) P) as proof of (P0 (f x1))
% Found (((eq_ref (fofType->Prop)) (f x1)) P) as proof of (P0 (f x1))
% Found (((eq_ref (fofType->Prop)) (f x1)) P) as proof of (P0 (f x1))
% Found eq_ref00:=(eq_ref0 (x0 (g x1))):(((eq (fofType->Prop)) (x0 (g x1))) (x0 (g x1)))
% Found (eq_ref0 (x0 (g x1))) as proof of (((eq (fofType->Prop)) (x0 (g x1))) (f x1))
% Found ((eq_ref (fofType->Prop)) (x0 (g x1))) as proof of (((eq (fofType->Prop)) (x0 (g x1))) (f x1))
% Found ((eq_ref (fofType->Prop)) (x0 (g x1))) as proof of (((eq (fofType->Prop)) (x0 (g x1))) (f x1))
% Found ((eq_ref (fofType->Prop)) (x0 (g x1))) as proof of (((eq (fofType->Prop)) (x0 (g x1))) (f x1))
% Found ((eq_sym1000 ((eq_ref (fofType->Prop)) (x0 (g x1)))) (((eq_ref (fofType->Prop)) (f x1)) P)) as proof of ((P (f x1))->(P (x0 (g x1))))
% Found ((eq_sym1000 ((eq_ref (fofType->Prop)) (x0 (g x1)))) (((eq_ref (fofType->Prop)) (f x1)) P)) as proof of ((P (f x1))->(P (x0 (g x1))))
% Found (((fun (x2:(((eq (fofType->Prop)) (x0 (g x1))) (f x1)))=> ((eq_sym100 x2) (fun (x4:(fofType->Prop))=> ((P (f x1))->(P x4))))) ((eq_ref (fofType->Prop)) (x0 (g x1)))) (((eq_ref (fofType->Prop)) (f x1)) P)) as proof of ((P (f x1))->(P (x0 (g x1))))
% Found (((fun (x2:(((eq (fofType->Prop)) (x0 (g x1))) (f x1)))=> (((eq_sym10 (f x1)) x2) (fun (x4:(fofType->Prop))=> ((P (f x1))->(P x4))))) ((eq_ref (fofType->Prop)) (x0 (g x1)))) (((eq_ref (fofType->Prop)) (f x1)) P)) as proof of ((P (f x1))->(P (x0 (g x1))))
% Found (((fun (x2:(((eq (fofType->Prop)) (x0 (g x1))) (f x1)))=> ((((eq_sym1 (x0 (g x1))) (f x1)) x2) (fun (x4:(fofType->Prop))=> ((P (f x1))->(P x4))))) ((eq_ref (fofType->Prop)) (x0 (g x1)))) (((eq_ref (fofType->Prop)) (f x1)) P)) as proof of ((P (f x1))->(P (x0 (g x1))))
% Found (((fun (x2:(((eq (fofType->Prop)) (x0 (g x1))) (f x1)))=> (((((eq_sym (fofType->Prop)) (x0 (g x1))) (f x1)) x2) (fun (x4:(fofType->Prop))=> ((P (f x1))->(P x4))))) ((eq_ref (fofType->Prop)) (x0 (g x1)))) (((eq_ref (fofType->Prop)) (f x1)) P)) as proof of ((P (f x1))->(P (x0 (g x1))))
% Found (fun (P:((fofType->Prop)->Prop))=> (((fun (x2:(((eq (fofType->Prop)) (x0 (g x1))) (f x1)))=> (((((eq_sym (fofType->Prop)) (x0 (g x1))) (f x1)) x2) (fun (x4:(fofType->Prop))=> ((P (f x1))->(P x4))))) ((eq_ref (fofType->Prop)) (x0 (g x1)))) (((eq_ref (fofType->Prop)) (f x1)) P))) as proof of ((P (f x1))->(P (x0 (g x1))))
% Found eq_ref000:=(eq_ref00 P):((P (f x1))->(P (f x1)))
% Found (eq_ref00 P) as proof of (P0 (f x1))
% Found ((eq_ref0 (f x1)) P) as proof of (P0 (f x1))
% Found (((eq_ref (fofType->Prop)) (f x1)) P) as proof of (P0 (f x1))
% Found (((eq_ref (fofType->Prop)) (f x1)) P) as proof of (P0 (f x1))
% Found eq_ref00:=(eq_ref0 ((x0 (g x1)) x2)):(((eq Prop) ((x0 (g x1)) x2)) ((x0 (g x1)) x2))
% Found (eq_ref0 ((x0 (g x1)) x2)) as proof of (((eq Prop) ((x0 (g x1)) x2)) ((b x1) x2))
% Found ((eq_ref Prop) ((x0 (g x1)) x2)) as proof of (((eq Prop) ((x0 (g x1)) x2)) ((b x1) x2))
% Found ((eq_ref Prop) ((x0 (g x1)) x2)) as proof of (((eq Prop) ((x0 (g x1)) x2)) ((b x1) x2))
% Found (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2))) as proof of (((eq Prop) ((x0 (g x1)) x2)) ((b x1) x2))
% Found (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2))) as proof of (forall (x:fofType), (((eq Prop) ((x0 (g x1)) x)) ((b x1) x)))
% Found (functional_extensionality_dep0000 (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2)))) as proof of (((eq (fofType->Prop)) (x0 (g x1))) (b x1))
% Found ((functional_extensionality_dep000 (b x1)) (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2)))) as proof of (((eq (fofType->Prop)) (x0 (g x1))) (b x1))
% Found (((functional_extensionality_dep00 (x0 (g x1))) (b x1)) (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2)))) as proof of (((eq (fofType->Prop)) (x0 (g x1))) (b x1))
% Found ((((functional_extensionality_dep0 (fun (x4:fofType)=> Prop)) (x0 (g x1))) (b x1)) (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2)))) as proof of (((eq (fofType->Prop)) (x0 (g x1))) (b x1))
% Found (((((functional_extensionality_dep fofType) (fun (x4:fofType)=> Prop)) (x0 (g x1))) (b x1)) (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2)))) as proof of (((eq (fofType->Prop)) (x0 (g x1))) (b x1))
% Found eq_ref00:=(eq_ref0 ((x0 (g x1)) x2)):(((eq Prop) ((x0 (g x1)) x2)) ((x0 (g x1)) x2))
% Found (eq_ref0 ((x0 (g x1)) x2)) as proof of (((eq Prop) ((x0 (g x1)) x2)) ((b x1) x2))
% Found ((eq_ref Prop) ((x0 (g x1)) x2)) as proof of (((eq Prop) ((x0 (g x1)) x2)) ((b x1) x2))
% Found ((eq_ref Prop) ((x0 (g x1)) x2)) as proof of (((eq Prop) ((x0 (g x1)) x2)) ((b x1) x2))
% Found (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2))) as proof of (((eq Prop) ((x0 (g x1)) x2)) ((b x1) x2))
% Found (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2))) as proof of (forall (x:fofType), (((eq Prop) ((x0 (g x1)) x)) ((b x1) x)))
% Found (functional_extensionality0000 (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2)))) as proof of (((eq (fofType->Prop)) (x0 (g x1))) (b x1))
% Found ((functional_extensionality000 (b x1)) (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2)))) as proof of (((eq (fofType->Prop)) (x0 (g x1))) (b x1))
% Found (((functional_extensionality00 (x0 (g x1))) (b x1)) (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2)))) as proof of (((eq (fofType->Prop)) (x0 (g x1))) (b x1))
% Found ((((functional_extensionality0 Prop) (x0 (g x1))) (b x1)) (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2)))) as proof of (((eq (fofType->Prop)) (x0 (g x1))) (b x1))
% Found (((((functional_extensionality fofType) Prop) (x0 (g x1))) (b x1)) (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2)))) as proof of (((eq (fofType->Prop)) (x0 (g x1))) (b x1))
% Found eq_ref00:=(eq_ref0 b):(((eq (fofType->Prop)) b) b)
% Found (eq_ref0 b) as proof of (((eq (fofType->Prop)) b) (x0 (g x1)))
% Found ((eq_ref (fofType->Prop)) b) as proof of (((eq (fofType->Prop)) b) (x0 (g x1)))
% Found ((eq_ref (fofType->Prop)) b) as proof of (((eq (fofType->Prop)) b) (x0 (g x1)))
% Found ((eq_ref (fofType->Prop)) b) as proof of (((eq (fofType->Prop)) b) (x0 (g x1)))
% Found eta_expansion_dep000:=(eta_expansion_dep00 (f x1)):(((eq (fofType->Prop)) (f x1)) (fun (x:fofType)=> ((f x1) x)))
% Found (eta_expansion_dep00 (f x1)) as proof of (((eq (fofType->Prop)) (f x1)) b)
% Found ((eta_expansion_dep0 (fun (x3:fofType)=> Prop)) (f x1)) as proof of (((eq (fofType->Prop)) (f x1)) b)
% Found (((eta_expansion_dep fofType) (fun (x3:fofType)=> Prop)) (f x1)) as proof of (((eq (fofType->Prop)) (f x1)) b)
% Found (((eta_expansion_dep fofType) (fun (x3:fofType)=> Prop)) (f x1)) as proof of (((eq (fofType->Prop)) (f x1)) b)
% Found (((eta_expansion_dep fofType) (fun (x3:fofType)=> Prop)) (f x1)) as proof of (((eq (fofType->Prop)) (f x1)) b)
% Found eq_ref00:=(eq_ref0 b):(((eq (fofType->Prop)) b) b)
% Found (eq_ref0 b) as proof of (((eq (fofType->Prop)) b) (x0 (g x1)))
% Found ((eq_ref (fofType->Prop)) b) as proof of (((eq (fofType->Prop)) b) (x0 (g x1)))
% Found ((eq_ref (fofType->Prop)) b) as proof of (((eq (fofType->Prop)) b) (x0 (g x1)))
% Found ((eq_ref (fofType->Prop)) b) as proof of (((eq (fofType->Prop)) b) (x0 (g x1)))
% Found eta_expansion_dep000:=(eta_expansion_dep00 (f x1)):(((eq (fofType->Prop)) (f x1)) (fun (x:fofType)=> ((f x1) x)))
% Found (eta_expansion_dep00 (f x1)) as proof of (((eq (fofType->Prop)) (f x1)) b)
% Found ((eta_expansion_dep0 (fun (x3:fofType)=> Prop)) (f x1)) as proof of (((eq (fofType->Prop)) (f x1)) b)
% Found (((eta_expansion_dep fofType) (fun (x3:fofType)=> Prop)) (f x1)) as proof of (((eq (fofType->Prop)) (f x1)) b)
% Found (((eta_expansion_dep fofType) (fun (x3:fofType)=> Prop)) (f x1)) as proof of (((eq (fofType->Prop)) (f x1)) b)
% Found (((eta_expansion_dep fofType) (fun (x3:fofType)=> Prop)) (f x1)) as proof of (((eq (fofType->Prop)) (f x1)) b)
% Found eq_ref000:=(eq_ref00 P):((P (f x1))->(P (f x1)))
% Found (eq_ref00 P) as proof of (P0 (f x1))
% Found ((eq_ref0 (f x1)) P) as proof of (P0 (f x1))
% Found (((eq_ref (fofType->Prop)) (f x1)) P) as proof of (P0 (f x1))
% Found (((eq_ref (fofType->Prop)) (f x1)) P) as proof of (P0 (f x1))
% Found eq_ref000:=(eq_ref00 P):((P (f x1))->(P (f x1)))
% Found (eq_ref00 P) as proof of (P0 (f x1))
% Found ((eq_ref0 (f x1)) P) as proof of (P0 (f x1))
% Found (((eq_ref (fofType->Prop)) (f x1)) P) as proof of (P0 (f x1))
% Found (((eq_ref (fofType->Prop)) (f x1)) P) as proof of (P0 (f x1))
% Found eq_ref00:=(eq_ref0 ((x0 (g x1)) y)):(((eq Prop) ((x0 (g x1)) y)) ((x0 (g x1)) y))
% Found (eq_ref0 ((x0 (g x1)) y)) as proof of (((eq Prop) ((x0 (g x1)) y)) ((f x1) y))
% Found ((eq_ref Prop) ((x0 (g x1)) y)) as proof of (((eq Prop) ((x0 (g x1)) y)) ((f x1) y))
% Found ((eq_ref Prop) ((x0 (g x1)) y)) as proof of (((eq Prop) ((x0 (g x1)) y)) ((f x1) y))
% Found ((eq_ref Prop) ((x0 (g x1)) y)) as proof of (((eq Prop) ((x0 (g x1)) y)) ((f x1) y))
% Found (eq_sym1000 ((eq_ref Prop) ((x0 (g x1)) y))) as proof of ((P ((f x1) y))->(P ((x0 (g x1)) y)))
% Found (eq_sym1000 ((eq_ref Prop) ((x0 (g x1)) y))) as proof of ((P ((f x1) y))->(P ((x0 (g x1)) y)))
% Found ((fun (x2:(((eq Prop) ((x0 (g x1)) y)) ((f x1) y)))=> ((eq_sym100 x2) P)) ((eq_ref Prop) ((x0 (g x1)) y))) as proof of ((P ((f x1) y))->(P ((x0 (g x1)) y)))
% Found ((fun (x2:(((eq Prop) ((x0 (g x1)) y)) ((f x1) y)))=> (((eq_sym10 ((f x1) y)) x2) P)) ((eq_ref Prop) ((x0 (g x1)) y))) as proof of ((P ((f x1) y))->(P ((x0 (g x1)) y)))
% Found ((fun (x2:(((eq Prop) ((x0 (g x1)) y)) ((f x1) y)))=> ((((eq_sym1 ((x0 (g x1)) y)) ((f x1) y)) x2) P)) ((eq_ref Prop) ((x0 (g x1)) y))) as proof of ((P ((f x1) y))->(P ((x0 (g x1)) y)))
% Found ((fun (x2:(((eq Prop) ((x0 (g x1)) y)) ((f x1) y)))=> (((((eq_sym Prop) ((x0 (g x1)) y)) ((f x1) y)) x2) P)) ((eq_ref Prop) ((x0 (g x1)) y))) as proof of ((P ((f x1) y))->(P ((x0 (g x1)) y)))
% Found (fun (P:(Prop->Prop))=> ((fun (x2:(((eq Prop) ((x0 (g x1)) y)) ((f x1) y)))=> (((((eq_sym Prop) ((x0 (g x1)) y)) ((f x1) y)) x2) P)) ((eq_ref Prop) ((x0 (g x1)) y)))) as proof of ((P ((f x1) y))->(P ((x0 (g x1)) y)))
% Found (fun (y:fofType) (P:(Prop->Prop))=> ((fun (x2:(((eq Prop) ((x0 (g x1)) y)) ((f x1) y)))=> (((((eq_sym Prop) ((x0 (g x1)) y)) ((f x1) y)) x2) P)) ((eq_ref Prop) ((x0 (g x1)) y)))) as proof of (((eq Prop) ((f x1) y)) ((x0 (g x1)) y))
% Found eq_ref00:=(eq_ref0 ((x0 (g x1)) y)):(((eq Prop) ((x0 (g x1)) y)) ((x0 (g x1)) y))
% Found (eq_ref0 ((x0 (g x1)) y)) as proof of (((eq Prop) ((x0 (g x1)) y)) ((f x1) y))
% Found ((eq_ref Prop) ((x0 (g x1)) y)) as proof of (((eq Prop) ((x0 (g x1)) y)) ((f x1) y))
% Found ((eq_ref Prop) ((x0 (g x1)) y)) as proof of (((eq Prop) ((x0 (g x1)) y)) ((f x1) y))
% Found ((eq_ref Prop) ((x0 (g x1)) y)) as proof of (((eq Prop) ((x0 (g x1)) y)) ((f x1) y))
% Found (eq_sym100 ((eq_ref Prop) ((x0 (g x1)) y))) as proof of (((eq Prop) ((f x1) y)) ((x0 (g x1)) y))
% Found ((eq_sym10 ((f x1) y)) ((eq_ref Prop) ((x0 (g x1)) y))) as proof of (((eq Prop) ((f x1) y)) ((x0 (g x1)) y))
% Found (((eq_sym1 ((x0 (g x1)) y)) ((f x1) y)) ((eq_ref Prop) ((x0 (g x1)) y))) as proof of (((eq Prop) ((f x1) y)) ((x0 (g x1)) y))
% Found ((((eq_sym Prop) ((x0 (g x1)) y)) ((f x1) y)) ((eq_ref Prop) ((x0 (g x1)) y))) as proof of (((eq Prop) ((f x1) y)) ((x0 (g x1)) y))
% Found (fun (y:fofType)=> ((((eq_sym Prop) ((x0 (g x1)) y)) ((f x1) y)) ((eq_ref Prop) ((x0 (g x1)) y)))) as proof of (((eq Prop) ((f x1) y)) ((x0 (g x1)) y))
% Found eq_ref00:=(eq_ref0 ((x0 (g x1)) y)):(((eq Prop) ((x0 (g x1)) y)) ((x0 (g x1)) y))
% Found (eq_ref0 ((x0 (g x1)) y)) as proof of (((eq Prop) ((x0 (g x1)) y)) ((f x1) y))
% Found ((eq_ref Prop) ((x0 (g x1)) y)) as proof of (((eq Prop) ((x0 (g x1)) y)) ((f x1) y))
% Found ((eq_ref Prop) ((x0 (g x1)) y)) as proof of (((eq Prop) ((x0 (g x1)) y)) ((f x1) y))
% Found ((eq_ref Prop) ((x0 (g x1)) y)) as proof of (((eq Prop) ((x0 (g x1)) y)) ((f x1) y))
% Found (eq_sym100 ((eq_ref Prop) ((x0 (g x1)) y))) as proof of (((eq Prop) ((f x1) y)) ((x0 (g x1)) y))
% Found ((eq_sym10 ((f x1) y)) ((eq_ref Prop) ((x0 (g x1)) y))) as proof of (((eq Prop) ((f x1) y)) ((x0 (g x1)) y))
% Found (((eq_sym1 ((x0 (g x1)) y)) ((f x1) y)) ((eq_ref Prop) ((x0 (g x1)) y))) as proof of (((eq Prop) ((f x1) y)) ((x0 (g x1)) y))
% Found ((((eq_sym Prop) ((x0 (g x1)) y)) ((f x1) y)) ((eq_ref Prop) ((x0 (g x1)) y))) as proof of (((eq Prop) ((f x1) y)) ((x0 (g x1)) y))
% Found (fun (y:fofType)=> ((((eq_sym Prop) ((x0 (g x1)) y)) ((f x1) y)) ((eq_ref Prop) ((x0 (g x1)) y)))) as proof of (((eq Prop) ((f x1) y)) ((x0 (g x1)) y))
% Found eq_ref00:=(eq_ref0 ((x0 (g x1)) y)):(((eq Prop) ((x0 (g x1)) y)) ((x0 (g x1)) y))
% Found (eq_ref0 ((x0 (g x1)) y)) as proof of (((eq Prop) ((x0 (g x1)) y)) ((f x1) y))
% Found ((eq_ref Prop) ((x0 (g x1)) y)) as proof of (((eq Prop) ((x0 (g x1)) y)) ((f x1) y))
% Found ((eq_ref Prop) ((x0 (g x1)) y)) as proof of (((eq Prop) ((x0 (g x1)) y)) ((f x1) y))
% Found ((eq_ref Prop) ((x0 (g x1)) y)) as proof of (((eq Prop) ((x0 (g x1)) y)) ((f x1) y))
% Found (eq_sym100 ((eq_ref Prop) ((x0 (g x1)) y))) as proof of (((eq Prop) ((f x1) y)) ((x0 (g x1)) y))
% Found ((eq_sym10 ((f x1) y)) ((eq_ref Prop) ((x0 (g x1)) y))) as proof of (((eq Prop) ((f x1) y)) ((x0 (g x1)) y))
% Found (((eq_sym1 ((x0 (g x1)) y)) ((f x1) y)) ((eq_ref Prop) ((x0 (g x1)) y))) as proof of (((eq Prop) ((f x1) y)) ((x0 (g x1)) y))
% Found ((((eq_sym Prop) ((x0 (g x1)) y)) ((f x1) y)) ((eq_ref Prop) ((x0 (g x1)) y))) as proof of (((eq Prop) ((f x1) y)) ((x0 (g x1)) y))
% Found (fun (y:fofType)=> ((((eq_sym Prop) ((x0 (g x1)) y)) ((f x1) y)) ((eq_ref Prop) ((x0 (g x1)) y)))) as proof of (((eq Prop) ((f x1) y)) ((x0 (g x1)) y))
% Found eq_ref00:=(eq_ref0 ((x0 (g x1)) y)):(((eq Prop) ((x0 (g x1)) y)) ((x0 (g x1)) y))
% Found (eq_ref0 ((x0 (g x1)) y)) as proof of (((eq Prop) ((x0 (g x1)) y)) ((f x1) y))
% Found ((eq_ref Prop) ((x0 (g x1)) y)) as proof of (((eq Prop) ((x0 (g x1)) y)) ((f x1) y))
% Found ((eq_ref Prop) ((x0 (g x1)) y)) as proof of (((eq Prop) ((x0 (g x1)) y)) ((f x1) y))
% Found ((eq_ref Prop) ((x0 (g x1)) y)) as proof of (((eq Prop) ((x0 (g x1)) y)) ((f x1) y))
% Found (eq_sym100 ((eq_ref Prop) ((x0 (g x1)) y))) as proof of (((eq Prop) ((f x1) y)) ((x0 (g x1)) y))
% Found ((eq_sym10 ((f x1) y)) ((eq_ref Prop) ((x0 (g x1)) y))) as proof of (((eq Prop) ((f x1) y)) ((x0 (g x1)) y))
% Found (((eq_sym1 ((x0 (g x1)) y)) ((f x1) y)) ((eq_ref Prop) ((x0 (g x1)) y))) as proof of (((eq Prop) ((f x1) y)) ((x0 (g x1)) y))
% Found ((((eq_sym Prop) ((x0 (g x1)) y)) ((f x1) y)) ((eq_ref Prop) ((x0 (g x1)) y))) as proof of (((eq Prop) ((f x1) y)) ((x0 (g x1)) y))
% Found (fun (y:fofType)=> ((((eq_sym Prop) ((x0 (g x1)) y)) ((f x1) y)) ((eq_ref Prop) ((x0 (g x1)) y)))) as proof of (((eq Prop) ((f x1) y)) ((x0 (g x1)) y))
% Found eq_ref000:=(eq_ref00 P):((P ((f x1) y))->(P ((f x1) y)))
% Found (eq_ref00 P) as proof of (P0 ((f x1) y))
% Found ((eq_ref0 ((f x1) y)) P) as proof of (P0 ((f x1) y))
% Found (((eq_ref Prop) ((f x1) y)) P) as proof of (P0 ((f x1) y))
% Found (((eq_ref Prop) ((f x1) y)) P) as proof of (P0 ((f x1) y))
% Found eq_ref00:=(eq_ref0 ((x0 (g x1)) y)):(((eq Prop) ((x0 (g x1)) y)) ((x0 (g x1)) y))
% Found (eq_ref0 ((x0 (g x1)) y)) as proof of (((eq Prop) ((x0 (g x1)) y)) ((f x1) y))
% Found ((eq_ref Prop) ((x0 (g x1)) y)) as proof of (((eq Prop) ((x0 (g x1)) y)) ((f x1) y))
% Found ((eq_ref Prop) ((x0 (g x1)) y)) as proof of (((eq Prop) ((x0 (g x1)) y)) ((f x1) y))
% Found ((eq_ref Prop) ((x0 (g x1)) y)) as proof of (((eq Prop) ((x0 (g x1)) y)) ((f x1) y))
% Found ((eq_sym1000 ((eq_ref Prop) ((x0 (g x1)) y))) (((eq_ref Prop) ((f x1) y)) P)) as proof of ((P ((f x1) y))->(P ((x0 (g x1)) y)))
% Found ((eq_sym1000 ((eq_ref Prop) ((x0 (g x1)) y))) (((eq_ref Prop) ((f x1) y)) P)) as proof of ((P ((f x1) y))->(P ((x0 (g x1)) y)))
% Found (((fun (x2:(((eq Prop) ((x0 (g x1)) y)) ((f x1) y)))=> ((eq_sym100 x2) (fun (x4:Prop)=> ((P ((f x1) y))->(P x4))))) ((eq_ref Prop) ((x0 (g x1)) y))) (((eq_ref Prop) ((f x1) y)) P)) as proof of ((P ((f x1) y))->(P ((x0 (g x1)) y)))
% Found (((fun (x2:(((eq Prop) ((x0 (g x1)) y)) ((f x1) y)))=> (((eq_sym10 ((f x1) y)) x2) (fun (x4:Prop)=> ((P ((f x1) y))->(P x4))))) ((eq_ref Prop) ((x0 (g x1)) y))) (((eq_ref Prop) ((f x1) y)) P)) as proof of ((P ((f x1) y))->(P ((x0 (g x1)) y)))
% Found (((fun (x2:(((eq Prop) ((x0 (g x1)) y)) ((f x1) y)))=> ((((eq_sym1 ((x0 (g x1)) y)) ((f x1) y)) x2) (fun (x4:Prop)=> ((P ((f x1) y))->(P x4))))) ((eq_ref Prop) ((x0 (g x1)) y))) (((eq_ref Prop) ((f x1) y)) P)) as proof of ((P ((f x1) y))->(P ((x0 (g x1)) y)))
% Found (((fun (x2:(((eq Prop) ((x0 (g x1)) y)) ((f x1) y)))=> (((((eq_sym Prop) ((x0 (g x1)) y)) ((f x1) y)) x2) (fun (x4:Prop)=> ((P ((f x1) y))->(P x4))))) ((eq_ref Prop) ((x0 (g x1)) y))) (((eq_ref Prop) ((f x1) y)) P)) as proof of ((P ((f x1) y))->(P ((x0 (g x1)) y)))
% Found (fun (P:(Prop->Prop))=> (((fun (x2:(((eq Prop) ((x0 (g x1)) y)) ((f x1) y)))=> (((((eq_sym Prop) ((x0 (g x1)) y)) ((f x1) y)) x2) (fun (x4:Prop)=> ((P ((f x1) y))->(P x4))))) ((eq_ref Prop) ((x0 (g x1)) y))) (((eq_ref Prop) ((f x1) y)) P))) as proof of ((P ((f x1) y))->(P ((x0 (g x1)) y)))
% Found (fun (y:fofType) (P:(Prop->Prop))=> (((fun (x2:(((eq Prop) ((x0 (g x1)) y)) ((f x1) y)))=> (((((eq_sym Prop) ((x0 (g x1)) y)) ((f x1) y)) x2) (fun (x4:Prop)=> ((P ((f x1) y))->(P x4))))) ((eq_ref Prop) ((x0 (g x1)) y))) (((eq_ref Prop) ((f x1) y)) P))) as proof of (((eq Prop) ((f x1) y)) ((x0 (g x1)) y))
% Found eq_ref00:=(eq_ref0 b):(((eq Prop) b) b)
% Found (eq_ref0 b) as proof of (((eq Prop) b) ((x0 (g x1)) y))
% Found ((eq_ref Prop) b) as proof of (((eq Prop) b) ((x0 (g x1)) y))
% Found ((eq_ref Prop) b) as proof of (((eq Prop) b) ((x0 (g x1)) y))
% Found ((eq_ref Prop) b) as proof of (((eq Prop) b) ((x0 (g x1)) y))
% Found eq_ref00:=(eq_ref0 ((f x1) y)):(((eq Prop) ((f x1) y)) ((f x1) y))
% Found (eq_ref0 ((f x1) y)) as proof of (((eq Prop) ((f x1) y)) b)
% Found ((eq_ref Prop) ((f x1) y)) as proof of (((eq Prop) ((f x1) y)) b)
% Found ((eq_ref Prop) ((f x1) y)) as proof of (((eq Prop) ((f x1) y)) b)
% Found ((eq_ref Prop) ((f x1) y)) as proof of (((eq Prop) ((f x1) y)) b)
% Found eq_ref00:=(eq_ref0 ((f x1) y)):(((eq Prop) ((f x1) y)) ((f x1) y))
% Found (eq_ref0 ((f x1) y)) as proof of (((eq Prop) ((f x1) y)) b)
% Found ((eq_ref Prop) ((f x1) y)) as proof of (((eq Prop) ((f x1) y)) b)
% Found ((eq_ref Prop) ((f x1) y)) as proof of (((eq Prop) ((f x1) y)) b)
% Found ((eq_ref Prop) ((f x1) y)) as proof of (((eq Prop) ((f x1) y)) b)
% Found eq_ref00:=(eq_ref0 b):(((eq Prop) b) b)
% Found (eq_ref0 b) as proof of (((eq Prop) b) ((x0 (g x1)) y))
% Found ((eq_ref Prop) b) as proof of (((eq Prop) b) ((x0 (g x1)) y))
% Found ((eq_ref Prop) b) as proof of (((eq Prop) b) ((x0 (g x1)) y))
% Found ((eq_ref Prop) b) as proof of (((eq Prop) b) ((x0 (g x1)) y))
% Found eq_ref00:=(eq_ref0 ((x0 (g x1)) x2)):(((eq Prop) ((x0 (g x1)) x2)) ((x0 (g x1)) x2))
% Found (eq_ref0 ((x0 (g x1)) x2)) as proof of (((eq Prop) ((x0 (g x1)) x2)) ((f x1) x2))
% Found ((eq_ref Prop) ((x0 (g x1)) x2)) as proof of (((eq Prop) ((x0 (g x1)) x2)) ((f x1) x2))
% Found ((eq_ref Prop) ((x0 (g x1)) x2)) as proof of (((eq Prop) ((x0 (g x1)) x2)) ((f x1) x2))
% Found (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2))) as proof of (((eq Prop) ((x0 (g x1)) x2)) ((f x1) x2))
% Found (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2))) as proof of (forall (x:fofType), (((eq Prop) ((x0 (g x1)) x)) ((f x1) x)))
% Found (functional_extensionality0100 (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2)))) as proof of (((eq (fofType->Prop)) (x0 (g x1))) (f x1))
% Found ((functional_extensionality010 (f x1)) (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2)))) as proof of (((eq (fofType->Prop)) (x0 (g x1))) (f x1))
% Found (((functional_extensionality01 (x0 (g x1))) (f x1)) (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2)))) as proof of (((eq (fofType->Prop)) (x0 (g x1))) (f x1))
% Found ((((functional_extensionality0 Prop) (x0 (g x1))) (f x1)) (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2)))) as proof of (((eq (fofType->Prop)) (x0 (g x1))) (f x1))
% Found eq_ref00:=(eq_ref0 ((x0 (g x1)) x2)):(((eq Prop) ((x0 (g x1)) x2)) ((x0 (g x1)) x2))
% Found (eq_ref0 ((x0 (g x1)) x2)) as proof of (((eq Prop) ((x0 (g x1)) x2)) ((f x1) x2))
% Found ((eq_ref Prop) ((x0 (g x1)) x2)) as proof of (((eq Prop) ((x0 (g x1)) x2)) ((f x1) x2))
% Found ((eq_ref Prop) ((x0 (g x1)) x2)) as proof of (((eq Prop) ((x0 (g x1)) x2)) ((f x1) x2))
% Found (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2))) as proof of (((eq Prop) ((x0 (g x1)) x2)) ((f x1) x2))
% Found (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2))) as proof of (forall (x:fofType), (((eq Prop) ((x0 (g x1)) x)) ((f x1) x)))
% Found (functional_extensionality_dep0100 (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2)))) as proof of (((eq (fofType->Prop)) (x0 (g x1))) (f x1))
% Found ((functional_extensionality_dep010 (f x1)) (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2)))) as proof of (((eq (fofType->Prop)) (x0 (g x1))) (f x1))
% Found (((functional_extensionality_dep01 (x0 (g x1))) (f x1)) (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2)))) as proof of (((eq (fofType->Prop)) (x0 (g x1))) (f x1))
% Found ((((functional_extensionality_dep0 (fun (x4:fofType)=> Prop)) (x0 (g x1))) (f x1)) (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2)))) as proof of (((eq (fofType->Prop)) (x0 (g x1))) (f x1))
% Found eq_ref00:=(eq_ref0 ((x0 (g x1)) x2)):(((eq Prop) ((x0 (g x1)) x2)) ((x0 (g x1)) x2))
% Found (eq_ref0 ((x0 (g x1)) x2)) as proof of (((eq Prop) ((x0 (g x1)) x2)) ((f x1) x2))
% Found ((eq_ref Prop) ((x0 (g x1)) x2)) as proof of (((eq Prop) ((x0 (g x1)) x2)) ((f x1) x2))
% Found ((eq_ref Prop) ((x0 (g x1)) x2)) as proof of (((eq Prop) ((x0 (g x1)) x2)) ((f x1) x2))
% Found (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2))) as proof of (((eq Prop) ((x0 (g x1)) x2)) ((f x1) x2))
% Found (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2))) as proof of (forall (x:fofType), (((eq Prop) ((x0 (g x1)) x)) ((f x1) x)))
% Found (functional_extensionality0000 (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2)))) as proof of (forall (P:((fofType->Prop)->Prop)), ((P (x0 (g x1)))->(P (f x1))))
% Found ((functional_extensionality000 (f x1)) (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2)))) as proof of (forall (P:((fofType->Prop)->Prop)), ((P (x0 (g x1)))->(P (f x1))))
% Found (((functional_extensionality00 (x0 (g x1))) (f x1)) (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2)))) as proof of (forall (P:((fofType->Prop)->Prop)), ((P (x0 (g x1)))->(P (f x1))))
% Found ((((functional_extensionality0 Prop) (x0 (g x1))) (f x1)) (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2)))) as proof of (forall (P:((fofType->Prop)->Prop)), ((P (x0 (g x1)))->(P (f x1))))
% Found (((((functional_extensionality fofType) Prop) (x0 (g x1))) (f x1)) (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2)))) as proof of (forall (P:((fofType->Prop)->Prop)), ((P (x0 (g x1)))->(P (f x1))))
% Found (((((functional_extensionality fofType) Prop) (x0 (g x1))) (f x1)) (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2)))) as proof of (forall (P:((fofType->Prop)->Prop)), ((P (x0 (g x1)))->(P (f x1))))
% Found eq_ref00:=(eq_ref0 ((x0 (g x1)) x2)):(((eq Prop) ((x0 (g x1)) x2)) ((x0 (g x1)) x2))
% Found (eq_ref0 ((x0 (g x1)) x2)) as proof of (((eq Prop) ((x0 (g x1)) x2)) ((f x1) x2))
% Found ((eq_ref Prop) ((x0 (g x1)) x2)) as proof of (((eq Prop) ((x0 (g x1)) x2)) ((f x1) x2))
% Found ((eq_ref Prop) ((x0 (g x1)) x2)) as proof of (((eq Prop) ((x0 (g x1)) x2)) ((f x1) x2))
% Found (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2))) as proof of (((eq Prop) ((x0 (g x1)) x2)) ((f x1) x2))
% Found (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2))) as proof of (forall (x:fofType), (((eq Prop) ((x0 (g x1)) x)) ((f x1) x)))
% Found (functional_extensionality_dep0000 (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2)))) as proof of (forall (P:((fofType->Prop)->Prop)), ((P (x0 (g x1)))->(P (f x1))))
% Found ((functional_extensionality_dep000 (f x1)) (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2)))) as proof of (forall (P:((fofType->Prop)->Prop)), ((P (x0 (g x1)))->(P (f x1))))
% Found (((functional_extensionality_dep00 (x0 (g x1))) (f x1)) (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2)))) as proof of (forall (P:((fofType->Prop)->Prop)), ((P (x0 (g x1)))->(P (f x1))))
% Found ((((functional_extensionality_dep0 (fun (x4:fofType)=> Prop)) (x0 (g x1))) (f x1)) (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2)))) as proof of (forall (P:((fofType->Prop)->Prop)), ((P (x0 (g x1)))->(P (f x1))))
% Found (((((functional_extensionality_dep fofType) (fun (x4:fofType)=> Prop)) (x0 (g x1))) (f x1)) (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2)))) as proof of (forall (P:((fofType->Prop)->Prop)), ((P (x0 (g x1)))->(P (f x1))))
% Found (((((functional_extensionality_dep fofType) (fun (x4:fofType)=> Prop)) (x0 (g x1))) (f x1)) (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2)))) as proof of (forall (P:((fofType->Prop)->Prop)), ((P (x0 (g x1)))->(P (f x1))))
% Found eq_ref00:=(eq_ref0 ((x0 (g x1)) x2)):(((eq Prop) ((x0 (g x1)) x2)) ((x0 (g x1)) x2))
% Found (eq_ref0 ((x0 (g x1)) x2)) as proof of (((eq Prop) ((x0 (g x1)) x2)) ((f x1) x2))
% Found ((eq_ref Prop) ((x0 (g x1)) x2)) as proof of (((eq Prop) ((x0 (g x1)) x2)) ((f x1) x2))
% Found ((eq_ref Prop) ((x0 (g x1)) x2)) as proof of (((eq Prop) ((x0 (g x1)) x2)) ((f x1) x2))
% Found (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2))) as proof of (((eq Prop) ((x0 (g x1)) x2)) ((f x1) x2))
% Found (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2))) as proof of (forall (x:fofType), (((eq Prop) ((x0 (g x1)) x)) ((f x1) x)))
% Found (functional_extensionality_dep0000 (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2)))) as proof of (((eq (fofType->Prop)) (x0 (g x1))) (f x1))
% Found ((functional_extensionality_dep000 (f x1)) (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2)))) as proof of (((eq (fofType->Prop)) (x0 (g x1))) (f x1))
% Found (((functional_extensionality_dep00 (x0 (g x1))) (f x1)) (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2)))) as proof of (((eq (fofType->Prop)) (x0 (g x1))) (f x1))
% Found ((((functional_extensionality_dep0 (fun (x4:fofType)=> Prop)) (x0 (g x1))) (f x1)) (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2)))) as proof of (((eq (fofType->Prop)) (x0 (g x1))) (f x1))
% Found (((((functional_extensionality_dep fofType) (fun (x4:fofType)=> Prop)) (x0 (g x1))) (f x1)) (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2)))) as proof of (((eq (fofType->Prop)) (x0 (g x1))) (f x1))
% Found eq_ref00:=(eq_ref0 ((x0 (g x1)) x2)):(((eq Prop) ((x0 (g x1)) x2)) ((x0 (g x1)) x2))
% Found (eq_ref0 ((x0 (g x1)) x2)) as proof of (((eq Prop) ((x0 (g x1)) x2)) ((f x1) x2))
% Found ((eq_ref Prop) ((x0 (g x1)) x2)) as proof of (((eq Prop) ((x0 (g x1)) x2)) ((f x1) x2))
% Found ((eq_ref Prop) ((x0 (g x1)) x2)) as proof of (((eq Prop) ((x0 (g x1)) x2)) ((f x1) x2))
% Found (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2))) as proof of (((eq Prop) ((x0 (g x1)) x2)) ((f x1) x2))
% Found (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2))) as proof of (forall (x:fofType), (((eq Prop) ((x0 (g x1)) x)) ((f x1) x)))
% Found (functional_extensionality0000 (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2)))) as proof of (((eq (fofType->Prop)) (x0 (g x1))) (f x1))
% Found ((functional_extensionality000 (f x1)) (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2)))) as proof of (((eq (fofType->Prop)) (x0 (g x1))) (f x1))
% Found (((functional_extensionality00 (x0 (g x1))) (f x1)) (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2)))) as proof of (((eq (fofType->Prop)) (x0 (g x1))) (f x1))
% Found ((((functional_extensionality0 Prop) (x0 (g x1))) (f x1)) (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2)))) as proof of (((eq (fofType->Prop)) (x0 (g x1))) (f x1))
% Found (((((functional_extensionality fofType) Prop) (x0 (g x1))) (f x1)) (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2)))) as proof of (((eq (fofType->Prop)) (x0 (g x1))) (f x1))
% Found eq_ref00:=(eq_ref0 (x0 (g x1))):(((eq (fofType->Prop)) (x0 (g x1))) (x0 (g x1)))
% Found (eq_ref0 (x0 (g x1))) as proof of (((eq (fofType->Prop)) (x0 (g x1))) (b x1))
% Found ((eq_ref (fofType->Prop)) (x0 (g x1))) as proof of (((eq (fofType->Prop)) (x0 (g x1))) (b x1))
% Found ((eq_ref (fofType->Prop)) (x0 (g x1))) as proof of (((eq (fofType->Prop)) (x0 (g x1))) (b x1))
% Found eq_ref00:=(eq_ref0 (x0 (g x1))):(((eq (fofType->Prop)) (x0 (g x1))) (x0 (g x1)))
% Found (eq_ref0 (x0 (g x1))) as proof of (((eq (fofType->Prop)) (x0 (g x1))) (b x1))
% Found ((eq_ref (fofType->Prop)) (x0 (g x1))) as proof of (((eq (fofType->Prop)) (x0 (g x1))) (b x1))
% Found ((eq_ref (fofType->Prop)) (x0 (g x1))) as proof of (((eq (fofType->Prop)) (x0 (g x1))) (b x1))
% Found eq_ref00:=(eq_ref0 (x0 (g x1))):(((eq (fofType->Prop)) (x0 (g x1))) (x0 (g x1)))
% Found (eq_ref0 (x0 (g x1))) as proof of (((eq (fofType->Prop)) (x0 (g x1))) (b x1))
% Found ((eq_ref (fofType->Prop)) (x0 (g x1))) as proof of (((eq (fofType->Prop)) (x0 (g x1))) (b x1))
% Found ((eq_ref (fofType->Prop)) (x0 (g x1))) as proof of (((eq (fofType->Prop)) (x0 (g x1))) (b x1))
% Found ((eq_ref (fofType->Prop)) (x0 (g x1))) as proof of (((eq (fofType->Prop)) (x0 (g x1))) (b x1))
% Found (eq_sym100 ((eq_ref (fofType->Prop)) (x0 (g x1)))) as proof of (((eq (fofType->Prop)) (b x1)) (x0 (g x1)))
% Found ((eq_sym10 (b x1)) ((eq_ref (fofType->Prop)) (x0 (g x1)))) as proof of (((eq (fofType->Prop)) (b x1)) (x0 (g x1)))
% Found (((eq_sym1 (x0 (g x1))) (b x1)) ((eq_ref (fofType->Prop)) (x0 (g x1)))) as proof of (((eq (fofType->Prop)) (b x1)) (x0 (g x1)))
% Found ((((eq_sym (fofType->Prop)) (x0 (g x1))) (b x1)) ((eq_ref (fofType->Prop)) (x0 (g x1)))) as proof of (((eq (fofType->Prop)) (b x1)) (x0 (g x1)))
% Found eq_ref00:=(eq_ref0 (x0 (g x1))):(((eq (fofType->Prop)) (x0 (g x1))) (x0 (g x1)))
% Found (eq_ref0 (x0 (g x1))) as proof of (((eq (fofType->Prop)) (x0 (g x1))) (b x1))
% Found ((eq_ref (fofType->Prop)) (x0 (g x1))) as proof of (((eq (fofType->Prop)) (x0 (g x1))) (b x1))
% Found ((eq_ref (fofType->Prop)) (x0 (g x1))) as proof of (((eq (fofType->Prop)) (x0 (g x1))) (b x1))
% Found ((eq_ref (fofType->Prop)) (x0 (g x1))) as proof of (((eq (fofType->Prop)) (x0 (g x1))) (b x1))
% Found (eq_sym100 ((eq_ref (fofType->Prop)) (x0 (g x1)))) as proof of (((eq (fofType->Prop)) (b x1)) (x0 (g x1)))
% Found ((eq_sym10 (b x1)) ((eq_ref (fofType->Prop)) (x0 (g x1)))) as proof of (((eq (fofType->Prop)) (b x1)) (x0 (g x1)))
% Found (((eq_sym1 (x0 (g x1))) (b x1)) ((eq_ref (fofType->Prop)) (x0 (g x1)))) as proof of (((eq (fofType->Prop)) (b x1)) (x0 (g x1)))
% Found ((((eq_sym (fofType->Prop)) (x0 (g x1))) (b x1)) ((eq_ref (fofType->Prop)) (x0 (g x1)))) as proof of (((eq (fofType->Prop)) (b x1)) (x0 (g x1)))
% Found eq_ref00:=(eq_ref0 (x0 (g x1))):(((eq (fofType->Prop)) (x0 (g x1))) (x0 (g x1)))
% Found (eq_ref0 (x0 (g x1))) as proof of (((eq (fofType->Prop)) (x0 (g x1))) (b x1))
% Found ((eq_ref (fofType->Prop)) (x0 (g x1))) as proof of (((eq (fofType->Prop)) (x0 (g x1))) (b x1))
% Found ((eq_ref (fofType->Prop)) (x0 (g x1))) as proof of (((eq (fofType->Prop)) (x0 (g x1))) (b x1))
% Found ((eq_ref (fofType->Prop)) (x0 (g x1))) as proof of (((eq (fofType->Prop)) (x0 (g x1))) (b x1))
% Found (eq_sym100 ((eq_ref (fofType->Prop)) (x0 (g x1)))) as proof of (((eq (fofType->Prop)) (b x1)) (x0 (g x1)))
% Found ((eq_sym10 (b x1)) ((eq_ref (fofType->Prop)) (x0 (g x1)))) as proof of (((eq (fofType->Prop)) (b x1)) (x0 (g x1)))
% Found (((eq_sym1 (x0 (g x1))) (b x1)) ((eq_ref (fofType->Prop)) (x0 (g x1)))) as proof of (((eq (fofType->Prop)) (b x1)) (x0 (g x1)))
% Found ((((eq_sym (fofType->Prop)) (x0 (g x1))) (b x1)) ((eq_ref (fofType->Prop)) (x0 (g x1)))) as proof of (((eq (fofType->Prop)) (b x1)) (x0 (g x1)))
% Found eq_ref00:=(eq_ref0 (x0 (g x1))):(((eq (fofType->Prop)) (x0 (g x1))) (x0 (g x1)))
% Found (eq_ref0 (x0 (g x1))) as proof of (((eq (fofType->Prop)) (x0 (g x1))) (b x1))
% Found ((eq_ref (fofType->Prop)) (x0 (g x1))) as proof of (((eq (fofType->Prop)) (x0 (g x1))) (b x1))
% Found ((eq_ref (fofType->Prop)) (x0 (g x1))) as proof of (((eq (fofType->Prop)) (x0 (g x1))) (b x1))
% Found ((eq_ref (fofType->Prop)) (x0 (g x1))) as proof of (((eq (fofType->Prop)) (x0 (g x1))) (b x1))
% Found (eq_sym100 ((eq_ref (fofType->Prop)) (x0 (g x1)))) as proof of (((eq (fofType->Prop)) (b x1)) (x0 (g x1)))
% Found ((eq_sym10 (b x1)) ((eq_ref (fofType->Prop)) (x0 (g x1)))) as proof of (((eq (fofType->Prop)) (b x1)) (x0 (g x1)))
% Found (((eq_sym1 (x0 (g x1))) (b x1)) ((eq_ref (fofType->Prop)) (x0 (g x1)))) as proof of (((eq (fofType->Prop)) (b x1)) (x0 (g x1)))
% Found ((((eq_sym (fofType->Prop)) (x0 (g x1))) (b x1)) ((eq_ref (fofType->Prop)) (x0 (g x1)))) as proof of (((eq (fofType->Prop)) (b x1)) (x0 (g x1)))
% Found eq_ref000:=(eq_ref00 P):((P (x0 (g x1)))->(P (x0 (g x1))))
% Found (eq_ref00 P) as proof of ((P (x0 (g x1)))->(P (b x1)))
% Found ((eq_ref0 (x0 (g x1))) P) as proof of ((P (x0 (g x1)))->(P (b x1)))
% Found (((eq_ref (fofType->Prop)) (x0 (g x1))) P) as proof of ((P (x0 (g x1)))->(P (b x1)))
% Found (((eq_ref (fofType->Prop)) (x0 (g x1))) P) as proof of ((P (x0 (g x1)))->(P (b x1)))
% Found (fun (P:((fofType->Prop)->Prop))=> (((eq_ref (fofType->Prop)) (x0 (g x1))) P)) as proof of ((P (x0 (g x1)))->(P (b x1)))
% Found eq_ref000:=(eq_ref00 P):((P (x0 (g x1)))->(P (x0 (g x1))))
% Found (eq_ref00 P) as proof of ((P (x0 (g x1)))->(P (b x1)))
% Found ((eq_ref0 (x0 (g x1))) P) as proof of ((P (x0 (g x1)))->(P (b x1)))
% Found (((eq_ref (fofType->Prop)) (x0 (g x1))) P) as proof of ((P (x0 (g x1)))->(P (b x1)))
% Found (((eq_ref (fofType->Prop)) (x0 (g x1))) P) as proof of ((P (x0 (g x1)))->(P (b x1)))
% Found (fun (P:((fofType->Prop)->Prop))=> (((eq_ref (fofType->Prop)) (x0 (g x1))) P)) as proof of ((P (x0 (g x1)))->(P (b x1)))
% Found eq_ref00:=(eq_ref0 b):(((eq Prop) b) b)
% Found (eq_ref0 b) as proof of (((eq Prop) b) ((f x1) y))
% Found ((eq_ref Prop) b) as proof of (((eq Prop) b) ((f x1) y))
% Found ((eq_ref Prop) b) as proof of (((eq Prop) b) ((f x1) y))
% Found ((eq_ref Prop) b) as proof of (((eq Prop) b) ((f x1) y))
% Found (eq_sym010 ((eq_ref Prop) b)) as proof of (((eq Prop) ((f x1) y)) b)
% Found ((eq_sym01 ((f x1) y)) ((eq_ref Prop) b)) as proof of (((eq Prop) ((f x1) y)) b)
% Found (((eq_sym0 b) ((f x1) y)) ((eq_ref Prop) b)) as proof of (((eq Prop) ((f x1) y)) b)
% Found (((eq_sym0 b) ((f x1) y)) ((eq_ref Prop) b)) as proof of (((eq Prop) ((f x1) y)) b)
% Found ((eq_trans0000 (((eq_sym0 b) ((f x1) y)) ((eq_ref Prop) b))) ((eq_ref Prop) b)) as proof of (((eq Prop) ((f x1) y)) ((x0 (g x1)) y))
% Found (((eq_trans000 ((x0 (g x1)) y)) (((eq_sym0 b) ((f x1) y)) ((eq_ref Prop) b))) ((eq_ref Prop) b)) as proof of (((eq Prop) ((f x1) y)) ((x0 (g x1)) y))
% Found ((((eq_trans00 ((x0 (g x1)) y)) ((x0 (g x1)) y)) (((eq_sym0 ((x0 (g x1)) y)) ((f x1) y)) ((eq_ref Prop) ((x0 (g x1)) y)))) ((eq_ref Prop) ((x0 (g x1)) y))) as proof of (((eq Prop) ((f x1) y)) ((x0 (g x1)) y))
% Found (((((eq_trans0 ((f x1) y)) ((x0 (g x1)) y)) ((x0 (g x1)) y)) (((eq_sym0 ((x0 (g x1)) y)) ((f x1) y)) ((eq_ref Prop) ((x0 (g x1)) y)))) ((eq_ref Prop) ((x0 (g x1)) y))) as proof of (((eq Prop) ((f x1) y)) ((x0 (g x1)) y))
% Found ((((((eq_trans Prop) ((f x1) y)) ((x0 (g x1)) y)) ((x0 (g x1)) y)) (((eq_sym0 ((x0 (g x1)) y)) ((f x1) y)) ((eq_ref Prop) ((x0 (g x1)) y)))) ((eq_ref Prop) ((x0 (g x1)) y))) as proof of (((eq Prop) ((f x1) y)) ((x0 (g x1)) y))
% Found ((((((eq_trans Prop) ((f x1) y)) ((x0 (g x1)) y)) ((x0 (g x1)) y)) (((eq_sym0 ((x0 (g x1)) y)) ((f x1) y)) ((eq_ref Prop) ((x0 (g x1)) y)))) ((eq_ref Prop) ((x0 (g x1)) y))) as proof of (((eq Prop) ((f x1) y)) ((x0 (g x1)) y))
% Found (eq_sym000 ((((((eq_trans Prop) ((f x1) y)) ((x0 (g x1)) y)) ((x0 (g x1)) y)) (((eq_sym0 ((x0 (g x1)) y)) ((f x1) y)) ((eq_ref Prop) ((x0 (g x1)) y)))) ((eq_ref Prop) ((x0 (g x1)) y)))) as proof of (((eq Prop) ((x0 (g x1)) y)) ((f x1) y))
% Found ((eq_sym00 ((x0 (g x1)) y)) ((((((eq_trans Prop) ((f x1) y)) ((x0 (g x1)) y)) ((x0 (g x1)) y)) (((eq_sym0 ((x0 (g x1)) y)) ((f x1) y)) ((eq_ref Prop) ((x0 (g x1)) y)))) ((eq_ref Prop) ((x0 (g x1)) y)))) as proof of (((eq Prop) ((x0 (g x1)) y)) ((f x1) y))
% Found (((eq_sym0 ((f x1) y)) ((x0 (g x1)) y)) ((((((eq_trans Prop) ((f x1) y)) ((x0 (g x1)) y)) ((x0 (g x1)) y)) (((eq_sym0 ((x0 (g x1)) y)) ((f x1) y)) ((eq_ref Prop) ((x0 (g x1)) y)))) ((eq_ref Prop) ((x0 (g x1)) y)))) as proof of (((eq Prop) ((x0 (g x1)) y)) ((f x1) y))
% Found ((((eq_sym Prop) ((f x1) y)) ((x0 (g x1)) y)) ((((((eq_trans Prop) ((f x1) y)) ((x0 (g x1)) y)) ((x0 (g x1)) y)) ((((eq_sym Prop) ((x0 (g x1)) y)) ((f x1) y)) ((eq_ref Prop) ((x0 (g x1)) y)))) ((eq_ref Prop) ((x0 (g x1)) y)))) as proof of (((eq Prop) ((x0 (g x1)) y)) ((f x1) y))
% Found (fun (y:fofType)=> ((((eq_sym Prop) ((f x1) y)) ((x0 (g x1)) y)) ((((((eq_trans Prop) ((f x1) y)) ((x0 (g x1)) y)) ((x0 (g x1)) y)) ((((eq_sym Prop) ((x0 (g x1)) y)) ((f x1) y)) ((eq_ref Prop) ((x0 (g x1)) y)))) ((eq_ref Prop) ((x0 (g x1)) y))))) as proof of (((eq Prop) ((x0 (g x1)) y)) ((f x1) y))
% Found eq_ref00:=(eq_ref0 ((x0 (g x1)) y)):(((eq Prop) ((x0 (g x1)) y)) ((x0 (g x1)) y))
% Found (eq_ref0 ((x0 (g x1)) y)) as proof of (((eq Prop) ((x0 (g x1)) y)) ((b x1) y))
% Found ((eq_ref Prop) ((x0 (g x1)) y)) as proof of (((eq Prop) ((x0 (g x1)) y)) ((b x1) y))
% Found ((eq_ref Prop) ((x0 (g x1)) y)) as proof of (((eq Prop) ((x0 (g x1)) y)) ((b x1) y))
% Found (fun (y:fofType)=> ((eq_ref Prop) ((x0 (g x1)) y))) as proof of (((eq Prop) ((x0 (g x1)) y)) ((b x1) y))
% Found eq_ref00:=(eq_ref0 ((x0 (g x1)) y)):(((eq Prop) ((x0 (g x1)) y)) ((x0 (g x1)) y))
% Found (eq_ref0 ((x0 (g x1)) y)) as proof of (((eq Prop) ((x0 (g x1)) y)) b)
% Found ((eq_ref Prop) ((x0 (g x1)) y)) as proof of (((eq Prop) ((x0 (g x1)) y)) b)
% Found ((eq_ref Prop) ((x0 (g x1)) y)) as proof of (((eq Prop) ((x0 (g x1)) y)) b)
% Found ((eq_ref Prop) ((x0 (g x1)) y)) as proof of (((eq Prop) ((x0 (g x1)) y)) b)
% Found (eq_sym100 ((eq_ref Prop) ((x0 (g x1)) y))) as proof of (((eq Prop) b) ((x0 (g x1)) y))
% Found ((eq_sym10 b) ((eq_ref Prop) ((x0 (g x1)) y))) as proof of (((eq Prop) b) ((x0 (g x1)) y))
% Found (((eq_sym1 ((x0 (g x1)) y)) b) ((eq_ref Prop) ((x0 (g x1)) y))) as proof of (((eq Prop) b) ((x0 (g x1)) y))
% Found ((((eq_sym Prop) ((x0 (g x1)) y)) b) ((eq_ref Prop) ((x0 (g x1)) y))) as proof of (((eq Prop) b) ((x0 (g x1)) y))
% Found ((((eq_sym Prop) ((x0 (g x1)) y)) b) ((eq_ref Prop) ((x0 (g x1)) y))) as proof of (((eq Prop) b) ((x0 (g x1)) y))
% Found ((eq_trans0000 ((eq_ref Prop) ((f x1) y))) ((((eq_sym Prop) ((x0 (g x1)) y)) b) ((eq_ref Prop) ((x0 (g x1)) y)))) as proof of (((eq Prop) ((f x1) y)) ((x0 (g x1)) y))
% Found (((eq_trans000 ((x0 (g x1)) y)) ((eq_ref Prop) ((f x1) y))) ((((eq_sym Prop) ((x0 (g x1)) y)) b) ((eq_ref Prop) ((x0 (g x1)) y)))) as proof of (((eq Prop) ((f x1) y)) ((x0 (g x1)) y))
% Found ((((eq_trans00 ((f x1) y)) ((x0 (g x1)) y)) ((eq_ref Prop) ((f x1) y))) ((((eq_sym Prop) ((x0 (g x1)) y)) ((f x1) y)) ((eq_ref Prop) ((x0 (g x1)) y)))) as proof of (((eq Prop) ((f x1) y)) ((x0 (g x1)) y))
% Found (((((eq_trans0 ((f x1) y)) ((f x1) y)) ((x0 (g x1)) y)) ((eq_ref Prop) ((f x1) y))) ((((eq_sym Prop) ((x0 (g x1)) y)) ((f x1) y)) ((eq_ref Prop) ((x0 (g x1)) y)))) as proof of (((eq Prop) ((f x1) y)) ((x0 (g x1)) y))
% Found ((((((eq_trans Prop) ((f x1) y)) ((f x1) y)) ((x0 (g x1)) y)) ((eq_ref Prop) ((f x1) y))) ((((eq_sym Prop) ((x0 (g x1)) y)) ((f x1) y)) ((eq_ref Prop) ((x0 (g x1)) y)))) as proof of (((eq Prop) ((f x1) y)) ((x0 (g x1)) y))
% Found eq_ref00:=(eq_ref0 ((x0 (g x1)) y)):(((eq Prop) ((x0 (g x1)) y)) ((x0 (g x1)) y))
% Found (eq_ref0 ((x0 (g x1)) y)) as proof of (((eq Prop) ((x0 (g x1)) y)) ((b x1) y))
% Found ((eq_ref Prop) ((x0 (g x1)) y)) as proof of (((eq Prop) ((x0 (g x1)) y)) ((b x1) y))
% Found ((eq_ref Prop) ((x0 (g x1)) y)) as proof of (((eq Prop) ((x0 (g x1)) y)) ((b x1) y))
% Found ((eq_ref Prop) ((x0 (g x1)) y)) as proof of (((eq Prop) ((x0 (g x1)) y)) ((b x1) y))
% Found (eq_sym100 ((eq_ref Prop) ((x0 (g x1)) y))) as proof of (((eq Prop) ((b x1) y)) ((x0 (g x1)) y))
% Found ((eq_sym10 ((b x1) y)) ((eq_ref Prop) ((x0 (g x1)) y))) as proof of (((eq Prop) ((b x1) y)) ((x0 (g x1)) y))
% Found (((eq_sym1 ((x0 (g x1)) y)) ((b x1) y)) ((eq_ref Prop) ((x0 (g x1)) y))) as proof of (((eq Prop) ((b x1) y)) ((x0 (g x1)) y))
% Found ((((eq_sym Prop) ((x0 (g x1)) y)) ((b x1) y)) ((eq_ref Prop) ((x0 (g x1)) y))) as proof of (((eq Prop) ((b x1) y)) ((x0 (g x1)) y))
% Found (fun (y:fofType)=> ((((eq_sym Prop) ((x0 (g x1)) y)) ((b x1) y)) ((eq_ref Prop) ((x0 (g x1)) y)))) as proof of (((eq Prop) ((b x1) y)) ((x0 (g x1)) y))
% Found eq_ref00:=(eq_ref0 ((x0 (g x1)) y)):(((eq Prop) ((x0 (g x1)) y)) ((x0 (g x1)) y))
% Found (eq_ref0 ((x0 (g x1)) y)) as proof of (((eq Prop) ((x0 (g x1)) y)) ((b x1) y))
% Found ((eq_ref Prop) ((x0 (g x1)) y)) as proof of (((eq Prop) ((x0 (g x1)) y)) ((b x1) y))
% Found ((eq_ref Prop) ((x0 (g x1)) y)) as proof of (((eq Prop) ((x0 (g x1)) y)) ((b x1) y))
% Found ((eq_ref Prop) ((x0 (g x1)) y)) as proof of (((eq Prop) ((x0 (g x1)) y)) ((b x1) y))
% Found (eq_sym100 ((eq_ref Prop) ((x0 (g x1)) y))) as proof of (((eq Prop) ((b x1) y)) ((x0 (g x1)) y))
% Found ((eq_sym10 ((b x1) y)) ((eq_ref Prop) ((x0 (g x1)) y))) as proof of (((eq Prop) ((b x1) y)) ((x0 (g x1)) y))
% Found (((eq_sym1 ((x0 (g x1)) y)) ((b x1) y)) ((eq_ref Prop) ((x0 (g x1)) y))) as proof of (((eq Prop) ((b x1) y)) ((x0 (g x1)) y))
% Found ((((eq_sym Prop) ((x0 (g x1)) y)) ((b x1) y)) ((eq_ref Prop) ((x0 (g x1)) y))) as proof of (((eq Prop) ((b x1) y)) ((x0 (g x1)) y))
% Found (fun (y:fofType)=> ((((eq_sym Prop) ((x0 (g x1)) y)) ((b x1) y)) ((eq_ref Prop) ((x0 (g x1)) y)))) as proof of (((eq Prop) ((b x1) y)) ((x0 (g x1)) y))
% Found eq_ref00:=(eq_ref0 ((x0 (g x1)) x2)):(((eq Prop) ((x0 (g x1)) x2)) ((x0 (g x1)) x2))
% Found (eq_ref0 ((x0 (g x1)) x2)) as proof of (((eq Prop) ((x0 (g x1)) x2)) ((f x1) x2))
% Found ((eq_ref Prop) ((x0 (g x1)) x2)) as proof of (((eq Prop) ((x0 (g x1)) x2)) ((f x1) x2))
% Found ((eq_ref Prop) ((x0 (g x1)) x2)) as proof of (((eq Prop) ((x0 (g x1)) x2)) ((f x1) x2))
% Found ((eq_ref Prop) ((x0 (g x1)) x2)) as proof of (((eq Prop) ((x0 (g x1)) x2)) ((f x1) x2))
% Found (eq_sym100 ((eq_ref Prop) ((x0 (g x1)) x2))) as proof of (((eq Prop) ((f x1) x2)) ((x0 (g x1)) x2))
% Found ((eq_sym10 ((f x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2))) as proof of (((eq Prop) ((f x1) x2)) ((x0 (g x1)) x2))
% Found (((eq_sym1 ((x0 (g x1)) x2)) ((f x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2))) as proof of (((eq Prop) ((f x1) x2)) ((x0 (g x1)) x2))
% Found ((((eq_sym Prop) ((x0 (g x1)) x2)) ((f x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2))) as proof of (((eq Prop) ((f x1) x2)) ((x0 (g x1)) x2))
% Found (fun (x2:fofType)=> ((((eq_sym Prop) ((x0 (g x1)) x2)) ((f x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2)))) as proof of (((eq Prop) ((f x1) x2)) ((x0 (g x1)) x2))
% Found (fun (x2:fofType)=> ((((eq_sym Prop) ((x0 (g x1)) x2)) ((f x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2)))) as proof of (forall (x:fofType), (((eq Prop) ((f x1) x)) ((x0 (g x1)) x)))
% Found ((functional_extensionality_dep01000 (fun (x2:fofType)=> ((((eq_sym Prop) ((x0 (g x1)) x2)) ((f x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2))))) (((eq_ref (fofType->Prop)) (f x1)) P)) as proof of ((P (f x1))->(P (x0 (g x1))))
% Found ((functional_extensionality_dep01000 (fun (x2:fofType)=> ((((eq_sym Prop) ((x0 (g x1)) x2)) ((f x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2))))) (((eq_ref (fofType->Prop)) (f x1)) P)) as proof of ((P (f x1))->(P (x0 (g x1))))
% Found (((fun (x2:(forall (x:fofType), (((eq Prop) ((f x1) x)) ((x0 (g x1)) x))))=> ((functional_extensionality_dep0100 x2) (fun (x4:(fofType->Prop))=> ((P (f x1))->(P x4))))) (fun (x2:fofType)=> ((((eq_sym Prop) ((x0 (g x1)) x2)) ((f x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2))))) (((eq_ref (fofType->Prop)) (f x1)) P)) as proof of ((P (f x1))->(P (x0 (g x1))))
% Found (((fun (x2:(forall (x:fofType), (((eq Prop) ((f x1) x)) ((x0 (g x1)) x))))=> (((functional_extensionality_dep010 (x0 (g x1))) x2) (fun (x4:(fofType->Prop))=> ((P (f x1))->(P x4))))) (fun (x2:fofType)=> ((((eq_sym Prop) ((x0 (g x1)) x2)) ((f x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2))))) (((eq_ref (fofType->Prop)) (f x1)) P)) as proof of ((P (f x1))->(P (x0 (g x1))))
% Found (((fun (x2:(forall (x:fofType), (((eq Prop) ((f x1) x)) ((x0 (g x1)) x))))=> ((((functional_extensionality_dep01 (f x1)) (x0 (g x1))) x2) (fun (x4:(fofType->Prop))=> ((P (f x1))->(P x4))))) (fun (x2:fofType)=> ((((eq_sym Prop) ((x0 (g x1)) x2)) ((f x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2))))) (((eq_ref (fofType->Prop)) (f x1)) P)) as proof of ((P (f x1))->(P (x0 (g x1))))
% Found (((fun (x2:(forall (x:fofType), (((eq Prop) ((f x1) x)) ((x0 (g x1)) x))))=> (((((functional_extensionality_dep0 (fun (x4:fofType)=> Prop)) (f x1)) (x0 (g x1))) x2) (fun (x4:(fofType->Prop))=> ((P (f x1))->(P x4))))) (fun (x2:fofType)=> ((((eq_sym Prop) ((x0 (g x1)) x2)) ((f x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2))))) (((eq_ref (fofType->Prop)) (f x1)) P)) as proof of ((P (f x1))->(P (x0 (g x1))))
% Found (fun (P:((fofType->Prop)->Prop))=> (((fun (x2:(forall (x:fofType), (((eq Prop) ((f x1) x)) ((x0 (g x1)) x))))=> (((((functional_extensionality_dep0 (fun (x4:fofType)=> Prop)) (f x1)) (x0 (g x1))) x2) (fun (x4:(fofType->Prop))=> ((P (f x1))->(P x4))))) (fun (x2:fofType)=> ((((eq_sym Prop) ((x0 (g x1)) x2)) ((f x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2))))) (((eq_ref (fofType->Prop)) (f x1)) P))) as proof of ((P (f x1))->(P (x0 (g x1))))
% Found eq_ref00:=(eq_ref0 ((x0 (g x1)) x2)):(((eq Prop) ((x0 (g x1)) x2)) ((x0 (g x1)) x2))
% Found (eq_ref0 ((x0 (g x1)) x2)) as proof of (((eq Prop) ((x0 (g x1)) x2)) ((f x1) x2))
% Found ((eq_ref Prop) ((x0 (g x1)) x2)) as proof of (((eq Prop) ((x0 (g x1)) x2)) ((f x1) x2))
% Found ((eq_ref Prop) ((x0 (g x1)) x2)) as proof of (((eq Prop) ((x0 (g x1)) x2)) ((f x1) x2))
% Found ((eq_ref Prop) ((x0 (g x1)) x2)) as proof of (((eq Prop) ((x0 (g x1)) x2)) ((f x1) x2))
% Found (eq_sym100 ((eq_ref Prop) ((x0 (g x1)) x2))) as proof of (((eq Prop) ((f x1) x2)) ((x0 (g x1)) x2))
% Found ((eq_sym10 ((f x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2))) as proof of (((eq Prop) ((f x1) x2)) ((x0 (g x1)) x2))
% Found (((eq_sym1 ((x0 (g x1)) x2)) ((f x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2))) as proof of (((eq Prop) ((f x1) x2)) ((x0 (g x1)) x2))
% Found ((((eq_sym Prop) ((x0 (g x1)) x2)) ((f x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2))) as proof of (((eq Prop) ((f x1) x2)) ((x0 (g x1)) x2))
% Found (fun (x2:fofType)=> ((((eq_sym Prop) ((x0 (g x1)) x2)) ((f x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2)))) as proof of (((eq Prop) ((f x1) x2)) ((x0 (g x1)) x2))
% Found (fun (x2:fofType)=> ((((eq_sym Prop) ((x0 (g x1)) x2)) ((f x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2)))) as proof of (forall (x:fofType), (((eq Prop) ((f x1) x)) ((x0 (g x1)) x)))
% Found (functional_extensionality_dep01000 (fun (x2:fofType)=> ((((eq_sym Prop) ((x0 (g x1)) x2)) ((f x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2))))) as proof of ((P (f x1))->(P (x0 (g x1))))
% Found (functional_extensionality_dep01000 (fun (x2:fofType)=> ((((eq_sym Prop) ((x0 (g x1)) x2)) ((f x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2))))) as proof of ((P (f x1))->(P (x0 (g x1))))
% Found ((fun (x2:(forall (x:fofType), (((eq Prop) ((f x1) x)) ((x0 (g x1)) x))))=> ((functional_extensionality_dep0100 x2) P)) (fun (x2:fofType)=> ((((eq_sym Prop) ((x0 (g x1)) x2)) ((f x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2))))) as proof of ((P (f x1))->(P (x0 (g x1))))
% Found ((fun (x2:(forall (x:fofType), (((eq Prop) ((f x1) x)) ((x0 (g x1)) x))))=> (((functional_extensionality_dep010 (x0 (g x1))) x2) P)) (fun (x2:fofType)=> ((((eq_sym Prop) ((x0 (g x1)) x2)) ((f x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2))))) as proof of ((P (f x1))->(P (x0 (g x1))))
% Found ((fun (x2:(forall (x:fofType), (((eq Prop) ((f x1) x)) ((x0 (g x1)) x))))=> ((((functional_extensionality_dep01 (f x1)) (x0 (g x1))) x2) P)) (fun (x2:fofType)=> ((((eq_sym Prop) ((x0 (g x1)) x2)) ((f x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2))))) as proof of ((P (f x1))->(P (x0 (g x1))))
% Found ((fun (x2:(forall (x:fofType), (((eq Prop) ((f x1) x)) ((x0 (g x1)) x))))=> (((((functional_extensionality_dep0 (fun (x4:fofType)=> Prop)) (f x1)) (x0 (g x1))) x2) P)) (fun (x2:fofType)=> ((((eq_sym Prop) ((x0 (g x1)) x2)) ((f x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2))))) as proof of ((P (f x1))->(P (x0 (g x1))))
% Found (fun (P:((fofType->Prop)->Prop))=> ((fun (x2:(forall (x:fofType), (((eq Prop) ((f x1) x)) ((x0 (g x1)) x))))=> (((((functional_extensionality_dep0 (fun (x4:fofType)=> Prop)) (f x1)) (x0 (g x1))) x2) P)) (fun (x2:fofType)=> ((((eq_sym Prop) ((x0 (g x1)) x2)) ((f x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2)))))) as proof of ((P (f x1))->(P (x0 (g x1))))
% Found eq_ref00:=(eq_ref0 ((x0 (g x1)) x2)):(((eq Prop) ((x0 (g x1)) x2)) ((x0 (g x1)) x2))
% Found (eq_ref0 ((x0 (g x1)) x2)) as proof of (((eq Prop) ((x0 (g x1)) x2)) ((f x1) x2))
% Found ((eq_ref Prop) ((x0 (g x1)) x2)) as proof of (((eq Prop) ((x0 (g x1)) x2)) ((f x1) x2))
% Found ((eq_ref Prop) ((x0 (g x1)) x2)) as proof of (((eq Prop) ((x0 (g x1)) x2)) ((f x1) x2))
% Found ((eq_ref Prop) ((x0 (g x1)) x2)) as proof of (((eq Prop) ((x0 (g x1)) x2)) ((f x1) x2))
% Found (eq_sym100 ((eq_ref Prop) ((x0 (g x1)) x2))) as proof of (((eq Prop) ((f x1) x2)) ((x0 (g x1)) x2))
% Found ((eq_sym10 ((f x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2))) as proof of (((eq Prop) ((f x1) x2)) ((x0 (g x1)) x2))
% Found (((eq_sym1 ((x0 (g x1)) x2)) ((f x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2))) as proof of (((eq Prop) ((f x1) x2)) ((x0 (g x1)) x2))
% Found ((((eq_sym Prop) ((x0 (g x1)) x2)) ((f x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2))) as proof of (((eq Prop) ((f x1) x2)) ((x0 (g x1)) x2))
% Found (fun (x2:fofType)=> ((((eq_sym Prop) ((x0 (g x1)) x2)) ((f x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2)))) as proof of (((eq Prop) ((f x1) x2)) ((x0 (g x1)) x2))
% Found (fun (x2:fofType)=> ((((eq_sym Prop) ((x0 (g x1)) x2)) ((f x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2)))) as proof of (forall (x:fofType), (((eq Prop) ((f x1) x)) ((x0 (g x1)) x)))
% Found (functional_extensionality01000 (fun (x2:fofType)=> ((((eq_sym Prop) ((x0 (g x1)) x2)) ((f x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2))))) as proof of ((P (f x1))->(P (x0 (g x1))))
% Found (functional_extensionality01000 (fun (x2:fofType)=> ((((eq_sym Prop) ((x0 (g x1)) x2)) ((f x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2))))) as proof of ((P (f x1))->(P (x0 (g x1))))
% Found ((fun (x2:(forall (x:fofType), (((eq Prop) ((f x1) x)) ((x0 (g x1)) x))))=> ((functional_extensionality0100 x2) P)) (fun (x2:fofType)=> ((((eq_sym Prop) ((x0 (g x1)) x2)) ((f x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2))))) as proof of ((P (f x1))->(P (x0 (g x1))))
% Found ((fun (x2:(forall (x:fofType), (((eq Prop) ((f x1) x)) ((x0 (g x1)) x))))=> (((functional_extensionality010 (x0 (g x1))) x2) P)) (fun (x2:fofType)=> ((((eq_sym Prop) ((x0 (g x1)) x2)) ((f x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2))))) as proof of ((P (f x1))->(P (x0 (g x1))))
% Found ((fun (x2:(forall (x:fofType), (((eq Prop) ((f x1) x)) ((x0 (g x1)) x))))=> ((((functional_extensionality01 (f x1)) (x0 (g x1))) x2) P)) (fun (x2:fofType)=> ((((eq_sym Prop) ((x0 (g x1)) x2)) ((f x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2))))) as proof of ((P (f x1))->(P (x0 (g x1))))
% Found ((fun (x2:(forall (x:fofType), (((eq Prop) ((f x1) x)) ((x0 (g x1)) x))))=> (((((functional_extensionality0 Prop) (f x1)) (x0 (g x1))) x2) P)) (fun (x2:fofType)=> ((((eq_sym Prop) ((x0 (g x1)) x2)) ((f x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2))))) as proof of ((P (f x1))->(P (x0 (g x1))))
% Found (fun (P:((fofType->Prop)->Prop))=> ((fun (x2:(forall (x:fofType), (((eq Prop) ((f x1) x)) ((x0 (g x1)) x))))=> (((((functional_extensionality0 Prop) (f x1)) (x0 (g x1))) x2) P)) (fun (x2:fofType)=> ((((eq_sym Prop) ((x0 (g x1)) x2)) ((f x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2)))))) as proof of ((P (f x1))->(P (x0 (g x1))))
% Found eq_ref00:=(eq_ref0 ((x0 (g x1)) x2)):(((eq Prop) ((x0 (g x1)) x2)) ((x0 (g x1)) x2))
% Found (eq_ref0 ((x0 (g x1)) x2)) as proof of (((eq Prop) ((x0 (g x1)) x2)) ((f x1) x2))
% Found ((eq_ref Prop) ((x0 (g x1)) x2)) as proof of (((eq Prop) ((x0 (g x1)) x2)) ((f x1) x2))
% Found ((eq_ref Prop) ((x0 (g x1)) x2)) as proof of (((eq Prop) ((x0 (g x1)) x2)) ((f x1) x2))
% Found ((eq_ref Prop) ((x0 (g x1)) x2)) as proof of (((eq Prop) ((x0 (g x1)) x2)) ((f x1) x2))
% Found (eq_sym100 ((eq_ref Prop) ((x0 (g x1)) x2))) as proof of (((eq Prop) ((f x1) x2)) ((x0 (g x1)) x2))
% Found ((eq_sym10 ((f x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2))) as proof of (((eq Prop) ((f x1) x2)) ((x0 (g x1)) x2))
% Found (((eq_sym1 ((x0 (g x1)) x2)) ((f x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2))) as proof of (((eq Prop) ((f x1) x2)) ((x0 (g x1)) x2))
% Found ((((eq_sym Prop) ((x0 (g x1)) x2)) ((f x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2))) as proof of (((eq Prop) ((f x1) x2)) ((x0 (g x1)) x2))
% Found (fun (x2:fofType)=> ((((eq_sym Prop) ((x0 (g x1)) x2)) ((f x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2)))) as proof of (((eq Prop) ((f x1) x2)) ((x0 (g x1)) x2))
% Found (fun (x2:fofType)=> ((((eq_sym Prop) ((x0 (g x1)) x2)) ((f x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2)))) as proof of (forall (x:fofType), (((eq Prop) ((f x1) x)) ((x0 (g x1)) x)))
% Found ((functional_extensionality01000 (fun (x2:fofType)=> ((((eq_sym Prop) ((x0 (g x1)) x2)) ((f x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2))))) (((eq_ref (fofType->Prop)) (f x1)) P)) as proof of ((P (f x1))->(P (x0 (g x1))))
% Found ((functional_extensionality01000 (fun (x2:fofType)=> ((((eq_sym Prop) ((x0 (g x1)) x2)) ((f x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2))))) (((eq_ref (fofType->Prop)) (f x1)) P)) as proof of ((P (f x1))->(P (x0 (g x1))))
% Found (((fun (x2:(forall (x:fofType), (((eq Prop) ((f x1) x)) ((x0 (g x1)) x))))=> ((functional_extensionality0100 x2) (fun (x4:(fofType->Prop))=> ((P (f x1))->(P x4))))) (fun (x2:fofType)=> ((((eq_sym Prop) ((x0 (g x1)) x2)) ((f x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2))))) (((eq_ref (fofType->Prop)) (f x1)) P)) as proof of ((P (f x1))->(P (x0 (g x1))))
% Found (((fun (x2:(forall (x:fofType), (((eq Prop) ((f x1) x)) ((x0 (g x1)) x))))=> (((functional_extensionality010 (x0 (g x1))) x2) (fun (x4:(fofType->Prop))=> ((P (f x1))->(P x4))))) (fun (x2:fofType)=> ((((eq_sym Prop) ((x0 (g x1)) x2)) ((f x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2))))) (((eq_ref (fofType->Prop)) (f x1)) P)) as proof of ((P (f x1))->(P (x0 (g x1))))
% Found (((fun (x2:(forall (x:fofType), (((eq Prop) ((f x1) x)) ((x0 (g x1)) x))))=> ((((functional_extensionality01 (f x1)) (x0 (g x1))) x2) (fun (x4:(fofType->Prop))=> ((P (f x1))->(P x4))))) (fun (x2:fofType)=> ((((eq_sym Prop) ((x0 (g x1)) x2)) ((f x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2))))) (((eq_ref (fofType->Prop)) (f x1)) P)) as proof of ((P (f x1))->(P (x0 (g x1))))
% Found (((fun (x2:(forall (x:fofType), (((eq Prop) ((f x1) x)) ((x0 (g x1)) x))))=> (((((functional_extensionality0 Prop) (f x1)) (x0 (g x1))) x2) (fun (x4:(fofType->Prop))=> ((P (f x1))->(P x4))))) (fun (x2:fofType)=> ((((eq_sym Prop) ((x0 (g x1)) x2)) ((f x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2))))) (((eq_ref (fofType->Prop)) (f x1)) P)) as proof of ((P (f x1))->(P (x0 (g x1))))
% Found (fun (P:((fofType->Prop)->Prop))=> (((fun (x2:(forall (x:fofType), (((eq Prop) ((f x1) x)) ((x0 (g x1)) x))))=> (((((functional_extensionality0 Prop) (f x1)) (x0 (g x1))) x2) (fun (x4:(fofType->Prop))=> ((P (f x1))->(P x4))))) (fun (x2:fofType)=> ((((eq_sym Prop) ((x0 (g x1)) x2)) ((f x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2))))) (((eq_ref (fofType->Prop)) (f x1)) P))) as proof of ((P (f x1))->(P (x0 (g x1))))
% Found eq_ref00:=(eq_ref0 ((x0 (g x1)) x2)):(((eq Prop) ((x0 (g x1)) x2)) ((x0 (g x1)) x2))
% Found (eq_ref0 ((x0 (g x1)) x2)) as proof of (((eq Prop) ((x0 (g x1)) x2)) ((f x1) x2))
% Found ((eq_ref Prop) ((x0 (g x1)) x2)) as proof of (((eq Prop) ((x0 (g x1)) x2)) ((f x1) x2))
% Found ((eq_ref Prop) ((x0 (g x1)) x2)) as proof of (((eq Prop) ((x0 (g x1)) x2)) ((f x1) x2))
% Found ((eq_ref Prop) ((x0 (g x1)) x2)) as proof of (((eq Prop) ((x0 (g x1)) x2)) ((f x1) x2))
% Found (eq_sym100 ((eq_ref Prop) ((x0 (g x1)) x2))) as proof of (((eq Prop) ((f x1) x2)) ((x0 (g x1)) x2))
% Found ((eq_sym10 ((f x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2))) as proof of (((eq Prop) ((f x1) x2)) ((x0 (g x1)) x2))
% Found (((eq_sym1 ((x0 (g x1)) x2)) ((f x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2))) as proof of (((eq Prop) ((f x1) x2)) ((x0 (g x1)) x2))
% Found ((((eq_sym Prop) ((x0 (g x1)) x2)) ((f x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2))) as proof of (((eq Prop) ((f x1) x2)) ((x0 (g x1)) x2))
% Found (fun (x2:fofType)=> ((((eq_sym Prop) ((x0 (g x1)) x2)) ((f x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2)))) as proof of (((eq Prop) ((f x1) x2)) ((x0 (g x1)) x2))
% Found (fun (x2:fofType)=> ((((eq_sym Prop) ((x0 (g x1)) x2)) ((f x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2)))) as proof of (forall (x:fofType), (((eq Prop) ((f x1) x)) ((x0 (g x1)) x)))
% Found (functional_extensionality_dep0100 (fun (x2:fofType)=> ((((eq_sym Prop) ((x0 (g x1)) x2)) ((f x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2))))) as proof of (((eq (fofType->Prop)) (f x1)) (x0 (g x1)))
% Found ((functional_extensionality_dep010 (x0 (g x1))) (fun (x2:fofType)=> ((((eq_sym Prop) ((x0 (g x1)) x2)) ((f x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2))))) as proof of (((eq (fofType->Prop)) (f x1)) (x0 (g x1)))
% Found (((functional_extensionality_dep01 (f x1)) (x0 (g x1))) (fun (x2:fofType)=> ((((eq_sym Prop) ((x0 (g x1)) x2)) ((f x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2))))) as proof of (((eq (fofType->Prop)) (f x1)) (x0 (g x1)))
% Found ((((functional_extensionality_dep0 (fun (x4:fofType)=> Prop)) (f x1)) (x0 (g x1))) (fun (x2:fofType)=> ((((eq_sym Prop) ((x0 (g x1)) x2)) ((f x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2))))) as proof of (((eq (fofType->Prop)) (f x1)) (x0 (g x1)))
% Found ((((functional_extensionality_dep0 (fun (x4:fofType)=> Prop)) (f x1)) (x0 (g x1))) (fun (x2:fofType)=> ((((eq_sym Prop) ((x0 (g x1)) x2)) ((f x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2))))) as proof of (((eq (fofType->Prop)) (f x1)) (x0 (g x1)))
% Found ((eq_sym0000 ((((functional_extensionality_dep0 (fun (x4:fofType)=> Prop)) (f x1)) (x0 (g x1))) (fun (x2:fofType)=> ((((eq_sym Prop) ((x0 (g x1)) x2)) ((f x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2)))))) (((eq_ref (fofType->Prop)) (x0 (g x1))) P)) as proof of ((P (x0 (g x1)))->(P (f x1)))
% Found ((eq_sym0000 ((((functional_extensionality_dep0 (fun (x4:fofType)=> Prop)) (f x1)) (x0 (g x1))) (fun (x2:fofType)=> ((((eq_sym Prop) ((x0 (g x1)) x2)) ((f x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2)))))) (((eq_ref (fofType->Prop)) (x0 (g x1))) P)) as proof of ((P (x0 (g x1)))->(P (f x1)))
% Found (((fun (x2:(((eq (fofType->Prop)) (f x1)) (x0 (g x1))))=> ((eq_sym000 x2) (fun (x4:(fofType->Prop))=> ((P (x0 (g x1)))->(P x4))))) ((((functional_extensionality_dep0 (fun (x4:fofType)=> Prop)) (f x1)) (x0 (g x1))) (fun (x2:fofType)=> ((((eq_sym Prop) ((x0 (g x1)) x2)) ((f x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2)))))) (((eq_ref (fofType->Prop)) (x0 (g x1))) P)) as proof of ((P (x0 (g x1)))->(P (f x1)))
% Found (((fun (x2:(((eq (fofType->Prop)) (f x1)) (x0 (g x1))))=> (((eq_sym00 (x0 (g x1))) x2) (fun (x4:(fofType->Prop))=> ((P (x0 (g x1)))->(P x4))))) ((((functional_extensionality_dep0 (fun (x4:fofType)=> Prop)) (f x1)) (x0 (g x1))) (fun (x2:fofType)=> ((((eq_sym Prop) ((x0 (g x1)) x2)) ((f x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2)))))) (((eq_ref (fofType->Prop)) (x0 (g x1))) P)) as proof of ((P (x0 (g x1)))->(P (f x1)))
% Found (((fun (x2:(((eq (fofType->Prop)) (f x1)) (x0 (g x1))))=> ((((eq_sym0 (f x1)) (x0 (g x1))) x2) (fun (x4:(fofType->Prop))=> ((P (x0 (g x1)))->(P x4))))) ((((functional_extensionality_dep0 (fun (x4:fofType)=> Prop)) (f x1)) (x0 (g x1))) (fun (x2:fofType)=> ((((eq_sym Prop) ((x0 (g x1)) x2)) ((f x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2)))))) (((eq_ref (fofType->Prop)) (x0 (g x1))) P)) as proof of ((P (x0 (g x1)))->(P (f x1)))
% Found (((fun (x2:(((eq (fofType->Prop)) (f x1)) (x0 (g x1))))=> (((((eq_sym (fofType->Prop)) (f x1)) (x0 (g x1))) x2) (fun (x4:(fofType->Prop))=> ((P (x0 (g x1)))->(P x4))))) ((((functional_extensionality_dep0 (fun (x4:fofType)=> Prop)) (f x1)) (x0 (g x1))) (fun (x2:fofType)=> ((((eq_sym Prop) ((x0 (g x1)) x2)) ((f x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2)))))) (((eq_ref (fofType->Prop)) (x0 (g x1))) P)) as proof of ((P (x0 (g x1)))->(P (f x1)))
% Found (fun (P:((fofType->Prop)->Prop))=> (((fun (x2:(((eq (fofType->Prop)) (f x1)) (x0 (g x1))))=> (((((eq_sym (fofType->Prop)) (f x1)) (x0 (g x1))) x2) (fun (x4:(fofType->Prop))=> ((P (x0 (g x1)))->(P x4))))) ((((functional_extensionality_dep0 (fun (x4:fofType)=> Prop)) (f x1)) (x0 (g x1))) (fun (x2:fofType)=> ((((eq_sym Prop) ((x0 (g x1)) x2)) ((f x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2)))))) (((eq_ref (fofType->Prop)) (x0 (g x1))) P))) as proof of ((P (x0 (g x1)))->(P (f x1)))
% Found eq_ref00:=(eq_ref0 ((x0 (g x1)) x2)):(((eq Prop) ((x0 (g x1)) x2)) ((x0 (g x1)) x2))
% Found (eq_ref0 ((x0 (g x1)) x2)) as proof of (((eq Prop) ((x0 (g x1)) x2)) ((f x1) x2))
% Found ((eq_ref Prop) ((x0 (g x1)) x2)) as proof of (((eq Prop) ((x0 (g x1)) x2)) ((f x1) x2))
% Found ((eq_ref Prop) ((x0 (g x1)) x2)) as proof of (((eq Prop) ((x0 (g x1)) x2)) ((f x1) x2))
% Found ((eq_ref Prop) ((x0 (g x1)) x2)) as proof of (((eq Prop) ((x0 (g x1)) x2)) ((f x1) x2))
% Found (eq_sym100 ((eq_ref Prop) ((x0 (g x1)) x2))) as proof of (((eq Prop) ((f x1) x2)) ((x0 (g x1)) x2))
% Found ((eq_sym10 ((f x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2))) as proof of (((eq Prop) ((f x1) x2)) ((x0 (g x1)) x2))
% Found (((eq_sym1 ((x0 (g x1)) x2)) ((f x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2))) as proof of (((eq Prop) ((f x1) x2)) ((x0 (g x1)) x2))
% Found ((((eq_sym Prop) ((x0 (g x1)) x2)) ((f x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2))) as proof of (((eq Prop) ((f x1) x2)) ((x0 (g x1)) x2))
% Found (fun (x2:fofType)=> ((((eq_sym Prop) ((x0 (g x1)) x2)) ((f x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2)))) as proof of (((eq Prop) ((f x1) x2)) ((x0 (g x1)) x2))
% Found (fun (x2:fofType)=> ((((eq_sym Prop) ((x0 (g x1)) x2)) ((f x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2)))) as proof of (forall (x:fofType), (((eq Prop) ((f x1) x)) ((x0 (g x1)) x)))
% Found (functional_extensionality_dep0100 (fun (x2:fofType)=> ((((eq_sym Prop) ((x0 (g x1)) x2)) ((f x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2))))) as proof of (((eq (fofType->Prop)) (f x1)) (x0 (g x1)))
% Found ((functional_extensionality_dep010 (x0 (g x1))) (fun (x2:fofType)=> ((((eq_sym Prop) ((x0 (g x1)) x2)) ((f x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2))))) as proof of (((eq (fofType->Prop)) (f x1)) (x0 (g x1)))
% Found (((functional_extensionality_dep01 (f x1)) (x0 (g x1))) (fun (x2:fofType)=> ((((eq_sym Prop) ((x0 (g x1)) x2)) ((f x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2))))) as proof of (((eq (fofType->Prop)) (f x1)) (x0 (g x1)))
% Found ((((functional_extensionality_dep0 (fun (x4:fofType)=> Prop)) (f x1)) (x0 (g x1))) (fun (x2:fofType)=> ((((eq_sym Prop) ((x0 (g x1)) x2)) ((f x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2))))) as proof of (((eq (fofType->Prop)) (f x1)) (x0 (g x1)))
% Found ((((functional_extensionality_dep0 (fun (x4:fofType)=> Prop)) (f x1)) (x0 (g x1))) (fun (x2:fofType)=> ((((eq_sym Prop) ((x0 (g x1)) x2)) ((f x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2))))) as proof of (((eq (fofType->Prop)) (f x1)) (x0 (g x1)))
% Found (eq_sym0000 ((((functional_extensionality_dep0 (fun (x4:fofType)=> Prop)) (f x1)) (x0 (g x1))) (fun (x2:fofType)=> ((((eq_sym Prop) ((x0 (g x1)) x2)) ((f x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2)))))) as proof of ((P (x0 (g x1)))->(P (f x1)))
% Found (eq_sym0000 ((((functional_extensionality_dep0 (fun (x4:fofType)=> Prop)) (f x1)) (x0 (g x1))) (fun (x2:fofType)=> ((((eq_sym Prop) ((x0 (g x1)) x2)) ((f x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2)))))) as proof of ((P (x0 (g x1)))->(P (f x1)))
% Found ((fun (x2:(((eq (fofType->Prop)) (f x1)) (x0 (g x1))))=> ((eq_sym000 x2) P)) ((((functional_extensionality_dep0 (fun (x4:fofType)=> Prop)) (f x1)) (x0 (g x1))) (fun (x2:fofType)=> ((((eq_sym Prop) ((x0 (g x1)) x2)) ((f x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2)))))) as proof of ((P (x0 (g x1)))->(P (f x1)))
% Found ((fun (x2:(((eq (fofType->Prop)) (f x1)) (x0 (g x1))))=> (((eq_sym00 (x0 (g x1))) x2) P)) ((((functional_extensionality_dep0 (fun (x4:fofType)=> Prop)) (f x1)) (x0 (g x1))) (fun (x2:fofType)=> ((((eq_sym Prop) ((x0 (g x1)) x2)) ((f x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2)))))) as proof of ((P (x0 (g x1)))->(P (f x1)))
% Found ((fun (x2:(((eq (fofType->Prop)) (f x1)) (x0 (g x1))))=> ((((eq_sym0 (f x1)) (x0 (g x1))) x2) P)) ((((functional_extensionality_dep0 (fun (x4:fofType)=> Prop)) (f x1)) (x0 (g x1))) (fun (x2:fofType)=> ((((eq_sym Prop) ((x0 (g x1)) x2)) ((f x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2)))))) as proof of ((P (x0 (g x1)))->(P (f x1)))
% Found ((fun (x2:(((eq (fofType->Prop)) (f x1)) (x0 (g x1))))=> (((((eq_sym (fofType->Prop)) (f x1)) (x0 (g x1))) x2) P)) ((((functional_extensionality_dep0 (fun (x4:fofType)=> Prop)) (f x1)) (x0 (g x1))) (fun (x2:fofType)=> ((((eq_sym Prop) ((x0 (g x1)) x2)) ((f x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2)))))) as proof of ((P (x0 (g x1)))->(P (f x1)))
% Found (fun (P:((fofType->Prop)->Prop))=> ((fun (x2:(((eq (fofType->Prop)) (f x1)) (x0 (g x1))))=> (((((eq_sym (fofType->Prop)) (f x1)) (x0 (g x1))) x2) P)) ((((functional_extensionality_dep0 (fun (x4:fofType)=> Prop)) (f x1)) (x0 (g x1))) (fun (x2:fofType)=> ((((eq_sym Prop) ((x0 (g x1)) x2)) ((f x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2))))))) as proof of ((P (x0 (g x1)))->(P (f x1)))
% Found eq_ref00:=(eq_ref0 ((x0 (g x1)) x2)):(((eq Prop) ((x0 (g x1)) x2)) ((x0 (g x1)) x2))
% Found (eq_ref0 ((x0 (g x1)) x2)) as proof of (((eq Prop) ((x0 (g x1)) x2)) ((f x1) x2))
% Found ((eq_ref Prop) ((x0 (g x1)) x2)) as proof of (((eq Prop) ((x0 (g x1)) x2)) ((f x1) x2))
% Found ((eq_ref Prop) ((x0 (g x1)) x2)) as proof of (((eq Prop) ((x0 (g x1)) x2)) ((f x1) x2))
% Found ((eq_ref Prop) ((x0 (g x1)) x2)) as proof of (((eq Prop) ((x0 (g x1)) x2)) ((f x1) x2))
% Found (eq_sym100 ((eq_ref Prop) ((x0 (g x1)) x2))) as proof of (((eq Prop) ((f x1) x2)) ((x0 (g x1)) x2))
% Found ((eq_sym10 ((f x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2))) as proof of (((eq Prop) ((f x1) x2)) ((x0 (g x1)) x2))
% Found (((eq_sym1 ((x0 (g x1)) x2)) ((f x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2))) as proof of (((eq Prop) ((f x1) x2)) ((x0 (g x1)) x2))
% Found ((((eq_sym Prop) ((x0 (g x1)) x2)) ((f x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2))) as proof of (((eq Prop) ((f x1) x2)) ((x0 (g x1)) x2))
% Found (fun (x2:fofType)=> ((((eq_sym Prop) ((x0 (g x1)) x2)) ((f x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2)))) as proof of (((eq Prop) ((f x1) x2)) ((x0 (g x1)) x2))
% Found (fun (x2:fofType)=> ((((eq_sym Prop) ((x0 (g x1)) x2)) ((f x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2)))) as proof of (forall (x:fofType), (((eq Prop) ((f x1) x)) ((x0 (g x1)) x)))
% Found (functional_extensionality0100 (fun (x2:fofType)=> ((((eq_sym Prop) ((x0 (g x1)) x2)) ((f x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2))))) as proof of (((eq (fofType->Prop)) (f x1)) (x0 (g x1)))
% Found ((functional_extensionality010 (x0 (g x1))) (fun (x2:fofType)=> ((((eq_sym Prop) ((x0 (g x1)) x2)) ((f x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2))))) as proof of (((eq (fofType->Prop)) (f x1)) (x0 (g x1)))
% Found (((functional_extensionality01 (f x1)) (x0 (g x1))) (fun (x2:fofType)=> ((((eq_sym Prop) ((x0 (g x1)) x2)) ((f x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2))))) as proof of (((eq (fofType->Prop)) (f x1)) (x0 (g x1)))
% Found ((((functional_extensionality0 Prop) (f x1)) (x0 (g x1))) (fun (x2:fofType)=> ((((eq_sym Prop) ((x0 (g x1)) x2)) ((f x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2))))) as proof of (((eq (fofType->Prop)) (f x1)) (x0 (g x1)))
% Found ((((functional_extensionality0 Prop) (f x1)) (x0 (g x1))) (fun (x2:fofType)=> ((((eq_sym Prop) ((x0 (g x1)) x2)) ((f x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2))))) as proof of (((eq (fofType->Prop)) (f x1)) (x0 (g x1)))
% Found (eq_sym0000 ((((functional_extensionality0 Prop) (f x1)) (x0 (g x1))) (fun (x2:fofType)=> ((((eq_sym Prop) ((x0 (g x1)) x2)) ((f x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2)))))) as proof of ((P (x0 (g x1)))->(P (f x1)))
% Found (eq_sym0000 ((((functional_extensionality0 Prop) (f x1)) (x0 (g x1))) (fun (x2:fofType)=> ((((eq_sym Prop) ((x0 (g x1)) x2)) ((f x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2)))))) as proof of ((P (x0 (g x1)))->(P (f x1)))
% Found ((fun (x2:(((eq (fofType->Prop)) (f x1)) (x0 (g x1))))=> ((eq_sym000 x2) P)) ((((functional_extensionality0 Prop) (f x1)) (x0 (g x1))) (fun (x2:fofType)=> ((((eq_sym Prop) ((x0 (g x1)) x2)) ((f x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2)))))) as proof of ((P (x0 (g x1)))->(P (f x1)))
% Found ((fun (x2:(((eq (fofType->Prop)) (f x1)) (x0 (g x1))))=> (((eq_sym00 (x0 (g x1))) x2) P)) ((((functional_extensionality0 Prop) (f x1)) (x0 (g x1))) (fun (x2:fofType)=> ((((eq_sym Prop) ((x0 (g x1)) x2)) ((f x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2)))))) as proof of ((P (x0 (g x1)))->(P (f x1)))
% Found ((fun (x2:(((eq (fofType->Prop)) (f x1)) (x0 (g x1))))=> ((((eq_sym0 (f x1)) (x0 (g x1))) x2) P)) ((((functional_extensionality0 Prop) (f x1)) (x0 (g x1))) (fun (x2:fofType)=> ((((eq_sym Prop) ((x0 (g x1)) x2)) ((f x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2)))))) as proof of ((P (x0 (g x1)))->(P (f x1)))
% Found ((fun (x2:(((eq (fofType->Prop)) (f x1)) (x0 (g x1))))=> (((((eq_sym (fofType->Prop)) (f x1)) (x0 (g x1))) x2) P)) ((((functional_extensionality0 Prop) (f x1)) (x0 (g x1))) (fun (x2:fofType)=> ((((eq_sym Prop) ((x0 (g x1)) x2)) ((f x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2)))))) as proof of ((P (x0 (g x1)))->(P (f x1)))
% Found (fun (P:((fofType->Prop)->Prop))=> ((fun (x2:(((eq (fofType->Prop)) (f x1)) (x0 (g x1))))=> (((((eq_sym (fofType->Prop)) (f x1)) (x0 (g x1))) x2) P)) ((((functional_extensionality0 Prop) (f x1)) (x0 (g x1))) (fun (x2:fofType)=> ((((eq_sym Prop) ((x0 (g x1)) x2)) ((f x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2))))))) as proof of ((P (x0 (g x1)))->(P (f x1)))
% Found eq_ref00:=(eq_ref0 ((x0 (g x1)) x2)):(((eq Prop) ((x0 (g x1)) x2)) ((x0 (g x1)) x2))
% Found (eq_ref0 ((x0 (g x1)) x2)) as proof of (((eq Prop) ((x0 (g x1)) x2)) ((f x1) x2))
% Found ((eq_ref Prop) ((x0 (g x1)) x2)) as proof of (((eq Prop) ((x0 (g x1)) x2)) ((f x1) x2))
% Found ((eq_ref Prop) ((x0 (g x1)) x2)) as proof of (((eq Prop) ((x0 (g x1)) x2)) ((f x1) x2))
% Found ((eq_ref Prop) ((x0 (g x1)) x2)) as proof of (((eq Prop) ((x0 (g x1)) x2)) ((f x1) x2))
% Found (eq_sym100 ((eq_ref Prop) ((x0 (g x1)) x2))) as proof of (((eq Prop) ((f x1) x2)) ((x0 (g x1)) x2))
% Found ((eq_sym10 ((f x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2))) as proof of (((eq Prop) ((f x1) x2)) ((x0 (g x1)) x2))
% Found (((eq_sym1 ((x0 (g x1)) x2)) ((f x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2))) as proof of (((eq Prop) ((f x1) x2)) ((x0 (g x1)) x2))
% Found ((((eq_sym Prop) ((x0 (g x1)) x2)) ((f x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2))) as proof of (((eq Prop) ((f x1) x2)) ((x0 (g x1)) x2))
% Found (fun (x2:fofType)=> ((((eq_sym Prop) ((x0 (g x1)) x2)) ((f x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2)))) as proof of (((eq Prop) ((f x1) x2)) ((x0 (g x1)) x2))
% Found (fun (x2:fofType)=> ((((eq_sym Prop) ((x0 (g x1)) x2)) ((f x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2)))) as proof of (forall (x:fofType), (((eq Prop) ((f x1) x)) ((x0 (g x1)) x)))
% Found (functional_extensionality0100 (fun (x2:fofType)=> ((((eq_sym Prop) ((x0 (g x1)) x2)) ((f x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2))))) as proof of (((eq (fofType->Prop)) (f x1)) (x0 (g x1)))
% Found ((functional_extensionality010 (x0 (g x1))) (fun (x2:fofType)=> ((((eq_sym Prop) ((x0 (g x1)) x2)) ((f x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2))))) as proof of (((eq (fofType->Prop)) (f x1)) (x0 (g x1)))
% Found (((functional_extensionality01 (f x1)) (x0 (g x1))) (fun (x2:fofType)=> ((((eq_sym Prop) ((x0 (g x1)) x2)) ((f x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2))))) as proof of (((eq (fofType->Prop)) (f x1)) (x0 (g x1)))
% Found ((((functional_extensionality0 Prop) (f x1)) (x0 (g x1))) (fun (x2:fofType)=> ((((eq_sym Prop) ((x0 (g x1)) x2)) ((f x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2))))) as proof of (((eq (fofType->Prop)) (f x1)) (x0 (g x1)))
% Found ((((functional_extensionality0 Prop) (f x1)) (x0 (g x1))) (fun (x2:fofType)=> ((((eq_sym Prop) ((x0 (g x1)) x2)) ((f x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2))))) as proof of (((eq (fofType->Prop)) (f x1)) (x0 (g x1)))
% Found ((eq_sym0000 ((((functional_extensionality0 Prop) (f x1)) (x0 (g x1))) (fun (x2:fofType)=> ((((eq_sym Prop) ((x0 (g x1)) x2)) ((f x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2)))))) (((eq_ref (fofType->Prop)) (x0 (g x1))) P)) as proof of ((P (x0 (g x1)))->(P (f x1)))
% Found ((eq_sym0000 ((((functional_extensionality0 Prop) (f x1)) (x0 (g x1))) (fun (x2:fofType)=> ((((eq_sym Prop) ((x0 (g x1)) x2)) ((f x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2)))))) (((eq_ref (fofType->Prop)) (x0 (g x1))) P)) as proof of ((P (x0 (g x1)))->(P (f x1)))
% Found (((fun (x2:(((eq (fofType->Prop)) (f x1)) (x0 (g x1))))=> ((eq_sym000 x2) (fun (x4:(fofType->Prop))=> ((P (x0 (g x1)))->(P x4))))) ((((functional_extensionality0 Prop) (f x1)) (x0 (g x1))) (fun (x2:fofType)=> ((((eq_sym Prop) ((x0 (g x1)) x2)) ((f x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2)))))) (((eq_ref (fofType->Prop)) (x0 (g x1))) P)) as proof of ((P (x0 (g x1)))->(P (f x1)))
% Found (((fun (x2:(((eq (fofType->Prop)) (f x1)) (x0 (g x1))))=> (((eq_sym00 (x0 (g x1))) x2) (fun (x4:(fofType->Prop))=> ((P (x0 (g x1)))->(P x4))))) ((((functional_extensionality0 Prop) (f x1)) (x0 (g x1))) (fun (x2:fofType)=> ((((eq_sym Prop) ((x0 (g x1)) x2)) ((f x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2)))))) (((eq_ref (fofType->Prop)) (x0 (g x1))) P)) as proof of ((P (x0 (g x1)))->(P (f x1)))
% Found (((fun (x2:(((eq (fofType->Prop)) (f x1)) (x0 (g x1))))=> ((((eq_sym0 (f x1)) (x0 (g x1))) x2) (fun (x4:(fofType->Prop))=> ((P (x0 (g x1)))->(P x4))))) ((((functional_extensionality0 Prop) (f x1)) (x0 (g x1))) (fun (x2:fofType)=> ((((eq_sym Prop) ((x0 (g x1)) x2)) ((f x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2)))))) (((eq_ref (fofType->Prop)) (x0 (g x1))) P)) as proof of ((P (x0 (g x1)))->(P (f x1)))
% Found (((fun (x2:(((eq (fofType->Prop)) (f x1)) (x0 (g x1))))=> (((((eq_sym (fofType->Prop)) (f x1)) (x0 (g x1))) x2) (fun (x4:(fofType->Prop))=> ((P (x0 (g x1)))->(P x4))))) ((((functional_extensionality0 Prop) (f x1)) (x0 (g x1))) (fun (x2:fofType)=> ((((eq_sym Prop) ((x0 (g x1)) x2)) ((f x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2)))))) (((eq_ref (fofType->Prop)) (x0 (g x1))) P)) as proof of ((P (x0 (g x1)))->(P (f x1)))
% Found (fun (P:((fofType->Prop)->Prop))=> (((fun (x2:(((eq (fofType->Prop)) (f x1)) (x0 (g x1))))=> (((((eq_sym (fofType->Prop)) (f x1)) (x0 (g x1))) x2) (fun (x4:(fofType->Prop))=> ((P (x0 (g x1)))->(P x4))))) ((((functional_extensionality0 Prop) (f x1)) (x0 (g x1))) (fun (x2:fofType)=> ((((eq_sym Prop) ((x0 (g x1)) x2)) ((f x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2)))))) (((eq_ref (fofType->Prop)) (x0 (g x1))) P))) as proof of ((P (x0 (g x1)))->(P (f x1)))
% Found eq_ref000:=(eq_ref00 P):((P ((x0 (g x1)) y))->(P ((x0 (g x1)) y)))
% Found (eq_ref00 P) as proof of ((P ((x0 (g x1)) y))->(P ((b x1) y)))
% Found ((eq_ref0 ((x0 (g x1)) y)) P) as proof of ((P ((x0 (g x1)) y))->(P ((b x1) y)))
% Found (((eq_ref Prop) ((x0 (g x1)) y)) P) as proof of ((P ((x0 (g x1)) y))->(P ((b x1) y)))
% Found (((eq_ref Prop) ((x0 (g x1)) y)) P) as proof of ((P ((x0 (g x1)) y))->(P ((b x1) y)))
% Found (fun (P:(Prop->Prop))=> (((eq_ref Prop) ((x0 (g x1)) y)) P)) as proof of ((P ((x0 (g x1)) y))->(P ((b x1) y)))
% Found (fun (y:fofType) (P:(Prop->Prop))=> (((eq_ref Prop) ((x0 (g x1)) y)) P)) as proof of (((eq Prop) ((x0 (g x1)) y)) ((b x1) y))
% Found eq_ref00:=(eq_ref0 ((x0 (g x1)) x2)):(((eq Prop) ((x0 (g x1)) x2)) ((x0 (g x1)) x2))
% Found (eq_ref0 ((x0 (g x1)) x2)) as proof of (((eq Prop) ((x0 (g x1)) x2)) ((f x1) x2))
% Found ((eq_ref Prop) ((x0 (g x1)) x2)) as proof of (((eq Prop) ((x0 (g x1)) x2)) ((f x1) x2))
% Found ((eq_ref Prop) ((x0 (g x1)) x2)) as proof of (((eq Prop) ((x0 (g x1)) x2)) ((f x1) x2))
% Found ((eq_ref Prop) ((x0 (g x1)) x2)) as proof of (((eq Prop) ((x0 (g x1)) x2)) ((f x1) x2))
% Found (eq_sym100 ((eq_ref Prop) ((x0 (g x1)) x2))) as proof of (((eq Prop) ((f x1) x2)) ((x0 (g x1)) x2))
% Found ((eq_sym10 ((f x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2))) as proof of (((eq Prop) ((f x1) x2)) ((x0 (g x1)) x2))
% Found (((eq_sym1 ((x0 (g x1)) x2)) ((f x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2))) as proof of (((eq Prop) ((f x1) x2)) ((x0 (g x1)) x2))
% Found ((((eq_sym Prop) ((x0 (g x1)) x2)) ((f x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2))) as proof of (((eq Prop) ((f x1) x2)) ((x0 (g x1)) x2))
% Found (fun (x2:fofType)=> ((((eq_sym Prop) ((x0 (g x1)) x2)) ((f x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2)))) as proof of (((eq Prop) ((f x1) x2)) ((x0 (g x1)) x2))
% Found (fun (x2:fofType)=> ((((eq_sym Prop) ((x0 (g x1)) x2)) ((f x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2)))) as proof of (forall (x:fofType), (((eq Prop) ((f x1) x)) ((x0 (g x1)) x)))
% Found (functional_extensionality_dep0100 (fun (x2:fofType)=> ((((eq_sym Prop) ((x0 (g x1)) x2)) ((f x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2))))) as proof of (((eq (fofType->Prop)) (f x1)) (x0 (g x1)))
% Found ((functional_extensionality_dep010 (x0 (g x1))) (fun (x2:fofType)=> ((((eq_sym Prop) ((x0 (g x1)) x2)) ((f x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2))))) as proof of (((eq (fofType->Prop)) (f x1)) (x0 (g x1)))
% Found (((functional_extensionality_dep01 (f x1)) (x0 (g x1))) (fun (x2:fofType)=> ((((eq_sym Prop) ((x0 (g x1)) x2)) ((f x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2))))) as proof of (((eq (fofType->Prop)) (f x1)) (x0 (g x1)))
% Found ((((functional_extensionality_dep0 (fun (x4:fofType)=> Prop)) (f x1)) (x0 (g x1))) (fun (x2:fofType)=> ((((eq_sym Prop) ((x0 (g x1)) x2)) ((f x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2))))) as proof of (((eq (fofType->Prop)) (f x1)) (x0 (g x1)))
% Found ((((functional_extensionality_dep0 (fun (x4:fofType)=> Prop)) (f x1)) (x0 (g x1))) (fun (x2:fofType)=> ((((eq_sym Prop) ((x0 (g x1)) x2)) ((f x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2))))) as proof of (((eq (fofType->Prop)) (f x1)) (x0 (g x1)))
% Found (eq_sym000 ((((functional_extensionality_dep0 (fun (x4:fofType)=> Prop)) (f x1)) (x0 (g x1))) (fun (x2:fofType)=> ((((eq_sym Prop) ((x0 (g x1)) x2)) ((f x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2)))))) as proof of (((eq (fofType->Prop)) (x0 (g x1))) (f x1))
% Found ((eq_sym00 (x0 (g x1))) ((((functional_extensionality_dep0 (fun (x4:fofType)=> Prop)) (f x1)) (x0 (g x1))) (fun (x2:fofType)=> ((((eq_sym Prop) ((x0 (g x1)) x2)) ((f x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2)))))) as proof of (((eq (fofType->Prop)) (x0 (g x1))) (f x1))
% Found (((eq_sym0 (f x1)) (x0 (g x1))) ((((functional_extensionality_dep0 (fun (x4:fofType)=> Prop)) (f x1)) (x0 (g x1))) (fun (x2:fofType)=> ((((eq_sym Prop) ((x0 (g x1)) x2)) ((f x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2)))))) as proof of (((eq (fofType->Prop)) (x0 (g x1))) (f x1))
% Found ((((eq_sym (fofType->Prop)) (f x1)) (x0 (g x1))) ((((functional_extensionality_dep0 (fun (x4:fofType)=> Prop)) (f x1)) (x0 (g x1))) (fun (x2:fofType)=> ((((eq_sym Prop) ((x0 (g x1)) x2)) ((f x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2)))))) as proof of (((eq (fofType->Prop)) (x0 (g x1))) (f x1))
% Found eq_ref00:=(eq_ref0 ((x0 (g x1)) x2)):(((eq Prop) ((x0 (g x1)) x2)) ((x0 (g x1)) x2))
% Found (eq_ref0 ((x0 (g x1)) x2)) as proof of (((eq Prop) ((x0 (g x1)) x2)) ((f x1) x2))
% Found ((eq_ref Prop) ((x0 (g x1)) x2)) as proof of (((eq Prop) ((x0 (g x1)) x2)) ((f x1) x2))
% Found ((eq_ref Prop) ((x0 (g x1)) x2)) as proof of (((eq Prop) ((x0 (g x1)) x2)) ((f x1) x2))
% Found ((eq_ref Prop) ((x0 (g x1)) x2)) as proof of (((eq Prop) ((x0 (g x1)) x2)) ((f x1) x2))
% Found (eq_sym100 ((eq_ref Prop) ((x0 (g x1)) x2))) as proof of (((eq Prop) ((f x1) x2)) ((x0 (g x1)) x2))
% Found ((eq_sym10 ((f x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2))) as proof of (((eq Prop) ((f x1) x2)) ((x0 (g x1)) x2))
% Found (((eq_sym1 ((x0 (g x1)) x2)) ((f x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2))) as proof of (((eq Prop) ((f x1) x2)) ((x0 (g x1)) x2))
% Found ((((eq_sym Prop) ((x0 (g x1)) x2)) ((f x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2))) as proof of (((eq Prop) ((f x1) x2)) ((x0 (g x1)) x2))
% Found (fun (x2:fofType)=> ((((eq_sym Prop) ((x0 (g x1)) x2)) ((f x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2)))) as proof of (((eq Prop) ((f x1) x2)) ((x0 (g x1)) x2))
% Found (fun (x2:fofType)=> ((((eq_sym Prop) ((x0 (g x1)) x2)) ((f x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2)))) as proof of (forall (x:fofType), (((eq Prop) ((f x1) x)) ((x0 (g x1)) x)))
% Found (functional_extensionality_dep0100 (fun (x2:fofType)=> ((((eq_sym Prop) ((x0 (g x1)) x2)) ((f x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2))))) as proof of (((eq (fofType->Prop)) (f x1)) (x0 (g x1)))
% Found ((functional_extensionality_dep010 (x0 (g x1))) (fun (x2:fofType)=> ((((eq_sym Prop) ((x0 (g x1)) x2)) ((f x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2))))) as proof of (((eq (fofType->Prop)) (f x1)) (x0 (g x1)))
% Found (((functional_extensionality_dep01 (f x1)) (x0 (g x1))) (fun (x2:fofType)=> ((((eq_sym Prop) ((x0 (g x1)) x2)) ((f x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2))))) as proof of (((eq (fofType->Prop)) (f x1)) (x0 (g x1)))
% Found ((((functional_extensionality_dep0 (fun (x4:fofType)=> Prop)) (f x1)) (x0 (g x1))) (fun (x2:fofType)=> ((((eq_sym Prop) ((x0 (g x1)) x2)) ((f x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2))))) as proof of (((eq (fofType->Prop)) (f x1)) (x0 (g x1)))
% Found ((((functional_extensionality_dep0 (fun (x4:fofType)=> Prop)) (f x1)) (x0 (g x1))) (fun (x2:fofType)=> ((((eq_sym Prop) ((x0 (g x1)) x2)) ((f x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2))))) as proof of (((eq (fofType->Prop)) (f x1)) (x0 (g x1)))
% Found (eq_sym000 ((((functional_extensionality_dep0 (fun (x4:fofType)=> Prop)) (f x1)) (x0 (g x1))) (fun (x2:fofType)=> ((((eq_sym Prop) ((x0 (g x1)) x2)) ((f x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2)))))) as proof of (((eq (fofType->Prop)) (x0 (g x1))) (f x1))
% Found ((eq_sym00 (x0 (g x1))) ((((functional_extensionality_dep0 (fun (x4:fofType)=> Prop)) (f x1)) (x0 (g x1))) (fun (x2:fofType)=> ((((eq_sym Prop) ((x0 (g x1)) x2)) ((f x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2)))))) as proof of (((eq (fofType->Prop)) (x0 (g x1))) (f x1))
% Found (((eq_sym0 (f x1)) (x0 (g x1))) ((((functional_extensionality_dep0 (fun (x4:fofType)=> Prop)) (f x1)) (x0 (g x1))) (fun (x2:fofType)=> ((((eq_sym Prop) ((x0 (g x1)) x2)) ((f x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2)))))) as proof of (((eq (fofType->Prop)) (x0 (g x1))) (f x1))
% Found ((((eq_sym (fofType->Prop)) (f x1)) (x0 (g x1))) ((((functional_extensionality_dep0 (fun (x4:fofType)=> Prop)) (f x1)) (x0 (g x1))) (fun (x2:fofType)=> ((((eq_sym Prop) ((x0 (g x1)) x2)) ((f x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2)))))) as proof of (((eq (fofType->Prop)) (x0 (g x1))) (f x1))
% Found eq_ref00:=(eq_ref0 ((x0 (g x1)) x2)):(((eq Prop) ((x0 (g x1)) x2)) ((x0 (g x1)) x2))
% Found (eq_ref0 ((x0 (g x1)) x2)) as proof of (((eq Prop) ((x0 (g x1)) x2)) ((f x1) x2))
% Found ((eq_ref Prop) ((x0 (g x1)) x2)) as proof of (((eq Prop) ((x0 (g x1)) x2)) ((f x1) x2))
% Found ((eq_ref Prop) ((x0 (g x1)) x2)) as proof of (((eq Prop) ((x0 (g x1)) x2)) ((f x1) x2))
% Found ((eq_ref Prop) ((x0 (g x1)) x2)) as proof of (((eq Prop) ((x0 (g x1)) x2)) ((f x1) x2))
% Found (eq_sym100 ((eq_ref Prop) ((x0 (g x1)) x2))) as proof of (((eq Prop) ((f x1) x2)) ((x0 (g x1)) x2))
% Found ((eq_sym10 ((f x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2))) as proof of (((eq Prop) ((f x1) x2)) ((x0 (g x1)) x2))
% Found (((eq_sym1 ((x0 (g x1)) x2)) ((f x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2))) as proof of (((eq Prop) ((f x1) x2)) ((x0 (g x1)) x2))
% Found ((((eq_sym Prop) ((x0 (g x1)) x2)) ((f x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2))) as proof of (((eq Prop) ((f x1) x2)) ((x0 (g x1)) x2))
% Found (fun (x2:fofType)=> ((((eq_sym Prop) ((x0 (g x1)) x2)) ((f x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2)))) as proof of (((eq Prop) ((f x1) x2)) ((x0 (g x1)) x2))
% Found (fun (x2:fofType)=> ((((eq_sym Prop) ((x0 (g x1)) x2)) ((f x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2)))) as proof of (forall (x:fofType), (((eq Prop) ((f x1) x)) ((x0 (g x1)) x)))
% Found (functional_extensionality0100 (fun (x2:fofType)=> ((((eq_sym Prop) ((x0 (g x1)) x2)) ((f x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2))))) as proof of (((eq (fofType->Prop)) (f x1)) (x0 (g x1)))
% Found ((functional_extensionality010 (x0 (g x1))) (fun (x2:fofType)=> ((((eq_sym Prop) ((x0 (g x1)) x2)) ((f x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2))))) as proof of (((eq (fofType->Prop)) (f x1)) (x0 (g x1)))
% Found (((functional_extensionality01 (f x1)) (x0 (g x1))) (fun (x2:fofType)=> ((((eq_sym Prop) ((x0 (g x1)) x2)) ((f x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2))))) as proof of (((eq (fofType->Prop)) (f x1)) (x0 (g x1)))
% Found ((((functional_extensionality0 Prop) (f x1)) (x0 (g x1))) (fun (x2:fofType)=> ((((eq_sym Prop) ((x0 (g x1)) x2)) ((f x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2))))) as proof of (((eq (fofType->Prop)) (f x1)) (x0 (g x1)))
% Found ((((functional_extensionality0 Prop) (f x1)) (x0 (g x1))) (fun (x2:fofType)=> ((((eq_sym Prop) ((x0 (g x1)) x2)) ((f x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2))))) as proof of (((eq (fofType->Prop)) (f x1)) (x0 (g x1)))
% Found (eq_sym000 ((((functional_extensionality0 Prop) (f x1)) (x0 (g x1))) (fun (x2:fofType)=> ((((eq_sym Prop) ((x0 (g x1)) x2)) ((f x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2)))))) as proof of (((eq (fofType->Prop)) (x0 (g x1))) (f x1))
% Found ((eq_sym00 (x0 (g x1))) ((((functional_extensionality0 Prop) (f x1)) (x0 (g x1))) (fun (x2:fofType)=> ((((eq_sym Prop) ((x0 (g x1)) x2)) ((f x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2)))))) as proof of (((eq (fofType->Prop)) (x0 (g x1))) (f x1))
% Found (((eq_sym0 (f x1)) (x0 (g x1))) ((((functional_extensionality0 Prop) (f x1)) (x0 (g x1))) (fun (x2:fofType)=> ((((eq_sym Prop) ((x0 (g x1)) x2)) ((f x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2)))))) as proof of (((eq (fofType->Prop)) (x0 (g x1))) (f x1))
% Found ((((eq_sym (fofType->Prop)) (f x1)) (x0 (g x1))) ((((functional_extensionality0 Prop) (f x1)) (x0 (g x1))) (fun (x2:fofType)=> ((((eq_sym Prop) ((x0 (g x1)) x2)) ((f x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2)))))) as proof of (((eq (fofType->Prop)) (x0 (g x1))) (f x1))
% Found eq_ref00:=(eq_ref0 ((x0 (g x1)) x2)):(((eq Prop) ((x0 (g x1)) x2)) ((x0 (g x1)) x2))
% Found (eq_ref0 ((x0 (g x1)) x2)) as proof of (((eq Prop) ((x0 (g x1)) x2)) ((f x1) x2))
% Found ((eq_ref Prop) ((x0 (g x1)) x2)) as proof of (((eq Prop) ((x0 (g x1)) x2)) ((f x1) x2))
% Found ((eq_ref Prop) ((x0 (g x1)) x2)) as proof of (((eq Prop) ((x0 (g x1)) x2)) ((f x1) x2))
% Found ((eq_ref Prop) ((x0 (g x1)) x2)) as proof of (((eq Prop) ((x0 (g x1)) x2)) ((f x1) x2))
% Found (eq_sym100 ((eq_ref Prop) ((x0 (g x1)) x2))) as proof of (((eq Prop) ((f x1) x2)) ((x0 (g x1)) x2))
% Found ((eq_sym10 ((f x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2))) as proof of (((eq Prop) ((f x1) x2)) ((x0 (g x1)) x2))
% Found (((eq_sym1 ((x0 (g x1)) x2)) ((f x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2))) as proof of (((eq Prop) ((f x1) x2)) ((x0 (g x1)) x2))
% Found ((((eq_sym Prop) ((x0 (g x1)) x2)) ((f x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2))) as proof of (((eq Prop) ((f x1) x2)) ((x0 (g x1)) x2))
% Found (fun (x2:fofType)=> ((((eq_sym Prop) ((x0 (g x1)) x2)) ((f x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2)))) as proof of (((eq Prop) ((f x1) x2)) ((x0 (g x1)) x2))
% Found (fun (x2:fofType)=> ((((eq_sym Prop) ((x0 (g x1)) x2)) ((f x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2)))) as proof of (forall (x:fofType), (((eq Prop) ((f x1) x)) ((x0 (g x1)) x)))
% Found (functional_extensionality0100 (fun (x2:fofType)=> ((((eq_sym Prop) ((x0 (g x1)) x2)) ((f x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2))))) as proof of (((eq (fofType->Prop)) (f x1)) (x0 (g x1)))
% Found ((functional_extensionality010 (x0 (g x1))) (fun (x2:fofType)=> ((((eq_sym Prop) ((x0 (g x1)) x2)) ((f x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2))))) as proof of (((eq (fofType->Prop)) (f x1)) (x0 (g x1)))
% Found (((functional_extensionality01 (f x1)) (x0 (g x1))) (fun (x2:fofType)=> ((((eq_sym Prop) ((x0 (g x1)) x2)) ((f x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2))))) as proof of (((eq (fofType->Prop)) (f x1)) (x0 (g x1)))
% Found ((((functional_extensionality0 Prop) (f x1)) (x0 (g x1))) (fun (x2:fofType)=> ((((eq_sym Prop) ((x0 (g x1)) x2)) ((f x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2))))) as proof of (((eq (fofType->Prop)) (f x1)) (x0 (g x1)))
% Found ((((functional_extensionality0 Prop) (f x1)) (x0 (g x1))) (fun (x2:fofType)=> ((((eq_sym Prop) ((x0 (g x1)) x2)) ((f x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2))))) as proof of (((eq (fofType->Prop)) (f x1)) (x0 (g x1)))
% Found (eq_sym000 ((((functional_extensionality0 Prop) (f x1)) (x0 (g x1))) (fun (x2:fofType)=> ((((eq_sym Prop) ((x0 (g x1)) x2)) ((f x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2)))))) as proof of (((eq (fofType->Prop)) (x0 (g x1))) (f x1))
% Found ((eq_sym00 (x0 (g x1))) ((((functional_extensionality0 Prop) (f x1)) (x0 (g x1))) (fun (x2:fofType)=> ((((eq_sym Prop) ((x0 (g x1)) x2)) ((f x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2)))))) as proof of (((eq (fofType->Prop)) (x0 (g x1))) (f x1))
% Found (((eq_sym0 (f x1)) (x0 (g x1))) ((((functional_extensionality0 Prop) (f x1)) (x0 (g x1))) (fun (x2:fofType)=> ((((eq_sym Prop) ((x0 (g x1)) x2)) ((f x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2)))))) as proof of (((eq (fofType->Prop)) (x0 (g x1))) (f x1))
% Found ((((eq_sym (fofType->Prop)) (f x1)) (x0 (g x1))) ((((functional_extensionality0 Prop) (f x1)) (x0 (g x1))) (fun (x2:fofType)=> ((((eq_sym Prop) ((x0 (g x1)) x2)) ((f x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2)))))) as proof of (((eq (fofType->Prop)) (x0 (g x1))) (f x1))
% Found eq_ref00:=(eq_ref0 ((x0 (g x1)) x2)):(((eq Prop) ((x0 (g x1)) x2)) ((x0 (g x1)) x2))
% Found (eq_ref0 ((x0 (g x1)) x2)) as proof of (((eq Prop) ((x0 (g x1)) x2)) ((f x1) x2))
% Found ((eq_ref Prop) ((x0 (g x1)) x2)) as proof of (((eq Prop) ((x0 (g x1)) x2)) ((f x1) x2))
% Found ((eq_ref Prop) ((x0 (g x1)) x2)) as proof of (((eq Prop) ((x0 (g x1)) x2)) ((f x1) x2))
% Found ((eq_ref Prop) ((x0 (g x1)) x2)) as proof of (((eq Prop) ((x0 (g x1)) x2)) ((f x1) x2))
% Found (eq_sym100 ((eq_ref Prop) ((x0 (g x1)) x2))) as proof of (((eq Prop) ((f x1) x2)) ((x0 (g x1)) x2))
% Found ((eq_sym10 ((f x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2))) as proof of (((eq Prop) ((f x1) x2)) ((x0 (g x1)) x2))
% Found (((eq_sym1 ((x0 (g x1)) x2)) ((f x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2))) as proof of (((eq Prop) ((f x1) x2)) ((x0 (g x1)) x2))
% Found ((((eq_sym Prop) ((x0 (g x1)) x2)) ((f x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2))) as proof of (((eq Prop) ((f x1) x2)) ((x0 (g x1)) x2))
% Found (fun (x2:fofType)=> ((((eq_sym Prop) ((x0 (g x1)) x2)) ((f x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2)))) as proof of (((eq Prop) ((f x1) x2)) ((x0 (g x1)) x2))
% Found (fun (x2:fofType)=> ((((eq_sym Prop) ((x0 (g x1)) x2)) ((f x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2)))) as proof of (forall (x:fofType), (((eq Prop) ((f x1) x)) ((x0 (g x1)) x)))
% Found (functional_extensionality_dep0100 (fun (x2:fofType)=> ((((eq_sym Prop) ((x0 (g x1)) x2)) ((f x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2))))) as proof of (((eq (fofType->Prop)) (f x1)) (x0 (g x1)))
% Found ((functional_extensionality_dep010 (x0 (g x1))) (fun (x2:fofType)=> ((((eq_sym Prop) ((x0 (g x1)) x2)) ((f x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2))))) as proof of (((eq (fofType->Prop)) (f x1)) (x0 (g x1)))
% Found (((functional_extensionality_dep01 (f x1)) (x0 (g x1))) (fun (x2:fofType)=> ((((eq_sym Prop) ((x0 (g x1)) x2)) ((f x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2))))) as proof of (((eq (fofType->Prop)) (f x1)) (x0 (g x1)))
% Found ((((functional_extensionality_dep0 (fun (x4:fofType)=> Prop)) (f x1)) (x0 (g x1))) (fun (x2:fofType)=> ((((eq_sym Prop) ((x0 (g x1)) x2)) ((f x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2))))) as proof of (((eq (fofType->Prop)) (f x1)) (x0 (g x1)))
% Found eq_ref00:=(eq_ref0 ((x0 (g x1)) x2)):(((eq Prop) ((x0 (g x1)) x2)) ((x0 (g x1)) x2))
% Found (eq_ref0 ((x0 (g x1)) x2)) as proof of (((eq Prop) ((x0 (g x1)) x2)) ((f x1) x2))
% Found ((eq_ref Prop) ((x0 (g x1)) x2)) as proof of (((eq Prop) ((x0 (g x1)) x2)) ((f x1) x2))
% Found ((eq_ref Prop) ((x0 (g x1)) x2)) as proof of (((eq Prop) ((x0 (g x1)) x2)) ((f x1) x2))
% Found ((eq_ref Prop) ((x0 (g x1)) x2)) as proof of (((eq Prop) ((x0 (g x1)) x2)) ((f x1) x2))
% Found (eq_sym100 ((eq_ref Prop) ((x0 (g x1)) x2))) as proof of (((eq Prop) ((f x1) x2)) ((x0 (g x1)) x2))
% Found ((eq_sym10 ((f x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2))) as proof of (((eq Prop) ((f x1) x2)) ((x0 (g x1)) x2))
% Found (((eq_sym1 ((x0 (g x1)) x2)) ((f x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2))) as proof of (((eq Prop) ((f x1) x2)) ((x0 (g x1)) x2))
% Found ((((eq_sym Prop) ((x0 (g x1)) x2)) ((f x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2))) as proof of (((eq Prop) ((f x1) x2)) ((x0 (g x1)) x2))
% Found (fun (x2:fofType)=> ((((eq_sym Prop) ((x0 (g x1)) x2)) ((f x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2)))) as proof of (((eq Prop) ((f x1) x2)) ((x0 (g x1)) x2))
% Found (fun (x2:fofType)=> ((((eq_sym Prop) ((x0 (g x1)) x2)) ((f x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2)))) as proof of (forall (x:fofType), (((eq Prop) ((f x1) x)) ((x0 (g x1)) x)))
% Found (functional_extensionality0100 (fun (x2:fofType)=> ((((eq_sym Prop) ((x0 (g x1)) x2)) ((f x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2))))) as proof of (((eq (fofType->Prop)) (f x1)) (x0 (g x1)))
% Found ((functional_extensionality010 (x0 (g x1))) (fun (x2:fofType)=> ((((eq_sym Prop) ((x0 (g x1)) x2)) ((f x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2))))) as proof of (((eq (fofType->Prop)) (f x1)) (x0 (g x1)))
% Found (((functional_extensionality01 (f x1)) (x0 (g x1))) (fun (x2:fofType)=> ((((eq_sym Prop) ((x0 (g x1)) x2)) ((f x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2))))) as proof of (((eq (fofType->Prop)) (f x1)) (x0 (g x1)))
% Found ((((functional_extensionality0 Prop) (f x1)) (x0 (g x1))) (fun (x2:fofType)=> ((((eq_sym Prop) ((x0 (g x1)) x2)) ((f x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2))))) as proof of (((eq (fofType->Prop)) (f x1)) (x0 (g x1)))
% Found eq_ref00:=(eq_ref0 ((x0 (g x1)) x2)):(((eq Prop) ((x0 (g x1)) x2)) ((x0 (g x1)) x2))
% Found (eq_ref0 ((x0 (g x1)) x2)) as proof of (((eq Prop) ((x0 (g x1)) x2)) ((f x1) x2))
% Found ((eq_ref Prop) ((x0 (g x1)) x2)) as proof of (((eq Prop) ((x0 (g x1)) x2)) ((f x1) x2))
% Found ((eq_ref Prop) ((x0 (g x1)) x2)) as proof of (((eq Prop) ((x0 (g x1)) x2)) ((f x1) x2))
% Found ((eq_ref Prop) ((x0 (g x1)) x2)) as proof of (((eq Prop) ((x0 (g x1)) x2)) ((f x1) x2))
% Found (eq_sym100 ((eq_ref Prop) ((x0 (g x1)) x2))) as proof of (((eq Prop) ((f x1) x2)) ((x0 (g x1)) x2))
% Found ((eq_sym10 ((f x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2))) as proof of (((eq Prop) ((f x1) x2)) ((x0 (g x1)) x2))
% Found (((eq_sym1 ((x0 (g x1)) x2)) ((f x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2))) as proof of (((eq Prop) ((f x1) x2)) ((x0 (g x1)) x2))
% Found ((((eq_sym Prop) ((x0 (g x1)) x2)) ((f x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2))) as proof of (((eq Prop) ((f x1) x2)) ((x0 (g x1)) x2))
% Found (fun (x2:fofType)=> ((((eq_sym Prop) ((x0 (g x1)) x2)) ((f x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2)))) as proof of (((eq Prop) ((f x1) x2)) ((x0 (g x1)) x2))
% Found (fun (x2:fofType)=> ((((eq_sym Prop) ((x0 (g x1)) x2)) ((f x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2)))) as proof of (forall (x:fofType), (((eq Prop) ((f x1) x)) ((x0 (g x1)) x)))
% Found (functional_extensionality0100 (fun (x2:fofType)=> ((((eq_sym Prop) ((x0 (g x1)) x2)) ((f x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2))))) as proof of (((eq (fofType->Prop)) (f x1)) (x0 (g x1)))
% Found ((functional_extensionality010 (x0 (g x1))) (fun (x2:fofType)=> ((((eq_sym Prop) ((x0 (g x1)) x2)) ((f x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2))))) as proof of (((eq (fofType->Prop)) (f x1)) (x0 (g x1)))
% Found (((functional_extensionality01 (f x1)) (x0 (g x1))) (fun (x2:fofType)=> ((((eq_sym Prop) ((x0 (g x1)) x2)) ((f x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2))))) as proof of (((eq (fofType->Prop)) (f x1)) (x0 (g x1)))
% Found ((((functional_extensionality0 Prop) (f x1)) (x0 (g x1))) (fun (x2:fofType)=> ((((eq_sym Prop) ((x0 (g x1)) x2)) ((f x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2))))) as proof of (((eq (fofType->Prop)) (f x1)) (x0 (g x1)))
% Found eq_ref00:=(eq_ref0 ((x0 (g x1)) x2)):(((eq Prop) ((x0 (g x1)) x2)) ((x0 (g x1)) x2))
% Found (eq_ref0 ((x0 (g x1)) x2)) as proof of (((eq Prop) ((x0 (g x1)) x2)) ((f x1) x2))
% Found ((eq_ref Prop) ((x0 (g x1)) x2)) as proof of (((eq Prop) ((x0 (g x1)) x2)) ((f x1) x2))
% Found ((eq_ref Prop) ((x0 (g x1)) x2)) as proof of (((eq Prop) ((x0 (g x1)) x2)) ((f x1) x2))
% Found ((eq_ref Prop) ((x0 (g x1)) x2)) as proof of (((eq Prop) ((x0 (g x1)) x2)) ((f x1) x2))
% Found (eq_sym100 ((eq_ref Prop) ((x0 (g x1)) x2))) as proof of (((eq Prop) ((f x1) x2)) ((x0 (g x1)) x2))
% Found ((eq_sym10 ((f x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2))) as proof of (((eq Prop) ((f x1) x2)) ((x0 (g x1)) x2))
% Found (((eq_sym1 ((x0 (g x1)) x2)) ((f x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2))) as proof of (((eq Prop) ((f x1) x2)) ((x0 (g x1)) x2))
% Found ((((eq_sym Prop) ((x0 (g x1)) x2)) ((f x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2))) as proof of (((eq Prop) ((f x1) x2)) ((x0 (g x1)) x2))
% Found (fun (x2:fofType)=> ((((eq_sym Prop) ((x0 (g x1)) x2)) ((f x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2)))) as proof of (((eq Prop) ((f x1) x2)) ((x0 (g x1)) x2))
% Found (fun (x2:fofType)=> ((((eq_sym Prop) ((x0 (g x1)) x2)) ((f x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2)))) as proof of (forall (x:fofType), (((eq Prop) ((f x1) x)) ((x0 (g x1)) x)))
% Found (functional_extensionality_dep0100 (fun (x2:fofType)=> ((((eq_sym Prop) ((x0 (g x1)) x2)) ((f x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2))))) as proof of (((eq (fofType->Prop)) (f x1)) (x0 (g x1)))
% Found ((functional_extensionality_dep010 (x0 (g x1))) (fun (x2:fofType)=> ((((eq_sym Prop) ((x0 (g x1)) x2)) ((f x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2))))) as proof of (((eq (fofType->Prop)) (f x1)) (x0 (g x1)))
% Found (((functional_extensionality_dep01 (f x1)) (x0 (g x1))) (fun (x2:fofType)=> ((((eq_sym Prop) ((x0 (g x1)) x2)) ((f x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2))))) as proof of (((eq (fofType->Prop)) (f x1)) (x0 (g x1)))
% Found ((((functional_extensionality_dep0 (fun (x4:fofType)=> Prop)) (f x1)) (x0 (g x1))) (fun (x2:fofType)=> ((((eq_sym Prop) ((x0 (g x1)) x2)) ((f x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2))))) as proof of (((eq (fofType->Prop)) (f x1)) (x0 (g x1)))
% Found eq_ref00:=(eq_ref0 ((x0 (g x1)) x2)):(((eq Prop) ((x0 (g x1)) x2)) ((x0 (g x1)) x2))
% Found (eq_ref0 ((x0 (g x1)) x2)) as proof of (((eq Prop) ((x0 (g x1)) x2)) ((f x1) x2))
% Found ((eq_ref Prop) ((x0 (g x1)) x2)) as proof of (((eq Prop) ((x0 (g x1)) x2)) ((f x1) x2))
% Found ((eq_ref Prop) ((x0 (g x1)) x2)) as proof of (((eq Prop) ((x0 (g x1)) x2)) ((f x1) x2))
% Found ((eq_ref Prop) ((x0 (g x1)) x2)) as proof of (((eq Prop) ((x0 (g x1)) x2)) ((f x1) x2))
% Found (eq_sym100 ((eq_ref Prop) ((x0 (g x1)) x2))) as proof of (((eq Prop) ((f x1) x2)) ((x0 (g x1)) x2))
% Found ((eq_sym10 ((f x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2))) as proof of (((eq Prop) ((f x1) x2)) ((x0 (g x1)) x2))
% Found (((eq_sym1 ((x0 (g x1)) x2)) ((f x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2))) as proof of (((eq Prop) ((f x1) x2)) ((x0 (g x1)) x2))
% Found ((((eq_sym Prop) ((x0 (g x1)) x2)) ((f x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2))) as proof of (((eq Prop) ((f x1) x2)) ((x0 (g x1)) x2))
% Found (fun (x2:fofType)=> ((((eq_sym Prop) ((x0 (g x1)) x2)) ((f x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2)))) as proof of (((eq Prop) ((f x1) x2)) ((x0 (g x1)) x2))
% Found (fun (x2:fofType)=> ((((eq_sym Prop) ((x0 (g x1)) x2)) ((f x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2)))) as proof of (forall (x:fofType), (((eq Prop) ((f x1) x)) ((x0 (g x1)) x)))
% Found (functional_extensionality_dep0100 (fun (x2:fofType)=> ((((eq_sym Prop) ((x0 (g x1)) x2)) ((f x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2))))) as proof of (((eq (fofType->Prop)) (f x1)) (x0 (g x1)))
% Found ((functional_extensionality_dep010 (x0 (g x1))) (fun (x2:fofType)=> ((((eq_sym Prop) ((x0 (g x1)) x2)) ((f x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2))))) as proof of (((eq (fofType->Prop)) (f x1)) (x0 (g x1)))
% Found (((functional_extensionality_dep01 (f x1)) (x0 (g x1))) (fun (x2:fofType)=> ((((eq_sym Prop) ((x0 (g x1)) x2)) ((f x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2))))) as proof of (((eq (fofType->Prop)) (f x1)) (x0 (g x1)))
% Found ((((functional_extensionality_dep0 (fun (x4:fofType)=> Prop)) (f x1)) (x0 (g x1))) (fun (x2:fofType)=> ((((eq_sym Prop) ((x0 (g x1)) x2)) ((f x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2))))) as proof of (((eq (fofType->Prop)) (f x1)) (x0 (g x1)))
% Found eq_ref00:=(eq_ref0 ((x0 (g x1)) x2)):(((eq Prop) ((x0 (g x1)) x2)) ((x0 (g x1)) x2))
% Found (eq_ref0 ((x0 (g x1)) x2)) as proof of (((eq Prop) ((x0 (g x1)) x2)) ((f x1) x2))
% Found ((eq_ref Prop) ((x0 (g x1)) x2)) as proof of (((eq Prop) ((x0 (g x1)) x2)) ((f x1) x2))
% Found ((eq_ref Prop) ((x0 (g x1)) x2)) as proof of (((eq Prop) ((x0 (g x1)) x2)) ((f x1) x2))
% Found ((eq_ref Prop) ((x0 (g x1)) x2)) as proof of (((eq Prop) ((x0 (g x1)) x2)) ((f x1) x2))
% Found (eq_sym100 ((eq_ref Prop) ((x0 (g x1)) x2))) as proof of (((eq Prop) ((f x1) x2)) ((x0 (g x1)) x2))
% Found ((eq_sym10 ((f x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2))) as proof of (((eq Prop) ((f x1) x2)) ((x0 (g x1)) x2))
% Found (((eq_sym1 ((x0 (g x1)) x2)) ((f x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2))) as proof of (((eq Prop) ((f x1) x2)) ((x0 (g x1)) x2))
% Found ((((eq_sym Prop) ((x0 (g x1)) x2)) ((f x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2))) as proof of (((eq Prop) ((f x1) x2)) ((x0 (g x1)) x2))
% Found (fun (x2:fofType)=> ((((eq_sym Prop) ((x0 (g x1)) x2)) ((f x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2)))) as proof of (((eq Prop) ((f x1) x2)) ((x0 (g x1)) x2))
% Found (fun (x2:fofType)=> ((((eq_sym Prop) ((x0 (g x1)) x2)) ((f x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2)))) as proof of (forall (x:fofType), (((eq Prop) ((f x1) x)) ((x0 (g x1)) x)))
% Found (functional_extensionality_dep0100 (fun (x2:fofType)=> ((((eq_sym Prop) ((x0 (g x1)) x2)) ((f x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2))))) as proof of (((eq (fofType->Prop)) (f x1)) (x0 (g x1)))
% Found ((functional_extensionality_dep010 (x0 (g x1))) (fun (x2:fofType)=> ((((eq_sym Prop) ((x0 (g x1)) x2)) ((f x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2))))) as proof of (((eq (fofType->Prop)) (f x1)) (x0 (g x1)))
% Found (((functional_extensionality_dep01 (f x1)) (x0 (g x1))) (fun (x2:fofType)=> ((((eq_sym Prop) ((x0 (g x1)) x2)) ((f x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2))))) as proof of (((eq (fofType->Prop)) (f x1)) (x0 (g x1)))
% Found ((((functional_extensionality_dep0 (fun (x4:fofType)=> Prop)) (f x1)) (x0 (g x1))) (fun (x2:fofType)=> ((((eq_sym Prop) ((x0 (g x1)) x2)) ((f x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2))))) as proof of (((eq (fofType->Prop)) (f x1)) (x0 (g x1)))
% Found eq_ref00:=(eq_ref0 ((x0 (g x1)) x2)):(((eq Prop) ((x0 (g x1)) x2)) ((x0 (g x1)) x2))
% Found (eq_ref0 ((x0 (g x1)) x2)) as proof of (((eq Prop) ((x0 (g x1)) x2)) ((f x1) x2))
% Found ((eq_ref Prop) ((x0 (g x1)) x2)) as proof of (((eq Prop) ((x0 (g x1)) x2)) ((f x1) x2))
% Found ((eq_ref Prop) ((x0 (g x1)) x2)) as proof of (((eq Prop) ((x0 (g x1)) x2)) ((f x1) x2))
% Found ((eq_ref Prop) ((x0 (g x1)) x2)) as proof of (((eq Prop) ((x0 (g x1)) x2)) ((f x1) x2))
% Found (eq_sym100 ((eq_ref Prop) ((x0 (g x1)) x2))) as proof of (((eq Prop) ((f x1) x2)) ((x0 (g x1)) x2))
% Found ((eq_sym10 ((f x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2))) as proof of (((eq Prop) ((f x1) x2)) ((x0 (g x1)) x2))
% Found (((eq_sym1 ((x0 (g x1)) x2)) ((f x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2))) as proof of (((eq Prop) ((f x1) x2)) ((x0 (g x1)) x2))
% Found ((((eq_sym Prop) ((x0 (g x1)) x2)) ((f x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2))) as proof of (((eq Prop) ((f x1) x2)) ((x0 (g x1)) x2))
% Found (fun (x2:fofType)=> ((((eq_sym Prop) ((x0 (g x1)) x2)) ((f x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2)))) as proof of (((eq Prop) ((f x1) x2)) ((x0 (g x1)) x2))
% Found (fun (x2:fofType)=> ((((eq_sym Prop) ((x0 (g x1)) x2)) ((f x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2)))) as proof of (forall (x:fofType), (((eq Prop) ((f x1) x)) ((x0 (g x1)) x)))
% Found (functional_extensionality0100 (fun (x2:fofType)=> ((((eq_sym Prop) ((x0 (g x1)) x2)) ((f x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2))))) as proof of (((eq (fofType->Prop)) (f x1)) (x0 (g x1)))
% Found ((functional_extensionality010 (x0 (g x1))) (fun (x2:fofType)=> ((((eq_sym Prop) ((x0 (g x1)) x2)) ((f x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2))))) as proof of (((eq (fofType->Prop)) (f x1)) (x0 (g x1)))
% Found (((functional_extensionality01 (f x1)) (x0 (g x1))) (fun (x2:fofType)=> ((((eq_sym Prop) ((x0 (g x1)) x2)) ((f x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2))))) as proof of (((eq (fofType->Prop)) (f x1)) (x0 (g x1)))
% Found ((((functional_extensionality0 Prop) (f x1)) (x0 (g x1))) (fun (x2:fofType)=> ((((eq_sym Prop) ((x0 (g x1)) x2)) ((f x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2))))) as proof of (((eq (fofType->Prop)) (f x1)) (x0 (g x1)))
% Found eq_ref00:=(eq_ref0 ((x0 (g x1)) x2)):(((eq Prop) ((x0 (g x1)) x2)) ((x0 (g x1)) x2))
% Found (eq_ref0 ((x0 (g x1)) x2)) as proof of (((eq Prop) ((x0 (g x1)) x2)) ((f x1) x2))
% Found ((eq_ref Prop) ((x0 (g x1)) x2)) as proof of (((eq Prop) ((x0 (g x1)) x2)) ((f x1) x2))
% Found ((eq_ref Prop) ((x0 (g x1)) x2)) as proof of (((eq Prop) ((x0 (g x1)) x2)) ((f x1) x2))
% Found ((eq_ref Prop) ((x0 (g x1)) x2)) as proof of (((eq Prop) ((x0 (g x1)) x2)) ((f x1) x2))
% Found (eq_sym100 ((eq_ref Prop) ((x0 (g x1)) x2))) as proof of (((eq Prop) ((f x1) x2)) ((x0 (g x1)) x2))
% Found ((eq_sym10 ((f x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2))) as proof of (((eq Prop) ((f x1) x2)) ((x0 (g x1)) x2))
% Found (((eq_sym1 ((x0 (g x1)) x2)) ((f x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2))) as proof of (((eq Prop) ((f x1) x2)) ((x0 (g x1)) x2))
% Found ((((eq_sym Prop) ((x0 (g x1)) x2)) ((f x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2))) as proof of (((eq Prop) ((f x1) x2)) ((x0 (g x1)) x2))
% Found (fun (x2:fofType)=> ((((eq_sym Prop) ((x0 (g x1)) x2)) ((f x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2)))) as proof of (((eq Prop) ((f x1) x2)) ((x0 (g x1)) x2))
% Found (fun (x2:fofType)=> ((((eq_sym Prop) ((x0 (g x1)) x2)) ((f x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2)))) as proof of (forall (x:fofType), (((eq Prop) ((f x1) x)) ((x0 (g x1)) x)))
% Found (functional_extensionality0100 (fun (x2:fofType)=> ((((eq_sym Prop) ((x0 (g x1)) x2)) ((f x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2))))) as proof of (((eq (fofType->Prop)) (f x1)) (x0 (g x1)))
% Found ((functional_extensionality010 (x0 (g x1))) (fun (x2:fofType)=> ((((eq_sym Prop) ((x0 (g x1)) x2)) ((f x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2))))) as proof of (((eq (fofType->Prop)) (f x1)) (x0 (g x1)))
% Found (((functional_extensionality01 (f x1)) (x0 (g x1))) (fun (x2:fofType)=> ((((eq_sym Prop) ((x0 (g x1)) x2)) ((f x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2))))) as proof of (((eq (fofType->Prop)) (f x1)) (x0 (g x1)))
% Found ((((functional_extensionality0 Prop) (f x1)) (x0 (g x1))) (fun (x2:fofType)=> ((((eq_sym Prop) ((x0 (g x1)) x2)) ((f x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2))))) as proof of (((eq (fofType->Prop)) (f x1)) (x0 (g x1)))
% Found eq_ref00:=(eq_ref0 ((x0 (g x1)) x2)):(((eq Prop) ((x0 (g x1)) x2)) ((x0 (g x1)) x2))
% Found (eq_ref0 ((x0 (g x1)) x2)) as proof of (((eq Prop) ((x0 (g x1)) x2)) ((f x1) x2))
% Found ((eq_ref Prop) ((x0 (g x1)) x2)) as proof of (((eq Prop) ((x0 (g x1)) x2)) ((f x1) x2))
% Found ((eq_ref Prop) ((x0 (g x1)) x2)) as proof of (((eq Prop) ((x0 (g x1)) x2)) ((f x1) x2))
% Found ((eq_ref Prop) ((x0 (g x1)) x2)) as proof of (((eq Prop) ((x0 (g x1)) x2)) ((f x1) x2))
% Found (eq_sym100 ((eq_ref Prop) ((x0 (g x1)) x2))) as proof of (((eq Prop) ((f x1) x2)) ((x0 (g x1)) x2))
% Found ((eq_sym10 ((f x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2))) as proof of (((eq Prop) ((f x1) x2)) ((x0 (g x1)) x2))
% Found (((eq_sym1 ((x0 (g x1)) x2)) ((f x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2))) as proof of (((eq Prop) ((f x1) x2)) ((x0 (g x1)) x2))
% Found ((((eq_sym Prop) ((x0 (g x1)) x2)) ((f x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2))) as proof of (((eq Prop) ((f x1) x2)) ((x0 (g x1)) x2))
% Found (fun (x2:fofType)=> ((((eq_sym Prop) ((x0 (g x1)) x2)) ((f x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2)))) as proof of (((eq Prop) ((f x1) x2)) ((x0 (g x1)) x2))
% Found (fun (x2:fofType)=> ((((eq_sym Prop) ((x0 (g x1)) x2)) ((f x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2)))) as proof of (forall (x:fofType), (((eq Prop) ((f x1) x)) ((x0 (g x1)) x)))
% Found (functional_extensionality_dep00000 (fun (x2:fofType)=> ((((eq_sym Prop) ((x0 (g x1)) x2)) ((f x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2))))) as proof of ((P (f x1))->(P (x0 (g x1))))
% Found (functional_extensionality_dep00000 (fun (x2:fofType)=> ((((eq_sym Prop) ((x0 (g x1)) x2)) ((f x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2))))) as proof of ((P (f x1))->(P (x0 (g x1))))
% Found ((fun (x2:(forall (x:fofType), (((eq Prop) ((f x1) x)) ((x0 (g x1)) x))))=> ((functional_extensionality_dep0000 x2) P)) (fun (x2:fofType)=> ((((eq_sym Prop) ((x0 (g x1)) x2)) ((f x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2))))) as proof of ((P (f x1))->(P (x0 (g x1))))
% Found ((fun (x2:(forall (x:fofType), (((eq Prop) ((f x1) x)) ((x0 (g x1)) x))))=> (((functional_extensionality_dep000 (x0 (g x1))) x2) P)) (fun (x2:fofType)=> ((((eq_sym Prop) ((x0 (g x1)) x2)) ((f x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2))))) as proof of ((P (f x1))->(P (x0 (g x1))))
% Found ((fun (x2:(forall (x:fofType), (((eq Prop) ((f x1) x)) ((x0 (g x1)) x))))=> ((((functional_extensionality_dep00 (f x1)) (x0 (g x1))) x2) P)) (fun (x2:fofType)=> ((((eq_sym Prop) ((x0 (g x1)) x2)) ((f x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2))))) as proof of ((P (f x1))->(P (x0 (g x1))))
% Found ((fun (x2:(forall (x:fofType), (((eq Prop) ((f x1) x)) ((x0 (g x1)) x))))=> (((((functional_extensionality_dep0 (fun (x4:fofType)=> Prop)) (f x1)) (x0 (g x1))) x2) P)) (fun (x2:fofType)=> ((((eq_sym Prop) ((x0 (g x1)) x2)) ((f x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2))))) as proof of ((P (f x1))->(P (x0 (g x1))))
% Found ((fun (x2:(forall (x:fofType), (((eq Prop) ((f x1) x)) ((x0 (g x1)) x))))=> ((((((functional_extensionality_dep fofType) (fun (x4:fofType)=> Prop)) (f x1)) (x0 (g x1))) x2) P)) (fun (x2:fofType)=> ((((eq_sym Prop) ((x0 (g x1)) x2)) ((f x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2))))) as proof of ((P (f x1))->(P (x0 (g x1))))
% Found (fun (P:((fofType->Prop)->Prop))=> ((fun (x2:(forall (x:fofType), (((eq Prop) ((f x1) x)) ((x0 (g x1)) x))))=> ((((((functional_extensionality_dep fofType) (fun (x4:fofType)=> Prop)) (f x1)) (x0 (g x1))) x2) P)) (fun (x2:fofType)=> ((((eq_sym Prop) ((x0 (g x1)) x2)) ((f x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2)))))) as proof of ((P (f x1))->(P (x0 (g x1))))
% Found eq_ref00:=(eq_ref0 ((x0 (g x1)) x2)):(((eq Prop) ((x0 (g x1)) x2)) ((x0 (g x1)) x2))
% Found (eq_ref0 ((x0 (g x1)) x2)) as proof of (((eq Prop) ((x0 (g x1)) x2)) ((f x1) x2))
% Found ((eq_ref Prop) ((x0 (g x1)) x2)) as proof of (((eq Prop) ((x0 (g x1)) x2)) ((f x1) x2))
% Found ((eq_ref Prop) ((x0 (g x1)) x2)) as proof of (((eq Prop) ((x0 (g x1)) x2)) ((f x1) x2))
% Found ((eq_ref Prop) ((x0 (g x1)) x2)) as proof of (((eq Prop) ((x0 (g x1)) x2)) ((f x1) x2))
% Found (eq_sym100 ((eq_ref Prop) ((x0 (g x1)) x2))) as proof of (((eq Prop) ((f x1) x2)) ((x0 (g x1)) x2))
% Found ((eq_sym10 ((f x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2))) as proof of (((eq Prop) ((f x1) x2)) ((x0 (g x1)) x2))
% Found (((eq_sym1 ((x0 (g x1)) x2)) ((f x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2))) as proof of (((eq Prop) ((f x1) x2)) ((x0 (g x1)) x2))
% Found ((((eq_sym Prop) ((x0 (g x1)) x2)) ((f x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2))) as proof of (((eq Prop) ((f x1) x2)) ((x0 (g x1)) x2))
% Found (fun (x2:fofType)=> ((((eq_sym Prop) ((x0 (g x1)) x2)) ((f x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2)))) as proof of (((eq Prop) ((f x1) x2)) ((x0 (g x1)) x2))
% Found (fun (x2:fofType)=> ((((eq_sym Prop) ((x0 (g x1)) x2)) ((f x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2)))) as proof of (forall (x:fofType), (((eq Prop) ((f x1) x)) ((x0 (g x1)) x)))
% Found ((functional_extensionality_dep00000 (fun (x2:fofType)=> ((((eq_sym Prop) ((x0 (g x1)) x2)) ((f x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2))))) (((eq_ref (fofType->Prop)) (f x1)) P)) as proof of ((P (f x1))->(P (x0 (g x1))))
% Found ((functional_extensionality_dep00000 (fun (x2:fofType)=> ((((eq_sym Prop) ((x0 (g x1)) x2)) ((f x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2))))) (((eq_ref (fofType->Prop)) (f x1)) P)) as proof of ((P (f x1))->(P (x0 (g x1))))
% Found (((fun (x2:(forall (x:fofType), (((eq Prop) ((f x1) x)) ((x0 (g x1)) x))))=> ((functional_extensionality_dep0000 x2) (fun (x4:(fofType->Prop))=> ((P (f x1))->(P x4))))) (fun (x2:fofType)=> ((((eq_sym Prop) ((x0 (g x1)) x2)) ((f x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2))))) (((eq_ref (fofType->Prop)) (f x1)) P)) as proof of ((P (f x1))->(P (x0 (g x1))))
% Found (((fun (x2:(forall (x:fofType), (((eq Prop) ((f x1) x)) ((x0 (g x1)) x))))=> (((functional_extensionality_dep000 (x0 (g x1))) x2) (fun (x4:(fofType->Prop))=> ((P (f x1))->(P x4))))) (fun (x2:fofType)=> ((((eq_sym Prop) ((x0 (g x1)) x2)) ((f x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2))))) (((eq_ref (fofType->Prop)) (f x1)) P)) as proof of ((P (f x1))->(P (x0 (g x1))))
% Found (((fun (x2:(forall (x:fofType), (((eq Prop) ((f x1) x)) ((x0 (g x1)) x))))=> ((((functional_extensionality_dep00 (f x1)) (x0 (g x1))) x2) (fun (x4:(fofType->Prop))=> ((P (f x1))->(P x4))))) (fun (x2:fofType)=> ((((eq_sym Prop) ((x0 (g x1)) x2)) ((f x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2))))) (((eq_ref (fofType->Prop)) (f x1)) P)) as proof of ((P (f x1))->(P (x0 (g x1))))
% Found (((fun (x2:(forall (x:fofType), (((eq Prop) ((f x1) x)) ((x0 (g x1)) x))))=> (((((functional_extensionality_dep0 (fun (x4:fofType)=> Prop)) (f x1)) (x0 (g x1))) x2) (fun (x4:(fofType->Prop))=> ((P (f x1))->(P x4))))) (fun (x2:fofType)=> ((((eq_sym Prop) ((x0 (g x1)) x2)) ((f x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2))))) (((eq_ref (fofType->Prop)) (f x1)) P)) as proof of ((P (f x1))->(P (x0 (g x1))))
% Found (((fun (x2:(forall (x:fofType), (((eq Prop) ((f x1) x)) ((x0 (g x1)) x))))=> ((((((functional_extensionality_dep fofType) (fun (x4:fofType)=> Prop)) (f x1)) (x0 (g x1))) x2) (fun (x4:(fofType->Prop))=> ((P (f x1))->(P x4))))) (fun (x2:fofType)=> ((((eq_sym Prop) ((x0 (g x1)) x2)) ((f x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2))))) (((eq_ref (fofType->Prop)) (f x1)) P)) as proof of ((P (f x1))->(P (x0 (g x1))))
% Found (fun (P:((fofType->Prop)->Prop))=> (((fun (x2:(forall (x:fofType), (((eq Prop) ((f x1) x)) ((x0 (g x1)) x))))=> ((((((functional_extensionality_dep fofType) (fun (x4:fofType)=> Prop)) (f x1)) (x0 (g x1))) x2) (fun (x4:(fofType->Prop))=> ((P (f x1))->(P x4))))) (fun (x2:fofType)=> ((((eq_sym Prop) ((x0 (g x1)) x2)) ((f x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2))))) (((eq_ref (fofType->Prop)) (f x1)) P))) as proof of ((P (f x1))->(P (x0 (g x1))))
% Found eq_ref00:=(eq_ref0 ((x0 (g x1)) x2)):(((eq Prop) ((x0 (g x1)) x2)) ((x0 (g x1)) x2))
% Found (eq_ref0 ((x0 (g x1)) x2)) as proof of (((eq Prop) ((x0 (g x1)) x2)) ((f x1) x2))
% Found ((eq_ref Prop) ((x0 (g x1)) x2)) as proof of (((eq Prop) ((x0 (g x1)) x2)) ((f x1) x2))
% Found ((eq_ref Prop) ((x0 (g x1)) x2)) as proof of (((eq Prop) ((x0 (g x1)) x2)) ((f x1) x2))
% Found ((eq_ref Prop) ((x0 (g x1)) x2)) as proof of (((eq Prop) ((x0 (g x1)) x2)) ((f x1) x2))
% Found (eq_sym100 ((eq_ref Prop) ((x0 (g x1)) x2))) as proof of (((eq Prop) ((f x1) x2)) ((x0 (g x1)) x2))
% Found ((eq_sym10 ((f x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2))) as proof of (((eq Prop) ((f x1) x2)) ((x0 (g x1)) x2))
% Found (((eq_sym1 ((x0 (g x1)) x2)) ((f x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2))) as proof of (((eq Prop) ((f x1) x2)) ((x0 (g x1)) x2))
% Found ((((eq_sym Prop) ((x0 (g x1)) x2)) ((f x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2))) as proof of (((eq Prop) ((f x1) x2)) ((x0 (g x1)) x2))
% Found (fun (x2:fofType)=> ((((eq_sym Prop) ((x0 (g x1)) x2)) ((f x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2)))) as proof of (((eq Prop) ((f x1) x2)) ((x0 (g x1)) x2))
% Found (fun (x2:fofType)=> ((((eq_sym Prop) ((x0 (g x1)) x2)) ((f x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2)))) as proof of (forall (x:fofType), (((eq Prop) ((f x1) x)) ((x0 (g x1)) x)))
% Found ((functional_extensionality00000 (fun (x2:fofType)=> ((((eq_sym Prop) ((x0 (g x1)) x2)) ((f x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2))))) (((eq_ref (fofType->Prop)) (f x1)) P)) as proof of ((P (f x1))->(P (x0 (g x1))))
% Found ((functional_extensionality00000 (fun (x2:fofType)=> ((((eq_sym Prop) ((x0 (g x1)) x2)) ((f x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2))))) (((eq_ref (fofType->Prop)) (f x1)) P)) as proof of ((P (f x1))->(P (x0 (g x1))))
% Found (((fun (x2:(forall (x:fofType), (((eq Prop) ((f x1) x)) ((x0 (g x1)) x))))=> ((functional_extensionality0000 x2) (fun (x4:(fofType->Prop))=> ((P (f x1))->(P x4))))) (fun (x2:fofType)=> ((((eq_sym Prop) ((x0 (g x1)) x2)) ((f x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2))))) (((eq_ref (fofType->Prop)) (f x1)) P)) as proof of ((P (f x1))->(P (x0 (g x1))))
% Found (((fun (x2:(forall (x:fofType), (((eq Prop) ((f x1) x)) ((x0 (g x1)) x))))=> (((functional_extensionality000 (x0 (g x1))) x2) (fun (x4:(fofType->Prop))=> ((P (f x1))->(P x4))))) (fun (x2:fofType)=> ((((eq_sym Prop) ((x0 (g x1)) x2)) ((f x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2))))) (((eq_ref (fofType->Prop)) (f x1)) P)) as proof of ((P (f x1))->(P (x0 (g x1))))
% Found (((fun (x2:(forall (x:fofType), (((eq Prop) ((f x1) x)) ((x0 (g x1)) x))))=> ((((functional_extensionality00 (f x1)) (x0 (g x1))) x2) (fun (x4:(fofType->Prop))=> ((P (f x1))->(P x4))))) (fun (x2:fofType)=> ((((eq_sym Prop) ((x0 (g x1)) x2)) ((f x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2))))) (((eq_ref (fofType->Prop)) (f x1)) P)) as proof of ((P (f x1))->(P (x0 (g x1))))
% Found (((fun (x2:(forall (x:fofType), (((eq Prop) ((f x1) x)) ((x0 (g x1)) x))))=> (((((functional_extensionality0 Prop) (f x1)) (x0 (g x1))) x2) (fun (x4:(fofType->Prop))=> ((P (f x1))->(P x4))))) (fun (x2:fofType)=> ((((eq_sym Prop) ((x0 (g x1)) x2)) ((f x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2))))) (((eq_ref (fofType->Prop)) (f x1)) P)) as proof of ((P (f x1))->(P (x0 (g x1))))
% Found (((fun (x2:(forall (x:fofType), (((eq Prop) ((f x1) x)) ((x0 (g x1)) x))))=> ((((((functional_extensionality fofType) Prop) (f x1)) (x0 (g x1))) x2) (fun (x4:(fofType->Prop))=> ((P (f x1))->(P x4))))) (fun (x2:fofType)=> ((((eq_sym Prop) ((x0 (g x1)) x2)) ((f x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2))))) (((eq_ref (fofType->Prop)) (f x1)) P)) as proof of ((P (f x1))->(P (x0 (g x1))))
% Found (fun (P:((fofType->Prop)->Prop))=> (((fun (x2:(forall (x:fofType), (((eq Prop) ((f x1) x)) ((x0 (g x1)) x))))=> ((((((functional_extensionality fofType) Prop) (f x1)) (x0 (g x1))) x2) (fun (x4:(fofType->Prop))=> ((P (f x1))->(P x4))))) (fun (x2:fofType)=> ((((eq_sym Prop) ((x0 (g x1)) x2)) ((f x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2))))) (((eq_ref (fofType->Prop)) (f x1)) P))) as proof of ((P (f x1))->(P (x0 (g x1))))
% Found eq_ref00:=(eq_ref0 ((x0 (g x1)) x2)):(((eq Prop) ((x0 (g x1)) x2)) ((x0 (g x1)) x2))
% Found (eq_ref0 ((x0 (g x1)) x2)) as proof of (((eq Prop) ((x0 (g x1)) x2)) ((f x1) x2))
% Found ((eq_ref Prop) ((x0 (g x1)) x2)) as proof of (((eq Prop) ((x0 (g x1)) x2)) ((f x1) x2))
% Found ((eq_ref Prop) ((x0 (g x1)) x2)) as proof of (((eq Prop) ((x0 (g x1)) x2)) ((f x1) x2))
% Found ((eq_ref Prop) ((x0 (g x1)) x2)) as proof of (((eq Prop) ((x0 (g x1)) x2)) ((f x1) x2))
% Found (eq_sym100 ((eq_ref Prop) ((x0 (g x1)) x2))) as proof of (((eq Prop) ((f x1) x2)) ((x0 (g x1)) x2))
% Found ((eq_sym10 ((f x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2))) as proof of (((eq Prop) ((f x1) x2)) ((x0 (g x1)) x2))
% Found (((eq_sym1 ((x0 (g x1)) x2)) ((f x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2))) as proof of (((eq Prop) ((f x1) x2)) ((x0 (g x1)) x2))
% Found ((((eq_sym Prop) ((x0 (g x1)) x2)) ((f x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2))) as proof of (((eq Prop) ((f x1) x2)) ((x0 (g x1)) x2))
% Found (fun (x2:fofType)=> ((((eq_sym Prop) ((x0 (g x1)) x2)) ((f x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2)))) as proof of (((eq Prop) ((f x1) x2)) ((x0 (g x1)) x2))
% Found (fun (x2:fofType)=> ((((eq_sym Prop) ((x0 (g x1)) x2)) ((f x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2)))) as proof of (forall (x:fofType), (((eq Prop) ((f x1) x)) ((x0 (g x1)) x)))
% Found (functional_extensionality00000 (fun (x2:fofType)=> ((((eq_sym Prop) ((x0 (g x1)) x2)) ((f x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2))))) as proof of ((P (f x1))->(P (x0 (g x1))))
% Found (functional_extensionality00000 (fun (x2:fofType)=> ((((eq_sym Prop) ((x0 (g x1)) x2)) ((f x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2))))) as proof of ((P (f x1))->(P (x0 (g x1))))
% Found ((fun (x2:(forall (x:fofType), (((eq Prop) ((f x1) x)) ((x0 (g x1)) x))))=> ((functional_extensionality0000 x2) P)) (fun (x2:fofType)=> ((((eq_sym Prop) ((x0 (g x1)) x2)) ((f x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2))))) as proof of ((P (f x1))->(P (x0 (g x1))))
% Found ((fun (x2:(forall (x:fofType), (((eq Prop) ((f x1) x)) ((x0 (g x1)) x))))=> (((functional_extensionality000 (x0 (g x1))) x2) P)) (fun (x2:fofType)=> ((((eq_sym Prop) ((x0 (g x1)) x2)) ((f x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2))))) as proof of ((P (f x1))->(P (x0 (g x1))))
% Found ((fun (x2:(forall (x:fofType), (((eq Prop) ((f x1) x)) ((x0 (g x1)) x))))=> ((((functional_extensionality00 (f x1)) (x0 (g x1))) x2) P)) (fun (x2:fofType)=> ((((eq_sym Prop) ((x0 (g x1)) x2)) ((f x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2))))) as proof of ((P (f x1))->(P (x0 (g x1))))
% Found ((fun (x2:(forall (x:fofType), (((eq Prop) ((f x1) x)) ((x0 (g x1)) x))))=> (((((functional_extensionality0 Prop) (f x1)) (x0 (g x1))) x2) P)) (fun (x2:fofType)=> ((((eq_sym Prop) ((x0 (g x1)) x2)) ((f x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2))))) as proof of ((P (f x1))->(P (x0 (g x1))))
% Found ((fun (x2:(forall (x:fofType), (((eq Prop) ((f x1) x)) ((x0 (g x1)) x))))=> ((((((functional_extensionality fofType) Prop) (f x1)) (x0 (g x1))) x2) P)) (fun (x2:fofType)=> ((((eq_sym Prop) ((x0 (g x1)) x2)) ((f x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2))))) as proof of ((P (f x1))->(P (x0 (g x1))))
% Found (fun (P:((fofType->Prop)->Prop))=> ((fun (x2:(forall (x:fofType), (((eq Prop) ((f x1) x)) ((x0 (g x1)) x))))=> ((((((functional_extensionality fofType) Prop) (f x1)) (x0 (g x1))) x2) P)) (fun (x2:fofType)=> ((((eq_sym Prop) ((x0 (g x1)) x2)) ((f x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2)))))) as proof of ((P (f x1))->(P (x0 (g x1))))
% Found eq_ref00:=(eq_ref0 ((x0 (g x1)) x2)):(((eq Prop) ((x0 (g x1)) x2)) ((x0 (g x1)) x2))
% Found (eq_ref0 ((x0 (g x1)) x2)) as proof of (((eq Prop) ((x0 (g x1)) x2)) ((f x1) x2))
% Found ((eq_ref Prop) ((x0 (g x1)) x2)) as proof of (((eq Prop) ((x0 (g x1)) x2)) ((f x1) x2))
% Found ((eq_ref Prop) ((x0 (g x1)) x2)) as proof of (((eq Prop) ((x0 (g x1)) x2)) ((f x1) x2))
% Found ((eq_ref Prop) ((x0 (g x1)) x2)) as proof of (((eq Prop) ((x0 (g x1)) x2)) ((f x1) x2))
% Found (eq_sym100 ((eq_ref Prop) ((x0 (g x1)) x2))) as proof of (((eq Prop) ((f x1) x2)) ((x0 (g x1)) x2))
% Found ((eq_sym10 ((f x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2))) as proof of (((eq Prop) ((f x1) x2)) ((x0 (g x1)) x2))
% Found (((eq_sym1 ((x0 (g x1)) x2)) ((f x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2))) as proof of (((eq Prop) ((f x1) x2)) ((x0 (g x1)) x2))
% Found ((((eq_sym Prop) ((x0 (g x1)) x2)) ((f x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2))) as proof of (((eq Prop) ((f x1) x2)) ((x0 (g x1)) x2))
% Found (fun (x2:fofType)=> ((((eq_sym Prop) ((x0 (g x1)) x2)) ((f x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2)))) as proof of (((eq Prop) ((f x1) x2)) ((x0 (g x1)) x2))
% Found (fun (x2:fofType)=> ((((eq_sym Prop) ((x0 (g x1)) x2)) ((f x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2)))) as proof of (forall (x:fofType), (((eq Prop) ((f x1) x)) ((x0 (g x1)) x)))
% Found (functional_extensionality0000 (fun (x2:fofType)=> ((((eq_sym Prop) ((x0 (g x1)) x2)) ((f x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2))))) as proof of (((eq (fofType->Prop)) (f x1)) (x0 (g x1)))
% Found ((functional_extensionality000 (x0 (g x1))) (fun (x2:fofType)=> ((((eq_sym Prop) ((x0 (g x1)) x2)) ((f x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2))))) as proof of (((eq (fofType->Prop)) (f x1)) (x0 (g x1)))
% Found (((functional_extensionality00 (f x1)) (x0 (g x1))) (fun (x2:fofType)=> ((((eq_sym Prop) ((x0 (g x1)) x2)) ((f x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2))))) as proof of (((eq (fofType->Prop)) (f x1)) (x0 (g x1)))
% Found ((((functional_extensionality0 Prop) (f x1)) (x0 (g x1))) (fun (x2:fofType)=> ((((eq_sym Prop) ((x0 (g x1)) x2)) ((f x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2))))) as proof of (((eq (fofType->Prop)) (f x1)) (x0 (g x1)))
% Found (((((functional_extensionality fofType) Prop) (f x1)) (x0 (g x1))) (fun (x2:fofType)=> ((((eq_sym Prop) ((x0 (g x1)) x2)) ((f x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2))))) as proof of (((eq (fofType->Prop)) (f x1)) (x0 (g x1)))
% Found eq_ref00:=(eq_ref0 (x0 (g x1))):(((eq (fofType->Prop)) (x0 (g x1))) (x0 (g x1)))
% Found (eq_ref0 (x0 (g x1))) as proof of (((eq (fofType->Prop)) (x0 (g x1))) (f x1))
% Found ((eq_ref (fofType->Prop)) (x0 (g x1))) as proof of (((eq (fofType->Prop)) (x0 (g x1))) (f x1))
% Found ((eq_ref (fofType->Prop)) (x0 (g x1))) as proof of (((eq (fofType->Prop)) (x0 (g x1))) (f x1))
% Found ((eq_ref (fofType->Prop)) (x0 (g x1))) as proof of (((eq (fofType->Prop)) (x0 (g x1))) (f x1))
% Found (eq_sym100 ((eq_ref (fofType->Prop)) (x0 (g x1)))) as proof of (forall (P:((fofType->Prop)->Prop)), ((P (f x1))->(P (x0 (g x1)))))
% Found ((eq_sym10 (f x1)) ((eq_ref (fofType->Prop)) (x0 (g x1)))) as proof of (forall (P:((fofType->Prop)->Prop)), ((P (f x1))->(P (x0 (g x1)))))
% Found (((eq_sym1 (x0 (g x1))) (f x1)) ((eq_ref (fofType->Prop)) (x0 (g x1)))) as proof of (forall (P:((fofType->Prop)->Prop)), ((P (f x1))->(P (x0 (g x1)))))
% Found ((((eq_sym (fofType->Prop)) (x0 (g x1))) (f x1)) ((eq_ref (fofType->Prop)) (x0 (g x1)))) as proof of (forall (P:((fofType->Prop)->Prop)), ((P (f x1))->(P (x0 (g x1)))))
% Found ((((eq_sym (fofType->Prop)) (x0 (g x1))) (f x1)) ((eq_ref (fofType->Prop)) (x0 (g x1)))) as proof of (forall (P:((fofType->Prop)->Prop)), ((P (f x1))->(P (x0 (g x1)))))
% Found eq_ref00:=(eq_ref0 (x0 (g x1))):(((eq (fofType->Prop)) (x0 (g x1))) (x0 (g x1)))
% Found (eq_ref0 (x0 (g x1))) as proof of (((eq (fofType->Prop)) (x0 (g x1))) (f x1))
% Found ((eq_ref (fofType->Prop)) (x0 (g x1))) as proof of (((eq (fofType->Prop)) (x0 (g x1))) (f x1))
% Found ((eq_ref (fofType->Prop)) (x0 (g x1))) as proof of (((eq (fofType->Prop)) (x0 (g x1))) (f x1))
% Found ((eq_ref (fofType->Prop)) (x0 (g x1))) as proof of (((eq (fofType->Prop)) (x0 (g x1))) (f x1))
% Found (eq_sym100 ((eq_ref (fofType->Prop)) (x0 (g x1)))) as proof of (forall (P:((fofType->Prop)->Prop)), ((P (f x1))->(P (x0 (g x1)))))
% Found ((eq_sym10 (f x1)) ((eq_ref (fofType->Prop)) (x0 (g x1)))) as proof of (forall (P:((fofType->Prop)->Prop)), ((P (f x1))->(P (x0 (g x1)))))
% Found (((eq_sym1 (x0 (g x1))) (f x1)) ((eq_ref (fofType->Prop)) (x0 (g x1)))) as proof of (forall (P:((fofType->Prop)->Prop)), ((P (f x1))->(P (x0 (g x1)))))
% Found ((((eq_sym (fofType->Prop)) (x0 (g x1))) (f x1)) ((eq_ref (fofType->Prop)) (x0 (g x1)))) as proof of (forall (P:((fofType->Prop)->Prop)), ((P (f x1))->(P (x0 (g x1)))))
% Found ((((eq_sym (fofType->Prop)) (x0 (g x1))) (f x1)) ((eq_ref (fofType->Prop)) (x0 (g x1)))) as proof of (forall (P:((fofType->Prop)->Prop)), ((P (f x1))->(P (x0 (g x1)))))
% Found eq_ref00:=(eq_ref0 ((x0 (g x1)) x2)):(((eq Prop) ((x0 (g x1)) x2)) ((x0 (g x1)) x2))
% Found (eq_ref0 ((x0 (g x1)) x2)) as proof of (((eq Prop) ((x0 (g x1)) x2)) ((f x1) x2))
% Found ((eq_ref Prop) ((x0 (g x1)) x2)) as proof of (((eq Prop) ((x0 (g x1)) x2)) ((f x1) x2))
% Found ((eq_ref Prop) ((x0 (g x1)) x2)) as proof of (((eq Prop) ((x0 (g x1)) x2)) ((f x1) x2))
% Found ((eq_ref Prop) ((x0 (g x1)) x2)) as proof of (((eq Prop) ((x0 (g x1)) x2)) ((f x1) x2))
% Found (eq_sym100 ((eq_ref Prop) ((x0 (g x1)) x2))) as proof of (((eq Prop) ((f x1) x2)) ((x0 (g x1)) x2))
% Found ((eq_sym10 ((f x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2))) as proof of (((eq Prop) ((f x1) x2)) ((x0 (g x1)) x2))
% Found (((eq_sym1 ((x0 (g x1)) x2)) ((f x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2))) as proof of (((eq Prop) ((f x1) x2)) ((x0 (g x1)) x2))
% Found ((((eq_sym Prop) ((x0 (g x1)) x2)) ((f x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2))) as proof of (((eq Prop) ((f x1) x2)) ((x0 (g x1)) x2))
% Found (fun (x2:fofType)=> ((((eq_sym Prop) ((x0 (g x1)) x2)) ((f x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2)))) as proof of (((eq Prop) ((f x1) x2)) ((x0 (g x1)) x2))
% Found (fun (x2:fofType)=> ((((eq_sym Prop) ((x0 (g x1)) x2)) ((f x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2)))) as proof of (forall (x:fofType), (((eq Prop) ((f x1) x)) ((x0 (g x1)) x)))
% Found (functional_extensionality0000 (fun (x2:fofType)=> ((((eq_sym Prop) ((x0 (g x1)) x2)) ((f x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2))))) as proof of (((eq (fofType->Prop)) (f x1)) (x0 (g x1)))
% Found ((functional_extensionality000 (x0 (g x1))) (fun (x2:fofType)=> ((((eq_sym Prop) ((x0 (g x1)) x2)) ((f x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2))))) as proof of (((eq (fofType->Prop)) (f x1)) (x0 (g x1)))
% Found (((functional_extensionality00 (f x1)) (x0 (g x1))) (fun (x2:fofType)=> ((((eq_sym Prop) ((x0 (g x1)) x2)) ((f x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2))))) as proof of (((eq (fofType->Prop)) (f x1)) (x0 (g x1)))
% Found ((((functional_extensionality0 Prop) (f x1)) (x0 (g x1))) (fun (x2:fofType)=> ((((eq_sym Prop) ((x0 (g x1)) x2)) ((f x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2))))) as proof of (((eq (fofType->Prop)) (f x1)) (x0 (g x1)))
% Found (((((functional_extensionality fofType) Prop) (f x1)) (x0 (g x1))) (fun (x2:fofType)=> ((((eq_sym Prop) ((x0 (g x1)) x2)) ((f x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2))))) as proof of (((eq (fofType->Prop)) (f x1)) (x0 (g x1)))
% Found eq_ref00:=(eq_ref0 ((x0 (g x1)) x2)):(((eq Prop) ((x0 (g x1)) x2)) ((x0 (g x1)) x2))
% Found (eq_ref0 ((x0 (g x1)) x2)) as proof of (((eq Prop) ((x0 (g x1)) x2)) ((f x1) x2))
% Found ((eq_ref Prop) ((x0 (g x1)) x2)) as proof of (((eq Prop) ((x0 (g x1)) x2)) ((f x1) x2))
% Found ((eq_ref Prop) ((x0 (g x1)) x2)) as proof of (((eq Prop) ((x0 (g x1)) x2)) ((f x1) x2))
% Found ((eq_ref Prop) ((x0 (g x1)) x2)) as proof of (((eq Prop) ((x0 (g x1)) x2)) ((f x1) x2))
% Found (eq_sym100 ((eq_ref Prop) ((x0 (g x1)) x2))) as proof of (((eq Prop) ((f x1) x2)) ((x0 (g x1)) x2))
% Found ((eq_sym10 ((f x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2))) as proof of (((eq Prop) ((f x1) x2)) ((x0 (g x1)) x2))
% Found (((eq_sym1 ((x0 (g x1)) x2)) ((f x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2))) as proof of (((eq Prop) ((f x1) x2)) ((x0 (g x1)) x2))
% Found ((((eq_sym Prop) ((x0 (g x1)) x2)) ((f x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2))) as proof of (((eq Prop) ((f x1) x2)) ((x0 (g x1)) x2))
% Found (fun (x2:fofType)=> ((((eq_sym Prop) ((x0 (g x1)) x2)) ((f x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2)))) as proof of (((eq Prop) ((f x1) x2)) ((x0 (g x1)) x2))
% Found (fun (x2:fofType)=> ((((eq_sym Prop) ((x0 (g x1)) x2)) ((f x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2)))) as proof of (forall (x:fofType), (((eq Prop) ((f x1) x)) ((x0 (g x1)) x)))
% Found (functional_extensionality_dep0000 (fun (x2:fofType)=> ((((eq_sym Prop) ((x0 (g x1)) x2)) ((f x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2))))) as proof of (((eq (fofType->Prop)) (f x1)) (x0 (g x1)))
% Found ((functional_extensionality_dep000 (x0 (g x1))) (fun (x2:fofType)=> ((((eq_sym Prop) ((x0 (g x1)) x2)) ((f x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2))))) as proof of (((eq (fofType->Prop)) (f x1)) (x0 (g x1)))
% Found (((functional_extensionality_dep00 (f x1)) (x0 (g x1))) (fun (x2:fofType)=> ((((eq_sym Prop) ((x0 (g x1)) x2)) ((f x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2))))) as proof of (((eq (fofType->Prop)) (f x1)) (x0 (g x1)))
% Found ((((functional_extensionality_dep0 (fun (x4:fofType)=> Prop)) (f x1)) (x0 (g x1))) (fun (x2:fofType)=> ((((eq_sym Prop) ((x0 (g x1)) x2)) ((f x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2))))) as proof of (((eq (fofType->Prop)) (f x1)) (x0 (g x1)))
% Found (((((functional_extensionality_dep fofType) (fun (x4:fofType)=> Prop)) (f x1)) (x0 (g x1))) (fun (x2:fofType)=> ((((eq_sym Prop) ((x0 (g x1)) x2)) ((f x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2))))) as proof of (((eq (fofType->Prop)) (f x1)) (x0 (g x1)))
% Found eq_ref00:=(eq_ref0 ((x0 (g x1)) x2)):(((eq Prop) ((x0 (g x1)) x2)) ((x0 (g x1)) x2))
% Found (eq_ref0 ((x0 (g x1)) x2)) as proof of (((eq Prop) ((x0 (g x1)) x2)) ((f x1) x2))
% Found ((eq_ref Prop) ((x0 (g x1)) x2)) as proof of (((eq Prop) ((x0 (g x1)) x2)) ((f x1) x2))
% Found ((eq_ref Prop) ((x0 (g x1)) x2)) as proof of (((eq Prop) ((x0 (g x1)) x2)) ((f x1) x2))
% Found ((eq_ref Prop) ((x0 (g x1)) x2)) as proof of (((eq Prop) ((x0 (g x1)) x2)) ((f x1) x2))
% Found (eq_sym100 ((eq_ref Prop) ((x0 (g x1)) x2))) as proof of (((eq Prop) ((f x1) x2)) ((x0 (g x1)) x2))
% Found ((eq_sym10 ((f x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2))) as proof of (((eq Prop) ((f x1) x2)) ((x0 (g x1)) x2))
% Found (((eq_sym1 ((x0 (g x1)) x2)) ((f x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2))) as proof of (((eq Prop) ((f x1) x2)) ((x0 (g x1)) x2))
% Found ((((eq_sym Prop) ((x0 (g x1)) x2)) ((f x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2))) as proof of (((eq Prop) ((f x1) x2)) ((x0 (g x1)) x2))
% Found (fun (x2:fofType)=> ((((eq_sym Prop) ((x0 (g x1)) x2)) ((f x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2)))) as proof of (((eq Prop) ((f x1) x2)) ((x0 (g x1)) x2))
% Found (fun (x2:fofType)=> ((((eq_sym Prop) ((x0 (g x1)) x2)) ((f x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2)))) as proof of (forall (x:fofType), (((eq Prop) ((f x1) x)) ((x0 (g x1)) x)))
% Found (functional_extensionality_dep0000 (fun (x2:fofType)=> ((((eq_sym Prop) ((x0 (g x1)) x2)) ((f x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2))))) as proof of (((eq (fofType->Prop)) (f x1)) (x0 (g x1)))
% Found ((functional_extensionality_dep000 (x0 (g x1))) (fun (x2:fofType)=> ((((eq_sym Prop) ((x0 (g x1)) x2)) ((f x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2))))) as proof of (((eq (fofType->Prop)) (f x1)) (x0 (g x1)))
% Found (((functional_extensionality_dep00 (f x1)) (x0 (g x1))) (fun (x2:fofType)=> ((((eq_sym Prop) ((x0 (g x1)) x2)) ((f x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2))))) as proof of (((eq (fofType->Prop)) (f x1)) (x0 (g x1)))
% Found ((((functional_extensionality_dep0 (fun (x4:fofType)=> Prop)) (f x1)) (x0 (g x1))) (fun (x2:fofType)=> ((((eq_sym Prop) ((x0 (g x1)) x2)) ((f x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2))))) as proof of (((eq (fofType->Prop)) (f x1)) (x0 (g x1)))
% Found (((((functional_extensionality_dep fofType) (fun (x4:fofType)=> Prop)) (f x1)) (x0 (g x1))) (fun (x2:fofType)=> ((((eq_sym Prop) ((x0 (g x1)) x2)) ((f x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2))))) as proof of (((eq (fofType->Prop)) (f x1)) (x0 (g x1)))
% Found eq_ref00:=(eq_ref0 ((x0 (g x1)) x2)):(((eq Prop) ((x0 (g x1)) x2)) ((x0 (g x1)) x2))
% Found (eq_ref0 ((x0 (g x1)) x2)) as proof of (((eq Prop) ((x0 (g x1)) x2)) ((f x1) x2))
% Found ((eq_ref Prop) ((x0 (g x1)) x2)) as proof of (((eq Prop) ((x0 (g x1)) x2)) ((f x1) x2))
% Found ((eq_ref Prop) ((x0 (g x1)) x2)) as proof of (((eq Prop) ((x0 (g x1)) x2)) ((f x1) x2))
% Found ((eq_ref Prop) ((x0 (g x1)) x2)) as proof of (((eq Prop) ((x0 (g x1)) x2)) ((f x1) x2))
% Found (eq_sym100 ((eq_ref Prop) ((x0 (g x1)) x2))) as proof of (((eq Prop) ((f x1) x2)) ((x0 (g x1)) x2))
% Found ((eq_sym10 ((f x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2))) as proof of (((eq Prop) ((f x1) x2)) ((x0 (g x1)) x2))
% Found (((eq_sym1 ((x0 (g x1)) x2)) ((f x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2))) as proof of (((eq Prop) ((f x1) x2)) ((x0 (g x1)) x2))
% Found ((((eq_sym Prop) ((x0 (g x1)) x2)) ((f x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2))) as proof of (((eq Prop) ((f x1) x2)) ((x0 (g x1)) x2))
% Found (fun (x2:fofType)=> ((((eq_sym Prop) ((x0 (g x1)) x2)) ((f x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2)))) as proof of (((eq Prop) ((f x1) x2)) ((x0 (g x1)) x2))
% Found (fun (x2:fofType)=> ((((eq_sym Prop) ((x0 (g x1)) x2)) ((f x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2)))) as proof of (forall (x:fofType), (((eq Prop) ((f x1) x)) ((x0 (g x1)) x)))
% Found (functional_extensionality0000 (fun (x2:fofType)=> ((((eq_sym Prop) ((x0 (g x1)) x2)) ((f x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2))))) as proof of (((eq (fofType->Prop)) (f x1)) (x0 (g x1)))
% Found ((functional_extensionality000 (x0 (g x1))) (fun (x2:fofType)=> ((((eq_sym Prop) ((x0 (g x1)) x2)) ((f x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2))))) as proof of (((eq (fofType->Prop)) (f x1)) (x0 (g x1)))
% Found (((functional_extensionality00 (f x1)) (x0 (g x1))) (fun (x2:fofType)=> ((((eq_sym Prop) ((x0 (g x1)) x2)) ((f x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2))))) as proof of (((eq (fofType->Prop)) (f x1)) (x0 (g x1)))
% Found ((((functional_extensionality0 Prop) (f x1)) (x0 (g x1))) (fun (x2:fofType)=> ((((eq_sym Prop) ((x0 (g x1)) x2)) ((f x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2))))) as proof of (((eq (fofType->Prop)) (f x1)) (x0 (g x1)))
% Found (((((functional_extensionality fofType) Prop) (f x1)) (x0 (g x1))) (fun (x2:fofType)=> ((((eq_sym Prop) ((x0 (g x1)) x2)) ((f x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2))))) as proof of (((eq (fofType->Prop)) (f x1)) (x0 (g x1)))
% Found eq_ref00:=(eq_ref0 ((x0 (g x1)) x2)):(((eq Prop) ((x0 (g x1)) x2)) ((x0 (g x1)) x2))
% Found (eq_ref0 ((x0 (g x1)) x2)) as proof of (((eq Prop) ((x0 (g x1)) x2)) ((f x1) x2))
% Found ((eq_ref Prop) ((x0 (g x1)) x2)) as proof of (((eq Prop) ((x0 (g x1)) x2)) ((f x1) x2))
% Found ((eq_ref Prop) ((x0 (g x1)) x2)) as proof of (((eq Prop) ((x0 (g x1)) x2)) ((f x1) x2))
% Found ((eq_ref Prop) ((x0 (g x1)) x2)) as proof of (((eq Prop) ((x0 (g x1)) x2)) ((f x1) x2))
% Found (eq_sym100 ((eq_ref Prop) ((x0 (g x1)) x2))) as proof of (((eq Prop) ((f x1) x2)) ((x0 (g x1)) x2))
% Found ((eq_sym10 ((f x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2))) as proof of (((eq Prop) ((f x1) x2)) ((x0 (g x1)) x2))
% Found (((eq_sym1 ((x0 (g x1)) x2)) ((f x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2))) as proof of (((eq Prop) ((f x1) x2)) ((x0 (g x1)) x2))
% Found ((((eq_sym Prop) ((x0 (g x1)) x2)) ((f x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2))) as proof of (((eq Prop) ((f x1) x2)) ((x0 (g x1)) x2))
% Found (fun (x2:fofType)=> ((((eq_sym Prop) ((x0 (g x1)) x2)) ((f x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2)))) as proof of (((eq Prop) ((f x1) x2)) ((x0 (g x1)) x2))
% Found (fun (x2:fofType)=> ((((eq_sym Prop) ((x0 (g x1)) x2)) ((f x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2)))) as proof of (forall (x:fofType), (((eq Prop) ((f x1) x)) ((x0 (g x1)) x)))
% Found (functional_extensionality_dep0000 (fun (x2:fofType)=> ((((eq_sym Prop) ((x0 (g x1)) x2)) ((f x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2))))) as proof of (((eq (fofType->Prop)) (f x1)) (x0 (g x1)))
% Found ((functional_extensionality_dep000 (x0 (g x1))) (fun (x2:fofType)=> ((((eq_sym Prop) ((x0 (g x1)) x2)) ((f x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2))))) as proof of (((eq (fofType->Prop)) (f x1)) (x0 (g x1)))
% Found (((functional_extensionality_dep00 (f x1)) (x0 (g x1))) (fun (x2:fofType)=> ((((eq_sym Prop) ((x0 (g x1)) x2)) ((f x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2))))) as proof of (((eq (fofType->Prop)) (f x1)) (x0 (g x1)))
% Found ((((functional_extensionality_dep0 (fun (x4:fofType)=> Prop)) (f x1)) (x0 (g x1))) (fun (x2:fofType)=> ((((eq_sym Prop) ((x0 (g x1)) x2)) ((f x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2))))) as proof of (((eq (fofType->Prop)) (f x1)) (x0 (g x1)))
% Found (((((functional_extensionality_dep fofType) (fun (x4:fofType)=> Prop)) (f x1)) (x0 (g x1))) (fun (x2:fofType)=> ((((eq_sym Prop) ((x0 (g x1)) x2)) ((f x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2))))) as proof of (((eq (fofType->Prop)) (f x1)) (x0 (g x1)))
% Found eq_ref00:=(eq_ref0 ((x0 (g x1)) x2)):(((eq Prop) ((x0 (g x1)) x2)) ((x0 (g x1)) x2))
% Found (eq_ref0 ((x0 (g x1)) x2)) as proof of (((eq Prop) ((x0 (g x1)) x2)) ((f x1) x2))
% Found ((eq_ref Prop) ((x0 (g x1)) x2)) as proof of (((eq Prop) ((x0 (g x1)) x2)) ((f x1) x2))
% Found ((eq_ref Prop) ((x0 (g x1)) x2)) as proof of (((eq Prop) ((x0 (g x1)) x2)) ((f x1) x2))
% Found ((eq_ref Prop) ((x0 (g x1)) x2)) as proof of (((eq Prop) ((x0 (g x1)) x2)) ((f x1) x2))
% Found (eq_sym100 ((eq_ref Prop) ((x0 (g x1)) x2))) as proof of (((eq Prop) ((f x1) x2)) ((x0 (g x1)) x2))
% Found ((eq_sym10 ((f x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2))) as proof of (((eq Prop) ((f x1) x2)) ((x0 (g x1)) x2))
% Found (((eq_sym1 ((x0 (g x1)) x2)) ((f x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2))) as proof of (((eq Prop) ((f x1) x2)) ((x0 (g x1)) x2))
% Found ((((eq_sym Prop) ((x0 (g x1)) x2)) ((f x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2))) as proof of (((eq Prop) ((f x1) x2)) ((x0 (g x1)) x2))
% Found (fun (x2:fofType)=> ((((eq_sym Prop) ((x0 (g x1)) x2)) ((f x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2)))) as proof of (((eq Prop) ((f x1) x2)) ((x0 (g x1)) x2))
% Found (fun (x2:fofType)=> ((((eq_sym Prop) ((x0 (g x1)) x2)) ((f x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2)))) as proof of (forall (x:fofType), (((eq Prop) ((f x1) x)) ((x0 (g x1)) x)))
% Found (functional_extensionality0000 (fun (x2:fofType)=> ((((eq_sym Prop) ((x0 (g x1)) x2)) ((f x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2))))) as proof of (((eq (fofType->Prop)) (f x1)) (x0 (g x1)))
% Found ((functional_extensionality000 (x0 (g x1))) (fun (x2:fofType)=> ((((eq_sym Prop) ((x0 (g x1)) x2)) ((f x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2))))) as proof of (((eq (fofType->Prop)) (f x1)) (x0 (g x1)))
% Found (((functional_extensionality00 (f x1)) (x0 (g x1))) (fun (x2:fofType)=> ((((eq_sym Prop) ((x0 (g x1)) x2)) ((f x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2))))) as proof of (((eq (fofType->Prop)) (f x1)) (x0 (g x1)))
% Found ((((functional_extensionality0 Prop) (f x1)) (x0 (g x1))) (fun (x2:fofType)=> ((((eq_sym Prop) ((x0 (g x1)) x2)) ((f x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2))))) as proof of (((eq (fofType->Prop)) (f x1)) (x0 (g x1)))
% Found (((((functional_extensionality fofType) Prop) (f x1)) (x0 (g x1))) (fun (x2:fofType)=> ((((eq_sym Prop) ((x0 (g x1)) x2)) ((f x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2))))) as proof of (((eq (fofType->Prop)) (f x1)) (x0 (g x1)))
% Found eq_ref00:=(eq_ref0 ((x0 (g x1)) x2)):(((eq Prop) ((x0 (g x1)) x2)) ((x0 (g x1)) x2))
% Found (eq_ref0 ((x0 (g x1)) x2)) as proof of (((eq Prop) ((x0 (g x1)) x2)) ((f x1) x2))
% Found ((eq_ref Prop) ((x0 (g x1)) x2)) as proof of (((eq Prop) ((x0 (g x1)) x2)) ((f x1) x2))
% Found ((eq_ref Prop) ((x0 (g x1)) x2)) as proof of (((eq Prop) ((x0 (g x1)) x2)) ((f x1) x2))
% Found ((eq_ref Prop) ((x0 (g x1)) x2)) as proof of (((eq Prop) ((x0 (g x1)) x2)) ((f x1) x2))
% Found (eq_sym100 ((eq_ref Prop) ((x0 (g x1)) x2))) as proof of (((eq Prop) ((f x1) x2)) ((x0 (g x1)) x2))
% Found ((eq_sym10 ((f x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2))) as proof of (((eq Prop) ((f x1) x2)) ((x0 (g x1)) x2))
% Found (((eq_sym1 ((x0 (g x1)) x2)) ((f x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2))) as proof of (((eq Prop) ((f x1) x2)) ((x0 (g x1)) x2))
% Found ((((eq_sym Prop) ((x0 (g x1)) x2)) ((f x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2))) as proof of (((eq Prop) ((f x1) x2)) ((x0 (g x1)) x2))
% Found (fun (x2:fofType)=> ((((eq_sym Prop) ((x0 (g x1)) x2)) ((f x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2)))) as proof of (((eq Prop) ((f x1) x2)) ((x0 (g x1)) x2))
% Found (fun (x2:fofType)=> ((((eq_sym Prop) ((x0 (g x1)) x2)) ((f x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2)))) as proof of (forall (x:fofType), (((eq Prop) ((f x1) x)) ((x0 (g x1)) x)))
% Found (functional_extensionality_dep0000 (fun (x2:fofType)=> ((((eq_sym Prop) ((x0 (g x1)) x2)) ((f x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2))))) as proof of (((eq (fofType->Prop)) (f x1)) (x0 (g x1)))
% Found ((functional_extensionality_dep000 (x0 (g x1))) (fun (x2:fofType)=> ((((eq_sym Prop) ((x0 (g x1)) x2)) ((f x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2))))) as proof of (((eq (fofType->Prop)) (f x1)) (x0 (g x1)))
% Found (((functional_extensionality_dep00 (f x1)) (x0 (g x1))) (fun (x2:fofType)=> ((((eq_sym Prop) ((x0 (g x1)) x2)) ((f x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2))))) as proof of (((eq (fofType->Prop)) (f x1)) (x0 (g x1)))
% Found ((((functional_extensionality_dep0 (fun (x4:fofType)=> Prop)) (f x1)) (x0 (g x1))) (fun (x2:fofType)=> ((((eq_sym Prop) ((x0 (g x1)) x2)) ((f x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2))))) as proof of (((eq (fofType->Prop)) (f x1)) (x0 (g x1)))
% Found (((((functional_extensionality_dep fofType) (fun (x4:fofType)=> Prop)) (f x1)) (x0 (g x1))) (fun (x2:fofType)=> ((((eq_sym Prop) ((x0 (g x1)) x2)) ((f x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2))))) as proof of (((eq (fofType->Prop)) (f x1)) (x0 (g x1)))
% Found eq_ref00:=(eq_ref0 (x0 (g x1))):(((eq (fofType->Prop)) (x0 (g x1))) (x0 (g x1)))
% Found (eq_ref0 (x0 (g x1))) as proof of (((eq (fofType->Prop)) (x0 (g x1))) (f x1))
% Found ((eq_ref (fofType->Prop)) (x0 (g x1))) as proof of (((eq (fofType->Prop)) (x0 (g x1))) (f x1))
% Found ((eq_ref (fofType->Prop)) (x0 (g x1))) as proof of (((eq (fofType->Prop)) (x0 (g x1))) (f x1))
% Found ((eq_ref (fofType->Prop)) (x0 (g x1))) as proof of (((eq (fofType->Prop)) (x0 (g x1))) (f x1))
% Found (eq_sym100 ((eq_ref (fofType->Prop)) (x0 (g x1)))) as proof of (((eq (fofType->Prop)) (f x1)) (x0 (g x1)))
% Found ((eq_sym10 (f x1)) ((eq_ref (fofType->Prop)) (x0 (g x1)))) as proof of (((eq (fofType->Prop)) (f x1)) (x0 (g x1)))
% Found (((eq_sym1 (x0 (g x1))) (f x1)) ((eq_ref (fofType->Prop)) (x0 (g x1)))) as proof of (((eq (fofType->Prop)) (f x1)) (x0 (g x1)))
% Found ((((eq_sym (fofType->Prop)) (x0 (g x1))) (f x1)) ((eq_ref (fofType->Prop)) (x0 (g x1)))) as proof of (((eq (fofType->Prop)) (f x1)) (x0 (g x1)))
% Found eq_ref00:=(eq_ref0 (x0 (g x1))):(((eq (fofType->Prop)) (x0 (g x1))) (x0 (g x1)))
% Found (eq_ref0 (x0 (g x1))) as proof of (((eq (fofType->Prop)) (x0 (g x1))) (f x1))
% Found ((eq_ref (fofType->Prop)) (x0 (g x1))) as proof of (((eq (fofType->Prop)) (x0 (g x1))) (f x1))
% Found ((eq_ref (fofType->Prop)) (x0 (g x1))) as proof of (((eq (fofType->Prop)) (x0 (g x1))) (f x1))
% Found ((eq_ref (fofType->Prop)) (x0 (g x1))) as proof of (((eq (fofType->Prop)) (x0 (g x1))) (f x1))
% Found (eq_sym100 ((eq_ref (fofType->Prop)) (x0 (g x1)))) as proof of (((eq (fofType->Prop)) (f x1)) (x0 (g x1)))
% Found ((eq_sym10 (f x1)) ((eq_ref (fofType->Prop)) (x0 (g x1)))) as proof of (((eq (fofType->Prop)) (f x1)) (x0 (g x1)))
% Found (((eq_sym1 (x0 (g x1))) (f x1)) ((eq_ref (fofType->Prop)) (x0 (g x1)))) as proof of (((eq (fofType->Prop)) (f x1)) (x0 (g x1)))
% Found ((((eq_sym (fofType->Prop)) (x0 (g x1))) (f x1)) ((eq_ref (fofType->Prop)) (x0 (g x1)))) as proof of (((eq (fofType->Prop)) (f x1)) (x0 (g x1)))
% Found eq_ref00:=(eq_ref0 (x0 (g x1))):(((eq (fofType->Prop)) (x0 (g x1))) (x0 (g x1)))
% Found (eq_ref0 (x0 (g x1))) as proof of (((eq (fofType->Prop)) (x0 (g x1))) (f x1))
% Found ((eq_ref (fofType->Prop)) (x0 (g x1))) as proof of (((eq (fofType->Prop)) (x0 (g x1))) (f x1))
% Found ((eq_ref (fofType->Prop)) (x0 (g x1))) as proof of (((eq (fofType->Prop)) (x0 (g x1))) (f x1))
% Found ((eq_ref (fofType->Prop)) (x0 (g x1))) as proof of (((eq (fofType->Prop)) (x0 (g x1))) (f x1))
% Found (eq_sym100 ((eq_ref (fofType->Prop)) (x0 (g x1)))) as proof of (((eq (fofType->Prop)) (f x1)) (x0 (g x1)))
% Found ((eq_sym10 (f x1)) ((eq_ref (fofType->Prop)) (x0 (g x1)))) as proof of (((eq (fofType->Prop)) (f x1)) (x0 (g x1)))
% Found (((eq_sym1 (x0 (g x1))) (f x1)) ((eq_ref (fofType->Prop)) (x0 (g x1)))) as proof of (((eq (fofType->Prop)) (f x1)) (x0 (g x1)))
% Found ((((eq_sym (fofType->Prop)) (x0 (g x1))) (f x1)) ((eq_ref (fofType->Prop)) (x0 (g x1)))) as proof of (((eq (fofType->Prop)) (f x1)) (x0 (g x1)))
% Found eq_ref00:=(eq_ref0 (x0 (g x1))):(((eq (fofType->Prop)) (x0 (g x1))) (x0 (g x1)))
% Found (eq_ref0 (x0 (g x1))) as proof of (((eq (fofType->Prop)) (x0 (g x1))) (f x1))
% Found ((eq_ref (fofType->Prop)) (x0 (g x1))) as proof of (((eq (fofType->Prop)) (x0 (g x1))) (f x1))
% Found ((eq_ref (fofType->Prop)) (x0 (g x1))) as proof of (((eq (fofType->Prop)) (x0 (g x1))) (f x1))
% Found ((eq_ref (fofType->Prop)) (x0 (g x1))) as proof of (((eq (fofType->Prop)) (x0 (g x1))) (f x1))
% Found (eq_sym100 ((eq_ref (fofType->Prop)) (x0 (g x1)))) as proof of (((eq (fofType->Prop)) (f x1)) (x0 (g x1)))
% Found ((eq_sym10 (f x1)) ((eq_ref (fofType->Prop)) (x0 (g x1)))) as proof of (((eq (fofType->Prop)) (f x1)) (x0 (g x1)))
% Found (((eq_sym1 (x0 (g x1))) (f x1)) ((eq_ref (fofType->Prop)) (x0 (g x1)))) as proof of (((eq (fofType->Prop)) (f x1)) (x0 (g x1)))
% Found ((((eq_sym (fofType->Prop)) (x0 (g x1))) (f x1)) ((eq_ref (fofType->Prop)) (x0 (g x1)))) as proof of (((eq (fofType->Prop)) (f x1)) (x0 (g x1)))
% Found eq_ref00:=(eq_ref0 ((x0 (g x1)) x2)):(((eq Prop) ((x0 (g x1)) x2)) ((x0 (g x1)) x2))
% Found (eq_ref0 ((x0 (g x1)) x2)) as proof of (((eq Prop) ((x0 (g x1)) x2)) ((f x1) x2))
% Found ((eq_ref Prop) ((x0 (g x1)) x2)) as proof of (((eq Prop) ((x0 (g x1)) x2)) ((f x1) x2))
% Found ((eq_ref Prop) ((x0 (g x1)) x2)) as proof of (((eq Prop) ((x0 (g x1)) x2)) ((f x1) x2))
% Found (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2))) as proof of (((eq Prop) ((x0 (g x1)) x2)) ((f x1) x2))
% Found (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2))) as proof of (forall (x:fofType), (((eq Prop) ((x0 (g x1)) x)) ((f x1) x)))
% Found (functional_extensionality_dep0100 (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2)))) as proof of (forall (P:((fofType->Prop)->Prop)), ((P (x0 (g x1)))->(P (f x1))))
% Found ((functional_extensionality_dep010 (f x1)) (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2)))) as proof of (forall (P:((fofType->Prop)->Prop)), ((P (x0 (g x1)))->(P (f x1))))
% Found (((functional_extensionality_dep01 (x0 (g x1))) (f x1)) (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2)))) as proof of (forall (P:((fofType->Prop)->Prop)), ((P (x0 (g x1)))->(P (f x1))))
% Found ((((functional_extensionality_dep0 (fun (x4:fofType)=> Prop)) (x0 (g x1))) (f x1)) (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2)))) as proof of (forall (P:((fofType->Prop)->Prop)), ((P (x0 (g x1)))->(P (f x1))))
% Found ((((functional_extensionality_dep0 (fun (x4:fofType)=> Prop)) (x0 (g x1))) (f x1)) (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2)))) as proof of (forall (P:((fofType->Prop)->Prop)), ((P (x0 (g x1)))->(P (f x1))))
% Found eq_ref00:=(eq_ref0 ((x0 (g x1)) x2)):(((eq Prop) ((x0 (g x1)) x2)) ((x0 (g x1)) x2))
% Found (eq_ref0 ((x0 (g x1)) x2)) as proof of (((eq Prop) ((x0 (g x1)) x2)) ((f x1) x2))
% Found ((eq_ref Prop) ((x0 (g x1)) x2)) as proof of (((eq Prop) ((x0 (g x1)) x2)) ((f x1) x2))
% Found ((eq_ref Prop) ((x0 (g x1)) x2)) as proof of (((eq Prop) ((x0 (g x1)) x2)) ((f x1) x2))
% Found (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2))) as proof of (((eq Prop) ((x0 (g x1)) x2)) ((f x1) x2))
% Found (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2))) as proof of (forall (x:fofType), (((eq Prop) ((x0 (g x1)) x)) ((f x1) x)))
% Found (functional_extensionality0100 (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2)))) as proof of (forall (P:((fofType->Prop)->Prop)), ((P (x0 (g x1)))->(P (f x1))))
% Found ((functional_extensionality010 (f x1)) (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2)))) as proof of (forall (P:((fofType->Prop)->Prop)), ((P (x0 (g x1)))->(P (f x1))))
% Found (((functional_extensionality01 (x0 (g x1))) (f x1)) (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2)))) as proof of (forall (P:((fofType->Prop)->Prop)), ((P (x0 (g x1)))->(P (f x1))))
% Found ((((functional_extensionality0 Prop) (x0 (g x1))) (f x1)) (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2)))) as proof of (forall (P:((fofType->Prop)->Prop)), ((P (x0 (g x1)))->(P (f x1))))
% Found ((((functional_extensionality0 Prop) (x0 (g x1))) (f x1)) (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2)))) as proof of (forall (P:((fofType->Prop)->Prop)), ((P (x0 (g x1)))->(P (f x1))))
% Found eq_ref00:=(eq_ref0 ((x0 (g x1)) y)):(((eq Prop) ((x0 (g x1)) y)) ((x0 (g x1)) y))
% Found (eq_ref0 ((x0 (g x1)) y)) as proof of (((eq Prop) ((x0 (g x1)) y)) ((f x1) y))
% Found ((eq_ref Prop) ((x0 (g x1)) y)) as proof of (((eq Prop) ((x0 (g x1)) y)) ((f x1) y))
% Found ((eq_ref Prop) ((x0 (g x1)) y)) as proof of (((eq Prop) ((x0 (g x1)) y)) ((f x1) y))
% Found ((eq_ref Prop) ((x0 (g x1)) y)) as proof of (((eq Prop) ((x0 (g x1)) y)) ((f x1) y))
% Found (eq_sym100 ((eq_ref Prop) ((x0 (g x1)) y))) as proof of (forall (P:(Prop->Prop)), ((P ((f x1) y))->(P ((x0 (g x1)) y))))
% Found ((eq_sym10 ((f x1) y)) ((eq_ref Prop) ((x0 (g x1)) y))) as proof of (forall (P:(Prop->Prop)), ((P ((f x1) y))->(P ((x0 (g x1)) y))))
% Found (((eq_sym1 ((x0 (g x1)) y)) ((f x1) y)) ((eq_ref Prop) ((x0 (g x1)) y))) as proof of (forall (P:(Prop->Prop)), ((P ((f x1) y))->(P ((x0 (g x1)) y))))
% Found ((((eq_sym Prop) ((x0 (g x1)) y)) ((f x1) y)) ((eq_ref Prop) ((x0 (g x1)) y))) as proof of (forall (P:(Prop->Prop)), ((P ((f x1) y))->(P ((x0 (g x1)) y))))
% Found ((((eq_sym Prop) ((x0 (g x1)) y)) ((f x1) y)) ((eq_ref Prop) ((x0 (g x1)) y))) as proof of (forall (P:(Prop->Prop)), ((P ((f x1) y))->(P ((x0 (g x1)) y))))
% Found (fun (y:fofType)=> ((((eq_sym Prop) ((x0 (g x1)) y)) ((f x1) y)) ((eq_ref Prop) ((x0 (g x1)) y)))) as proof of (((eq Prop) ((f x1) y)) ((x0 (g x1)) y))
% Found eq_ref00:=(eq_ref0 ((x0 (g x1)) y)):(((eq Prop) ((x0 (g x1)) y)) ((x0 (g x1)) y))
% Found (eq_ref0 ((x0 (g x1)) y)) as proof of (((eq Prop) ((x0 (g x1)) y)) ((f x1) y))
% Found ((eq_ref Prop) ((x0 (g x1)) y)) as proof of (((eq Prop) ((x0 (g x1)) y)) ((f x1) y))
% Found ((eq_ref Prop) ((x0 (g x1)) y)) as proof of (((eq Prop) ((x0 (g x1)) y)) ((f x1) y))
% Found ((eq_ref Prop) ((x0 (g x1)) y)) as proof of (((eq Prop) ((x0 (g x1)) y)) ((f x1) y))
% Found (eq_sym100 ((eq_ref Prop) ((x0 (g x1)) y))) as proof of (((eq Prop) ((f x1) y)) ((x0 (g x1)) y))
% Found ((eq_sym10 ((f x1) y)) ((eq_ref Prop) ((x0 (g x1)) y))) as proof of (((eq Prop) ((f x1) y)) ((x0 (g x1)) y))
% Found (((eq_sym1 ((x0 (g x1)) y)) ((f x1) y)) ((eq_ref Prop) ((x0 (g x1)) y))) as proof of (((eq Prop) ((f x1) y)) ((x0 (g x1)) y))
% Found ((((eq_sym Prop) ((x0 (g x1)) y)) ((f x1) y)) ((eq_ref Prop) ((x0 (g x1)) y))) as proof of (((eq Prop) ((f x1) y)) ((x0 (g x1)) y))
% Found (fun (y:fofType)=> ((((eq_sym Prop) ((x0 (g x1)) y)) ((f x1) y)) ((eq_ref Prop) ((x0 (g x1)) y)))) as proof of (((eq Prop) ((f x1) y)) ((x0 (g x1)) y))
% Found eq_ref00:=(eq_ref0 ((x0 (g x1)) y)):(((eq Prop) ((x0 (g x1)) y)) ((x0 (g x1)) y))
% Found (eq_ref0 ((x0 (g x1)) y)) as proof of (((eq Prop) ((x0 (g x1)) y)) ((f x1) y))
% Found ((eq_ref Prop) ((x0 (g x1)) y)) as proof of (((eq Prop) ((x0 (g x1)) y)) ((f x1) y))
% Found ((eq_ref Prop) ((x0 (g x1)) y)) as proof of (((eq Prop) ((x0 (g x1)) y)) ((f x1) y))
% Found ((eq_ref Prop) ((x0 (g x1)) y)) as proof of (((eq Prop) ((x0 (g x1)) y)) ((f x1) y))
% Found (eq_sym100 ((eq_ref Prop) ((x0 (g x1)) y))) as proof of (((eq Prop) ((f x1) y)) ((x0 (g x1)) y))
% Found ((eq_sym10 ((f x1) y)) ((eq_ref Prop) ((x0 (g x1)) y))) as proof of (((eq Prop) ((f x1) y)) ((x0 (g x1)) y))
% Found (((eq_sym1 ((x0 (g x1)) y)) ((f x1) y)) ((eq_ref Prop) ((x0 (g x1)) y))) as proof of (((eq Prop) ((f x1) y)) ((x0 (g x1)) y))
% Found ((((eq_sym Prop) ((x0 (g x1)) y)) ((f x1) y)) ((eq_ref Prop) ((x0 (g x1)) y))) as proof of (((eq Prop) ((f x1) y)) ((x0 (g x1)) y))
% Found (fun (y:fofType)=> ((((eq_sym Prop) ((x0 (g x1)) y)) ((f x1) y)) ((eq_ref Prop) ((x0 (g x1)) y)))) as proof of (((eq Prop) ((f x1) y)) ((x0 (g x1)) y))
% Found eq_ref00:=(eq_ref0 ((x0 (g x1)) x2)):(((eq Prop) ((x0 (g x1)) x2)) ((x0 (g x1)) x2))
% Found (eq_ref0 ((x0 (g x1)) x2)) as proof of (((eq Prop) ((x0 (g x1)) x2)) ((b x1) x2))
% Found ((eq_ref Prop) ((x0 (g x1)) x2)) as proof of (((eq Prop) ((x0 (g x1)) x2)) ((b x1) x2))
% Found ((eq_ref Prop) ((x0 (g x1)) x2)) as proof of (((eq Prop) ((x0 (g x1)) x2)) ((b x1) x2))
% Found (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2))) as proof of (((eq Prop) ((x0 (g x1)) x2)) ((b x1) x2))
% Found (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2))) as proof of (forall (x:fofType), (((eq Prop) ((x0 (g x1)) x)) ((b x1) x)))
% Found (functional_extensionality_dep0100 (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2)))) as proof of (((eq (fofType->Prop)) (x0 (g x1))) (b x1))
% Found ((functional_extensionality_dep010 (b x1)) (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2)))) as proof of (((eq (fofType->Prop)) (x0 (g x1))) (b x1))
% Found (((functional_extensionality_dep01 (x0 (g x1))) (b x1)) (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2)))) as proof of (((eq (fofType->Prop)) (x0 (g x1))) (b x1))
% Found ((((functional_extensionality_dep0 (fun (x4:fofType)=> Prop)) (x0 (g x1))) (b x1)) (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2)))) as proof of (((eq (fofType->Prop)) (x0 (g x1))) (b x1))
% Found eq_ref00:=(eq_ref0 ((x0 (g x1)) x2)):(((eq Prop) ((x0 (g x1)) x2)) ((x0 (g x1)) x2))
% Found (eq_ref0 ((x0 (g x1)) x2)) as proof of (((eq Prop) ((x0 (g x1)) x2)) ((b x1) x2))
% Found ((eq_ref Prop) ((x0 (g x1)) x2)) as proof of (((eq Prop) ((x0 (g x1)) x2)) ((b x1) x2))
% Found ((eq_ref Prop) ((x0 (g x1)) x2)) as proof of (((eq Prop) ((x0 (g x1)) x2)) ((b x1) x2))
% Found (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2))) as proof of (((eq Prop) ((x0 (g x1)) x2)) ((b x1) x2))
% Found (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2))) as proof of (forall (x:fofType), (((eq Prop) ((x0 (g x1)) x)) ((b x1) x)))
% Found (functional_extensionality0100 (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2)))) as proof of (((eq (fofType->Prop)) (x0 (g x1))) (b x1))
% Found ((functional_extensionality010 (b x1)) (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2)))) as proof of (((eq (fofType->Prop)) (x0 (g x1))) (b x1))
% Found (((functional_extensionality01 (x0 (g x1))) (b x1)) (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2)))) as proof of (((eq (fofType->Prop)) (x0 (g x1))) (b x1))
% Found ((((functional_extensionality0 Prop) (x0 (g x1))) (b x1)) (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2)))) as proof of (((eq (fofType->Prop)) (x0 (g x1))) (b x1))
% Found eq_ref00:=(eq_ref0 (b x2)):(((eq Prop) (b x2)) (b x2))
% Found (eq_ref0 (b x2)) as proof of (((eq Prop) (b x2)) ((f x1) x2))
% Found ((eq_ref Prop) (b x2)) as proof of (((eq Prop) (b x2)) ((f x1) x2))
% Found ((eq_ref Prop) (b x2)) as proof of (((eq Prop) (b x2)) ((f x1) x2))
% Found ((eq_ref Prop) (b x2)) as proof of (((eq Prop) (b x2)) ((f x1) x2))
% Found (eq_sym100 ((eq_ref Prop) (b x2))) as proof of (((eq Prop) ((f x1) x2)) (b x2))
% Found ((eq_sym10 ((f x1) x2)) ((eq_ref Prop) (b x2))) as proof of (((eq Prop) ((f x1) x2)) (b x2))
% Found (((eq_sym1 (b x2)) ((f x1) x2)) ((eq_ref Prop) (b x2))) as proof of (((eq Prop) ((f x1) x2)) (b x2))
% Found ((((eq_sym Prop) (b x2)) ((f x1) x2)) ((eq_ref Prop) (b x2))) as proof of (((eq Prop) ((f x1) x2)) (b x2))
% Found (fun (x2:fofType)=> ((((eq_sym Prop) (b x2)) ((f x1) x2)) ((eq_ref Prop) (b x2)))) as proof of (((eq Prop) ((f x1) x2)) (b x2))
% Found (fun (x2:fofType)=> ((((eq_sym Prop) (b x2)) ((f x1) x2)) ((eq_ref Prop) (b x2)))) as proof of (forall (x:fofType), (((eq Prop) ((f x1) x)) (b x)))
% Found (functional_extensionality_dep0100 (fun (x2:fofType)=> ((((eq_sym Prop) (b x2)) ((f x1) x2)) ((eq_ref Prop) (b x2))))) as proof of (((eq (fofType->Prop)) (f x1)) b)
% Found ((functional_extensionality_dep010 b) (fun (x2:fofType)=> ((((eq_sym Prop) (b x2)) ((f x1) x2)) ((eq_ref Prop) (b x2))))) as proof of (((eq (fofType->Prop)) (f x1)) b)
% Found (((functional_extensionality_dep01 (f x1)) b) (fun (x2:fofType)=> ((((eq_sym Prop) (b x2)) ((f x1) x2)) ((eq_ref Prop) (b x2))))) as proof of (((eq (fofType->Prop)) (f x1)) b)
% Found ((((functional_extensionality_dep0 (fun (x4:fofType)=> Prop)) (f x1)) b) (fun (x2:fofType)=> ((((eq_sym Prop) (b x2)) ((f x1) x2)) ((eq_ref Prop) (b x2))))) as proof of (((eq (fofType->Prop)) (f x1)) b)
% Found ((((functional_extensionality_dep0 (fun (x4:fofType)=> Prop)) (f x1)) b) (fun (x2:fofType)=> ((((eq_sym Prop) (b x2)) ((f x1) x2)) ((eq_ref Prop) (b x2))))) as proof of (((eq (fofType->Prop)) (f x1)) b)
% Found ((eq_trans0000 ((((functional_extensionality_dep0 (fun (x4:fofType)=> Prop)) (f x1)) b) (fun (x2:fofType)=> ((((eq_sym Prop) (b x2)) ((f x1) x2)) ((eq_ref Prop) (b x2)))))) ((eq_ref (fofType->Prop)) b)) as proof of (((eq (fofType->Prop)) (f x1)) (x0 (g x1)))
% Found (((eq_trans000 (x0 (g x1))) ((((functional_extensionality_dep0 (fun (x4:fofType)=> Prop)) (f x1)) b) (fun (x2:fofType)=> ((((eq_sym Prop) (b x2)) ((f x1) x2)) ((eq_ref Prop) (b x2)))))) ((eq_ref (fofType->Prop)) b)) as proof of (((eq (fofType->Prop)) (f x1)) (x0 (g x1)))
% Found ((((eq_trans00 (x0 (g x1))) (x0 (g x1))) ((((functional_extensionality_dep0 (fun (x4:fofType)=> Prop)) (f x1)) (x0 (g x1))) (fun (x2:fofType)=> ((((eq_sym Prop) ((x0 (g x1)) x2)) ((f x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2)))))) ((eq_ref (fofType->Prop)) (x0 (g x1)))) as proof of (((eq (fofType->Prop)) (f x1)) (x0 (g x1)))
% Found (((((eq_trans0 (f x1)) (x0 (g x1))) (x0 (g x1))) ((((functional_extensionality_dep0 (fun (x4:fofType)=> Prop)) (f x1)) (x0 (g x1))) (fun (x2:fofType)=> ((((eq_sym Prop) ((x0 (g x1)) x2)) ((f x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2)))))) ((eq_ref (fofType->Prop)) (x0 (g x1)))) as proof of (((eq (fofType->Prop)) (f x1)) (x0 (g x1)))
% Found ((((((eq_trans (fofType->Prop)) (f x1)) (x0 (g x1))) (x0 (g x1))) ((((functional_extensionality_dep0 (fun (x4:fofType)=> Prop)) (f x1)) (x0 (g x1))) (fun (x2:fofType)=> ((((eq_sym Prop) ((x0 (g x1)) x2)) ((f x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2)))))) ((eq_ref (fofType->Prop)) (x0 (g x1)))) as proof of (((eq (fofType->Prop)) (f x1)) (x0 (g x1)))
% Found eq_ref00:=(eq_ref0 (b x2)):(((eq Prop) (b x2)) (b x2))
% Found (eq_ref0 (b x2)) as proof of (((eq Prop) (b x2)) ((f x1) x2))
% Found ((eq_ref Prop) (b x2)) as proof of (((eq Prop) (b x2)) ((f x1) x2))
% Found ((eq_ref Prop) (b x2)) as proof of (((eq Prop) (b x2)) ((f x1) x2))
% Found ((eq_ref Prop) (b x2)) as proof of (((eq Prop) (b x2)) ((f x1) x2))
% Found (eq_sym100 ((eq_ref Prop) (b x2))) as proof of (((eq Prop) ((f x1) x2)) (b x2))
% Found ((eq_sym10 ((f x1) x2)) ((eq_ref Prop) (b x2))) as proof of (((eq Prop) ((f x1) x2)) (b x2))
% Found (((eq_sym1 (b x2)) ((f x1) x2)) ((eq_ref Prop) (b x2))) as proof of (((eq Prop) ((f x1) x2)) (b x2))
% Found ((((eq_sym Prop) (b x2)) ((f x1) x2)) ((eq_ref Prop) (b x2))) as proof of (((eq Prop) ((f x1) x2)) (b x2))
% Found (fun (x2:fofType)=> ((((eq_sym Prop) (b x2)) ((f x1) x2)) ((eq_ref Prop) (b x2)))) as proof of (((eq Prop) ((f x1) x2)) (b x2))
% Found (fun (x2:fofType)=> ((((eq_sym Prop) (b x2)) ((f x1) x2)) ((eq_ref Prop) (b x2)))) as proof of (forall (x:fofType), (((eq Prop) ((f x1) x)) (b x)))
% Found (functional_extensionality0100 (fun (x2:fofType)=> ((((eq_sym Prop) (b x2)) ((f x1) x2)) ((eq_ref Prop) (b x2))))) as proof of (((eq (fofType->Prop)) (f x1)) b)
% Found ((functional_extensionality010 b) (fun (x2:fofType)=> ((((eq_sym Prop) (b x2)) ((f x1) x2)) ((eq_ref Prop) (b x2))))) as proof of (((eq (fofType->Prop)) (f x1)) b)
% Found (((functional_extensionality01 (f x1)) b) (fun (x2:fofType)=> ((((eq_sym Prop) (b x2)) ((f x1) x2)) ((eq_ref Prop) (b x2))))) as proof of (((eq (fofType->Prop)) (f x1)) b)
% Found ((((functional_extensionality0 Prop) (f x1)) b) (fun (x2:fofType)=> ((((eq_sym Prop) (b x2)) ((f x1) x2)) ((eq_ref Prop) (b x2))))) as proof of (((eq (fofType->Prop)) (f x1)) b)
% Found ((((functional_extensionality0 Prop) (f x1)) b) (fun (x2:fofType)=> ((((eq_sym Prop) (b x2)) ((f x1) x2)) ((eq_ref Prop) (b x2))))) as proof of (((eq (fofType->Prop)) (f x1)) b)
% Found ((eq_trans0000 ((((functional_extensionality0 Prop) (f x1)) b) (fun (x2:fofType)=> ((((eq_sym Prop) (b x2)) ((f x1) x2)) ((eq_ref Prop) (b x2)))))) ((eq_ref (fofType->Prop)) b)) as proof of (((eq (fofType->Prop)) (f x1)) (x0 (g x1)))
% Found (((eq_trans000 (x0 (g x1))) ((((functional_extensionality0 Prop) (f x1)) b) (fun (x2:fofType)=> ((((eq_sym Prop) (b x2)) ((f x1) x2)) ((eq_ref Prop) (b x2)))))) ((eq_ref (fofType->Prop)) b)) as proof of (((eq (fofType->Prop)) (f x1)) (x0 (g x1)))
% Found ((((eq_trans00 (x0 (g x1))) (x0 (g x1))) ((((functional_extensionality0 Prop) (f x1)) (x0 (g x1))) (fun (x2:fofType)=> ((((eq_sym Prop) ((x0 (g x1)) x2)) ((f x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2)))))) ((eq_ref (fofType->Prop)) (x0 (g x1)))) as proof of (((eq (fofType->Prop)) (f x1)) (x0 (g x1)))
% Found (((((eq_trans0 (f x1)) (x0 (g x1))) (x0 (g x1))) ((((functional_extensionality0 Prop) (f x1)) (x0 (g x1))) (fun (x2:fofType)=> ((((eq_sym Prop) ((x0 (g x1)) x2)) ((f x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2)))))) ((eq_ref (fofType->Prop)) (x0 (g x1)))) as proof of (((eq (fofType->Prop)) (f x1)) (x0 (g x1)))
% Found ((((((eq_trans (fofType->Prop)) (f x1)) (x0 (g x1))) (x0 (g x1))) ((((functional_extensionality0 Prop) (f x1)) (x0 (g x1))) (fun (x2:fofType)=> ((((eq_sym Prop) ((x0 (g x1)) x2)) ((f x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2)))))) ((eq_ref (fofType->Prop)) (x0 (g x1)))) as proof of (((eq (fofType->Prop)) (f x1)) (x0 (g x1)))
% Found eq_ref00:=(eq_ref0 ((x0 (g x1)) x2)):(((eq Prop) ((x0 (g x1)) x2)) ((x0 (g x1)) x2))
% Found (eq_ref0 ((x0 (g x1)) x2)) as proof of (((eq Prop) ((x0 (g x1)) x2)) ((b x1) x2))
% Found ((eq_ref Prop) ((x0 (g x1)) x2)) as proof of (((eq Prop) ((x0 (g x1)) x2)) ((b x1) x2))
% Found ((eq_ref Prop) ((x0 (g x1)) x2)) as proof of (((eq Prop) ((x0 (g x1)) x2)) ((b x1) x2))
% Found ((eq_ref Prop) ((x0 (g x1)) x2)) as proof of (((eq Prop) ((x0 (g x1)) x2)) ((b x1) x2))
% Found (eq_sym100 ((eq_ref Prop) ((x0 (g x1)) x2))) as proof of (((eq Prop) ((b x1) x2)) ((x0 (g x1)) x2))
% Found ((eq_sym10 ((b x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2))) as proof of (((eq Prop) ((b x1) x2)) ((x0 (g x1)) x2))
% Found (((eq_sym1 ((x0 (g x1)) x2)) ((b x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2))) as proof of (((eq Prop) ((b x1) x2)) ((x0 (g x1)) x2))
% Found ((((eq_sym Prop) ((x0 (g x1)) x2)) ((b x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2))) as proof of (((eq Prop) ((b x1) x2)) ((x0 (g x1)) x2))
% Found (fun (x2:fofType)=> ((((eq_sym Prop) ((x0 (g x1)) x2)) ((b x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2)))) as proof of (((eq Prop) ((b x1) x2)) ((x0 (g x1)) x2))
% Found (fun (x2:fofType)=> ((((eq_sym Prop) ((x0 (g x1)) x2)) ((b x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2)))) as proof of (forall (x:fofType), (((eq Prop) ((b x1) x)) ((x0 (g x1)) x)))
% Found (functional_extensionality0100 (fun (x2:fofType)=> ((((eq_sym Prop) ((x0 (g x1)) x2)) ((b x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2))))) as proof of (((eq (fofType->Prop)) (b x1)) (x0 (g x1)))
% Found ((functional_extensionality010 (x0 (g x1))) (fun (x2:fofType)=> ((((eq_sym Prop) ((x0 (g x1)) x2)) ((b x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2))))) as proof of (((eq (fofType->Prop)) (b x1)) (x0 (g x1)))
% Found (((functional_extensionality01 (b x1)) (x0 (g x1))) (fun (x2:fofType)=> ((((eq_sym Prop) ((x0 (g x1)) x2)) ((b x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2))))) as proof of (((eq (fofType->Prop)) (b x1)) (x0 (g x1)))
% Found ((((functional_extensionality0 Prop) (b x1)) (x0 (g x1))) (fun (x2:fofType)=> ((((eq_sym Prop) ((x0 (g x1)) x2)) ((b x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2))))) as proof of (((eq (fofType->Prop)) (b x1)) (x0 (g x1)))
% Found ((((functional_extensionality0 Prop) (b x1)) (x0 (g x1))) (fun (x2:fofType)=> ((((eq_sym Prop) ((x0 (g x1)) x2)) ((b x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2))))) as proof of (((eq (fofType->Prop)) (b x1)) (x0 (g x1)))
% Found (eq_sym000 ((((functional_extensionality0 Prop) (b x1)) (x0 (g x1))) (fun (x2:fofType)=> ((((eq_sym Prop) ((x0 (g x1)) x2)) ((b x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2)))))) as proof of (((eq (fofType->Prop)) (x0 (g x1))) (b x1))
% Found ((eq_sym00 (x0 (g x1))) ((((functional_extensionality0 Prop) (b x1)) (x0 (g x1))) (fun (x2:fofType)=> ((((eq_sym Prop) ((x0 (g x1)) x2)) ((b x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2)))))) as proof of (((eq (fofType->Prop)) (x0 (g x1))) (b x1))
% Found (((eq_sym0 (b x1)) (x0 (g x1))) ((((functional_extensionality0 Prop) (b x1)) (x0 (g x1))) (fun (x2:fofType)=> ((((eq_sym Prop) ((x0 (g x1)) x2)) ((b x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2)))))) as proof of (((eq (fofType->Prop)) (x0 (g x1))) (b x1))
% Found ((((eq_sym (fofType->Prop)) (b x1)) (x0 (g x1))) ((((functional_extensionality0 Prop) (b x1)) (x0 (g x1))) (fun (x2:fofType)=> ((((eq_sym Prop) ((x0 (g x1)) x2)) ((b x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2)))))) as proof of (((eq (fofType->Prop)) (x0 (g x1))) (b x1))
% Found eq_ref00:=(eq_ref0 ((x0 (g x1)) x2)):(((eq Prop) ((x0 (g x1)) x2)) ((x0 (g x1)) x2))
% Found (eq_ref0 ((x0 (g x1)) x2)) as proof of (((eq Prop) ((x0 (g x1)) x2)) ((b x1) x2))
% Found ((eq_ref Prop) ((x0 (g x1)) x2)) as proof of (((eq Prop) ((x0 (g x1)) x2)) ((b x1) x2))
% Found ((eq_ref Prop) ((x0 (g x1)) x2)) as proof of (((eq Prop) ((x0 (g x1)) x2)) ((b x1) x2))
% Found ((eq_ref Prop) ((x0 (g x1)) x2)) as proof of (((eq Prop) ((x0 (g x1)) x2)) ((b x1) x2))
% Found (eq_sym100 ((eq_ref Prop) ((x0 (g x1)) x2))) as proof of (((eq Prop) ((b x1) x2)) ((x0 (g x1)) x2))
% Found ((eq_sym10 ((b x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2))) as proof of (((eq Prop) ((b x1) x2)) ((x0 (g x1)) x2))
% Found (((eq_sym1 ((x0 (g x1)) x2)) ((b x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2))) as proof of (((eq Prop) ((b x1) x2)) ((x0 (g x1)) x2))
% Found ((((eq_sym Prop) ((x0 (g x1)) x2)) ((b x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2))) as proof of (((eq Prop) ((b x1) x2)) ((x0 (g x1)) x2))
% Found (fun (x2:fofType)=> ((((eq_sym Prop) ((x0 (g x1)) x2)) ((b x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2)))) as proof of (((eq Prop) ((b x1) x2)) ((x0 (g x1)) x2))
% Found (fun (x2:fofType)=> ((((eq_sym Prop) ((x0 (g x1)) x2)) ((b x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2)))) as proof of (forall (x:fofType), (((eq Prop) ((b x1) x)) ((x0 (g x1)) x)))
% Found (functional_extensionality_dep0100 (fun (x2:fofType)=> ((((eq_sym Prop) ((x0 (g x1)) x2)) ((b x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2))))) as proof of (((eq (fofType->Prop)) (b x1)) (x0 (g x1)))
% Found ((functional_extensionality_dep010 (x0 (g x1))) (fun (x2:fofType)=> ((((eq_sym Prop) ((x0 (g x1)) x2)) ((b x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2))))) as proof of (((eq (fofType->Prop)) (b x1)) (x0 (g x1)))
% Found (((functional_extensionality_dep01 (b x1)) (x0 (g x1))) (fun (x2:fofType)=> ((((eq_sym Prop) ((x0 (g x1)) x2)) ((b x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2))))) as proof of (((eq (fofType->Prop)) (b x1)) (x0 (g x1)))
% Found ((((functional_extensionality_dep0 (fun (x4:fofType)=> Prop)) (b x1)) (x0 (g x1))) (fun (x2:fofType)=> ((((eq_sym Prop) ((x0 (g x1)) x2)) ((b x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2))))) as proof of (((eq (fofType->Prop)) (b x1)) (x0 (g x1)))
% Found ((((functional_extensionality_dep0 (fun (x4:fofType)=> Prop)) (b x1)) (x0 (g x1))) (fun (x2:fofType)=> ((((eq_sym Prop) ((x0 (g x1)) x2)) ((b x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2))))) as proof of (((eq (fofType->Prop)) (b x1)) (x0 (g x1)))
% Found (eq_sym000 ((((functional_extensionality_dep0 (fun (x4:fofType)=> Prop)) (b x1)) (x0 (g x1))) (fun (x2:fofType)=> ((((eq_sym Prop) ((x0 (g x1)) x2)) ((b x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2)))))) as proof of (((eq (fofType->Prop)) (x0 (g x1))) (b x1))
% Found ((eq_sym00 (x0 (g x1))) ((((functional_extensionality_dep0 (fun (x4:fofType)=> Prop)) (b x1)) (x0 (g x1))) (fun (x2:fofType)=> ((((eq_sym Prop) ((x0 (g x1)) x2)) ((b x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2)))))) as proof of (((eq (fofType->Prop)) (x0 (g x1))) (b x1))
% Found (((eq_sym0 (b x1)) (x0 (g x1))) ((((functional_extensionality_dep0 (fun (x4:fofType)=> Prop)) (b x1)) (x0 (g x1))) (fun (x2:fofType)=> ((((eq_sym Prop) ((x0 (g x1)) x2)) ((b x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2)))))) as proof of (((eq (fofType->Prop)) (x0 (g x1))) (b x1))
% Found ((((eq_sym (fofType->Prop)) (b x1)) (x0 (g x1))) ((((functional_extensionality_dep0 (fun (x4:fofType)=> Prop)) (b x1)) (x0 (g x1))) (fun (x2:fofType)=> ((((eq_sym Prop) ((x0 (g x1)) x2)) ((b x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2)))))) as proof of (((eq (fofType->Prop)) (x0 (g x1))) (b x1))
% Found eq_ref00:=(eq_ref0 ((x0 (g x1)) x2)):(((eq Prop) ((x0 (g x1)) x2)) ((x0 (g x1)) x2))
% Found (eq_ref0 ((x0 (g x1)) x2)) as proof of (((eq Prop) ((x0 (g x1)) x2)) ((b x1) x2))
% Found ((eq_ref Prop) ((x0 (g x1)) x2)) as proof of (((eq Prop) ((x0 (g x1)) x2)) ((b x1) x2))
% Found ((eq_ref Prop) ((x0 (g x1)) x2)) as proof of (((eq Prop) ((x0 (g x1)) x2)) ((b x1) x2))
% Found ((eq_ref Prop) ((x0 (g x1)) x2)) as proof of (((eq Prop) ((x0 (g x1)) x2)) ((b x1) x2))
% Found (eq_sym100 ((eq_ref Prop) ((x0 (g x1)) x2))) as proof of (((eq Prop) ((b x1) x2)) ((x0 (g x1)) x2))
% Found ((eq_sym10 ((b x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2))) as proof of (((eq Prop) ((b x1) x2)) ((x0 (g x1)) x2))
% Found (((eq_sym1 ((x0 (g x1)) x2)) ((b x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2))) as proof of (((eq Prop) ((b x1) x2)) ((x0 (g x1)) x2))
% Found ((((eq_sym Prop) ((x0 (g x1)) x2)) ((b x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2))) as proof of (((eq Prop) ((b x1) x2)) ((x0 (g x1)) x2))
% Found (fun (x2:fofType)=> ((((eq_sym Prop) ((x0 (g x1)) x2)) ((b x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2)))) as proof of (((eq Prop) ((b x1) x2)) ((x0 (g x1)) x2))
% Found (fun (x2:fofType)=> ((((eq_sym Prop) ((x0 (g x1)) x2)) ((b x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2)))) as proof of (forall (x:fofType), (((eq Prop) ((b x1) x)) ((x0 (g x1)) x)))
% Found (functional_extensionality_dep0100 (fun (x2:fofType)=> ((((eq_sym Prop) ((x0 (g x1)) x2)) ((b x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2))))) as proof of (((eq (fofType->Prop)) (b x1)) (x0 (g x1)))
% Found ((functional_extensionality_dep010 (x0 (g x1))) (fun (x2:fofType)=> ((((eq_sym Prop) ((x0 (g x1)) x2)) ((b x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2))))) as proof of (((eq (fofType->Prop)) (b x1)) (x0 (g x1)))
% Found (((functional_extensionality_dep01 (b x1)) (x0 (g x1))) (fun (x2:fofType)=> ((((eq_sym Prop) ((x0 (g x1)) x2)) ((b x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2))))) as proof of (((eq (fofType->Prop)) (b x1)) (x0 (g x1)))
% Found ((((functional_extensionality_dep0 (fun (x4:fofType)=> Prop)) (b x1)) (x0 (g x1))) (fun (x2:fofType)=> ((((eq_sym Prop) ((x0 (g x1)) x2)) ((b x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2))))) as proof of (((eq (fofType->Prop)) (b x1)) (x0 (g x1)))
% Found eq_ref00:=(eq_ref0 ((x0 (g x1)) x2)):(((eq Prop) ((x0 (g x1)) x2)) ((x0 (g x1)) x2))
% Found (eq_ref0 ((x0 (g x1)) x2)) as proof of (((eq Prop) ((x0 (g x1)) x2)) ((b x1) x2))
% Found ((eq_ref Prop) ((x0 (g x1)) x2)) as proof of (((eq Prop) ((x0 (g x1)) x2)) ((b x1) x2))
% Found ((eq_ref Prop) ((x0 (g x1)) x2)) as proof of (((eq Prop) ((x0 (g x1)) x2)) ((b x1) x2))
% Found ((eq_ref Prop) ((x0 (g x1)) x2)) as proof of (((eq Prop) ((x0 (g x1)) x2)) ((b x1) x2))
% Found (eq_sym100 ((eq_ref Prop) ((x0 (g x1)) x2))) as proof of (((eq Prop) ((b x1) x2)) ((x0 (g x1)) x2))
% Found ((eq_sym10 ((b x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2))) as proof of (((eq Prop) ((b x1) x2)) ((x0 (g x1)) x2))
% Found (((eq_sym1 ((x0 (g x1)) x2)) ((b x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2))) as proof of (((eq Prop) ((b x1) x2)) ((x0 (g x1)) x2))
% Found ((((eq_sym Prop) ((x0 (g x1)) x2)) ((b x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2))) as proof of (((eq Prop) ((b x1) x2)) ((x0 (g x1)) x2))
% Found (fun (x2:fofType)=> ((((eq_sym Prop) ((x0 (g x1)) x2)) ((b x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2)))) as proof of (((eq Prop) ((b x1) x2)) ((x0 (g x1)) x2))
% Found (fun (x2:fofType)=> ((((eq_sym Prop) ((x0 (g x1)) x2)) ((b x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2)))) as proof of (forall (x:fofType), (((eq Prop) ((b x1) x)) ((x0 (g x1)) x)))
% Found (functional_extensionality0100 (fun (x2:fofType)=> ((((eq_sym Prop) ((x0 (g x1)) x2)) ((b x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2))))) as proof of (((eq (fofType->Prop)) (b x1)) (x0 (g x1)))
% Found ((functional_extensionality010 (x0 (g x1))) (fun (x2:fofType)=> ((((eq_sym Prop) ((x0 (g x1)) x2)) ((b x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2))))) as proof of (((eq (fofType->Prop)) (b x1)) (x0 (g x1)))
% Found (((functional_extensionality01 (b x1)) (x0 (g x1))) (fun (x2:fofType)=> ((((eq_sym Prop) ((x0 (g x1)) x2)) ((b x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2))))) as proof of (((eq (fofType->Prop)) (b x1)) (x0 (g x1)))
% Found ((((functional_extensionality0 Prop) (b x1)) (x0 (g x1))) (fun (x2:fofType)=> ((((eq_sym Prop) ((x0 (g x1)) x2)) ((b x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2))))) as proof of (((eq (fofType->Prop)) (b x1)) (x0 (g x1)))
% Found eq_ref00:=(eq_ref0 ((x0 (g x1)) x2)):(((eq Prop) ((x0 (g x1)) x2)) ((x0 (g x1)) x2))
% Found (eq_ref0 ((x0 (g x1)) x2)) as proof of (((eq Prop) ((x0 (g x1)) x2)) ((b x1) x2))
% Found ((eq_ref Prop) ((x0 (g x1)) x2)) as proof of (((eq Prop) ((x0 (g x1)) x2)) ((b x1) x2))
% Found ((eq_ref Prop) ((x0 (g x1)) x2)) as proof of (((eq Prop) ((x0 (g x1)) x2)) ((b x1) x2))
% Found ((eq_ref Prop) ((x0 (g x1)) x2)) as proof of (((eq Prop) ((x0 (g x1)) x2)) ((b x1) x2))
% Found (eq_sym100 ((eq_ref Prop) ((x0 (g x1)) x2))) as proof of (((eq Prop) ((b x1) x2)) ((x0 (g x1)) x2))
% Found ((eq_sym10 ((b x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2))) as proof of (((eq Prop) ((b x1) x2)) ((x0 (g x1)) x2))
% Found (((eq_sym1 ((x0 (g x1)) x2)) ((b x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2))) as proof of (((eq Prop) ((b x1) x2)) ((x0 (g x1)) x2))
% Found ((((eq_sym Prop) ((x0 (g x1)) x2)) ((b x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2))) as proof of (((eq Prop) ((b x1) x2)) ((x0 (g x1)) x2))
% Found (fun (x2:fofType)=> ((((eq_sym Prop) ((x0 (g x1)) x2)) ((b x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2)))) as proof of (((eq Prop) ((b x1) x2)) ((x0 (g x1)) x2))
% Found (fun (x2:fofType)=> ((((eq_sym Prop) ((x0 (g x1)) x2)) ((b x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2)))) as proof of (forall (x:fofType), (((eq Prop) ((b x1) x)) ((x0 (g x1)) x)))
% Found (functional_extensionality0100 (fun (x2:fofType)=> ((((eq_sym Prop) ((x0 (g x1)) x2)) ((b x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2))))) as proof of (((eq (fofType->Prop)) (b x1)) (x0 (g x1)))
% Found ((functional_extensionality010 (x0 (g x1))) (fun (x2:fofType)=> ((((eq_sym Prop) ((x0 (g x1)) x2)) ((b x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2))))) as proof of (((eq (fofType->Prop)) (b x1)) (x0 (g x1)))
% Found (((functional_extensionality01 (b x1)) (x0 (g x1))) (fun (x2:fofType)=> ((((eq_sym Prop) ((x0 (g x1)) x2)) ((b x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2))))) as proof of (((eq (fofType->Prop)) (b x1)) (x0 (g x1)))
% Found ((((functional_extensionality0 Prop) (b x1)) (x0 (g x1))) (fun (x2:fofType)=> ((((eq_sym Prop) ((x0 (g x1)) x2)) ((b x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2))))) as proof of (((eq (fofType->Prop)) (b x1)) (x0 (g x1)))
% Found eq_ref00:=(eq_ref0 ((x0 (g x1)) x2)):(((eq Prop) ((x0 (g x1)) x2)) ((x0 (g x1)) x2))
% Found (eq_ref0 ((x0 (g x1)) x2)) as proof of (((eq Prop) ((x0 (g x1)) x2)) ((b x1) x2))
% Found ((eq_ref Prop) ((x0 (g x1)) x2)) as proof of (((eq Prop) ((x0 (g x1)) x2)) ((b x1) x2))
% Found ((eq_ref Prop) ((x0 (g x1)) x2)) as proof of (((eq Prop) ((x0 (g x1)) x2)) ((b x1) x2))
% Found ((eq_ref Prop) ((x0 (g x1)) x2)) as proof of (((eq Prop) ((x0 (g x1)) x2)) ((b x1) x2))
% Found (eq_sym100 ((eq_ref Prop) ((x0 (g x1)) x2))) as proof of (((eq Prop) ((b x1) x2)) ((x0 (g x1)) x2))
% Found ((eq_sym10 ((b x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2))) as proof of (((eq Prop) ((b x1) x2)) ((x0 (g x1)) x2))
% Found (((eq_sym1 ((x0 (g x1)) x2)) ((b x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2))) as proof of (((eq Prop) ((b x1) x2)) ((x0 (g x1)) x2))
% Found ((((eq_sym Prop) ((x0 (g x1)) x2)) ((b x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2))) as proof of (((eq Prop) ((b x1) x2)) ((x0 (g x1)) x2))
% Found (fun (x2:fofType)=> ((((eq_sym Prop) ((x0 (g x1)) x2)) ((b x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2)))) as proof of (((eq Prop) ((b x1) x2)) ((x0 (g x1)) x2))
% Found (fun (x2:fofType)=> ((((eq_sym Prop) ((x0 (g x1)) x2)) ((b x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2)))) as proof of (forall (x:fofType), (((eq Prop) ((b x1) x)) ((x0 (g x1)) x)))
% Found (functional_extensionality_dep0100 (fun (x2:fofType)=> ((((eq_sym Prop) ((x0 (g x1)) x2)) ((b x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2))))) as proof of (((eq (fofType->Prop)) (b x1)) (x0 (g x1)))
% Found ((functional_extensionality_dep010 (x0 (g x1))) (fun (x2:fofType)=> ((((eq_sym Prop) ((x0 (g x1)) x2)) ((b x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2))))) as proof of (((eq (fofType->Prop)) (b x1)) (x0 (g x1)))
% Found (((functional_extensionality_dep01 (b x1)) (x0 (g x1))) (fun (x2:fofType)=> ((((eq_sym Prop) ((x0 (g x1)) x2)) ((b x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2))))) as proof of (((eq (fofType->Prop)) (b x1)) (x0 (g x1)))
% Found ((((functional_extensionality_dep0 (fun (x4:fofType)=> Prop)) (b x1)) (x0 (g x1))) (fun (x2:fofType)=> ((((eq_sym Prop) ((x0 (g x1)) x2)) ((b x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2))))) as proof of (((eq (fofType->Prop)) (b x1)) (x0 (g x1)))
% Found eq_ref00:=(eq_ref0 ((x0 (g x1)) x2)):(((eq Prop) ((x0 (g x1)) x2)) ((x0 (g x1)) x2))
% Found (eq_ref0 ((x0 (g x1)) x2)) as proof of (((eq Prop) ((x0 (g x1)) x2)) ((b x1) x2))
% Found ((eq_ref Prop) ((x0 (g x1)) x2)) as proof of (((eq Prop) ((x0 (g x1)) x2)) ((b x1) x2))
% Found ((eq_ref Prop) ((x0 (g x1)) x2)) as proof of (((eq Prop) ((x0 (g x1)) x2)) ((b x1) x2))
% Found (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2))) as proof of (((eq Prop) ((x0 (g x1)) x2)) ((b x1) x2))
% Found (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2))) as proof of (forall (x:fofType), (((eq Prop) ((x0 (g x1)) x)) ((b x1) x)))
% Found (functional_extensionality0000 (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2)))) as proof of (((eq (fofType->Prop)) (x0 (g x1))) (b x1))
% Found ((functional_extensionality000 (b x1)) (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2)))) as proof of (((eq (fofType->Prop)) (x0 (g x1))) (b x1))
% Found (((functional_extensionality00 (x0 (g x1))) (b x1)) (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2)))) as proof of (((eq (fofType->Prop)) (x0 (g x1))) (b x1))
% Found ((((functional_extensionality0 Prop) (x0 (g x1))) (b x1)) (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2)))) as proof of (((eq (fofType->Prop)) (x0 (g x1))) (b x1))
% Found (((((functional_extensionality fofType) Prop) (x0 (g x1))) (b x1)) (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2)))) as proof of (((eq (fofType->Prop)) (x0 (g x1))) (b x1))
% Found eq_ref00:=(eq_ref0 ((x0 (g x1)) x2)):(((eq Prop) ((x0 (g x1)) x2)) ((x0 (g x1)) x2))
% Found (eq_ref0 ((x0 (g x1)) x2)) as proof of (((eq Prop) ((x0 (g x1)) x2)) ((b x1) x2))
% Found ((eq_ref Prop) ((x0 (g x1)) x2)) as proof of (((eq Prop) ((x0 (g x1)) x2)) ((b x1) x2))
% Found ((eq_ref Prop) ((x0 (g x1)) x2)) as proof of (((eq Prop) ((x0 (g x1)) x2)) ((b x1) x2))
% Found (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2))) as proof of (((eq Prop) ((x0 (g x1)) x2)) ((b x1) x2))
% Found (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2))) as proof of (forall (x:fofType), (((eq Prop) ((x0 (g x1)) x)) ((b x1) x)))
% Found (functional_extensionality_dep0000 (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2)))) as proof of (((eq (fofType->Prop)) (x0 (g x1))) (b x1))
% Found ((functional_extensionality_dep000 (b x1)) (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2)))) as proof of (((eq (fofType->Prop)) (x0 (g x1))) (b x1))
% Found (((functional_extensionality_dep00 (x0 (g x1))) (b x1)) (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2)))) as proof of (((eq (fofType->Prop)) (x0 (g x1))) (b x1))
% Found ((((functional_extensionality_dep0 (fun (x4:fofType)=> Prop)) (x0 (g x1))) (b x1)) (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2)))) as proof of (((eq (fofType->Prop)) (x0 (g x1))) (b x1))
% Found (((((functional_extensionality_dep fofType) (fun (x4:fofType)=> Prop)) (x0 (g x1))) (b x1)) (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2)))) as proof of (((eq (fofType->Prop)) (x0 (g x1))) (b x1))
% Found eta_expansion_dep0000:=(eta_expansion_dep000 P):((P (fun (Xx:fofType)=> (x0 (g Xx))))->(P (fun (x:fofType)=> (x0 (g x)))))
% Found (eta_expansion_dep000 P) as proof of (P0 (fun (Xx:fofType)=> (x0 (g Xx))))
% Found ((eta_expansion_dep00 (fun (Xx:fofType)=> (x0 (g Xx)))) P) as proof of (P0 (fun (Xx:fofType)=> (x0 (g Xx))))
% Found (((eta_expansion_dep0 (fun (x2:fofType)=> (fofType->Prop))) (fun (Xx:fofType)=> (x0 (g Xx)))) P) as proof of (P0 (fun (Xx:fofType)=> (x0 (g Xx))))
% Found ((((eta_expansion_dep fofType) (fun (x2:fofType)=> (fofType->Prop))) (fun (Xx:fofType)=> (x0 (g Xx)))) P) as proof of (P0 (fun (Xx:fofType)=> (x0 (g Xx))))
% Found ((((eta_expansion_dep fofType) (fun (x2:fofType)=> (fofType->Prop))) (fun (Xx:fofType)=> (x0 (g Xx)))) P) as proof of (P0 (fun (Xx:fofType)=> (x0 (g Xx))))
% Found eq_ref00:=(eq_ref0 (x0 (g x1))):(((eq (fofType->Prop)) (x0 (g x1))) (x0 (g x1)))
% Found (eq_ref0 (x0 (g x1))) as proof of (forall (P:((fofType->Prop)->Prop)), ((P (x0 (g x1)))->(P (f x1))))
% Found ((eq_ref (fofType->Prop)) (x0 (g x1))) as proof of (forall (P:((fofType->Prop)->Prop)), ((P (x0 (g x1)))->(P (f x1))))
% Found ((eq_ref (fofType->Prop)) (x0 (g x1))) as proof of (forall (P:((fofType->Prop)->Prop)), ((P (x0 (g x1)))->(P (f x1))))
% Found ((eq_ref (fofType->Prop)) (x0 (g x1))) as proof of (forall (P:((fofType->Prop)->Prop)), ((P (x0 (g x1)))->(P (f x1))))
% Found eq_ref00:=(eq_ref0 (x0 (g x1))):(((eq (fofType->Prop)) (x0 (g x1))) (x0 (g x1)))
% Found (eq_ref0 (x0 (g x1))) as proof of (forall (P:((fofType->Prop)->Prop)), ((P (x0 (g x1)))->(P (f x1))))
% Found ((eq_ref (fofType->Prop)) (x0 (g x1))) as proof of (forall (P:((fofType->Prop)->Prop)), ((P (x0 (g x1)))->(P (f x1))))
% Found ((eq_ref (fofType->Prop)) (x0 (g x1))) as proof of (forall (P:((fofType->Prop)->Prop)), ((P (x0 (g x1)))->(P (f x1))))
% Found ((eq_ref (fofType->Prop)) (x0 (g x1))) as proof of (forall (P:((fofType->Prop)->Prop)), ((P (x0 (g x1)))->(P (f x1))))
% Found eq_ref00:=(eq_ref0 (x0 (g x1))):(((eq (fofType->Prop)) (x0 (g x1))) (x0 (g x1)))
% Found (eq_ref0 (x0 (g x1))) as proof of (forall (P:((fofType->Prop)->Prop)), ((P (x0 (g x1)))->(P (f x1))))
% Found ((eq_ref (fofType->Prop)) (x0 (g x1))) as proof of (forall (P:((fofType->Prop)->Prop)), ((P (x0 (g x1)))->(P (f x1))))
% Found ((eq_ref (fofType->Prop)) (x0 (g x1))) as proof of (forall (P:((fofType->Prop)->Prop)), ((P (x0 (g x1)))->(P (f x1))))
% Found ((eq_ref (fofType->Prop)) (x0 (g x1))) as proof of (forall (P:((fofType->Prop)->Prop)), ((P (x0 (g x1)))->(P (f x1))))
% Found eq_ref00:=(eq_ref0 (x0 (g x1))):(((eq (fofType->Prop)) (x0 (g x1))) (x0 (g x1)))
% Found (eq_ref0 (x0 (g x1))) as proof of (forall (P:((fofType->Prop)->Prop)), ((P (x0 (g x1)))->(P (f x1))))
% Found ((eq_ref (fofType->Prop)) (x0 (g x1))) as proof of (forall (P:((fofType->Prop)->Prop)), ((P (x0 (g x1)))->(P (f x1))))
% Found ((eq_ref (fofType->Prop)) (x0 (g x1))) as proof of (forall (P:((fofType->Prop)->Prop)), ((P (x0 (g x1)))->(P (f x1))))
% Found ((eq_ref (fofType->Prop)) (x0 (g x1))) as proof of (forall (P:((fofType->Prop)->Prop)), ((P (x0 (g x1)))->(P (f x1))))
% Found eq_ref00:=(eq_ref0 (x0 (g x1))):(((eq (fofType->Prop)) (x0 (g x1))) (x0 (g x1)))
% Found (eq_ref0 (x0 (g x1))) as proof of (((eq (fofType->Prop)) (x0 (g x1))) (f x1))
% Found ((eq_ref (fofType->Prop)) (x0 (g x1))) as proof of (((eq (fofType->Prop)) (x0 (g x1))) (f x1))
% Found ((eq_ref (fofType->Prop)) (x0 (g x1))) as proof of (((eq (fofType->Prop)) (x0 (g x1))) (f x1))
% Found eq_ref00:=(eq_ref0 (x0 (g x1))):(((eq (fofType->Prop)) (x0 (g x1))) (x0 (g x1)))
% Found (eq_ref0 (x0 (g x1))) as proof of (((eq (fofType->Prop)) (x0 (g x1))) (f x1))
% Found ((eq_ref (fofType->Prop)) (x0 (g x1))) as proof of (((eq (fofType->Prop)) (x0 (g x1))) (f x1))
% Found ((eq_ref (fofType->Prop)) (x0 (g x1))) as proof of (((eq (fofType->Prop)) (x0 (g x1))) (f x1))
% Found eq_ref00:=(eq_ref0 ((x0 (g x1)) x2)):(((eq Prop) ((x0 (g x1)) x2)) ((x0 (g x1)) x2))
% Found (eq_ref0 ((x0 (g x1)) x2)) as proof of (((eq Prop) ((x0 (g x1)) x2)) ((b x1) x2))
% Found ((eq_ref Prop) ((x0 (g x1)) x2)) as proof of (((eq Prop) ((x0 (g x1)) x2)) ((b x1) x2))
% Found ((eq_ref Prop) ((x0 (g x1)) x2)) as proof of (((eq Prop) ((x0 (g x1)) x2)) ((b x1) x2))
% Found ((eq_ref Prop) ((x0 (g x1)) x2)) as proof of (((eq Prop) ((x0 (g x1)) x2)) ((b x1) x2))
% Found (eq_sym100 ((eq_ref Prop) ((x0 (g x1)) x2))) as proof of (((eq Prop) ((b x1) x2)) ((x0 (g x1)) x2))
% Found ((eq_sym10 ((b x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2))) as proof of (((eq Prop) ((b x1) x2)) ((x0 (g x1)) x2))
% Found (((eq_sym1 ((x0 (g x1)) x2)) ((b x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2))) as proof of (((eq Prop) ((b x1) x2)) ((x0 (g x1)) x2))
% Found ((((eq_sym Prop) ((x0 (g x1)) x2)) ((b x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2))) as proof of (((eq Prop) ((b x1) x2)) ((x0 (g x1)) x2))
% Found (fun (x2:fofType)=> ((((eq_sym Prop) ((x0 (g x1)) x2)) ((b x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2)))) as proof of (((eq Prop) ((b x1) x2)) ((x0 (g x1)) x2))
% Found (fun (x2:fofType)=> ((((eq_sym Prop) ((x0 (g x1)) x2)) ((b x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2)))) as proof of (forall (x:fofType), (((eq Prop) ((b x1) x)) ((x0 (g x1)) x)))
% Found (functional_extensionality0000 (fun (x2:fofType)=> ((((eq_sym Prop) ((x0 (g x1)) x2)) ((b x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2))))) as proof of (((eq (fofType->Prop)) (b x1)) (x0 (g x1)))
% Found ((functional_extensionality000 (x0 (g x1))) (fun (x2:fofType)=> ((((eq_sym Prop) ((x0 (g x1)) x2)) ((b x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2))))) as proof of (((eq (fofType->Prop)) (b x1)) (x0 (g x1)))
% Found (((functional_extensionality00 (b x1)) (x0 (g x1))) (fun (x2:fofType)=> ((((eq_sym Prop) ((x0 (g x1)) x2)) ((b x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2))))) as proof of (((eq (fofType->Prop)) (b x1)) (x0 (g x1)))
% Found ((((functional_extensionality0 Prop) (b x1)) (x0 (g x1))) (fun (x2:fofType)=> ((((eq_sym Prop) ((x0 (g x1)) x2)) ((b x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2))))) as proof of (((eq (fofType->Prop)) (b x1)) (x0 (g x1)))
% Found (((((functional_extensionality fofType) Prop) (b x1)) (x0 (g x1))) (fun (x2:fofType)=> ((((eq_sym Prop) ((x0 (g x1)) x2)) ((b x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2))))) as proof of (((eq (fofType->Prop)) (b x1)) (x0 (g x1)))
% Found eq_ref00:=(eq_ref0 ((x0 (g x1)) x2)):(((eq Prop) ((x0 (g x1)) x2)) ((x0 (g x1)) x2))
% Found (eq_ref0 ((x0 (g x1)) x2)) as proof of (((eq Prop) ((x0 (g x1)) x2)) ((b x1) x2))
% Found ((eq_ref Prop) ((x0 (g x1)) x2)) as proof of (((eq Prop) ((x0 (g x1)) x2)) ((b x1) x2))
% Found ((eq_ref Prop) ((x0 (g x1)) x2)) as proof of (((eq Prop) ((x0 (g x1)) x2)) ((b x1) x2))
% Found ((eq_ref Prop) ((x0 (g x1)) x2)) as proof of (((eq Prop) ((x0 (g x1)) x2)) ((b x1) x2))
% Found (eq_sym100 ((eq_ref Prop) ((x0 (g x1)) x2))) as proof of (((eq Prop) ((b x1) x2)) ((x0 (g x1)) x2))
% Found ((eq_sym10 ((b x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2))) as proof of (((eq Prop) ((b x1) x2)) ((x0 (g x1)) x2))
% Found (((eq_sym1 ((x0 (g x1)) x2)) ((b x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2))) as proof of (((eq Prop) ((b x1) x2)) ((x0 (g x1)) x2))
% Found ((((eq_sym Prop) ((x0 (g x1)) x2)) ((b x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2))) as proof of (((eq Prop) ((b x1) x2)) ((x0 (g x1)) x2))
% Found (fun (x2:fofType)=> ((((eq_sym Prop) ((x0 (g x1)) x2)) ((b x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2)))) as proof of (((eq Prop) ((b x1) x2)) ((x0 (g x1)) x2))
% Found (fun (x2:fofType)=> ((((eq_sym Prop) ((x0 (g x1)) x2)) ((b x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2)))) as proof of (forall (x:fofType), (((eq Prop) ((b x1) x)) ((x0 (g x1)) x)))
% Found (functional_extensionality_dep0000 (fun (x2:fofType)=> ((((eq_sym Prop) ((x0 (g x1)) x2)) ((b x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2))))) as proof of (((eq (fofType->Prop)) (b x1)) (x0 (g x1)))
% Found ((functional_extensionality_dep000 (x0 (g x1))) (fun (x2:fofType)=> ((((eq_sym Prop) ((x0 (g x1)) x2)) ((b x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2))))) as proof of (((eq (fofType->Prop)) (b x1)) (x0 (g x1)))
% Found (((functional_extensionality_dep00 (b x1)) (x0 (g x1))) (fun (x2:fofType)=> ((((eq_sym Prop) ((x0 (g x1)) x2)) ((b x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2))))) as proof of (((eq (fofType->Prop)) (b x1)) (x0 (g x1)))
% Found ((((functional_extensionality_dep0 (fun (x4:fofType)=> Prop)) (b x1)) (x0 (g x1))) (fun (x2:fofType)=> ((((eq_sym Prop) ((x0 (g x1)) x2)) ((b x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2))))) as proof of (((eq (fofType->Prop)) (b x1)) (x0 (g x1)))
% Found (((((functional_extensionality_dep fofType) (fun (x4:fofType)=> Prop)) (b x1)) (x0 (g x1))) (fun (x2:fofType)=> ((((eq_sym Prop) ((x0 (g x1)) x2)) ((b x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2))))) as proof of (((eq (fofType->Prop)) (b x1)) (x0 (g x1)))
% Found eq_ref00:=(eq_ref0 b):(((eq (fofType->(fofType->Prop))) b) b)
% Found (eq_ref0 b) as proof of (((eq (fofType->(fofType->Prop))) b) f)
% Found ((eq_ref (fofType->(fofType->Prop))) b) as proof of (((eq (fofType->(fofType->Prop))) b) f)
% Found ((eq_ref (fofType->(fofType->Prop))) b) as proof of (((eq (fofType->(fofType->Prop))) b) f)
% Found ((eq_ref (fofType->(fofType->Prop))) b) as proof of (((eq (fofType->(fofType->Prop))) b) f)
% Found eta_expansion000:=(eta_expansion00 (fun (Xx:fofType)=> (x0 (g Xx)))):(((eq (fofType->(fofType->Prop))) (fun (Xx:fofType)=> (x0 (g Xx)))) (fun (x:fofType)=> (x0 (g x))))
% Found (eta_expansion00 (fun (Xx:fofType)=> (x0 (g Xx)))) as proof of (((eq (fofType->(fofType->Prop))) (fun (Xx:fofType)=> (x0 (g Xx)))) b)
% Found ((eta_expansion0 (fofType->Prop)) (fun (Xx:fofType)=> (x0 (g Xx)))) as proof of (((eq (fofType->(fofType->Prop))) (fun (Xx:fofType)=> (x0 (g Xx)))) b)
% Found (((eta_expansion fofType) (fofType->Prop)) (fun (Xx:fofType)=> (x0 (g Xx)))) as proof of (((eq (fofType->(fofType->Prop))) (fun (Xx:fofType)=> (x0 (g Xx)))) b)
% Found (((eta_expansion fofType) (fofType->Prop)) (fun (Xx:fofType)=> (x0 (g Xx)))) as proof of (((eq (fofType->(fofType->Prop))) (fun (Xx:fofType)=> (x0 (g Xx)))) b)
% Found (((eta_expansion fofType) (fofType->Prop)) (fun (Xx:fofType)=> (x0 (g Xx)))) as proof of (((eq (fofType->(fofType->Prop))) (fun (Xx:fofType)=> (x0 (g Xx)))) b)
% Found eq_ref00:=(eq_ref0 ((x0 (g x1)) x2)):(((eq Prop) ((x0 (g x1)) x2)) ((x0 (g x1)) x2))
% Found (eq_ref0 ((x0 (g x1)) x2)) as proof of (((eq Prop) ((x0 (g x1)) x2)) ((b x1) x2))
% Found ((eq_ref Prop) ((x0 (g x1)) x2)) as proof of (((eq Prop) ((x0 (g x1)) x2)) ((b x1) x2))
% Found ((eq_ref Prop) ((x0 (g x1)) x2)) as proof of (((eq Prop) ((x0 (g x1)) x2)) ((b x1) x2))
% Found ((eq_ref Prop) ((x0 (g x1)) x2)) as proof of (((eq Prop) ((x0 (g x1)) x2)) ((b x1) x2))
% Found (eq_sym100 ((eq_ref Prop) ((x0 (g x1)) x2))) as proof of (((eq Prop) ((b x1) x2)) ((x0 (g x1)) x2))
% Found ((eq_sym10 ((b x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2))) as proof of (((eq Prop) ((b x1) x2)) ((x0 (g x1)) x2))
% Found (((eq_sym1 ((x0 (g x1)) x2)) ((b x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2))) as proof of (((eq Prop) ((b x1) x2)) ((x0 (g x1)) x2))
% Found ((((eq_sym Prop) ((x0 (g x1)) x2)) ((b x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2))) as proof of (((eq Prop) ((b x1) x2)) ((x0 (g x1)) x2))
% Found (fun (x2:fofType)=> ((((eq_sym Prop) ((x0 (g x1)) x2)) ((b x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2)))) as proof of (((eq Prop) ((b x1) x2)) ((x0 (g x1)) x2))
% Found (fun (x2:fofType)=> ((((eq_sym Prop) ((x0 (g x1)) x2)) ((b x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2)))) as proof of (forall (x:fofType), (((eq Prop) ((b x1) x)) ((x0 (g x1)) x)))
% Found (functional_extensionality_dep0000 (fun (x2:fofType)=> ((((eq_sym Prop) ((x0 (g x1)) x2)) ((b x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2))))) as proof of (((eq (fofType->Prop)) (b x1)) (x0 (g x1)))
% Found ((functional_extensionality_dep000 (x0 (g x1))) (fun (x2:fofType)=> ((((eq_sym Prop) ((x0 (g x1)) x2)) ((b x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2))))) as proof of (((eq (fofType->Prop)) (b x1)) (x0 (g x1)))
% Found (((functional_extensionality_dep00 (b x1)) (x0 (g x1))) (fun (x2:fofType)=> ((((eq_sym Prop) ((x0 (g x1)) x2)) ((b x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2))))) as proof of (((eq (fofType->Prop)) (b x1)) (x0 (g x1)))
% Found ((((functional_extensionality_dep0 (fun (x4:fofType)=> Prop)) (b x1)) (x0 (g x1))) (fun (x2:fofType)=> ((((eq_sym Prop) ((x0 (g x1)) x2)) ((b x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2))))) as proof of (((eq (fofType->Prop)) (b x1)) (x0 (g x1)))
% Found (((((functional_extensionality_dep fofType) (fun (x4:fofType)=> Prop)) (b x1)) (x0 (g x1))) (fun (x2:fofType)=> ((((eq_sym Prop) ((x0 (g x1)) x2)) ((b x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2))))) as proof of (((eq (fofType->Prop)) (b x1)) (x0 (g x1)))
% Found eq_ref00:=(eq_ref0 ((x0 (g x1)) x2)):(((eq Prop) ((x0 (g x1)) x2)) ((x0 (g x1)) x2))
% Found (eq_ref0 ((x0 (g x1)) x2)) as proof of (((eq Prop) ((x0 (g x1)) x2)) ((b x1) x2))
% Found ((eq_ref Prop) ((x0 (g x1)) x2)) as proof of (((eq Prop) ((x0 (g x1)) x2)) ((b x1) x2))
% Found ((eq_ref Prop) ((x0 (g x1)) x2)) as proof of (((eq Prop) ((x0 (g x1)) x2)) ((b x1) x2))
% Found ((eq_ref Prop) ((x0 (g x1)) x2)) as proof of (((eq Prop) ((x0 (g x1)) x2)) ((b x1) x2))
% Found (eq_sym100 ((eq_ref Prop) ((x0 (g x1)) x2))) as proof of (((eq Prop) ((b x1) x2)) ((x0 (g x1)) x2))
% Found ((eq_sym10 ((b x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2))) as proof of (((eq Prop) ((b x1) x2)) ((x0 (g x1)) x2))
% Found (((eq_sym1 ((x0 (g x1)) x2)) ((b x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2))) as proof of (((eq Prop) ((b x1) x2)) ((x0 (g x1)) x2))
% Found ((((eq_sym Prop) ((x0 (g x1)) x2)) ((b x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2))) as proof of (((eq Prop) ((b x1) x2)) ((x0 (g x1)) x2))
% Found (fun (x2:fofType)=> ((((eq_sym Prop) ((x0 (g x1)) x2)) ((b x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2)))) as proof of (((eq Prop) ((b x1) x2)) ((x0 (g x1)) x2))
% Found (fun (x2:fofType)=> ((((eq_sym Prop) ((x0 (g x1)) x2)) ((b x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2)))) as proof of (forall (x:fofType), (((eq Prop) ((b x1) x)) ((x0 (g x1)) x)))
% Found (functional_extensionality0000 (fun (x2:fofType)=> ((((eq_sym Prop) ((x0 (g x1)) x2)) ((b x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2))))) as proof of (((eq (fofType->Prop)) (b x1)) (x0 (g x1)))
% Found ((functional_extensionality000 (x0 (g x1))) (fun (x2:fofType)=> ((((eq_sym Prop) ((x0 (g x1)) x2)) ((b x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2))))) as proof of (((eq (fofType->Prop)) (b x1)) (x0 (g x1)))
% Found (((functional_extensionality00 (b x1)) (x0 (g x1))) (fun (x2:fofType)=> ((((eq_sym Prop) ((x0 (g x1)) x2)) ((b x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2))))) as proof of (((eq (fofType->Prop)) (b x1)) (x0 (g x1)))
% Found ((((functional_extensionality0 Prop) (b x1)) (x0 (g x1))) (fun (x2:fofType)=> ((((eq_sym Prop) ((x0 (g x1)) x2)) ((b x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2))))) as proof of (((eq (fofType->Prop)) (b x1)) (x0 (g x1)))
% Found (((((functional_extensionality fofType) Prop) (b x1)) (x0 (g x1))) (fun (x2:fofType)=> ((((eq_sym Prop) ((x0 (g x1)) x2)) ((b x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2))))) as proof of (((eq (fofType->Prop)) (b x1)) (x0 (g x1)))
% Found eta_expansion0000:=(eta_expansion000 P):((P (fun (Xx:fofType)=> (x0 (g Xx))))->(P (fun (x:fofType)=> (x0 (g x)))))
% Found (eta_expansion000 P) as proof of (P0 (fun (Xx:fofType)=> (x0 (g Xx))))
% Found ((eta_expansion00 (fun (Xx:fofType)=> (x0 (g Xx)))) P) as proof of (P0 (fun (Xx:fofType)=> (x0 (g Xx))))
% Found (((eta_expansion0 (fofType->Prop)) (fun (Xx:fofType)=> (x0 (g Xx)))) P) as proof of (P0 (fun (Xx:fofType)=> (x0 (g Xx))))
% Found ((((eta_expansion fofType) (fofType->Prop)) (fun (Xx:fofType)=> (x0 (g Xx)))) P) as proof of (P0 (fun (Xx:fofType)=> (x0 (g Xx))))
% Found ((((eta_expansion fofType) (fofType->Prop)) (fun (Xx:fofType)=> (x0 (g Xx)))) P) as proof of (P0 (fun (Xx:fofType)=> (x0 (g Xx))))
% Found eq_ref00:=(eq_ref0 (x0 (g x1))):(((eq (fofType->Prop)) (x0 (g x1))) (x0 (g x1)))
% Found (eq_ref0 (x0 (g x1))) as proof of (((eq (fofType->Prop)) (x0 (g x1))) (f x1))
% Found ((eq_ref (fofType->Prop)) (x0 (g x1))) as proof of (((eq (fofType->Prop)) (x0 (g x1))) (f x1))
% Found ((eq_ref (fofType->Prop)) (x0 (g x1))) as proof of (((eq (fofType->Prop)) (x0 (g x1))) (f x1))
% Found eta_expansion0000:=(eta_expansion000 P):((P (fun (Xx:fofType)=> (x0 (g Xx))))->(P (fun (x:fofType)=> (x0 (g x)))))
% Found (eta_expansion000 P) as proof of (P0 (fun (Xx:fofType)=> (x0 (g Xx))))
% Found ((eta_expansion00 (fun (Xx:fofType)=> (x0 (g Xx)))) P) as proof of (P0 (fun (Xx:fofType)=> (x0 (g Xx))))
% Found (((eta_expansion0 (fofType->Prop)) (fun (Xx:fofType)=> (x0 (g Xx)))) P) as proof of (P0 (fun (Xx:fofType)=> (x0 (g Xx))))
% Found ((((eta_expansion fofType) (fofType->Prop)) (fun (Xx:fofType)=> (x0 (g Xx)))) P) as proof of (P0 (fun (Xx:fofType)=> (x0 (g Xx))))
% Found ((((eta_expansion fofType) (fofType->Prop)) (fun (Xx:fofType)=> (x0 (g Xx)))) P) as proof of (P0 (fun (Xx:fofType)=> (x0 (g Xx))))
% Found eq_ref00:=(eq_ref0 (x0 (g x1))):(((eq (fofType->Prop)) (x0 (g x1))) (x0 (g x1)))
% Found (eq_ref0 (x0 (g x1))) as proof of (((eq (fofType->Prop)) (x0 (g x1))) (f x1))
% Found ((eq_ref (fofType->Prop)) (x0 (g x1))) as proof of (((eq (fofType->Prop)) (x0 (g x1))) (f x1))
% Found ((eq_ref (fofType->Prop)) (x0 (g x1))) as proof of (((eq (fofType->Prop)) (x0 (g x1))) (f x1))
% Found eq_ref000:=(eq_ref00 P1):((P1 (x0 (g x1)))->(P1 (x0 (g x1))))
% Found (eq_ref00 P1) as proof of ((P1 (x0 (g x1)))->(P1 (f x1)))
% Found ((eq_ref0 (x0 (g x1))) P1) as proof of ((P1 (x0 (g x1)))->(P1 (f x1)))
% Found (((eq_ref (fofType->Prop)) (x0 (g x1))) P1) as proof of ((P1 (x0 (g x1)))->(P1 (f x1)))
% Found (((eq_ref (fofType->Prop)) (x0 (g x1))) P1) as proof of ((P1 (x0 (g x1)))->(P1 (f x1)))
% Found (fun (P1:((fofType->Prop)->Prop))=> (((eq_ref (fofType->Prop)) (x0 (g x1))) P1)) as proof of ((P1 (x0 (g x1)))->(P1 (f x1)))
% Found (fun (P1:((fofType->Prop)->Prop))=> (((eq_ref (fofType->Prop)) (x0 (g x1))) P1)) as proof of (forall (P:((fofType->Prop)->Prop)), ((P (x0 (g x1)))->(P (f x1))))
% Found eq_ref000:=(eq_ref00 P1):((P1 (x0 (g x1)))->(P1 (x0 (g x1))))
% Found (eq_ref00 P1) as proof of ((P1 (x0 (g x1)))->(P1 (f x1)))
% Found ((eq_ref0 (x0 (g x1))) P1) as proof of ((P1 (x0 (g x1)))->(P1 (f x1)))
% Found (((eq_ref (fofType->Prop)) (x0 (g x1))) P1) as proof of ((P1 (x0 (g x1)))->(P1 (f x1)))
% Found (((eq_ref (fofType->Prop)) (x0 (g x1))) P1) as proof of ((P1 (x0 (g x1)))->(P1 (f x1)))
% Found (fun (P1:((fofType->Prop)->Prop))=> (((eq_ref (fofType->Prop)) (x0 (g x1))) P1)) as proof of ((P1 (x0 (g x1)))->(P1 (f x1)))
% Found (fun (P1:((fofType->Prop)->Prop))=> (((eq_ref (fofType->Prop)) (x0 (g x1))) P1)) as proof of (forall (P:((fofType->Prop)->Prop)), ((P (x0 (g x1)))->(P (f x1))))
% Found eq_ref000:=(eq_ref00 P1):((P1 (x0 (g x1)))->(P1 (x0 (g x1))))
% Found (eq_ref00 P1) as proof of ((P1 (x0 (g x1)))->(P1 (f x1)))
% Found ((eq_ref0 (x0 (g x1))) P1) as proof of ((P1 (x0 (g x1)))->(P1 (f x1)))
% Found (((eq_ref (fofType->Prop)) (x0 (g x1))) P1) as proof of ((P1 (x0 (g x1)))->(P1 (f x1)))
% Found (((eq_ref (fofType->Prop)) (x0 (g x1))) P1) as proof of ((P1 (x0 (g x1)))->(P1 (f x1)))
% Found (fun (P1:((fofType->Prop)->Prop))=> (((eq_ref (fofType->Prop)) (x0 (g x1))) P1)) as proof of ((P1 (x0 (g x1)))->(P1 (f x1)))
% Found (fun (P1:((fofType->Prop)->Prop))=> (((eq_ref (fofType->Prop)) (x0 (g x1))) P1)) as proof of (forall (P:((fofType->Prop)->Prop)), ((P (x0 (g x1)))->(P (f x1))))
% Found eq_ref000:=(eq_ref00 P1):((P1 (x0 (g x1)))->(P1 (x0 (g x1))))
% Found (eq_ref00 P1) as proof of ((P1 (x0 (g x1)))->(P1 (f x1)))
% Found ((eq_ref0 (x0 (g x1))) P1) as proof of ((P1 (x0 (g x1)))->(P1 (f x1)))
% Found (((eq_ref (fofType->Prop)) (x0 (g x1))) P1) as proof of ((P1 (x0 (g x1)))->(P1 (f x1)))
% Found (((eq_ref (fofType->Prop)) (x0 (g x1))) P1) as proof of ((P1 (x0 (g x1)))->(P1 (f x1)))
% Found (fun (P1:((fofType->Prop)->Prop))=> (((eq_ref (fofType->Prop)) (x0 (g x1))) P1)) as proof of ((P1 (x0 (g x1)))->(P1 (f x1)))
% Found (fun (P1:((fofType->Prop)->Prop))=> (((eq_ref (fofType->Prop)) (x0 (g x1))) P1)) as proof of (forall (P:((fofType->Prop)->Prop)), ((P (x0 (g x1)))->(P (f x1))))
% Found eq_ref000:=(eq_ref00 P1):((P1 (x0 (g x1)))->(P1 (x0 (g x1))))
% Found (eq_ref00 P1) as proof of ((P1 (x0 (g x1)))->(P1 (f x1)))
% Found ((eq_ref0 (x0 (g x1))) P1) as proof of ((P1 (x0 (g x1)))->(P1 (f x1)))
% Found (((eq_ref (fofType->Prop)) (x0 (g x1))) P1) as proof of ((P1 (x0 (g x1)))->(P1 (f x1)))
% Found (((eq_ref (fofType->Prop)) (x0 (g x1))) P1) as proof of ((P1 (x0 (g x1)))->(P1 (f x1)))
% Found (fun (P1:((fofType->Prop)->Prop))=> (((eq_ref (fofType->Prop)) (x0 (g x1))) P1)) as proof of ((P1 (x0 (g x1)))->(P1 (f x1)))
% Found eq_ref000:=(eq_ref00 P1):((P1 (x0 (g x1)))->(P1 (x0 (g x1))))
% Found (eq_ref00 P1) as proof of ((P1 (x0 (g x1)))->(P1 (f x1)))
% Found ((eq_ref0 (x0 (g x1))) P1) as proof of ((P1 (x0 (g x1)))->(P1 (f x1)))
% Found (((eq_ref (fofType->Prop)) (x0 (g x1))) P1) as proof of ((P1 (x0 (g x1)))->(P1 (f x1)))
% Found (((eq_ref (fofType->Prop)) (x0 (g x1))) P1) as proof of ((P1 (x0 (g x1)))->(P1 (f x1)))
% Found (fun (P1:((fofType->Prop)->Prop))=> (((eq_ref (fofType->Prop)) (x0 (g x1))) P1)) as proof of ((P1 (x0 (g x1)))->(P1 (f x1)))
% Found eq_ref000:=(eq_ref00 P1):((P1 (x0 (g x1)))->(P1 (x0 (g x1))))
% Found (eq_ref00 P1) as proof of ((P1 (x0 (g x1)))->(P1 (f x1)))
% Found ((eq_ref0 (x0 (g x1))) P1) as proof of ((P1 (x0 (g x1)))->(P1 (f x1)))
% Found (((eq_ref (fofType->Prop)) (x0 (g x1))) P1) as proof of ((P1 (x0 (g x1)))->(P1 (f x1)))
% Found (((eq_ref (fofType->Prop)) (x0 (g x1))) P1) as proof of ((P1 (x0 (g x1)))->(P1 (f x1)))
% Found (fun (P1:((fofType->Prop)->Prop))=> (((eq_ref (fofType->Prop)) (x0 (g x1))) P1)) as proof of ((P1 (x0 (g x1)))->(P1 (f x1)))
% Found eq_ref000:=(eq_ref00 P1):((P1 (x0 (g x1)))->(P1 (x0 (g x1))))
% Found (eq_ref00 P1) as proof of ((P1 (x0 (g x1)))->(P1 (f x1)))
% Found ((eq_ref0 (x0 (g x1))) P1) as proof of ((P1 (x0 (g x1)))->(P1 (f x1)))
% Found (((eq_ref (fofType->Prop)) (x0 (g x1))) P1) as proof of ((P1 (x0 (g x1)))->(P1 (f x1)))
% Found (((eq_ref (fofType->Prop)) (x0 (g x1))) P1) as proof of ((P1 (x0 (g x1)))->(P1 (f x1)))
% Found (fun (P1:((fofType->Prop)->Prop))=> (((eq_ref (fofType->Prop)) (x0 (g x1))) P1)) as proof of ((P1 (x0 (g x1)))->(P1 (f x1)))
% Found eq_ref00:=(eq_ref0 a):(((eq (((fofType->Prop)->(fofType->Prop))->Prop)) a) a)
% Found (eq_ref0 a) as proof of (((eq (((fofType->Prop)->(fofType->Prop))->Prop)) a) b)
% Found ((eq_ref (((fofType->Prop)->(fofType->Prop))->Prop)) a) as proof of (((eq (((fofType->Prop)->(fofType->Prop))->Prop)) a) b)
% Found ((eq_ref (((fofType->Prop)->(fofType->Prop))->Prop)) a) as proof of (((eq (((fofType->Prop)->(fofType->Prop))->Prop)) a) b)
% Found ((eq_ref (((fofType->Prop)->(fofType->Prop))->Prop)) a) as proof of (((eq (((fofType->Prop)->(fofType->Prop))->Prop)) a) b)
% Found eta_expansion_dep000:=(eta_expansion_dep00 b):(((eq (((fofType->Prop)->(fofType->Prop))->Prop)) b) (fun (x:((fofType->Prop)->(fofType->Prop)))=> (b x)))
% Found (eta_expansion_dep00 b) as proof of (((eq (((fofType->Prop)->(fofType->Prop))->Prop)) b) (fun (Xh:((fofType->Prop)->(fofType->Prop)))=> (((eq (fofType->(fofType->Prop))) (fun (Xx:fofType)=> (Xh (g Xx)))) f)))
% Found ((eta_expansion_dep0 (fun (x1:((fofType->Prop)->(fofType->Prop)))=> Prop)) b) as proof of (((eq (((fofType->Prop)->(fofType->Prop))->Prop)) b) (fun (Xh:((fofType->Prop)->(fofType->Prop)))=> (((eq (fofType->(fofType->Prop))) (fun (Xx:fofType)=> (Xh (g Xx)))) f)))
% Found (((eta_expansion_dep ((fofType->Prop)->(fofType->Prop))) (fun (x1:((fofType->Prop)->(fofType->Prop)))=> Prop)) b) as proof of (((eq (((fofType->Prop)->(fofType->Prop))->Prop)) b) (fun (Xh:((fofType->Prop)->(fofType->Prop)))=> (((eq (fofType->(fofType->Prop))) (fun (Xx:fofType)=> (Xh (g Xx)))) f)))
% Found (((eta_expansion_dep ((fofType->Prop)->(fofType->Prop))) (fun (x1:((fofType->Prop)->(fofType->Prop)))=> Prop)) b) as proof of (((eq (((fofType->Prop)->(fofType->Prop))->Prop)) b) (fun (Xh:((fofType->Prop)->(fofType->Prop)))=> (((eq (fofType->(fofType->Prop))) (fun (Xx:fofType)=> (Xh (g Xx)))) f)))
% Found (((eta_expansion_dep ((fofType->Prop)->(fofType->Prop))) (fun (x1:((fofType->Prop)->(fofType->Prop)))=> Prop)) b) as proof of (((eq (((fofType->Prop)->(fofType->Prop))->Prop)) b) (fun (Xh:((fofType->Prop)->(fofType->Prop)))=> (((eq (fofType->(fofType->Prop))) (fun (Xx:fofType)=> (Xh (g Xx)))) f)))
% Found eta_expansion0000:=(eta_expansion000 P):((P (fun (Xx:fofType)=> (x0 (g Xx))))->(P (fun (x:fofType)=> (x0 (g x)))))
% Found (eta_expansion000 P) as proof of (P0 (fun (Xx:fofType)=> (x0 (g Xx))))
% Found ((eta_expansion00 (fun (Xx:fofType)=> (x0 (g Xx)))) P) as proof of (P0 (fun (Xx:fofType)=> (x0 (g Xx))))
% Found (((eta_expansion0 (fofType->Prop)) (fun (Xx:fofType)=> (x0 (g Xx)))) P) as proof of (P0 (fun (Xx:fofType)=> (x0 (g Xx))))
% Found ((((eta_expansion fofType) (fofType->Prop)) (fun (Xx:fofType)=> (x0 (g Xx)))) P) as proof of (P0 (fun (Xx:fofType)=> (x0 (g Xx))))
% Found ((((eta_expansion fofType) (fofType->Prop)) (fun (Xx:fofType)=> (x0 (g Xx)))) P) as proof of (P0 (fun (Xx:fofType)=> (x0 (g Xx))))
% Found eq_ref00:=(eq_ref0 ((x0 (g x1)) x2)):(((eq Prop) ((x0 (g x1)) x2)) ((x0 (g x1)) x2))
% Found (eq_ref0 ((x0 (g x1)) x2)) as proof of (((eq Prop) ((x0 (g x1)) x2)) ((f x1) x2))
% Found ((eq_ref Prop) ((x0 (g x1)) x2)) as proof of (((eq Prop) ((x0 (g x1)) x2)) ((f x1) x2))
% Found ((eq_ref Prop) ((x0 (g x1)) x2)) as proof of (((eq Prop) ((x0 (g x1)) x2)) ((f x1) x2))
% Found ((eq_ref Prop) ((x0 (g x1)) x2)) as proof of (((eq Prop) ((x0 (g x1)) x2)) ((f x1) x2))
% Found (eq_sym100 ((eq_ref Prop) ((x0 (g x1)) x2))) as proof of (((eq Prop) ((f x1) x2)) ((x0 (g x1)) x2))
% Found ((eq_sym10 ((f x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2))) as proof of (((eq Prop) ((f x1) x2)) ((x0 (g x1)) x2))
% Found (((eq_sym1 ((x0 (g x1)) x2)) ((f x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2))) as proof of (((eq Prop) ((f x1) x2)) ((x0 (g x1)) x2))
% Found ((((eq_sym Prop) ((x0 (g x1)) x2)) ((f x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2))) as proof of (((eq Prop) ((f x1) x2)) ((x0 (g x1)) x2))
% Found (fun (x2:fofType)=> ((((eq_sym Prop) ((x0 (g x1)) x2)) ((f x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2)))) as proof of (((eq Prop) ((f x1) x2)) ((x0 (g x1)) x2))
% Found (fun (x2:fofType)=> ((((eq_sym Prop) ((x0 (g x1)) x2)) ((f x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2)))) as proof of (forall (x:fofType), (((eq Prop) ((f x1) x)) ((x0 (g x1)) x)))
% Found (functional_extensionality0100 (fun (x2:fofType)=> ((((eq_sym Prop) ((x0 (g x1)) x2)) ((f x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2))))) as proof of (((eq (fofType->Prop)) (f x1)) (x0 (g x1)))
% Found ((functional_extensionality010 (x0 (g x1))) (fun (x2:fofType)=> ((((eq_sym Prop) ((x0 (g x1)) x2)) ((f x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2))))) as proof of (((eq (fofType->Prop)) (f x1)) (x0 (g x1)))
% Found (((functional_extensionality01 (f x1)) (x0 (g x1))) (fun (x2:fofType)=> ((((eq_sym Prop) ((x0 (g x1)) x2)) ((f x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2))))) as proof of (((eq (fofType->Prop)) (f x1)) (x0 (g x1)))
% Found ((((functional_extensionality0 Prop) (f x1)) (x0 (g x1))) (fun (x2:fofType)=> ((((eq_sym Prop) ((x0 (g x1)) x2)) ((f x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2))))) as proof of (((eq (fofType->Prop)) (f x1)) (x0 (g x1)))
% Found ((((functional_extensionality0 Prop) (f x1)) (x0 (g x1))) (fun (x2:fofType)=> ((((eq_sym Prop) ((x0 (g x1)) x2)) ((f x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2))))) as proof of (((eq (fofType->Prop)) (f x1)) (x0 (g x1)))
% Found (eq_sym000 ((((functional_extensionality0 Prop) (f x1)) (x0 (g x1))) (fun (x2:fofType)=> ((((eq_sym Prop) ((x0 (g x1)) x2)) ((f x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2)))))) as proof of (forall (P:((fofType->Prop)->Prop)), ((P (x0 (g x1)))->(P (f x1))))
% Found ((eq_sym00 (x0 (g x1))) ((((functional_extensionality0 Prop) (f x1)) (x0 (g x1))) (fun (x2:fofType)=> ((((eq_sym Prop) ((x0 (g x1)) x2)) ((f x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2)))))) as proof of (forall (P:((fofType->Prop)->Prop)), ((P (x0 (g x1)))->(P (f x1))))
% Found (((eq_sym0 (f x1)) (x0 (g x1))) ((((functional_extensionality0 Prop) (f x1)) (x0 (g x1))) (fun (x2:fofType)=> ((((eq_sym Prop) ((x0 (g x1)) x2)) ((f x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2)))))) as proof of (forall (P:((fofType->Prop)->Prop)), ((P (x0 (g x1)))->(P (f x1))))
% Found ((((eq_sym (fofType->Prop)) (f x1)) (x0 (g x1))) ((((functional_extensionality0 Prop) (f x1)) (x0 (g x1))) (fun (x2:fofType)=> ((((eq_sym Prop) ((x0 (g x1)) x2)) ((f x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2)))))) as proof of (forall (P:((fofType->Prop)->Prop)), ((P (x0 (g x1)))->(P (f x1))))
% Found ((((eq_sym (fofType->Prop)) (f x1)) (x0 (g x1))) ((((functional_extensionality0 Prop) (f x1)) (x0 (g x1))) (fun (x2:fofType)=> ((((eq_sym Prop) ((x0 (g x1)) x2)) ((f x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2)))))) as proof of (forall (P:((fofType->Prop)->Prop)), ((P (x0 (g x1)))->(P (f x1))))
% Found eq_ref00:=(eq_ref0 ((x0 (g x1)) x2)):(((eq Prop) ((x0 (g x1)) x2)) ((x0 (g x1)) x2))
% Found (eq_ref0 ((x0 (g x1)) x2)) as proof of (((eq Prop) ((x0 (g x1)) x2)) ((f x1) x2))
% Found ((eq_ref Prop) ((x0 (g x1)) x2)) as proof of (((eq Prop) ((x0 (g x1)) x2)) ((f x1) x2))
% Found ((eq_ref Prop) ((x0 (g x1)) x2)) as proof of (((eq Prop) ((x0 (g x1)) x2)) ((f x1) x2))
% Found ((eq_ref Prop) ((x0 (g x1)) x2)) as proof of (((eq Prop) ((x0 (g x1)) x2)) ((f x1) x2))
% Found (eq_sym100 ((eq_ref Prop) ((x0 (g x1)) x2))) as proof of (((eq Prop) ((f x1) x2)) ((x0 (g x1)) x2))
% Found ((eq_sym10 ((f x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2))) as proof of (((eq Prop) ((f x1) x2)) ((x0 (g x1)) x2))
% Found (((eq_sym1 ((x0 (g x1)) x2)) ((f x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2))) as proof of (((eq Prop) ((f x1) x2)) ((x0 (g x1)) x2))
% Found ((((eq_sym Prop) ((x0 (g x1)) x2)) ((f x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2))) as proof of (((eq Prop) ((f x1) x2)) ((x0 (g x1)) x2))
% Found (fun (x2:fofType)=> ((((eq_sym Prop) ((x0 (g x1)) x2)) ((f x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2)))) as proof of (((eq Prop) ((f x1) x2)) ((x0 (g x1)) x2))
% Found (fun (x2:fofType)=> ((((eq_sym Prop) ((x0 (g x1)) x2)) ((f x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2)))) as proof of (forall (x:fofType), (((eq Prop) ((f x1) x)) ((x0 (g x1)) x)))
% Found (functional_extensionality_dep0100 (fun (x2:fofType)=> ((((eq_sym Prop) ((x0 (g x1)) x2)) ((f x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2))))) as proof of (((eq (fofType->Prop)) (f x1)) (x0 (g x1)))
% Found ((functional_extensionality_dep010 (x0 (g x1))) (fun (x2:fofType)=> ((((eq_sym Prop) ((x0 (g x1)) x2)) ((f x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2))))) as proof of (((eq (fofType->Prop)) (f x1)) (x0 (g x1)))
% Found (((functional_extensionality_dep01 (f x1)) (x0 (g x1))) (fun (x2:fofType)=> ((((eq_sym Prop) ((x0 (g x1)) x2)) ((f x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2))))) as proof of (((eq (fofType->Prop)) (f x1)) (x0 (g x1)))
% Found ((((functional_extensionality_dep0 (fun (x4:fofType)=> Prop)) (f x1)) (x0 (g x1))) (fun (x2:fofType)=> ((((eq_sym Prop) ((x0 (g x1)) x2)) ((f x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2))))) as proof of (((eq (fofType->Prop)) (f x1)) (x0 (g x1)))
% Found ((((functional_extensionality_dep0 (fun (x4:fofType)=> Prop)) (f x1)) (x0 (g x1))) (fun (x2:fofType)=> ((((eq_sym Prop) ((x0 (g x1)) x2)) ((f x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2))))) as proof of (((eq (fofType->Prop)) (f x1)) (x0 (g x1)))
% Found (eq_sym000 ((((functional_extensionality_dep0 (fun (x4:fofType)=> Prop)) (f x1)) (x0 (g x1))) (fun (x2:fofType)=> ((((eq_sym Prop) ((x0 (g x1)) x2)) ((f x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2)))))) as proof of (forall (P:((fofType->Prop)->Prop)), ((P (x0 (g x1)))->(P (f x1))))
% Found ((eq_sym00 (x0 (g x1))) ((((functional_extensionality_dep0 (fun (x4:fofType)=> Prop)) (f x1)) (x0 (g x1))) (fun (x2:fofType)=> ((((eq_sym Prop) ((x0 (g x1)) x2)) ((f x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2)))))) as proof of (forall (P:((fofType->Prop)->Prop)), ((P (x0 (g x1)))->(P (f x1))))
% Found (((eq_sym0 (f x1)) (x0 (g x1))) ((((functional_extensionality_dep0 (fun (x4:fofType)=> Prop)) (f x1)) (x0 (g x1))) (fun (x2:fofType)=> ((((eq_sym Prop) ((x0 (g x1)) x2)) ((f x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2)))))) as proof of (forall (P:((fofType->Prop)->Prop)), ((P (x0 (g x1)))->(P (f x1))))
% Found ((((eq_sym (fofType->Prop)) (f x1)) (x0 (g x1))) ((((functional_extensionality_dep0 (fun (x4:fofType)=> Prop)) (f x1)) (x0 (g x1))) (fun (x2:fofType)=> ((((eq_sym Prop) ((x0 (g x1)) x2)) ((f x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2)))))) as proof of (forall (P:((fofType->Prop)->Prop)), ((P (x0 (g x1)))->(P (f x1))))
% Found ((((eq_sym (fofType->Prop)) (f x1)) (x0 (g x1))) ((((functional_extensionality_dep0 (fun (x4:fofType)=> Prop)) (f x1)) (x0 (g x1))) (fun (x2:fofType)=> ((((eq_sym Prop) ((x0 (g x1)) x2)) ((f x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2)))))) as proof of (forall (P:((fofType->Prop)->Prop)), ((P (x0 (g x1)))->(P (f x1))))
% Found eq_ref00:=(eq_ref0 ((x0 (g x1)) y)):(((eq Prop) ((x0 (g x1)) y)) ((x0 (g x1)) y))
% Found (eq_ref0 ((x0 (g x1)) y)) as proof of (((eq Prop) ((x0 (g x1)) y)) ((f x1) y))
% Found ((eq_ref Prop) ((x0 (g x1)) y)) as proof of (((eq Prop) ((x0 (g x1)) y)) ((f x1) y))
% Found ((eq_ref Prop) ((x0 (g x1)) y)) as proof of (((eq Prop) ((x0 (g x1)) y)) ((f x1) y))
% Found (fun (y:fofType)=> ((eq_ref Prop) ((x0 (g x1)) y))) as proof of (((eq Prop) ((x0 (g x1)) y)) ((f x1) y))
% Found eq_ref00:=(eq_ref0 ((x0 (g x1)) y)):(((eq Prop) ((x0 (g x1)) y)) ((x0 (g x1)) y))
% Found (eq_ref0 ((x0 (g x1)) y)) as proof of (forall (P:(Prop->Prop)), ((P ((x0 (g x1)) y))->(P ((f x1) y))))
% Found ((eq_ref Prop) ((x0 (g x1)) y)) as proof of (forall (P:(Prop->Prop)), ((P ((x0 (g x1)) y))->(P ((f x1) y))))
% Found ((eq_ref Prop) ((x0 (g x1)) y)) as proof of (forall (P:(Prop->Prop)), ((P ((x0 (g x1)) y))->(P ((f x1) y))))
% Found ((eq_ref Prop) ((x0 (g x1)) y)) as proof of (forall (P:(Prop->Prop)), ((P ((x0 (g x1)) y))->(P ((f x1) y))))
% Found (fun (y:fofType)=> ((eq_ref Prop) ((x0 (g x1)) y))) as proof of (((eq Prop) ((x0 (g x1)) y)) ((f x1) y))
% Found eq_ref00:=(eq_ref0 ((x0 (g x1)) y)):(((eq Prop) ((x0 (g x1)) y)) ((x0 (g x1)) y))
% Found (eq_ref0 ((x0 (g x1)) y)) as proof of (forall (P:(Prop->Prop)), ((P ((x0 (g x1)) y))->(P ((f x1) y))))
% Found ((eq_ref Prop) ((x0 (g x1)) y)) as proof of (forall (P:(Prop->Prop)), ((P ((x0 (g x1)) y))->(P ((f x1) y))))
% Found ((eq_ref Prop) ((x0 (g x1)) y)) as proof of (forall (P:(Prop->Prop)), ((P ((x0 (g x1)) y))->(P ((f x1) y))))
% Found ((eq_ref Prop) ((x0 (g x1)) y)) as proof of (forall (P:(Prop->Prop)), ((P ((x0 (g x1)) y))->(P ((f x1) y))))
% Found (fun (y:fofType)=> ((eq_ref Prop) ((x0 (g x1)) y))) as proof of (((eq Prop) ((x0 (g x1)) y)) ((f x1) y))
% Found eq_ref00:=(eq_ref0 ((x0 (g x1)) y)):(((eq Prop) ((x0 (g x1)) y)) ((x0 (g x1)) y))
% Found (eq_ref0 ((x0 (g x1)) y)) as proof of (((eq Prop) ((x0 (g x1)) y)) ((f x1) y))
% Found ((eq_ref Prop) ((x0 (g x1)) y)) as proof of (((eq Prop) ((x0 (g x1)) y)) ((f x1) y))
% Found ((eq_ref Prop) ((x0 (g x1)) y)) as proof of (((eq Prop) ((x0 (g x1)) y)) ((f x1) y))
% Found (fun (y:fofType)=> ((eq_ref Prop) ((x0 (g x1)) y))) as proof of (((eq Prop) ((x0 (g x1)) y)) ((f x1) y))
% Found eq_ref00:=(eq_ref0 ((x0 (g x1)) x2)):(((eq Prop) ((x0 (g x1)) x2)) ((x0 (g x1)) x2))
% Found (eq_ref0 ((x0 (g x1)) x2)) as proof of (((eq Prop) ((x0 (g x1)) x2)) ((f x1) x2))
% Found ((eq_ref Prop) ((x0 (g x1)) x2)) as proof of (((eq Prop) ((x0 (g x1)) x2)) ((f x1) x2))
% Found ((eq_ref Prop) ((x0 (g x1)) x2)) as proof of (((eq Prop) ((x0 (g x1)) x2)) ((f x1) x2))
% Found ((eq_ref Prop) ((x0 (g x1)) x2)) as proof of (((eq Prop) ((x0 (g x1)) x2)) ((f x1) x2))
% Found (eq_sym100 ((eq_ref Prop) ((x0 (g x1)) x2))) as proof of (((eq Prop) ((f x1) x2)) ((x0 (g x1)) x2))
% Found ((eq_sym10 ((f x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2))) as proof of (((eq Prop) ((f x1) x2)) ((x0 (g x1)) x2))
% Found (((eq_sym1 ((x0 (g x1)) x2)) ((f x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2))) as proof of (((eq Prop) ((f x1) x2)) ((x0 (g x1)) x2))
% Found ((((eq_sym Prop) ((x0 (g x1)) x2)) ((f x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2))) as proof of (((eq Prop) ((f x1) x2)) ((x0 (g x1)) x2))
% Found (fun (x2:fofType)=> ((((eq_sym Prop) ((x0 (g x1)) x2)) ((f x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2)))) as proof of (((eq Prop) ((f x1) x2)) ((x0 (g x1)) x2))
% Found (fun (x2:fofType)=> ((((eq_sym Prop) ((x0 (g x1)) x2)) ((f x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2)))) as proof of (forall (x:fofType), (((eq Prop) ((f x1) x)) ((x0 (g x1)) x)))
% Found (functional_extensionality0100 (fun (x2:fofType)=> ((((eq_sym Prop) ((x0 (g x1)) x2)) ((f x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2))))) as proof of (((eq (fofType->Prop)) (f x1)) (x0 (g x1)))
% Found ((functional_extensionality010 (x0 (g x1))) (fun (x2:fofType)=> ((((eq_sym Prop) ((x0 (g x1)) x2)) ((f x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2))))) as proof of (((eq (fofType->Prop)) (f x1)) (x0 (g x1)))
% Found (((functional_extensionality01 (f x1)) (x0 (g x1))) (fun (x2:fofType)=> ((((eq_sym Prop) ((x0 (g x1)) x2)) ((f x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2))))) as proof of (((eq (fofType->Prop)) (f x1)) (x0 (g x1)))
% Found ((((functional_extensionality0 Prop) (f x1)) (x0 (g x1))) (fun (x2:fofType)=> ((((eq_sym Prop) ((x0 (g x1)) x2)) ((f x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2))))) as proof of (((eq (fofType->Prop)) (f x1)) (x0 (g x1)))
% Found ((((functional_extensionality0 Prop) (f x1)) (x0 (g x1))) (fun (x2:fofType)=> ((((eq_sym Prop) ((x0 (g x1)) x2)) ((f x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2))))) as proof of (((eq (fofType->Prop)) (f x1)) (x0 (g x1)))
% Found (eq_sym000 ((((functional_extensionality0 Prop) (f x1)) (x0 (g x1))) (fun (x2:fofType)=> ((((eq_sym Prop) ((x0 (g x1)) x2)) ((f x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2)))))) as proof of (((eq (fofType->Prop)) (x0 (g x1))) (f x1))
% Found ((eq_sym00 (x0 (g x1))) ((((functional_extensionality0 Prop) (f x1)) (x0 (g x1))) (fun (x2:fofType)=> ((((eq_sym Prop) ((x0 (g x1)) x2)) ((f x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2)))))) as proof of (((eq (fofType->Prop)) (x0 (g x1))) (f x1))
% Found (((eq_sym0 (f x1)) (x0 (g x1))) ((((functional_extensionality0 Prop) (f x1)) (x0 (g x1))) (fun (x2:fofType)=> ((((eq_sym Prop) ((x0 (g x1)) x2)) ((f x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2)))))) as proof of (((eq (fofType->Prop)) (x0 (g x1))) (f x1))
% Found ((((eq_sym (fofType->Prop)) (f x1)) (x0 (g x1))) ((((functional_extensionality0 Prop) (f x1)) (x0 (g x1))) (fun (x2:fofType)=> ((((eq_sym Prop) ((x0 (g x1)) x2)) ((f x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2)))))) as proof of (((eq (fofType->Prop)) (x0 (g x1))) (f x1))
% Found eq_ref00:=(eq_ref0 ((x0 (g x1)) x2)):(((eq Prop) ((x0 (g x1)) x2)) ((x0 (g x1)) x2))
% Found (eq_ref0 ((x0 (g x1)) x2)) as proof of (((eq Prop) ((x0 (g x1)) x2)) ((f x1) x2))
% Found ((eq_ref Prop) ((x0 (g x1)) x2)) as proof of (((eq Prop) ((x0 (g x1)) x2)) ((f x1) x2))
% Found ((eq_ref Prop) ((x0 (g x1)) x2)) as proof of (((eq Prop) ((x0 (g x1)) x2)) ((f x1) x2))
% Found ((eq_ref Prop) ((x0 (g x1)) x2)) as proof of (((eq Prop) ((x0 (g x1)) x2)) ((f x1) x2))
% Found (eq_sym100 ((eq_ref Prop) ((x0 (g x1)) x2))) as proof of (((eq Prop) ((f x1) x2)) ((x0 (g x1)) x2))
% Found ((eq_sym10 ((f x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2))) as proof of (((eq Prop) ((f x1) x2)) ((x0 (g x1)) x2))
% Found (((eq_sym1 ((x0 (g x1)) x2)) ((f x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2))) as proof of (((eq Prop) ((f x1) x2)) ((x0 (g x1)) x2))
% Found ((((eq_sym Prop) ((x0 (g x1)) x2)) ((f x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2))) as proof of (((eq Prop) ((f x1) x2)) ((x0 (g x1)) x2))
% Found (fun (x2:fofType)=> ((((eq_sym Prop) ((x0 (g x1)) x2)) ((f x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2)))) as proof of (((eq Prop) ((f x1) x2)) ((x0 (g x1)) x2))
% Found (fun (x2:fofType)=> ((((eq_sym Prop) ((x0 (g x1)) x2)) ((f x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2)))) as proof of (forall (x:fofType), (((eq Prop) ((f x1) x)) ((x0 (g x1)) x)))
% Found (functional_extensionality_dep0100 (fun (x2:fofType)=> ((((eq_sym Prop) ((x0 (g x1)) x2)) ((f x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2))))) as proof of (((eq (fofType->Prop)) (f x1)) (x0 (g x1)))
% Found ((functional_extensionality_dep010 (x0 (g x1))) (fun (x2:fofType)=> ((((eq_sym Prop) ((x0 (g x1)) x2)) ((f x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2))))) as proof of (((eq (fofType->Prop)) (f x1)) (x0 (g x1)))
% Found (((functional_extensionality_dep01 (f x1)) (x0 (g x1))) (fun (x2:fofType)=> ((((eq_sym Prop) ((x0 (g x1)) x2)) ((f x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2))))) as proof of (((eq (fofType->Prop)) (f x1)) (x0 (g x1)))
% Found ((((functional_extensionality_dep0 (fun (x4:fofType)=> Prop)) (f x1)) (x0 (g x1))) (fun (x2:fofType)=> ((((eq_sym Prop) ((x0 (g x1)) x2)) ((f x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2))))) as proof of (((eq (fofType->Prop)) (f x1)) (x0 (g x1)))
% Found ((((functional_extensionality_dep0 (fun (x4:fofType)=> Prop)) (f x1)) (x0 (g x1))) (fun (x2:fofType)=> ((((eq_sym Prop) ((x0 (g x1)) x2)) ((f x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2))))) as proof of (((eq (fofType->Prop)) (f x1)) (x0 (g x1)))
% Found (eq_sym000 ((((functional_extensionality_dep0 (fun (x4:fofType)=> Prop)) (f x1)) (x0 (g x1))) (fun (x2:fofType)=> ((((eq_sym Prop) ((x0 (g x1)) x2)) ((f x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2)))))) as proof of (((eq (fofType->Prop)) (x0 (g x1))) (f x1))
% Found ((eq_sym00 (x0 (g x1))) ((((functional_extensionality_dep0 (fun (x4:fofType)=> Prop)) (f x1)) (x0 (g x1))) (fun (x2:fofType)=> ((((eq_sym Prop) ((x0 (g x1)) x2)) ((f x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2)))))) as proof of (((eq (fofType->Prop)) (x0 (g x1))) (f x1))
% Found (((eq_sym0 (f x1)) (x0 (g x1))) ((((functional_extensionality_dep0 (fun (x4:fofType)=> Prop)) (f x1)) (x0 (g x1))) (fun (x2:fofType)=> ((((eq_sym Prop) ((x0 (g x1)) x2)) ((f x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2)))))) as proof of (((eq (fofType->Prop)) (x0 (g x1))) (f x1))
% Found ((((eq_sym (fofType->Prop)) (f x1)) (x0 (g x1))) ((((functional_extensionality_dep0 (fun (x4:fofType)=> Prop)) (f x1)) (x0 (g x1))) (fun (x2:fofType)=> ((((eq_sym Prop) ((x0 (g x1)) x2)) ((f x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2)))))) as proof of (((eq (fofType->Prop)) (x0 (g x1))) (f x1))
% Found eq_ref00:=(eq_ref0 ((x0 (g x1)) x2)):(((eq Prop) ((x0 (g x1)) x2)) ((x0 (g x1)) x2))
% Found (eq_ref0 ((x0 (g x1)) x2)) as proof of (((eq Prop) ((x0 (g x1)) x2)) ((f x1) x2))
% Found ((eq_ref Prop) ((x0 (g x1)) x2)) as proof of (((eq Prop) ((x0 (g x1)) x2)) ((f x1) x2))
% Found ((eq_ref Prop) ((x0 (g x1)) x2)) as proof of (((eq Prop) ((x0 (g x1)) x2)) ((f x1) x2))
% Found ((eq_ref Prop) ((x0 (g x1)) x2)) as proof of (((eq Prop) ((x0 (g x1)) x2)) ((f x1) x2))
% Found (eq_sym100 ((eq_ref Prop) ((x0 (g x1)) x2))) as proof of (((eq Prop) ((f x1) x2)) ((x0 (g x1)) x2))
% Found ((eq_sym10 ((f x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2))) as proof of (((eq Prop) ((f x1) x2)) ((x0 (g x1)) x2))
% Found (((eq_sym1 ((x0 (g x1)) x2)) ((f x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2))) as proof of (((eq Prop) ((f x1) x2)) ((x0 (g x1)) x2))
% Found ((((eq_sym Prop) ((x0 (g x1)) x2)) ((f x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2))) as proof of (((eq Prop) ((f x1) x2)) ((x0 (g x1)) x2))
% Found (fun (x2:fofType)=> ((((eq_sym Prop) ((x0 (g x1)) x2)) ((f x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2)))) as proof of (((eq Prop) ((f x1) x2)) ((x0 (g x1)) x2))
% Found (fun (x2:fofType)=> ((((eq_sym Prop) ((x0 (g x1)) x2)) ((f x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2)))) as proof of (forall (x:fofType), (((eq Prop) ((f x1) x)) ((x0 (g x1)) x)))
% Found (functional_extensionality_dep0100 (fun (x2:fofType)=> ((((eq_sym Prop) ((x0 (g x1)) x2)) ((f x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2))))) as proof of (((eq (fofType->Prop)) (f x1)) (x0 (g x1)))
% Found ((functional_extensionality_dep010 (x0 (g x1))) (fun (x2:fofType)=> ((((eq_sym Prop) ((x0 (g x1)) x2)) ((f x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2))))) as proof of (((eq (fofType->Prop)) (f x1)) (x0 (g x1)))
% Found (((functional_extensionality_dep01 (f x1)) (x0 (g x1))) (fun (x2:fofType)=> ((((eq_sym Prop) ((x0 (g x1)) x2)) ((f x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2))))) as proof of (((eq (fofType->Prop)) (f x1)) (x0 (g x1)))
% Found ((((functional_extensionality_dep0 (fun (x4:fofType)=> Prop)) (f x1)) (x0 (g x1))) (fun (x2:fofType)=> ((((eq_sym Prop) ((x0 (g x1)) x2)) ((f x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2))))) as proof of (((eq (fofType->Prop)) (f x1)) (x0 (g x1)))
% Found eq_ref00:=(eq_ref0 ((x0 (g x1)) x2)):(((eq Prop) ((x0 (g x1)) x2)) ((x0 (g x1)) x2))
% Found (eq_ref0 ((x0 (g x1)) x2)) as proof of (((eq Prop) ((x0 (g x1)) x2)) ((f x1) x2))
% Found ((eq_ref Prop) ((x0 (g x1)) x2)) as proof of (((eq Prop) ((x0 (g x1)) x2)) ((f x1) x2))
% Found ((eq_ref Prop) ((x0 (g x1)) x2)) as proof of (((eq Prop) ((x0 (g x1)) x2)) ((f x1) x2))
% Found ((eq_ref Prop) ((x0 (g x1)) x2)) as proof of (((eq Prop) ((x0 (g x1)) x2)) ((f x1) x2))
% Found (eq_sym100 ((eq_ref Prop) ((x0 (g x1)) x2))) as proof of (((eq Prop) ((f x1) x2)) ((x0 (g x1)) x2))
% Found ((eq_sym10 ((f x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2))) as proof of (((eq Prop) ((f x1) x2)) ((x0 (g x1)) x2))
% Found (((eq_sym1 ((x0 (g x1)) x2)) ((f x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2))) as proof of (((eq Prop) ((f x1) x2)) ((x0 (g x1)) x2))
% Found ((((eq_sym Prop) ((x0 (g x1)) x2)) ((f x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2))) as proof of (((eq Prop) ((f x1) x2)) ((x0 (g x1)) x2))
% Found (fun (x2:fofType)=> ((((eq_sym Prop) ((x0 (g x1)) x2)) ((f x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2)))) as proof of (((eq Prop) ((f x1) x2)) ((x0 (g x1)) x2))
% Found (fun (x2:fofType)=> ((((eq_sym Prop) ((x0 (g x1)) x2)) ((f x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2)))) as proof of (forall (x:fofType), (((eq Prop) ((f x1) x)) ((x0 (g x1)) x)))
% Found (functional_extensionality_dep0100 (fun (x2:fofType)=> ((((eq_sym Prop) ((x0 (g x1)) x2)) ((f x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2))))) as proof of (((eq (fofType->Prop)) (f x1)) (x0 (g x1)))
% Found ((functional_extensionality_dep010 (x0 (g x1))) (fun (x2:fofType)=> ((((eq_sym Prop) ((x0 (g x1)) x2)) ((f x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2))))) as proof of (((eq (fofType->Prop)) (f x1)) (x0 (g x1)))
% Found (((functional_extensionality_dep01 (f x1)) (x0 (g x1))) (fun (x2:fofType)=> ((((eq_sym Prop) ((x0 (g x1)) x2)) ((f x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2))))) as proof of (((eq (fofType->Prop)) (f x1)) (x0 (g x1)))
% Found ((((functional_extensionality_dep0 (fun (x4:fofType)=> Prop)) (f x1)) (x0 (g x1))) (fun (x2:fofType)=> ((((eq_sym Prop) ((x0 (g x1)) x2)) ((f x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2))))) as proof of (((eq (fofType->Prop)) (f x1)) (x0 (g x1)))
% Found eq_ref00:=(eq_ref0 ((x0 (g x1)) x2)):(((eq Prop) ((x0 (g x1)) x2)) ((x0 (g x1)) x2))
% Found (eq_ref0 ((x0 (g x1)) x2)) as proof of (((eq Prop) ((x0 (g x1)) x2)) ((f x1) x2))
% Found ((eq_ref Prop) ((x0 (g x1)) x2)) as proof of (((eq Prop) ((x0 (g x1)) x2)) ((f x1) x2))
% Found ((eq_ref Prop) ((x0 (g x1)) x2)) as proof of (((eq Prop) ((x0 (g x1)) x2)) ((f x1) x2))
% Found ((eq_ref Prop) ((x0 (g x1)) x2)) as proof of (((eq Prop) ((x0 (g x1)) x2)) ((f x1) x2))
% Found (eq_sym100 ((eq_ref Prop) ((x0 (g x1)) x2))) as proof of (((eq Prop) ((f x1) x2)) ((x0 (g x1)) x2))
% Found ((eq_sym10 ((f x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2))) as proof of (((eq Prop) ((f x1) x2)) ((x0 (g x1)) x2))
% Found (((eq_sym1 ((x0 (g x1)) x2)) ((f x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2))) as proof of (((eq Prop) ((f x1) x2)) ((x0 (g x1)) x2))
% Found ((((eq_sym Prop) ((x0 (g x1)) x2)) ((f x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2))) as proof of (((eq Prop) ((f x1) x2)) ((x0 (g x1)) x2))
% Found (fun (x2:fofType)=> ((((eq_sym Prop) ((x0 (g x1)) x2)) ((f x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2)))) as proof of (((eq Prop) ((f x1) x2)) ((x0 (g x1)) x2))
% Found (fun (x2:fofType)=> ((((eq_sym Prop) ((x0 (g x1)) x2)) ((f x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2)))) as proof of (forall (x:fofType), (((eq Prop) ((f x1) x)) ((x0 (g x1)) x)))
% Found (functional_extensionality0100 (fun (x2:fofType)=> ((((eq_sym Prop) ((x0 (g x1)) x2)) ((f x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2))))) as proof of (((eq (fofType->Prop)) (f x1)) (x0 (g x1)))
% Found ((functional_extensionality010 (x0 (g x1))) (fun (x2:fofType)=> ((((eq_sym Prop) ((x0 (g x1)) x2)) ((f x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2))))) as proof of (((eq (fofType->Prop)) (f x1)) (x0 (g x1)))
% Found (((functional_extensionality01 (f x1)) (x0 (g x1))) (fun (x2:fofType)=> ((((eq_sym Prop) ((x0 (g x1)) x2)) ((f x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2))))) as proof of (((eq (fofType->Prop)) (f x1)) (x0 (g x1)))
% Found ((((functional_extensionality0 Prop) (f x1)) (x0 (g x1))) (fun (x2:fofType)=> ((((eq_sym Prop) ((x0 (g x1)) x2)) ((f x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2))))) as proof of (((eq (fofType->Prop)) (f x1)) (x0 (g x1)))
% Found eq_ref00:=(eq_ref0 ((x0 (g x1)) x2)):(((eq Prop) ((x0 (g x1)) x2)) ((x0 (g x1)) x2))
% Found (eq_ref0 ((x0 (g x1)) x2)) as proof of (((eq Prop) ((x0 (g x1)) x2)) ((f x1) x2))
% Found ((eq_ref Prop) ((x0 (g x1)) x2)) as proof of (((eq Prop) ((x0 (g x1)) x2)) ((f x1) x2))
% Found ((eq_ref Prop) ((x0 (g x1)) x2)) as proof of (((eq Prop) ((x0 (g x1)) x2)) ((f x1) x2))
% Found ((eq_ref Prop) ((x0 (g x1)) x2)) as proof of (((eq Prop) ((x0 (g x1)) x2)) ((f x1) x2))
% Found (eq_sym100 ((eq_ref Prop) ((x0 (g x1)) x2))) as proof of (((eq Prop) ((f x1) x2)) ((x0 (g x1)) x2))
% Found ((eq_sym10 ((f x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2))) as proof of (((eq Prop) ((f x1) x2)) ((x0 (g x1)) x2))
% Found (((eq_sym1 ((x0 (g x1)) x2)) ((f x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2))) as proof of (((eq Prop) ((f x1) x2)) ((x0 (g x1)) x2))
% Found ((((eq_sym Prop) ((x0 (g x1)) x2)) ((f x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2))) as proof of (((eq Prop) ((f x1) x2)) ((x0 (g x1)) x2))
% Found (fun (x2:fofType)=> ((((eq_sym Prop) ((x0 (g x1)) x2)) ((f x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2)))) as proof of (((eq Prop) ((f x1) x2)) ((x0 (g x1)) x2))
% Found (fun (x2:fofType)=> ((((eq_sym Prop) ((x0 (g x1)) x2)) ((f x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2)))) as proof of (forall (x:fofType), (((eq Prop) ((f x1) x)) ((x0 (g x1)) x)))
% Found (functional_extensionality0100 (fun (x2:fofType)=> ((((eq_sym Prop) ((x0 (g x1)) x2)) ((f x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2))))) as proof of (((eq (fofType->Prop)) (f x1)) (x0 (g x1)))
% Found ((functional_extensionality010 (x0 (g x1))) (fun (x2:fofType)=> ((((eq_sym Prop) ((x0 (g x1)) x2)) ((f x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2))))) as proof of (((eq (fofType->Prop)) (f x1)) (x0 (g x1)))
% Found (((functional_extensionality01 (f x1)) (x0 (g x1))) (fun (x2:fofType)=> ((((eq_sym Prop) ((x0 (g x1)) x2)) ((f x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2))))) as proof of (((eq (fofType->Prop)) (f x1)) (x0 (g x1)))
% Found ((((functional_extensionality0 Prop) (f x1)) (x0 (g x1))) (fun (x2:fofType)=> ((((eq_sym Prop) ((x0 (g x1)) x2)) ((f x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2))))) as proof of (((eq (fofType->Prop)) (f x1)) (x0 (g x1)))
% Found x1:(P (fun (Xx:fofType)=> (x0 (g Xx))))
% Instantiate: b:=(fun (Xx:fofType)=> (x0 (g Xx))):(fofType->(fofType->Prop))
% Found x1 as proof of (P0 b)
% Found eta_expansion000:=(eta_expansion00 f):(((eq (fofType->(fofType->Prop))) f) (fun (x:fofType)=> (f x)))
% Found (eta_expansion00 f) as proof of (((eq (fofType->(fofType->Prop))) f) b)
% Found ((eta_expansion0 (fofType->Prop)) f) as proof of (((eq (fofType->(fofType->Prop))) f) b)
% Found (((eta_expansion fofType) (fofType->Prop)) f) as proof of (((eq (fofType->(fofType->Prop))) f) b)
% Found (((eta_expansion fofType) (fofType->Prop)) f) as proof of (((eq (fofType->(fofType->Prop))) f) b)
% Found (((eta_expansion fofType) (fofType->Prop)) f) as proof of (((eq (fofType->(fofType->Prop))) f) b)
% Found eq_ref000:=(eq_ref00 P1):((P1 ((x0 (g x1)) y))->(P1 ((x0 (g x1)) y)))
% Found (eq_ref00 P1) as proof of ((P1 ((x0 (g x1)) y))->(P1 ((f x1) y)))
% Found ((eq_ref0 ((x0 (g x1)) y)) P1) as proof of ((P1 ((x0 (g x1)) y))->(P1 ((f x1) y)))
% Found (((eq_ref Prop) ((x0 (g x1)) y)) P1) as proof of ((P1 ((x0 (g x1)) y))->(P1 ((f x1) y)))
% Found (((eq_ref Prop) ((x0 (g x1)) y)) P1) as proof of ((P1 ((x0 (g x1)) y))->(P1 ((f x1) y)))
% Found (fun (P1:(Prop->Prop))=> (((eq_ref Prop) ((x0 (g x1)) y)) P1)) as proof of ((P1 ((x0 (g x1)) y))->(P1 ((f x1) y)))
% Found (fun (y:fofType) (P1:(Prop->Prop))=> (((eq_ref Prop) ((x0 (g x1)) y)) P1)) as proof of (((eq Prop) ((x0 (g x1)) y)) ((f x1) y))
% Found eq_ref000:=(eq_ref00 P1):((P1 ((x0 (g x1)) y))->(P1 ((x0 (g x1)) y)))
% Found (eq_ref00 P1) as proof of ((P1 ((x0 (g x1)) y))->(P1 ((f x1) y)))
% Found ((eq_ref0 ((x0 (g x1)) y)) P1) as proof of ((P1 ((x0 (g x1)) y))->(P1 ((f x1) y)))
% Found (((eq_ref Prop) ((x0 (g x1)) y)) P1) as proof of ((P1 ((x0 (g x1)) y))->(P1 ((f x1) y)))
% Found (((eq_ref Prop) ((x0 (g x1)) y)) P1) as proof of ((P1 ((x0 (g x1)) y))->(P1 ((f x1) y)))
% Found (fun (P1:(Prop->Prop))=> (((eq_ref Prop) ((x0 (g x1)) y)) P1)) as proof of ((P1 ((x0 (g x1)) y))->(P1 ((f x1) y)))
% Found (fun (P1:(Prop->Prop))=> (((eq_ref Prop) ((x0 (g x1)) y)) P1)) as proof of (forall (P:(Prop->Prop)), ((P ((x0 (g x1)) y))->(P ((f x1) y))))
% Found (fun (y:fofType) (P1:(Prop->Prop))=> (((eq_ref Prop) ((x0 (g x1)) y)) P1)) as proof of (((eq Prop) ((x0 (g x1)) y)) ((f x1) y))
% Found eq_ref000:=(eq_ref00 P1):((P1 ((x0 (g x1)) y))->(P1 ((x0 (g x1)) y)))
% Found (eq_ref00 P1) as proof of ((P1 ((x0 (g x1)) y))->(P1 ((f x1) y)))
% Found ((eq_ref0 ((x0 (g x1)) y)) P1) as proof of ((P1 ((x0 (g x1)) y))->(P1 ((f x1) y)))
% Found (((eq_ref Prop) ((x0 (g x1)) y)) P1) as proof of ((P1 ((x0 (g x1)) y))->(P1 ((f x1) y)))
% Found (((eq_ref Prop) ((x0 (g x1)) y)) P1) as proof of ((P1 ((x0 (g x1)) y))->(P1 ((f x1) y)))
% Found (fun (P1:(Prop->Prop))=> (((eq_ref Prop) ((x0 (g x1)) y)) P1)) as proof of ((P1 ((x0 (g x1)) y))->(P1 ((f x1) y)))
% Found (fun (P1:(Prop->Prop))=> (((eq_ref Prop) ((x0 (g x1)) y)) P1)) as proof of (forall (P:(Prop->Prop)), ((P ((x0 (g x1)) y))->(P ((f x1) y))))
% Found (fun (y:fofType) (P1:(Prop->Prop))=> (((eq_ref Prop) ((x0 (g x1)) y)) P1)) as proof of (((eq Prop) ((x0 (g x1)) y)) ((f x1) y))
% Found eq_ref000:=(eq_ref00 P1):((P1 ((x0 (g x1)) y))->(P1 ((x0 (g x1)) y)))
% Found (eq_ref00 P1) as proof of ((P1 ((x0 (g x1)) y))->(P1 ((f x1) y)))
% Found ((eq_ref0 ((x0 (g x1)) y)) P1) as proof of ((P1 ((x0 (g x1)) y))->(P1 ((f x1) y)))
% Found (((eq_ref Prop) ((x0 (g x1)) y)) P1) as proof of ((P1 ((x0 (g x1)) y))->(P1 ((f x1) y)))
% Found (((eq_ref Prop) ((x0 (g x1)) y)) P1) as proof of ((P1 ((x0 (g x1)) y))->(P1 ((f x1) y)))
% Found (fun (P1:(Prop->Prop))=> (((eq_ref Prop) ((x0 (g x1)) y)) P1)) as proof of ((P1 ((x0 (g x1)) y))->(P1 ((f x1) y)))
% Found (fun (y:fofType) (P1:(Prop->Prop))=> (((eq_ref Prop) ((x0 (g x1)) y)) P1)) as proof of (((eq Prop) ((x0 (g x1)) y)) ((f x1) y))
% Found eq_ref00:=(eq_ref0 ((x0 (g x1)) x2)):(((eq Prop) ((x0 (g x1)) x2)) ((x0 (g x1)) x2))
% Found (eq_ref0 ((x0 (g x1)) x2)) as proof of (((eq Prop) ((x0 (g x1)) x2)) ((f x1) x2))
% Found ((eq_ref Prop) ((x0 (g x1)) x2)) as proof of (((eq Prop) ((x0 (g x1)) x2)) ((f x1) x2))
% Found ((eq_ref Prop) ((x0 (g x1)) x2)) as proof of (((eq Prop) ((x0 (g x1)) x2)) ((f x1) x2))
% Found ((eq_ref Prop) ((x0 (g x1)) x2)) as proof of (((eq Prop) ((x0 (g x1)) x2)) ((f x1) x2))
% Found (eq_sym100 ((eq_ref Prop) ((x0 (g x1)) x2))) as proof of (((eq Prop) ((f x1) x2)) ((x0 (g x1)) x2))
% Found ((eq_sym10 ((f x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2))) as proof of (((eq Prop) ((f x1) x2)) ((x0 (g x1)) x2))
% Found (((eq_sym1 ((x0 (g x1)) x2)) ((f x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2))) as proof of (((eq Prop) ((f x1) x2)) ((x0 (g x1)) x2))
% Found ((((eq_sym Prop) ((x0 (g x1)) x2)) ((f x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2))) as proof of (((eq Prop) ((f x1) x2)) ((x0 (g x1)) x2))
% Found (fun (x2:fofType)=> ((((eq_sym Prop) ((x0 (g x1)) x2)) ((f x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2)))) as proof of (((eq Prop) ((f x1) x2)) ((x0 (g x1)) x2))
% Found (fun (x2:fofType)=> ((((eq_sym Prop) ((x0 (g x1)) x2)) ((f x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2)))) as proof of (forall (x:fofType), (((eq Prop) ((f x1) x)) ((x0 (g x1)) x)))
% Found (functional_extensionality_dep0000 (fun (x2:fofType)=> ((((eq_sym Prop) ((x0 (g x1)) x2)) ((f x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2))))) as proof of (forall (P:((fofType->Prop)->Prop)), ((P (f x1))->(P (x0 (g x1)))))
% Found ((functional_extensionality_dep000 (x0 (g x1))) (fun (x2:fofType)=> ((((eq_sym Prop) ((x0 (g x1)) x2)) ((f x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2))))) as proof of (forall (P:((fofType->Prop)->Prop)), ((P (f x1))->(P (x0 (g x1)))))
% Found (((functional_extensionality_dep00 (f x1)) (x0 (g x1))) (fun (x2:fofType)=> ((((eq_sym Prop) ((x0 (g x1)) x2)) ((f x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2))))) as proof of (forall (P:((fofType->Prop)->Prop)), ((P (f x1))->(P (x0 (g x1)))))
% Found ((((functional_extensionality_dep0 (fun (x4:fofType)=> Prop)) (f x1)) (x0 (g x1))) (fun (x2:fofType)=> ((((eq_sym Prop) ((x0 (g x1)) x2)) ((f x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2))))) as proof of (forall (P:((fofType->Prop)->Prop)), ((P (f x1))->(P (x0 (g x1)))))
% Found (((((functional_extensionality_dep fofType) (fun (x4:fofType)=> Prop)) (f x1)) (x0 (g x1))) (fun (x2:fofType)=> ((((eq_sym Prop) ((x0 (g x1)) x2)) ((f x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2))))) as proof of (forall (P:((fofType->Prop)->Prop)), ((P (f x1))->(P (x0 (g x1)))))
% Found (((((functional_extensionality_dep fofType) (fun (x4:fofType)=> Prop)) (f x1)) (x0 (g x1))) (fun (x2:fofType)=> ((((eq_sym Prop) ((x0 (g x1)) x2)) ((f x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2))))) as proof of (forall (P:((fofType->Prop)->Prop)), ((P (f x1))->(P (x0 (g x1)))))
% Found eq_ref00:=(eq_ref0 ((x0 (g x1)) x2)):(((eq Prop) ((x0 (g x1)) x2)) ((x0 (g x1)) x2))
% Found (eq_ref0 ((x0 (g x1)) x2)) as proof of (((eq Prop) ((x0 (g x1)) x2)) ((f x1) x2))
% Found ((eq_ref Prop) ((x0 (g x1)) x2)) as proof of (((eq Prop) ((x0 (g x1)) x2)) ((f x1) x2))
% Found ((eq_ref Prop) ((x0 (g x1)) x2)) as proof of (((eq Prop) ((x0 (g x1)) x2)) ((f x1) x2))
% Found ((eq_ref Prop) ((x0 (g x1)) x2)) as proof of (((eq Prop) ((x0 (g x1)) x2)) ((f x1) x2))
% Found (eq_sym100 ((eq_ref Prop) ((x0 (g x1)) x2))) as proof of (((eq Prop) ((f x1) x2)) ((x0 (g x1)) x2))
% Found ((eq_sym10 ((f x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2))) as proof of (((eq Prop) ((f x1) x2)) ((x0 (g x1)) x2))
% Found (((eq_sym1 ((x0 (g x1)) x2)) ((f x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2))) as proof of (((eq Prop) ((f x1) x2)) ((x0 (g x1)) x2))
% Found ((((eq_sym Prop) ((x0 (g x1)) x2)) ((f x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2))) as proof of (((eq Prop) ((f x1) x2)) ((x0 (g x1)) x2))
% Found (fun (x2:fofType)=> ((((eq_sym Prop) ((x0 (g x1)) x2)) ((f x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2)))) as proof of (((eq Prop) ((f x1) x2)) ((x0 (g x1)) x2))
% Found (fun (x2:fofType)=> ((((eq_sym Prop) ((x0 (g x1)) x2)) ((f x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2)))) as proof of (forall (x:fofType), (((eq Prop) ((f x1) x)) ((x0 (g x1)) x)))
% Found (functional_extensionality0000 (fun (x2:fofType)=> ((((eq_sym Prop) ((x0 (g x1)) x2)) ((f x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2))))) as proof of (forall (P:((fofType->Prop)->Prop)), ((P (f x1))->(P (x0 (g x1)))))
% Found ((functional_extensionality000 (x0 (g x1))) (fun (x2:fofType)=> ((((eq_sym Prop) ((x0 (g x1)) x2)) ((f x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2))))) as proof of (forall (P:((fofType->Prop)->Prop)), ((P (f x1))->(P (x0 (g x1)))))
% Found (((functional_extensionality00 (f x1)) (x0 (g x1))) (fun (x2:fofType)=> ((((eq_sym Prop) ((x0 (g x1)) x2)) ((f x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2))))) as proof of (forall (P:((fofType->Prop)->Prop)), ((P (f x1))->(P (x0 (g x1)))))
% Found ((((functional_extensionality0 Prop) (f x1)) (x0 (g x1))) (fun (x2:fofType)=> ((((eq_sym Prop) ((x0 (g x1)) x2)) ((f x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2))))) as proof of (forall (P:((fofType->Prop)->Prop)), ((P (f x1))->(P (x0 (g x1)))))
% Found (((((functional_extensionality fofType) Prop) (f x1)) (x0 (g x1))) (fun (x2:fofType)=> ((((eq_sym Prop) ((x0 (g x1)) x2)) ((f x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2))))) as proof of (forall (P:((fofType->Prop)->Prop)), ((P (f x1))->(P (x0 (g x1)))))
% Found (((((functional_extensionality fofType) Prop) (f x1)) (x0 (g x1))) (fun (x2:fofType)=> ((((eq_sym Prop) ((x0 (g x1)) x2)) ((f x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2))))) as proof of (forall (P:((fofType->Prop)->Prop)), ((P (f x1))->(P (x0 (g x1)))))
% Found eq_ref00:=(eq_ref0 ((x0 (g x1)) x2)):(((eq Prop) ((x0 (g x1)) x2)) ((x0 (g x1)) x2))
% Found (eq_ref0 ((x0 (g x1)) x2)) as proof of (((eq Prop) ((x0 (g x1)) x2)) ((f x1) x2))
% Found ((eq_ref Prop) ((x0 (g x1)) x2)) as proof of (((eq Prop) ((x0 (g x1)) x2)) ((f x1) x2))
% Found ((eq_ref Prop) ((x0 (g x1)) x2)) as proof of (((eq Prop) ((x0 (g x1)) x2)) ((f x1) x2))
% Found ((eq_ref Prop) ((x0 (g x1)) x2)) as proof of (((eq Prop) ((x0 (g x1)) x2)) ((f x1) x2))
% Found (eq_sym100 ((eq_ref Prop) ((x0 (g x1)) x2))) as proof of (((eq Prop) ((f x1) x2)) ((x0 (g x1)) x2))
% Found ((eq_sym10 ((f x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2))) as proof of (((eq Prop) ((f x1) x2)) ((x0 (g x1)) x2))
% Found (((eq_sym1 ((x0 (g x1)) x2)) ((f x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2))) as proof of (((eq Prop) ((f x1) x2)) ((x0 (g x1)) x2))
% Found ((((eq_sym Prop) ((x0 (g x1)) x2)) ((f x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2))) as proof of (((eq Prop) ((f x1) x2)) ((x0 (g x1)) x2))
% Found (fun (x2:fofType)=> ((((eq_sym Prop) ((x0 (g x1)) x2)) ((f x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2)))) as proof of (((eq Prop) ((f x1) x2)) ((x0 (g x1)) x2))
% Found (fun (x2:fofType)=> ((((eq_sym Prop) ((x0 (g x1)) x2)) ((f x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2)))) as proof of (forall (x:fofType), (((eq Prop) ((f x1) x)) ((x0 (g x1)) x)))
% Found (functional_extensionality_dep0000 (fun (x2:fofType)=> ((((eq_sym Prop) ((x0 (g x1)) x2)) ((f x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2))))) as proof of (((eq (fofType->Prop)) (f x1)) (x0 (g x1)))
% Found ((functional_extensionality_dep000 (x0 (g x1))) (fun (x2:fofType)=> ((((eq_sym Prop) ((x0 (g x1)) x2)) ((f x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2))))) as proof of (((eq (fofType->Prop)) (f x1)) (x0 (g x1)))
% Found (((functional_extensionality_dep00 (f x1)) (x0 (g x1))) (fun (x2:fofType)=> ((((eq_sym Prop) ((x0 (g x1)) x2)) ((f x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2))))) as proof of (((eq (fofType->Prop)) (f x1)) (x0 (g x1)))
% Found ((((functional_extensionality_dep0 (fun (x4:fofType)=> Prop)) (f x1)) (x0 (g x1))) (fun (x2:fofType)=> ((((eq_sym Prop) ((x0 (g x1)) x2)) ((f x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2))))) as proof of (((eq (fofType->Prop)) (f x1)) (x0 (g x1)))
% Found (((((functional_extensionality_dep fofType) (fun (x4:fofType)=> Prop)) (f x1)) (x0 (g x1))) (fun (x2:fofType)=> ((((eq_sym Prop) ((x0 (g x1)) x2)) ((f x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2))))) as proof of (((eq (fofType->Prop)) (f x1)) (x0 (g x1)))
% Found eq_ref00:=(eq_ref0 ((x0 (g x1)) x2)):(((eq Prop) ((x0 (g x1)) x2)) ((x0 (g x1)) x2))
% Found (eq_ref0 ((x0 (g x1)) x2)) as proof of (((eq Prop) ((x0 (g x1)) x2)) ((f x1) x2))
% Found ((eq_ref Prop) ((x0 (g x1)) x2)) as proof of (((eq Prop) ((x0 (g x1)) x2)) ((f x1) x2))
% Found ((eq_ref Prop) ((x0 (g x1)) x2)) as proof of (((eq Prop) ((x0 (g x1)) x2)) ((f x1) x2))
% Found ((eq_ref Prop) ((x0 (g x1)) x2)) as proof of (((eq Prop) ((x0 (g x1)) x2)) ((f x1) x2))
% Found (eq_sym100 ((eq_ref Prop) ((x0 (g x1)) x2))) as proof of (((eq Prop) ((f x1) x2)) ((x0 (g x1)) x2))
% Found ((eq_sym10 ((f x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2))) as proof of (((eq Prop) ((f x1) x2)) ((x0 (g x1)) x2))
% Found (((eq_sym1 ((x0 (g x1)) x2)) ((f x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2))) as proof of (((eq Prop) ((f x1) x2)) ((x0 (g x1)) x2))
% Found ((((eq_sym Prop) ((x0 (g x1)) x2)) ((f x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2))) as proof of (((eq Prop) ((f x1) x2)) ((x0 (g x1)) x2))
% Found (fun (x2:fofType)=> ((((eq_sym Prop) ((x0 (g x1)) x2)) ((f x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2)))) as proof of (((eq Prop) ((f x1) x2)) ((x0 (g x1)) x2))
% Found (fun (x2:fofType)=> ((((eq_sym Prop) ((x0 (g x1)) x2)) ((f x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2)))) as proof of (forall (x:fofType), (((eq Prop) ((f x1) x)) ((x0 (g x1)) x)))
% Found (functional_extensionality0000 (fun (x2:fofType)=> ((((eq_sym Prop) ((x0 (g x1)) x2)) ((f x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2))))) as proof of (((eq (fofType->Prop)) (f x1)) (x0 (g x1)))
% Found ((functional_extensionality000 (x0 (g x1))) (fun (x2:fofType)=> ((((eq_sym Prop) ((x0 (g x1)) x2)) ((f x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2))))) as proof of (((eq (fofType->Prop)) (f x1)) (x0 (g x1)))
% Found (((functional_extensionality00 (f x1)) (x0 (g x1))) (fun (x2:fofType)=> ((((eq_sym Prop) ((x0 (g x1)) x2)) ((f x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2))))) as proof of (((eq (fofType->Prop)) (f x1)) (x0 (g x1)))
% Found ((((functional_extensionality0 Prop) (f x1)) (x0 (g x1))) (fun (x2:fofType)=> ((((eq_sym Prop) ((x0 (g x1)) x2)) ((f x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2))))) as proof of (((eq (fofType->Prop)) (f x1)) (x0 (g x1)))
% Found (((((functional_extensionality fofType) Prop) (f x1)) (x0 (g x1))) (fun (x2:fofType)=> ((((eq_sym Prop) ((x0 (g x1)) x2)) ((f x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2))))) as proof of (((eq (fofType->Prop)) (f x1)) (x0 (g x1)))
% Found eq_ref00:=(eq_ref0 ((x0 (g x1)) x2)):(((eq Prop) ((x0 (g x1)) x2)) ((x0 (g x1)) x2))
% Found (eq_ref0 ((x0 (g x1)) x2)) as proof of (((eq Prop) ((x0 (g x1)) x2)) ((f x1) x2))
% Found ((eq_ref Prop) ((x0 (g x1)) x2)) as proof of (((eq Prop) ((x0 (g x1)) x2)) ((f x1) x2))
% Found ((eq_ref Prop) ((x0 (g x1)) x2)) as proof of (((eq Prop) ((x0 (g x1)) x2)) ((f x1) x2))
% Found ((eq_ref Prop) ((x0 (g x1)) x2)) as proof of (((eq Prop) ((x0 (g x1)) x2)) ((f x1) x2))
% Found (eq_sym100 ((eq_ref Prop) ((x0 (g x1)) x2))) as proof of (((eq Prop) ((f x1) x2)) ((x0 (g x1)) x2))
% Found ((eq_sym10 ((f x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2))) as proof of (((eq Prop) ((f x1) x2)) ((x0 (g x1)) x2))
% Found (((eq_sym1 ((x0 (g x1)) x2)) ((f x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2))) as proof of (((eq Prop) ((f x1) x2)) ((x0 (g x1)) x2))
% Found ((((eq_sym Prop) ((x0 (g x1)) x2)) ((f x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2))) as proof of (((eq Prop) ((f x1) x2)) ((x0 (g x1)) x2))
% Found (fun (x2:fofType)=> ((((eq_sym Prop) ((x0 (g x1)) x2)) ((f x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2)))) as proof of (((eq Prop) ((f x1) x2)) ((x0 (g x1)) x2))
% Found (fun (x2:fofType)=> ((((eq_sym Prop) ((x0 (g x1)) x2)) ((f x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2)))) as proof of (forall (x:fofType), (((eq Prop) ((f x1) x)) ((x0 (g x1)) x)))
% Found (functional_extensionality_dep0000 (fun (x2:fofType)=> ((((eq_sym Prop) ((x0 (g x1)) x2)) ((f x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2))))) as proof of (((eq (fofType->Prop)) (f x1)) (x0 (g x1)))
% Found ((functional_extensionality_dep000 (x0 (g x1))) (fun (x2:fofType)=> ((((eq_sym Prop) ((x0 (g x1)) x2)) ((f x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2))))) as proof of (((eq (fofType->Prop)) (f x1)) (x0 (g x1)))
% Found (((functional_extensionality_dep00 (f x1)) (x0 (g x1))) (fun (x2:fofType)=> ((((eq_sym Prop) ((x0 (g x1)) x2)) ((f x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2))))) as proof of (((eq (fofType->Prop)) (f x1)) (x0 (g x1)))
% Found ((((functional_extensionality_dep0 (fun (x4:fofType)=> Prop)) (f x1)) (x0 (g x1))) (fun (x2:fofType)=> ((((eq_sym Prop) ((x0 (g x1)) x2)) ((f x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2))))) as proof of (((eq (fofType->Prop)) (f x1)) (x0 (g x1)))
% Found (((((functional_extensionality_dep fofType) (fun (x4:fofType)=> Prop)) (f x1)) (x0 (g x1))) (fun (x2:fofType)=> ((((eq_sym Prop) ((x0 (g x1)) x2)) ((f x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2))))) as proof of (((eq (fofType->Prop)) (f x1)) (x0 (g x1)))
% Found eq_ref00:=(eq_ref0 ((x0 (g x1)) x2)):(((eq Prop) ((x0 (g x1)) x2)) ((x0 (g x1)) x2))
% Found (eq_ref0 ((x0 (g x1)) x2)) as proof of (((eq Prop) ((x0 (g x1)) x2)) ((f x1) x2))
% Found ((eq_ref Prop) ((x0 (g x1)) x2)) as proof of (((eq Prop) ((x0 (g x1)) x2)) ((f x1) x2))
% Found ((eq_ref Prop) ((x0 (g x1)) x2)) as proof of (((eq Prop) ((x0 (g x1)) x2)) ((f x1) x2))
% Found ((eq_ref Prop) ((x0 (g x1)) x2)) as proof of (((eq Prop) ((x0 (g x1)) x2)) ((f x1) x2))
% Found (eq_sym100 ((eq_ref Prop) ((x0 (g x1)) x2))) as proof of (((eq Prop) ((f x1) x2)) ((x0 (g x1)) x2))
% Found ((eq_sym10 ((f x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2))) as proof of (((eq Prop) ((f x1) x2)) ((x0 (g x1)) x2))
% Found (((eq_sym1 ((x0 (g x1)) x2)) ((f x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2))) as proof of (((eq Prop) ((f x1) x2)) ((x0 (g x1)) x2))
% Found ((((eq_sym Prop) ((x0 (g x1)) x2)) ((f x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2))) as proof of (((eq Prop) ((f x1) x2)) ((x0 (g x1)) x2))
% Found (fun (x2:fofType)=> ((((eq_sym Prop) ((x0 (g x1)) x2)) ((f x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2)))) as proof of (((eq Prop) ((f x1) x2)) ((x0 (g x1)) x2))
% Found (fun (x2:fofType)=> ((((eq_sym Prop) ((x0 (g x1)) x2)) ((f x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2)))) as proof of (forall (x:fofType), (((eq Prop) ((f x1) x)) ((x0 (g x1)) x)))
% Found (functional_extensionality0000 (fun (x2:fofType)=> ((((eq_sym Prop) ((x0 (g x1)) x2)) ((f x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2))))) as proof of (((eq (fofType->Prop)) (f x1)) (x0 (g x1)))
% Found ((functional_extensionality000 (x0 (g x1))) (fun (x2:fofType)=> ((((eq_sym Prop) ((x0 (g x1)) x2)) ((f x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2))))) as proof of (((eq (fofType->Prop)) (f x1)) (x0 (g x1)))
% Found (((functional_extensionality00 (f x1)) (x0 (g x1))) (fun (x2:fofType)=> ((((eq_sym Prop) ((x0 (g x1)) x2)) ((f x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2))))) as proof of (((eq (fofType->Prop)) (f x1)) (x0 (g x1)))
% Found ((((functional_extensionality0 Prop) (f x1)) (x0 (g x1))) (fun (x2:fofType)=> ((((eq_sym Prop) ((x0 (g x1)) x2)) ((f x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2))))) as proof of (((eq (fofType->Prop)) (f x1)) (x0 (g x1)))
% Found (((((functional_extensionality fofType) Prop) (f x1)) (x0 (g x1))) (fun (x2:fofType)=> ((((eq_sym Prop) ((x0 (g x1)) x2)) ((f x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2))))) as proof of (((eq (fofType->Prop)) (f x1)) (x0 (g x1)))
% Found x1:(P (fun (Xx:fofType)=> (x0 (g Xx))))
% Instantiate: f0:=(fun (Xx:fofType)=> (x0 (g Xx))):(fofType->(fofType->Prop))
% Found x1 as proof of (P0 f0)
% Found eq_ref00:=(eq_ref0 (f0 x2)):(((eq (fofType->Prop)) (f0 x2)) (f0 x2))
% Found (eq_ref0 (f0 x2)) as proof of (((eq (fofType->Prop)) (f0 x2)) (f x2))
% Found ((eq_ref (fofType->Prop)) (f0 x2)) as proof of (((eq (fofType->Prop)) (f0 x2)) (f x2))
% Found ((eq_ref (fofType->Prop)) (f0 x2)) as proof of (((eq (fofType->Prop)) (f0 x2)) (f x2))
% Found (fun (x2:fofType)=> ((eq_ref (fofType->Prop)) (f0 x2))) as proof of (((eq (fofType->Prop)) (f0 x2)) (f x2))
% Found (fun (x2:fofType)=> ((eq_ref (fofType->Prop)) (f0 x2))) as proof of (forall (x:fofType), (((eq (fofType->Prop)) (f0 x)) (f x)))
% Found x1:(P (fun (Xx:fofType)=> (x0 (g Xx))))
% Instantiate: f0:=(fun (Xx:fofType)=> (x0 (g Xx))):(fofType->(fofType->Prop))
% Found x1 as proof of (P0 f0)
% Found eq_ref00:=(eq_ref0 (f0 x2)):(((eq (fofType->Prop)) (f0 x2)) (f0 x2))
% Found (eq_ref0 (f0 x2)) as proof of (((eq (fofType->Prop)) (f0 x2)) (f x2))
% Found ((eq_ref (fofType->Prop)) (f0 x2)) as proof of (((eq (fofType->Prop)) (f0 x2)) (f x2))
% Found ((eq_ref (fofType->Prop)) (f0 x2)) as proof of (((eq (fofType->Prop)) (f0 x2)) (f x2))
% Found (fun (x2:fofType)=> ((eq_ref (fofType->Prop)) (f0 x2))) as proof of (((eq (fofType->Prop)) (f0 x2)) (f x2))
% Found (fun (x2:fofType)=> ((eq_ref (fofType->Prop)) (f0 x2))) as proof of (forall (x:fofType), (((eq (fofType->Prop)) (f0 x)) (f x)))
% Found eq_ref00:=(eq_ref0 (g x1)):(((eq (fofType->Prop)) (g x1)) (g x1))
% Found (eq_ref0 (g x1)) as proof of (((eq (fofType->Prop)) (g x1)) (g x1))
% Found ((eq_ref (fofType->Prop)) (g x1)) as proof of (((eq (fofType->Prop)) (g x1)) (g x1))
% Found ((eq_ref (fofType->Prop)) (g x1)) as proof of (((eq (fofType->Prop)) (g x1)) (g x1))
% Found (x200 ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P (x0 (g x1)))->(P (f x1)))
% Found (x200 ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P (x0 (g x1)))->(P (f x1)))
% Found ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> ((x20 x3) (fun (x4:(fofType->Prop))=> (P (x0 (g x1)))))) ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P (x0 (g x1)))->(P (f x1)))
% Found ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> (((x2 x1) x3) (fun (x4:(fofType->Prop))=> (P (x0 (g x1)))))) ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P (x0 (g x1)))->(P (f x1)))
% Found ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> ((((x x1) x1) x3) (fun (x4:(fofType->Prop))=> (P (x0 (g x1)))))) ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P (x0 (g x1)))->(P (f x1)))
% Found ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> ((((x x1) x1) x3) (fun (x4:(fofType->Prop))=> (P (x0 (g x1)))))) ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P (x0 (g x1)))->(P (f x1)))
% Found (fun (P:((fofType->Prop)->Prop))=> ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> ((((x x1) x1) x3) (fun (x4:(fofType->Prop))=> (P (x0 (g x1)))))) ((eq_ref (fofType->Prop)) (g x1)))) as proof of ((P (x0 (g x1)))->(P (f x1)))
% Found (fun (P:((fofType->Prop)->Prop))=> ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> ((((x x1) x1) x3) (fun (x4:(fofType->Prop))=> (P (x0 (g x1)))))) ((eq_ref (fofType->Prop)) (g x1)))) as proof of (forall (P:((fofType->Prop)->Prop)), ((P (x0 (g x1)))->(P (f x1))))
% Found eq_ref00:=(eq_ref0 (g x1)):(((eq (fofType->Prop)) (g x1)) (g x1))
% Found (eq_ref0 (g x1)) as proof of (((eq (fofType->Prop)) (g x1)) (g x1))
% Found ((eq_ref (fofType->Prop)) (g x1)) as proof of (((eq (fofType->Prop)) (g x1)) (g x1))
% Found ((eq_ref (fofType->Prop)) (g x1)) as proof of (((eq (fofType->Prop)) (g x1)) (g x1))
% Found (x200 ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P (x0 (g x1)))->(P (f x1)))
% Found (x200 ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P (x0 (g x1)))->(P (f x1)))
% Found ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> ((x20 x3) P)) ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P (x0 (g x1)))->(P (f x1)))
% Found ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> (((x2 x1) x3) P)) ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P (x0 (g x1)))->(P (f x1)))
% Found ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> ((((x x1) x1) x3) P)) ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P (x0 (g x1)))->(P (f x1)))
% Found ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> ((((x x1) x1) x3) P)) ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P (x0 (g x1)))->(P (f x1)))
% Found (fun (P:((fofType->Prop)->Prop))=> ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> ((((x x1) x1) x3) P)) ((eq_ref (fofType->Prop)) (g x1)))) as proof of ((P (x0 (g x1)))->(P (f x1)))
% Found (fun (P:((fofType->Prop)->Prop))=> ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> ((((x x1) x1) x3) P)) ((eq_ref (fofType->Prop)) (g x1)))) as proof of (forall (P:((fofType->Prop)->Prop)), ((P (x0 (g x1)))->(P (f x1))))
% Found eq_ref00:=(eq_ref0 (g x1)):(((eq (fofType->Prop)) (g x1)) (g x1))
% Found (eq_ref0 (g x1)) as proof of (((eq (fofType->Prop)) (g x1)) (g x1))
% Found ((eq_ref (fofType->Prop)) (g x1)) as proof of (((eq (fofType->Prop)) (g x1)) (g x1))
% Found ((eq_ref (fofType->Prop)) (g x1)) as proof of (((eq (fofType->Prop)) (g x1)) (g x1))
% Found (x200 ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P (x0 (g x1)))->(P (f x1)))
% Found (x200 ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P (x0 (g x1)))->(P (f x1)))
% Found ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> ((x20 x3) (fun (x4:(fofType->Prop))=> (P (x0 (g x1)))))) ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P (x0 (g x1)))->(P (f x1)))
% Found ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> (((x2 x1) x3) (fun (x4:(fofType->Prop))=> (P (x0 (g x1)))))) ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P (x0 (g x1)))->(P (f x1)))
% Found ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> ((((x x1) x1) x3) (fun (x4:(fofType->Prop))=> (P (x0 (g x1)))))) ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P (x0 (g x1)))->(P (f x1)))
% Found ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> ((((x x1) x1) x3) (fun (x4:(fofType->Prop))=> (P (x0 (g x1)))))) ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P (x0 (g x1)))->(P (f x1)))
% Found (fun (P:((fofType->Prop)->Prop))=> ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> ((((x x1) x1) x3) (fun (x4:(fofType->Prop))=> (P (x0 (g x1)))))) ((eq_ref (fofType->Prop)) (g x1)))) as proof of ((P (x0 (g x1)))->(P (f x1)))
% Found (fun (P:((fofType->Prop)->Prop))=> ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> ((((x x1) x1) x3) (fun (x4:(fofType->Prop))=> (P (x0 (g x1)))))) ((eq_ref (fofType->Prop)) (g x1)))) as proof of (forall (P:((fofType->Prop)->Prop)), ((P (x0 (g x1)))->(P (f x1))))
% Found eq_ref00:=(eq_ref0 (g x1)):(((eq (fofType->Prop)) (g x1)) (g x1))
% Found (eq_ref0 (g x1)) as proof of (((eq (fofType->Prop)) (g x1)) (g x1))
% Found ((eq_ref (fofType->Prop)) (g x1)) as proof of (((eq (fofType->Prop)) (g x1)) (g x1))
% Found ((eq_ref (fofType->Prop)) (g x1)) as proof of (((eq (fofType->Prop)) (g x1)) (g x1))
% Found (x200 ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P (x0 (g x1)))->(P (f x1)))
% Found (x200 ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P (x0 (g x1)))->(P (f x1)))
% Found ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> ((x20 x3) P)) ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P (x0 (g x1)))->(P (f x1)))
% Found ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> (((x2 x1) x3) P)) ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P (x0 (g x1)))->(P (f x1)))
% Found ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> ((((x x1) x1) x3) P)) ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P (x0 (g x1)))->(P (f x1)))
% Found ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> ((((x x1) x1) x3) P)) ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P (x0 (g x1)))->(P (f x1)))
% Found (fun (P:((fofType->Prop)->Prop))=> ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> ((((x x1) x1) x3) P)) ((eq_ref (fofType->Prop)) (g x1)))) as proof of ((P (x0 (g x1)))->(P (f x1)))
% Found (fun (P:((fofType->Prop)->Prop))=> ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> ((((x x1) x1) x3) P)) ((eq_ref (fofType->Prop)) (g x1)))) as proof of (forall (P:((fofType->Prop)->Prop)), ((P (x0 (g x1)))->(P (f x1))))
% Found eq_ref00:=(eq_ref0 (g x1)):(((eq (fofType->Prop)) (g x1)) (g x1))
% Found (eq_ref0 (g x1)) as proof of (((eq (fofType->Prop)) (g x1)) (g x1))
% Found ((eq_ref (fofType->Prop)) (g x1)) as proof of (((eq (fofType->Prop)) (g x1)) (g x1))
% Found ((eq_ref (fofType->Prop)) (g x1)) as proof of (((eq (fofType->Prop)) (g x1)) (g x1))
% Found (x200 ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P (x0 (g x1)))->(P (f x1)))
% Found (x200 ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P (x0 (g x1)))->(P (f x1)))
% Found ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> ((x20 x3) P)) ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P (x0 (g x1)))->(P (f x1)))
% Found ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> (((x2 x1) x3) P)) ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P (x0 (g x1)))->(P (f x1)))
% Found ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> ((((x x1) x1) x3) P)) ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P (x0 (g x1)))->(P (f x1)))
% Found ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> ((((x x1) x1) x3) P)) ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P (x0 (g x1)))->(P (f x1)))
% Found (fun (P:((fofType->Prop)->Prop))=> ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> ((((x x1) x1) x3) P)) ((eq_ref (fofType->Prop)) (g x1)))) as proof of ((P (x0 (g x1)))->(P (f x1)))
% Found (fun (P:((fofType->Prop)->Prop))=> ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> ((((x x1) x1) x3) P)) ((eq_ref (fofType->Prop)) (g x1)))) as proof of (forall (P:((fofType->Prop)->Prop)), ((P (x0 (g x1)))->(P (f x1))))
% Found eq_ref00:=(eq_ref0 (g x1)):(((eq (fofType->Prop)) (g x1)) (g x1))
% Found (eq_ref0 (g x1)) as proof of (((eq (fofType->Prop)) (g x1)) (g x1))
% Found ((eq_ref (fofType->Prop)) (g x1)) as proof of (((eq (fofType->Prop)) (g x1)) (g x1))
% Found ((eq_ref (fofType->Prop)) (g x1)) as proof of (((eq (fofType->Prop)) (g x1)) (g x1))
% Found (x200 ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P (x0 (g x1)))->(P (f x1)))
% Found (x200 ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P (x0 (g x1)))->(P (f x1)))
% Found ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> ((x20 x3) (fun (x4:(fofType->Prop))=> (P (x0 (g x1)))))) ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P (x0 (g x1)))->(P (f x1)))
% Found ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> (((x2 x1) x3) (fun (x4:(fofType->Prop))=> (P (x0 (g x1)))))) ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P (x0 (g x1)))->(P (f x1)))
% Found ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> ((((x x1) x1) x3) (fun (x4:(fofType->Prop))=> (P (x0 (g x1)))))) ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P (x0 (g x1)))->(P (f x1)))
% Found ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> ((((x x1) x1) x3) (fun (x4:(fofType->Prop))=> (P (x0 (g x1)))))) ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P (x0 (g x1)))->(P (f x1)))
% Found (fun (P:((fofType->Prop)->Prop))=> ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> ((((x x1) x1) x3) (fun (x4:(fofType->Prop))=> (P (x0 (g x1)))))) ((eq_ref (fofType->Prop)) (g x1)))) as proof of ((P (x0 (g x1)))->(P (f x1)))
% Found (fun (P:((fofType->Prop)->Prop))=> ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> ((((x x1) x1) x3) (fun (x4:(fofType->Prop))=> (P (x0 (g x1)))))) ((eq_ref (fofType->Prop)) (g x1)))) as proof of (forall (P:((fofType->Prop)->Prop)), ((P (x0 (g x1)))->(P (f x1))))
% Found eq_ref00:=(eq_ref0 (g x1)):(((eq (fofType->Prop)) (g x1)) (g x1))
% Found (eq_ref0 (g x1)) as proof of (((eq (fofType->Prop)) (g x1)) (g x1))
% Found ((eq_ref (fofType->Prop)) (g x1)) as proof of (((eq (fofType->Prop)) (g x1)) (g x1))
% Found ((eq_ref (fofType->Prop)) (g x1)) as proof of (((eq (fofType->Prop)) (g x1)) (g x1))
% Found (x200 ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P (x0 (g x1)))->(P (f x1)))
% Found (x200 ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P (x0 (g x1)))->(P (f x1)))
% Found ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> ((x20 x3) (fun (x4:(fofType->Prop))=> (P (x0 (g x1)))))) ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P (x0 (g x1)))->(P (f x1)))
% Found ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> (((x2 x1) x3) (fun (x4:(fofType->Prop))=> (P (x0 (g x1)))))) ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P (x0 (g x1)))->(P (f x1)))
% Found ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> ((((x x1) x1) x3) (fun (x4:(fofType->Prop))=> (P (x0 (g x1)))))) ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P (x0 (g x1)))->(P (f x1)))
% Found ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> ((((x x1) x1) x3) (fun (x4:(fofType->Prop))=> (P (x0 (g x1)))))) ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P (x0 (g x1)))->(P (f x1)))
% Found (fun (P:((fofType->Prop)->Prop))=> ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> ((((x x1) x1) x3) (fun (x4:(fofType->Prop))=> (P (x0 (g x1)))))) ((eq_ref (fofType->Prop)) (g x1)))) as proof of ((P (x0 (g x1)))->(P (f x1)))
% Found (fun (P:((fofType->Prop)->Prop))=> ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> ((((x x1) x1) x3) (fun (x4:(fofType->Prop))=> (P (x0 (g x1)))))) ((eq_ref (fofType->Prop)) (g x1)))) as proof of (forall (P:((fofType->Prop)->Prop)), ((P (x0 (g x1)))->(P (f x1))))
% Found eq_ref00:=(eq_ref0 (g x1)):(((eq (fofType->Prop)) (g x1)) (g x1))
% Found (eq_ref0 (g x1)) as proof of (((eq (fofType->Prop)) (g x1)) (g x1))
% Found ((eq_ref (fofType->Prop)) (g x1)) as proof of (((eq (fofType->Prop)) (g x1)) (g x1))
% Found ((eq_ref (fofType->Prop)) (g x1)) as proof of (((eq (fofType->Prop)) (g x1)) (g x1))
% Found (x200 ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P (x0 (g x1)))->(P (f x1)))
% Found (x200 ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P (x0 (g x1)))->(P (f x1)))
% Found ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> ((x20 x3) P)) ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P (x0 (g x1)))->(P (f x1)))
% Found ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> (((x2 x1) x3) P)) ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P (x0 (g x1)))->(P (f x1)))
% Found ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> ((((x x1) x1) x3) P)) ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P (x0 (g x1)))->(P (f x1)))
% Found ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> ((((x x1) x1) x3) P)) ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P (x0 (g x1)))->(P (f x1)))
% Found (fun (P:((fofType->Prop)->Prop))=> ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> ((((x x1) x1) x3) P)) ((eq_ref (fofType->Prop)) (g x1)))) as proof of ((P (x0 (g x1)))->(P (f x1)))
% Found (fun (P:((fofType->Prop)->Prop))=> ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> ((((x x1) x1) x3) P)) ((eq_ref (fofType->Prop)) (g x1)))) as proof of (forall (P:((fofType->Prop)->Prop)), ((P (x0 (g x1)))->(P (f x1))))
% Found eq_ref00:=(eq_ref0 (g x1)):(((eq (fofType->Prop)) (g x1)) (g x1))
% Found (eq_ref0 (g x1)) as proof of (((eq (fofType->Prop)) (g x1)) (g x1))
% Found ((eq_ref (fofType->Prop)) (g x1)) as proof of (((eq (fofType->Prop)) (g x1)) (g x1))
% Found ((eq_ref (fofType->Prop)) (g x1)) as proof of (((eq (fofType->Prop)) (g x1)) (g x1))
% Found (x200 ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P (x0 (g x1)))->(P (f x1)))
% Found (x200 ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P (x0 (g x1)))->(P (f x1)))
% Found ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> ((x20 x3) (fun (x4:(fofType->Prop))=> (P (x0 (g x1)))))) ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P (x0 (g x1)))->(P (f x1)))
% Found ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> (((x2 x1) x3) (fun (x4:(fofType->Prop))=> (P (x0 (g x1)))))) ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P (x0 (g x1)))->(P (f x1)))
% Found ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> ((((x x1) x1) x3) (fun (x4:(fofType->Prop))=> (P (x0 (g x1)))))) ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P (x0 (g x1)))->(P (f x1)))
% Found ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> ((((x x1) x1) x3) (fun (x4:(fofType->Prop))=> (P (x0 (g x1)))))) ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P (x0 (g x1)))->(P (f x1)))
% Found (fun (P:((fofType->Prop)->Prop))=> ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> ((((x x1) x1) x3) (fun (x4:(fofType->Prop))=> (P (x0 (g x1)))))) ((eq_ref (fofType->Prop)) (g x1)))) as proof of ((P (x0 (g x1)))->(P (f x1)))
% Found eq_ref00:=(eq_ref0 (g x1)):(((eq (fofType->Prop)) (g x1)) (g x1))
% Found (eq_ref0 (g x1)) as proof of (((eq (fofType->Prop)) (g x1)) (g x1))
% Found ((eq_ref (fofType->Prop)) (g x1)) as proof of (((eq (fofType->Prop)) (g x1)) (g x1))
% Found ((eq_ref (fofType->Prop)) (g x1)) as proof of (((eq (fofType->Prop)) (g x1)) (g x1))
% Found (x200 ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P (x0 (g x1)))->(P (f x1)))
% Found (x200 ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P (x0 (g x1)))->(P (f x1)))
% Found ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> ((x20 x3) P)) ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P (x0 (g x1)))->(P (f x1)))
% Found ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> (((x2 x1) x3) P)) ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P (x0 (g x1)))->(P (f x1)))
% Found ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> ((((x x1) x1) x3) P)) ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P (x0 (g x1)))->(P (f x1)))
% Found ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> ((((x x1) x1) x3) P)) ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P (x0 (g x1)))->(P (f x1)))
% Found (fun (P:((fofType->Prop)->Prop))=> ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> ((((x x1) x1) x3) P)) ((eq_ref (fofType->Prop)) (g x1)))) as proof of ((P (x0 (g x1)))->(P (f x1)))
% Found eq_ref00:=(eq_ref0 (g x1)):(((eq (fofType->Prop)) (g x1)) (g x1))
% Found (eq_ref0 (g x1)) as proof of (((eq (fofType->Prop)) (g x1)) (g x1))
% Found ((eq_ref (fofType->Prop)) (g x1)) as proof of (((eq (fofType->Prop)) (g x1)) (g x1))
% Found ((eq_ref (fofType->Prop)) (g x1)) as proof of (((eq (fofType->Prop)) (g x1)) (g x1))
% Found (x200 ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P (x0 (g x1)))->(P (f x1)))
% Found (x200 ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P (x0 (g x1)))->(P (f x1)))
% Found ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> ((x20 x3) (fun (x4:(fofType->Prop))=> (P (x0 (g x1)))))) ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P (x0 (g x1)))->(P (f x1)))
% Found ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> (((x2 x1) x3) (fun (x4:(fofType->Prop))=> (P (x0 (g x1)))))) ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P (x0 (g x1)))->(P (f x1)))
% Found ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> ((((x x1) x1) x3) (fun (x4:(fofType->Prop))=> (P (x0 (g x1)))))) ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P (x0 (g x1)))->(P (f x1)))
% Found ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> ((((x x1) x1) x3) (fun (x4:(fofType->Prop))=> (P (x0 (g x1)))))) ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P (x0 (g x1)))->(P (f x1)))
% Found (fun (P:((fofType->Prop)->Prop))=> ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> ((((x x1) x1) x3) (fun (x4:(fofType->Prop))=> (P (x0 (g x1)))))) ((eq_ref (fofType->Prop)) (g x1)))) as proof of ((P (x0 (g x1)))->(P (f x1)))
% Found eq_ref00:=(eq_ref0 (g x1)):(((eq (fofType->Prop)) (g x1)) (g x1))
% Found (eq_ref0 (g x1)) as proof of (((eq (fofType->Prop)) (g x1)) (g x1))
% Found ((eq_ref (fofType->Prop)) (g x1)) as proof of (((eq (fofType->Prop)) (g x1)) (g x1))
% Found ((eq_ref (fofType->Prop)) (g x1)) as proof of (((eq (fofType->Prop)) (g x1)) (g x1))
% Found (x200 ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P (x0 (g x1)))->(P (f x1)))
% Found (x200 ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P (x0 (g x1)))->(P (f x1)))
% Found ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> ((x20 x3) P)) ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P (x0 (g x1)))->(P (f x1)))
% Found ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> (((x2 x1) x3) P)) ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P (x0 (g x1)))->(P (f x1)))
% Found ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> ((((x x1) x1) x3) P)) ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P (x0 (g x1)))->(P (f x1)))
% Found ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> ((((x x1) x1) x3) P)) ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P (x0 (g x1)))->(P (f x1)))
% Found (fun (P:((fofType->Prop)->Prop))=> ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> ((((x x1) x1) x3) P)) ((eq_ref (fofType->Prop)) (g x1)))) as proof of ((P (x0 (g x1)))->(P (f x1)))
% Found eq_ref00:=(eq_ref0 (g x1)):(((eq (fofType->Prop)) (g x1)) (g x1))
% Found (eq_ref0 (g x1)) as proof of (((eq (fofType->Prop)) (g x1)) (g x1))
% Found ((eq_ref (fofType->Prop)) (g x1)) as proof of (((eq (fofType->Prop)) (g x1)) (g x1))
% Found ((eq_ref (fofType->Prop)) (g x1)) as proof of (((eq (fofType->Prop)) (g x1)) (g x1))
% Found (x200 ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P (x0 (g x1)))->(P (f x1)))
% Found (x200 ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P (x0 (g x1)))->(P (f x1)))
% Found ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> ((x20 x3) P)) ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P (x0 (g x1)))->(P (f x1)))
% Found ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> (((x2 x1) x3) P)) ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P (x0 (g x1)))->(P (f x1)))
% Found ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> ((((x x1) x1) x3) P)) ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P (x0 (g x1)))->(P (f x1)))
% Found ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> ((((x x1) x1) x3) P)) ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P (x0 (g x1)))->(P (f x1)))
% Found (fun (P:((fofType->Prop)->Prop))=> ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> ((((x x1) x1) x3) P)) ((eq_ref (fofType->Prop)) (g x1)))) as proof of ((P (x0 (g x1)))->(P (f x1)))
% Found eq_ref00:=(eq_ref0 (g x1)):(((eq (fofType->Prop)) (g x1)) (g x1))
% Found (eq_ref0 (g x1)) as proof of (((eq (fofType->Prop)) (g x1)) (g x1))
% Found ((eq_ref (fofType->Prop)) (g x1)) as proof of (((eq (fofType->Prop)) (g x1)) (g x1))
% Found ((eq_ref (fofType->Prop)) (g x1)) as proof of (((eq (fofType->Prop)) (g x1)) (g x1))
% Found (x200 ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P (x0 (g x1)))->(P (f x1)))
% Found (x200 ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P (x0 (g x1)))->(P (f x1)))
% Found ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> ((x20 x3) (fun (x4:(fofType->Prop))=> (P (x0 (g x1)))))) ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P (x0 (g x1)))->(P (f x1)))
% Found ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> (((x2 x1) x3) (fun (x4:(fofType->Prop))=> (P (x0 (g x1)))))) ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P (x0 (g x1)))->(P (f x1)))
% Found ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> ((((x x1) x1) x3) (fun (x4:(fofType->Prop))=> (P (x0 (g x1)))))) ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P (x0 (g x1)))->(P (f x1)))
% Found ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> ((((x x1) x1) x3) (fun (x4:(fofType->Prop))=> (P (x0 (g x1)))))) ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P (x0 (g x1)))->(P (f x1)))
% Found (fun (P:((fofType->Prop)->Prop))=> ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> ((((x x1) x1) x3) (fun (x4:(fofType->Prop))=> (P (x0 (g x1)))))) ((eq_ref (fofType->Prop)) (g x1)))) as proof of ((P (x0 (g x1)))->(P (f x1)))
% Found eq_ref00:=(eq_ref0 (g x1)):(((eq (fofType->Prop)) (g x1)) (g x1))
% Found (eq_ref0 (g x1)) as proof of (((eq (fofType->Prop)) (g x1)) (g x1))
% Found ((eq_ref (fofType->Prop)) (g x1)) as proof of (((eq (fofType->Prop)) (g x1)) (g x1))
% Found ((eq_ref (fofType->Prop)) (g x1)) as proof of (((eq (fofType->Prop)) (g x1)) (g x1))
% Found (x200 ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P (x0 (g x1)))->(P (f x1)))
% Found (x200 ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P (x0 (g x1)))->(P (f x1)))
% Found ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> ((x20 x3) (fun (x4:(fofType->Prop))=> (P (x0 (g x1)))))) ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P (x0 (g x1)))->(P (f x1)))
% Found ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> (((x2 x1) x3) (fun (x4:(fofType->Prop))=> (P (x0 (g x1)))))) ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P (x0 (g x1)))->(P (f x1)))
% Found ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> ((((x x1) x1) x3) (fun (x4:(fofType->Prop))=> (P (x0 (g x1)))))) ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P (x0 (g x1)))->(P (f x1)))
% Found ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> ((((x x1) x1) x3) (fun (x4:(fofType->Prop))=> (P (x0 (g x1)))))) ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P (x0 (g x1)))->(P (f x1)))
% Found (fun (P:((fofType->Prop)->Prop))=> ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> ((((x x1) x1) x3) (fun (x4:(fofType->Prop))=> (P (x0 (g x1)))))) ((eq_ref (fofType->Prop)) (g x1)))) as proof of ((P (x0 (g x1)))->(P (f x1)))
% Found eq_ref00:=(eq_ref0 (g x1)):(((eq (fofType->Prop)) (g x1)) (g x1))
% Found (eq_ref0 (g x1)) as proof of (((eq (fofType->Prop)) (g x1)) (g x1))
% Found ((eq_ref (fofType->Prop)) (g x1)) as proof of (((eq (fofType->Prop)) (g x1)) (g x1))
% Found ((eq_ref (fofType->Prop)) (g x1)) as proof of (((eq (fofType->Prop)) (g x1)) (g x1))
% Found (x200 ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P (x0 (g x1)))->(P (f x1)))
% Found (x200 ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P (x0 (g x1)))->(P (f x1)))
% Found ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> ((x20 x3) P)) ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P (x0 (g x1)))->(P (f x1)))
% Found ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> (((x2 x1) x3) P)) ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P (x0 (g x1)))->(P (f x1)))
% Found ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> ((((x x1) x1) x3) P)) ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P (x0 (g x1)))->(P (f x1)))
% Found ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> ((((x x1) x1) x3) P)) ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P (x0 (g x1)))->(P (f x1)))
% Found (fun (P:((fofType->Prop)->Prop))=> ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> ((((x x1) x1) x3) P)) ((eq_ref (fofType->Prop)) (g x1)))) as proof of ((P (x0 (g x1)))->(P (f x1)))
% Found x1:(P (fun (Xx:fofType)=> (x0 (g Xx))))
% Instantiate: f0:=(fun (Xx:fofType)=> (x0 (g Xx))):(fofType->(fofType->Prop))
% Found x1 as proof of (P0 f0)
% Found eq_ref00:=(eq_ref0 ((f0 x2) y)):(((eq Prop) ((f0 x2) y)) ((f0 x2) y))
% Found (eq_ref0 ((f0 x2) y)) as proof of (((eq Prop) ((f0 x2) y)) ((f x2) y))
% Found ((eq_ref Prop) ((f0 x2) y)) as proof of (((eq Prop) ((f0 x2) y)) ((f x2) y))
% Found ((eq_ref Prop) ((f0 x2) y)) as proof of (((eq Prop) ((f0 x2) y)) ((f x2) y))
% Found (fun (y:fofType)=> ((eq_ref Prop) ((f0 x2) y))) as proof of (((eq Prop) ((f0 x2) y)) ((f x2) y))
% Found (fun (x2:fofType) (y:fofType)=> ((eq_ref Prop) ((f0 x2) y))) as proof of (forall (y:fofType), (((eq Prop) ((f0 x2) y)) ((f x2) y)))
% Found (fun (x2:fofType) (y:fofType)=> ((eq_ref Prop) ((f0 x2) y))) as proof of (forall (x:fofType) (y:fofType), (((eq Prop) ((f0 x) y)) ((f x) y)))
% Found eq_ref00:=(eq_ref0 b):(((eq (fofType->(fofType->Prop))) b) b)
% Found (eq_ref0 b) as proof of (((eq (fofType->(fofType->Prop))) b) f)
% Found ((eq_ref (fofType->(fofType->Prop))) b) as proof of (((eq (fofType->(fofType->Prop))) b) f)
% Found ((eq_ref (fofType->(fofType->Prop))) b) as proof of (((eq (fofType->(fofType->Prop))) b) f)
% Found ((eq_ref (fofType->(fofType->Prop))) b) as proof of (((eq (fofType->(fofType->Prop))) b) f)
% Found eta_expansion000:=(eta_expansion00 (fun (Xx:fofType)=> (x0 (g Xx)))):(((eq (fofType->(fofType->Prop))) (fun (Xx:fofType)=> (x0 (g Xx)))) (fun (x:fofType)=> (x0 (g x))))
% Found (eta_expansion00 (fun (Xx:fofType)=> (x0 (g Xx)))) as proof of (((eq (fofType->(fofType->Prop))) (fun (Xx:fofType)=> (x0 (g Xx)))) b)
% Found ((eta_expansion0 (fofType->Prop)) (fun (Xx:fofType)=> (x0 (g Xx)))) as proof of (((eq (fofType->(fofType->Prop))) (fun (Xx:fofType)=> (x0 (g Xx)))) b)
% Found (((eta_expansion fofType) (fofType->Prop)) (fun (Xx:fofType)=> (x0 (g Xx)))) as proof of (((eq (fofType->(fofType->Prop))) (fun (Xx:fofType)=> (x0 (g Xx)))) b)
% Found (((eta_expansion fofType) (fofType->Prop)) (fun (Xx:fofType)=> (x0 (g Xx)))) as proof of (((eq (fofType->(fofType->Prop))) (fun (Xx:fofType)=> (x0 (g Xx)))) b)
% Found (((eta_expansion fofType) (fofType->Prop)) (fun (Xx:fofType)=> (x0 (g Xx)))) as proof of (((eq (fofType->(fofType->Prop))) (fun (Xx:fofType)=> (x0 (g Xx)))) b)
% Found eta_expansion0000:=(eta_expansion000 P):((P (fun (Xx:fofType)=> (x0 (g Xx))))->(P (fun (x:fofType)=> (x0 (g x)))))
% Found (eta_expansion000 P) as proof of (P0 (fun (Xx:fofType)=> (x0 (g Xx))))
% Found ((eta_expansion00 (fun (Xx:fofType)=> (x0 (g Xx)))) P) as proof of (P0 (fun (Xx:fofType)=> (x0 (g Xx))))
% Found (((eta_expansion0 (fofType->Prop)) (fun (Xx:fofType)=> (x0 (g Xx)))) P) as proof of (P0 (fun (Xx:fofType)=> (x0 (g Xx))))
% Found ((((eta_expansion fofType) (fofType->Prop)) (fun (Xx:fofType)=> (x0 (g Xx)))) P) as proof of (P0 (fun (Xx:fofType)=> (x0 (g Xx))))
% Found ((((eta_expansion fofType) (fofType->Prop)) (fun (Xx:fofType)=> (x0 (g Xx)))) P) as proof of (P0 (fun (Xx:fofType)=> (x0 (g Xx))))
% Found eq_ref00:=(eq_ref0 b):(((eq (fofType->(fofType->Prop))) b) b)
% Found (eq_ref0 b) as proof of (((eq (fofType->(fofType->Prop))) b) f)
% Found ((eq_ref (fofType->(fofType->Prop))) b) as proof of (((eq (fofType->(fofType->Prop))) b) f)
% Found ((eq_ref (fofType->(fofType->Prop))) b) as proof of (((eq (fofType->(fofType->Prop))) b) f)
% Found ((eq_ref (fofType->(fofType->Prop))) b) as proof of (((eq (fofType->(fofType->Prop))) b) f)
% Found eta_expansion000:=(eta_expansion00 (fun (Xx:fofType)=> (x0 (g Xx)))):(((eq (fofType->(fofType->Prop))) (fun (Xx:fofType)=> (x0 (g Xx)))) (fun (x:fofType)=> (x0 (g x))))
% Found (eta_expansion00 (fun (Xx:fofType)=> (x0 (g Xx)))) as proof of (((eq (fofType->(fofType->Prop))) (fun (Xx:fofType)=> (x0 (g Xx)))) b)
% Found ((eta_expansion0 (fofType->Prop)) (fun (Xx:fofType)=> (x0 (g Xx)))) as proof of (((eq (fofType->(fofType->Prop))) (fun (Xx:fofType)=> (x0 (g Xx)))) b)
% Found (((eta_expansion fofType) (fofType->Prop)) (fun (Xx:fofType)=> (x0 (g Xx)))) as proof of (((eq (fofType->(fofType->Prop))) (fun (Xx:fofType)=> (x0 (g Xx)))) b)
% Found (((eta_expansion fofType) (fofType->Prop)) (fun (Xx:fofType)=> (x0 (g Xx)))) as proof of (((eq (fofType->(fofType->Prop))) (fun (Xx:fofType)=> (x0 (g Xx)))) b)
% Found (((eta_expansion fofType) (fofType->Prop)) (fun (Xx:fofType)=> (x0 (g Xx)))) as proof of (((eq (fofType->(fofType->Prop))) (fun (Xx:fofType)=> (x0 (g Xx)))) b)
% Found eq_ref00:=(eq_ref0 ((f0 x2) y)):(((eq Prop) ((f0 x2) y)) ((f0 x2) y))
% Found (eq_ref0 ((f0 x2) y)) as proof of (((eq Prop) ((f0 x2) y)) ((f x2) y))
% Found ((eq_ref Prop) ((f0 x2) y)) as proof of (((eq Prop) ((f0 x2) y)) ((f x2) y))
% Found ((eq_ref Prop) ((f0 x2) y)) as proof of (((eq Prop) ((f0 x2) y)) ((f x2) y))
% Found (fun (y:fofType)=> ((eq_ref Prop) ((f0 x2) y))) as proof of (((eq Prop) ((f0 x2) y)) ((f x2) y))
% Found eq_ref00:=(eq_ref0 (x0 (g x1))):(((eq (fofType->Prop)) (x0 (g x1))) (x0 (g x1)))
% Found (eq_ref0 (x0 (g x1))) as proof of (forall (P:((fofType->Prop)->Prop)), ((P (x0 (g x1)))->(P (b x1))))
% Found ((eq_ref (fofType->Prop)) (x0 (g x1))) as proof of (forall (P:((fofType->Prop)->Prop)), ((P (x0 (g x1)))->(P (b x1))))
% Found ((eq_ref (fofType->Prop)) (x0 (g x1))) as proof of (forall (P:((fofType->Prop)->Prop)), ((P (x0 (g x1)))->(P (b x1))))
% Found ((eq_ref (fofType->Prop)) (x0 (g x1))) as proof of (forall (P:((fofType->Prop)->Prop)), ((P (x0 (g x1)))->(P (b x1))))
% Found eq_ref00:=(eq_ref0 (x0 (g x1))):(((eq (fofType->Prop)) (x0 (g x1))) (x0 (g x1)))
% Found (eq_ref0 (x0 (g x1))) as proof of (forall (P:((fofType->Prop)->Prop)), ((P (x0 (g x1)))->(P (b x1))))
% Found ((eq_ref (fofType->Prop)) (x0 (g x1))) as proof of (forall (P:((fofType->Prop)->Prop)), ((P (x0 (g x1)))->(P (b x1))))
% Found ((eq_ref (fofType->Prop)) (x0 (g x1))) as proof of (forall (P:((fofType->Prop)->Prop)), ((P (x0 (g x1)))->(P (b x1))))
% Found ((eq_ref (fofType->Prop)) (x0 (g x1))) as proof of (forall (P:((fofType->Prop)->Prop)), ((P (x0 (g x1)))->(P (b x1))))
% Found eq_ref00:=(eq_ref0 (x0 (g x1))):(((eq (fofType->Prop)) (x0 (g x1))) (x0 (g x1)))
% Found (eq_ref0 (x0 (g x1))) as proof of (((eq (fofType->Prop)) (x0 (g x1))) (b x1))
% Found ((eq_ref (fofType->Prop)) (x0 (g x1))) as proof of (((eq (fofType->Prop)) (x0 (g x1))) (b x1))
% Found ((eq_ref (fofType->Prop)) (x0 (g x1))) as proof of (((eq (fofType->Prop)) (x0 (g x1))) (b x1))
% Found eq_ref00:=(eq_ref0 (x0 (g x1))):(((eq (fofType->Prop)) (x0 (g x1))) (x0 (g x1)))
% Found (eq_ref0 (x0 (g x1))) as proof of (((eq (fofType->Prop)) (x0 (g x1))) (b x1))
% Found ((eq_ref (fofType->Prop)) (x0 (g x1))) as proof of (((eq (fofType->Prop)) (x0 (g x1))) (b x1))
% Found ((eq_ref (fofType->Prop)) (x0 (g x1))) as proof of (((eq (fofType->Prop)) (x0 (g x1))) (b x1))
% Found eq_ref00:=(eq_ref0 (x0 (g x1))):(((eq (fofType->Prop)) (x0 (g x1))) (x0 (g x1)))
% Found (eq_ref0 (x0 (g x1))) as proof of (((eq (fofType->Prop)) (x0 (g x1))) (b x1))
% Found ((eq_ref (fofType->Prop)) (x0 (g x1))) as proof of (((eq (fofType->Prop)) (x0 (g x1))) (b x1))
% Found ((eq_ref (fofType->Prop)) (x0 (g x1))) as proof of (((eq (fofType->Prop)) (x0 (g x1))) (b x1))
% Found eq_ref00:=(eq_ref0 (x0 (g x1))):(((eq (fofType->Prop)) (x0 (g x1))) (x0 (g x1)))
% Found (eq_ref0 (x0 (g x1))) as proof of (((eq (fofType->Prop)) (x0 (g x1))) (b x1))
% Found ((eq_ref (fofType->Prop)) (x0 (g x1))) as proof of (((eq (fofType->Prop)) (x0 (g x1))) (b x1))
% Found ((eq_ref (fofType->Prop)) (x0 (g x1))) as proof of (((eq (fofType->Prop)) (x0 (g x1))) (b x1))
% Found eq_ref00:=(eq_ref0 (g x1)):(((eq (fofType->Prop)) (g x1)) (g x1))
% Found (eq_ref0 (g x1)) as proof of (((eq (fofType->Prop)) (g x1)) (g x1))
% Found ((eq_ref (fofType->Prop)) (g x1)) as proof of (((eq (fofType->Prop)) (g x1)) (g x1))
% Found ((eq_ref (fofType->Prop)) (g x1)) as proof of (((eq (fofType->Prop)) (g x1)) (g x1))
% Found (x200 ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P ((x0 (g x1)) y))->(P ((f x1) y)))
% Found (x200 ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P ((x0 (g x1)) y))->(P ((f x1) y)))
% Found ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> ((x20 x3) (fun (x4:(fofType->Prop))=> (P (x4 y))))) ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P ((x0 (g x1)) y))->(P ((f x1) y)))
% Found ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> (((x2 x1) x3) (fun (x4:(fofType->Prop))=> (P (x4 y))))) ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P ((x0 (g x1)) y))->(P ((f x1) y)))
% Found ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> ((((x x1) x1) x3) (fun (x4:(fofType->Prop))=> (P (x4 y))))) ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P ((x0 (g x1)) y))->(P ((f x1) y)))
% Found ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> ((((x x1) x1) x3) (fun (x4:(fofType->Prop))=> (P (x4 y))))) ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P ((x0 (g x1)) y))->(P ((f x1) y)))
% Found (fun (P:(Prop->Prop))=> ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> ((((x x1) x1) x3) (fun (x4:(fofType->Prop))=> (P (x4 y))))) ((eq_ref (fofType->Prop)) (g x1)))) as proof of ((P ((x0 (g x1)) y))->(P ((f x1) y)))
% Found (fun (P:(Prop->Prop))=> ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> ((((x x1) x1) x3) (fun (x4:(fofType->Prop))=> (P (x4 y))))) ((eq_ref (fofType->Prop)) (g x1)))) as proof of (forall (P:(Prop->Prop)), ((P ((x0 (g x1)) y))->(P ((f x1) y))))
% Found (fun (y:fofType) (P:(Prop->Prop))=> ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> ((((x x1) x1) x3) (fun (x4:(fofType->Prop))=> (P (x4 y))))) ((eq_ref (fofType->Prop)) (g x1)))) as proof of (((eq Prop) ((x0 (g x1)) y)) ((f x1) y))
% Found eq_ref00:=(eq_ref0 (g x1)):(((eq (fofType->Prop)) (g x1)) (g x1))
% Found (eq_ref0 (g x1)) as proof of (((eq (fofType->Prop)) (g x1)) (g x1))
% Found ((eq_ref (fofType->Prop)) (g x1)) as proof of (((eq (fofType->Prop)) (g x1)) (g x1))
% Found ((eq_ref (fofType->Prop)) (g x1)) as proof of (((eq (fofType->Prop)) (g x1)) (g x1))
% Found (x200 ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P ((x0 (g x1)) y))->(P ((f x1) y)))
% Found (x200 ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P ((x0 (g x1)) y))->(P ((f x1) y)))
% Found ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> ((x20 x3) (fun (x4:(fofType->Prop))=> (P ((x0 (g x1)) y))))) ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P ((x0 (g x1)) y))->(P ((f x1) y)))
% Found ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> (((x2 x1) x3) (fun (x4:(fofType->Prop))=> (P ((x0 (g x1)) y))))) ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P ((x0 (g x1)) y))->(P ((f x1) y)))
% Found ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> ((((x x1) x1) x3) (fun (x4:(fofType->Prop))=> (P ((x0 (g x1)) y))))) ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P ((x0 (g x1)) y))->(P ((f x1) y)))
% Found ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> ((((x x1) x1) x3) (fun (x4:(fofType->Prop))=> (P ((x0 (g x1)) y))))) ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P ((x0 (g x1)) y))->(P ((f x1) y)))
% Found (fun (P:(Prop->Prop))=> ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> ((((x x1) x1) x3) (fun (x4:(fofType->Prop))=> (P ((x0 (g x1)) y))))) ((eq_ref (fofType->Prop)) (g x1)))) as proof of ((P ((x0 (g x1)) y))->(P ((f x1) y)))
% Found (fun (P:(Prop->Prop))=> ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> ((((x x1) x1) x3) (fun (x4:(fofType->Prop))=> (P ((x0 (g x1)) y))))) ((eq_ref (fofType->Prop)) (g x1)))) as proof of (forall (P:(Prop->Prop)), ((P ((x0 (g x1)) y))->(P ((f x1) y))))
% Found (fun (y:fofType) (P:(Prop->Prop))=> ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> ((((x x1) x1) x3) (fun (x4:(fofType->Prop))=> (P ((x0 (g x1)) y))))) ((eq_ref (fofType->Prop)) (g x1)))) as proof of (((eq Prop) ((x0 (g x1)) y)) ((f x1) y))
% Found eq_ref00:=(eq_ref0 (g x1)):(((eq (fofType->Prop)) (g x1)) (g x1))
% Found (eq_ref0 (g x1)) as proof of (((eq (fofType->Prop)) (g x1)) (g x1))
% Found ((eq_ref (fofType->Prop)) (g x1)) as proof of (((eq (fofType->Prop)) (g x1)) (g x1))
% Found ((eq_ref (fofType->Prop)) (g x1)) as proof of (((eq (fofType->Prop)) (g x1)) (g x1))
% Found (x200 ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P ((x0 (g x1)) y))->(P ((f x1) y)))
% Found (x200 ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P ((x0 (g x1)) y))->(P ((f x1) y)))
% Found ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> ((x20 x3) (fun (x4:(fofType->Prop))=> (P ((x0 (g x1)) y))))) ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P ((x0 (g x1)) y))->(P ((f x1) y)))
% Found ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> (((x2 x1) x3) (fun (x4:(fofType->Prop))=> (P ((x0 (g x1)) y))))) ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P ((x0 (g x1)) y))->(P ((f x1) y)))
% Found ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> ((((x x1) x1) x3) (fun (x4:(fofType->Prop))=> (P ((x0 (g x1)) y))))) ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P ((x0 (g x1)) y))->(P ((f x1) y)))
% Found ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> ((((x x1) x1) x3) (fun (x4:(fofType->Prop))=> (P ((x0 (g x1)) y))))) ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P ((x0 (g x1)) y))->(P ((f x1) y)))
% Found (fun (P:(Prop->Prop))=> ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> ((((x x1) x1) x3) (fun (x4:(fofType->Prop))=> (P ((x0 (g x1)) y))))) ((eq_ref (fofType->Prop)) (g x1)))) as proof of ((P ((x0 (g x1)) y))->(P ((f x1) y)))
% Found (fun (P:(Prop->Prop))=> ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> ((((x x1) x1) x3) (fun (x4:(fofType->Prop))=> (P ((x0 (g x1)) y))))) ((eq_ref (fofType->Prop)) (g x1)))) as proof of (forall (P:(Prop->Prop)), ((P ((x0 (g x1)) y))->(P ((f x1) y))))
% Found (fun (y:fofType) (P:(Prop->Prop))=> ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> ((((x x1) x1) x3) (fun (x4:(fofType->Prop))=> (P ((x0 (g x1)) y))))) ((eq_ref (fofType->Prop)) (g x1)))) as proof of (((eq Prop) ((x0 (g x1)) y)) ((f x1) y))
% Found eq_ref00:=(eq_ref0 (g x1)):(((eq (fofType->Prop)) (g x1)) (g x1))
% Found (eq_ref0 (g x1)) as proof of (((eq (fofType->Prop)) (g x1)) (g x1))
% Found ((eq_ref (fofType->Prop)) (g x1)) as proof of (((eq (fofType->Prop)) (g x1)) (g x1))
% Found ((eq_ref (fofType->Prop)) (g x1)) as proof of (((eq (fofType->Prop)) (g x1)) (g x1))
% Found (x200 ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P ((x0 (g x1)) y))->(P ((f x1) y)))
% Found (x200 ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P ((x0 (g x1)) y))->(P ((f x1) y)))
% Found ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> ((x20 x3) (fun (x4:(fofType->Prop))=> (P (x4 y))))) ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P ((x0 (g x1)) y))->(P ((f x1) y)))
% Found ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> (((x2 x1) x3) (fun (x4:(fofType->Prop))=> (P (x4 y))))) ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P ((x0 (g x1)) y))->(P ((f x1) y)))
% Found ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> ((((x x1) x1) x3) (fun (x4:(fofType->Prop))=> (P (x4 y))))) ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P ((x0 (g x1)) y))->(P ((f x1) y)))
% Found ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> ((((x x1) x1) x3) (fun (x4:(fofType->Prop))=> (P (x4 y))))) ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P ((x0 (g x1)) y))->(P ((f x1) y)))
% Found (fun (P:(Prop->Prop))=> ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> ((((x x1) x1) x3) (fun (x4:(fofType->Prop))=> (P (x4 y))))) ((eq_ref (fofType->Prop)) (g x1)))) as proof of ((P ((x0 (g x1)) y))->(P ((f x1) y)))
% Found (fun (P:(Prop->Prop))=> ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> ((((x x1) x1) x3) (fun (x4:(fofType->Prop))=> (P (x4 y))))) ((eq_ref (fofType->Prop)) (g x1)))) as proof of (forall (P:(Prop->Prop)), ((P ((x0 (g x1)) y))->(P ((f x1) y))))
% Found (fun (y:fofType) (P:(Prop->Prop))=> ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> ((((x x1) x1) x3) (fun (x4:(fofType->Prop))=> (P (x4 y))))) ((eq_ref (fofType->Prop)) (g x1)))) as proof of (((eq Prop) ((x0 (g x1)) y)) ((f x1) y))
% Found eq_ref00:=(eq_ref0 (g x1)):(((eq (fofType->Prop)) (g x1)) (g x1))
% Found (eq_ref0 (g x1)) as proof of (((eq (fofType->Prop)) (g x1)) (g x1))
% Found ((eq_ref (fofType->Prop)) (g x1)) as proof of (((eq (fofType->Prop)) (g x1)) (g x1))
% Found ((eq_ref (fofType->Prop)) (g x1)) as proof of (((eq (fofType->Prop)) (g x1)) (g x1))
% Found (x200 ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P ((x0 (g x1)) y))->(P ((f x1) y)))
% Found (x200 ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P ((x0 (g x1)) y))->(P ((f x1) y)))
% Found ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> ((x20 x3) (fun (x4:(fofType->Prop))=> (P ((x0 (g x1)) y))))) ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P ((x0 (g x1)) y))->(P ((f x1) y)))
% Found ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> (((x2 x1) x3) (fun (x4:(fofType->Prop))=> (P ((x0 (g x1)) y))))) ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P ((x0 (g x1)) y))->(P ((f x1) y)))
% Found ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> ((((x x1) x1) x3) (fun (x4:(fofType->Prop))=> (P ((x0 (g x1)) y))))) ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P ((x0 (g x1)) y))->(P ((f x1) y)))
% Found ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> ((((x x1) x1) x3) (fun (x4:(fofType->Prop))=> (P ((x0 (g x1)) y))))) ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P ((x0 (g x1)) y))->(P ((f x1) y)))
% Found (fun (P:(Prop->Prop))=> ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> ((((x x1) x1) x3) (fun (x4:(fofType->Prop))=> (P ((x0 (g x1)) y))))) ((eq_ref (fofType->Prop)) (g x1)))) as proof of ((P ((x0 (g x1)) y))->(P ((f x1) y)))
% Found (fun (y:fofType) (P:(Prop->Prop))=> ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> ((((x x1) x1) x3) (fun (x4:(fofType->Prop))=> (P ((x0 (g x1)) y))))) ((eq_ref (fofType->Prop)) (g x1)))) as proof of (((eq Prop) ((x0 (g x1)) y)) ((f x1) y))
% Found eq_ref00:=(eq_ref0 (g x1)):(((eq (fofType->Prop)) (g x1)) (g x1))
% Found (eq_ref0 (g x1)) as proof of (((eq (fofType->Prop)) (g x1)) (g x1))
% Found ((eq_ref (fofType->Prop)) (g x1)) as proof of (((eq (fofType->Prop)) (g x1)) (g x1))
% Found ((eq_ref (fofType->Prop)) (g x1)) as proof of (((eq (fofType->Prop)) (g x1)) (g x1))
% Found (x200 ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P ((x0 (g x1)) y))->(P ((f x1) y)))
% Found (x200 ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P ((x0 (g x1)) y))->(P ((f x1) y)))
% Found ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> ((x20 x3) (fun (x4:(fofType->Prop))=> (P (x4 y))))) ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P ((x0 (g x1)) y))->(P ((f x1) y)))
% Found ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> (((x2 x1) x3) (fun (x4:(fofType->Prop))=> (P (x4 y))))) ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P ((x0 (g x1)) y))->(P ((f x1) y)))
% Found ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> ((((x x1) x1) x3) (fun (x4:(fofType->Prop))=> (P (x4 y))))) ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P ((x0 (g x1)) y))->(P ((f x1) y)))
% Found ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> ((((x x1) x1) x3) (fun (x4:(fofType->Prop))=> (P (x4 y))))) ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P ((x0 (g x1)) y))->(P ((f x1) y)))
% Found (fun (P:(Prop->Prop))=> ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> ((((x x1) x1) x3) (fun (x4:(fofType->Prop))=> (P (x4 y))))) ((eq_ref (fofType->Prop)) (g x1)))) as proof of ((P ((x0 (g x1)) y))->(P ((f x1) y)))
% Found (fun (y:fofType) (P:(Prop->Prop))=> ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> ((((x x1) x1) x3) (fun (x4:(fofType->Prop))=> (P (x4 y))))) ((eq_ref (fofType->Prop)) (g x1)))) as proof of (((eq Prop) ((x0 (g x1)) y)) ((f x1) y))
% Found eq_ref00:=(eq_ref0 (g x1)):(((eq (fofType->Prop)) (g x1)) (g x1))
% Found (eq_ref0 (g x1)) as proof of (((eq (fofType->Prop)) (g x1)) (g x1))
% Found ((eq_ref (fofType->Prop)) (g x1)) as proof of (((eq (fofType->Prop)) (g x1)) (g x1))
% Found ((eq_ref (fofType->Prop)) (g x1)) as proof of (((eq (fofType->Prop)) (g x1)) (g x1))
% Found (x200 ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P ((x0 (g x1)) y))->(P ((f x1) y)))
% Found (x200 ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P ((x0 (g x1)) y))->(P ((f x1) y)))
% Found ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> ((x20 x3) (fun (x4:(fofType->Prop))=> (P ((x0 (g x1)) y))))) ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P ((x0 (g x1)) y))->(P ((f x1) y)))
% Found ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> (((x2 x1) x3) (fun (x4:(fofType->Prop))=> (P ((x0 (g x1)) y))))) ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P ((x0 (g x1)) y))->(P ((f x1) y)))
% Found ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> ((((x x1) x1) x3) (fun (x4:(fofType->Prop))=> (P ((x0 (g x1)) y))))) ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P ((x0 (g x1)) y))->(P ((f x1) y)))
% Found ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> ((((x x1) x1) x3) (fun (x4:(fofType->Prop))=> (P ((x0 (g x1)) y))))) ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P ((x0 (g x1)) y))->(P ((f x1) y)))
% Found (fun (P:(Prop->Prop))=> ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> ((((x x1) x1) x3) (fun (x4:(fofType->Prop))=> (P ((x0 (g x1)) y))))) ((eq_ref (fofType->Prop)) (g x1)))) as proof of ((P ((x0 (g x1)) y))->(P ((f x1) y)))
% Found (fun (y:fofType) (P:(Prop->Prop))=> ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> ((((x x1) x1) x3) (fun (x4:(fofType->Prop))=> (P ((x0 (g x1)) y))))) ((eq_ref (fofType->Prop)) (g x1)))) as proof of (((eq Prop) ((x0 (g x1)) y)) ((f x1) y))
% Found eq_ref00:=(eq_ref0 (g x1)):(((eq (fofType->Prop)) (g x1)) (g x1))
% Found (eq_ref0 (g x1)) as proof of (((eq (fofType->Prop)) (g x1)) (g x1))
% Found ((eq_ref (fofType->Prop)) (g x1)) as proof of (((eq (fofType->Prop)) (g x1)) (g x1))
% Found ((eq_ref (fofType->Prop)) (g x1)) as proof of (((eq (fofType->Prop)) (g x1)) (g x1))
% Found (x200 ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P ((x0 (g x1)) y))->(P ((f x1) y)))
% Found (x200 ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P ((x0 (g x1)) y))->(P ((f x1) y)))
% Found ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> ((x20 x3) (fun (x4:(fofType->Prop))=> (P (x4 y))))) ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P ((x0 (g x1)) y))->(P ((f x1) y)))
% Found ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> (((x2 x1) x3) (fun (x4:(fofType->Prop))=> (P (x4 y))))) ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P ((x0 (g x1)) y))->(P ((f x1) y)))
% Found ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> ((((x x1) x1) x3) (fun (x4:(fofType->Prop))=> (P (x4 y))))) ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P ((x0 (g x1)) y))->(P ((f x1) y)))
% Found ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> ((((x x1) x1) x3) (fun (x4:(fofType->Prop))=> (P (x4 y))))) ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P ((x0 (g x1)) y))->(P ((f x1) y)))
% Found (fun (P:(Prop->Prop))=> ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> ((((x x1) x1) x3) (fun (x4:(fofType->Prop))=> (P (x4 y))))) ((eq_ref (fofType->Prop)) (g x1)))) as proof of ((P ((x0 (g x1)) y))->(P ((f x1) y)))
% Found (fun (y:fofType) (P:(Prop->Prop))=> ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> ((((x x1) x1) x3) (fun (x4:(fofType->Prop))=> (P (x4 y))))) ((eq_ref (fofType->Prop)) (g x1)))) as proof of (((eq Prop) ((x0 (g x1)) y)) ((f x1) y))
% Found eq_ref000:=(eq_ref00 P1):((P1 ((f0 x2) y))->(P1 ((f0 x2) y)))
% Found (eq_ref00 P1) as proof of ((P1 ((f0 x2) y))->(P1 ((f x2) y)))
% Found ((eq_ref0 ((f0 x2) y)) P1) as proof of ((P1 ((f0 x2) y))->(P1 ((f x2) y)))
% Found (((eq_ref Prop) ((f0 x2) y)) P1) as proof of ((P1 ((f0 x2) y))->(P1 ((f x2) y)))
% Found (((eq_ref Prop) ((f0 x2) y)) P1) as proof of ((P1 ((f0 x2) y))->(P1 ((f x2) y)))
% Found (fun (P1:(Prop->Prop))=> (((eq_ref Prop) ((f0 x2) y)) P1)) as proof of ((P1 ((f0 x2) y))->(P1 ((f x2) y)))
% Found (fun (y:fofType) (P1:(Prop->Prop))=> (((eq_ref Prop) ((f0 x2) y)) P1)) as proof of (((eq Prop) ((f0 x2) y)) ((f x2) y))
% Found eq_ref00:=(eq_ref0 (g x1)):(((eq (fofType->Prop)) (g x1)) (g x1))
% Found (eq_ref0 (g x1)) as proof of (((eq (fofType->Prop)) (g x1)) (g x1))
% Found ((eq_ref (fofType->Prop)) (g x1)) as proof of (((eq (fofType->Prop)) (g x1)) (g x1))
% Found ((eq_ref (fofType->Prop)) (g x1)) as proof of (((eq (fofType->Prop)) (g x1)) (g x1))
% Found (x200 ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P (x0 (g x1)))->(P (f x1)))
% Found (x200 ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P (x0 (g x1)))->(P (f x1)))
% Found ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> ((x20 x3) P)) ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P (x0 (g x1)))->(P (f x1)))
% Found ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> (((x2 x1) x3) P)) ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P (x0 (g x1)))->(P (f x1)))
% Found ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> ((((fun (Xx:fofType)=> ((x Xx) x1)) x1) x3) P)) ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P (x0 (g x1)))->(P (f x1)))
% Found ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> ((((fun (Xx:fofType)=> ((x Xx) x1)) x1) x3) P)) ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P (x0 (g x1)))->(P (f x1)))
% Found (fun (P:((fofType->Prop)->Prop))=> ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> ((((fun (Xx:fofType)=> ((x Xx) x1)) x1) x3) P)) ((eq_ref (fofType->Prop)) (g x1)))) as proof of ((P (x0 (g x1)))->(P (f x1)))
% Found (fun (P:((fofType->Prop)->Prop))=> ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> ((((fun (Xx:fofType)=> ((x Xx) x1)) x1) x3) P)) ((eq_ref (fofType->Prop)) (g x1)))) as proof of (forall (P:((fofType->Prop)->Prop)), ((P (x0 (g x1)))->(P (f x1))))
% Found eq_ref00:=(eq_ref0 (g x1)):(((eq (fofType->Prop)) (g x1)) (g x1))
% Found (eq_ref0 (g x1)) as proof of (((eq (fofType->Prop)) (g x1)) (g x1))
% Found ((eq_ref (fofType->Prop)) (g x1)) as proof of (((eq (fofType->Prop)) (g x1)) (g x1))
% Found ((eq_ref (fofType->Prop)) (g x1)) as proof of (((eq (fofType->Prop)) (g x1)) (g x1))
% Found (x200 ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P (x0 (g x1)))->(P (f x1)))
% Found (x200 ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P (x0 (g x1)))->(P (f x1)))
% Found ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> ((x20 x3) (fun (x4:(fofType->Prop))=> (P (x0 (g x1)))))) ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P (x0 (g x1)))->(P (f x1)))
% Found ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> (((x2 x1) x3) (fun (x4:(fofType->Prop))=> (P (x0 (g x1)))))) ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P (x0 (g x1)))->(P (f x1)))
% Found ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> ((((fun (Xx:fofType)=> ((x Xx) x1)) x1) x3) (fun (x4:(fofType->Prop))=> (P (x0 (g x1)))))) ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P (x0 (g x1)))->(P (f x1)))
% Found ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> ((((fun (Xx:fofType)=> ((x Xx) x1)) x1) x3) (fun (x4:(fofType->Prop))=> (P (x0 (g x1)))))) ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P (x0 (g x1)))->(P (f x1)))
% Found (fun (P:((fofType->Prop)->Prop))=> ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> ((((fun (Xx:fofType)=> ((x Xx) x1)) x1) x3) (fun (x4:(fofType->Prop))=> (P (x0 (g x1)))))) ((eq_ref (fofType->Prop)) (g x1)))) as proof of ((P (x0 (g x1)))->(P (f x1)))
% Found (fun (P:((fofType->Prop)->Prop))=> ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> ((((fun (Xx:fofType)=> ((x Xx) x1)) x1) x3) (fun (x4:(fofType->Prop))=> (P (x0 (g x1)))))) ((eq_ref (fofType->Prop)) (g x1)))) as proof of (forall (P:((fofType->Prop)->Prop)), ((P (x0 (g x1)))->(P (f x1))))
% Found eq_ref00:=(eq_ref0 (g x1)):(((eq (fofType->Prop)) (g x1)) (g x1))
% Found (eq_ref0 (g x1)) as proof of (((eq (fofType->Prop)) (g x1)) (g x1))
% Found ((eq_ref (fofType->Prop)) (g x1)) as proof of (((eq (fofType->Prop)) (g x1)) (g x1))
% Found ((eq_ref (fofType->Prop)) (g x1)) as proof of (((eq (fofType->Prop)) (g x1)) (g x1))
% Found (x200 ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P (x0 (g x1)))->(P (f x1)))
% Found (x200 ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P (x0 (g x1)))->(P (f x1)))
% Found ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> ((x20 x3) (fun (x4:(fofType->Prop))=> (P (x0 (g x1)))))) ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P (x0 (g x1)))->(P (f x1)))
% Found ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> (((x2 x1) x3) (fun (x4:(fofType->Prop))=> (P (x0 (g x1)))))) ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P (x0 (g x1)))->(P (f x1)))
% Found ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> (((x2 x1) x3) (fun (x4:(fofType->Prop))=> (P (x0 (g x1)))))) ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P (x0 (g x1)))->(P (f x1)))
% Found ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> ((((fun (Xx:fofType)=> ((x Xx) x1)) x1) x3) (fun (x4:(fofType->Prop))=> (P (x0 (g x1)))))) ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P (x0 (g x1)))->(P (f x1)))
% Found (fun (P:((fofType->Prop)->Prop))=> ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> ((((fun (Xx:fofType)=> ((x Xx) x1)) x1) x3) (fun (x4:(fofType->Prop))=> (P (x0 (g x1)))))) ((eq_ref (fofType->Prop)) (g x1)))) as proof of ((P (x0 (g x1)))->(P (f x1)))
% Found (fun (P:((fofType->Prop)->Prop))=> ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> ((((fun (Xx:fofType)=> ((x Xx) x1)) x1) x3) (fun (x4:(fofType->Prop))=> (P (x0 (g x1)))))) ((eq_ref (fofType->Prop)) (g x1)))) as proof of (forall (P:((fofType->Prop)->Prop)), ((P (x0 (g x1)))->(P (f x1))))
% Found eq_ref00:=(eq_ref0 (g x1)):(((eq (fofType->Prop)) (g x1)) (g x1))
% Found (eq_ref0 (g x1)) as proof of (((eq (fofType->Prop)) (g x1)) (g x1))
% Found ((eq_ref (fofType->Prop)) (g x1)) as proof of (((eq (fofType->Prop)) (g x1)) (g x1))
% Found ((eq_ref (fofType->Prop)) (g x1)) as proof of (((eq (fofType->Prop)) (g x1)) (g x1))
% Found (x200 ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P (x0 (g x1)))->(P (f x1)))
% Found (x200 ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P (x0 (g x1)))->(P (f x1)))
% Found ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> ((x20 x3) P)) ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P (x0 (g x1)))->(P (f x1)))
% Found ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> (((x2 x1) x3) P)) ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P (x0 (g x1)))->(P (f x1)))
% Found ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> (((x2 x1) x3) P)) ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P (x0 (g x1)))->(P (f x1)))
% Found ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> ((((fun (Xx:fofType)=> ((x Xx) x1)) x1) x3) P)) ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P (x0 (g x1)))->(P (f x1)))
% Found (fun (P:((fofType->Prop)->Prop))=> ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> ((((fun (Xx:fofType)=> ((x Xx) x1)) x1) x3) P)) ((eq_ref (fofType->Prop)) (g x1)))) as proof of ((P (x0 (g x1)))->(P (f x1)))
% Found (fun (P:((fofType->Prop)->Prop))=> ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> ((((fun (Xx:fofType)=> ((x Xx) x1)) x1) x3) P)) ((eq_ref (fofType->Prop)) (g x1)))) as proof of (forall (P:((fofType->Prop)->Prop)), ((P (x0 (g x1)))->(P (f x1))))
% Found eq_ref00:=(eq_ref0 (g x1)):(((eq (fofType->Prop)) (g x1)) (g x1))
% Found (eq_ref0 (g x1)) as proof of (((eq (fofType->Prop)) (g x1)) (g x1))
% Found ((eq_ref (fofType->Prop)) (g x1)) as proof of (((eq (fofType->Prop)) (g x1)) (g x1))
% Found ((eq_ref (fofType->Prop)) (g x1)) as proof of (((eq (fofType->Prop)) (g x1)) (g x1))
% Found (x200 ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P (x0 (g x1)))->(P (f x1)))
% Found (x200 ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P (x0 (g x1)))->(P (f x1)))
% Found ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> ((x20 x3) (fun (x4:(fofType->Prop))=> (P (x0 (g x1)))))) ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P (x0 (g x1)))->(P (f x1)))
% Found ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> (((x2 x1) x3) (fun (x4:(fofType->Prop))=> (P (x0 (g x1)))))) ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P (x0 (g x1)))->(P (f x1)))
% Found ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> ((((fun (Xx:fofType)=> ((x Xx) x1)) x1) x3) (fun (x4:(fofType->Prop))=> (P (x0 (g x1)))))) ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P (x0 (g x1)))->(P (f x1)))
% Found ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> ((((fun (Xx:fofType)=> ((x Xx) x1)) x1) x3) (fun (x4:(fofType->Prop))=> (P (x0 (g x1)))))) ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P (x0 (g x1)))->(P (f x1)))
% Found (fun (P:((fofType->Prop)->Prop))=> ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> ((((fun (Xx:fofType)=> ((x Xx) x1)) x1) x3) (fun (x4:(fofType->Prop))=> (P (x0 (g x1)))))) ((eq_ref (fofType->Prop)) (g x1)))) as proof of ((P (x0 (g x1)))->(P (f x1)))
% Found (fun (P:((fofType->Prop)->Prop))=> ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> ((((fun (Xx:fofType)=> ((x Xx) x1)) x1) x3) (fun (x4:(fofType->Prop))=> (P (x0 (g x1)))))) ((eq_ref (fofType->Prop)) (g x1)))) as proof of (forall (P:((fofType->Prop)->Prop)), ((P (x0 (g x1)))->(P (f x1))))
% Found eq_ref00:=(eq_ref0 (g x1)):(((eq (fofType->Prop)) (g x1)) (g x1))
% Found (eq_ref0 (g x1)) as proof of (((eq (fofType->Prop)) (g x1)) (g x1))
% Found ((eq_ref (fofType->Prop)) (g x1)) as proof of (((eq (fofType->Prop)) (g x1)) (g x1))
% Found ((eq_ref (fofType->Prop)) (g x1)) as proof of (((eq (fofType->Prop)) (g x1)) (g x1))
% Found (x200 ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P (x0 (g x1)))->(P (f x1)))
% Found (x200 ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P (x0 (g x1)))->(P (f x1)))
% Found ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> ((x20 x3) P)) ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P (x0 (g x1)))->(P (f x1)))
% Found ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> (((x2 x1) x3) P)) ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P (x0 (g x1)))->(P (f x1)))
% Found ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> ((((fun (Xx:fofType)=> ((x Xx) x1)) x1) x3) P)) ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P (x0 (g x1)))->(P (f x1)))
% Found ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> ((((fun (Xx:fofType)=> ((x Xx) x1)) x1) x3) P)) ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P (x0 (g x1)))->(P (f x1)))
% Found (fun (P:((fofType->Prop)->Prop))=> ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> ((((fun (Xx:fofType)=> ((x Xx) x1)) x1) x3) P)) ((eq_ref (fofType->Prop)) (g x1)))) as proof of ((P (x0 (g x1)))->(P (f x1)))
% Found (fun (P:((fofType->Prop)->Prop))=> ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> ((((fun (Xx:fofType)=> ((x Xx) x1)) x1) x3) P)) ((eq_ref (fofType->Prop)) (g x1)))) as proof of (forall (P:((fofType->Prop)->Prop)), ((P (x0 (g x1)))->(P (f x1))))
% Found eq_ref00:=(eq_ref0 (g x1)):(((eq (fofType->Prop)) (g x1)) (g x1))
% Found (eq_ref0 (g x1)) as proof of (((eq (fofType->Prop)) (g x1)) (g x1))
% Found ((eq_ref (fofType->Prop)) (g x1)) as proof of (((eq (fofType->Prop)) (g x1)) (g x1))
% Found ((eq_ref (fofType->Prop)) (g x1)) as proof of (((eq (fofType->Prop)) (g x1)) (g x1))
% Found (x200 ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P (x0 (g x1)))->(P (f x1)))
% Found (x200 ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P (x0 (g x1)))->(P (f x1)))
% Found ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> ((x20 x3) (fun (x4:(fofType->Prop))=> (P (x0 (g x1)))))) ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P (x0 (g x1)))->(P (f x1)))
% Found ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> (((x2 x1) x3) (fun (x4:(fofType->Prop))=> (P (x0 (g x1)))))) ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P (x0 (g x1)))->(P (f x1)))
% Found ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> (((x2 x1) x3) (fun (x4:(fofType->Prop))=> (P (x0 (g x1)))))) ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P (x0 (g x1)))->(P (f x1)))
% Found ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> ((((fun (Xx:fofType)=> ((x Xx) x1)) x1) x3) (fun (x4:(fofType->Prop))=> (P (x0 (g x1)))))) ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P (x0 (g x1)))->(P (f x1)))
% Found (fun (P:((fofType->Prop)->Prop))=> ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> ((((fun (Xx:fofType)=> ((x Xx) x1)) x1) x3) (fun (x4:(fofType->Prop))=> (P (x0 (g x1)))))) ((eq_ref (fofType->Prop)) (g x1)))) as proof of ((P (x0 (g x1)))->(P (f x1)))
% Found (fun (P:((fofType->Prop)->Prop))=> ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> ((((fun (Xx:fofType)=> ((x Xx) x1)) x1) x3) (fun (x4:(fofType->Prop))=> (P (x0 (g x1)))))) ((eq_ref (fofType->Prop)) (g x1)))) as proof of (forall (P:((fofType->Prop)->Prop)), ((P (x0 (g x1)))->(P (f x1))))
% Found eq_ref00:=(eq_ref0 (g x1)):(((eq (fofType->Prop)) (g x1)) (g x1))
% Found (eq_ref0 (g x1)) as proof of (((eq (fofType->Prop)) (g x1)) (g x1))
% Found ((eq_ref (fofType->Prop)) (g x1)) as proof of (((eq (fofType->Prop)) (g x1)) (g x1))
% Found ((eq_ref (fofType->Prop)) (g x1)) as proof of (((eq (fofType->Prop)) (g x1)) (g x1))
% Found (x200 ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P (x0 (g x1)))->(P (f x1)))
% Found (x200 ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P (x0 (g x1)))->(P (f x1)))
% Found ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> ((x20 x3) P)) ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P (x0 (g x1)))->(P (f x1)))
% Found ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> (((x2 x1) x3) P)) ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P (x0 (g x1)))->(P (f x1)))
% Found ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> (((x2 x1) x3) P)) ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P (x0 (g x1)))->(P (f x1)))
% Found ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> ((((fun (Xx:fofType)=> ((x Xx) x1)) x1) x3) P)) ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P (x0 (g x1)))->(P (f x1)))
% Found (fun (P:((fofType->Prop)->Prop))=> ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> ((((fun (Xx:fofType)=> ((x Xx) x1)) x1) x3) P)) ((eq_ref (fofType->Prop)) (g x1)))) as proof of ((P (x0 (g x1)))->(P (f x1)))
% Found (fun (P:((fofType->Prop)->Prop))=> ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> ((((fun (Xx:fofType)=> ((x Xx) x1)) x1) x3) P)) ((eq_ref (fofType->Prop)) (g x1)))) as proof of (forall (P:((fofType->Prop)->Prop)), ((P (x0 (g x1)))->(P (f x1))))
% Found eq_ref00:=(eq_ref0 (g x1)):(((eq (fofType->Prop)) (g x1)) (g x1))
% Found (eq_ref0 (g x1)) as proof of (((eq (fofType->Prop)) (g x1)) (g x1))
% Found ((eq_ref (fofType->Prop)) (g x1)) as proof of (((eq (fofType->Prop)) (g x1)) (g x1))
% Found ((eq_ref (fofType->Prop)) (g x1)) as proof of (((eq (fofType->Prop)) (g x1)) (g x1))
% Found (x200 ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P (x0 (g x1)))->(P (f x1)))
% Found (x200 ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P (x0 (g x1)))->(P (f x1)))
% Found ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> ((x20 x3) (fun (x4:(fofType->Prop))=> (P (x0 (g x1)))))) ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P (x0 (g x1)))->(P (f x1)))
% Found ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> (((x2 x1) x3) (fun (x4:(fofType->Prop))=> (P (x0 (g x1)))))) ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P (x0 (g x1)))->(P (f x1)))
% Found ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> ((((fun (Xx:fofType)=> ((x Xx) x1)) x1) x3) (fun (x4:(fofType->Prop))=> (P (x0 (g x1)))))) ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P (x0 (g x1)))->(P (f x1)))
% Found ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> ((((fun (Xx:fofType)=> ((x Xx) x1)) x1) x3) (fun (x4:(fofType->Prop))=> (P (x0 (g x1)))))) ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P (x0 (g x1)))->(P (f x1)))
% Found (fun (P:((fofType->Prop)->Prop))=> ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> ((((fun (Xx:fofType)=> ((x Xx) x1)) x1) x3) (fun (x4:(fofType->Prop))=> (P (x0 (g x1)))))) ((eq_ref (fofType->Prop)) (g x1)))) as proof of ((P (x0 (g x1)))->(P (f x1)))
% Found eq_ref00:=(eq_ref0 (g x1)):(((eq (fofType->Prop)) (g x1)) (g x1))
% Found (eq_ref0 (g x1)) as proof of (((eq (fofType->Prop)) (g x1)) (g x1))
% Found ((eq_ref (fofType->Prop)) (g x1)) as proof of (((eq (fofType->Prop)) (g x1)) (g x1))
% Found ((eq_ref (fofType->Prop)) (g x1)) as proof of (((eq (fofType->Prop)) (g x1)) (g x1))
% Found (x200 ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P (x0 (g x1)))->(P (f x1)))
% Found (x200 ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P (x0 (g x1)))->(P (f x1)))
% Found ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> ((x20 x3) P)) ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P (x0 (g x1)))->(P (f x1)))
% Found ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> (((x2 x1) x3) P)) ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P (x0 (g x1)))->(P (f x1)))
% Found ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> ((((fun (Xx:fofType)=> ((x Xx) x1)) x1) x3) P)) ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P (x0 (g x1)))->(P (f x1)))
% Found ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> ((((fun (Xx:fofType)=> ((x Xx) x1)) x1) x3) P)) ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P (x0 (g x1)))->(P (f x1)))
% Found (fun (P:((fofType->Prop)->Prop))=> ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> ((((fun (Xx:fofType)=> ((x Xx) x1)) x1) x3) P)) ((eq_ref (fofType->Prop)) (g x1)))) as proof of ((P (x0 (g x1)))->(P (f x1)))
% Found eq_ref00:=(eq_ref0 (g x1)):(((eq (fofType->Prop)) (g x1)) (g x1))
% Found (eq_ref0 (g x1)) as proof of (((eq (fofType->Prop)) (g x1)) (g x1))
% Found ((eq_ref (fofType->Prop)) (g x1)) as proof of (((eq (fofType->Prop)) (g x1)) (g x1))
% Found ((eq_ref (fofType->Prop)) (g x1)) as proof of (((eq (fofType->Prop)) (g x1)) (g x1))
% Found (x200 ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P (x0 (g x1)))->(P (f x1)))
% Found (x200 ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P (x0 (g x1)))->(P (f x1)))
% Found ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> ((x20 x3) P)) ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P (x0 (g x1)))->(P (f x1)))
% Found ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> (((x2 x1) x3) P)) ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P (x0 (g x1)))->(P (f x1)))
% Found ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> ((((fun (Xx:fofType)=> ((x Xx) x1)) x1) x3) P)) ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P (x0 (g x1)))->(P (f x1)))
% Found ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> ((((fun (Xx:fofType)=> ((x Xx) x1)) x1) x3) P)) ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P (x0 (g x1)))->(P (f x1)))
% Found (fun (P:((fofType->Prop)->Prop))=> ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> ((((fun (Xx:fofType)=> ((x Xx) x1)) x1) x3) P)) ((eq_ref (fofType->Prop)) (g x1)))) as proof of ((P (x0 (g x1)))->(P (f x1)))
% Found eq_ref00:=(eq_ref0 (g x1)):(((eq (fofType->Prop)) (g x1)) (g x1))
% Found (eq_ref0 (g x1)) as proof of (((eq (fofType->Prop)) (g x1)) (g x1))
% Found ((eq_ref (fofType->Prop)) (g x1)) as proof of (((eq (fofType->Prop)) (g x1)) (g x1))
% Found ((eq_ref (fofType->Prop)) (g x1)) as proof of (((eq (fofType->Prop)) (g x1)) (g x1))
% Found (x200 ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P (x0 (g x1)))->(P (f x1)))
% Found (x200 ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P (x0 (g x1)))->(P (f x1)))
% Found ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> ((x20 x3) (fun (x4:(fofType->Prop))=> (P (x0 (g x1)))))) ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P (x0 (g x1)))->(P (f x1)))
% Found ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> (((x2 x1) x3) (fun (x4:(fofType->Prop))=> (P (x0 (g x1)))))) ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P (x0 (g x1)))->(P (f x1)))
% Found ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> ((((fun (Xx:fofType)=> ((x Xx) x1)) x1) x3) (fun (x4:(fofType->Prop))=> (P (x0 (g x1)))))) ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P (x0 (g x1)))->(P (f x1)))
% Found ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> ((((fun (Xx:fofType)=> ((x Xx) x1)) x1) x3) (fun (x4:(fofType->Prop))=> (P (x0 (g x1)))))) ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P (x0 (g x1)))->(P (f x1)))
% Found (fun (P:((fofType->Prop)->Prop))=> ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> ((((fun (Xx:fofType)=> ((x Xx) x1)) x1) x3) (fun (x4:(fofType->Prop))=> (P (x0 (g x1)))))) ((eq_ref (fofType->Prop)) (g x1)))) as proof of ((P (x0 (g x1)))->(P (f x1)))
% Found eq_ref00:=(eq_ref0 (g x1)):(((eq (fofType->Prop)) (g x1)) (g x1))
% Found (eq_ref0 (g x1)) as proof of (((eq (fofType->Prop)) (g x1)) (g x1))
% Found ((eq_ref (fofType->Prop)) (g x1)) as proof of (((eq (fofType->Prop)) (g x1)) (g x1))
% Found ((eq_ref (fofType->Prop)) (g x1)) as proof of (((eq (fofType->Prop)) (g x1)) (g x1))
% Found (x200 ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P (x0 (g x1)))->(P (f x1)))
% Found (x200 ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P (x0 (g x1)))->(P (f x1)))
% Found ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> ((x20 x3) P)) ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P (x0 (g x1)))->(P (f x1)))
% Found ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> (((x2 x1) x3) P)) ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P (x0 (g x1)))->(P (f x1)))
% Found ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> (((x2 x1) x3) P)) ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P (x0 (g x1)))->(P (f x1)))
% Found ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> ((((fun (Xx:fofType)=> ((x Xx) x1)) x1) x3) P)) ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P (x0 (g x1)))->(P (f x1)))
% Found (fun (P:((fofType->Prop)->Prop))=> ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> ((((fun (Xx:fofType)=> ((x Xx) x1)) x1) x3) P)) ((eq_ref (fofType->Prop)) (g x1)))) as proof of ((P (x0 (g x1)))->(P (f x1)))
% Found eq_ref00:=(eq_ref0 (g x1)):(((eq (fofType->Prop)) (g x1)) (g x1))
% Found (eq_ref0 (g x1)) as proof of (((eq (fofType->Prop)) (g x1)) (g x1))
% Found ((eq_ref (fofType->Prop)) (g x1)) as proof of (((eq (fofType->Prop)) (g x1)) (g x1))
% Found ((eq_ref (fofType->Prop)) (g x1)) as proof of (((eq (fofType->Prop)) (g x1)) (g x1))
% Found (x200 ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P (x0 (g x1)))->(P (f x1)))
% Found (x200 ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P (x0 (g x1)))->(P (f x1)))
% Found ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> ((x20 x3) (fun (x4:(fofType->Prop))=> (P (x0 (g x1)))))) ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P (x0 (g x1)))->(P (f x1)))
% Found ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> (((x2 x1) x3) (fun (x4:(fofType->Prop))=> (P (x0 (g x1)))))) ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P (x0 (g x1)))->(P (f x1)))
% Found ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> (((x2 x1) x3) (fun (x4:(fofType->Prop))=> (P (x0 (g x1)))))) ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P (x0 (g x1)))->(P (f x1)))
% Found ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> ((((fun (Xx:fofType)=> ((x Xx) x1)) x1) x3) (fun (x4:(fofType->Prop))=> (P (x0 (g x1)))))) ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P (x0 (g x1)))->(P (f x1)))
% Found (fun (P:((fofType->Prop)->Prop))=> ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> ((((fun (Xx:fofType)=> ((x Xx) x1)) x1) x3) (fun (x4:(fofType->Prop))=> (P (x0 (g x1)))))) ((eq_ref (fofType->Prop)) (g x1)))) as proof of ((P (x0 (g x1)))->(P (f x1)))
% Found eq_ref00:=(eq_ref0 (g x1)):(((eq (fofType->Prop)) (g x1)) (g x1))
% Found (eq_ref0 (g x1)) as proof of (((eq (fofType->Prop)) (g x1)) (g x1))
% Found ((eq_ref (fofType->Prop)) (g x1)) as proof of (((eq (fofType->Prop)) (g x1)) (g x1))
% Found ((eq_ref (fofType->Prop)) (g x1)) as proof of (((eq (fofType->Prop)) (g x1)) (g x1))
% Found (x200 ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P (x0 (g x1)))->(P (f x1)))
% Found (x200 ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P (x0 (g x1)))->(P (f x1)))
% Found ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> ((x20 x3) P)) ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P (x0 (g x1)))->(P (f x1)))
% Found ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> (((x2 x1) x3) P)) ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P (x0 (g x1)))->(P (f x1)))
% Found ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> (((x2 x1) x3) P)) ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P (x0 (g x1)))->(P (f x1)))
% Found ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> ((((fun (Xx:fofType)=> ((x Xx) x1)) x1) x3) P)) ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P (x0 (g x1)))->(P (f x1)))
% Found (fun (P:((fofType->Prop)->Prop))=> ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> ((((fun (Xx:fofType)=> ((x Xx) x1)) x1) x3) P)) ((eq_ref (fofType->Prop)) (g x1)))) as proof of ((P (x0 (g x1)))->(P (f x1)))
% Found eq_ref00:=(eq_ref0 (g x1)):(((eq (fofType->Prop)) (g x1)) (g x1))
% Found (eq_ref0 (g x1)) as proof of (((eq (fofType->Prop)) (g x1)) (g x1))
% Found ((eq_ref (fofType->Prop)) (g x1)) as proof of (((eq (fofType->Prop)) (g x1)) (g x1))
% Found ((eq_ref (fofType->Prop)) (g x1)) as proof of (((eq (fofType->Prop)) (g x1)) (g x1))
% Found (x200 ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P (x0 (g x1)))->(P (f x1)))
% Found (x200 ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P (x0 (g x1)))->(P (f x1)))
% Found ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> ((x20 x3) (fun (x4:(fofType->Prop))=> (P (x0 (g x1)))))) ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P (x0 (g x1)))->(P (f x1)))
% Found ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> (((x2 x1) x3) (fun (x4:(fofType->Prop))=> (P (x0 (g x1)))))) ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P (x0 (g x1)))->(P (f x1)))
% Found ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> (((x2 x1) x3) (fun (x4:(fofType->Prop))=> (P (x0 (g x1)))))) ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P (x0 (g x1)))->(P (f x1)))
% Found ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> ((((fun (Xx:fofType)=> ((x Xx) x1)) x1) x3) (fun (x4:(fofType->Prop))=> (P (x0 (g x1)))))) ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P (x0 (g x1)))->(P (f x1)))
% Found (fun (P:((fofType->Prop)->Prop))=> ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> ((((fun (Xx:fofType)=> ((x Xx) x1)) x1) x3) (fun (x4:(fofType->Prop))=> (P (x0 (g x1)))))) ((eq_ref (fofType->Prop)) (g x1)))) as proof of ((P (x0 (g x1)))->(P (f x1)))
% Found eta_expansion_dep000:=(eta_expansion_dep00 b):(((eq (fofType->(fofType->Prop))) b) (fun (x:fofType)=> (b x)))
% Found (eta_expansion_dep00 b) as proof of (((eq (fofType->(fofType->Prop))) b) (fun (Xx:fofType)=> (x0 (g Xx))))
% Found ((eta_expansion_dep0 (fun (x2:fofType)=> (fofType->Prop))) b) as proof of (((eq (fofType->(fofType->Prop))) b) (fun (Xx:fofType)=> (x0 (g Xx))))
% Found (((eta_expansion_dep fofType) (fun (x2:fofType)=> (fofType->Prop))) b) as proof of (((eq (fofType->(fofType->Prop))) b) (fun (Xx:fofType)=> (x0 (g Xx))))
% Found (((eta_expansion_dep fofType) (fun (x2:fofType)=> (fofType->Prop))) b) as proof of (((eq (fofType->(fofType->Prop))) b) (fun (Xx:fofType)=> (x0 (g Xx))))
% Found (((eta_expansion_dep fofType) (fun (x2:fofType)=> (fofType->Prop))) b) as proof of (((eq (fofType->(fofType->Prop))) b) (fun (Xx:fofType)=> (x0 (g Xx))))
% Found eta_expansion000:=(eta_expansion00 f):(((eq (fofType->(fofType->Prop))) f) (fun (x:fofType)=> (f x)))
% Found (eta_expansion00 f) as proof of (((eq (fofType->(fofType->Prop))) f) b)
% Found ((eta_expansion0 (fofType->Prop)) f) as proof of (((eq (fofType->(fofType->Prop))) f) b)
% Found (((eta_expansion fofType) (fofType->Prop)) f) as proof of (((eq (fofType->(fofType->Prop))) f) b)
% Found (((eta_expansion fofType) (fofType->Prop)) f) as proof of (((eq (fofType->(fofType->Prop))) f) b)
% Found (((eta_expansion fofType) (fofType->Prop)) f) as proof of (((eq (fofType->(fofType->Prop))) f) b)
% Found eta_expansion_dep000:=(eta_expansion_dep00 b):(((eq (fofType->(fofType->Prop))) b) (fun (x:fofType)=> (b x)))
% Found (eta_expansion_dep00 b) as proof of (((eq (fofType->(fofType->Prop))) b) (fun (Xx:fofType)=> (x0 (g Xx))))
% Found ((eta_expansion_dep0 (fun (x2:fofType)=> (fofType->Prop))) b) as proof of (((eq (fofType->(fofType->Prop))) b) (fun (Xx:fofType)=> (x0 (g Xx))))
% Found (((eta_expansion_dep fofType) (fun (x2:fofType)=> (fofType->Prop))) b) as proof of (((eq (fofType->(fofType->Prop))) b) (fun (Xx:fofType)=> (x0 (g Xx))))
% Found (((eta_expansion_dep fofType) (fun (x2:fofType)=> (fofType->Prop))) b) as proof of (((eq (fofType->(fofType->Prop))) b) (fun (Xx:fofType)=> (x0 (g Xx))))
% Found (((eta_expansion_dep fofType) (fun (x2:fofType)=> (fofType->Prop))) b) as proof of (((eq (fofType->(fofType->Prop))) b) (fun (Xx:fofType)=> (x0 (g Xx))))
% Found eta_expansion000:=(eta_expansion00 f):(((eq (fofType->(fofType->Prop))) f) (fun (x:fofType)=> (f x)))
% Found (eta_expansion00 f) as proof of (((eq (fofType->(fofType->Prop))) f) b)
% Found ((eta_expansion0 (fofType->Prop)) f) as proof of (((eq (fofType->(fofType->Prop))) f) b)
% Found (((eta_expansion fofType) (fofType->Prop)) f) as proof of (((eq (fofType->(fofType->Prop))) f) b)
% Found (((eta_expansion fofType) (fofType->Prop)) f) as proof of (((eq (fofType->(fofType->Prop))) f) b)
% Found (((eta_expansion fofType) (fofType->Prop)) f) as proof of (((eq (fofType->(fofType->Prop))) f) b)
% Found eq_ref000:=(eq_ref00 P):((P (x0 (g x1)))->(P (x0 (g x1))))
% Found (eq_ref00 P) as proof of ((P (x0 (g x1)))->(P (b x1)))
% Found ((eq_ref0 (x0 (g x1))) P) as proof of ((P (x0 (g x1)))->(P (b x1)))
% Found (((eq_ref (fofType->Prop)) (x0 (g x1))) P) as proof of ((P (x0 (g x1)))->(P (b x1)))
% Found (((eq_ref (fofType->Prop)) (x0 (g x1))) P) as proof of ((P (x0 (g x1)))->(P (b x1)))
% Found (fun (P:((fofType->Prop)->Prop))=> (((eq_ref (fofType->Prop)) (x0 (g x1))) P)) as proof of ((P (x0 (g x1)))->(P (b x1)))
% Found (fun (P:((fofType->Prop)->Prop))=> (((eq_ref (fofType->Prop)) (x0 (g x1))) P)) as proof of (forall (P:((fofType->Prop)->Prop)), ((P (x0 (g x1)))->(P (b x1))))
% Found eq_ref000:=(eq_ref00 P):((P (x0 (g x1)))->(P (x0 (g x1))))
% Found (eq_ref00 P) as proof of ((P (x0 (g x1)))->(P (b x1)))
% Found ((eq_ref0 (x0 (g x1))) P) as proof of ((P (x0 (g x1)))->(P (b x1)))
% Found (((eq_ref (fofType->Prop)) (x0 (g x1))) P) as proof of ((P (x0 (g x1)))->(P (b x1)))
% Found (((eq_ref (fofType->Prop)) (x0 (g x1))) P) as proof of ((P (x0 (g x1)))->(P (b x1)))
% Found (fun (P:((fofType->Prop)->Prop))=> (((eq_ref (fofType->Prop)) (x0 (g x1))) P)) as proof of ((P (x0 (g x1)))->(P (b x1)))
% Found (fun (P:((fofType->Prop)->Prop))=> (((eq_ref (fofType->Prop)) (x0 (g x1))) P)) as proof of (forall (P:((fofType->Prop)->Prop)), ((P (x0 (g x1)))->(P (b x1))))
% Found eq_ref000:=(eq_ref00 P):((P (x0 (g x1)))->(P (x0 (g x1))))
% Found (eq_ref00 P) as proof of ((P (x0 (g x1)))->(P (b x1)))
% Found ((eq_ref0 (x0 (g x1))) P) as proof of ((P (x0 (g x1)))->(P (b x1)))
% Found (((eq_ref (fofType->Prop)) (x0 (g x1))) P) as proof of ((P (x0 (g x1)))->(P (b x1)))
% Found (((eq_ref (fofType->Prop)) (x0 (g x1))) P) as proof of ((P (x0 (g x1)))->(P (b x1)))
% Found (fun (P:((fofType->Prop)->Prop))=> (((eq_ref (fofType->Prop)) (x0 (g x1))) P)) as proof of ((P (x0 (g x1)))->(P (b x1)))
% Found eq_ref000:=(eq_ref00 P):((P (x0 (g x1)))->(P (x0 (g x1))))
% Found (eq_ref00 P) as proof of ((P (x0 (g x1)))->(P (b x1)))
% Found ((eq_ref0 (x0 (g x1))) P) as proof of ((P (x0 (g x1)))->(P (b x1)))
% Found (((eq_ref (fofType->Prop)) (x0 (g x1))) P) as proof of ((P (x0 (g x1)))->(P (b x1)))
% Found (((eq_ref (fofType->Prop)) (x0 (g x1))) P) as proof of ((P (x0 (g x1)))->(P (b x1)))
% Found (fun (P:((fofType->Prop)->Prop))=> (((eq_ref (fofType->Prop)) (x0 (g x1))) P)) as proof of ((P (x0 (g x1)))->(P (b x1)))
% Found eq_ref000:=(eq_ref00 P):((P (x0 (g x1)))->(P (x0 (g x1))))
% Found (eq_ref00 P) as proof of ((P (x0 (g x1)))->(P (b x1)))
% Found ((eq_ref0 (x0 (g x1))) P) as proof of ((P (x0 (g x1)))->(P (b x1)))
% Found (((eq_ref (fofType->Prop)) (x0 (g x1))) P) as proof of ((P (x0 (g x1)))->(P (b x1)))
% Found (((eq_ref (fofType->Prop)) (x0 (g x1))) P) as proof of ((P (x0 (g x1)))->(P (b x1)))
% Found (fun (P:((fofType->Prop)->Prop))=> (((eq_ref (fofType->Prop)) (x0 (g x1))) P)) as proof of ((P (x0 (g x1)))->(P (b x1)))
% Found eq_ref000:=(eq_ref00 P):((P (x0 (g x1)))->(P (x0 (g x1))))
% Found (eq_ref00 P) as proof of ((P (x0 (g x1)))->(P (b x1)))
% Found ((eq_ref0 (x0 (g x1))) P) as proof of ((P (x0 (g x1)))->(P (b x1)))
% Found (((eq_ref (fofType->Prop)) (x0 (g x1))) P) as proof of ((P (x0 (g x1)))->(P (b x1)))
% Found (((eq_ref (fofType->Prop)) (x0 (g x1))) P) as proof of ((P (x0 (g x1)))->(P (b x1)))
% Found (fun (P:((fofType->Prop)->Prop))=> (((eq_ref (fofType->Prop)) (x0 (g x1))) P)) as proof of ((P (x0 (g x1)))->(P (b x1)))
% Found eq_ref000:=(eq_ref00 P):((P f)->(P f))
% Found (eq_ref00 P) as proof of (P0 f)
% Found ((eq_ref0 f) P) as proof of (P0 f)
% Found (((eq_ref (fofType->(fofType->Prop))) f) P) as proof of (P0 f)
% Found (((eq_ref (fofType->(fofType->Prop))) f) P) as proof of (P0 f)
% Found eq_ref000:=(eq_ref00 P):((P f)->(P f))
% Found (eq_ref00 P) as proof of (P0 f)
% Found ((eq_ref0 f) P) as proof of (P0 f)
% Found (((eq_ref (fofType->(fofType->Prop))) f) P) as proof of (P0 f)
% Found (((eq_ref (fofType->(fofType->Prop))) f) P) as proof of (P0 f)
% Found eq_ref000:=(eq_ref00 P):((P f)->(P f))
% Found (eq_ref00 P) as proof of (P0 f)
% Found ((eq_ref0 f) P) as proof of (P0 f)
% Found (((eq_ref (fofType->(fofType->Prop))) f) P) as proof of (P0 f)
% Found (((eq_ref (fofType->(fofType->Prop))) f) P) as proof of (P0 f)
% Found eq_ref000:=(eq_ref00 P):((P f)->(P f))
% Found (eq_ref00 P) as proof of (P0 f)
% Found ((eq_ref0 f) P) as proof of (P0 f)
% Found (((eq_ref (fofType->(fofType->Prop))) f) P) as proof of (P0 f)
% Found (((eq_ref (fofType->(fofType->Prop))) f) P) as proof of (P0 f)
% Found eq_ref00:=(eq_ref0 b):(((eq (fofType->(fofType->Prop))) b) b)
% Found (eq_ref0 b) as proof of (P b)
% Found ((eq_ref (fofType->(fofType->Prop))) b) as proof of (P b)
% Found ((eq_ref (fofType->(fofType->Prop))) b) as proof of (P b)
% Found ((eq_ref (fofType->(fofType->Prop))) b) as proof of (P b)
% Found eta_expansion000:=(eta_expansion00 f):(((eq (fofType->(fofType->Prop))) f) (fun (x:fofType)=> (f x)))
% Found (eta_expansion00 f) as proof of (((eq (fofType->(fofType->Prop))) f) b)
% Found ((eta_expansion0 (fofType->Prop)) f) as proof of (((eq (fofType->(fofType->Prop))) f) b)
% Found (((eta_expansion fofType) (fofType->Prop)) f) as proof of (((eq (fofType->(fofType->Prop))) f) b)
% Found (((eta_expansion fofType) (fofType->Prop)) f) as proof of (((eq (fofType->(fofType->Prop))) f) b)
% Found (((eta_expansion fofType) (fofType->Prop)) f) as proof of (((eq (fofType->(fofType->Prop))) f) b)
% Found eq_ref00:=(eq_ref0 ((x0 (g x1)) x2)):(((eq Prop) ((x0 (g x1)) x2)) ((x0 (g x1)) x2))
% Found (eq_ref0 ((x0 (g x1)) x2)) as proof of (((eq Prop) ((x0 (g x1)) x2)) ((f x1) x2))
% Found ((eq_ref Prop) ((x0 (g x1)) x2)) as proof of (((eq Prop) ((x0 (g x1)) x2)) ((f x1) x2))
% Found ((eq_ref Prop) ((x0 (g x1)) x2)) as proof of (((eq Prop) ((x0 (g x1)) x2)) ((f x1) x2))
% Found (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2))) as proof of (((eq Prop) ((x0 (g x1)) x2)) ((f x1) x2))
% Found (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2))) as proof of (forall (x:fofType), (((eq Prop) ((x0 (g x1)) x)) ((f x1) x)))
% Found (functional_extensionality_dep01000 (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2)))) as proof of ((P (x0 (g x1)))->(P (f x1)))
% Found (functional_extensionality_dep01000 (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2)))) as proof of ((P (x0 (g x1)))->(P (f x1)))
% Found ((fun (x2:(forall (x:fofType), (((eq Prop) ((x0 (g x1)) x)) ((f x1) x))))=> ((functional_extensionality_dep0100 x2) P)) (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2)))) as proof of ((P (x0 (g x1)))->(P (f x1)))
% Found ((fun (x2:(forall (x:fofType), (((eq Prop) ((x0 (g x1)) x)) ((f x1) x))))=> (((functional_extensionality_dep010 (f x1)) x2) P)) (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2)))) as proof of ((P (x0 (g x1)))->(P (f x1)))
% Found ((fun (x2:(forall (x:fofType), (((eq Prop) ((x0 (g x1)) x)) ((f x1) x))))=> ((((functional_extensionality_dep01 (x0 (g x1))) (f x1)) x2) P)) (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2)))) as proof of ((P (x0 (g x1)))->(P (f x1)))
% Found ((fun (x2:(forall (x:fofType), (((eq Prop) ((x0 (g x1)) x)) ((f x1) x))))=> (((((functional_extensionality_dep0 (fun (x4:fofType)=> Prop)) (x0 (g x1))) (f x1)) x2) P)) (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2)))) as proof of ((P (x0 (g x1)))->(P (f x1)))
% Found (fun (P:((fofType->Prop)->Prop))=> ((fun (x2:(forall (x:fofType), (((eq Prop) ((x0 (g x1)) x)) ((f x1) x))))=> (((((functional_extensionality_dep0 (fun (x4:fofType)=> Prop)) (x0 (g x1))) (f x1)) x2) P)) (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2))))) as proof of ((P (x0 (g x1)))->(P (f x1)))
% Found eq_ref00:=(eq_ref0 ((x0 (g x1)) x2)):(((eq Prop) ((x0 (g x1)) x2)) ((x0 (g x1)) x2))
% Found (eq_ref0 ((x0 (g x1)) x2)) as proof of (((eq Prop) ((x0 (g x1)) x2)) ((f x1) x2))
% Found ((eq_ref Prop) ((x0 (g x1)) x2)) as proof of (((eq Prop) ((x0 (g x1)) x2)) ((f x1) x2))
% Found ((eq_ref Prop) ((x0 (g x1)) x2)) as proof of (((eq Prop) ((x0 (g x1)) x2)) ((f x1) x2))
% Found (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2))) as proof of (((eq Prop) ((x0 (g x1)) x2)) ((f x1) x2))
% Found (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2))) as proof of (forall (x:fofType), (((eq Prop) ((x0 (g x1)) x)) ((f x1) x)))
% Found (functional_extensionality01000 (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2)))) as proof of ((P (x0 (g x1)))->(P (f x1)))
% Found (functional_extensionality01000 (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2)))) as proof of ((P (x0 (g x1)))->(P (f x1)))
% Found ((fun (x2:(forall (x:fofType), (((eq Prop) ((x0 (g x1)) x)) ((f x1) x))))=> ((functional_extensionality0100 x2) P)) (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2)))) as proof of ((P (x0 (g x1)))->(P (f x1)))
% Found ((fun (x2:(forall (x:fofType), (((eq Prop) ((x0 (g x1)) x)) ((f x1) x))))=> (((functional_extensionality010 (f x1)) x2) P)) (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2)))) as proof of ((P (x0 (g x1)))->(P (f x1)))
% Found ((fun (x2:(forall (x:fofType), (((eq Prop) ((x0 (g x1)) x)) ((f x1) x))))=> ((((functional_extensionality01 (x0 (g x1))) (f x1)) x2) P)) (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2)))) as proof of ((P (x0 (g x1)))->(P (f x1)))
% Found ((fun (x2:(forall (x:fofType), (((eq Prop) ((x0 (g x1)) x)) ((f x1) x))))=> (((((functional_extensionality0 Prop) (x0 (g x1))) (f x1)) x2) P)) (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2)))) as proof of ((P (x0 (g x1)))->(P (f x1)))
% Found (fun (P:((fofType->Prop)->Prop))=> ((fun (x2:(forall (x:fofType), (((eq Prop) ((x0 (g x1)) x)) ((f x1) x))))=> (((((functional_extensionality0 Prop) (x0 (g x1))) (f x1)) x2) P)) (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2))))) as proof of ((P (x0 (g x1)))->(P (f x1)))
% Found eq_ref000:=(eq_ref00 P):((P (x0 (g x1)))->(P (x0 (g x1))))
% Found (eq_ref00 P) as proof of (P0 (x0 (g x1)))
% Found ((eq_ref0 (x0 (g x1))) P) as proof of (P0 (x0 (g x1)))
% Found (((eq_ref (fofType->Prop)) (x0 (g x1))) P) as proof of (P0 (x0 (g x1)))
% Found (((eq_ref (fofType->Prop)) (x0 (g x1))) P) as proof of (P0 (x0 (g x1)))
% Found eq_ref000:=(eq_ref00 P):((P (x0 (g x1)))->(P (x0 (g x1))))
% Found (eq_ref00 P) as proof of (P0 (x0 (g x1)))
% Found ((eq_ref0 (x0 (g x1))) P) as proof of (P0 (x0 (g x1)))
% Found (((eq_ref (fofType->Prop)) (x0 (g x1))) P) as proof of (P0 (x0 (g x1)))
% Found (((eq_ref (fofType->Prop)) (x0 (g x1))) P) as proof of (P0 (x0 (g x1)))
% Found eq_ref00:=(eq_ref0 ((x0 (g x1)) x2)):(((eq Prop) ((x0 (g x1)) x2)) ((x0 (g x1)) x2))
% Found (eq_ref0 ((x0 (g x1)) x2)) as proof of (((eq Prop) ((x0 (g x1)) x2)) ((f x1) x2))
% Found ((eq_ref Prop) ((x0 (g x1)) x2)) as proof of (((eq Prop) ((x0 (g x1)) x2)) ((f x1) x2))
% Found ((eq_ref Prop) ((x0 (g x1)) x2)) as proof of (((eq Prop) ((x0 (g x1)) x2)) ((f x1) x2))
% Found (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2))) as proof of (((eq Prop) ((x0 (g x1)) x2)) ((f x1) x2))
% Found (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2))) as proof of (forall (x:fofType), (((eq Prop) ((x0 (g x1)) x)) ((f x1) x)))
% Found (functional_extensionality0100 (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2)))) as proof of (((eq (fofType->Prop)) (x0 (g x1))) (f x1))
% Found ((functional_extensionality010 (f x1)) (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2)))) as proof of (((eq (fofType->Prop)) (x0 (g x1))) (f x1))
% Found (((functional_extensionality01 (x0 (g x1))) (f x1)) (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2)))) as proof of (((eq (fofType->Prop)) (x0 (g x1))) (f x1))
% Found ((((functional_extensionality0 Prop) (x0 (g x1))) (f x1)) (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2)))) as proof of (((eq (fofType->Prop)) (x0 (g x1))) (f x1))
% Found eq_ref00:=(eq_ref0 ((x0 (g x1)) x2)):(((eq Prop) ((x0 (g x1)) x2)) ((x0 (g x1)) x2))
% Found (eq_ref0 ((x0 (g x1)) x2)) as proof of (((eq Prop) ((x0 (g x1)) x2)) ((f x1) x2))
% Found ((eq_ref Prop) ((x0 (g x1)) x2)) as proof of (((eq Prop) ((x0 (g x1)) x2)) ((f x1) x2))
% Found ((eq_ref Prop) ((x0 (g x1)) x2)) as proof of (((eq Prop) ((x0 (g x1)) x2)) ((f x1) x2))
% Found (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2))) as proof of (((eq Prop) ((x0 (g x1)) x2)) ((f x1) x2))
% Found (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2))) as proof of (forall (x:fofType), (((eq Prop) ((x0 (g x1)) x)) ((f x1) x)))
% Found (functional_extensionality_dep0100 (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2)))) as proof of (((eq (fofType->Prop)) (x0 (g x1))) (f x1))
% Found ((functional_extensionality_dep010 (f x1)) (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2)))) as proof of (((eq (fofType->Prop)) (x0 (g x1))) (f x1))
% Found (((functional_extensionality_dep01 (x0 (g x1))) (f x1)) (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2)))) as proof of (((eq (fofType->Prop)) (x0 (g x1))) (f x1))
% Found ((((functional_extensionality_dep0 (fun (x4:fofType)=> Prop)) (x0 (g x1))) (f x1)) (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2)))) as proof of (((eq (fofType->Prop)) (x0 (g x1))) (f x1))
% Found eq_ref00:=(eq_ref0 ((x0 (g x1)) x2)):(((eq Prop) ((x0 (g x1)) x2)) ((x0 (g x1)) x2))
% Found (eq_ref0 ((x0 (g x1)) x2)) as proof of (((eq Prop) ((x0 (g x1)) x2)) ((f x1) x2))
% Found ((eq_ref Prop) ((x0 (g x1)) x2)) as proof of (((eq Prop) ((x0 (g x1)) x2)) ((f x1) x2))
% Found ((eq_ref Prop) ((x0 (g x1)) x2)) as proof of (((eq Prop) ((x0 (g x1)) x2)) ((f x1) x2))
% Found (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2))) as proof of (((eq Prop) ((x0 (g x1)) x2)) ((f x1) x2))
% Found (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2))) as proof of (forall (x:fofType), (((eq Prop) ((x0 (g x1)) x)) ((f x1) x)))
% Found (functional_extensionality0100 (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2)))) as proof of (((eq (fofType->Prop)) (x0 (g x1))) (f x1))
% Found ((functional_extensionality010 (f x1)) (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2)))) as proof of (((eq (fofType->Prop)) (x0 (g x1))) (f x1))
% Found (((functional_extensionality01 (x0 (g x1))) (f x1)) (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2)))) as proof of (((eq (fofType->Prop)) (x0 (g x1))) (f x1))
% Found ((((functional_extensionality0 Prop) (x0 (g x1))) (f x1)) (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2)))) as proof of (((eq (fofType->Prop)) (x0 (g x1))) (f x1))
% Found eq_ref00:=(eq_ref0 ((x0 (g x1)) y)):(((eq Prop) ((x0 (g x1)) y)) ((x0 (g x1)) y))
% Found (eq_ref0 ((x0 (g x1)) y)) as proof of (((eq Prop) ((x0 (g x1)) y)) ((b x1) y))
% Found ((eq_ref Prop) ((x0 (g x1)) y)) as proof of (((eq Prop) ((x0 (g x1)) y)) ((b x1) y))
% Found ((eq_ref Prop) ((x0 (g x1)) y)) as proof of (((eq Prop) ((x0 (g x1)) y)) ((b x1) y))
% Found (fun (y:fofType)=> ((eq_ref Prop) ((x0 (g x1)) y))) as proof of (((eq Prop) ((x0 (g x1)) y)) ((b x1) y))
% Found x1:(P f)
% Instantiate: b:=f:(fofType->(fofType->Prop))
% Found x1 as proof of (P0 b)
% Found eq_ref00:=(eq_ref0 (fun (Xx:fofType)=> (x0 (g Xx)))):(((eq (fofType->(fofType->Prop))) (fun (Xx:fofType)=> (x0 (g Xx)))) (fun (Xx:fofType)=> (x0 (g Xx))))
% Found (eq_ref0 (fun (Xx:fofType)=> (x0 (g Xx)))) as proof of (((eq (fofType->(fofType->Prop))) (fun (Xx:fofType)=> (x0 (g Xx)))) b)
% Found ((eq_ref (fofType->(fofType->Prop))) (fun (Xx:fofType)=> (x0 (g Xx)))) as proof of (((eq (fofType->(fofType->Prop))) (fun (Xx:fofType)=> (x0 (g Xx)))) b)
% Found ((eq_ref (fofType->(fofType->Prop))) (fun (Xx:fofType)=> (x0 (g Xx)))) as proof of (((eq (fofType->(fofType->Prop))) (fun (Xx:fofType)=> (x0 (g Xx)))) b)
% Found ((eq_ref (fofType->(fofType->Prop))) (fun (Xx:fofType)=> (x0 (g Xx)))) as proof of (((eq (fofType->(fofType->Prop))) (fun (Xx:fofType)=> (x0 (g Xx)))) b)
% Found eq_ref00:=(eq_ref0 ((x0 (g x1)) x2)):(((eq Prop) ((x0 (g x1)) x2)) ((x0 (g x1)) x2))
% Found (eq_ref0 ((x0 (g x1)) x2)) as proof of (((eq Prop) ((x0 (g x1)) x2)) ((f x1) x2))
% Found ((eq_ref Prop) ((x0 (g x1)) x2)) as proof of (((eq Prop) ((x0 (g x1)) x2)) ((f x1) x2))
% Found ((eq_ref Prop) ((x0 (g x1)) x2)) as proof of (((eq Prop) ((x0 (g x1)) x2)) ((f x1) x2))
% Found (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2))) as proof of (((eq Prop) ((x0 (g x1)) x2)) ((f x1) x2))
% Found (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2))) as proof of (forall (x:fofType), (((eq Prop) ((x0 (g x1)) x)) ((f x1) x)))
% Found (functional_extensionality_dep0100 (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2)))) as proof of (((eq (fofType->Prop)) (x0 (g x1))) (f x1))
% Found ((functional_extensionality_dep010 (f x1)) (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2)))) as proof of (((eq (fofType->Prop)) (x0 (g x1))) (f x1))
% Found (((functional_extensionality_dep01 (x0 (g x1))) (f x1)) (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2)))) as proof of (((eq (fofType->Prop)) (x0 (g x1))) (f x1))
% Found ((((functional_extensionality_dep0 (fun (x4:fofType)=> Prop)) (x0 (g x1))) (f x1)) (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2)))) as proof of (((eq (fofType->Prop)) (x0 (g x1))) (f x1))
% Found eq_ref00:=(eq_ref0 ((x0 (g x1)) y)):(((eq Prop) ((x0 (g x1)) y)) ((x0 (g x1)) y))
% Found (eq_ref0 ((x0 (g x1)) y)) as proof of (forall (P:(Prop->Prop)), ((P ((x0 (g x1)) y))->(P ((b x1) y))))
% Found ((eq_ref Prop) ((x0 (g x1)) y)) as proof of (forall (P:(Prop->Prop)), ((P ((x0 (g x1)) y))->(P ((b x1) y))))
% Found ((eq_ref Prop) ((x0 (g x1)) y)) as proof of (forall (P:(Prop->Prop)), ((P ((x0 (g x1)) y))->(P ((b x1) y))))
% Found ((eq_ref Prop) ((x0 (g x1)) y)) as proof of (forall (P:(Prop->Prop)), ((P ((x0 (g x1)) y))->(P ((b x1) y))))
% Found (fun (y:fofType)=> ((eq_ref Prop) ((x0 (g x1)) y))) as proof of (((eq Prop) ((x0 (g x1)) y)) ((b x1) y))
% Found eq_ref00:=(eq_ref0 ((x0 (g x1)) y)):(((eq Prop) ((x0 (g x1)) y)) ((x0 (g x1)) y))
% Found (eq_ref0 ((x0 (g x1)) y)) as proof of (((eq Prop) ((x0 (g x1)) y)) ((b x1) y))
% Found ((eq_ref Prop) ((x0 (g x1)) y)) as proof of (((eq Prop) ((x0 (g x1)) y)) ((b x1) y))
% Found ((eq_ref Prop) ((x0 (g x1)) y)) as proof of (((eq Prop) ((x0 (g x1)) y)) ((b x1) y))
% Found (fun (y:fofType)=> ((eq_ref Prop) ((x0 (g x1)) y))) as proof of (((eq Prop) ((x0 (g x1)) y)) ((b x1) y))
% Found eq_ref000:=(eq_ref00 P):((P (x0 (g x1)))->(P (x0 (g x1))))
% Found (eq_ref00 P) as proof of (P0 (x0 (g x1)))
% Found ((eq_ref0 (x0 (g x1))) P) as proof of (P0 (x0 (g x1)))
% Found (((eq_ref (fofType->Prop)) (x0 (g x1))) P) as proof of (P0 (x0 (g x1)))
% Found (((eq_ref (fofType->Prop)) (x0 (g x1))) P) as proof of (P0 (x0 (g x1)))
% Found eq_ref00:=(eq_ref0 ((x0 (g x1)) x2)):(((eq Prop) ((x0 (g x1)) x2)) ((x0 (g x1)) x2))
% Found (eq_ref0 ((x0 (g x1)) x2)) as proof of (((eq Prop) ((x0 (g x1)) x2)) ((f x1) x2))
% Found ((eq_ref Prop) ((x0 (g x1)) x2)) as proof of (((eq Prop) ((x0 (g x1)) x2)) ((f x1) x2))
% Found ((eq_ref Prop) ((x0 (g x1)) x2)) as proof of (((eq Prop) ((x0 (g x1)) x2)) ((f x1) x2))
% Found (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2))) as proof of (((eq Prop) ((x0 (g x1)) x2)) ((f x1) x2))
% Found (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2))) as proof of (forall (x:fofType), (((eq Prop) ((x0 (g x1)) x)) ((f x1) x)))
% Found ((functional_extensionality_dep01000 (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2)))) (((eq_ref (fofType->Prop)) (x0 (g x1))) P)) as proof of ((P (x0 (g x1)))->(P (f x1)))
% Found ((functional_extensionality_dep01000 (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2)))) (((eq_ref (fofType->Prop)) (x0 (g x1))) P)) as proof of ((P (x0 (g x1)))->(P (f x1)))
% Found (((fun (x2:(forall (x:fofType), (((eq Prop) ((x0 (g x1)) x)) ((f x1) x))))=> ((functional_extensionality_dep0100 x2) (fun (x4:(fofType->Prop))=> ((P (x0 (g x1)))->(P x4))))) (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2)))) (((eq_ref (fofType->Prop)) (x0 (g x1))) P)) as proof of ((P (x0 (g x1)))->(P (f x1)))
% Found (((fun (x2:(forall (x:fofType), (((eq Prop) ((x0 (g x1)) x)) ((f x1) x))))=> (((functional_extensionality_dep010 (f x1)) x2) (fun (x4:(fofType->Prop))=> ((P (x0 (g x1)))->(P x4))))) (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2)))) (((eq_ref (fofType->Prop)) (x0 (g x1))) P)) as proof of ((P (x0 (g x1)))->(P (f x1)))
% Found (((fun (x2:(forall (x:fofType), (((eq Prop) ((x0 (g x1)) x)) ((f x1) x))))=> ((((functional_extensionality_dep01 (x0 (g x1))) (f x1)) x2) (fun (x4:(fofType->Prop))=> ((P (x0 (g x1)))->(P x4))))) (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2)))) (((eq_ref (fofType->Prop)) (x0 (g x1))) P)) as proof of ((P (x0 (g x1)))->(P (f x1)))
% Found (((fun (x2:(forall (x:fofType), (((eq Prop) ((x0 (g x1)) x)) ((f x1) x))))=> (((((functional_extensionality_dep0 (fun (x4:fofType)=> Prop)) (x0 (g x1))) (f x1)) x2) (fun (x4:(fofType->Prop))=> ((P (x0 (g x1)))->(P x4))))) (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2)))) (((eq_ref (fofType->Prop)) (x0 (g x1))) P)) as proof of ((P (x0 (g x1)))->(P (f x1)))
% Found (fun (P:((fofType->Prop)->Prop))=> (((fun (x2:(forall (x:fofType), (((eq Prop) ((x0 (g x1)) x)) ((f x1) x))))=> (((((functional_extensionality_dep0 (fun (x4:fofType)=> Prop)) (x0 (g x1))) (f x1)) x2) (fun (x4:(fofType->Prop))=> ((P (x0 (g x1)))->(P x4))))) (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2)))) (((eq_ref (fofType->Prop)) (x0 (g x1))) P))) as proof of ((P (x0 (g x1)))->(P (f x1)))
% Found eq_ref000:=(eq_ref00 P):((P (x0 (g x1)))->(P (x0 (g x1))))
% Found (eq_ref00 P) as proof of (P0 (x0 (g x1)))
% Found ((eq_ref0 (x0 (g x1))) P) as proof of (P0 (x0 (g x1)))
% Found (((eq_ref (fofType->Prop)) (x0 (g x1))) P) as proof of (P0 (x0 (g x1)))
% Found (((eq_ref (fofType->Prop)) (x0 (g x1))) P) as proof of (P0 (x0 (g x1)))
% Found eq_ref00:=(eq_ref0 ((x0 (g x1)) x2)):(((eq Prop) ((x0 (g x1)) x2)) ((x0 (g x1)) x2))
% Found (eq_ref0 ((x0 (g x1)) x2)) as proof of (((eq Prop) ((x0 (g x1)) x2)) ((f x1) x2))
% Found ((eq_ref Prop) ((x0 (g x1)) x2)) as proof of (((eq Prop) ((x0 (g x1)) x2)) ((f x1) x2))
% Found ((eq_ref Prop) ((x0 (g x1)) x2)) as proof of (((eq Prop) ((x0 (g x1)) x2)) ((f x1) x2))
% Found (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2))) as proof of (((eq Prop) ((x0 (g x1)) x2)) ((f x1) x2))
% Found (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2))) as proof of (forall (x:fofType), (((eq Prop) ((x0 (g x1)) x)) ((f x1) x)))
% Found ((functional_extensionality01000 (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2)))) (((eq_ref (fofType->Prop)) (x0 (g x1))) P)) as proof of ((P (x0 (g x1)))->(P (f x1)))
% Found ((functional_extensionality01000 (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2)))) (((eq_ref (fofType->Prop)) (x0 (g x1))) P)) as proof of ((P (x0 (g x1)))->(P (f x1)))
% Found (((fun (x2:(forall (x:fofType), (((eq Prop) ((x0 (g x1)) x)) ((f x1) x))))=> ((functional_extensionality0100 x2) (fun (x4:(fofType->Prop))=> ((P (x0 (g x1)))->(P x4))))) (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2)))) (((eq_ref (fofType->Prop)) (x0 (g x1))) P)) as proof of ((P (x0 (g x1)))->(P (f x1)))
% Found (((fun (x2:(forall (x:fofType), (((eq Prop) ((x0 (g x1)) x)) ((f x1) x))))=> (((functional_extensionality010 (f x1)) x2) (fun (x4:(fofType->Prop))=> ((P (x0 (g x1)))->(P x4))))) (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2)))) (((eq_ref (fofType->Prop)) (x0 (g x1))) P)) as proof of ((P (x0 (g x1)))->(P (f x1)))
% Found (((fun (x2:(forall (x:fofType), (((eq Prop) ((x0 (g x1)) x)) ((f x1) x))))=> ((((functional_extensionality01 (x0 (g x1))) (f x1)) x2) (fun (x4:(fofType->Prop))=> ((P (x0 (g x1)))->(P x4))))) (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2)))) (((eq_ref (fofType->Prop)) (x0 (g x1))) P)) as proof of ((P (x0 (g x1)))->(P (f x1)))
% Found (((fun (x2:(forall (x:fofType), (((eq Prop) ((x0 (g x1)) x)) ((f x1) x))))=> (((((functional_extensionality0 Prop) (x0 (g x1))) (f x1)) x2) (fun (x4:(fofType->Prop))=> ((P (x0 (g x1)))->(P x4))))) (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2)))) (((eq_ref (fofType->Prop)) (x0 (g x1))) P)) as proof of ((P (x0 (g x1)))->(P (f x1)))
% Found (fun (P:((fofType->Prop)->Prop))=> (((fun (x2:(forall (x:fofType), (((eq Prop) ((x0 (g x1)) x)) ((f x1) x))))=> (((((functional_extensionality0 Prop) (x0 (g x1))) (f x1)) x2) (fun (x4:(fofType->Prop))=> ((P (x0 (g x1)))->(P x4))))) (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2)))) (((eq_ref (fofType->Prop)) (x0 (g x1))) P))) as proof of ((P (x0 (g x1)))->(P (f x1)))
% Found eq_ref000:=(eq_ref00 P):((P (x0 (g x1)))->(P (x0 (g x1))))
% Found (eq_ref00 P) as proof of (P0 (x0 (g x1)))
% Found ((eq_ref0 (x0 (g x1))) P) as proof of (P0 (x0 (g x1)))
% Found (((eq_ref (fofType->Prop)) (x0 (g x1))) P) as proof of (P0 (x0 (g x1)))
% Found (((eq_ref (fofType->Prop)) (x0 (g x1))) P) as proof of (P0 (x0 (g x1)))
% Found eq_ref000:=(eq_ref00 P):((P (x0 (g x1)))->(P (x0 (g x1))))
% Found (eq_ref00 P) as proof of (P0 (x0 (g x1)))
% Found ((eq_ref0 (x0 (g x1))) P) as proof of (P0 (x0 (g x1)))
% Found (((eq_ref (fofType->Prop)) (x0 (g x1))) P) as proof of (P0 (x0 (g x1)))
% Found (((eq_ref (fofType->Prop)) (x0 (g x1))) P) as proof of (P0 (x0 (g x1)))
% Found eq_ref00:=(eq_ref0 b):(((eq (fofType->Prop)) b) b)
% Found (eq_ref0 b) as proof of (((eq (fofType->Prop)) b) (f x1))
% Found ((eq_ref (fofType->Prop)) b) as proof of (((eq (fofType->Prop)) b) (f x1))
% Found ((eq_ref (fofType->Prop)) b) as proof of (((eq (fofType->Prop)) b) (f x1))
% Found ((eq_ref (fofType->Prop)) b) as proof of (((eq (fofType->Prop)) b) (f x1))
% Found eq_ref00:=(eq_ref0 (x0 (g x1))):(((eq (fofType->Prop)) (x0 (g x1))) (x0 (g x1)))
% Found (eq_ref0 (x0 (g x1))) as proof of (((eq (fofType->Prop)) (x0 (g x1))) b)
% Found ((eq_ref (fofType->Prop)) (x0 (g x1))) as proof of (((eq (fofType->Prop)) (x0 (g x1))) b)
% Found ((eq_ref (fofType->Prop)) (x0 (g x1))) as proof of (((eq (fofType->Prop)) (x0 (g x1))) b)
% Found ((eq_ref (fofType->Prop)) (x0 (g x1))) as proof of (((eq (fofType->Prop)) (x0 (g x1))) b)
% Found ((eq_trans0000 ((eq_ref (fofType->Prop)) (x0 (g x1)))) ((eq_ref (fofType->Prop)) b)) as proof of (forall (P:((fofType->Prop)->Prop)), ((P (x0 (g x1)))->(P (f x1))))
% Found (((eq_trans000 (f x1)) ((eq_ref (fofType->Prop)) (x0 (g x1)))) ((eq_ref (fofType->Prop)) b)) as proof of (forall (P:((fofType->Prop)->Prop)), ((P (x0 (g x1)))->(P (f x1))))
% Found ((((eq_trans00 (f x1)) (f x1)) ((eq_ref (fofType->Prop)) (x0 (g x1)))) ((eq_ref (fofType->Prop)) (f x1))) as proof of (forall (P:((fofType->Prop)->Prop)), ((P (x0 (g x1)))->(P (f x1))))
% Found (((((eq_trans0 (x0 (g x1))) (f x1)) (f x1)) ((eq_ref (fofType->Prop)) (x0 (g x1)))) ((eq_ref (fofType->Prop)) (f x1))) as proof of (forall (P:((fofType->Prop)->Prop)), ((P (x0 (g x1)))->(P (f x1))))
% Found ((((((eq_trans (fofType->Prop)) (x0 (g x1))) (f x1)) (f x1)) ((eq_ref (fofType->Prop)) (x0 (g x1)))) ((eq_ref (fofType->Prop)) (f x1))) as proof of (forall (P:((fofType->Prop)->Prop)), ((P (x0 (g x1)))->(P (f x1))))
% Found ((((((eq_trans (fofType->Prop)) (x0 (g x1))) (f x1)) (f x1)) ((eq_ref (fofType->Prop)) (x0 (g x1)))) ((eq_ref (fofType->Prop)) (f x1))) as proof of (forall (P:((fofType->Prop)->Prop)), ((P (x0 (g x1)))->(P (f x1))))
% Found eq_ref00:=(eq_ref0 b):(((eq (fofType->Prop)) b) b)
% Found (eq_ref0 b) as proof of (((eq (fofType->Prop)) b) (f x1))
% Found ((eq_ref (fofType->Prop)) b) as proof of (((eq (fofType->Prop)) b) (f x1))
% Found ((eq_ref (fofType->Prop)) b) as proof of (((eq (fofType->Prop)) b) (f x1))
% Found ((eq_ref (fofType->Prop)) b) as proof of (((eq (fofType->Prop)) b) (f x1))
% Found eta_expansion000:=(eta_expansion00 (x0 (g x1))):(((eq (fofType->Prop)) (x0 (g x1))) (fun (x:fofType)=> ((x0 (g x1)) x)))
% Found (eta_expansion00 (x0 (g x1))) as proof of (((eq (fofType->Prop)) (x0 (g x1))) b)
% Found ((eta_expansion0 Prop) (x0 (g x1))) as proof of (((eq (fofType->Prop)) (x0 (g x1))) b)
% Found (((eta_expansion fofType) Prop) (x0 (g x1))) as proof of (((eq (fofType->Prop)) (x0 (g x1))) b)
% Found (((eta_expansion fofType) Prop) (x0 (g x1))) as proof of (((eq (fofType->Prop)) (x0 (g x1))) b)
% Found (((eta_expansion fofType) Prop) (x0 (g x1))) as proof of (((eq (fofType->Prop)) (x0 (g x1))) b)
% Found eq_ref00:=(eq_ref0 (x0 (g x1))):(((eq (fofType->Prop)) (x0 (g x1))) (x0 (g x1)))
% Found (eq_ref0 (x0 (g x1))) as proof of (((eq (fofType->Prop)) (x0 (g x1))) b)
% Found ((eq_ref (fofType->Prop)) (x0 (g x1))) as proof of (((eq (fofType->Prop)) (x0 (g x1))) b)
% Found ((eq_ref (fofType->Prop)) (x0 (g x1))) as proof of (((eq (fofType->Prop)) (x0 (g x1))) b)
% Found ((eq_ref (fofType->Prop)) (x0 (g x1))) as proof of (((eq (fofType->Prop)) (x0 (g x1))) b)
% Found ((eq_trans0000 ((eq_ref (fofType->Prop)) (x0 (g x1)))) ((eq_ref (fofType->Prop)) b)) as proof of (forall (P:((fofType->Prop)->Prop)), ((P (x0 (g x1)))->(P (f x1))))
% Found (((eq_trans000 (f x1)) ((eq_ref (fofType->Prop)) (x0 (g x1)))) ((eq_ref (fofType->Prop)) b)) as proof of (forall (P:((fofType->Prop)->Prop)), ((P (x0 (g x1)))->(P (f x1))))
% Found ((((eq_trans00 (f x1)) (f x1)) ((eq_ref (fofType->Prop)) (x0 (g x1)))) ((eq_ref (fofType->Prop)) (f x1))) as proof of (forall (P:((fofType->Prop)->Prop)), ((P (x0 (g x1)))->(P (f x1))))
% Found (((((eq_trans0 (x0 (g x1))) (f x1)) (f x1)) ((eq_ref (fofType->Prop)) (x0 (g x1)))) ((eq_ref (fofType->Prop)) (f x1))) as proof of (forall (P:((fofType->Prop)->Prop)), ((P (x0 (g x1)))->(P (f x1))))
% Found ((((((eq_trans (fofType->Prop)) (x0 (g x1))) (f x1)) (f x1)) ((eq_ref (fofType->Prop)) (x0 (g x1)))) ((eq_ref (fofType->Prop)) (f x1))) as proof of (forall (P:((fofType->Prop)->Prop)), ((P (x0 (g x1)))->(P (f x1))))
% Found ((((((eq_trans (fofType->Prop)) (x0 (g x1))) (f x1)) (f x1)) ((eq_ref (fofType->Prop)) (x0 (g x1)))) ((eq_ref (fofType->Prop)) (f x1))) as proof of (forall (P:((fofType->Prop)->Prop)), ((P (x0 (g x1)))->(P (f x1))))
% Found eq_ref00:=(eq_ref0 b):(((eq (fofType->Prop)) b) b)
% Found (eq_ref0 b) as proof of (((eq (fofType->Prop)) b) (f x1))
% Found ((eq_ref (fofType->Prop)) b) as proof of (((eq (fofType->Prop)) b) (f x1))
% Found ((eq_ref (fofType->Prop)) b) as proof of (((eq (fofType->Prop)) b) (f x1))
% Found ((eq_ref (fofType->Prop)) b) as proof of (((eq (fofType->Prop)) b) (f x1))
% Found eta_expansion000:=(eta_expansion00 (x0 (g x1))):(((eq (fofType->Prop)) (x0 (g x1))) (fun (x:fofType)=> ((x0 (g x1)) x)))
% Found (eta_expansion00 (x0 (g x1))) as proof of (((eq (fofType->Prop)) (x0 (g x1))) b)
% Found ((eta_expansion0 Prop) (x0 (g x1))) as proof of (((eq (fofType->Prop)) (x0 (g x1))) b)
% Found (((eta_expansion fofType) Prop) (x0 (g x1))) as proof of (((eq (fofType->Prop)) (x0 (g x1))) b)
% Found (((eta_expansion fofType) Prop) (x0 (g x1))) as proof of (((eq (fofType->Prop)) (x0 (g x1))) b)
% Found (((eta_expansion fofType) Prop) (x0 (g x1))) as proof of (((eq (fofType->Prop)) (x0 (g x1))) b)
% Found eq_ref00:=(eq_ref0 (x0 (g x1))):(((eq (fofType->Prop)) (x0 (g x1))) (x0 (g x1)))
% Found (eq_ref0 (x0 (g x1))) as proof of (((eq (fofType->Prop)) (x0 (g x1))) b)
% Found ((eq_ref (fofType->Prop)) (x0 (g x1))) as proof of (((eq (fofType->Prop)) (x0 (g x1))) b)
% Found ((eq_ref (fofType->Prop)) (x0 (g x1))) as proof of (((eq (fofType->Prop)) (x0 (g x1))) b)
% Found ((eq_ref (fofType->Prop)) (x0 (g x1))) as proof of (((eq (fofType->Prop)) (x0 (g x1))) b)
% Found ((eq_trans0000 ((eq_ref (fofType->Prop)) (x0 (g x1)))) ((eq_ref (fofType->Prop)) b)) as proof of (((eq (fofType->Prop)) (x0 (g x1))) (f x1))
% Found (((eq_trans000 (f x1)) ((eq_ref (fofType->Prop)) (x0 (g x1)))) ((eq_ref (fofType->Prop)) b)) as proof of (((eq (fofType->Prop)) (x0 (g x1))) (f x1))
% Found ((((eq_trans00 (f x1)) (f x1)) ((eq_ref (fofType->Prop)) (x0 (g x1)))) ((eq_ref (fofType->Prop)) (f x1))) as proof of (((eq (fofType->Prop)) (x0 (g x1))) (f x1))
% Found (((((eq_trans0 (x0 (g x1))) (f x1)) (f x1)) ((eq_ref (fofType->Prop)) (x0 (g x1)))) ((eq_ref (fofType->Prop)) (f x1))) as proof of (((eq (fofType->Prop)) (x0 (g x1))) (f x1))
% Found ((((((eq_trans (fofType->Prop)) (x0 (g x1))) (f x1)) (f x1)) ((eq_ref (fofType->Prop)) (x0 (g x1)))) ((eq_ref (fofType->Prop)) (f x1))) as proof of (((eq (fofType->Prop)) (x0 (g x1))) (f x1))
% Found eq_ref00:=(eq_ref0 b):(((eq (fofType->Prop)) b) b)
% Found (eq_ref0 b) as proof of (((eq (fofType->Prop)) b) (f x1))
% Found ((eq_ref (fofType->Prop)) b) as proof of (((eq (fofType->Prop)) b) (f x1))
% Found ((eq_ref (fofType->Prop)) b) as proof of (((eq (fofType->Prop)) b) (f x1))
% Found ((eq_ref (fofType->Prop)) b) as proof of (((eq (fofType->Prop)) b) (f x1))
% Found eq_ref00:=(eq_ref0 (x0 (g x1))):(((eq (fofType->Prop)) (x0 (g x1))) (x0 (g x1)))
% Found (eq_ref0 (x0 (g x1))) as proof of (((eq (fofType->Prop)) (x0 (g x1))) b)
% Found ((eq_ref (fofType->Prop)) (x0 (g x1))) as proof of (((eq (fofType->Prop)) (x0 (g x1))) b)
% Found ((eq_ref (fofType->Prop)) (x0 (g x1))) as proof of (((eq (fofType->Prop)) (x0 (g x1))) b)
% Found ((eq_ref (fofType->Prop)) (x0 (g x1))) as proof of (((eq (fofType->Prop)) (x0 (g x1))) b)
% Found ((eq_trans0000 ((eq_ref (fofType->Prop)) (x0 (g x1)))) ((eq_ref (fofType->Prop)) b)) as proof of (((eq (fofType->Prop)) (x0 (g x1))) (f x1))
% Found (((eq_trans000 (f x1)) ((eq_ref (fofType->Prop)) (x0 (g x1)))) ((eq_ref (fofType->Prop)) b)) as proof of (((eq (fofType->Prop)) (x0 (g x1))) (f x1))
% Found ((((eq_trans00 (f x1)) (f x1)) ((eq_ref (fofType->Prop)) (x0 (g x1)))) ((eq_ref (fofType->Prop)) (f x1))) as proof of (((eq (fofType->Prop)) (x0 (g x1))) (f x1))
% Found (((((eq_trans0 (x0 (g x1))) (f x1)) (f x1)) ((eq_ref (fofType->Prop)) (x0 (g x1)))) ((eq_ref (fofType->Prop)) (f x1))) as proof of (((eq (fofType->Prop)) (x0 (g x1))) (f x1))
% Found ((((((eq_trans (fofType->Prop)) (x0 (g x1))) (f x1)) (f x1)) ((eq_ref (fofType->Prop)) (x0 (g x1)))) ((eq_ref (fofType->Prop)) (f x1))) as proof of (((eq (fofType->Prop)) (x0 (g x1))) (f x1))
% Found eq_ref00:=(eq_ref0 (g x1)):(((eq (fofType->Prop)) (g x1)) (g x1))
% Found (eq_ref0 (g x1)) as proof of (((eq (fofType->Prop)) (g x1)) (g x1))
% Found ((eq_ref (fofType->Prop)) (g x1)) as proof of (((eq (fofType->Prop)) (g x1)) (g x1))
% Found ((eq_ref (fofType->Prop)) (g x1)) as proof of (((eq (fofType->Prop)) (g x1)) (g x1))
% Found (x200 ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P ((x0 (g x1)) y))->(P ((f x1) y)))
% Found (x200 ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P ((x0 (g x1)) y))->(P ((f x1) y)))
% Found ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> ((x20 x3) (fun (x4:(fofType->Prop))=> (P (x4 y))))) ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P ((x0 (g x1)) y))->(P ((f x1) y)))
% Found ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> (((x2 x1) x3) (fun (x4:(fofType->Prop))=> (P (x4 y))))) ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P ((x0 (g x1)) y))->(P ((f x1) y)))
% Found ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> ((((fun (Xx:fofType)=> ((x Xx) x1)) x1) x3) (fun (x4:(fofType->Prop))=> (P (x4 y))))) ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P ((x0 (g x1)) y))->(P ((f x1) y)))
% Found ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> ((((fun (Xx:fofType)=> ((x Xx) x1)) x1) x3) (fun (x4:(fofType->Prop))=> (P (x4 y))))) ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P ((x0 (g x1)) y))->(P ((f x1) y)))
% Found (fun (P:(Prop->Prop))=> ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> ((((fun (Xx:fofType)=> ((x Xx) x1)) x1) x3) (fun (x4:(fofType->Prop))=> (P (x4 y))))) ((eq_ref (fofType->Prop)) (g x1)))) as proof of ((P ((x0 (g x1)) y))->(P ((f x1) y)))
% Found (fun (P:(Prop->Prop))=> ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> ((((fun (Xx:fofType)=> ((x Xx) x1)) x1) x3) (fun (x4:(fofType->Prop))=> (P (x4 y))))) ((eq_ref (fofType->Prop)) (g x1)))) as proof of (forall (P:(Prop->Prop)), ((P ((x0 (g x1)) y))->(P ((f x1) y))))
% Found (fun (y:fofType) (P:(Prop->Prop))=> ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> ((((fun (Xx:fofType)=> ((x Xx) x1)) x1) x3) (fun (x4:(fofType->Prop))=> (P (x4 y))))) ((eq_ref (fofType->Prop)) (g x1)))) as proof of (((eq Prop) ((x0 (g x1)) y)) ((f x1) y))
% Found eq_ref00:=(eq_ref0 (g x1)):(((eq (fofType->Prop)) (g x1)) (g x1))
% Found (eq_ref0 (g x1)) as proof of (((eq (fofType->Prop)) (g x1)) (g x1))
% Found ((eq_ref (fofType->Prop)) (g x1)) as proof of (((eq (fofType->Prop)) (g x1)) (g x1))
% Found ((eq_ref (fofType->Prop)) (g x1)) as proof of (((eq (fofType->Prop)) (g x1)) (g x1))
% Found (x200 ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P ((x0 (g x1)) y))->(P ((f x1) y)))
% Found (x200 ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P ((x0 (g x1)) y))->(P ((f x1) y)))
% Found ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> ((x20 x3) (fun (x4:(fofType->Prop))=> (P ((x0 (g x1)) y))))) ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P ((x0 (g x1)) y))->(P ((f x1) y)))
% Found ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> (((x2 x1) x3) (fun (x4:(fofType->Prop))=> (P ((x0 (g x1)) y))))) ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P ((x0 (g x1)) y))->(P ((f x1) y)))
% Found ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> ((((fun (Xx:fofType)=> ((x Xx) x1)) x1) x3) (fun (x4:(fofType->Prop))=> (P ((x0 (g x1)) y))))) ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P ((x0 (g x1)) y))->(P ((f x1) y)))
% Found ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> ((((fun (Xx:fofType)=> ((x Xx) x1)) x1) x3) (fun (x4:(fofType->Prop))=> (P ((x0 (g x1)) y))))) ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P ((x0 (g x1)) y))->(P ((f x1) y)))
% Found (fun (P:(Prop->Prop))=> ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> ((((fun (Xx:fofType)=> ((x Xx) x1)) x1) x3) (fun (x4:(fofType->Prop))=> (P ((x0 (g x1)) y))))) ((eq_ref (fofType->Prop)) (g x1)))) as proof of ((P ((x0 (g x1)) y))->(P ((f x1) y)))
% Found (fun (P:(Prop->Prop))=> ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> ((((fun (Xx:fofType)=> ((x Xx) x1)) x1) x3) (fun (x4:(fofType->Prop))=> (P ((x0 (g x1)) y))))) ((eq_ref (fofType->Prop)) (g x1)))) as proof of (forall (P:(Prop->Prop)), ((P ((x0 (g x1)) y))->(P ((f x1) y))))
% Found (fun (y:fofType) (P:(Prop->Prop))=> ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> ((((fun (Xx:fofType)=> ((x Xx) x1)) x1) x3) (fun (x4:(fofType->Prop))=> (P ((x0 (g x1)) y))))) ((eq_ref (fofType->Prop)) (g x1)))) as proof of (((eq Prop) ((x0 (g x1)) y)) ((f x1) y))
% Found eq_ref00:=(eq_ref0 (g x1)):(((eq (fofType->Prop)) (g x1)) (g x1))
% Found (eq_ref0 (g x1)) as proof of (((eq (fofType->Prop)) (g x1)) (g x1))
% Found ((eq_ref (fofType->Prop)) (g x1)) as proof of (((eq (fofType->Prop)) (g x1)) (g x1))
% Found ((eq_ref (fofType->Prop)) (g x1)) as proof of (((eq (fofType->Prop)) (g x1)) (g x1))
% Found (x200 ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P ((x0 (g x1)) y))->(P ((f x1) y)))
% Found (x200 ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P ((x0 (g x1)) y))->(P ((f x1) y)))
% Found ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> ((x20 x3) (fun (x4:(fofType->Prop))=> (P (x4 y))))) ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P ((x0 (g x1)) y))->(P ((f x1) y)))
% Found ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> (((x2 x1) x3) (fun (x4:(fofType->Prop))=> (P (x4 y))))) ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P ((x0 (g x1)) y))->(P ((f x1) y)))
% Found ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> (((x2 x1) x3) (fun (x4:(fofType->Prop))=> (P (x4 y))))) ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P ((x0 (g x1)) y))->(P ((f x1) y)))
% Found ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> ((((fun (Xx:fofType)=> ((x Xx) x1)) x1) x3) (fun (x4:(fofType->Prop))=> (P (x4 y))))) ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P ((x0 (g x1)) y))->(P ((f x1) y)))
% Found (fun (P:(Prop->Prop))=> ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> ((((fun (Xx:fofType)=> ((x Xx) x1)) x1) x3) (fun (x4:(fofType->Prop))=> (P (x4 y))))) ((eq_ref (fofType->Prop)) (g x1)))) as proof of ((P ((x0 (g x1)) y))->(P ((f x1) y)))
% Found (fun (P:(Prop->Prop))=> ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> ((((fun (Xx:fofType)=> ((x Xx) x1)) x1) x3) (fun (x4:(fofType->Prop))=> (P (x4 y))))) ((eq_ref (fofType->Prop)) (g x1)))) as proof of (forall (P:(Prop->Prop)), ((P ((x0 (g x1)) y))->(P ((f x1) y))))
% Found (fun (y:fofType) (P:(Prop->Prop))=> ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> ((((fun (Xx:fofType)=> ((x Xx) x1)) x1) x3) (fun (x4:(fofType->Prop))=> (P (x4 y))))) ((eq_ref (fofType->Prop)) (g x1)))) as proof of (((eq Prop) ((x0 (g x1)) y)) ((f x1) y))
% Found eq_ref00:=(eq_ref0 (g x1)):(((eq (fofType->Prop)) (g x1)) (g x1))
% Found (eq_ref0 (g x1)) as proof of (((eq (fofType->Prop)) (g x1)) (g x1))
% Found ((eq_ref (fofType->Prop)) (g x1)) as proof of (((eq (fofType->Prop)) (g x1)) (g x1))
% Found ((eq_ref (fofType->Prop)) (g x1)) as proof of (((eq (fofType->Prop)) (g x1)) (g x1))
% Found (x200 ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P ((x0 (g x1)) y))->(P ((f x1) y)))
% Found (x200 ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P ((x0 (g x1)) y))->(P ((f x1) y)))
% Found ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> ((x20 x3) (fun (x4:(fofType->Prop))=> (P ((x0 (g x1)) y))))) ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P ((x0 (g x1)) y))->(P ((f x1) y)))
% Found ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> (((x2 x1) x3) (fun (x4:(fofType->Prop))=> (P ((x0 (g x1)) y))))) ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P ((x0 (g x1)) y))->(P ((f x1) y)))
% Found ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> (((x2 x1) x3) (fun (x4:(fofType->Prop))=> (P ((x0 (g x1)) y))))) ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P ((x0 (g x1)) y))->(P ((f x1) y)))
% Found ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> ((((fun (Xx:fofType)=> ((x Xx) x1)) x1) x3) (fun (x4:(fofType->Prop))=> (P ((x0 (g x1)) y))))) ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P ((x0 (g x1)) y))->(P ((f x1) y)))
% Found (fun (P:(Prop->Prop))=> ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> ((((fun (Xx:fofType)=> ((x Xx) x1)) x1) x3) (fun (x4:(fofType->Prop))=> (P ((x0 (g x1)) y))))) ((eq_ref (fofType->Prop)) (g x1)))) as proof of ((P ((x0 (g x1)) y))->(P ((f x1) y)))
% Found (fun (P:(Prop->Prop))=> ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> ((((fun (Xx:fofType)=> ((x Xx) x1)) x1) x3) (fun (x4:(fofType->Prop))=> (P ((x0 (g x1)) y))))) ((eq_ref (fofType->Prop)) (g x1)))) as proof of (forall (P:(Prop->Prop)), ((P ((x0 (g x1)) y))->(P ((f x1) y))))
% Found (fun (y:fofType) (P:(Prop->Prop))=> ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> ((((fun (Xx:fofType)=> ((x Xx) x1)) x1) x3) (fun (x4:(fofType->Prop))=> (P ((x0 (g x1)) y))))) ((eq_ref (fofType->Prop)) (g x1)))) as proof of (((eq Prop) ((x0 (g x1)) y)) ((f x1) y))
% Found eq_ref000:=(eq_ref00 P):((P f)->(P f))
% Found (eq_ref00 P) as proof of (P0 f)
% Found ((eq_ref0 f) P) as proof of (P0 f)
% Found (((eq_ref (fofType->(fofType->Prop))) f) P) as proof of (P0 f)
% Found (((eq_ref (fofType->(fofType->Prop))) f) P) as proof of (P0 f)
% Found eq_ref000:=(eq_ref00 P):((P f)->(P f))
% Found (eq_ref00 P) as proof of (P0 f)
% Found ((eq_ref0 f) P) as proof of (P0 f)
% Found (((eq_ref (fofType->(fofType->Prop))) f) P) as proof of (P0 f)
% Found (((eq_ref (fofType->(fofType->Prop))) f) P) as proof of (P0 f)
% Found eq_ref00:=(eq_ref0 b0):(((eq (fofType->(fofType->Prop))) b0) b0)
% Found (eq_ref0 b0) as proof of (((eq (fofType->(fofType->Prop))) b0) b)
% Found ((eq_ref (fofType->(fofType->Prop))) b0) as proof of (((eq (fofType->(fofType->Prop))) b0) b)
% Found ((eq_ref (fofType->(fofType->Prop))) b0) as proof of (((eq (fofType->(fofType->Prop))) b0) b)
% Found ((eq_ref (fofType->(fofType->Prop))) b0) as proof of (((eq (fofType->(fofType->Prop))) b0) b)
% Found eta_expansion000:=(eta_expansion00 (fun (Xx:fofType)=> (x0 (g Xx)))):(((eq (fofType->(fofType->Prop))) (fun (Xx:fofType)=> (x0 (g Xx)))) (fun (x:fofType)=> (x0 (g x))))
% Found (eta_expansion00 (fun (Xx:fofType)=> (x0 (g Xx)))) as proof of (((eq (fofType->(fofType->Prop))) (fun (Xx:fofType)=> (x0 (g Xx)))) b0)
% Found ((eta_expansion0 (fofType->Prop)) (fun (Xx:fofType)=> (x0 (g Xx)))) as proof of (((eq (fofType->(fofType->Prop))) (fun (Xx:fofType)=> (x0 (g Xx)))) b0)
% Found (((eta_expansion fofType) (fofType->Prop)) (fun (Xx:fofType)=> (x0 (g Xx)))) as proof of (((eq (fofType->(fofType->Prop))) (fun (Xx:fofType)=> (x0 (g Xx)))) b0)
% Found (((eta_expansion fofType) (fofType->Prop)) (fun (Xx:fofType)=> (x0 (g Xx)))) as proof of (((eq (fofType->(fofType->Prop))) (fun (Xx:fofType)=> (x0 (g Xx)))) b0)
% Found (((eta_expansion fofType) (fofType->Prop)) (fun (Xx:fofType)=> (x0 (g Xx)))) as proof of (((eq (fofType->(fofType->Prop))) (fun (Xx:fofType)=> (x0 (g Xx)))) b0)
% Found eq_ref00:=(eq_ref0 (g x1)):(((eq (fofType->Prop)) (g x1)) (g x1))
% Found (eq_ref0 (g x1)) as proof of (((eq (fofType->Prop)) (g x1)) (g x1))
% Found ((eq_ref (fofType->Prop)) (g x1)) as proof of (((eq (fofType->Prop)) (g x1)) (g x1))
% Found ((eq_ref (fofType->Prop)) (g x1)) as proof of (((eq (fofType->Prop)) (g x1)) (g x1))
% Found (x200 ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P ((x0 (g x1)) y))->(P ((f x1) y)))
% Found (x200 ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P ((x0 (g x1)) y))->(P ((f x1) y)))
% Found ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> ((x20 x3) (fun (x4:(fofType->Prop))=> (P ((x0 (g x1)) y))))) ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P ((x0 (g x1)) y))->(P ((f x1) y)))
% Found ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> (((x2 x1) x3) (fun (x4:(fofType->Prop))=> (P ((x0 (g x1)) y))))) ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P ((x0 (g x1)) y))->(P ((f x1) y)))
% Found ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> ((((fun (Xx:fofType)=> ((x Xx) x1)) x1) x3) (fun (x4:(fofType->Prop))=> (P ((x0 (g x1)) y))))) ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P ((x0 (g x1)) y))->(P ((f x1) y)))
% Found ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> ((((fun (Xx:fofType)=> ((x Xx) x1)) x1) x3) (fun (x4:(fofType->Prop))=> (P ((x0 (g x1)) y))))) ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P ((x0 (g x1)) y))->(P ((f x1) y)))
% Found (fun (P:(Prop->Prop))=> ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> ((((fun (Xx:fofType)=> ((x Xx) x1)) x1) x3) (fun (x4:(fofType->Prop))=> (P ((x0 (g x1)) y))))) ((eq_ref (fofType->Prop)) (g x1)))) as proof of ((P ((x0 (g x1)) y))->(P ((f x1) y)))
% Found (fun (y:fofType) (P:(Prop->Prop))=> ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> ((((fun (Xx:fofType)=> ((x Xx) x1)) x1) x3) (fun (x4:(fofType->Prop))=> (P ((x0 (g x1)) y))))) ((eq_ref (fofType->Prop)) (g x1)))) as proof of (((eq Prop) ((x0 (g x1)) y)) ((f x1) y))
% Found eq_ref00:=(eq_ref0 (g x1)):(((eq (fofType->Prop)) (g x1)) (g x1))
% Found (eq_ref0 (g x1)) as proof of (((eq (fofType->Prop)) (g x1)) (g x1))
% Found ((eq_ref (fofType->Prop)) (g x1)) as proof of (((eq (fofType->Prop)) (g x1)) (g x1))
% Found ((eq_ref (fofType->Prop)) (g x1)) as proof of (((eq (fofType->Prop)) (g x1)) (g x1))
% Found (x200 ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P ((x0 (g x1)) y))->(P ((f x1) y)))
% Found (x200 ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P ((x0 (g x1)) y))->(P ((f x1) y)))
% Found ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> ((x20 x3) (fun (x4:(fofType->Prop))=> (P (x4 y))))) ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P ((x0 (g x1)) y))->(P ((f x1) y)))
% Found ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> (((x2 x1) x3) (fun (x4:(fofType->Prop))=> (P (x4 y))))) ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P ((x0 (g x1)) y))->(P ((f x1) y)))
% Found ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> ((((fun (Xx:fofType)=> ((x Xx) x1)) x1) x3) (fun (x4:(fofType->Prop))=> (P (x4 y))))) ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P ((x0 (g x1)) y))->(P ((f x1) y)))
% Found ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> ((((fun (Xx:fofType)=> ((x Xx) x1)) x1) x3) (fun (x4:(fofType->Prop))=> (P (x4 y))))) ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P ((x0 (g x1)) y))->(P ((f x1) y)))
% Found (fun (P:(Prop->Prop))=> ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> ((((fun (Xx:fofType)=> ((x Xx) x1)) x1) x3) (fun (x4:(fofType->Prop))=> (P (x4 y))))) ((eq_ref (fofType->Prop)) (g x1)))) as proof of ((P ((x0 (g x1)) y))->(P ((f x1) y)))
% Found (fun (y:fofType) (P:(Prop->Prop))=> ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> ((((fun (Xx:fofType)=> ((x Xx) x1)) x1) x3) (fun (x4:(fofType->Prop))=> (P (x4 y))))) ((eq_ref (fofType->Prop)) (g x1)))) as proof of (((eq Prop) ((x0 (g x1)) y)) ((f x1) y))
% Found eq_ref00:=(eq_ref0 (g x1)):(((eq (fofType->Prop)) (g x1)) (g x1))
% Found (eq_ref0 (g x1)) as proof of (((eq (fofType->Prop)) (g x1)) (g x1))
% Found ((eq_ref (fofType->Prop)) (g x1)) as proof of (((eq (fofType->Prop)) (g x1)) (g x1))
% Found ((eq_ref (fofType->Prop)) (g x1)) as proof of (((eq (fofType->Prop)) (g x1)) (g x1))
% Found (x200 ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P ((x0 (g x1)) y))->(P ((f x1) y)))
% Found (x200 ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P ((x0 (g x1)) y))->(P ((f x1) y)))
% Found ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> ((x20 x3) (fun (x4:(fofType->Prop))=> (P ((x0 (g x1)) y))))) ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P ((x0 (g x1)) y))->(P ((f x1) y)))
% Found ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> (((x2 x1) x3) (fun (x4:(fofType->Prop))=> (P ((x0 (g x1)) y))))) ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P ((x0 (g x1)) y))->(P ((f x1) y)))
% Found ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> (((x2 x1) x3) (fun (x4:(fofType->Prop))=> (P ((x0 (g x1)) y))))) ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P ((x0 (g x1)) y))->(P ((f x1) y)))
% Found ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> ((((fun (Xx:fofType)=> ((x Xx) x1)) x1) x3) (fun (x4:(fofType->Prop))=> (P ((x0 (g x1)) y))))) ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P ((x0 (g x1)) y))->(P ((f x1) y)))
% Found (fun (P:(Prop->Prop))=> ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> ((((fun (Xx:fofType)=> ((x Xx) x1)) x1) x3) (fun (x4:(fofType->Prop))=> (P ((x0 (g x1)) y))))) ((eq_ref (fofType->Prop)) (g x1)))) as proof of ((P ((x0 (g x1)) y))->(P ((f x1) y)))
% Found (fun (y:fofType) (P:(Prop->Prop))=> ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> ((((fun (Xx:fofType)=> ((x Xx) x1)) x1) x3) (fun (x4:(fofType->Prop))=> (P ((x0 (g x1)) y))))) ((eq_ref (fofType->Prop)) (g x1)))) as proof of (((eq Prop) ((x0 (g x1)) y)) ((f x1) y))
% Found eq_ref00:=(eq_ref0 (g x1)):(((eq (fofType->Prop)) (g x1)) (g x1))
% Found (eq_ref0 (g x1)) as proof of (((eq (fofType->Prop)) (g x1)) (g x1))
% Found ((eq_ref (fofType->Prop)) (g x1)) as proof of (((eq (fofType->Prop)) (g x1)) (g x1))
% Found ((eq_ref (fofType->Prop)) (g x1)) as proof of (((eq (fofType->Prop)) (g x1)) (g x1))
% Found (x200 ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P ((x0 (g x1)) y))->(P ((f x1) y)))
% Found (x200 ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P ((x0 (g x1)) y))->(P ((f x1) y)))
% Found ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> ((x20 x3) (fun (x4:(fofType->Prop))=> (P (x4 y))))) ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P ((x0 (g x1)) y))->(P ((f x1) y)))
% Found ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> (((x2 x1) x3) (fun (x4:(fofType->Prop))=> (P (x4 y))))) ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P ((x0 (g x1)) y))->(P ((f x1) y)))
% Found ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> (((x2 x1) x3) (fun (x4:(fofType->Prop))=> (P (x4 y))))) ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P ((x0 (g x1)) y))->(P ((f x1) y)))
% Found ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> ((((fun (Xx:fofType)=> ((x Xx) x1)) x1) x3) (fun (x4:(fofType->Prop))=> (P (x4 y))))) ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P ((x0 (g x1)) y))->(P ((f x1) y)))
% Found (fun (P:(Prop->Prop))=> ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> ((((fun (Xx:fofType)=> ((x Xx) x1)) x1) x3) (fun (x4:(fofType->Prop))=> (P (x4 y))))) ((eq_ref (fofType->Prop)) (g x1)))) as proof of ((P ((x0 (g x1)) y))->(P ((f x1) y)))
% Found (fun (y:fofType) (P:(Prop->Prop))=> ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> ((((fun (Xx:fofType)=> ((x Xx) x1)) x1) x3) (fun (x4:(fofType->Prop))=> (P (x4 y))))) ((eq_ref (fofType->Prop)) (g x1)))) as proof of (((eq Prop) ((x0 (g x1)) y)) ((f x1) y))
% Found eq_ref00:=(eq_ref0 ((x0 (g x1)) x2)):(((eq Prop) ((x0 (g x1)) x2)) ((x0 (g x1)) x2))
% Found (eq_ref0 ((x0 (g x1)) x2)) as proof of (((eq Prop) ((x0 (g x1)) x2)) ((f x1) x2))
% Found ((eq_ref Prop) ((x0 (g x1)) x2)) as proof of (((eq Prop) ((x0 (g x1)) x2)) ((f x1) x2))
% Found ((eq_ref Prop) ((x0 (g x1)) x2)) as proof of (((eq Prop) ((x0 (g x1)) x2)) ((f x1) x2))
% Found (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2))) as proof of (((eq Prop) ((x0 (g x1)) x2)) ((f x1) x2))
% Found (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2))) as proof of (forall (x:fofType), (((eq Prop) ((x0 (g x1)) x)) ((f x1) x)))
% Found (functional_extensionality00000 (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2)))) as proof of ((P (x0 (g x1)))->(P (f x1)))
% Found (functional_extensionality00000 (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2)))) as proof of ((P (x0 (g x1)))->(P (f x1)))
% Found ((fun (x2:(forall (x:fofType), (((eq Prop) ((x0 (g x1)) x)) ((f x1) x))))=> ((functional_extensionality0000 x2) P)) (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2)))) as proof of ((P (x0 (g x1)))->(P (f x1)))
% Found ((fun (x2:(forall (x:fofType), (((eq Prop) ((x0 (g x1)) x)) ((f x1) x))))=> (((functional_extensionality000 (f x1)) x2) P)) (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2)))) as proof of ((P (x0 (g x1)))->(P (f x1)))
% Found ((fun (x2:(forall (x:fofType), (((eq Prop) ((x0 (g x1)) x)) ((f x1) x))))=> ((((functional_extensionality00 (x0 (g x1))) (f x1)) x2) P)) (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2)))) as proof of ((P (x0 (g x1)))->(P (f x1)))
% Found ((fun (x2:(forall (x:fofType), (((eq Prop) ((x0 (g x1)) x)) ((f x1) x))))=> (((((functional_extensionality0 Prop) (x0 (g x1))) (f x1)) x2) P)) (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2)))) as proof of ((P (x0 (g x1)))->(P (f x1)))
% Found ((fun (x2:(forall (x:fofType), (((eq Prop) ((x0 (g x1)) x)) ((f x1) x))))=> ((((((functional_extensionality fofType) Prop) (x0 (g x1))) (f x1)) x2) P)) (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2)))) as proof of ((P (x0 (g x1)))->(P (f x1)))
% Found (fun (P:((fofType->Prop)->Prop))=> ((fun (x2:(forall (x:fofType), (((eq Prop) ((x0 (g x1)) x)) ((f x1) x))))=> ((((((functional_extensionality fofType) Prop) (x0 (g x1))) (f x1)) x2) P)) (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2))))) as proof of ((P (x0 (g x1)))->(P (f x1)))
% Found (fun (P:((fofType->Prop)->Prop))=> ((fun (x2:(forall (x:fofType), (((eq Prop) ((x0 (g x1)) x)) ((f x1) x))))=> ((((((functional_extensionality fofType) Prop) (x0 (g x1))) (f x1)) x2) P)) (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2))))) as proof of (forall (P:((fofType->Prop)->Prop)), ((P (x0 (g x1)))->(P (f x1))))
% Found eq_ref00:=(eq_ref0 ((x0 (g x1)) x2)):(((eq Prop) ((x0 (g x1)) x2)) ((x0 (g x1)) x2))
% Found (eq_ref0 ((x0 (g x1)) x2)) as proof of (((eq Prop) ((x0 (g x1)) x2)) ((f x1) x2))
% Found ((eq_ref Prop) ((x0 (g x1)) x2)) as proof of (((eq Prop) ((x0 (g x1)) x2)) ((f x1) x2))
% Found ((eq_ref Prop) ((x0 (g x1)) x2)) as proof of (((eq Prop) ((x0 (g x1)) x2)) ((f x1) x2))
% Found (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2))) as proof of (((eq Prop) ((x0 (g x1)) x2)) ((f x1) x2))
% Found (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2))) as proof of (forall (x:fofType), (((eq Prop) ((x0 (g x1)) x)) ((f x1) x)))
% Found (functional_extensionality_dep00000 (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2)))) as proof of ((P (x0 (g x1)))->(P (f x1)))
% Found (functional_extensionality_dep00000 (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2)))) as proof of ((P (x0 (g x1)))->(P (f x1)))
% Found ((fun (x2:(forall (x:fofType), (((eq Prop) ((x0 (g x1)) x)) ((f x1) x))))=> ((functional_extensionality_dep0000 x2) P)) (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2)))) as proof of ((P (x0 (g x1)))->(P (f x1)))
% Found ((fun (x2:(forall (x:fofType), (((eq Prop) ((x0 (g x1)) x)) ((f x1) x))))=> (((functional_extensionality_dep000 (f x1)) x2) P)) (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2)))) as proof of ((P (x0 (g x1)))->(P (f x1)))
% Found ((fun (x2:(forall (x:fofType), (((eq Prop) ((x0 (g x1)) x)) ((f x1) x))))=> ((((functional_extensionality_dep00 (x0 (g x1))) (f x1)) x2) P)) (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2)))) as proof of ((P (x0 (g x1)))->(P (f x1)))
% Found ((fun (x2:(forall (x:fofType), (((eq Prop) ((x0 (g x1)) x)) ((f x1) x))))=> (((((functional_extensionality_dep0 (fun (x4:fofType)=> Prop)) (x0 (g x1))) (f x1)) x2) P)) (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2)))) as proof of ((P (x0 (g x1)))->(P (f x1)))
% Found ((fun (x2:(forall (x:fofType), (((eq Prop) ((x0 (g x1)) x)) ((f x1) x))))=> ((((((functional_extensionality_dep fofType) (fun (x4:fofType)=> Prop)) (x0 (g x1))) (f x1)) x2) P)) (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2)))) as proof of ((P (x0 (g x1)))->(P (f x1)))
% Found (fun (P:((fofType->Prop)->Prop))=> ((fun (x2:(forall (x:fofType), (((eq Prop) ((x0 (g x1)) x)) ((f x1) x))))=> ((((((functional_extensionality_dep fofType) (fun (x4:fofType)=> Prop)) (x0 (g x1))) (f x1)) x2) P)) (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2))))) as proof of ((P (x0 (g x1)))->(P (f x1)))
% Found (fun (P:((fofType->Prop)->Prop))=> ((fun (x2:(forall (x:fofType), (((eq Prop) ((x0 (g x1)) x)) ((f x1) x))))=> ((((((functional_extensionality_dep fofType) (fun (x4:fofType)=> Prop)) (x0 (g x1))) (f x1)) x2) P)) (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2))))) as proof of (forall (P:((fofType->Prop)->Prop)), ((P (x0 (g x1)))->(P (f x1))))
% Found eq_ref000:=(eq_ref00 P):((P (x0 (g x1)))->(P (x0 (g x1))))
% Found (eq_ref00 P) as proof of (P0 (x0 (g x1)))
% Found ((eq_ref0 (x0 (g x1))) P) as proof of (P0 (x0 (g x1)))
% Found (((eq_ref (fofType->Prop)) (x0 (g x1))) P) as proof of (P0 (x0 (g x1)))
% Found (((eq_ref (fofType->Prop)) (x0 (g x1))) P) as proof of (P0 (x0 (g x1)))
% Found eq_ref00:=(eq_ref0 ((x0 (g x1)) x2)):(((eq Prop) ((x0 (g x1)) x2)) ((x0 (g x1)) x2))
% Found (eq_ref0 ((x0 (g x1)) x2)) as proof of (((eq Prop) ((x0 (g x1)) x2)) ((f x1) x2))
% Found ((eq_ref Prop) ((x0 (g x1)) x2)) as proof of (((eq Prop) ((x0 (g x1)) x2)) ((f x1) x2))
% Found ((eq_ref Prop) ((x0 (g x1)) x2)) as proof of (((eq Prop) ((x0 (g x1)) x2)) ((f x1) x2))
% Found (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2))) as proof of (((eq Prop) ((x0 (g x1)) x2)) ((f x1) x2))
% Found (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2))) as proof of (forall (x:fofType), (((eq Prop) ((x0 (g x1)) x)) ((f x1) x)))
% Found ((functional_extensionality00000 (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2)))) (((eq_ref (fofType->Prop)) (x0 (g x1))) P)) as proof of ((P (x0 (g x1)))->(P (f x1)))
% Found ((functional_extensionality00000 (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2)))) (((eq_ref (fofType->Prop)) (x0 (g x1))) P)) as proof of ((P (x0 (g x1)))->(P (f x1)))
% Found (((fun (x2:(forall (x:fofType), (((eq Prop) ((x0 (g x1)) x)) ((f x1) x))))=> ((functional_extensionality0000 x2) (fun (x4:(fofType->Prop))=> ((P (x0 (g x1)))->(P x4))))) (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2)))) (((eq_ref (fofType->Prop)) (x0 (g x1))) P)) as proof of ((P (x0 (g x1)))->(P (f x1)))
% Found (((fun (x2:(forall (x:fofType), (((eq Prop) ((x0 (g x1)) x)) ((f x1) x))))=> (((functional_extensionality000 (f x1)) x2) (fun (x4:(fofType->Prop))=> ((P (x0 (g x1)))->(P x4))))) (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2)))) (((eq_ref (fofType->Prop)) (x0 (g x1))) P)) as proof of ((P (x0 (g x1)))->(P (f x1)))
% Found (((fun (x2:(forall (x:fofType), (((eq Prop) ((x0 (g x1)) x)) ((f x1) x))))=> ((((functional_extensionality00 (x0 (g x1))) (f x1)) x2) (fun (x4:(fofType->Prop))=> ((P (x0 (g x1)))->(P x4))))) (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2)))) (((eq_ref (fofType->Prop)) (x0 (g x1))) P)) as proof of ((P (x0 (g x1)))->(P (f x1)))
% Found (((fun (x2:(forall (x:fofType), (((eq Prop) ((x0 (g x1)) x)) ((f x1) x))))=> (((((functional_extensionality0 Prop) (x0 (g x1))) (f x1)) x2) (fun (x4:(fofType->Prop))=> ((P (x0 (g x1)))->(P x4))))) (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2)))) (((eq_ref (fofType->Prop)) (x0 (g x1))) P)) as proof of ((P (x0 (g x1)))->(P (f x1)))
% Found (((fun (x2:(forall (x:fofType), (((eq Prop) ((x0 (g x1)) x)) ((f x1) x))))=> ((((((functional_extensionality fofType) Prop) (x0 (g x1))) (f x1)) x2) (fun (x4:(fofType->Prop))=> ((P (x0 (g x1)))->(P x4))))) (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2)))) (((eq_ref (fofType->Prop)) (x0 (g x1))) P)) as proof of ((P (x0 (g x1)))->(P (f x1)))
% Found (fun (P:((fofType->Prop)->Prop))=> (((fun (x2:(forall (x:fofType), (((eq Prop) ((x0 (g x1)) x)) ((f x1) x))))=> ((((((functional_extensionality fofType) Prop) (x0 (g x1))) (f x1)) x2) (fun (x4:(fofType->Prop))=> ((P (x0 (g x1)))->(P x4))))) (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2)))) (((eq_ref (fofType->Prop)) (x0 (g x1))) P))) as proof of ((P (x0 (g x1)))->(P (f x1)))
% Found (fun (P:((fofType->Prop)->Prop))=> (((fun (x2:(forall (x:fofType), (((eq Prop) ((x0 (g x1)) x)) ((f x1) x))))=> ((((((functional_extensionality fofType) Prop) (x0 (g x1))) (f x1)) x2) (fun (x4:(fofType->Prop))=> ((P (x0 (g x1)))->(P x4))))) (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2)))) (((eq_ref (fofType->Prop)) (x0 (g x1))) P))) as proof of (forall (P:((fofType->Prop)->Prop)), ((P (x0 (g x1)))->(P (f x1))))
% Found eq_ref000:=(eq_ref00 P):((P (x0 (g x1)))->(P (x0 (g x1))))
% Found (eq_ref00 P) as proof of (P0 (x0 (g x1)))
% Found ((eq_ref0 (x0 (g x1))) P) as proof of (P0 (x0 (g x1)))
% Found (((eq_ref (fofType->Prop)) (x0 (g x1))) P) as proof of (P0 (x0 (g x1)))
% Found (((eq_ref (fofType->Prop)) (x0 (g x1))) P) as proof of (P0 (x0 (g x1)))
% Found eq_ref00:=(eq_ref0 ((x0 (g x1)) x2)):(((eq Prop) ((x0 (g x1)) x2)) ((x0 (g x1)) x2))
% Found (eq_ref0 ((x0 (g x1)) x2)) as proof of (((eq Prop) ((x0 (g x1)) x2)) ((f x1) x2))
% Found ((eq_ref Prop) ((x0 (g x1)) x2)) as proof of (((eq Prop) ((x0 (g x1)) x2)) ((f x1) x2))
% Found ((eq_ref Prop) ((x0 (g x1)) x2)) as proof of (((eq Prop) ((x0 (g x1)) x2)) ((f x1) x2))
% Found (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2))) as proof of (((eq Prop) ((x0 (g x1)) x2)) ((f x1) x2))
% Found (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2))) as proof of (forall (x:fofType), (((eq Prop) ((x0 (g x1)) x)) ((f x1) x)))
% Found ((functional_extensionality_dep00000 (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2)))) (((eq_ref (fofType->Prop)) (x0 (g x1))) P)) as proof of ((P (x0 (g x1)))->(P (f x1)))
% Found ((functional_extensionality_dep00000 (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2)))) (((eq_ref (fofType->Prop)) (x0 (g x1))) P)) as proof of ((P (x0 (g x1)))->(P (f x1)))
% Found (((fun (x2:(forall (x:fofType), (((eq Prop) ((x0 (g x1)) x)) ((f x1) x))))=> ((functional_extensionality_dep0000 x2) (fun (x4:(fofType->Prop))=> ((P (x0 (g x1)))->(P x4))))) (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2)))) (((eq_ref (fofType->Prop)) (x0 (g x1))) P)) as proof of ((P (x0 (g x1)))->(P (f x1)))
% Found (((fun (x2:(forall (x:fofType), (((eq Prop) ((x0 (g x1)) x)) ((f x1) x))))=> (((functional_extensionality_dep000 (f x1)) x2) (fun (x4:(fofType->Prop))=> ((P (x0 (g x1)))->(P x4))))) (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2)))) (((eq_ref (fofType->Prop)) (x0 (g x1))) P)) as proof of ((P (x0 (g x1)))->(P (f x1)))
% Found (((fun (x2:(forall (x:fofType), (((eq Prop) ((x0 (g x1)) x)) ((f x1) x))))=> ((((functional_extensionality_dep00 (x0 (g x1))) (f x1)) x2) (fun (x4:(fofType->Prop))=> ((P (x0 (g x1)))->(P x4))))) (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2)))) (((eq_ref (fofType->Prop)) (x0 (g x1))) P)) as proof of ((P (x0 (g x1)))->(P (f x1)))
% Found (((fun (x2:(forall (x:fofType), (((eq Prop) ((x0 (g x1)) x)) ((f x1) x))))=> (((((functional_extensionality_dep0 (fun (x4:fofType)=> Prop)) (x0 (g x1))) (f x1)) x2) (fun (x4:(fofType->Prop))=> ((P (x0 (g x1)))->(P x4))))) (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2)))) (((eq_ref (fofType->Prop)) (x0 (g x1))) P)) as proof of ((P (x0 (g x1)))->(P (f x1)))
% Found (((fun (x2:(forall (x:fofType), (((eq Prop) ((x0 (g x1)) x)) ((f x1) x))))=> ((((((functional_extensionality_dep fofType) (fun (x4:fofType)=> Prop)) (x0 (g x1))) (f x1)) x2) (fun (x4:(fofType->Prop))=> ((P (x0 (g x1)))->(P x4))))) (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2)))) (((eq_ref (fofType->Prop)) (x0 (g x1))) P)) as proof of ((P (x0 (g x1)))->(P (f x1)))
% Found (fun (P:((fofType->Prop)->Prop))=> (((fun (x2:(forall (x:fofType), (((eq Prop) ((x0 (g x1)) x)) ((f x1) x))))=> ((((((functional_extensionality_dep fofType) (fun (x4:fofType)=> Prop)) (x0 (g x1))) (f x1)) x2) (fun (x4:(fofType->Prop))=> ((P (x0 (g x1)))->(P x4))))) (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2)))) (((eq_ref (fofType->Prop)) (x0 (g x1))) P))) as proof of ((P (x0 (g x1)))->(P (f x1)))
% Found (fun (P:((fofType->Prop)->Prop))=> (((fun (x2:(forall (x:fofType), (((eq Prop) ((x0 (g x1)) x)) ((f x1) x))))=> ((((((functional_extensionality_dep fofType) (fun (x4:fofType)=> Prop)) (x0 (g x1))) (f x1)) x2) (fun (x4:(fofType->Prop))=> ((P (x0 (g x1)))->(P x4))))) (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2)))) (((eq_ref (fofType->Prop)) (x0 (g x1))) P))) as proof of (forall (P:((fofType->Prop)->Prop)), ((P (x0 (g x1)))->(P (f x1))))
% Found eq_ref00:=(eq_ref0 (g x1)):(((eq (fofType->Prop)) (g x1)) (g x1))
% Found (eq_ref0 (g x1)) as proof of (((eq (fofType->Prop)) (g x1)) (g x1))
% Found ((eq_ref (fofType->Prop)) (g x1)) as proof of (((eq (fofType->Prop)) (g x1)) (g x1))
% Found ((eq_ref (fofType->Prop)) (g x1)) as proof of (((eq (fofType->Prop)) (g x1)) (g x1))
% Found (x200 ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P1 (x0 (g x1)))->(P1 (f x1)))
% Found (x200 ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P1 (x0 (g x1)))->(P1 (f x1)))
% Found ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> ((x20 x3) P1)) ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P1 (x0 (g x1)))->(P1 (f x1)))
% Found ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> (((x2 x1) x3) P1)) ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P1 (x0 (g x1)))->(P1 (f x1)))
% Found ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> ((((x x1) x1) x3) P1)) ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P1 (x0 (g x1)))->(P1 (f x1)))
% Found ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> ((((x x1) x1) x3) P1)) ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P1 (x0 (g x1)))->(P1 (f x1)))
% Found (fun (P1:((fofType->Prop)->Prop))=> ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> ((((x x1) x1) x3) P1)) ((eq_ref (fofType->Prop)) (g x1)))) as proof of ((P1 (x0 (g x1)))->(P1 (f x1)))
% Found eq_ref00:=(eq_ref0 (g x1)):(((eq (fofType->Prop)) (g x1)) (g x1))
% Found (eq_ref0 (g x1)) as proof of (((eq (fofType->Prop)) (g x1)) (g x1))
% Found ((eq_ref (fofType->Prop)) (g x1)) as proof of (((eq (fofType->Prop)) (g x1)) (g x1))
% Found ((eq_ref (fofType->Prop)) (g x1)) as proof of (((eq (fofType->Prop)) (g x1)) (g x1))
% Found (x200 ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P1 (x0 (g x1)))->(P1 (f x1)))
% Found (x200 ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P1 (x0 (g x1)))->(P1 (f x1)))
% Found ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> ((x20 x3) (fun (x4:(fofType->Prop))=> (P1 (x0 (g x1)))))) ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P1 (x0 (g x1)))->(P1 (f x1)))
% Found ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> (((x2 x1) x3) (fun (x4:(fofType->Prop))=> (P1 (x0 (g x1)))))) ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P1 (x0 (g x1)))->(P1 (f x1)))
% Found ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> ((((x x1) x1) x3) (fun (x4:(fofType->Prop))=> (P1 (x0 (g x1)))))) ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P1 (x0 (g x1)))->(P1 (f x1)))
% Found ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> ((((x x1) x1) x3) (fun (x4:(fofType->Prop))=> (P1 (x0 (g x1)))))) ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P1 (x0 (g x1)))->(P1 (f x1)))
% Found (fun (P1:((fofType->Prop)->Prop))=> ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> ((((x x1) x1) x3) (fun (x4:(fofType->Prop))=> (P1 (x0 (g x1)))))) ((eq_ref (fofType->Prop)) (g x1)))) as proof of ((P1 (x0 (g x1)))->(P1 (f x1)))
% Found eq_ref00:=(eq_ref0 (g x1)):(((eq (fofType->Prop)) (g x1)) (g x1))
% Found (eq_ref0 (g x1)) as proof of (((eq (fofType->Prop)) (g x1)) (g x1))
% Found ((eq_ref (fofType->Prop)) (g x1)) as proof of (((eq (fofType->Prop)) (g x1)) (g x1))
% Found ((eq_ref (fofType->Prop)) (g x1)) as proof of (((eq (fofType->Prop)) (g x1)) (g x1))
% Found (x200 ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P1 (x0 (g x1)))->(P1 (f x1)))
% Found (x200 ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P1 (x0 (g x1)))->(P1 (f x1)))
% Found ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> ((x20 x3) (fun (x4:(fofType->Prop))=> (P1 (x0 (g x1)))))) ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P1 (x0 (g x1)))->(P1 (f x1)))
% Found ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> (((x2 x1) x3) (fun (x4:(fofType->Prop))=> (P1 (x0 (g x1)))))) ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P1 (x0 (g x1)))->(P1 (f x1)))
% Found ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> ((((x x1) x1) x3) (fun (x4:(fofType->Prop))=> (P1 (x0 (g x1)))))) ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P1 (x0 (g x1)))->(P1 (f x1)))
% Found ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> ((((x x1) x1) x3) (fun (x4:(fofType->Prop))=> (P1 (x0 (g x1)))))) ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P1 (x0 (g x1)))->(P1 (f x1)))
% Found (fun (P1:((fofType->Prop)->Prop))=> ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> ((((x x1) x1) x3) (fun (x4:(fofType->Prop))=> (P1 (x0 (g x1)))))) ((eq_ref (fofType->Prop)) (g x1)))) as proof of ((P1 (x0 (g x1)))->(P1 (f x1)))
% Found eq_ref00:=(eq_ref0 (g x1)):(((eq (fofType->Prop)) (g x1)) (g x1))
% Found (eq_ref0 (g x1)) as proof of (((eq (fofType->Prop)) (g x1)) (g x1))
% Found ((eq_ref (fofType->Prop)) (g x1)) as proof of (((eq (fofType->Prop)) (g x1)) (g x1))
% Found ((eq_ref (fofType->Prop)) (g x1)) as proof of (((eq (fofType->Prop)) (g x1)) (g x1))
% Found (x200 ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P1 (x0 (g x1)))->(P1 (f x1)))
% Found (x200 ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P1 (x0 (g x1)))->(P1 (f x1)))
% Found ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> ((x20 x3) P1)) ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P1 (x0 (g x1)))->(P1 (f x1)))
% Found ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> (((x2 x1) x3) P1)) ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P1 (x0 (g x1)))->(P1 (f x1)))
% Found ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> ((((x x1) x1) x3) P1)) ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P1 (x0 (g x1)))->(P1 (f x1)))
% Found ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> ((((x x1) x1) x3) P1)) ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P1 (x0 (g x1)))->(P1 (f x1)))
% Found (fun (P1:((fofType->Prop)->Prop))=> ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> ((((x x1) x1) x3) P1)) ((eq_ref (fofType->Prop)) (g x1)))) as proof of ((P1 (x0 (g x1)))->(P1 (f x1)))
% Found eq_ref00:=(eq_ref0 (g x1)):(((eq (fofType->Prop)) (g x1)) (g x1))
% Found (eq_ref0 (g x1)) as proof of (((eq (fofType->Prop)) (g x1)) (g x1))
% Found ((eq_ref (fofType->Prop)) (g x1)) as proof of (((eq (fofType->Prop)) (g x1)) (g x1))
% Found ((eq_ref (fofType->Prop)) (g x1)) as proof of (((eq (fofType->Prop)) (g x1)) (g x1))
% Found (x200 ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P1 (x0 (g x1)))->(P1 (f x1)))
% Found (x200 ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P1 (x0 (g x1)))->(P1 (f x1)))
% Found ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> ((x20 x3) P1)) ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P1 (x0 (g x1)))->(P1 (f x1)))
% Found ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> (((x2 x1) x3) P1)) ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P1 (x0 (g x1)))->(P1 (f x1)))
% Found ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> ((((x x1) x1) x3) P1)) ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P1 (x0 (g x1)))->(P1 (f x1)))
% Found ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> ((((x x1) x1) x3) P1)) ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P1 (x0 (g x1)))->(P1 (f x1)))
% Found (fun (P1:((fofType->Prop)->Prop))=> ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> ((((x x1) x1) x3) P1)) ((eq_ref (fofType->Prop)) (g x1)))) as proof of ((P1 (x0 (g x1)))->(P1 (f x1)))
% Found eq_ref00:=(eq_ref0 (g x1)):(((eq (fofType->Prop)) (g x1)) (g x1))
% Found (eq_ref0 (g x1)) as proof of (((eq (fofType->Prop)) (g x1)) (g x1))
% Found ((eq_ref (fofType->Prop)) (g x1)) as proof of (((eq (fofType->Prop)) (g x1)) (g x1))
% Found ((eq_ref (fofType->Prop)) (g x1)) as proof of (((eq (fofType->Prop)) (g x1)) (g x1))
% Found (x200 ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P1 (x0 (g x1)))->(P1 (f x1)))
% Found (x200 ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P1 (x0 (g x1)))->(P1 (f x1)))
% Found ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> ((x20 x3) (fun (x4:(fofType->Prop))=> (P1 (x0 (g x1)))))) ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P1 (x0 (g x1)))->(P1 (f x1)))
% Found ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> (((x2 x1) x3) (fun (x4:(fofType->Prop))=> (P1 (x0 (g x1)))))) ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P1 (x0 (g x1)))->(P1 (f x1)))
% Found ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> ((((x x1) x1) x3) (fun (x4:(fofType->Prop))=> (P1 (x0 (g x1)))))) ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P1 (x0 (g x1)))->(P1 (f x1)))
% Found ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> ((((x x1) x1) x3) (fun (x4:(fofType->Prop))=> (P1 (x0 (g x1)))))) ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P1 (x0 (g x1)))->(P1 (f x1)))
% Found (fun (P1:((fofType->Prop)->Prop))=> ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> ((((x x1) x1) x3) (fun (x4:(fofType->Prop))=> (P1 (x0 (g x1)))))) ((eq_ref (fofType->Prop)) (g x1)))) as proof of ((P1 (x0 (g x1)))->(P1 (f x1)))
% Found eq_ref00:=(eq_ref0 (g x1)):(((eq (fofType->Prop)) (g x1)) (g x1))
% Found (eq_ref0 (g x1)) as proof of (((eq (fofType->Prop)) (g x1)) (g x1))
% Found ((eq_ref (fofType->Prop)) (g x1)) as proof of (((eq (fofType->Prop)) (g x1)) (g x1))
% Found ((eq_ref (fofType->Prop)) (g x1)) as proof of (((eq (fofType->Prop)) (g x1)) (g x1))
% Found (x200 ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P1 (x0 (g x1)))->(P1 (f x1)))
% Found (x200 ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P1 (x0 (g x1)))->(P1 (f x1)))
% Found ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> ((x20 x3) (fun (x4:(fofType->Prop))=> (P1 (x0 (g x1)))))) ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P1 (x0 (g x1)))->(P1 (f x1)))
% Found ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> (((x2 x1) x3) (fun (x4:(fofType->Prop))=> (P1 (x0 (g x1)))))) ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P1 (x0 (g x1)))->(P1 (f x1)))
% Found ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> ((((x x1) x1) x3) (fun (x4:(fofType->Prop))=> (P1 (x0 (g x1)))))) ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P1 (x0 (g x1)))->(P1 (f x1)))
% Found ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> ((((x x1) x1) x3) (fun (x4:(fofType->Prop))=> (P1 (x0 (g x1)))))) ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P1 (x0 (g x1)))->(P1 (f x1)))
% Found (fun (P1:((fofType->Prop)->Prop))=> ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> ((((x x1) x1) x3) (fun (x4:(fofType->Prop))=> (P1 (x0 (g x1)))))) ((eq_ref (fofType->Prop)) (g x1)))) as proof of ((P1 (x0 (g x1)))->(P1 (f x1)))
% Found eq_ref00:=(eq_ref0 (g x1)):(((eq (fofType->Prop)) (g x1)) (g x1))
% Found (eq_ref0 (g x1)) as proof of (((eq (fofType->Prop)) (g x1)) (g x1))
% Found ((eq_ref (fofType->Prop)) (g x1)) as proof of (((eq (fofType->Prop)) (g x1)) (g x1))
% Found ((eq_ref (fofType->Prop)) (g x1)) as proof of (((eq (fofType->Prop)) (g x1)) (g x1))
% Found (x200 ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P1 (x0 (g x1)))->(P1 (f x1)))
% Found (x200 ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P1 (x0 (g x1)))->(P1 (f x1)))
% Found ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> ((x20 x3) P1)) ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P1 (x0 (g x1)))->(P1 (f x1)))
% Found ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> (((x2 x1) x3) P1)) ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P1 (x0 (g x1)))->(P1 (f x1)))
% Found ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> ((((x x1) x1) x3) P1)) ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P1 (x0 (g x1)))->(P1 (f x1)))
% Found ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> ((((x x1) x1) x3) P1)) ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P1 (x0 (g x1)))->(P1 (f x1)))
% Found (fun (P1:((fofType->Prop)->Prop))=> ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> ((((x x1) x1) x3) P1)) ((eq_ref (fofType->Prop)) (g x1)))) as proof of ((P1 (x0 (g x1)))->(P1 (f x1)))
% Found eq_ref00:=(eq_ref0 (g x1)):(((eq (fofType->Prop)) (g x1)) (g x1))
% Found (eq_ref0 (g x1)) as proof of (((eq (fofType->Prop)) (g x1)) (g x1))
% Found ((eq_ref (fofType->Prop)) (g x1)) as proof of (((eq (fofType->Prop)) (g x1)) (g x1))
% Found ((eq_ref (fofType->Prop)) (g x1)) as proof of (((eq (fofType->Prop)) (g x1)) (g x1))
% Found (x200 ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P1 (x0 (g x1)))->(P1 (f x1)))
% Found (x200 ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P1 (x0 (g x1)))->(P1 (f x1)))
% Found ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> ((x20 x3) (fun (x4:(fofType->Prop))=> (P1 (x0 (g x1)))))) ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P1 (x0 (g x1)))->(P1 (f x1)))
% Found ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> (((x2 x1) x3) (fun (x4:(fofType->Prop))=> (P1 (x0 (g x1)))))) ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P1 (x0 (g x1)))->(P1 (f x1)))
% Found ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> ((((x x1) x1) x3) (fun (x4:(fofType->Prop))=> (P1 (x0 (g x1)))))) ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P1 (x0 (g x1)))->(P1 (f x1)))
% Found ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> ((((x x1) x1) x3) (fun (x4:(fofType->Prop))=> (P1 (x0 (g x1)))))) ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P1 (x0 (g x1)))->(P1 (f x1)))
% Found (fun (P1:((fofType->Prop)->Prop))=> ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> ((((x x1) x1) x3) (fun (x4:(fofType->Prop))=> (P1 (x0 (g x1)))))) ((eq_ref (fofType->Prop)) (g x1)))) as proof of ((P1 (x0 (g x1)))->(P1 (f x1)))
% Found eq_ref00:=(eq_ref0 (g x1)):(((eq (fofType->Prop)) (g x1)) (g x1))
% Found (eq_ref0 (g x1)) as proof of (((eq (fofType->Prop)) (g x1)) (g x1))
% Found ((eq_ref (fofType->Prop)) (g x1)) as proof of (((eq (fofType->Prop)) (g x1)) (g x1))
% Found ((eq_ref (fofType->Prop)) (g x1)) as proof of (((eq (fofType->Prop)) (g x1)) (g x1))
% Found (x200 ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P1 (x0 (g x1)))->(P1 (f x1)))
% Found (x200 ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P1 (x0 (g x1)))->(P1 (f x1)))
% Found ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> ((x20 x3) P1)) ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P1 (x0 (g x1)))->(P1 (f x1)))
% Found ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> (((x2 x1) x3) P1)) ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P1 (x0 (g x1)))->(P1 (f x1)))
% Found ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> ((((x x1) x1) x3) P1)) ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P1 (x0 (g x1)))->(P1 (f x1)))
% Found ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> ((((x x1) x1) x3) P1)) ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P1 (x0 (g x1)))->(P1 (f x1)))
% Found (fun (P1:((fofType->Prop)->Prop))=> ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> ((((x x1) x1) x3) P1)) ((eq_ref (fofType->Prop)) (g x1)))) as proof of ((P1 (x0 (g x1)))->(P1 (f x1)))
% Found eq_ref00:=(eq_ref0 (g x1)):(((eq (fofType->Prop)) (g x1)) (g x1))
% Found (eq_ref0 (g x1)) as proof of (((eq (fofType->Prop)) (g x1)) (g x1))
% Found ((eq_ref (fofType->Prop)) (g x1)) as proof of (((eq (fofType->Prop)) (g x1)) (g x1))
% Found ((eq_ref (fofType->Prop)) (g x1)) as proof of (((eq (fofType->Prop)) (g x1)) (g x1))
% Found (x200 ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P1 (x0 (g x1)))->(P1 (f x1)))
% Found (x200 ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P1 (x0 (g x1)))->(P1 (f x1)))
% Found ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> ((x20 x3) (fun (x4:(fofType->Prop))=> (P1 (x0 (g x1)))))) ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P1 (x0 (g x1)))->(P1 (f x1)))
% Found ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> (((x2 x1) x3) (fun (x4:(fofType->Prop))=> (P1 (x0 (g x1)))))) ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P1 (x0 (g x1)))->(P1 (f x1)))
% Found ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> ((((x x1) x1) x3) (fun (x4:(fofType->Prop))=> (P1 (x0 (g x1)))))) ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P1 (x0 (g x1)))->(P1 (f x1)))
% Found ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> ((((x x1) x1) x3) (fun (x4:(fofType->Prop))=> (P1 (x0 (g x1)))))) ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P1 (x0 (g x1)))->(P1 (f x1)))
% Found (fun (P1:((fofType->Prop)->Prop))=> ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> ((((x x1) x1) x3) (fun (x4:(fofType->Prop))=> (P1 (x0 (g x1)))))) ((eq_ref (fofType->Prop)) (g x1)))) as proof of ((P1 (x0 (g x1)))->(P1 (f x1)))
% Found eq_ref00:=(eq_ref0 (g x1)):(((eq (fofType->Prop)) (g x1)) (g x1))
% Found (eq_ref0 (g x1)) as proof of (((eq (fofType->Prop)) (g x1)) (g x1))
% Found ((eq_ref (fofType->Prop)) (g x1)) as proof of (((eq (fofType->Prop)) (g x1)) (g x1))
% Found ((eq_ref (fofType->Prop)) (g x1)) as proof of (((eq (fofType->Prop)) (g x1)) (g x1))
% Found (x200 ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P1 (x0 (g x1)))->(P1 (f x1)))
% Found (x200 ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P1 (x0 (g x1)))->(P1 (f x1)))
% Found ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> ((x20 x3) P1)) ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P1 (x0 (g x1)))->(P1 (f x1)))
% Found ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> (((x2 x1) x3) P1)) ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P1 (x0 (g x1)))->(P1 (f x1)))
% Found ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> ((((x x1) x1) x3) P1)) ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P1 (x0 (g x1)))->(P1 (f x1)))
% Found ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> ((((x x1) x1) x3) P1)) ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P1 (x0 (g x1)))->(P1 (f x1)))
% Found (fun (P1:((fofType->Prop)->Prop))=> ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> ((((x x1) x1) x3) P1)) ((eq_ref (fofType->Prop)) (g x1)))) as proof of ((P1 (x0 (g x1)))->(P1 (f x1)))
% Found eq_ref00:=(eq_ref0 (g x1)):(((eq (fofType->Prop)) (g x1)) (g x1))
% Found (eq_ref0 (g x1)) as proof of (((eq (fofType->Prop)) (g x1)) (g x1))
% Found ((eq_ref (fofType->Prop)) (g x1)) as proof of (((eq (fofType->Prop)) (g x1)) (g x1))
% Found ((eq_ref (fofType->Prop)) (g x1)) as proof of (((eq (fofType->Prop)) (g x1)) (g x1))
% Found (x200 ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P1 (x0 (g x1)))->(P1 (f x1)))
% Found (x200 ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P1 (x0 (g x1)))->(P1 (f x1)))
% Found ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> ((x20 x3) (fun (x4:(fofType->Prop))=> (P1 (x0 (g x1)))))) ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P1 (x0 (g x1)))->(P1 (f x1)))
% Found ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> (((x2 x1) x3) (fun (x4:(fofType->Prop))=> (P1 (x0 (g x1)))))) ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P1 (x0 (g x1)))->(P1 (f x1)))
% Found ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> ((((x x1) x1) x3) (fun (x4:(fofType->Prop))=> (P1 (x0 (g x1)))))) ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P1 (x0 (g x1)))->(P1 (f x1)))
% Found ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> ((((x x1) x1) x3) (fun (x4:(fofType->Prop))=> (P1 (x0 (g x1)))))) ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P1 (x0 (g x1)))->(P1 (f x1)))
% Found (fun (P1:((fofType->Prop)->Prop))=> ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> ((((x x1) x1) x3) (fun (x4:(fofType->Prop))=> (P1 (x0 (g x1)))))) ((eq_ref (fofType->Prop)) (g x1)))) as proof of ((P1 (x0 (g x1)))->(P1 (f x1)))
% Found eq_ref00:=(eq_ref0 (g x1)):(((eq (fofType->Prop)) (g x1)) (g x1))
% Found (eq_ref0 (g x1)) as proof of (((eq (fofType->Prop)) (g x1)) (g x1))
% Found ((eq_ref (fofType->Prop)) (g x1)) as proof of (((eq (fofType->Prop)) (g x1)) (g x1))
% Found ((eq_ref (fofType->Prop)) (g x1)) as proof of (((eq (fofType->Prop)) (g x1)) (g x1))
% Found (x200 ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P1 (x0 (g x1)))->(P1 (f x1)))
% Found (x200 ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P1 (x0 (g x1)))->(P1 (f x1)))
% Found ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> ((x20 x3) P1)) ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P1 (x0 (g x1)))->(P1 (f x1)))
% Found ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> (((x2 x1) x3) P1)) ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P1 (x0 (g x1)))->(P1 (f x1)))
% Found ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> ((((x x1) x1) x3) P1)) ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P1 (x0 (g x1)))->(P1 (f x1)))
% Found ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> ((((x x1) x1) x3) P1)) ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P1 (x0 (g x1)))->(P1 (f x1)))
% Found (fun (P1:((fofType->Prop)->Prop))=> ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> ((((x x1) x1) x3) P1)) ((eq_ref (fofType->Prop)) (g x1)))) as proof of ((P1 (x0 (g x1)))->(P1 (f x1)))
% Found eq_ref00:=(eq_ref0 (g x1)):(((eq (fofType->Prop)) (g x1)) (g x1))
% Found (eq_ref0 (g x1)) as proof of (((eq (fofType->Prop)) (g x1)) (g x1))
% Found ((eq_ref (fofType->Prop)) (g x1)) as proof of (((eq (fofType->Prop)) (g x1)) (g x1))
% Found ((eq_ref (fofType->Prop)) (g x1)) as proof of (((eq (fofType->Prop)) (g x1)) (g x1))
% Found (x200 ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P1 (x0 (g x1)))->(P1 (f x1)))
% Found (x200 ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P1 (x0 (g x1)))->(P1 (f x1)))
% Found ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> ((x20 x3) (fun (x4:(fofType->Prop))=> (P1 (x0 (g x1)))))) ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P1 (x0 (g x1)))->(P1 (f x1)))
% Found ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> (((x2 x1) x3) (fun (x4:(fofType->Prop))=> (P1 (x0 (g x1)))))) ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P1 (x0 (g x1)))->(P1 (f x1)))
% Found ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> ((((x x1) x1) x3) (fun (x4:(fofType->Prop))=> (P1 (x0 (g x1)))))) ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P1 (x0 (g x1)))->(P1 (f x1)))
% Found ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> ((((x x1) x1) x3) (fun (x4:(fofType->Prop))=> (P1 (x0 (g x1)))))) ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P1 (x0 (g x1)))->(P1 (f x1)))
% Found (fun (P1:((fofType->Prop)->Prop))=> ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> ((((x x1) x1) x3) (fun (x4:(fofType->Prop))=> (P1 (x0 (g x1)))))) ((eq_ref (fofType->Prop)) (g x1)))) as proof of ((P1 (x0 (g x1)))->(P1 (f x1)))
% Found eq_ref00:=(eq_ref0 (g x1)):(((eq (fofType->Prop)) (g x1)) (g x1))
% Found (eq_ref0 (g x1)) as proof of (((eq (fofType->Prop)) (g x1)) (g x1))
% Found ((eq_ref (fofType->Prop)) (g x1)) as proof of (((eq (fofType->Prop)) (g x1)) (g x1))
% Found ((eq_ref (fofType->Prop)) (g x1)) as proof of (((eq (fofType->Prop)) (g x1)) (g x1))
% Found (x200 ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P1 (x0 (g x1)))->(P1 (f x1)))
% Found (x200 ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P1 (x0 (g x1)))->(P1 (f x1)))
% Found ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> ((x20 x3) P1)) ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P1 (x0 (g x1)))->(P1 (f x1)))
% Found ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> (((x2 x1) x3) P1)) ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P1 (x0 (g x1)))->(P1 (f x1)))
% Found ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> ((((x x1) x1) x3) P1)) ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P1 (x0 (g x1)))->(P1 (f x1)))
% Found ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> ((((x x1) x1) x3) P1)) ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P1 (x0 (g x1)))->(P1 (f x1)))
% Found (fun (P1:((fofType->Prop)->Prop))=> ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> ((((x x1) x1) x3) P1)) ((eq_ref (fofType->Prop)) (g x1)))) as proof of ((P1 (x0 (g x1)))->(P1 (f x1)))
% Found eq_ref00:=(eq_ref0 ((x0 (g x1)) x2)):(((eq Prop) ((x0 (g x1)) x2)) ((x0 (g x1)) x2))
% Found (eq_ref0 ((x0 (g x1)) x2)) as proof of (((eq Prop) ((x0 (g x1)) x2)) ((f x1) x2))
% Found ((eq_ref Prop) ((x0 (g x1)) x2)) as proof of (((eq Prop) ((x0 (g x1)) x2)) ((f x1) x2))
% Found ((eq_ref Prop) ((x0 (g x1)) x2)) as proof of (((eq Prop) ((x0 (g x1)) x2)) ((f x1) x2))
% Found (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2))) as proof of (((eq Prop) ((x0 (g x1)) x2)) ((f x1) x2))
% Found (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2))) as proof of (forall (x:fofType), (((eq Prop) ((x0 (g x1)) x)) ((f x1) x)))
% Found (functional_extensionality_dep00000 (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2)))) as proof of ((P (x0 (g x1)))->(P (f x1)))
% Found (functional_extensionality_dep00000 (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2)))) as proof of ((P (x0 (g x1)))->(P (f x1)))
% Found ((fun (x2:(forall (x:fofType), (((eq Prop) ((x0 (g x1)) x)) ((f x1) x))))=> ((functional_extensionality_dep0000 x2) P)) (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2)))) as proof of ((P (x0 (g x1)))->(P (f x1)))
% Found ((fun (x2:(forall (x:fofType), (((eq Prop) ((x0 (g x1)) x)) ((f x1) x))))=> (((functional_extensionality_dep000 (f x1)) x2) P)) (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2)))) as proof of ((P (x0 (g x1)))->(P (f x1)))
% Found ((fun (x2:(forall (x:fofType), (((eq Prop) ((x0 (g x1)) x)) ((f x1) x))))=> ((((functional_extensionality_dep00 (x0 (g x1))) (f x1)) x2) P)) (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2)))) as proof of ((P (x0 (g x1)))->(P (f x1)))
% Found ((fun (x2:(forall (x:fofType), (((eq Prop) ((x0 (g x1)) x)) ((f x1) x))))=> (((((functional_extensionality_dep0 (fun (x4:fofType)=> Prop)) (x0 (g x1))) (f x1)) x2) P)) (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2)))) as proof of ((P (x0 (g x1)))->(P (f x1)))
% Found ((fun (x2:(forall (x:fofType), (((eq Prop) ((x0 (g x1)) x)) ((f x1) x))))=> ((((((functional_extensionality_dep fofType) (fun (x4:fofType)=> Prop)) (x0 (g x1))) (f x1)) x2) P)) (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2)))) as proof of ((P (x0 (g x1)))->(P (f x1)))
% Found (fun (P:((fofType->Prop)->Prop))=> ((fun (x2:(forall (x:fofType), (((eq Prop) ((x0 (g x1)) x)) ((f x1) x))))=> ((((((functional_extensionality_dep fofType) (fun (x4:fofType)=> Prop)) (x0 (g x1))) (f x1)) x2) P)) (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2))))) as proof of ((P (x0 (g x1)))->(P (f x1)))
% Found eq_ref00:=(eq_ref0 ((x0 (g x1)) x2)):(((eq Prop) ((x0 (g x1)) x2)) ((x0 (g x1)) x2))
% Found (eq_ref0 ((x0 (g x1)) x2)) as proof of (((eq Prop) ((x0 (g x1)) x2)) ((f x1) x2))
% Found ((eq_ref Prop) ((x0 (g x1)) x2)) as proof of (((eq Prop) ((x0 (g x1)) x2)) ((f x1) x2))
% Found ((eq_ref Prop) ((x0 (g x1)) x2)) as proof of (((eq Prop) ((x0 (g x1)) x2)) ((f x1) x2))
% Found (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2))) as proof of (((eq Prop) ((x0 (g x1)) x2)) ((f x1) x2))
% Found (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2))) as proof of (forall (x:fofType), (((eq Prop) ((x0 (g x1)) x)) ((f x1) x)))
% Found (functional_extensionality00000 (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2)))) as proof of ((P (x0 (g x1)))->(P (f x1)))
% Found (functional_extensionality00000 (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2)))) as proof of ((P (x0 (g x1)))->(P (f x1)))
% Found ((fun (x2:(forall (x:fofType), (((eq Prop) ((x0 (g x1)) x)) ((f x1) x))))=> ((functional_extensionality0000 x2) P)) (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2)))) as proof of ((P (x0 (g x1)))->(P (f x1)))
% Found ((fun (x2:(forall (x:fofType), (((eq Prop) ((x0 (g x1)) x)) ((f x1) x))))=> (((functional_extensionality000 (f x1)) x2) P)) (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2)))) as proof of ((P (x0 (g x1)))->(P (f x1)))
% Found ((fun (x2:(forall (x:fofType), (((eq Prop) ((x0 (g x1)) x)) ((f x1) x))))=> ((((functional_extensionality00 (x0 (g x1))) (f x1)) x2) P)) (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2)))) as proof of ((P (x0 (g x1)))->(P (f x1)))
% Found ((fun (x2:(forall (x:fofType), (((eq Prop) ((x0 (g x1)) x)) ((f x1) x))))=> (((((functional_extensionality0 Prop) (x0 (g x1))) (f x1)) x2) P)) (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2)))) as proof of ((P (x0 (g x1)))->(P (f x1)))
% Found ((fun (x2:(forall (x:fofType), (((eq Prop) ((x0 (g x1)) x)) ((f x1) x))))=> ((((((functional_extensionality fofType) Prop) (x0 (g x1))) (f x1)) x2) P)) (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2)))) as proof of ((P (x0 (g x1)))->(P (f x1)))
% Found (fun (P:((fofType->Prop)->Prop))=> ((fun (x2:(forall (x:fofType), (((eq Prop) ((x0 (g x1)) x)) ((f x1) x))))=> ((((((functional_extensionality fofType) Prop) (x0 (g x1))) (f x1)) x2) P)) (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2))))) as proof of ((P (x0 (g x1)))->(P (f x1)))
% Found eq_ref000:=(eq_ref00 P):((P (x0 (g x1)))->(P (x0 (g x1))))
% Found (eq_ref00 P) as proof of (P0 (x0 (g x1)))
% Found ((eq_ref0 (x0 (g x1))) P) as proof of (P0 (x0 (g x1)))
% Found (((eq_ref (fofType->Prop)) (x0 (g x1))) P) as proof of (P0 (x0 (g x1)))
% Found (((eq_ref (fofType->Prop)) (x0 (g x1))) P) as proof of (P0 (x0 (g x1)))
% Found eq_ref00:=(eq_ref0 ((x0 (g x1)) x2)):(((eq Prop) ((x0 (g x1)) x2)) ((x0 (g x1)) x2))
% Found (eq_ref0 ((x0 (g x1)) x2)) as proof of (((eq Prop) ((x0 (g x1)) x2)) ((f x1) x2))
% Found ((eq_ref Prop) ((x0 (g x1)) x2)) as proof of (((eq Prop) ((x0 (g x1)) x2)) ((f x1) x2))
% Found ((eq_ref Prop) ((x0 (g x1)) x2)) as proof of (((eq Prop) ((x0 (g x1)) x2)) ((f x1) x2))
% Found (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2))) as proof of (((eq Prop) ((x0 (g x1)) x2)) ((f x1) x2))
% Found (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2))) as proof of (forall (x:fofType), (((eq Prop) ((x0 (g x1)) x)) ((f x1) x)))
% Found ((functional_extensionality_dep00000 (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2)))) (((eq_ref (fofType->Prop)) (x0 (g x1))) P)) as proof of ((P (x0 (g x1)))->(P (f x1)))
% Found ((functional_extensionality_dep00000 (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2)))) (((eq_ref (fofType->Prop)) (x0 (g x1))) P)) as proof of ((P (x0 (g x1)))->(P (f x1)))
% Found (((fun (x2:(forall (x:fofType), (((eq Prop) ((x0 (g x1)) x)) ((f x1) x))))=> ((functional_extensionality_dep0000 x2) (fun (x4:(fofType->Prop))=> ((P (x0 (g x1)))->(P x4))))) (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2)))) (((eq_ref (fofType->Prop)) (x0 (g x1))) P)) as proof of ((P (x0 (g x1)))->(P (f x1)))
% Found (((fun (x2:(forall (x:fofType), (((eq Prop) ((x0 (g x1)) x)) ((f x1) x))))=> (((functional_extensionality_dep000 (f x1)) x2) (fun (x4:(fofType->Prop))=> ((P (x0 (g x1)))->(P x4))))) (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2)))) (((eq_ref (fofType->Prop)) (x0 (g x1))) P)) as proof of ((P (x0 (g x1)))->(P (f x1)))
% Found (((fun (x2:(forall (x:fofType), (((eq Prop) ((x0 (g x1)) x)) ((f x1) x))))=> ((((functional_extensionality_dep00 (x0 (g x1))) (f x1)) x2) (fun (x4:(fofType->Prop))=> ((P (x0 (g x1)))->(P x4))))) (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2)))) (((eq_ref (fofType->Prop)) (x0 (g x1))) P)) as proof of ((P (x0 (g x1)))->(P (f x1)))
% Found (((fun (x2:(forall (x:fofType), (((eq Prop) ((x0 (g x1)) x)) ((f x1) x))))=> (((((functional_extensionality_dep0 (fun (x4:fofType)=> Prop)) (x0 (g x1))) (f x1)) x2) (fun (x4:(fofType->Prop))=> ((P (x0 (g x1)))->(P x4))))) (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2)))) (((eq_ref (fofType->Prop)) (x0 (g x1))) P)) as proof of ((P (x0 (g x1)))->(P (f x1)))
% Found (((fun (x2:(forall (x:fofType), (((eq Prop) ((x0 (g x1)) x)) ((f x1) x))))=> ((((((functional_extensionality_dep fofType) (fun (x4:fofType)=> Prop)) (x0 (g x1))) (f x1)) x2) (fun (x4:(fofType->Prop))=> ((P (x0 (g x1)))->(P x4))))) (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2)))) (((eq_ref (fofType->Prop)) (x0 (g x1))) P)) as proof of ((P (x0 (g x1)))->(P (f x1)))
% Found (fun (P:((fofType->Prop)->Prop))=> (((fun (x2:(forall (x:fofType), (((eq Prop) ((x0 (g x1)) x)) ((f x1) x))))=> ((((((functional_extensionality_dep fofType) (fun (x4:fofType)=> Prop)) (x0 (g x1))) (f x1)) x2) (fun (x4:(fofType->Prop))=> ((P (x0 (g x1)))->(P x4))))) (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2)))) (((eq_ref (fofType->Prop)) (x0 (g x1))) P))) as proof of ((P (x0 (g x1)))->(P (f x1)))
% Found eq_ref000:=(eq_ref00 P):((P (x0 (g x1)))->(P (x0 (g x1))))
% Found (eq_ref00 P) as proof of (P0 (x0 (g x1)))
% Found ((eq_ref0 (x0 (g x1))) P) as proof of (P0 (x0 (g x1)))
% Found (((eq_ref (fofType->Prop)) (x0 (g x1))) P) as proof of (P0 (x0 (g x1)))
% Found (((eq_ref (fofType->Prop)) (x0 (g x1))) P) as proof of (P0 (x0 (g x1)))
% Found eq_ref00:=(eq_ref0 ((x0 (g x1)) x2)):(((eq Prop) ((x0 (g x1)) x2)) ((x0 (g x1)) x2))
% Found (eq_ref0 ((x0 (g x1)) x2)) as proof of (((eq Prop) ((x0 (g x1)) x2)) ((f x1) x2))
% Found ((eq_ref Prop) ((x0 (g x1)) x2)) as proof of (((eq Prop) ((x0 (g x1)) x2)) ((f x1) x2))
% Found ((eq_ref Prop) ((x0 (g x1)) x2)) as proof of (((eq Prop) ((x0 (g x1)) x2)) ((f x1) x2))
% Found (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2))) as proof of (((eq Prop) ((x0 (g x1)) x2)) ((f x1) x2))
% Found (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2))) as proof of (forall (x:fofType), (((eq Prop) ((x0 (g x1)) x)) ((f x1) x)))
% Found ((functional_extensionality00000 (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2)))) (((eq_ref (fofType->Prop)) (x0 (g x1))) P)) as proof of ((P (x0 (g x1)))->(P (f x1)))
% Found ((functional_extensionality00000 (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2)))) (((eq_ref (fofType->Prop)) (x0 (g x1))) P)) as proof of ((P (x0 (g x1)))->(P (f x1)))
% Found (((fun (x2:(forall (x:fofType), (((eq Prop) ((x0 (g x1)) x)) ((f x1) x))))=> ((functional_extensionality0000 x2) (fun (x4:(fofType->Prop))=> ((P (x0 (g x1)))->(P x4))))) (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2)))) (((eq_ref (fofType->Prop)) (x0 (g x1))) P)) as proof of ((P (x0 (g x1)))->(P (f x1)))
% Found (((fun (x2:(forall (x:fofType), (((eq Prop) ((x0 (g x1)) x)) ((f x1) x))))=> (((functional_extensionality000 (f x1)) x2) (fun (x4:(fofType->Prop))=> ((P (x0 (g x1)))->(P x4))))) (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2)))) (((eq_ref (fofType->Prop)) (x0 (g x1))) P)) as proof of ((P (x0 (g x1)))->(P (f x1)))
% Found (((fun (x2:(forall (x:fofType), (((eq Prop) ((x0 (g x1)) x)) ((f x1) x))))=> ((((functional_extensionality00 (x0 (g x1))) (f x1)) x2) (fun (x4:(fofType->Prop))=> ((P (x0 (g x1)))->(P x4))))) (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2)))) (((eq_ref (fofType->Prop)) (x0 (g x1))) P)) as proof of ((P (x0 (g x1)))->(P (f x1)))
% Found (((fun (x2:(forall (x:fofType), (((eq Prop) ((x0 (g x1)) x)) ((f x1) x))))=> (((((functional_extensionality0 Prop) (x0 (g x1))) (f x1)) x2) (fun (x4:(fofType->Prop))=> ((P (x0 (g x1)))->(P x4))))) (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2)))) (((eq_ref (fofType->Prop)) (x0 (g x1))) P)) as proof of ((P (x0 (g x1)))->(P (f x1)))
% Found (((fun (x2:(forall (x:fofType), (((eq Prop) ((x0 (g x1)) x)) ((f x1) x))))=> ((((((functional_extensionality fofType) Prop) (x0 (g x1))) (f x1)) x2) (fun (x4:(fofType->Prop))=> ((P (x0 (g x1)))->(P x4))))) (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2)))) (((eq_ref (fofType->Prop)) (x0 (g x1))) P)) as proof of ((P (x0 (g x1)))->(P (f x1)))
% Found (fun (P:((fofType->Prop)->Prop))=> (((fun (x2:(forall (x:fofType), (((eq Prop) ((x0 (g x1)) x)) ((f x1) x))))=> ((((((functional_extensionality fofType) Prop) (x0 (g x1))) (f x1)) x2) (fun (x4:(fofType->Prop))=> ((P (x0 (g x1)))->(P x4))))) (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2)))) (((eq_ref (fofType->Prop)) (x0 (g x1))) P))) as proof of ((P (x0 (g x1)))->(P (f x1)))
% Found x3:(P1 (x0 (g x2)))
% Instantiate: g0:=(fun (x4:fofType)=> (x0 (g x4))):(fofType->(fofType->Prop))
% Found (fun (x3:(P1 (x0 (g x2))))=> x3) as proof of (P1 (g0 x2))
% Found (fun (P1:((fofType->Prop)->Prop)) (x3:(P1 (x0 (g x2))))=> x3) as proof of ((P1 (x0 (g x2)))->(P1 (g0 x2)))
% Found (fun (x2:fofType) (P1:((fofType->Prop)->Prop)) (x3:(P1 (x0 (g x2))))=> x3) as proof of (((eq (fofType->Prop)) (x0 (g x2))) (g0 x2))
% Found (fun (x2:fofType) (P1:((fofType->Prop)->Prop)) (x3:(P1 (x0 (g x2))))=> x3) as proof of (forall (x:fofType), (((eq (fofType->Prop)) (x0 (g x))) (g0 x)))
% Found (functional_extensionality00010 (fun (x2:fofType) (P1:((fofType->Prop)->Prop)) (x3:(P1 (x0 (g x2))))=> x3)) as proof of ((P (x0 (g x1)))->(P (f x1)))
% Found (functional_extensionality00010 (fun (x2:fofType) (P1:((fofType->Prop)->Prop)) (x3:(P1 (x0 (g x2))))=> x3)) as proof of ((P (x0 (g x1)))->(P (f x1)))
% Found ((fun (x2:(forall (x:fofType), (((eq (fofType->Prop)) (x0 (g x))) (g0 x))))=> ((functional_extensionality0001 x2) (fun (x3:(fofType->(fofType->Prop)))=> (P (x0 (g x1)))))) (fun (x2:fofType) (P1:((fofType->Prop)->Prop)) (x3:(P1 (x0 (g x2))))=> x3)) as proof of ((P (x0 (g x1)))->(P (f x1)))
% Found ((fun (x2:(forall (x:fofType), (((eq (fofType->Prop)) (x0 (g x))) ((fun (x4:fofType)=> (x0 (g x4))) x))))=> (((functional_extensionality000 (fun (x4:fofType)=> (x0 (g x4)))) x2) (fun (x3:(fofType->(fofType->Prop)))=> (P (x0 (g x1)))))) (fun (x2:fofType) (P1:((fofType->Prop)->Prop)) (x3:(P1 (x0 (g x2))))=> x3)) as proof of ((P (x0 (g x1)))->(P (f x1)))
% Found ((fun (x2:(forall (x:fofType), (((eq (fofType->Prop)) (x0 (g x))) ((fun (x4:fofType)=> (x0 (g x4))) x))))=> (((functional_extensionality000 (fun (x4:fofType)=> (x0 (g x4)))) x2) (fun (x3:(fofType->(fofType->Prop)))=> (P (x0 (g x1)))))) (fun (x2:fofType) (P1:((fofType->Prop)->Prop)) (x3:(P1 (x0 (g x2))))=> x3)) as proof of ((P (x0 (g x1)))->(P (f x1)))
% Found (fun (P:((fofType->Prop)->Prop))=> ((fun (x2:(forall (x:fofType), (((eq (fofType->Prop)) (x0 (g x))) ((fun (x4:fofType)=> (x0 (g x4))) x))))=> (((functional_extensionality000 (fun (x4:fofType)=> (x0 (g x4)))) x2) (fun (x3:(fofType->(fofType->Prop)))=> (P (x0 (g x1)))))) (fun (x2:fofType) (P1:((fofType->Prop)->Prop)) (x3:(P1 (x0 (g x2))))=> x3))) as proof of ((P (x0 (g x1)))->(P (f x1)))
% Found x3:(P1 (x0 (g x2)))
% Instantiate: g0:=(fun (x4:fofType)=> (x0 (g x4))):(fofType->(fofType->Prop))
% Found (fun (x3:(P1 (x0 (g x2))))=> x3) as proof of (P1 (g0 x2))
% Found (fun (P1:((fofType->Prop)->Prop)) (x3:(P1 (x0 (g x2))))=> x3) as proof of ((P1 (x0 (g x2)))->(P1 (g0 x2)))
% Found (fun (x2:fofType) (P1:((fofType->Prop)->Prop)) (x3:(P1 (x0 (g x2))))=> x3) as proof of (((eq (fofType->Prop)) (x0 (g x2))) (g0 x2))
% Found (fun (x2:fofType) (P1:((fofType->Prop)->Prop)) (x3:(P1 (x0 (g x2))))=> x3) as proof of (forall (x:fofType), (((eq (fofType->Prop)) (x0 (g x))) (g0 x)))
% Found (functional_extensionality_dep00010 (fun (x2:fofType) (P1:((fofType->Prop)->Prop)) (x3:(P1 (x0 (g x2))))=> x3)) as proof of ((P (x0 (g x1)))->(P (f x1)))
% Found (functional_extensionality_dep00010 (fun (x2:fofType) (P1:((fofType->Prop)->Prop)) (x3:(P1 (x0 (g x2))))=> x3)) as proof of ((P (x0 (g x1)))->(P (f x1)))
% Found ((fun (x2:(forall (x:fofType), (((eq (fofType->Prop)) (x0 (g x))) (g0 x))))=> ((functional_extensionality_dep0001 x2) (fun (x3:(fofType->(fofType->Prop)))=> (P (x0 (g x1)))))) (fun (x2:fofType) (P1:((fofType->Prop)->Prop)) (x3:(P1 (x0 (g x2))))=> x3)) as proof of ((P (x0 (g x1)))->(P (f x1)))
% Found ((fun (x2:(forall (x:fofType), (((eq (fofType->Prop)) (x0 (g x))) ((fun (x4:fofType)=> (x0 (g x4))) x))))=> (((functional_extensionality_dep000 (fun (x4:fofType)=> (x0 (g x4)))) x2) (fun (x3:(fofType->(fofType->Prop)))=> (P (x0 (g x1)))))) (fun (x2:fofType) (P1:((fofType->Prop)->Prop)) (x3:(P1 (x0 (g x2))))=> x3)) as proof of ((P (x0 (g x1)))->(P (f x1)))
% Found ((fun (x2:(forall (x:fofType), (((eq (fofType->Prop)) (x0 (g x))) ((fun (x4:fofType)=> (x0 (g x4))) x))))=> (((functional_extensionality_dep000 (fun (x4:fofType)=> (x0 (g x4)))) x2) (fun (x3:(fofType->(fofType->Prop)))=> (P (x0 (g x1)))))) (fun (x2:fofType) (P1:((fofType->Prop)->Prop)) (x3:(P1 (x0 (g x2))))=> x3)) as proof of ((P (x0 (g x1)))->(P (f x1)))
% Found (fun (P:((fofType->Prop)->Prop))=> ((fun (x2:(forall (x:fofType), (((eq (fofType->Prop)) (x0 (g x))) ((fun (x4:fofType)=> (x0 (g x4))) x))))=> (((functional_extensionality_dep000 (fun (x4:fofType)=> (x0 (g x4)))) x2) (fun (x3:(fofType->(fofType->Prop)))=> (P (x0 (g x1)))))) (fun (x2:fofType) (P1:((fofType->Prop)->Prop)) (x3:(P1 (x0 (g x2))))=> x3))) as proof of ((P (x0 (g x1)))->(P (f x1)))
% Found eq_ref00:=(eq_ref0 ((x0 (g x1)) x2)):(((eq Prop) ((x0 (g x1)) x2)) ((x0 (g x1)) x2))
% Found (eq_ref0 ((x0 (g x1)) x2)) as proof of (((eq Prop) ((x0 (g x1)) x2)) ((f x1) x2))
% Found ((eq_ref Prop) ((x0 (g x1)) x2)) as proof of (((eq Prop) ((x0 (g x1)) x2)) ((f x1) x2))
% Found ((eq_ref Prop) ((x0 (g x1)) x2)) as proof of (((eq Prop) ((x0 (g x1)) x2)) ((f x1) x2))
% Found (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2))) as proof of (((eq Prop) ((x0 (g x1)) x2)) ((f x1) x2))
% Found (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2))) as proof of (forall (x:fofType), (((eq Prop) ((x0 (g x1)) x)) ((f x1) x)))
% Found (functional_extensionality_dep0000 (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2)))) as proof of (forall (P:((fofType->Prop)->Prop)), ((P (x0 (g x1)))->(P (f x1))))
% Found ((functional_extensionality_dep000 (f x1)) (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2)))) as proof of (forall (P:((fofType->Prop)->Prop)), ((P (x0 (g x1)))->(P (f x1))))
% Found (((functional_extensionality_dep00 (x0 (g x1))) (f x1)) (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2)))) as proof of (forall (P:((fofType->Prop)->Prop)), ((P (x0 (g x1)))->(P (f x1))))
% Found ((((functional_extensionality_dep0 (fun (x4:fofType)=> Prop)) (x0 (g x1))) (f x1)) (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2)))) as proof of (forall (P:((fofType->Prop)->Prop)), ((P (x0 (g x1)))->(P (f x1))))
% Found (((((functional_extensionality_dep fofType) (fun (x4:fofType)=> Prop)) (x0 (g x1))) (f x1)) (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2)))) as proof of (forall (P:((fofType->Prop)->Prop)), ((P (x0 (g x1)))->(P (f x1))))
% Found (((((functional_extensionality_dep fofType) (fun (x4:fofType)=> Prop)) (x0 (g x1))) (f x1)) (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2)))) as proof of (forall (P:((fofType->Prop)->Prop)), ((P (x0 (g x1)))->(P (f x1))))
% Found eq_ref00:=(eq_ref0 ((x0 (g x1)) x2)):(((eq Prop) ((x0 (g x1)) x2)) ((x0 (g x1)) x2))
% Found (eq_ref0 ((x0 (g x1)) x2)) as proof of (((eq Prop) ((x0 (g x1)) x2)) ((f x1) x2))
% Found ((eq_ref Prop) ((x0 (g x1)) x2)) as proof of (((eq Prop) ((x0 (g x1)) x2)) ((f x1) x2))
% Found ((eq_ref Prop) ((x0 (g x1)) x2)) as proof of (((eq Prop) ((x0 (g x1)) x2)) ((f x1) x2))
% Found (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2))) as proof of (((eq Prop) ((x0 (g x1)) x2)) ((f x1) x2))
% Found (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2))) as proof of (forall (x:fofType), (((eq Prop) ((x0 (g x1)) x)) ((f x1) x)))
% Found (functional_extensionality_dep0000 (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2)))) as proof of (forall (P:((fofType->Prop)->Prop)), ((P (x0 (g x1)))->(P (f x1))))
% Found ((functional_extensionality_dep000 (f x1)) (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2)))) as proof of (forall (P:((fofType->Prop)->Prop)), ((P (x0 (g x1)))->(P (f x1))))
% Found (((functional_extensionality_dep00 (x0 (g x1))) (f x1)) (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2)))) as proof of (forall (P:((fofType->Prop)->Prop)), ((P (x0 (g x1)))->(P (f x1))))
% Found ((((functional_extensionality_dep0 (fun (x4:fofType)=> Prop)) (x0 (g x1))) (f x1)) (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2)))) as proof of (forall (P:((fofType->Prop)->Prop)), ((P (x0 (g x1)))->(P (f x1))))
% Found (((((functional_extensionality_dep fofType) (fun (x4:fofType)=> Prop)) (x0 (g x1))) (f x1)) (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2)))) as proof of (forall (P:((fofType->Prop)->Prop)), ((P (x0 (g x1)))->(P (f x1))))
% Found (((((functional_extensionality_dep fofType) (fun (x4:fofType)=> Prop)) (x0 (g x1))) (f x1)) (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2)))) as proof of (forall (P:((fofType->Prop)->Prop)), ((P (x0 (g x1)))->(P (f x1))))
% Found eq_ref00:=(eq_ref0 ((x0 (g x1)) x2)):(((eq Prop) ((x0 (g x1)) x2)) ((x0 (g x1)) x2))
% Found (eq_ref0 ((x0 (g x1)) x2)) as proof of (((eq Prop) ((x0 (g x1)) x2)) ((f x1) x2))
% Found ((eq_ref Prop) ((x0 (g x1)) x2)) as proof of (((eq Prop) ((x0 (g x1)) x2)) ((f x1) x2))
% Found ((eq_ref Prop) ((x0 (g x1)) x2)) as proof of (((eq Prop) ((x0 (g x1)) x2)) ((f x1) x2))
% Found (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2))) as proof of (((eq Prop) ((x0 (g x1)) x2)) ((f x1) x2))
% Found (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2))) as proof of (forall (x:fofType), (((eq Prop) ((x0 (g x1)) x)) ((f x1) x)))
% Found (functional_extensionality0000 (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2)))) as proof of (forall (P:((fofType->Prop)->Prop)), ((P (x0 (g x1)))->(P (f x1))))
% Found ((functional_extensionality000 (f x1)) (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2)))) as proof of (forall (P:((fofType->Prop)->Prop)), ((P (x0 (g x1)))->(P (f x1))))
% Found (((functional_extensionality00 (x0 (g x1))) (f x1)) (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2)))) as proof of (forall (P:((fofType->Prop)->Prop)), ((P (x0 (g x1)))->(P (f x1))))
% Found ((((functional_extensionality0 Prop) (x0 (g x1))) (f x1)) (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2)))) as proof of (forall (P:((fofType->Prop)->Prop)), ((P (x0 (g x1)))->(P (f x1))))
% Found (((((functional_extensionality fofType) Prop) (x0 (g x1))) (f x1)) (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2)))) as proof of (forall (P:((fofType->Prop)->Prop)), ((P (x0 (g x1)))->(P (f x1))))
% Found (((((functional_extensionality fofType) Prop) (x0 (g x1))) (f x1)) (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2)))) as proof of (forall (P:((fofType->Prop)->Prop)), ((P (x0 (g x1)))->(P (f x1))))
% Found eq_ref000:=(eq_ref00 P):((P ((x0 (g x1)) y))->(P ((x0 (g x1)) y)))
% Found (eq_ref00 P) as proof of ((P ((x0 (g x1)) y))->(P ((b x1) y)))
% Found ((eq_ref0 ((x0 (g x1)) y)) P) as proof of ((P ((x0 (g x1)) y))->(P ((b x1) y)))
% Found (((eq_ref Prop) ((x0 (g x1)) y)) P) as proof of ((P ((x0 (g x1)) y))->(P ((b x1) y)))
% Found (((eq_ref Prop) ((x0 (g x1)) y)) P) as proof of ((P ((x0 (g x1)) y))->(P ((b x1) y)))
% Found (fun (P:(Prop->Prop))=> (((eq_ref Prop) ((x0 (g x1)) y)) P)) as proof of ((P ((x0 (g x1)) y))->(P ((b x1) y)))
% Found (fun (y:fofType) (P:(Prop->Prop))=> (((eq_ref Prop) ((x0 (g x1)) y)) P)) as proof of (((eq Prop) ((x0 (g x1)) y)) ((b x1) y))
% Found eq_ref00:=(eq_ref0 ((x0 (g x1)) x2)):(((eq Prop) ((x0 (g x1)) x2)) ((x0 (g x1)) x2))
% Found (eq_ref0 ((x0 (g x1)) x2)) as proof of (((eq Prop) ((x0 (g x1)) x2)) ((f x1) x2))
% Found ((eq_ref Prop) ((x0 (g x1)) x2)) as proof of (((eq Prop) ((x0 (g x1)) x2)) ((f x1) x2))
% Found ((eq_ref Prop) ((x0 (g x1)) x2)) as proof of (((eq Prop) ((x0 (g x1)) x2)) ((f x1) x2))
% Found (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2))) as proof of (((eq Prop) ((x0 (g x1)) x2)) ((f x1) x2))
% Found (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2))) as proof of (forall (x:fofType), (((eq Prop) ((x0 (g x1)) x)) ((f x1) x)))
% Found (functional_extensionality0000 (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2)))) as proof of (forall (P:((fofType->Prop)->Prop)), ((P (x0 (g x1)))->(P (f x1))))
% Found ((functional_extensionality000 (f x1)) (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2)))) as proof of (forall (P:((fofType->Prop)->Prop)), ((P (x0 (g x1)))->(P (f x1))))
% Found (((functional_extensionality00 (x0 (g x1))) (f x1)) (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2)))) as proof of (forall (P:((fofType->Prop)->Prop)), ((P (x0 (g x1)))->(P (f x1))))
% Found ((((functional_extensionality0 Prop) (x0 (g x1))) (f x1)) (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2)))) as proof of (forall (P:((fofType->Prop)->Prop)), ((P (x0 (g x1)))->(P (f x1))))
% Found (((((functional_extensionality fofType) Prop) (x0 (g x1))) (f x1)) (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2)))) as proof of (forall (P:((fofType->Prop)->Prop)), ((P (x0 (g x1)))->(P (f x1))))
% Found (((((functional_extensionality fofType) Prop) (x0 (g x1))) (f x1)) (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2)))) as proof of (forall (P:((fofType->Prop)->Prop)), ((P (x0 (g x1)))->(P (f x1))))
% Found eq_ref00:=(eq_ref0 ((x0 (g x1)) x2)):(((eq Prop) ((x0 (g x1)) x2)) ((x0 (g x1)) x2))
% Found (eq_ref0 ((x0 (g x1)) x2)) as proof of (((eq Prop) ((x0 (g x1)) x2)) ((f x1) x2))
% Found ((eq_ref Prop) ((x0 (g x1)) x2)) as proof of (((eq Prop) ((x0 (g x1)) x2)) ((f x1) x2))
% Found ((eq_ref Prop) ((x0 (g x1)) x2)) as proof of (((eq Prop) ((x0 (g x1)) x2)) ((f x1) x2))
% Found (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2))) as proof of (((eq Prop) ((x0 (g x1)) x2)) ((f x1) x2))
% Found (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2))) as proof of (forall (x:fofType), (((eq Prop) ((x0 (g x1)) x)) ((f x1) x)))
% Found (functional_extensionality_dep0000 (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2)))) as proof of (((eq (fofType->Prop)) (x0 (g x1))) (f x1))
% Found ((functional_extensionality_dep000 (f x1)) (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2)))) as proof of (((eq (fofType->Prop)) (x0 (g x1))) (f x1))
% Found (((functional_extensionality_dep00 (x0 (g x1))) (f x1)) (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2)))) as proof of (((eq (fofType->Prop)) (x0 (g x1))) (f x1))
% Found ((((functional_extensionality_dep0 (fun (x4:fofType)=> Prop)) (x0 (g x1))) (f x1)) (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2)))) as proof of (((eq (fofType->Prop)) (x0 (g x1))) (f x1))
% Found (((((functional_extensionality_dep fofType) (fun (x4:fofType)=> Prop)) (x0 (g x1))) (f x1)) (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2)))) as proof of (((eq (fofType->Prop)) (x0 (g x1))) (f x1))
% Found eq_ref00:=(eq_ref0 ((x0 (g x1)) x2)):(((eq Prop) ((x0 (g x1)) x2)) ((x0 (g x1)) x2))
% Found (eq_ref0 ((x0 (g x1)) x2)) as proof of (((eq Prop) ((x0 (g x1)) x2)) ((f x1) x2))
% Found ((eq_ref Prop) ((x0 (g x1)) x2)) as proof of (((eq Prop) ((x0 (g x1)) x2)) ((f x1) x2))
% Found ((eq_ref Prop) ((x0 (g x1)) x2)) as proof of (((eq Prop) ((x0 (g x1)) x2)) ((f x1) x2))
% Found (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2))) as proof of (((eq Prop) ((x0 (g x1)) x2)) ((f x1) x2))
% Found (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2))) as proof of (forall (x:fofType), (((eq Prop) ((x0 (g x1)) x)) ((f x1) x)))
% Found (functional_extensionality_dep0000 (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2)))) as proof of (((eq (fofType->Prop)) (x0 (g x1))) (f x1))
% Found ((functional_extensionality_dep000 (f x1)) (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2)))) as proof of (((eq (fofType->Prop)) (x0 (g x1))) (f x1))
% Found (((functional_extensionality_dep00 (x0 (g x1))) (f x1)) (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2)))) as proof of (((eq (fofType->Prop)) (x0 (g x1))) (f x1))
% Found ((((functional_extensionality_dep0 (fun (x4:fofType)=> Prop)) (x0 (g x1))) (f x1)) (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2)))) as proof of (((eq (fofType->Prop)) (x0 (g x1))) (f x1))
% Found (((((functional_extensionality_dep fofType) (fun (x4:fofType)=> Prop)) (x0 (g x1))) (f x1)) (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2)))) as proof of (((eq (fofType->Prop)) (x0 (g x1))) (f x1))
% Found eq_ref00:=(eq_ref0 (g Xx)):(((eq (fofType->Prop)) (g Xx)) (g Xx))
% Found (eq_ref0 (g Xx)) as proof of (((eq (fofType->Prop)) (g Xx)) (g x1))
% Found ((eq_ref (fofType->Prop)) (g Xx)) as proof of (((eq (fofType->Prop)) (g Xx)) (g x1))
% Found ((eq_ref (fofType->Prop)) (g Xx)) as proof of (((eq (fofType->Prop)) (g Xx)) (g x1))
% Found ((eq_ref (fofType->Prop)) (g Xx)) as proof of (((eq (fofType->Prop)) (g Xx)) (g x1))
% Found (x200 ((eq_ref (fofType->Prop)) (g Xx))) as proof of ((P (x0 (g x1)))->(P (f x1)))
% Found (x200 ((eq_ref (fofType->Prop)) (g Xx))) as proof of ((P (x0 (g x1)))->(P (f x1)))
% Found ((fun (x3:(((eq (fofType->Prop)) (g Xx)) (g x1)))=> ((x20 x3) (fun (x4:(fofType->Prop))=> (P (x0 (g x1)))))) ((eq_ref (fofType->Prop)) (g Xx))) as proof of ((P (x0 (g x1)))->(P (f x1)))
% Found ((fun (x3:(((eq (fofType->Prop)) (g Xx)) (g x1)))=> ((x20 x3) (fun (x4:(fofType->Prop))=> (P (x0 (g x1)))))) ((eq_ref (fofType->Prop)) (g Xx))) as proof of ((P (x0 (g x1)))->(P (f x1)))
% Found ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> (((x2 x1) x3) (fun (x4:(fofType->Prop))=> (P (x0 (g x1)))))) ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P (x0 (g x1)))->(P (f x1)))
% Found ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> ((((fun (Xx:fofType)=> ((x Xx) x1)) x1) x3) (fun (x4:(fofType->Prop))=> (P (x0 (g x1)))))) ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P (x0 (g x1)))->(P (f x1)))
% Found (fun (P:((fofType->Prop)->Prop))=> ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> ((((fun (Xx:fofType)=> ((x Xx) x1)) x1) x3) (fun (x4:(fofType->Prop))=> (P (x0 (g x1)))))) ((eq_ref (fofType->Prop)) (g x1)))) as proof of ((P (x0 (g x1)))->(P (f x1)))
% Found eq_ref00:=(eq_ref0 (g Xx)):(((eq (fofType->Prop)) (g Xx)) (g Xx))
% Found (eq_ref0 (g Xx)) as proof of (((eq (fofType->Prop)) (g Xx)) (g x1))
% Found ((eq_ref (fofType->Prop)) (g Xx)) as proof of (((eq (fofType->Prop)) (g Xx)) (g x1))
% Found ((eq_ref (fofType->Prop)) (g Xx)) as proof of (((eq (fofType->Prop)) (g Xx)) (g x1))
% Found ((eq_ref (fofType->Prop)) (g Xx)) as proof of (((eq (fofType->Prop)) (g Xx)) (g x1))
% Found (x200 ((eq_ref (fofType->Prop)) (g Xx))) as proof of ((P (x0 (g x1)))->(P (f x1)))
% Found (x200 ((eq_ref (fofType->Prop)) (g Xx))) as proof of ((P (x0 (g x1)))->(P (f x1)))
% Found ((fun (x3:(((eq (fofType->Prop)) (g Xx)) (g x1)))=> ((x20 x3) (fun (x4:(fofType->Prop))=> (P (x0 (g x1)))))) ((eq_ref (fofType->Prop)) (g Xx))) as proof of ((P (x0 (g x1)))->(P (f x1)))
% Found ((fun (x3:(((eq (fofType->Prop)) (g Xx)) (g x1)))=> ((x20 x3) (fun (x4:(fofType->Prop))=> (P (x0 (g x1)))))) ((eq_ref (fofType->Prop)) (g Xx))) as proof of ((P (x0 (g x1)))->(P (f x1)))
% Found ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> (((x2 x1) x3) (fun (x4:(fofType->Prop))=> (P (x0 (g x1)))))) ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P (x0 (g x1)))->(P (f x1)))
% Found ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> ((((fun (Xx:fofType)=> ((x Xx) x1)) x1) x3) (fun (x4:(fofType->Prop))=> (P (x0 (g x1)))))) ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P (x0 (g x1)))->(P (f x1)))
% Found (fun (P:((fofType->Prop)->Prop))=> ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> ((((fun (Xx:fofType)=> ((x Xx) x1)) x1) x3) (fun (x4:(fofType->Prop))=> (P (x0 (g x1)))))) ((eq_ref (fofType->Prop)) (g x1)))) as proof of ((P (x0 (g x1)))->(P (f x1)))
% Found eq_ref00:=(eq_ref0 ((x0 (g x1)) x2)):(((eq Prop) ((x0 (g x1)) x2)) ((x0 (g x1)) x2))
% Found (eq_ref0 ((x0 (g x1)) x2)) as proof of (((eq Prop) ((x0 (g x1)) x2)) ((f x1) x2))
% Found ((eq_ref Prop) ((x0 (g x1)) x2)) as proof of (((eq Prop) ((x0 (g x1)) x2)) ((f x1) x2))
% Found ((eq_ref Prop) ((x0 (g x1)) x2)) as proof of (((eq Prop) ((x0 (g x1)) x2)) ((f x1) x2))
% Found (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2))) as proof of (((eq Prop) ((x0 (g x1)) x2)) ((f x1) x2))
% Found (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2))) as proof of (forall (x:fofType), (((eq Prop) ((x0 (g x1)) x)) ((f x1) x)))
% Found (functional_extensionality0000 (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2)))) as proof of (((eq (fofType->Prop)) (x0 (g x1))) (f x1))
% Found ((functional_extensionality000 (f x1)) (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2)))) as proof of (((eq (fofType->Prop)) (x0 (g x1))) (f x1))
% Found (((functional_extensionality00 (x0 (g x1))) (f x1)) (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2)))) as proof of (((eq (fofType->Prop)) (x0 (g x1))) (f x1))
% Found ((((functional_extensionality0 Prop) (x0 (g x1))) (f x1)) (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2)))) as proof of (((eq (fofType->Prop)) (x0 (g x1))) (f x1))
% Found (((((functional_extensionality fofType) Prop) (x0 (g x1))) (f x1)) (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2)))) as proof of (((eq (fofType->Prop)) (x0 (g x1))) (f x1))
% Found eq_ref000:=(eq_ref00 P):((P ((x0 (g x1)) y))->(P ((x0 (g x1)) y)))
% Found (eq_ref00 P) as proof of ((P ((x0 (g x1)) y))->(P ((b x1) y)))
% Found ((eq_ref0 ((x0 (g x1)) y)) P) as proof of ((P ((x0 (g x1)) y))->(P ((b x1) y)))
% Found (((eq_ref Prop) ((x0 (g x1)) y)) P) as proof of ((P ((x0 (g x1)) y))->(P ((b x1) y)))
% Found (((eq_ref Prop) ((x0 (g x1)) y)) P) as proof of ((P ((x0 (g x1)) y))->(P ((b x1) y)))
% Found (fun (P:(Prop->Prop))=> (((eq_ref Prop) ((x0 (g x1)) y)) P)) as proof of ((P ((x0 (g x1)) y))->(P ((b x1) y)))
% Found (fun (y:fofType) (P:(Prop->Prop))=> (((eq_ref Prop) ((x0 (g x1)) y)) P)) as proof of (((eq Prop) ((x0 (g x1)) y)) ((b x1) y))
% Found eq_ref00:=(eq_ref0 ((x0 (g x1)) x2)):(((eq Prop) ((x0 (g x1)) x2)) ((x0 (g x1)) x2))
% Found (eq_ref0 ((x0 (g x1)) x2)) as proof of (((eq Prop) ((x0 (g x1)) x2)) ((f x1) x2))
% Found ((eq_ref Prop) ((x0 (g x1)) x2)) as proof of (((eq Prop) ((x0 (g x1)) x2)) ((f x1) x2))
% Found ((eq_ref Prop) ((x0 (g x1)) x2)) as proof of (((eq Prop) ((x0 (g x1)) x2)) ((f x1) x2))
% Found (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2))) as proof of (((eq Prop) ((x0 (g x1)) x2)) ((f x1) x2))
% Found (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2))) as proof of (forall (x:fofType), (((eq Prop) ((x0 (g x1)) x)) ((f x1) x)))
% Found (functional_extensionality0000 (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2)))) as proof of (((eq (fofType->Prop)) (x0 (g x1))) (f x1))
% Found ((functional_extensionality000 (f x1)) (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2)))) as proof of (((eq (fofType->Prop)) (x0 (g x1))) (f x1))
% Found (((functional_extensionality00 (x0 (g x1))) (f x1)) (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2)))) as proof of (((eq (fofType->Prop)) (x0 (g x1))) (f x1))
% Found ((((functional_extensionality0 Prop) (x0 (g x1))) (f x1)) (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2)))) as proof of (((eq (fofType->Prop)) (x0 (g x1))) (f x1))
% Found (((((functional_extensionality fofType) Prop) (x0 (g x1))) (f x1)) (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2)))) as proof of (((eq (fofType->Prop)) (x0 (g x1))) (f x1))
% Found eq_ref000:=(eq_ref00 P):((P ((x0 (g x1)) y))->(P ((x0 (g x1)) y)))
% Found (eq_ref00 P) as proof of ((P ((x0 (g x1)) y))->(P ((b x1) y)))
% Found ((eq_ref0 ((x0 (g x1)) y)) P) as proof of ((P ((x0 (g x1)) y))->(P ((b x1) y)))
% Found (((eq_ref Prop) ((x0 (g x1)) y)) P) as proof of ((P ((x0 (g x1)) y))->(P ((b x1) y)))
% Found (((eq_ref Prop) ((x0 (g x1)) y)) P) as proof of ((P ((x0 (g x1)) y))->(P ((b x1) y)))
% Found (fun (P:(Prop->Prop))=> (((eq_ref Prop) ((x0 (g x1)) y)) P)) as proof of ((P ((x0 (g x1)) y))->(P ((b x1) y)))
% Found (fun (P:(Prop->Prop))=> (((eq_ref Prop) ((x0 (g x1)) y)) P)) as proof of (forall (P:(Prop->Prop)), ((P ((x0 (g x1)) y))->(P ((b x1) y))))
% Found (fun (y:fofType) (P:(Prop->Prop))=> (((eq_ref Prop) ((x0 (g x1)) y)) P)) as proof of (((eq Prop) ((x0 (g x1)) y)) ((b x1) y))
% Found eq_ref00:=(eq_ref0 (g Xx)):(((eq (fofType->Prop)) (g Xx)) (g Xx))
% Found (eq_ref0 (g Xx)) as proof of (((eq (fofType->Prop)) (g Xx)) (g x1))
% Found ((eq_ref (fofType->Prop)) (g Xx)) as proof of (((eq (fofType->Prop)) (g Xx)) (g x1))
% Found ((eq_ref (fofType->Prop)) (g Xx)) as proof of (((eq (fofType->Prop)) (g Xx)) (g x1))
% Found ((eq_ref (fofType->Prop)) (g Xx)) as proof of (((eq (fofType->Prop)) (g Xx)) (g x1))
% Found (x200 ((eq_ref (fofType->Prop)) (g Xx))) as proof of ((P (x0 (g x1)))->(P (f x1)))
% Found (x200 ((eq_ref (fofType->Prop)) (g Xx))) as proof of ((P (x0 (g x1)))->(P (f x1)))
% Found (x200 ((eq_ref (fofType->Prop)) (g Xx))) as proof of ((P (x0 (g x1)))->(P (f x1)))
% Found ((fun (x3:(((eq (fofType->Prop)) (g Xx)) (g x1)))=> ((x20 x3) (fun (x4:(fofType->Prop))=> (P (x0 (g x1)))))) ((eq_ref (fofType->Prop)) (g Xx))) as proof of ((P (x0 (g x1)))->(P (f x1)))
% Found ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> (((x2 x1) x3) (fun (x4:(fofType->Prop))=> (P (x0 (g x1)))))) ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P (x0 (g x1)))->(P (f x1)))
% Found ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> ((((fun (Xx:fofType)=> ((x Xx) x1)) x1) x3) (fun (x4:(fofType->Prop))=> (P (x0 (g x1)))))) ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P (x0 (g x1)))->(P (f x1)))
% Found (fun (P:((fofType->Prop)->Prop))=> ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> ((((fun (Xx:fofType)=> ((x Xx) x1)) x1) x3) (fun (x4:(fofType->Prop))=> (P (x0 (g x1)))))) ((eq_ref (fofType->Prop)) (g x1)))) as proof of ((P (x0 (g x1)))->(P (f x1)))
% Found eq_ref00:=(eq_ref0 (g Xx)):(((eq (fofType->Prop)) (g Xx)) (g Xx))
% Found (eq_ref0 (g Xx)) as proof of (((eq (fofType->Prop)) (g Xx)) (g x1))
% Found ((eq_ref (fofType->Prop)) (g Xx)) as proof of (((eq (fofType->Prop)) (g Xx)) (g x1))
% Found ((eq_ref (fofType->Prop)) (g Xx)) as proof of (((eq (fofType->Prop)) (g Xx)) (g x1))
% Found ((eq_ref (fofType->Prop)) (g Xx)) as proof of (((eq (fofType->Prop)) (g Xx)) (g x1))
% Found (x200 ((eq_ref (fofType->Prop)) (g Xx))) as proof of ((P (x0 (g x1)))->(P (f x1)))
% Found (x200 ((eq_ref (fofType->Prop)) (g Xx))) as proof of ((P (x0 (g x1)))->(P (f x1)))
% Found (x200 ((eq_ref (fofType->Prop)) (g Xx))) as proof of ((P (x0 (g x1)))->(P (f x1)))
% Found ((fun (x3:(((eq (fofType->Prop)) (g Xx)) (g x1)))=> ((x20 x3) (fun (x4:(fofType->Prop))=> (P (x0 (g x1)))))) ((eq_ref (fofType->Prop)) (g Xx))) as proof of ((P (x0 (g x1)))->(P (f x1)))
% Found ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> (((x2 x1) x3) (fun (x4:(fofType->Prop))=> (P (x0 (g x1)))))) ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P (x0 (g x1)))->(P (f x1)))
% Found ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> ((((fun (Xx:fofType)=> ((x Xx) x1)) x1) x3) (fun (x4:(fofType->Prop))=> (P (x0 (g x1)))))) ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P (x0 (g x1)))->(P (f x1)))
% Found (fun (P:((fofType->Prop)->Prop))=> ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> ((((fun (Xx:fofType)=> ((x Xx) x1)) x1) x3) (fun (x4:(fofType->Prop))=> (P (x0 (g x1)))))) ((eq_ref (fofType->Prop)) (g x1)))) as proof of ((P (x0 (g x1)))->(P (f x1)))
% Found eq_ref00:=(eq_ref0 (g Xx)):(((eq (fofType->Prop)) (g Xx)) (g Xx))
% Found (eq_ref0 (g Xx)) as proof of (((eq (fofType->Prop)) (g Xx)) (g x1))
% Found ((eq_ref (fofType->Prop)) (g Xx)) as proof of (((eq (fofType->Prop)) (g Xx)) (g x1))
% Found ((eq_ref (fofType->Prop)) (g Xx)) as proof of (((eq (fofType->Prop)) (g Xx)) (g x1))
% Found ((eq_ref (fofType->Prop)) (g Xx)) as proof of (((eq (fofType->Prop)) (g Xx)) (g x1))
% Found (x200 ((eq_ref (fofType->Prop)) (g Xx))) as proof of ((P (x0 (g x1)))->(P (f x1)))
% Found (x200 ((eq_ref (fofType->Prop)) (g Xx))) as proof of ((P (x0 (g x1)))->(P (f x1)))
% Found (x200 ((eq_ref (fofType->Prop)) (g Xx))) as proof of ((P (x0 (g x1)))->(P (f x1)))
% Found ((fun (x3:(((eq (fofType->Prop)) (g Xx)) (g x1)))=> ((x20 x3) (fun (x4:(fofType->Prop))=> (P (x0 (g x1)))))) ((eq_ref (fofType->Prop)) (g Xx))) as proof of ((P (x0 (g x1)))->(P (f x1)))
% Found ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> (((x2 x1) x3) (fun (x4:(fofType->Prop))=> (P (x0 (g x1)))))) ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P (x0 (g x1)))->(P (f x1)))
% Found ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> ((((fun (Xx:fofType)=> ((x Xx) x1)) x1) x3) (fun (x4:(fofType->Prop))=> (P (x0 (g x1)))))) ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P (x0 (g x1)))->(P (f x1)))
% Found (fun (P:((fofType->Prop)->Prop))=> ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> ((((fun (Xx:fofType)=> ((x Xx) x1)) x1) x3) (fun (x4:(fofType->Prop))=> (P (x0 (g x1)))))) ((eq_ref (fofType->Prop)) (g x1)))) as proof of ((P (x0 (g x1)))->(P (f x1)))
% Found eq_ref00:=(eq_ref0 (g Xx)):(((eq (fofType->Prop)) (g Xx)) (g Xx))
% Found (eq_ref0 (g Xx)) as proof of (((eq (fofType->Prop)) (g Xx)) (g x1))
% Found ((eq_ref (fofType->Prop)) (g Xx)) as proof of (((eq (fofType->Prop)) (g Xx)) (g x1))
% Found ((eq_ref (fofType->Prop)) (g Xx)) as proof of (((eq (fofType->Prop)) (g Xx)) (g x1))
% Found ((eq_ref (fofType->Prop)) (g Xx)) as proof of (((eq (fofType->Prop)) (g Xx)) (g x1))
% Found (x200 ((eq_ref (fofType->Prop)) (g Xx))) as proof of ((P (x0 (g x1)))->(P (f x1)))
% Found (x200 ((eq_ref (fofType->Prop)) (g Xx))) as proof of ((P (x0 (g x1)))->(P (f x1)))
% Found (x200 ((eq_ref (fofType->Prop)) (g Xx))) as proof of ((P (x0 (g x1)))->(P (f x1)))
% Found ((fun (x3:(((eq (fofType->Prop)) (g Xx)) (g x1)))=> ((x20 x3) (fun (x4:(fofType->Prop))=> (P (x0 (g x1)))))) ((eq_ref (fofType->Prop)) (g Xx))) as proof of ((P (x0 (g x1)))->(P (f x1)))
% Found ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> (((x2 x1) x3) (fun (x4:(fofType->Prop))=> (P (x0 (g x1)))))) ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P (x0 (g x1)))->(P (f x1)))
% Found ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> ((((fun (Xx:fofType)=> ((x Xx) x1)) x1) x3) (fun (x4:(fofType->Prop))=> (P (x0 (g x1)))))) ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P (x0 (g x1)))->(P (f x1)))
% Found (fun (P:((fofType->Prop)->Prop))=> ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> ((((fun (Xx:fofType)=> ((x Xx) x1)) x1) x3) (fun (x4:(fofType->Prop))=> (P (x0 (g x1)))))) ((eq_ref (fofType->Prop)) (g x1)))) as proof of ((P (x0 (g x1)))->(P (f x1)))
% Found eq_ref00:=(eq_ref0 y):(((eq fofType) y) y)
% Found (eq_ref0 y) as proof of (((eq fofType) y) b)
% Found ((eq_ref fofType) y) as proof of (((eq fofType) y) b)
% Found ((eq_ref fofType) y) as proof of (((eq fofType) y) b)
% Found ((eq_ref fofType) y) as proof of (((eq fofType) y) b)
% Found (eq_substitution00000 ((eq_ref fofType) y)) as proof of (forall (P:(Prop->Prop)), ((P ((x0 (g x1)) y))->(P ((f x1) y))))
% Found ((eq_substitution0000 (x0 (g x1))) ((eq_ref fofType) y)) as proof of (forall (P:(Prop->Prop)), ((P ((x0 (g x1)) y))->(P ((f x1) y))))
% Found (((eq_substitution000 y) (x0 (g x1))) ((eq_ref fofType) y)) as proof of (forall (P:(Prop->Prop)), ((P ((x0 (g x1)) y))->(P ((f x1) y))))
% Found ((((eq_substitution00 y) y) (x0 (g x1))) ((eq_ref fofType) y)) as proof of (forall (P:(Prop->Prop)), ((P ((x0 (g x1)) y))->(P ((f x1) y))))
% Found (((((eq_substitution0 Prop) y) y) (x0 (g x1))) ((eq_ref fofType) y)) as proof of (forall (P:(Prop->Prop)), ((P ((x0 (g x1)) y))->(P ((f x1) y))))
% Found ((((((eq_substitution fofType) Prop) y) y) (x0 (g x1))) ((eq_ref fofType) y)) as proof of (forall (P:(Prop->Prop)), ((P ((x0 (g x1)) y))->(P ((f x1) y))))
% Found ((((((eq_substitution fofType) Prop) y) y) (x0 (g x1))) ((eq_ref fofType) y)) as proof of (forall (P:(Prop->Prop)), ((P ((x0 (g x1)) y))->(P ((f x1) y))))
% Found ((((((eq_substitution fofType) Prop) y) y) (x0 (g x1))) ((eq_ref fofType) y)) as proof of (forall (P:(Prop->Prop)), ((P ((x0 (g x1)) y))->(P ((f x1) y))))
% Found eq_ref00:=(eq_ref0 y):(((eq fofType) y) y)
% Found (eq_ref0 y) as proof of (((eq fofType) y) b)
% Found ((eq_ref fofType) y) as proof of (((eq fofType) y) b)
% Found ((eq_ref fofType) y) as proof of (((eq fofType) y) b)
% Found ((eq_ref fofType) y) as proof of (((eq fofType) y) b)
% Found (eq_substitution00000 ((eq_ref fofType) y)) as proof of (((eq Prop) ((x0 (g x1)) y)) ((f x1) y))
% Found ((eq_substitution0000 (x0 (g x1))) ((eq_ref fofType) y)) as proof of (((eq Prop) ((x0 (g x1)) y)) ((f x1) y))
% Found (((eq_substitution000 y) (x0 (g x1))) ((eq_ref fofType) y)) as proof of (((eq Prop) ((x0 (g x1)) y)) ((f x1) y))
% Found ((((eq_substitution00 y) y) (x0 (g x1))) ((eq_ref fofType) y)) as proof of (((eq Prop) ((x0 (g x1)) y)) ((f x1) y))
% Found (((((eq_substitution0 Prop) y) y) (x0 (g x1))) ((eq_ref fofType) y)) as proof of (((eq Prop) ((x0 (g x1)) y)) ((f x1) y))
% Found ((((((eq_substitution fofType) Prop) y) y) (x0 (g x1))) ((eq_ref fofType) y)) as proof of (((eq Prop) ((x0 (g x1)) y)) ((f x1) y))
% Found ((((((eq_substitution fofType) Prop) y) y) (x0 (g x1))) ((eq_ref fofType) y)) as proof of (((eq Prop) ((x0 (g x1)) y)) ((f x1) y))
% Found eq_ref00:=(eq_ref0 ((x0 (g x1)) x2)):(((eq Prop) ((x0 (g x1)) x2)) ((x0 (g x1)) x2))
% Found (eq_ref0 ((x0 (g x1)) x2)) as proof of (((eq Prop) ((x0 (g x1)) x2)) ((f x1) x2))
% Found ((eq_ref Prop) ((x0 (g x1)) x2)) as proof of (((eq Prop) ((x0 (g x1)) x2)) ((f x1) x2))
% Found ((eq_ref Prop) ((x0 (g x1)) x2)) as proof of (((eq Prop) ((x0 (g x1)) x2)) ((f x1) x2))
% Found ((eq_ref Prop) ((x0 (g x1)) x2)) as proof of (((eq Prop) ((x0 (g x1)) x2)) ((f x1) x2))
% Found (eq_sym100 ((eq_ref Prop) ((x0 (g x1)) x2))) as proof of (((eq Prop) ((f x1) x2)) ((x0 (g x1)) x2))
% Found ((eq_sym10 ((f x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2))) as proof of (((eq Prop) ((f x1) x2)) ((x0 (g x1)) x2))
% Found (((eq_sym1 ((x0 (g x1)) x2)) ((f x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2))) as proof of (((eq Prop) ((f x1) x2)) ((x0 (g x1)) x2))
% Found ((((eq_sym Prop) ((x0 (g x1)) x2)) ((f x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2))) as proof of (((eq Prop) ((f x1) x2)) ((x0 (g x1)) x2))
% Found (fun (x2:fofType)=> ((((eq_sym Prop) ((x0 (g x1)) x2)) ((f x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2)))) as proof of (((eq Prop) ((f x1) x2)) ((x0 (g x1)) x2))
% Found (fun (x2:fofType)=> ((((eq_sym Prop) ((x0 (g x1)) x2)) ((f x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2)))) as proof of (forall (x:fofType), (((eq Prop) ((f x1) x)) ((x0 (g x1)) x)))
% Found (functional_extensionality_dep0100 (fun (x2:fofType)=> ((((eq_sym Prop) ((x0 (g x1)) x2)) ((f x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2))))) as proof of (forall (P:((fofType->Prop)->Prop)), ((P (f x1))->(P (x0 (g x1)))))
% Found ((functional_extensionality_dep010 (x0 (g x1))) (fun (x2:fofType)=> ((((eq_sym Prop) ((x0 (g x1)) x2)) ((f x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2))))) as proof of (forall (P:((fofType->Prop)->Prop)), ((P (f x1))->(P (x0 (g x1)))))
% Found (((functional_extensionality_dep01 (f x1)) (x0 (g x1))) (fun (x2:fofType)=> ((((eq_sym Prop) ((x0 (g x1)) x2)) ((f x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2))))) as proof of (forall (P:((fofType->Prop)->Prop)), ((P (f x1))->(P (x0 (g x1)))))
% Found ((((functional_extensionality_dep0 (fun (x4:fofType)=> Prop)) (f x1)) (x0 (g x1))) (fun (x2:fofType)=> ((((eq_sym Prop) ((x0 (g x1)) x2)) ((f x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2))))) as proof of (forall (P:((fofType->Prop)->Prop)), ((P (f x1))->(P (x0 (g x1)))))
% Found ((((functional_extensionality_dep0 (fun (x4:fofType)=> Prop)) (f x1)) (x0 (g x1))) (fun (x2:fofType)=> ((((eq_sym Prop) ((x0 (g x1)) x2)) ((f x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2))))) as proof of (forall (P:((fofType->Prop)->Prop)), ((P (f x1))->(P (x0 (g x1)))))
% Found eq_ref00:=(eq_ref0 ((x0 (g x1)) x2)):(((eq Prop) ((x0 (g x1)) x2)) ((x0 (g x1)) x2))
% Found (eq_ref0 ((x0 (g x1)) x2)) as proof of (((eq Prop) ((x0 (g x1)) x2)) ((f x1) x2))
% Found ((eq_ref Prop) ((x0 (g x1)) x2)) as proof of (((eq Prop) ((x0 (g x1)) x2)) ((f x1) x2))
% Found ((eq_ref Prop) ((x0 (g x1)) x2)) as proof of (((eq Prop) ((x0 (g x1)) x2)) ((f x1) x2))
% Found ((eq_ref Prop) ((x0 (g x1)) x2)) as proof of (((eq Prop) ((x0 (g x1)) x2)) ((f x1) x2))
% Found (eq_sym100 ((eq_ref Prop) ((x0 (g x1)) x2))) as proof of (((eq Prop) ((f x1) x2)) ((x0 (g x1)) x2))
% Found ((eq_sym10 ((f x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2))) as proof of (((eq Prop) ((f x1) x2)) ((x0 (g x1)) x2))
% Found (((eq_sym1 ((x0 (g x1)) x2)) ((f x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2))) as proof of (((eq Prop) ((f x1) x2)) ((x0 (g x1)) x2))
% Found ((((eq_sym Prop) ((x0 (g x1)) x2)) ((f x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2))) as proof of (((eq Prop) ((f x1) x2)) ((x0 (g x1)) x2))
% Found (fun (x2:fofType)=> ((((eq_sym Prop) ((x0 (g x1)) x2)) ((f x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2)))) as proof of (((eq Prop) ((f x1) x2)) ((x0 (g x1)) x2))
% Found (fun (x2:fofType)=> ((((eq_sym Prop) ((x0 (g x1)) x2)) ((f x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2)))) as proof of (forall (x:fofType), (((eq Prop) ((f x1) x)) ((x0 (g x1)) x)))
% Found (functional_extensionality0100 (fun (x2:fofType)=> ((((eq_sym Prop) ((x0 (g x1)) x2)) ((f x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2))))) as proof of (forall (P:((fofType->Prop)->Prop)), ((P (f x1))->(P (x0 (g x1)))))
% Found ((functional_extensionality010 (x0 (g x1))) (fun (x2:fofType)=> ((((eq_sym Prop) ((x0 (g x1)) x2)) ((f x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2))))) as proof of (forall (P:((fofType->Prop)->Prop)), ((P (f x1))->(P (x0 (g x1)))))
% Found (((functional_extensionality01 (f x1)) (x0 (g x1))) (fun (x2:fofType)=> ((((eq_sym Prop) ((x0 (g x1)) x2)) ((f x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2))))) as proof of (forall (P:((fofType->Prop)->Prop)), ((P (f x1))->(P (x0 (g x1)))))
% Found ((((functional_extensionality0 Prop) (f x1)) (x0 (g x1))) (fun (x2:fofType)=> ((((eq_sym Prop) ((x0 (g x1)) x2)) ((f x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2))))) as proof of (forall (P:((fofType->Prop)->Prop)), ((P (f x1))->(P (x0 (g x1)))))
% Found ((((functional_extensionality0 Prop) (f x1)) (x0 (g x1))) (fun (x2:fofType)=> ((((eq_sym Prop) ((x0 (g x1)) x2)) ((f x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2))))) as proof of (forall (P:((fofType->Prop)->Prop)), ((P (f x1))->(P (x0 (g x1)))))
% Found eta_expansion_dep0000:=(eta_expansion_dep000 P):((P (fun (Xx:fofType)=> (x0 (g Xx))))->(P (fun (x:fofType)=> (x0 (g x)))))
% Found (eta_expansion_dep000 P) as proof of (P0 (fun (Xx:fofType)=> (x0 (g Xx))))
% Found ((eta_expansion_dep00 (fun (Xx:fofType)=> (x0 (g Xx)))) P) as proof of (P0 (fun (Xx:fofType)=> (x0 (g Xx))))
% Found (((eta_expansion_dep0 (fun (x2:fofType)=> (fofType->Prop))) (fun (Xx:fofType)=> (x0 (g Xx)))) P) as proof of (P0 (fun (Xx:fofType)=> (x0 (g Xx))))
% Found ((((eta_expansion_dep fofType) (fun (x2:fofType)=> (fofType->Prop))) (fun (Xx:fofType)=> (x0 (g Xx)))) P) as proof of (P0 (fun (Xx:fofType)=> (x0 (g Xx))))
% Found ((((eta_expansion_dep fofType) (fun (x2:fofType)=> (fofType->Prop))) (fun (Xx:fofType)=> (x0 (g Xx)))) P) as proof of (P0 (fun (Xx:fofType)=> (x0 (g Xx))))
% Found eq_ref000:=(eq_ref00 P):((P ((x0 (g x1)) y))->(P ((x0 (g x1)) y)))
% Found (eq_ref00 P) as proof of (P0 ((x0 (g x1)) y))
% Found ((eq_ref0 ((x0 (g x1)) y)) P) as proof of (P0 ((x0 (g x1)) y))
% Found (((eq_ref Prop) ((x0 (g x1)) y)) P) as proof of (P0 ((x0 (g x1)) y))
% Found (((eq_ref Prop) ((x0 (g x1)) y)) P) as proof of (P0 ((x0 (g x1)) y))
% Found eq_ref000:=(eq_ref00 P):((P ((x0 (g x1)) y))->(P ((x0 (g x1)) y)))
% Found (eq_ref00 P) as proof of (P0 ((x0 (g x1)) y))
% Found ((eq_ref0 ((x0 (g x1)) y)) P) as proof of (P0 ((x0 (g x1)) y))
% Found (((eq_ref Prop) ((x0 (g x1)) y)) P) as proof of (P0 ((x0 (g x1)) y))
% Found (((eq_ref Prop) ((x0 (g x1)) y)) P) as proof of (P0 ((x0 (g x1)) y))
% Found x1:(P f)
% Instantiate: f0:=f:(fofType->(fofType->Prop))
% Found x1 as proof of (P0 f0)
% Found eq_ref00:=(eq_ref0 (f0 x2)):(((eq (fofType->Prop)) (f0 x2)) (f0 x2))
% Found (eq_ref0 (f0 x2)) as proof of (((eq (fofType->Prop)) (f0 x2)) (x0 (g x2)))
% Found ((eq_ref (fofType->Prop)) (f0 x2)) as proof of (((eq (fofType->Prop)) (f0 x2)) (x0 (g x2)))
% Found ((eq_ref (fofType->Prop)) (f0 x2)) as proof of (((eq (fofType->Prop)) (f0 x2)) (x0 (g x2)))
% Found (fun (x2:fofType)=> ((eq_ref (fofType->Prop)) (f0 x2))) as proof of (((eq (fofType->Prop)) (f0 x2)) (x0 (g x2)))
% Found (fun (x2:fofType)=> ((eq_ref (fofType->Prop)) (f0 x2))) as proof of (forall (x:fofType), (((eq (fofType->Prop)) (f0 x)) (x0 (g x))))
% Found x1:(P f)
% Instantiate: f0:=f:(fofType->(fofType->Prop))
% Found x1 as proof of (P0 f0)
% Found eq_ref00:=(eq_ref0 (f0 x2)):(((eq (fofType->Prop)) (f0 x2)) (f0 x2))
% Found (eq_ref0 (f0 x2)) as proof of (((eq (fofType->Prop)) (f0 x2)) (x0 (g x2)))
% Found ((eq_ref (fofType->Prop)) (f0 x2)) as proof of (((eq (fofType->Prop)) (f0 x2)) (x0 (g x2)))
% Found ((eq_ref (fofType->Prop)) (f0 x2)) as proof of (((eq (fofType->Prop)) (f0 x2)) (x0 (g x2)))
% Found (fun (x2:fofType)=> ((eq_ref (fofType->Prop)) (f0 x2))) as proof of (((eq (fofType->Prop)) (f0 x2)) (x0 (g x2)))
% Found (fun (x2:fofType)=> ((eq_ref (fofType->Prop)) (f0 x2))) as proof of (forall (x:fofType), (((eq (fofType->Prop)) (f0 x)) (x0 (g x))))
% Found eq_ref00:=(eq_ref0 b):(((eq Prop) b) b)
% Found (eq_ref0 b) as proof of (((eq Prop) b) ((f x1) y))
% Found ((eq_ref Prop) b) as proof of (((eq Prop) b) ((f x1) y))
% Found ((eq_ref Prop) b) as proof of (((eq Prop) b) ((f x1) y))
% Found ((eq_ref Prop) b) as proof of (((eq Prop) b) ((f x1) y))
% Found eq_ref00:=(eq_ref0 ((x0 (g x1)) y)):(((eq Prop) ((x0 (g x1)) y)) ((x0 (g x1)) y))
% Found (eq_ref0 ((x0 (g x1)) y)) as proof of (((eq Prop) ((x0 (g x1)) y)) b)
% Found ((eq_ref Prop) ((x0 (g x1)) y)) as proof of (((eq Prop) ((x0 (g x1)) y)) b)
% Found ((eq_ref Prop) ((x0 (g x1)) y)) as proof of (((eq Prop) ((x0 (g x1)) y)) b)
% Found ((eq_ref Prop) ((x0 (g x1)) y)) as proof of (((eq Prop) ((x0 (g x1)) y)) b)
% Found ((eq_trans0000 ((eq_ref Prop) ((x0 (g x1)) y))) ((eq_ref Prop) b)) as proof of (forall (P:(Prop->Prop)), ((P ((x0 (g x1)) y))->(P ((f x1) y))))
% Found (((eq_trans000 ((f x1) y)) ((eq_ref Prop) ((x0 (g x1)) y))) ((eq_ref Prop) b)) as proof of (forall (P:(Prop->Prop)), ((P ((x0 (g x1)) y))->(P ((f x1) y))))
% Found ((((eq_trans00 ((f x1) y)) ((f x1) y)) ((eq_ref Prop) ((x0 (g x1)) y))) ((eq_ref Prop) ((f x1) y))) as proof of (forall (P:(Prop->Prop)), ((P ((x0 (g x1)) y))->(P ((f x1) y))))
% Found (((((eq_trans0 ((x0 (g x1)) y)) ((f x1) y)) ((f x1) y)) ((eq_ref Prop) ((x0 (g x1)) y))) ((eq_ref Prop) ((f x1) y))) as proof of (forall (P:(Prop->Prop)), ((P ((x0 (g x1)) y))->(P ((f x1) y))))
% Found ((((((eq_trans Prop) ((x0 (g x1)) y)) ((f x1) y)) ((f x1) y)) ((eq_ref Prop) ((x0 (g x1)) y))) ((eq_ref Prop) ((f x1) y))) as proof of (forall (P:(Prop->Prop)), ((P ((x0 (g x1)) y))->(P ((f x1) y))))
% Found ((((((eq_trans Prop) ((x0 (g x1)) y)) ((f x1) y)) ((f x1) y)) ((eq_ref Prop) ((x0 (g x1)) y))) ((eq_ref Prop) ((f x1) y))) as proof of (forall (P:(Prop->Prop)), ((P ((x0 (g x1)) y))->(P ((f x1) y))))
% Found eq_ref00:=(eq_ref0 b):(((eq Prop) b) b)
% Found (eq_ref0 b) as proof of (((eq Prop) b) ((f x1) y))
% Found ((eq_ref Prop) b) as proof of (((eq Prop) b) ((f x1) y))
% Found ((eq_ref Prop) b) as proof of (((eq Prop) b) ((f x1) y))
% Found ((eq_ref Prop) b) as proof of (((eq Prop) b) ((f x1) y))
% Found eq_ref00:=(eq_ref0 ((x0 (g x1)) y)):(((eq Prop) ((x0 (g x1)) y)) ((x0 (g x1)) y))
% Found (eq_ref0 ((x0 (g x1)) y)) as proof of (((eq Prop) ((x0 (g x1)) y)) b)
% Found ((eq_ref Prop) ((x0 (g x1)) y)) as proof of (((eq Prop) ((x0 (g x1)) y)) b)
% Found ((eq_ref Prop) ((x0 (g x1)) y)) as proof of (((eq Prop) ((x0 (g x1)) y)) b)
% Found ((eq_ref Prop) ((x0 (g x1)) y)) as proof of (((eq Prop) ((x0 (g x1)) y)) b)
% Found ((eq_trans0000 ((eq_ref Prop) ((x0 (g x1)) y))) ((eq_ref Prop) b)) as proof of (((eq Prop) ((x0 (g x1)) y)) ((f x1) y))
% Found (((eq_trans000 ((f x1) y)) ((eq_ref Prop) ((x0 (g x1)) y))) ((eq_ref Prop) b)) as proof of (((eq Prop) ((x0 (g x1)) y)) ((f x1) y))
% Found ((((eq_trans00 ((f x1) y)) ((f x1) y)) ((eq_ref Prop) ((x0 (g x1)) y))) ((eq_ref Prop) ((f x1) y))) as proof of (((eq Prop) ((x0 (g x1)) y)) ((f x1) y))
% Found (((((eq_trans0 ((x0 (g x1)) y)) ((f x1) y)) ((f x1) y)) ((eq_ref Prop) ((x0 (g x1)) y))) ((eq_ref Prop) ((f x1) y))) as proof of (((eq Prop) ((x0 (g x1)) y)) ((f x1) y))
% Found ((((((eq_trans Prop) ((x0 (g x1)) y)) ((f x1) y)) ((f x1) y)) ((eq_ref Prop) ((x0 (g x1)) y))) ((eq_ref Prop) ((f x1) y))) as proof of (((eq Prop) ((x0 (g x1)) y)) ((f x1) y))
% Found eq_ref00:=(eq_ref0 y):(((eq fofType) y) y)
% Found (eq_ref0 y) as proof of (((eq fofType) y) b)
% Found ((eq_ref fofType) y) as proof of (((eq fofType) y) b)
% Found ((eq_ref fofType) y) as proof of (((eq fofType) y) b)
% Found ((eq_ref fofType) y) as proof of (((eq fofType) y) b)
% Found (eq_substitution00000 ((eq_ref fofType) y)) as proof of (((eq Prop) ((x0 (g x1)) y)) ((f x1) y))
% Found ((eq_substitution0000 (fun (x5:fofType)=> ((x0 (g x1)) y))) ((eq_ref fofType) y)) as proof of (((eq Prop) ((x0 (g x1)) y)) ((f x1) y))
% Found (((eq_substitution000 y) (fun (x5:fofType)=> ((x0 (g x1)) y))) ((eq_ref fofType) y)) as proof of (((eq Prop) ((x0 (g x1)) y)) ((f x1) y))
% Found ((((eq_substitution00 y) y) (fun (x5:fofType)=> ((x0 (g x1)) y))) ((eq_ref fofType) y)) as proof of (((eq Prop) ((x0 (g x1)) y)) ((f x1) y))
% Found (((((eq_substitution0 Prop) y) y) (fun (x5:fofType)=> ((x0 (g x1)) y))) ((eq_ref fofType) y)) as proof of (((eq Prop) ((x0 (g x1)) y)) ((f x1) y))
% Found ((((((eq_substitution fofType) Prop) y) y) (fun (x5:fofType)=> ((x0 (g x1)) y))) ((eq_ref fofType) y)) as proof of (((eq Prop) ((x0 (g x1)) y)) ((f x1) y))
% Found ((((((eq_substitution fofType) Prop) y) y) (fun (x5:fofType)=> ((x0 (g x1)) y))) ((eq_ref fofType) y)) as proof of (((eq Prop) ((x0 (g x1)) y)) ((f x1) y))
% Found eq_ref00:=(eq_ref0 (x0 (g x1))):(((eq (fofType->Prop)) (x0 (g x1))) (x0 (g x1)))
% Found (eq_ref0 (x0 (g x1))) as proof of (P (f Xx))
% Found ((eq_ref (fofType->Prop)) (x0 (g x1))) as proof of (P (f Xx))
% Found ((eq_ref (fofType->Prop)) (x0 (g x1))) as proof of (P (f Xx))
% Found ((eq_ref (fofType->Prop)) (x0 (g x1))) as proof of (P (f Xx))
% Found eq_ref00:=(eq_ref0 (g Xx)):(((eq (fofType->Prop)) (g Xx)) (g Xx))
% Found (eq_ref0 (g Xx)) as proof of (((eq (fofType->Prop)) (g Xx)) (g x1))
% Found ((eq_ref (fofType->Prop)) (g Xx)) as proof of (((eq (fofType->Prop)) (g Xx)) (g x1))
% Found ((eq_ref (fofType->Prop)) (g Xx)) as proof of (((eq (fofType->Prop)) (g Xx)) (g x1))
% Found ((eq_ref (fofType->Prop)) (g Xx)) as proof of (((eq (fofType->Prop)) (g Xx)) (g x1))
% Found ((x200 ((eq_ref (fofType->Prop)) (g Xx))) ((eq_ref (fofType->Prop)) (x0 (g x1)))) as proof of (((eq (fofType->Prop)) (x0 (g x1))) (f x1))
% Found ((x200 ((eq_ref (fofType->Prop)) (g Xx))) ((eq_ref (fofType->Prop)) (x0 (g x1)))) as proof of (((eq (fofType->Prop)) (x0 (g x1))) (f x1))
% Found (((fun (x3:(((eq (fofType->Prop)) (g Xx)) (g x1)))=> ((x20 x3) ((eq (fofType->Prop)) (x0 (g x1))))) ((eq_ref (fofType->Prop)) (g Xx))) ((eq_ref (fofType->Prop)) (x0 (g x1)))) as proof of (((eq (fofType->Prop)) (x0 (g x1))) (f x1))
% Found (((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> (((x2 x1) x3) ((eq (fofType->Prop)) (x0 (g x1))))) ((eq_ref (fofType->Prop)) (g x1))) ((eq_ref (fofType->Prop)) (x0 (g x1)))) as proof of (((eq (fofType->Prop)) (x0 (g x1))) (f x1))
% Found (((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> ((((fun (Xx:fofType)=> ((x Xx) x1)) x1) x3) ((eq (fofType->Prop)) (x0 (g x1))))) ((eq_ref (fofType->Prop)) (g x1))) ((eq_ref (fofType->Prop)) (x0 (g x1)))) as proof of (((eq (fofType->Prop)) (x0 (g x1))) (f x1))
% Found eq_ref00:=(eq_ref0 (x0 (g x1))):(((eq (fofType->Prop)) (x0 (g x1))) (x0 (g x1)))
% Found (eq_ref0 (x0 (g x1))) as proof of (P (f Xx))
% Found ((eq_ref (fofType->Prop)) (x0 (g x1))) as proof of (P (f Xx))
% Found ((eq_ref (fofType->Prop)) (x0 (g x1))) as proof of (P (f Xx))
% Found ((eq_ref (fofType->Prop)) (x0 (g x1))) as proof of (P (f Xx))
% Found eq_ref00:=(eq_ref0 (g Xx)):(((eq (fofType->Prop)) (g Xx)) (g Xx))
% Found (eq_ref0 (g Xx)) as proof of (((eq (fofType->Prop)) (g Xx)) (g x1))
% Found ((eq_ref (fofType->Prop)) (g Xx)) as proof of (((eq (fofType->Prop)) (g Xx)) (g x1))
% Found ((eq_ref (fofType->Prop)) (g Xx)) as proof of (((eq (fofType->Prop)) (g Xx)) (g x1))
% Found ((eq_ref (fofType->Prop)) (g Xx)) as proof of (((eq (fofType->Prop)) (g Xx)) (g x1))
% Found ((x200 ((eq_ref (fofType->Prop)) (g Xx))) ((eq_ref (fofType->Prop)) (x0 (g x1)))) as proof of (((eq (fofType->Prop)) (x0 (g x1))) (f x1))
% Found ((x200 ((eq_ref (fofType->Prop)) (g Xx))) ((eq_ref (fofType->Prop)) (x0 (g x1)))) as proof of (((eq (fofType->Prop)) (x0 (g x1))) (f x1))
% Found (((fun (x3:(((eq (fofType->Prop)) (g Xx)) (g x1)))=> ((x20 x3) ((eq (fofType->Prop)) (x0 (g x1))))) ((eq_ref (fofType->Prop)) (g Xx))) ((eq_ref (fofType->Prop)) (x0 (g x1)))) as proof of (((eq (fofType->Prop)) (x0 (g x1))) (f x1))
% Found (((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> (((x2 x1) x3) ((eq (fofType->Prop)) (x0 (g x1))))) ((eq_ref (fofType->Prop)) (g x1))) ((eq_ref (fofType->Prop)) (x0 (g x1)))) as proof of (((eq (fofType->Prop)) (x0 (g x1))) (f x1))
% Found (((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> ((((fun (Xx:fofType)=> ((x Xx) x1)) x1) x3) ((eq (fofType->Prop)) (x0 (g x1))))) ((eq_ref (fofType->Prop)) (g x1))) ((eq_ref (fofType->Prop)) (x0 (g x1)))) as proof of (((eq (fofType->Prop)) (x0 (g x1))) (f x1))
% Found x2:(P (x0 (g x1)))
% Instantiate: b:=(x0 (g x1)):(fofType->Prop)
% Found x2 as proof of (P0 b)
% Found eta_expansion_dep000:=(eta_expansion_dep00 (f x1)):(((eq (fofType->Prop)) (f x1)) (fun (x:fofType)=> ((f x1) x)))
% Found (eta_expansion_dep00 (f x1)) as proof of (((eq (fofType->Prop)) (f x1)) b)
% Found ((eta_expansion_dep0 (fun (x4:fofType)=> Prop)) (f x1)) as proof of (((eq (fofType->Prop)) (f x1)) b)
% Found (((eta_expansion_dep fofType) (fun (x4:fofType)=> Prop)) (f x1)) as proof of (((eq (fofType->Prop)) (f x1)) b)
% Found (((eta_expansion_dep fofType) (fun (x4:fofType)=> Prop)) (f x1)) as proof of (((eq (fofType->Prop)) (f x1)) b)
% Found (((eta_expansion_dep fofType) (fun (x4:fofType)=> Prop)) (f x1)) as proof of (((eq (fofType->Prop)) (f x1)) b)
% Found x2:(P (x0 (g x1)))
% Instantiate: b:=(x0 (g x1)):(fofType->Prop)
% Found x2 as proof of (P0 b)
% Found eta_expansion_dep000:=(eta_expansion_dep00 (f x1)):(((eq (fofType->Prop)) (f x1)) (fun (x:fofType)=> ((f x1) x)))
% Found (eta_expansion_dep00 (f x1)) as proof of (((eq (fofType->Prop)) (f x1)) b)
% Found ((eta_expansion_dep0 (fun (x4:fofType)=> Prop)) (f x1)) as proof of (((eq (fofType->Prop)) (f x1)) b)
% Found (((eta_expansion_dep fofType) (fun (x4:fofType)=> Prop)) (f x1)) as proof of (((eq (fofType->Prop)) (f x1)) b)
% Found (((eta_expansion_dep fofType) (fun (x4:fofType)=> Prop)) (f x1)) as proof of (((eq (fofType->Prop)) (f x1)) b)
% Found (((eta_expansion_dep fofType) (fun (x4:fofType)=> Prop)) (f x1)) as proof of (((eq (fofType->Prop)) (f x1)) b)
% Found x2:(P (x0 (g x1)))
% Instantiate: f0:=(x0 (g x1)):(fofType->Prop)
% Found x2 as proof of (P0 f0)
% Found eq_ref00:=(eq_ref0 (f0 x3)):(((eq Prop) (f0 x3)) (f0 x3))
% Found (eq_ref0 (f0 x3)) as proof of (((eq Prop) (f0 x3)) ((f x1) x3))
% Found ((eq_ref Prop) (f0 x3)) as proof of (((eq Prop) (f0 x3)) ((f x1) x3))
% Found ((eq_ref Prop) (f0 x3)) as proof of (((eq Prop) (f0 x3)) ((f x1) x3))
% Found (fun (x3:fofType)=> ((eq_ref Prop) (f0 x3))) as proof of (((eq Prop) (f0 x3)) ((f x1) x3))
% Found (fun (x3:fofType)=> ((eq_ref Prop) (f0 x3))) as proof of (forall (x:fofType), (((eq Prop) (f0 x)) ((f x1) x)))
% Found x2:(P (x0 (g x1)))
% Instantiate: f0:=(x0 (g x1)):(fofType->Prop)
% Found x2 as proof of (P0 f0)
% Found eq_ref00:=(eq_ref0 (f0 x3)):(((eq Prop) (f0 x3)) (f0 x3))
% Found (eq_ref0 (f0 x3)) as proof of (((eq Prop) (f0 x3)) ((f x1) x3))
% Found ((eq_ref Prop) (f0 x3)) as proof of (((eq Prop) (f0 x3)) ((f x1) x3))
% Found ((eq_ref Prop) (f0 x3)) as proof of (((eq Prop) (f0 x3)) ((f x1) x3))
% Found (fun (x3:fofType)=> ((eq_ref Prop) (f0 x3))) as proof of (((eq Prop) (f0 x3)) ((f x1) x3))
% Found (fun (x3:fofType)=> ((eq_ref Prop) (f0 x3))) as proof of (forall (x:fofType), (((eq Prop) (f0 x)) ((f x1) x)))
% Found eq_ref00:=(eq_ref0 (x0 (g x1))):(((eq (fofType->Prop)) (x0 (g x1))) (x0 (g x1)))
% Found (eq_ref0 (x0 (g x1))) as proof of (((eq (fofType->Prop)) (x0 (g x1))) (b x1))
% Found ((eq_ref (fofType->Prop)) (x0 (g x1))) as proof of (((eq (fofType->Prop)) (x0 (g x1))) (b x1))
% Found ((eq_ref (fofType->Prop)) (x0 (g x1))) as proof of (((eq (fofType->Prop)) (x0 (g x1))) (b x1))
% Found eq_ref00:=(eq_ref0 (x0 (g x1))):(((eq (fofType->Prop)) (x0 (g x1))) (x0 (g x1)))
% Found (eq_ref0 (x0 (g x1))) as proof of (((eq (fofType->Prop)) (x0 (g x1))) (b x1))
% Found ((eq_ref (fofType->Prop)) (x0 (g x1))) as proof of (((eq (fofType->Prop)) (x0 (g x1))) (b x1))
% Found ((eq_ref (fofType->Prop)) (x0 (g x1))) as proof of (((eq (fofType->Prop)) (x0 (g x1))) (b x1))
% Found eq_ref00:=(eq_ref0 (x0 (g x1))):(((eq (fofType->Prop)) (x0 (g x1))) (x0 (g x1)))
% Found (eq_ref0 (x0 (g x1))) as proof of (((eq (fofType->Prop)) (x0 (g x1))) (b x1))
% Found ((eq_ref (fofType->Prop)) (x0 (g x1))) as proof of (((eq (fofType->Prop)) (x0 (g x1))) (b x1))
% Found ((eq_ref (fofType->Prop)) (x0 (g x1))) as proof of (((eq (fofType->Prop)) (x0 (g x1))) (b x1))
% Found eq_ref00:=(eq_ref0 (x0 (g x1))):(((eq (fofType->Prop)) (x0 (g x1))) (x0 (g x1)))
% Found (eq_ref0 (x0 (g x1))) as proof of (((eq (fofType->Prop)) (x0 (g x1))) (b x1))
% Found ((eq_ref (fofType->Prop)) (x0 (g x1))) as proof of (((eq (fofType->Prop)) (x0 (g x1))) (b x1))
% Found ((eq_ref (fofType->Prop)) (x0 (g x1))) as proof of (((eq (fofType->Prop)) (x0 (g x1))) (b x1))
% Found eq_ref00:=(eq_ref0 (x0 (g x1))):(((eq (fofType->Prop)) (x0 (g x1))) (x0 (g x1)))
% Found (eq_ref0 (x0 (g x1))) as proof of (((eq (fofType->Prop)) (x0 (g x1))) (b x1))
% Found ((eq_ref (fofType->Prop)) (x0 (g x1))) as proof of (((eq (fofType->Prop)) (x0 (g x1))) (b x1))
% Found ((eq_ref (fofType->Prop)) (x0 (g x1))) as proof of (((eq (fofType->Prop)) (x0 (g x1))) (b x1))
% Found eq_ref00:=(eq_ref0 (x0 (g x1))):(((eq (fofType->Prop)) (x0 (g x1))) (x0 (g x1)))
% Found (eq_ref0 (x0 (g x1))) as proof of (((eq (fofType->Prop)) (x0 (g x1))) (b x1))
% Found ((eq_ref (fofType->Prop)) (x0 (g x1))) as proof of (((eq (fofType->Prop)) (x0 (g x1))) (b x1))
% Found ((eq_ref (fofType->Prop)) (x0 (g x1))) as proof of (((eq (fofType->Prop)) (x0 (g x1))) (b x1))
% Found eta_expansion_dep0000:=(eta_expansion_dep000 P):((P (fun (Xx:fofType)=> (x0 (g Xx))))->(P (fun (x:fofType)=> (x0 (g x)))))
% Found (eta_expansion_dep000 P) as proof of (P0 (fun (Xx:fofType)=> (x0 (g Xx))))
% Found ((eta_expansion_dep00 (fun (Xx:fofType)=> (x0 (g Xx)))) P) as proof of (P0 (fun (Xx:fofType)=> (x0 (g Xx))))
% Found (((eta_expansion_dep0 (fun (x2:fofType)=> (fofType->Prop))) (fun (Xx:fofType)=> (x0 (g Xx)))) P) as proof of (P0 (fun (Xx:fofType)=> (x0 (g Xx))))
% Found ((((eta_expansion_dep fofType) (fun (x2:fofType)=> (fofType->Prop))) (fun (Xx:fofType)=> (x0 (g Xx)))) P) as proof of (P0 (fun (Xx:fofType)=> (x0 (g Xx))))
% Found ((((eta_expansion_dep fofType) (fun (x2:fofType)=> (fofType->Prop))) (fun (Xx:fofType)=> (x0 (g Xx)))) P) as proof of (P0 (fun (Xx:fofType)=> (x0 (g Xx))))
% Found eq_ref00:=(eq_ref0 (x0 (g x1))):(((eq (fofType->Prop)) (x0 (g x1))) (x0 (g x1)))
% Found (eq_ref0 (x0 (g x1))) as proof of (((eq (fofType->Prop)) (x0 (g x1))) (b x1))
% Found ((eq_ref (fofType->Prop)) (x0 (g x1))) as proof of (((eq (fofType->Prop)) (x0 (g x1))) (b x1))
% Found ((eq_ref (fofType->Prop)) (x0 (g x1))) as proof of (((eq (fofType->Prop)) (x0 (g x1))) (b x1))
% Found eta_expansion_dep0000:=(eta_expansion_dep000 P):((P (fun (Xx:fofType)=> (x0 (g Xx))))->(P (fun (x:fofType)=> (x0 (g x)))))
% Found (eta_expansion_dep000 P) as proof of (P0 (fun (Xx:fofType)=> (x0 (g Xx))))
% Found ((eta_expansion_dep00 (fun (Xx:fofType)=> (x0 (g Xx)))) P) as proof of (P0 (fun (Xx:fofType)=> (x0 (g Xx))))
% Found (((eta_expansion_dep0 (fun (x2:fofType)=> (fofType->Prop))) (fun (Xx:fofType)=> (x0 (g Xx)))) P) as proof of (P0 (fun (Xx:fofType)=> (x0 (g Xx))))
% Found ((((eta_expansion_dep fofType) (fun (x2:fofType)=> (fofType->Prop))) (fun (Xx:fofType)=> (x0 (g Xx)))) P) as proof of (P0 (fun (Xx:fofType)=> (x0 (g Xx))))
% Found ((((eta_expansion_dep fofType) (fun (x2:fofType)=> (fofType->Prop))) (fun (Xx:fofType)=> (x0 (g Xx)))) P) as proof of (P0 (fun (Xx:fofType)=> (x0 (g Xx))))
% Found eq_ref00:=(eq_ref0 (x0 (g x1))):(((eq (fofType->Prop)) (x0 (g x1))) (x0 (g x1)))
% Found (eq_ref0 (x0 (g x1))) as proof of (((eq (fofType->Prop)) (x0 (g x1))) (b x1))
% Found ((eq_ref (fofType->Prop)) (x0 (g x1))) as proof of (((eq (fofType->Prop)) (x0 (g x1))) (b x1))
% Found ((eq_ref (fofType->Prop)) (x0 (g x1))) as proof of (((eq (fofType->Prop)) (x0 (g x1))) (b x1))
% Found eq_ref00:=(eq_ref0 (g x1)):(((eq (fofType->Prop)) (g x1)) (g x1))
% Found (eq_ref0 (g x1)) as proof of (((eq (fofType->Prop)) (g x1)) (g x1))
% Found ((eq_ref (fofType->Prop)) (g x1)) as proof of (((eq (fofType->Prop)) (g x1)) (g x1))
% Found ((eq_ref (fofType->Prop)) (g x1)) as proof of (((eq (fofType->Prop)) (g x1)) (g x1))
% Found (x200 ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P1 ((x0 (g x1)) y))->(P1 ((f x1) y)))
% Found (x200 ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P1 ((x0 (g x1)) y))->(P1 ((f x1) y)))
% Found ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> ((x20 x3) (fun (x4:(fofType->Prop))=> (P1 (x4 y))))) ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P1 ((x0 (g x1)) y))->(P1 ((f x1) y)))
% Found ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> (((x2 x1) x3) (fun (x4:(fofType->Prop))=> (P1 (x4 y))))) ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P1 ((x0 (g x1)) y))->(P1 ((f x1) y)))
% Found ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> ((((x x1) x1) x3) (fun (x4:(fofType->Prop))=> (P1 (x4 y))))) ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P1 ((x0 (g x1)) y))->(P1 ((f x1) y)))
% Found ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> ((((x x1) x1) x3) (fun (x4:(fofType->Prop))=> (P1 (x4 y))))) ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P1 ((x0 (g x1)) y))->(P1 ((f x1) y)))
% Found (fun (P1:(Prop->Prop))=> ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> ((((x x1) x1) x3) (fun (x4:(fofType->Prop))=> (P1 (x4 y))))) ((eq_ref (fofType->Prop)) (g x1)))) as proof of ((P1 ((x0 (g x1)) y))->(P1 ((f x1) y)))
% Found (fun (y:fofType) (P1:(Prop->Prop))=> ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> ((((x x1) x1) x3) (fun (x4:(fofType->Prop))=> (P1 (x4 y))))) ((eq_ref (fofType->Prop)) (g x1)))) as proof of (((eq Prop) ((x0 (g x1)) y)) ((f x1) y))
% Found eq_ref00:=(eq_ref0 (g x1)):(((eq (fofType->Prop)) (g x1)) (g x1))
% Found (eq_ref0 (g x1)) as proof of (((eq (fofType->Prop)) (g x1)) (g x1))
% Found ((eq_ref (fofType->Prop)) (g x1)) as proof of (((eq (fofType->Prop)) (g x1)) (g x1))
% Found ((eq_ref (fofType->Prop)) (g x1)) as proof of (((eq (fofType->Prop)) (g x1)) (g x1))
% Found (x200 ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P1 ((x0 (g x1)) y))->(P1 ((f x1) y)))
% Found (x200 ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P1 ((x0 (g x1)) y))->(P1 ((f x1) y)))
% Found ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> ((x20 x3) (fun (x4:(fofType->Prop))=> (P1 ((x0 (g x1)) y))))) ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P1 ((x0 (g x1)) y))->(P1 ((f x1) y)))
% Found ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> (((x2 x1) x3) (fun (x4:(fofType->Prop))=> (P1 ((x0 (g x1)) y))))) ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P1 ((x0 (g x1)) y))->(P1 ((f x1) y)))
% Found ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> ((((x x1) x1) x3) (fun (x4:(fofType->Prop))=> (P1 ((x0 (g x1)) y))))) ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P1 ((x0 (g x1)) y))->(P1 ((f x1) y)))
% Found ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> ((((x x1) x1) x3) (fun (x4:(fofType->Prop))=> (P1 ((x0 (g x1)) y))))) ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P1 ((x0 (g x1)) y))->(P1 ((f x1) y)))
% Found (fun (P1:(Prop->Prop))=> ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> ((((x x1) x1) x3) (fun (x4:(fofType->Prop))=> (P1 ((x0 (g x1)) y))))) ((eq_ref (fofType->Prop)) (g x1)))) as proof of ((P1 ((x0 (g x1)) y))->(P1 ((f x1) y)))
% Found (fun (y:fofType) (P1:(Prop->Prop))=> ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> ((((x x1) x1) x3) (fun (x4:(fofType->Prop))=> (P1 ((x0 (g x1)) y))))) ((eq_ref (fofType->Prop)) (g x1)))) as proof of (((eq Prop) ((x0 (g x1)) y)) ((f x1) y))
% Found eq_ref00:=(eq_ref0 (g x1)):(((eq (fofType->Prop)) (g x1)) (g x1))
% Found (eq_ref0 (g x1)) as proof of (((eq (fofType->Prop)) (g x1)) (g x1))
% Found ((eq_ref (fofType->Prop)) (g x1)) as proof of (((eq (fofType->Prop)) (g x1)) (g x1))
% Found ((eq_ref (fofType->Prop)) (g x1)) as proof of (((eq (fofType->Prop)) (g x1)) (g x1))
% Found (x200 ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P1 ((x0 (g x1)) y))->(P1 ((f x1) y)))
% Found (x200 ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P1 ((x0 (g x1)) y))->(P1 ((f x1) y)))
% Found ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> ((x20 x3) (fun (x4:(fofType->Prop))=> (P1 ((x0 (g x1)) y))))) ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P1 ((x0 (g x1)) y))->(P1 ((f x1) y)))
% Found ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> (((x2 x1) x3) (fun (x4:(fofType->Prop))=> (P1 ((x0 (g x1)) y))))) ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P1 ((x0 (g x1)) y))->(P1 ((f x1) y)))
% Found ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> ((((x x1) x1) x3) (fun (x4:(fofType->Prop))=> (P1 ((x0 (g x1)) y))))) ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P1 ((x0 (g x1)) y))->(P1 ((f x1) y)))
% Found ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> ((((x x1) x1) x3) (fun (x4:(fofType->Prop))=> (P1 ((x0 (g x1)) y))))) ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P1 ((x0 (g x1)) y))->(P1 ((f x1) y)))
% Found (fun (P1:(Prop->Prop))=> ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> ((((x x1) x1) x3) (fun (x4:(fofType->Prop))=> (P1 ((x0 (g x1)) y))))) ((eq_ref (fofType->Prop)) (g x1)))) as proof of ((P1 ((x0 (g x1)) y))->(P1 ((f x1) y)))
% Found (fun (y:fofType) (P1:(Prop->Prop))=> ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> ((((x x1) x1) x3) (fun (x4:(fofType->Prop))=> (P1 ((x0 (g x1)) y))))) ((eq_ref (fofType->Prop)) (g x1)))) as proof of (((eq Prop) ((x0 (g x1)) y)) ((f x1) y))
% Found eq_ref00:=(eq_ref0 (g x1)):(((eq (fofType->Prop)) (g x1)) (g x1))
% Found (eq_ref0 (g x1)) as proof of (((eq (fofType->Prop)) (g x1)) (g x1))
% Found ((eq_ref (fofType->Prop)) (g x1)) as proof of (((eq (fofType->Prop)) (g x1)) (g x1))
% Found ((eq_ref (fofType->Prop)) (g x1)) as proof of (((eq (fofType->Prop)) (g x1)) (g x1))
% Found (x200 ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P1 ((x0 (g x1)) y))->(P1 ((f x1) y)))
% Found (x200 ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P1 ((x0 (g x1)) y))->(P1 ((f x1) y)))
% Found ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> ((x20 x3) (fun (x4:(fofType->Prop))=> (P1 (x4 y))))) ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P1 ((x0 (g x1)) y))->(P1 ((f x1) y)))
% Found ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> (((x2 x1) x3) (fun (x4:(fofType->Prop))=> (P1 (x4 y))))) ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P1 ((x0 (g x1)) y))->(P1 ((f x1) y)))
% Found ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> ((((x x1) x1) x3) (fun (x4:(fofType->Prop))=> (P1 (x4 y))))) ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P1 ((x0 (g x1)) y))->(P1 ((f x1) y)))
% Found ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> ((((x x1) x1) x3) (fun (x4:(fofType->Prop))=> (P1 (x4 y))))) ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P1 ((x0 (g x1)) y))->(P1 ((f x1) y)))
% Found (fun (P1:(Prop->Prop))=> ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> ((((x x1) x1) x3) (fun (x4:(fofType->Prop))=> (P1 (x4 y))))) ((eq_ref (fofType->Prop)) (g x1)))) as proof of ((P1 ((x0 (g x1)) y))->(P1 ((f x1) y)))
% Found (fun (y:fofType) (P1:(Prop->Prop))=> ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> ((((x x1) x1) x3) (fun (x4:(fofType->Prop))=> (P1 (x4 y))))) ((eq_ref (fofType->Prop)) (g x1)))) as proof of (((eq Prop) ((x0 (g x1)) y)) ((f x1) y))
% Found eq_ref00:=(eq_ref0 (g x1)):(((eq (fofType->Prop)) (g x1)) (g x1))
% Found (eq_ref0 (g x1)) as proof of (((eq (fofType->Prop)) (g x1)) (g x1))
% Found ((eq_ref (fofType->Prop)) (g x1)) as proof of (((eq (fofType->Prop)) (g x1)) (g x1))
% Found ((eq_ref (fofType->Prop)) (g x1)) as proof of (((eq (fofType->Prop)) (g x1)) (g x1))
% Found (x200 ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P1 ((x0 (g x1)) y))->(P1 ((f x1) y)))
% Found (x200 ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P1 ((x0 (g x1)) y))->(P1 ((f x1) y)))
% Found ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> ((x20 x3) (fun (x4:(fofType->Prop))=> (P1 (x4 y))))) ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P1 ((x0 (g x1)) y))->(P1 ((f x1) y)))
% Found ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> (((x2 x1) x3) (fun (x4:(fofType->Prop))=> (P1 (x4 y))))) ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P1 ((x0 (g x1)) y))->(P1 ((f x1) y)))
% Found ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> ((((x x1) x1) x3) (fun (x4:(fofType->Prop))=> (P1 (x4 y))))) ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P1 ((x0 (g x1)) y))->(P1 ((f x1) y)))
% Found ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> ((((x x1) x1) x3) (fun (x4:(fofType->Prop))=> (P1 (x4 y))))) ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P1 ((x0 (g x1)) y))->(P1 ((f x1) y)))
% Found (fun (P1:(Prop->Prop))=> ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> ((((x x1) x1) x3) (fun (x4:(fofType->Prop))=> (P1 (x4 y))))) ((eq_ref (fofType->Prop)) (g x1)))) as proof of ((P1 ((x0 (g x1)) y))->(P1 ((f x1) y)))
% Found (fun (y:fofType) (P1:(Prop->Prop))=> ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> ((((x x1) x1) x3) (fun (x4:(fofType->Prop))=> (P1 (x4 y))))) ((eq_ref (fofType->Prop)) (g x1)))) as proof of (((eq Prop) ((x0 (g x1)) y)) ((f x1) y))
% Found eq_ref00:=(eq_ref0 (g x1)):(((eq (fofType->Prop)) (g x1)) (g x1))
% Found (eq_ref0 (g x1)) as proof of (((eq (fofType->Prop)) (g x1)) (g x1))
% Found ((eq_ref (fofType->Prop)) (g x1)) as proof of (((eq (fofType->Prop)) (g x1)) (g x1))
% Found ((eq_ref (fofType->Prop)) (g x1)) as proof of (((eq (fofType->Prop)) (g x1)) (g x1))
% Found (x200 ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P1 ((x0 (g x1)) y))->(P1 ((f x1) y)))
% Found (x200 ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P1 ((x0 (g x1)) y))->(P1 ((f x1) y)))
% Found ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> ((x20 x3) (fun (x4:(fofType->Prop))=> (P1 ((x0 (g x1)) y))))) ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P1 ((x0 (g x1)) y))->(P1 ((f x1) y)))
% Found ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> (((x2 x1) x3) (fun (x4:(fofType->Prop))=> (P1 ((x0 (g x1)) y))))) ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P1 ((x0 (g x1)) y))->(P1 ((f x1) y)))
% Found ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> ((((x x1) x1) x3) (fun (x4:(fofType->Prop))=> (P1 ((x0 (g x1)) y))))) ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P1 ((x0 (g x1)) y))->(P1 ((f x1) y)))
% Found ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> ((((x x1) x1) x3) (fun (x4:(fofType->Prop))=> (P1 ((x0 (g x1)) y))))) ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P1 ((x0 (g x1)) y))->(P1 ((f x1) y)))
% Found (fun (P1:(Prop->Prop))=> ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> ((((x x1) x1) x3) (fun (x4:(fofType->Prop))=> (P1 ((x0 (g x1)) y))))) ((eq_ref (fofType->Prop)) (g x1)))) as proof of ((P1 ((x0 (g x1)) y))->(P1 ((f x1) y)))
% Found (fun (y:fofType) (P1:(Prop->Prop))=> ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> ((((x x1) x1) x3) (fun (x4:(fofType->Prop))=> (P1 ((x0 (g x1)) y))))) ((eq_ref (fofType->Prop)) (g x1)))) as proof of (((eq Prop) ((x0 (g x1)) y)) ((f x1) y))
% Found eq_ref00:=(eq_ref0 (g x1)):(((eq (fofType->Prop)) (g x1)) (g x1))
% Found (eq_ref0 (g x1)) as proof of (((eq (fofType->Prop)) (g x1)) (g x1))
% Found ((eq_ref (fofType->Prop)) (g x1)) as proof of (((eq (fofType->Prop)) (g x1)) (g x1))
% Found ((eq_ref (fofType->Prop)) (g x1)) as proof of (((eq (fofType->Prop)) (g x1)) (g x1))
% Found (x200 ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P1 ((x0 (g x1)) y))->(P1 ((f x1) y)))
% Found (x200 ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P1 ((x0 (g x1)) y))->(P1 ((f x1) y)))
% Found ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> ((x20 x3) (fun (x4:(fofType->Prop))=> (P1 ((x0 (g x1)) y))))) ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P1 ((x0 (g x1)) y))->(P1 ((f x1) y)))
% Found ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> (((x2 x1) x3) (fun (x4:(fofType->Prop))=> (P1 ((x0 (g x1)) y))))) ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P1 ((x0 (g x1)) y))->(P1 ((f x1) y)))
% Found ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> ((((x x1) x1) x3) (fun (x4:(fofType->Prop))=> (P1 ((x0 (g x1)) y))))) ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P1 ((x0 (g x1)) y))->(P1 ((f x1) y)))
% Found ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> ((((x x1) x1) x3) (fun (x4:(fofType->Prop))=> (P1 ((x0 (g x1)) y))))) ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P1 ((x0 (g x1)) y))->(P1 ((f x1) y)))
% Found (fun (P1:(Prop->Prop))=> ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> ((((x x1) x1) x3) (fun (x4:(fofType->Prop))=> (P1 ((x0 (g x1)) y))))) ((eq_ref (fofType->Prop)) (g x1)))) as proof of ((P1 ((x0 (g x1)) y))->(P1 ((f x1) y)))
% Found (fun (y:fofType) (P1:(Prop->Prop))=> ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> ((((x x1) x1) x3) (fun (x4:(fofType->Prop))=> (P1 ((x0 (g x1)) y))))) ((eq_ref (fofType->Prop)) (g x1)))) as proof of (((eq Prop) ((x0 (g x1)) y)) ((f x1) y))
% Found eq_ref00:=(eq_ref0 (g x1)):(((eq (fofType->Prop)) (g x1)) (g x1))
% Found (eq_ref0 (g x1)) as proof of (((eq (fofType->Prop)) (g x1)) (g x1))
% Found ((eq_ref (fofType->Prop)) (g x1)) as proof of (((eq (fofType->Prop)) (g x1)) (g x1))
% Found ((eq_ref (fofType->Prop)) (g x1)) as proof of (((eq (fofType->Prop)) (g x1)) (g x1))
% Found (x200 ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P1 ((x0 (g x1)) y))->(P1 ((f x1) y)))
% Found (x200 ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P1 ((x0 (g x1)) y))->(P1 ((f x1) y)))
% Found ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> ((x20 x3) (fun (x4:(fofType->Prop))=> (P1 (x4 y))))) ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P1 ((x0 (g x1)) y))->(P1 ((f x1) y)))
% Found ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> (((x2 x1) x3) (fun (x4:(fofType->Prop))=> (P1 (x4 y))))) ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P1 ((x0 (g x1)) y))->(P1 ((f x1) y)))
% Found ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> ((((x x1) x1) x3) (fun (x4:(fofType->Prop))=> (P1 (x4 y))))) ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P1 ((x0 (g x1)) y))->(P1 ((f x1) y)))
% Found ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> ((((x x1) x1) x3) (fun (x4:(fofType->Prop))=> (P1 (x4 y))))) ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P1 ((x0 (g x1)) y))->(P1 ((f x1) y)))
% Found (fun (P1:(Prop->Prop))=> ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> ((((x x1) x1) x3) (fun (x4:(fofType->Prop))=> (P1 (x4 y))))) ((eq_ref (fofType->Prop)) (g x1)))) as proof of ((P1 ((x0 (g x1)) y))->(P1 ((f x1) y)))
% Found (fun (y:fofType) (P1:(Prop->Prop))=> ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> ((((x x1) x1) x3) (fun (x4:(fofType->Prop))=> (P1 (x4 y))))) ((eq_ref (fofType->Prop)) (g x1)))) as proof of (((eq Prop) ((x0 (g x1)) y)) ((f x1) y))
% Found x1:(P f)
% Instantiate: f0:=f:(fofType->(fofType->Prop))
% Found x1 as proof of (P0 f0)
% Found eq_ref000:=(eq_ref00 P):((P f)->(P f))
% Found (eq_ref00 P) as proof of (P0 f)
% Found ((eq_ref0 f) P) as proof of (P0 f)
% Found (((eq_ref (fofType->(fofType->Prop))) f) P) as proof of (P0 f)
% Found (((eq_ref (fofType->(fofType->Prop))) f) P) as proof of (P0 f)
% Found eq_ref00:=(eq_ref0 (f0 x3)):(((eq Prop) (f0 x3)) (f0 x3))
% Found (eq_ref0 (f0 x3)) as proof of (((eq Prop) (f0 x3)) ((f x1) x3))
% Found ((eq_ref Prop) (f0 x3)) as proof of (((eq Prop) (f0 x3)) ((f x1) x3))
% Found ((eq_ref Prop) (f0 x3)) as proof of (((eq Prop) (f0 x3)) ((f x1) x3))
% Found (fun (x3:fofType)=> ((eq_ref Prop) (f0 x3))) as proof of (((eq Prop) (f0 x3)) ((f x1) x3))
% Found (fun (x3:fofType)=> ((eq_ref Prop) (f0 x3))) as proof of (forall (x:fofType), (((eq Prop) (f0 x)) ((f x1) x)))
% Found ((functional_extensionality01000 (fun (x3:fofType)=> ((eq_ref Prop) (f0 x3)))) x2) as proof of (P (f x1))
% Found ((functional_extensionality01000 (fun (x3:fofType)=> ((eq_ref Prop) (f0 x3)))) x2) as proof of (P (f x1))
% Found (((fun (x3:(forall (x:fofType), (((eq Prop) (f0 x)) ((f x1) x))))=> ((functional_extensionality0100 x3) P)) (fun (x3:fofType)=> ((eq_ref Prop) (f0 x3)))) x2) as proof of (P (f x1))
% Found (((fun (x3:(forall (x:fofType), (((eq Prop) (f0 x)) ((f x1) x))))=> (((functional_extensionality010 (f x1)) x3) P)) (fun (x3:fofType)=> ((eq_ref Prop) (f0 x3)))) x2) as proof of (P (f x1))
% Found (((fun (x3:(forall (x:fofType), (((eq Prop) ((x0 (g x1)) x)) ((f x1) x))))=> ((((functional_extensionality01 (x0 (g x1))) (f x1)) x3) P)) (fun (x3:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x3)))) x2) as proof of (P (f x1))
% Found (((fun (x3:(forall (x:fofType), (((eq Prop) ((x0 (g x1)) x)) ((f x1) x))))=> (((((functional_extensionality0 Prop) (x0 (g x1))) (f x1)) x3) P)) (fun (x3:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x3)))) x2) as proof of (P (f x1))
% Found (fun (x2:(P (x0 (g x1))))=> (((fun (x3:(forall (x:fofType), (((eq Prop) ((x0 (g x1)) x)) ((f x1) x))))=> (((((functional_extensionality0 Prop) (x0 (g x1))) (f x1)) x3) P)) (fun (x3:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x3)))) x2)) as proof of (P (f x1))
% Found (fun (P:((fofType->Prop)->Prop)) (x2:(P (x0 (g x1))))=> (((fun (x3:(forall (x:fofType), (((eq Prop) ((x0 (g x1)) x)) ((f x1) x))))=> (((((functional_extensionality0 Prop) (x0 (g x1))) (f x1)) x3) P)) (fun (x3:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x3)))) x2)) as proof of ((P (x0 (g x1)))->(P (f x1)))
% Found eq_ref00:=(eq_ref0 (f0 x3)):(((eq Prop) (f0 x3)) (f0 x3))
% Found (eq_ref0 (f0 x3)) as proof of (((eq Prop) (f0 x3)) ((f x1) x3))
% Found ((eq_ref Prop) (f0 x3)) as proof of (((eq Prop) (f0 x3)) ((f x1) x3))
% Found ((eq_ref Prop) (f0 x3)) as proof of (((eq Prop) (f0 x3)) ((f x1) x3))
% Found (fun (x3:fofType)=> ((eq_ref Prop) (f0 x3))) as proof of (((eq Prop) (f0 x3)) ((f x1) x3))
% Found (fun (x3:fofType)=> ((eq_ref Prop) (f0 x3))) as proof of (forall (x:fofType), (((eq Prop) (f0 x)) ((f x1) x)))
% Found ((functional_extensionality_dep01000 (fun (x3:fofType)=> ((eq_ref Prop) (f0 x3)))) x2) as proof of (P (f x1))
% Found ((functional_extensionality_dep01000 (fun (x3:fofType)=> ((eq_ref Prop) (f0 x3)))) x2) as proof of (P (f x1))
% Found (((fun (x3:(forall (x:fofType), (((eq Prop) (f0 x)) ((f x1) x))))=> ((functional_extensionality_dep0100 x3) P)) (fun (x3:fofType)=> ((eq_ref Prop) (f0 x3)))) x2) as proof of (P (f x1))
% Found (((fun (x3:(forall (x:fofType), (((eq Prop) (f0 x)) ((f x1) x))))=> (((functional_extensionality_dep010 (f x1)) x3) P)) (fun (x3:fofType)=> ((eq_ref Prop) (f0 x3)))) x2) as proof of (P (f x1))
% Found (((fun (x3:(forall (x:fofType), (((eq Prop) ((x0 (g x1)) x)) ((f x1) x))))=> ((((functional_extensionality_dep01 (x0 (g x1))) (f x1)) x3) P)) (fun (x3:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x3)))) x2) as proof of (P (f x1))
% Found (((fun (x3:(forall (x:fofType), (((eq Prop) ((x0 (g x1)) x)) ((f x1) x))))=> (((((functional_extensionality_dep0 (fun (x6:fofType)=> Prop)) (x0 (g x1))) (f x1)) x3) P)) (fun (x3:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x3)))) x2) as proof of (P (f x1))
% Found (fun (x2:(P (x0 (g x1))))=> (((fun (x3:(forall (x:fofType), (((eq Prop) ((x0 (g x1)) x)) ((f x1) x))))=> (((((functional_extensionality_dep0 (fun (x6:fofType)=> Prop)) (x0 (g x1))) (f x1)) x3) P)) (fun (x3:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x3)))) x2)) as proof of (P (f x1))
% Found (fun (P:((fofType->Prop)->Prop)) (x2:(P (x0 (g x1))))=> (((fun (x3:(forall (x:fofType), (((eq Prop) ((x0 (g x1)) x)) ((f x1) x))))=> (((((functional_extensionality_dep0 (fun (x6:fofType)=> Prop)) (x0 (g x1))) (f x1)) x3) P)) (fun (x3:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x3)))) x2)) as proof of ((P (x0 (g x1)))->(P (f x1)))
% Found eq_ref00:=(eq_ref0 (g Xx)):(((eq (fofType->Prop)) (g Xx)) (g Xx))
% Found (eq_ref0 (g Xx)) as proof of (((eq (fofType->Prop)) (g Xx)) (g x1))
% Found ((eq_ref (fofType->Prop)) (g Xx)) as proof of (((eq (fofType->Prop)) (g Xx)) (g x1))
% Found ((eq_ref (fofType->Prop)) (g Xx)) as proof of (((eq (fofType->Prop)) (g Xx)) (g x1))
% Found ((eq_ref (fofType->Prop)) (g Xx)) as proof of (((eq (fofType->Prop)) (g Xx)) (g x1))
% Found (x200 ((eq_ref (fofType->Prop)) (g Xx))) as proof of ((P ((x0 (g x1)) y))->(P ((f x1) y)))
% Found (x200 ((eq_ref (fofType->Prop)) (g Xx))) as proof of ((P ((x0 (g x1)) y))->(P ((f x1) y)))
% Found ((fun (x3:(((eq (fofType->Prop)) (g Xx)) (g x1)))=> ((x20 x3) (fun (x4:(fofType->Prop))=> (P ((x0 (g x1)) y))))) ((eq_ref (fofType->Prop)) (g Xx))) as proof of ((P ((x0 (g x1)) y))->(P ((f x1) y)))
% Found ((fun (x3:(((eq (fofType->Prop)) (g Xx)) (g x1)))=> ((x20 x3) (fun (x4:(fofType->Prop))=> (P ((x0 (g x1)) y))))) ((eq_ref (fofType->Prop)) (g Xx))) as proof of ((P ((x0 (g x1)) y))->(P ((f x1) y)))
% Found ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> (((x2 x1) x3) (fun (x4:(fofType->Prop))=> (P ((x0 (g x1)) y))))) ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P ((x0 (g x1)) y))->(P ((f x1) y)))
% Found ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> ((((fun (Xx:fofType)=> ((x Xx) x1)) x1) x3) (fun (x4:(fofType->Prop))=> (P ((x0 (g x1)) y))))) ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P ((x0 (g x1)) y))->(P ((f x1) y)))
% Found (fun (P:(Prop->Prop))=> ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> ((((fun (Xx:fofType)=> ((x Xx) x1)) x1) x3) (fun (x4:(fofType->Prop))=> (P ((x0 (g x1)) y))))) ((eq_ref (fofType->Prop)) (g x1)))) as proof of ((P ((x0 (g x1)) y))->(P ((f x1) y)))
% Found (fun (y:fofType) (P:(Prop->Prop))=> ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> ((((fun (Xx:fofType)=> ((x Xx) x1)) x1) x3) (fun (x4:(fofType->Prop))=> (P ((x0 (g x1)) y))))) ((eq_ref (fofType->Prop)) (g x1)))) as proof of (((eq Prop) ((x0 (g x1)) y)) ((f x1) y))
% Found eq_ref00:=(eq_ref0 (g x1)):(((eq (fofType->Prop)) (g x1)) (g x1))
% Found (eq_ref0 (g x1)) as proof of (((eq (fofType->Prop)) (g x1)) (g x1))
% Found ((eq_ref (fofType->Prop)) (g x1)) as proof of (((eq (fofType->Prop)) (g x1)) (g x1))
% Found ((eq_ref (fofType->Prop)) (g x1)) as proof of (((eq (fofType->Prop)) (g x1)) (g x1))
% Found (x200 ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P1 (x0 (g x1)))->(P1 (f x1)))
% Found (x200 ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P1 (x0 (g x1)))->(P1 (f x1)))
% Found ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> ((x20 x3) P1)) ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P1 (x0 (g x1)))->(P1 (f x1)))
% Found ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> (((x2 x1) x3) P1)) ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P1 (x0 (g x1)))->(P1 (f x1)))
% Found ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> ((((fun (Xx:fofType)=> ((x Xx) x1)) x1) x3) P1)) ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P1 (x0 (g x1)))->(P1 (f x1)))
% Found ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> ((((fun (Xx:fofType)=> ((x Xx) x1)) x1) x3) P1)) ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P1 (x0 (g x1)))->(P1 (f x1)))
% Found (fun (P1:((fofType->Prop)->Prop))=> ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> ((((fun (Xx:fofType)=> ((x Xx) x1)) x1) x3) P1)) ((eq_ref (fofType->Prop)) (g x1)))) as proof of ((P1 (x0 (g x1)))->(P1 (f x1)))
% Found eq_ref00:=(eq_ref0 (g x1)):(((eq (fofType->Prop)) (g x1)) (g x1))
% Found (eq_ref0 (g x1)) as proof of (((eq (fofType->Prop)) (g x1)) (g x1))
% Found ((eq_ref (fofType->Prop)) (g x1)) as proof of (((eq (fofType->Prop)) (g x1)) (g x1))
% Found ((eq_ref (fofType->Prop)) (g x1)) as proof of (((eq (fofType->Prop)) (g x1)) (g x1))
% Found (x200 ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P1 (x0 (g x1)))->(P1 (f x1)))
% Found (x200 ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P1 (x0 (g x1)))->(P1 (f x1)))
% Found ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> ((x20 x3) (fun (x4:(fofType->Prop))=> (P1 (x0 (g x1)))))) ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P1 (x0 (g x1)))->(P1 (f x1)))
% Found ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> (((x2 x1) x3) (fun (x4:(fofType->Prop))=> (P1 (x0 (g x1)))))) ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P1 (x0 (g x1)))->(P1 (f x1)))
% Found ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> ((((fun (Xx:fofType)=> ((x Xx) x1)) x1) x3) (fun (x4:(fofType->Prop))=> (P1 (x0 (g x1)))))) ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P1 (x0 (g x1)))->(P1 (f x1)))
% Found ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> ((((fun (Xx:fofType)=> ((x Xx) x1)) x1) x3) (fun (x4:(fofType->Prop))=> (P1 (x0 (g x1)))))) ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P1 (x0 (g x1)))->(P1 (f x1)))
% Found (fun (P1:((fofType->Prop)->Prop))=> ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> ((((fun (Xx:fofType)=> ((x Xx) x1)) x1) x3) (fun (x4:(fofType->Prop))=> (P1 (x0 (g x1)))))) ((eq_ref (fofType->Prop)) (g x1)))) as proof of ((P1 (x0 (g x1)))->(P1 (f x1)))
% Found eq_ref00:=(eq_ref0 (g x1)):(((eq (fofType->Prop)) (g x1)) (g x1))
% Found (eq_ref0 (g x1)) as proof of (((eq (fofType->Prop)) (g x1)) (g x1))
% Found ((eq_ref (fofType->Prop)) (g x1)) as proof of (((eq (fofType->Prop)) (g x1)) (g x1))
% Found ((eq_ref (fofType->Prop)) (g x1)) as proof of (((eq (fofType->Prop)) (g x1)) (g x1))
% Found (x200 ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P1 (x0 (g x1)))->(P1 (f x1)))
% Found (x200 ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P1 (x0 (g x1)))->(P1 (f x1)))
% Found ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> ((x20 x3) (fun (x4:(fofType->Prop))=> (P1 (x0 (g x1)))))) ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P1 (x0 (g x1)))->(P1 (f x1)))
% Found ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> (((x2 x1) x3) (fun (x4:(fofType->Prop))=> (P1 (x0 (g x1)))))) ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P1 (x0 (g x1)))->(P1 (f x1)))
% Found ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> (((x2 x1) x3) (fun (x4:(fofType->Prop))=> (P1 (x0 (g x1)))))) ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P1 (x0 (g x1)))->(P1 (f x1)))
% Found ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> ((((fun (Xx:fofType)=> ((x Xx) x1)) x1) x3) (fun (x4:(fofType->Prop))=> (P1 (x0 (g x1)))))) ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P1 (x0 (g x1)))->(P1 (f x1)))
% Found (fun (P1:((fofType->Prop)->Prop))=> ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> ((((fun (Xx:fofType)=> ((x Xx) x1)) x1) x3) (fun (x4:(fofType->Prop))=> (P1 (x0 (g x1)))))) ((eq_ref (fofType->Prop)) (g x1)))) as proof of ((P1 (x0 (g x1)))->(P1 (f x1)))
% Found eq_ref00:=(eq_ref0 (g x1)):(((eq (fofType->Prop)) (g x1)) (g x1))
% Found (eq_ref0 (g x1)) as proof of (((eq (fofType->Prop)) (g x1)) (g x1))
% Found ((eq_ref (fofType->Prop)) (g x1)) as proof of (((eq (fofType->Prop)) (g x1)) (g x1))
% Found ((eq_ref (fofType->Prop)) (g x1)) as proof of (((eq (fofType->Prop)) (g x1)) (g x1))
% Found (x200 ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P1 (x0 (g x1)))->(P1 (f x1)))
% Found (x200 ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P1 (x0 (g x1)))->(P1 (f x1)))
% Found ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> ((x20 x3) P1)) ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P1 (x0 (g x1)))->(P1 (f x1)))
% Found ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> (((x2 x1) x3) P1)) ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P1 (x0 (g x1)))->(P1 (f x1)))
% Found ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> (((x2 x1) x3) P1)) ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P1 (x0 (g x1)))->(P1 (f x1)))
% Found ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> ((((fun (Xx:fofType)=> ((x Xx) x1)) x1) x3) P1)) ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P1 (x0 (g x1)))->(P1 (f x1)))
% Found (fun (P1:((fofType->Prop)->Prop))=> ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> ((((fun (Xx:fofType)=> ((x Xx) x1)) x1) x3) P1)) ((eq_ref (fofType->Prop)) (g x1)))) as proof of ((P1 (x0 (g x1)))->(P1 (f x1)))
% Found eq_ref00:=(eq_ref0 (g x1)):(((eq (fofType->Prop)) (g x1)) (g x1))
% Found (eq_ref0 (g x1)) as proof of (((eq (fofType->Prop)) (g x1)) (g x1))
% Found ((eq_ref (fofType->Prop)) (g x1)) as proof of (((eq (fofType->Prop)) (g x1)) (g x1))
% Found ((eq_ref (fofType->Prop)) (g x1)) as proof of (((eq (fofType->Prop)) (g x1)) (g x1))
% Found (x200 ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P1 (x0 (g x1)))->(P1 (f x1)))
% Found (x200 ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P1 (x0 (g x1)))->(P1 (f x1)))
% Found ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> ((x20 x3) P1)) ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P1 (x0 (g x1)))->(P1 (f x1)))
% Found ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> (((x2 x1) x3) P1)) ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P1 (x0 (g x1)))->(P1 (f x1)))
% Found ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> ((((fun (Xx:fofType)=> ((x Xx) x1)) x1) x3) P1)) ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P1 (x0 (g x1)))->(P1 (f x1)))
% Found ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> ((((fun (Xx:fofType)=> ((x Xx) x1)) x1) x3) P1)) ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P1 (x0 (g x1)))->(P1 (f x1)))
% Found (fun (P1:((fofType->Prop)->Prop))=> ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> ((((fun (Xx:fofType)=> ((x Xx) x1)) x1) x3) P1)) ((eq_ref (fofType->Prop)) (g x1)))) as proof of ((P1 (x0 (g x1)))->(P1 (f x1)))
% Found eq_ref00:=(eq_ref0 (g x1)):(((eq (fofType->Prop)) (g x1)) (g x1))
% Found (eq_ref0 (g x1)) as proof of (((eq (fofType->Prop)) (g x1)) (g x1))
% Found ((eq_ref (fofType->Prop)) (g x1)) as proof of (((eq (fofType->Prop)) (g x1)) (g x1))
% Found ((eq_ref (fofType->Prop)) (g x1)) as proof of (((eq (fofType->Prop)) (g x1)) (g x1))
% Found (x200 ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P1 (x0 (g x1)))->(P1 (f x1)))
% Found (x200 ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P1 (x0 (g x1)))->(P1 (f x1)))
% Found ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> ((x20 x3) (fun (x4:(fofType->Prop))=> (P1 (x0 (g x1)))))) ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P1 (x0 (g x1)))->(P1 (f x1)))
% Found ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> (((x2 x1) x3) (fun (x4:(fofType->Prop))=> (P1 (x0 (g x1)))))) ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P1 (x0 (g x1)))->(P1 (f x1)))
% Found ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> ((((fun (Xx:fofType)=> ((x Xx) x1)) x1) x3) (fun (x4:(fofType->Prop))=> (P1 (x0 (g x1)))))) ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P1 (x0 (g x1)))->(P1 (f x1)))
% Found ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> ((((fun (Xx:fofType)=> ((x Xx) x1)) x1) x3) (fun (x4:(fofType->Prop))=> (P1 (x0 (g x1)))))) ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P1 (x0 (g x1)))->(P1 (f x1)))
% Found (fun (P1:((fofType->Prop)->Prop))=> ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> ((((fun (Xx:fofType)=> ((x Xx) x1)) x1) x3) (fun (x4:(fofType->Prop))=> (P1 (x0 (g x1)))))) ((eq_ref (fofType->Prop)) (g x1)))) as proof of ((P1 (x0 (g x1)))->(P1 (f x1)))
% Found eq_ref00:=(eq_ref0 (g x1)):(((eq (fofType->Prop)) (g x1)) (g x1))
% Found (eq_ref0 (g x1)) as proof of (((eq (fofType->Prop)) (g x1)) (g x1))
% Found ((eq_ref (fofType->Prop)) (g x1)) as proof of (((eq (fofType->Prop)) (g x1)) (g x1))
% Found ((eq_ref (fofType->Prop)) (g x1)) as proof of (((eq (fofType->Prop)) (g x1)) (g x1))
% Found (x200 ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P1 (x0 (g x1)))->(P1 (f x1)))
% Found (x200 ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P1 (x0 (g x1)))->(P1 (f x1)))
% Found ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> ((x20 x3) P1)) ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P1 (x0 (g x1)))->(P1 (f x1)))
% Found ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> (((x2 x1) x3) P1)) ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P1 (x0 (g x1)))->(P1 (f x1)))
% Found ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> (((x2 x1) x3) P1)) ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P1 (x0 (g x1)))->(P1 (f x1)))
% Found ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> ((((fun (Xx:fofType)=> ((x Xx) x1)) x1) x3) P1)) ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P1 (x0 (g x1)))->(P1 (f x1)))
% Found (fun (P1:((fofType->Prop)->Prop))=> ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> ((((fun (Xx:fofType)=> ((x Xx) x1)) x1) x3) P1)) ((eq_ref (fofType->Prop)) (g x1)))) as proof of ((P1 (x0 (g x1)))->(P1 (f x1)))
% Found eq_ref00:=(eq_ref0 (g x1)):(((eq (fofType->Prop)) (g x1)) (g x1))
% Found (eq_ref0 (g x1)) as proof of (((eq (fofType->Prop)) (g x1)) (g x1))
% Found ((eq_ref (fofType->Prop)) (g x1)) as proof of (((eq (fofType->Prop)) (g x1)) (g x1))
% Found ((eq_ref (fofType->Prop)) (g x1)) as proof of (((eq (fofType->Prop)) (g x1)) (g x1))
% Found (x200 ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P1 (x0 (g x1)))->(P1 (f x1)))
% Found (x200 ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P1 (x0 (g x1)))->(P1 (f x1)))
% Found ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> ((x20 x3) (fun (x4:(fofType->Prop))=> (P1 (x0 (g x1)))))) ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P1 (x0 (g x1)))->(P1 (f x1)))
% Found ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> (((x2 x1) x3) (fun (x4:(fofType->Prop))=> (P1 (x0 (g x1)))))) ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P1 (x0 (g x1)))->(P1 (f x1)))
% Found ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> (((x2 x1) x3) (fun (x4:(fofType->Prop))=> (P1 (x0 (g x1)))))) ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P1 (x0 (g x1)))->(P1 (f x1)))
% Found ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> ((((fun (Xx:fofType)=> ((x Xx) x1)) x1) x3) (fun (x4:(fofType->Prop))=> (P1 (x0 (g x1)))))) ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P1 (x0 (g x1)))->(P1 (f x1)))
% Found (fun (P1:((fofType->Prop)->Prop))=> ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> ((((fun (Xx:fofType)=> ((x Xx) x1)) x1) x3) (fun (x4:(fofType->Prop))=> (P1 (x0 (g x1)))))) ((eq_ref (fofType->Prop)) (g x1)))) as proof of ((P1 (x0 (g x1)))->(P1 (f x1)))
% Found eq_ref00:=(eq_ref0 (g Xx)):(((eq (fofType->Prop)) (g Xx)) (g Xx))
% Found (eq_ref0 (g Xx)) as proof of (((eq (fofType->Prop)) (g Xx)) (g x1))
% Found ((eq_ref (fofType->Prop)) (g Xx)) as proof of (((eq (fofType->Prop)) (g Xx)) (g x1))
% Found ((eq_ref (fofType->Prop)) (g Xx)) as proof of (((eq (fofType->Prop)) (g Xx)) (g x1))
% Found ((eq_ref (fofType->Prop)) (g Xx)) as proof of (((eq (fofType->Prop)) (g Xx)) (g x1))
% Found eq_ref000:=(eq_ref00 P):((P (x0 (g x1)))->(P (x0 (g x1))))
% Found (eq_ref00 P) as proof of (P0 (f Xx))
% Found ((eq_ref0 (x0 (g x1))) P) as proof of (P0 (f Xx))
% Found (((eq_ref (fofType->Prop)) (x0 (g x1))) P) as proof of (P0 (f Xx))
% Found (((eq_ref (fofType->Prop)) (x0 (g x1))) P) as proof of (P0 (f Xx))
% Found (((eq_ref (fofType->Prop)) (x0 (g x1))) P) as proof of (P0 (f Xx))
% Found ((x200 ((eq_ref (fofType->Prop)) (g Xx))) (((eq_ref (fofType->Prop)) (x0 (g x1))) P)) as proof of ((P (x0 (g x1)))->(P (f x1)))
% Found ((x200 ((eq_ref (fofType->Prop)) (g Xx))) (((eq_ref (fofType->Prop)) (x0 (g x1))) P)) as proof of ((P (x0 (g x1)))->(P (f x1)))
% Found (((fun (x3:(((eq (fofType->Prop)) (g Xx)) (g x1)))=> ((x20 x3) (fun (x5:(fofType->Prop))=> ((P (x0 (g x1)))->(P x5))))) ((eq_ref (fofType->Prop)) (g Xx))) (((eq_ref (fofType->Prop)) (x0 (g x1))) P)) as proof of ((P (x0 (g x1)))->(P (f x1)))
% Found (((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> (((x2 x1) x3) (fun (x5:(fofType->Prop))=> ((P (x0 (g x1)))->(P x5))))) ((eq_ref (fofType->Prop)) (g x1))) (((eq_ref (fofType->Prop)) (x0 (g x1))) P)) as proof of ((P (x0 (g x1)))->(P (f x1)))
% Found (((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> ((((fun (Xx:fofType)=> ((x Xx) x1)) x1) x3) (fun (x5:(fofType->Prop))=> ((P (x0 (g x1)))->(P x5))))) ((eq_ref (fofType->Prop)) (g x1))) (((eq_ref (fofType->Prop)) (x0 (g x1))) P)) as proof of ((P (x0 (g x1)))->(P (f x1)))
% Found (fun (P:((fofType->Prop)->Prop))=> (((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> ((((fun (Xx:fofType)=> ((x Xx) x1)) x1) x3) (fun (x5:(fofType->Prop))=> ((P (x0 (g x1)))->(P x5))))) ((eq_ref (fofType->Prop)) (g x1))) (((eq_ref (fofType->Prop)) (x0 (g x1))) P))) as proof of ((P (x0 (g x1)))->(P (f x1)))
% Found eq_ref00:=(eq_ref0 (g x1)):(((eq (fofType->Prop)) (g x1)) (g x1))
% Found (eq_ref0 (g x1)) as proof of (((eq (fofType->Prop)) (g x1)) (g x1))
% Found ((eq_ref (fofType->Prop)) (g x1)) as proof of (((eq (fofType->Prop)) (g x1)) (g x1))
% Found ((eq_ref (fofType->Prop)) (g x1)) as proof of (((eq (fofType->Prop)) (g x1)) (g x1))
% Found (x200 ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P1 (x0 (g x1)))->(P1 (f x1)))
% Found (x200 ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P1 (x0 (g x1)))->(P1 (f x1)))
% Found ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> ((x20 x3) (fun (x4:(fofType->Prop))=> (P1 (x0 (g x1)))))) ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P1 (x0 (g x1)))->(P1 (f x1)))
% Found ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> (((x2 x1) x3) (fun (x4:(fofType->Prop))=> (P1 (x0 (g x1)))))) ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P1 (x0 (g x1)))->(P1 (f x1)))
% Found ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> ((((fun (Xx:fofType)=> ((x Xx) x1)) x1) x3) (fun (x4:(fofType->Prop))=> (P1 (x0 (g x1)))))) ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P1 (x0 (g x1)))->(P1 (f x1)))
% Found ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> ((((fun (Xx:fofType)=> ((x Xx) x1)) x1) x3) (fun (x4:(fofType->Prop))=> (P1 (x0 (g x1)))))) ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P1 (x0 (g x1)))->(P1 (f x1)))
% Found (fun (P1:((fofType->Prop)->Prop))=> ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> ((((fun (Xx:fofType)=> ((x Xx) x1)) x1) x3) (fun (x4:(fofType->Prop))=> (P1 (x0 (g x1)))))) ((eq_ref (fofType->Prop)) (g x1)))) as proof of ((P1 (x0 (g x1)))->(P1 (f x1)))
% Found eq_ref00:=(eq_ref0 (g x1)):(((eq (fofType->Prop)) (g x1)) (g x1))
% Found (eq_ref0 (g x1)) as proof of (((eq (fofType->Prop)) (g x1)) (g x1))
% Found ((eq_ref (fofType->Prop)) (g x1)) as proof of (((eq (fofType->Prop)) (g x1)) (g x1))
% Found ((eq_ref (fofType->Prop)) (g x1)) as proof of (((eq (fofType->Prop)) (g x1)) (g x1))
% Found (x200 ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P1 (x0 (g x1)))->(P1 (f x1)))
% Found (x200 ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P1 (x0 (g x1)))->(P1 (f x1)))
% Found ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> ((x20 x3) P1)) ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P1 (x0 (g x1)))->(P1 (f x1)))
% Found ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> (((x2 x1) x3) P1)) ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P1 (x0 (g x1)))->(P1 (f x1)))
% Found ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> ((((fun (Xx:fofType)=> ((x Xx) x1)) x1) x3) P1)) ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P1 (x0 (g x1)))->(P1 (f x1)))
% Found ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> ((((fun (Xx:fofType)=> ((x Xx) x1)) x1) x3) P1)) ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P1 (x0 (g x1)))->(P1 (f x1)))
% Found (fun (P1:((fofType->Prop)->Prop))=> ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> ((((fun (Xx:fofType)=> ((x Xx) x1)) x1) x3) P1)) ((eq_ref (fofType->Prop)) (g x1)))) as proof of ((P1 (x0 (g x1)))->(P1 (f x1)))
% Found eq_ref00:=(eq_ref0 (g x1)):(((eq (fofType->Prop)) (g x1)) (g x1))
% Found (eq_ref0 (g x1)) as proof of (((eq (fofType->Prop)) (g x1)) (g x1))
% Found ((eq_ref (fofType->Prop)) (g x1)) as proof of (((eq (fofType->Prop)) (g x1)) (g x1))
% Found ((eq_ref (fofType->Prop)) (g x1)) as proof of (((eq (fofType->Prop)) (g x1)) (g x1))
% Found (x200 ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P1 (x0 (g x1)))->(P1 (f x1)))
% Found (x200 ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P1 (x0 (g x1)))->(P1 (f x1)))
% Found ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> ((x20 x3) (fun (x4:(fofType->Prop))=> (P1 (x0 (g x1)))))) ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P1 (x0 (g x1)))->(P1 (f x1)))
% Found ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> (((x2 x1) x3) (fun (x4:(fofType->Prop))=> (P1 (x0 (g x1)))))) ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P1 (x0 (g x1)))->(P1 (f x1)))
% Found ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> (((x2 x1) x3) (fun (x4:(fofType->Prop))=> (P1 (x0 (g x1)))))) ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P1 (x0 (g x1)))->(P1 (f x1)))
% Found ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> ((((fun (Xx:fofType)=> ((x Xx) x1)) x1) x3) (fun (x4:(fofType->Prop))=> (P1 (x0 (g x1)))))) ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P1 (x0 (g x1)))->(P1 (f x1)))
% Found (fun (P1:((fofType->Prop)->Prop))=> ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> ((((fun (Xx:fofType)=> ((x Xx) x1)) x1) x3) (fun (x4:(fofType->Prop))=> (P1 (x0 (g x1)))))) ((eq_ref (fofType->Prop)) (g x1)))) as proof of ((P1 (x0 (g x1)))->(P1 (f x1)))
% Found eq_ref00:=(eq_ref0 (g x1)):(((eq (fofType->Prop)) (g x1)) (g x1))
% Found (eq_ref0 (g x1)) as proof of (((eq (fofType->Prop)) (g x1)) (g x1))
% Found ((eq_ref (fofType->Prop)) (g x1)) as proof of (((eq (fofType->Prop)) (g x1)) (g x1))
% Found ((eq_ref (fofType->Prop)) (g x1)) as proof of (((eq (fofType->Prop)) (g x1)) (g x1))
% Found (x200 ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P1 (x0 (g x1)))->(P1 (f x1)))
% Found (x200 ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P1 (x0 (g x1)))->(P1 (f x1)))
% Found ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> ((x20 x3) P1)) ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P1 (x0 (g x1)))->(P1 (f x1)))
% Found ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> (((x2 x1) x3) P1)) ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P1 (x0 (g x1)))->(P1 (f x1)))
% Found ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> (((x2 x1) x3) P1)) ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P1 (x0 (g x1)))->(P1 (f x1)))
% Found ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> ((((fun (Xx:fofType)=> ((x Xx) x1)) x1) x3) P1)) ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P1 (x0 (g x1)))->(P1 (f x1)))
% Found (fun (P1:((fofType->Prop)->Prop))=> ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> ((((fun (Xx:fofType)=> ((x Xx) x1)) x1) x3) P1)) ((eq_ref (fofType->Prop)) (g x1)))) as proof of ((P1 (x0 (g x1)))->(P1 (f x1)))
% Found eq_ref00:=(eq_ref0 (g x1)):(((eq (fofType->Prop)) (g x1)) (g x1))
% Found (eq_ref0 (g x1)) as proof of (((eq (fofType->Prop)) (g x1)) (g x1))
% Found ((eq_ref (fofType->Prop)) (g x1)) as proof of (((eq (fofType->Prop)) (g x1)) (g x1))
% Found ((eq_ref (fofType->Prop)) (g x1)) as proof of (((eq (fofType->Prop)) (g x1)) (g x1))
% Found (x200 ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P1 (x0 (g x1)))->(P1 (f x1)))
% Found (x200 ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P1 (x0 (g x1)))->(P1 (f x1)))
% Found ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> ((x20 x3) P1)) ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P1 (x0 (g x1)))->(P1 (f x1)))
% Found ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> (((x2 x1) x3) P1)) ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P1 (x0 (g x1)))->(P1 (f x1)))
% Found ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> ((((fun (Xx:fofType)=> ((x Xx) x1)) x1) x3) P1)) ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P1 (x0 (g x1)))->(P1 (f x1)))
% Found ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> ((((fun (Xx:fofType)=> ((x Xx) x1)) x1) x3) P1)) ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P1 (x0 (g x1)))->(P1 (f x1)))
% Found (fun (P1:((fofType->Prop)->Prop))=> ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> ((((fun (Xx:fofType)=> ((x Xx) x1)) x1) x3) P1)) ((eq_ref (fofType->Prop)) (g x1)))) as proof of ((P1 (x0 (g x1)))->(P1 (f x1)))
% Found eq_ref00:=(eq_ref0 (g x1)):(((eq (fofType->Prop)) (g x1)) (g x1))
% Found (eq_ref0 (g x1)) as proof of (((eq (fofType->Prop)) (g x1)) (g x1))
% Found ((eq_ref (fofType->Prop)) (g x1)) as proof of (((eq (fofType->Prop)) (g x1)) (g x1))
% Found ((eq_ref (fofType->Prop)) (g x1)) as proof of (((eq (fofType->Prop)) (g x1)) (g x1))
% Found (x200 ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P1 (x0 (g x1)))->(P1 (f x1)))
% Found (x200 ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P1 (x0 (g x1)))->(P1 (f x1)))
% Found ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> ((x20 x3) (fun (x4:(fofType->Prop))=> (P1 (x0 (g x1)))))) ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P1 (x0 (g x1)))->(P1 (f x1)))
% Found ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> (((x2 x1) x3) (fun (x4:(fofType->Prop))=> (P1 (x0 (g x1)))))) ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P1 (x0 (g x1)))->(P1 (f x1)))
% Found ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> ((((fun (Xx:fofType)=> ((x Xx) x1)) x1) x3) (fun (x4:(fofType->Prop))=> (P1 (x0 (g x1)))))) ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P1 (x0 (g x1)))->(P1 (f x1)))
% Found ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> ((((fun (Xx:fofType)=> ((x Xx) x1)) x1) x3) (fun (x4:(fofType->Prop))=> (P1 (x0 (g x1)))))) ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P1 (x0 (g x1)))->(P1 (f x1)))
% Found (fun (P1:((fofType->Prop)->Prop))=> ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> ((((fun (Xx:fofType)=> ((x Xx) x1)) x1) x3) (fun (x4:(fofType->Prop))=> (P1 (x0 (g x1)))))) ((eq_ref (fofType->Prop)) (g x1)))) as proof of ((P1 (x0 (g x1)))->(P1 (f x1)))
% Found eq_ref00:=(eq_ref0 (g x1)):(((eq (fofType->Prop)) (g x1)) (g x1))
% Found (eq_ref0 (g x1)) as proof of (((eq (fofType->Prop)) (g x1)) (g x1))
% Found ((eq_ref (fofType->Prop)) (g x1)) as proof of (((eq (fofType->Prop)) (g x1)) (g x1))
% Found ((eq_ref (fofType->Prop)) (g x1)) as proof of (((eq (fofType->Prop)) (g x1)) (g x1))
% Found (x200 ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P1 (x0 (g x1)))->(P1 (f x1)))
% Found (x200 ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P1 (x0 (g x1)))->(P1 (f x1)))
% Found ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> ((x20 x3) P1)) ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P1 (x0 (g x1)))->(P1 (f x1)))
% Found ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> (((x2 x1) x3) P1)) ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P1 (x0 (g x1)))->(P1 (f x1)))
% Found ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> (((x2 x1) x3) P1)) ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P1 (x0 (g x1)))->(P1 (f x1)))
% Found ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> ((((fun (Xx:fofType)=> ((x Xx) x1)) x1) x3) P1)) ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P1 (x0 (g x1)))->(P1 (f x1)))
% Found (fun (P1:((fofType->Prop)->Prop))=> ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> ((((fun (Xx:fofType)=> ((x Xx) x1)) x1) x3) P1)) ((eq_ref (fofType->Prop)) (g x1)))) as proof of ((P1 (x0 (g x1)))->(P1 (f x1)))
% Found eq_ref00:=(eq_ref0 (g x1)):(((eq (fofType->Prop)) (g x1)) (g x1))
% Found (eq_ref0 (g x1)) as proof of (((eq (fofType->Prop)) (g x1)) (g x1))
% Found ((eq_ref (fofType->Prop)) (g x1)) as proof of (((eq (fofType->Prop)) (g x1)) (g x1))
% Found ((eq_ref (fofType->Prop)) (g x1)) as proof of (((eq (fofType->Prop)) (g x1)) (g x1))
% Found (x200 ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P1 (x0 (g x1)))->(P1 (f x1)))
% Found (x200 ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P1 (x0 (g x1)))->(P1 (f x1)))
% Found ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> ((x20 x3) (fun (x4:(fofType->Prop))=> (P1 (x0 (g x1)))))) ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P1 (x0 (g x1)))->(P1 (f x1)))
% Found ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> (((x2 x1) x3) (fun (x4:(fofType->Prop))=> (P1 (x0 (g x1)))))) ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P1 (x0 (g x1)))->(P1 (f x1)))
% Found ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> (((x2 x1) x3) (fun (x4:(fofType->Prop))=> (P1 (x0 (g x1)))))) ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P1 (x0 (g x1)))->(P1 (f x1)))
% Found ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> ((((fun (Xx:fofType)=> ((x Xx) x1)) x1) x3) (fun (x4:(fofType->Prop))=> (P1 (x0 (g x1)))))) ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P1 (x0 (g x1)))->(P1 (f x1)))
% Found (fun (P1:((fofType->Prop)->Prop))=> ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> ((((fun (Xx:fofType)=> ((x Xx) x1)) x1) x3) (fun (x4:(fofType->Prop))=> (P1 (x0 (g x1)))))) ((eq_ref (fofType->Prop)) (g x1)))) as proof of ((P1 (x0 (g x1)))->(P1 (f x1)))
% Found eq_ref00:=(eq_ref0 (g Xx)):(((eq (fofType->Prop)) (g Xx)) (g Xx))
% Found (eq_ref0 (g Xx)) as proof of (((eq (fofType->Prop)) (g Xx)) (g x1))
% Found ((eq_ref (fofType->Prop)) (g Xx)) as proof of (((eq (fofType->Prop)) (g Xx)) (g x1))
% Found ((eq_ref (fofType->Prop)) (g Xx)) as proof of (((eq (fofType->Prop)) (g Xx)) (g x1))
% Found ((eq_ref (fofType->Prop)) (g Xx)) as proof of (((eq (fofType->Prop)) (g Xx)) (g x1))
% Found (x200 ((eq_ref (fofType->Prop)) (g Xx))) as proof of ((P ((x0 (g x1)) y))->(P ((f x1) y)))
% Found (x200 ((eq_ref (fofType->Prop)) (g Xx))) as proof of ((P ((x0 (g x1)) y))->(P ((f x1) y)))
% Found (x200 ((eq_ref (fofType->Prop)) (g Xx))) as proof of ((P ((x0 (g x1)) y))->(P ((f x1) y)))
% Found ((fun (x3:(((eq (fofType->Prop)) (g Xx)) (g x1)))=> ((x20 x3) (fun (x4:(fofType->Prop))=> (P ((x0 (g x1)) y))))) ((eq_ref (fofType->Prop)) (g Xx))) as proof of ((P ((x0 (g x1)) y))->(P ((f x1) y)))
% Found ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> (((x2 x1) x3) (fun (x4:(fofType->Prop))=> (P ((x0 (g x1)) y))))) ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P ((x0 (g x1)) y))->(P ((f x1) y)))
% Found ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> ((((fun (Xx:fofType)=> ((x Xx) x1)) x1) x3) (fun (x4:(fofType->Prop))=> (P ((x0 (g x1)) y))))) ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P ((x0 (g x1)) y))->(P ((f x1) y)))
% Found (fun (P:(Prop->Prop))=> ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> ((((fun (Xx:fofType)=> ((x Xx) x1)) x1) x3) (fun (x4:(fofType->Prop))=> (P ((x0 (g x1)) y))))) ((eq_ref (fofType->Prop)) (g x1)))) as proof of ((P ((x0 (g x1)) y))->(P ((f x1) y)))
% Found (fun (y:fofType) (P:(Prop->Prop))=> ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> ((((fun (Xx:fofType)=> ((x Xx) x1)) x1) x3) (fun (x4:(fofType->Prop))=> (P ((x0 (g x1)) y))))) ((eq_ref (fofType->Prop)) (g x1)))) as proof of (((eq Prop) ((x0 (g x1)) y)) ((f x1) y))
% Found eq_ref00:=(eq_ref0 (g Xx)):(((eq (fofType->Prop)) (g Xx)) (g Xx))
% Found (eq_ref0 (g Xx)) as proof of (((eq (fofType->Prop)) (g Xx)) (g x1))
% Found ((eq_ref (fofType->Prop)) (g Xx)) as proof of (((eq (fofType->Prop)) (g Xx)) (g x1))
% Found ((eq_ref (fofType->Prop)) (g Xx)) as proof of (((eq (fofType->Prop)) (g Xx)) (g x1))
% Found ((eq_ref (fofType->Prop)) (g Xx)) as proof of (((eq (fofType->Prop)) (g Xx)) (g x1))
% Found (x200 ((eq_ref (fofType->Prop)) (g Xx))) as proof of ((P ((x0 (g x1)) y))->(P ((f x1) y)))
% Found (x200 ((eq_ref (fofType->Prop)) (g Xx))) as proof of ((P ((x0 (g x1)) y))->(P ((f x1) y)))
% Found (x200 ((eq_ref (fofType->Prop)) (g Xx))) as proof of ((P ((x0 (g x1)) y))->(P ((f x1) y)))
% Found ((fun (x3:(((eq (fofType->Prop)) (g Xx)) (g x1)))=> ((x20 x3) (fun (x4:(fofType->Prop))=> (P ((x0 (g x1)) y))))) ((eq_ref (fofType->Prop)) (g Xx))) as proof of ((P ((x0 (g x1)) y))->(P ((f x1) y)))
% Found ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> (((x2 x1) x3) (fun (x4:(fofType->Prop))=> (P ((x0 (g x1)) y))))) ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P ((x0 (g x1)) y))->(P ((f x1) y)))
% Found ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> ((((fun (Xx:fofType)=> ((x Xx) x1)) x1) x3) (fun (x4:(fofType->Prop))=> (P ((x0 (g x1)) y))))) ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P ((x0 (g x1)) y))->(P ((f x1) y)))
% Found (fun (P:(Prop->Prop))=> ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> ((((fun (Xx:fofType)=> ((x Xx) x1)) x1) x3) (fun (x4:(fofType->Prop))=> (P ((x0 (g x1)) y))))) ((eq_ref (fofType->Prop)) (g x1)))) as proof of ((P ((x0 (g x1)) y))->(P ((f x1) y)))
% Found (fun (y:fofType) (P:(Prop->Prop))=> ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> ((((fun (Xx:fofType)=> ((x Xx) x1)) x1) x3) (fun (x4:(fofType->Prop))=> (P ((x0 (g x1)) y))))) ((eq_ref (fofType->Prop)) (g x1)))) as proof of (((eq Prop) ((x0 (g x1)) y)) ((f x1) y))
% Found eq_ref00:=(eq_ref0 (g Xx)):(((eq (fofType->Prop)) (g Xx)) (g Xx))
% Found (eq_ref0 (g Xx)) as proof of (((eq (fofType->Prop)) (g Xx)) (g x1))
% Found ((eq_ref (fofType->Prop)) (g Xx)) as proof of (((eq (fofType->Prop)) (g Xx)) (g x1))
% Found ((eq_ref (fofType->Prop)) (g Xx)) as proof of (((eq (fofType->Prop)) (g Xx)) (g x1))
% Found ((eq_ref (fofType->Prop)) (g Xx)) as proof of (((eq (fofType->Prop)) (g Xx)) (g x1))
% Found eq_ref000:=(eq_ref00 P):((P (x0 (g x1)))->(P (x0 (g x1))))
% Found (eq_ref00 P) as proof of (P0 (f Xx))
% Found ((eq_ref0 (x0 (g x1))) P) as proof of (P0 (f Xx))
% Found (((eq_ref (fofType->Prop)) (x0 (g x1))) P) as proof of (P0 (f Xx))
% Found (((eq_ref (fofType->Prop)) (x0 (g x1))) P) as proof of (P0 (f Xx))
% Found (((eq_ref (fofType->Prop)) (x0 (g x1))) P) as proof of (P0 (f Xx))
% Found ((x200 ((eq_ref (fofType->Prop)) (g Xx))) (((eq_ref (fofType->Prop)) (x0 (g x1))) P)) as proof of ((P (x0 (g x1)))->(P (f x1)))
% Found ((x200 ((eq_ref (fofType->Prop)) (g Xx))) (((eq_ref (fofType->Prop)) (x0 (g x1))) P)) as proof of ((P (x0 (g x1)))->(P (f x1)))
% Found (((fun (x3:(((eq (fofType->Prop)) (g Xx)) (g x1)))=> ((x20 x3) (fun (x5:(fofType->Prop))=> ((P (x0 (g x1)))->(P x5))))) ((eq_ref (fofType->Prop)) (g Xx))) (((eq_ref (fofType->Prop)) (x0 (g x1))) P)) as proof of ((P (x0 (g x1)))->(P (f x1)))
% Found (((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> (((x2 x1) x3) (fun (x5:(fofType->Prop))=> ((P (x0 (g x1)))->(P x5))))) ((eq_ref (fofType->Prop)) (g x1))) (((eq_ref (fofType->Prop)) (x0 (g x1))) P)) as proof of ((P (x0 (g x1)))->(P (f x1)))
% Found (((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> ((((fun (Xx:fofType)=> ((x Xx) x1)) x1) x3) (fun (x5:(fofType->Prop))=> ((P (x0 (g x1)))->(P x5))))) ((eq_ref (fofType->Prop)) (g x1))) (((eq_ref (fofType->Prop)) (x0 (g x1))) P)) as proof of ((P (x0 (g x1)))->(P (f x1)))
% Found (fun (P:((fofType->Prop)->Prop))=> (((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> ((((fun (Xx:fofType)=> ((x Xx) x1)) x1) x3) (fun (x5:(fofType->Prop))=> ((P (x0 (g x1)))->(P x5))))) ((eq_ref (fofType->Prop)) (g x1))) (((eq_ref (fofType->Prop)) (x0 (g x1))) P))) as proof of ((P (x0 (g x1)))->(P (f x1)))
% Found eq_ref00:=(eq_ref0 ((f0 x2) x3)):(((eq Prop) ((f0 x2) x3)) ((f0 x2) x3))
% Found (eq_ref0 ((f0 x2) x3)) as proof of (((eq Prop) ((f0 x2) x3)) ((f x2) x3))
% Found ((eq_ref Prop) ((f0 x2) x3)) as proof of (((eq Prop) ((f0 x2) x3)) ((f x2) x3))
% Found ((eq_ref Prop) ((f0 x2) x3)) as proof of (((eq Prop) ((f0 x2) x3)) ((f x2) x3))
% Found (fun (x3:fofType)=> ((eq_ref Prop) ((f0 x2) x3))) as proof of (((eq Prop) ((f0 x2) x3)) ((f x2) x3))
% Found (fun (x3:fofType)=> ((eq_ref Prop) ((f0 x2) x3))) as proof of (forall (x:fofType), (((eq Prop) ((f0 x2) x)) ((f x2) x)))
% Found (functional_extensionality0100 (fun (x3:fofType)=> ((eq_ref Prop) ((f0 x2) x3)))) as proof of (((eq (fofType->Prop)) (f0 x2)) (f x2))
% Found ((functional_extensionality010 (f x2)) (fun (x3:fofType)=> ((eq_ref Prop) ((f0 x2) x3)))) as proof of (((eq (fofType->Prop)) (f0 x2)) (f x2))
% Found (((functional_extensionality01 (f0 x2)) (f x2)) (fun (x3:fofType)=> ((eq_ref Prop) ((f0 x2) x3)))) as proof of (((eq (fofType->Prop)) (f0 x2)) (f x2))
% Found ((((functional_extensionality0 Prop) (f0 x2)) (f x2)) (fun (x3:fofType)=> ((eq_ref Prop) ((f0 x2) x3)))) as proof of (((eq (fofType->Prop)) (f0 x2)) (f x2))
% Found eq_ref00:=(eq_ref0 ((f0 x2) x3)):(((eq Prop) ((f0 x2) x3)) ((f0 x2) x3))
% Found (eq_ref0 ((f0 x2) x3)) as proof of (((eq Prop) ((f0 x2) x3)) ((f x2) x3))
% Found ((eq_ref Prop) ((f0 x2) x3)) as proof of (((eq Prop) ((f0 x2) x3)) ((f x2) x3))
% Found ((eq_ref Prop) ((f0 x2) x3)) as proof of (((eq Prop) ((f0 x2) x3)) ((f x2) x3))
% Found (fun (x3:fofType)=> ((eq_ref Prop) ((f0 x2) x3))) as proof of (((eq Prop) ((f0 x2) x3)) ((f x2) x3))
% Found (fun (x3:fofType)=> ((eq_ref Prop) ((f0 x2) x3))) as proof of (forall (x:fofType), (((eq Prop) ((f0 x2) x)) ((f x2) x)))
% Found (functional_extensionality_dep0100 (fun (x3:fofType)=> ((eq_ref Prop) ((f0 x2) x3)))) as proof of (((eq (fofType->Prop)) (f0 x2)) (f x2))
% Found ((functional_extensionality_dep010 (f x2)) (fun (x3:fofType)=> ((eq_ref Prop) ((f0 x2) x3)))) as proof of (((eq (fofType->Prop)) (f0 x2)) (f x2))
% Found (((functional_extensionality_dep01 (f0 x2)) (f x2)) (fun (x3:fofType)=> ((eq_ref Prop) ((f0 x2) x3)))) as proof of (((eq (fofType->Prop)) (f0 x2)) (f x2))
% Found ((((functional_extensionality_dep0 (fun (x5:fofType)=> Prop)) (f0 x2)) (f x2)) (fun (x3:fofType)=> ((eq_ref Prop) ((f0 x2) x3)))) as proof of (((eq (fofType->Prop)) (f0 x2)) (f x2))
% Found eta_expansion_dep000:=(eta_expansion_dep00 b):(((eq (fofType->(fofType->Prop))) b) (fun (x:fofType)=> (b x)))
% Found (eta_expansion_dep00 b) as proof of (((eq (fofType->(fofType->Prop))) b) (fun (Xx:fofType)=> (x0 (g Xx))))
% Found ((eta_expansion_dep0 (fun (x2:fofType)=> (fofType->Prop))) b) as proof of (((eq (fofType->(fofType->Prop))) b) (fun (Xx:fofType)=> (x0 (g Xx))))
% Found (((eta_expansion_dep fofType) (fun (x2:fofType)=> (fofType->Prop))) b) as proof of (((eq (fofType->(fofType->Prop))) b) (fun (Xx:fofType)=> (x0 (g Xx))))
% Found (((eta_expansion_dep fofType) (fun (x2:fofType)=> (fofType->Prop))) b) as proof of (((eq (fofType->(fofType->Prop))) b) (fun (Xx:fofType)=> (x0 (g Xx))))
% Found (((eta_expansion_dep fofType) (fun (x2:fofType)=> (fofType->Prop))) b) as proof of (((eq (fofType->(fofType->Prop))) b) (fun (Xx:fofType)=> (x0 (g Xx))))
% Found eta_expansion_dep000:=(eta_expansion_dep00 f):(((eq (fofType->(fofType->Prop))) f) (fun (x:fofType)=> (f x)))
% Found (eta_expansion_dep00 f) as proof of (((eq (fofType->(fofType->Prop))) f) b)
% Found ((eta_expansion_dep0 (fun (x2:fofType)=> (fofType->Prop))) f) as proof of (((eq (fofType->(fofType->Prop))) f) b)
% Found (((eta_expansion_dep fofType) (fun (x2:fofType)=> (fofType->Prop))) f) as proof of (((eq (fofType->(fofType->Prop))) f) b)
% Found (((eta_expansion_dep fofType) (fun (x2:fofType)=> (fofType->Prop))) f) as proof of (((eq (fofType->(fofType->Prop))) f) b)
% Found (((eta_expansion_dep fofType) (fun (x2:fofType)=> (fofType->Prop))) f) as proof of (((eq (fofType->(fofType->Prop))) f) b)
% Found eta_expansion_dep000:=(eta_expansion_dep00 f):(((eq (fofType->(fofType->Prop))) f) (fun (x:fofType)=> (f x)))
% Found (eta_expansion_dep00 f) as proof of (((eq (fofType->(fofType->Prop))) f) b)
% Found ((eta_expansion_dep0 (fun (x2:fofType)=> (fofType->Prop))) f) as proof of (((eq (fofType->(fofType->Prop))) f) b)
% Found (((eta_expansion_dep fofType) (fun (x2:fofType)=> (fofType->Prop))) f) as proof of (((eq (fofType->(fofType->Prop))) f) b)
% Found (((eta_expansion_dep fofType) (fun (x2:fofType)=> (fofType->Prop))) f) as proof of (((eq (fofType->(fofType->Prop))) f) b)
% Found (((eta_expansion_dep fofType) (fun (x2:fofType)=> (fofType->Prop))) f) as proof of (((eq (fofType->(fofType->Prop))) f) b)
% Found eta_expansion_dep000:=(eta_expansion_dep00 b):(((eq (fofType->(fofType->Prop))) b) (fun (x:fofType)=> (b x)))
% Found (eta_expansion_dep00 b) as proof of (((eq (fofType->(fofType->Prop))) b) (fun (Xx:fofType)=> (x0 (g Xx))))
% Found ((eta_expansion_dep0 (fun (x2:fofType)=> (fofType->Prop))) b) as proof of (((eq (fofType->(fofType->Prop))) b) (fun (Xx:fofType)=> (x0 (g Xx))))
% Found (((eta_expansion_dep fofType) (fun (x2:fofType)=> (fofType->Prop))) b) as proof of (((eq (fofType->(fofType->Prop))) b) (fun (Xx:fofType)=> (x0 (g Xx))))
% Found (((eta_expansion_dep fofType) (fun (x2:fofType)=> (fofType->Prop))) b) as proof of (((eq (fofType->(fofType->Prop))) b) (fun (Xx:fofType)=> (x0 (g Xx))))
% Found (((eta_expansion_dep fofType) (fun (x2:fofType)=> (fofType->Prop))) b) as proof of (((eq (fofType->(fofType->Prop))) b) (fun (Xx:fofType)=> (x0 (g Xx))))
% Found eta_expansion_dep000:=(eta_expansion_dep00 f):(((eq (fofType->(fofType->Prop))) f) (fun (x:fofType)=> (f x)))
% Found (eta_expansion_dep00 f) as proof of (((eq (fofType->(fofType->Prop))) f) b)
% Found ((eta_expansion_dep0 (fun (x2:fofType)=> (fofType->Prop))) f) as proof of (((eq (fofType->(fofType->Prop))) f) b)
% Found (((eta_expansion_dep fofType) (fun (x2:fofType)=> (fofType->Prop))) f) as proof of (((eq (fofType->(fofType->Prop))) f) b)
% Found (((eta_expansion_dep fofType) (fun (x2:fofType)=> (fofType->Prop))) f) as proof of (((eq (fofType->(fofType->Prop))) f) b)
% Found (((eta_expansion_dep fofType) (fun (x2:fofType)=> (fofType->Prop))) f) as proof of (((eq (fofType->(fofType->Prop))) f) b)
% Found eta_expansion_dep000:=(eta_expansion_dep00 b):(((eq (fofType->(fofType->Prop))) b) (fun (x:fofType)=> (b x)))
% Found (eta_expansion_dep00 b) as proof of (((eq (fofType->(fofType->Prop))) b) (fun (Xx:fofType)=> (x0 (g Xx))))
% Found ((eta_expansion_dep0 (fun (x2:fofType)=> (fofType->Prop))) b) as proof of (((eq (fofType->(fofType->Prop))) b) (fun (Xx:fofType)=> (x0 (g Xx))))
% Found (((eta_expansion_dep fofType) (fun (x2:fofType)=> (fofType->Prop))) b) as proof of (((eq (fofType->(fofType->Prop))) b) (fun (Xx:fofType)=> (x0 (g Xx))))
% Found (((eta_expansion_dep fofType) (fun (x2:fofType)=> (fofType->Prop))) b) as proof of (((eq (fofType->(fofType->Prop))) b) (fun (Xx:fofType)=> (x0 (g Xx))))
% Found (((eta_expansion_dep fofType) (fun (x2:fofType)=> (fofType->Prop))) b) as proof of (((eq (fofType->(fofType->Prop))) b) (fun (Xx:fofType)=> (x0 (g Xx))))
% Found eq_ref00:=(eq_ref0 (g Xx)):(((eq (fofType->Prop)) (g Xx)) (g Xx))
% Found (eq_ref0 (g Xx)) as proof of (((eq (fofType->Prop)) (g Xx)) (g x1))
% Found ((eq_ref (fofType->Prop)) (g Xx)) as proof of (((eq (fofType->Prop)) (g Xx)) (g x1))
% Found ((eq_ref (fofType->Prop)) (g Xx)) as proof of (((eq (fofType->Prop)) (g Xx)) (g x1))
% Found ((eq_ref (fofType->Prop)) (g Xx)) as proof of (((eq (fofType->Prop)) (g Xx)) (g x1))
% Found eq_ref00:=(eq_ref0 ((x0 (g x1)) y)):(((eq Prop) ((x0 (g x1)) y)) ((x0 (g x1)) y))
% Found (eq_ref0 ((x0 (g x1)) y)) as proof of (((eq Prop) ((x0 (g x1)) y)) ((f Xx) y))
% Found ((eq_ref Prop) ((x0 (g x1)) y)) as proof of (((eq Prop) ((x0 (g x1)) y)) ((f Xx) y))
% Found ((eq_ref Prop) ((x0 (g x1)) y)) as proof of (((eq Prop) ((x0 (g x1)) y)) ((f Xx) y))
% Found (fun (y:fofType)=> ((eq_ref Prop) ((x0 (g x1)) y))) as proof of (((eq Prop) ((x0 (g x1)) y)) ((f Xx) y))
% Found (fun (y:fofType)=> ((eq_ref Prop) ((x0 (g x1)) y))) as proof of (P (f Xx))
% Found ((x200 ((eq_ref (fofType->Prop)) (g Xx))) (fun (y:fofType)=> ((eq_ref Prop) ((x0 (g x1)) y)))) as proof of (forall (y:fofType), (((eq Prop) ((x0 (g x1)) y)) ((f x1) y)))
% Found ((x200 ((eq_ref (fofType->Prop)) (g Xx))) (fun (y:fofType)=> ((eq_ref Prop) ((x0 (g x1)) y)))) as proof of (forall (y:fofType), (((eq Prop) ((x0 (g x1)) y)) ((f x1) y)))
% Found (((fun (x3:(((eq (fofType->Prop)) (g Xx)) (g x1)))=> ((x20 x3) (fun (x5:(fofType->Prop))=> (forall (y:fofType), (((eq Prop) ((x0 (g x1)) y)) (x5 y)))))) ((eq_ref (fofType->Prop)) (g Xx))) (fun (y:fofType)=> ((eq_ref Prop) ((x0 (g x1)) y)))) as proof of (forall (y:fofType), (((eq Prop) ((x0 (g x1)) y)) ((f x1) y)))
% Found (((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> (((x2 x1) x3) (fun (x5:(fofType->Prop))=> (forall (y:fofType), (((eq Prop) ((x0 (g x1)) y)) (x5 y)))))) ((eq_ref (fofType->Prop)) (g x1))) (fun (y:fofType)=> ((eq_ref Prop) ((x0 (g x1)) y)))) as proof of (forall (y:fofType), (((eq Prop) ((x0 (g x1)) y)) ((f x1) y)))
% Found (((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> ((((fun (Xx:fofType)=> ((x Xx) x1)) x1) x3) (fun (x5:(fofType->Prop))=> (forall (y:fofType), (((eq Prop) ((x0 (g x1)) y)) (x5 y)))))) ((eq_ref (fofType->Prop)) (g x1))) (fun (y:fofType)=> ((eq_ref Prop) ((x0 (g x1)) y)))) as proof of (forall (y:fofType), (((eq Prop) ((x0 (g x1)) y)) ((f x1) y)))
% Found eta_expansion_dep000:=(eta_expansion_dep00 b):(((eq (fofType->(fofType->Prop))) b) (fun (x:fofType)=> (b x)))
% Found (eta_expansion_dep00 b) as proof of (((eq (fofType->(fofType->Prop))) b) (fun (Xx:fofType)=> (x0 (g Xx))))
% Found ((eta_expansion_dep0 (fun (x2:fofType)=> (fofType->Prop))) b) as proof of (((eq (fofType->(fofType->Prop))) b) (fun (Xx:fofType)=> (x0 (g Xx))))
% Found (((eta_expansion_dep fofType) (fun (x2:fofType)=> (fofType->Prop))) b) as proof of (((eq (fofType->(fofType->Prop))) b) (fun (Xx:fofType)=> (x0 (g Xx))))
% Found (((eta_expansion_dep fofType) (fun (x2:fofType)=> (fofType->Prop))) b) as proof of (((eq (fofType->(fofType->Prop))) b) (fun (Xx:fofType)=> (x0 (g Xx))))
% Found (((eta_expansion_dep fofType) (fun (x2:fofType)=> (fofType->Prop))) b) as proof of (((eq (fofType->(fofType->Prop))) b) (fun (Xx:fofType)=> (x0 (g Xx))))
% Found eta_expansion_dep000:=(eta_expansion_dep00 f):(((eq (fofType->(fofType->Prop))) f) (fun (x:fofType)=> (f x)))
% Found (eta_expansion_dep00 f) as proof of (((eq (fofType->(fofType->Prop))) f) b)
% Found ((eta_expansion_dep0 (fun (x2:fofType)=> (fofType->Prop))) f) as proof of (((eq (fofType->(fofType->Prop))) f) b)
% Found (((eta_expansion_dep fofType) (fun (x2:fofType)=> (fofType->Prop))) f) as proof of (((eq (fofType->(fofType->Prop))) f) b)
% Found (((eta_expansion_dep fofType) (fun (x2:fofType)=> (fofType->Prop))) f) as proof of (((eq (fofType->(fofType->Prop))) f) b)
% Found (((eta_expansion_dep fofType) (fun (x2:fofType)=> (fofType->Prop))) f) as proof of (((eq (fofType->(fofType->Prop))) f) b)
% Found eq_ref00:=(eq_ref0 (x0 (g x1))):(((eq (fofType->Prop)) (x0 (g x1))) (x0 (g x1)))
% Found (eq_ref0 (x0 (g x1))) as proof of (forall (P:((fofType->Prop)->Prop)), ((P (x0 (g x1)))->(P (f x1))))
% Found ((eq_ref (fofType->Prop)) (x0 (g x1))) as proof of (forall (P:((fofType->Prop)->Prop)), ((P (x0 (g x1)))->(P (f x1))))
% Found ((eq_ref (fofType->Prop)) (x0 (g x1))) as proof of (forall (P:((fofType->Prop)->Prop)), ((P (x0 (g x1)))->(P (f x1))))
% Found ((eq_ref (fofType->Prop)) (x0 (g x1))) as proof of (forall (P:((fofType->Prop)->Prop)), ((P (x0 (g x1)))->(P (f x1))))
% Found eq_ref00:=(eq_ref0 (x0 (g x1))):(((eq (fofType->Prop)) (x0 (g x1))) (x0 (g x1)))
% Found (eq_ref0 (x0 (g x1))) as proof of (forall (P:((fofType->Prop)->Prop)), ((P (x0 (g x1)))->(P (f x1))))
% Found ((eq_ref (fofType->Prop)) (x0 (g x1))) as proof of (forall (P:((fofType->Prop)->Prop)), ((P (x0 (g x1)))->(P (f x1))))
% Found ((eq_ref (fofType->Prop)) (x0 (g x1))) as proof of (forall (P:((fofType->Prop)->Prop)), ((P (x0 (g x1)))->(P (f x1))))
% Found ((eq_ref (fofType->Prop)) (x0 (g x1))) as proof of (forall (P:((fofType->Prop)->Prop)), ((P (x0 (g x1)))->(P (f x1))))
% Found x2:(P (x0 (g x1)))
% Instantiate: f0:=(x0 (g x1)):(fofType->Prop)
% Found x2 as proof of (P0 f0)
% Found x2:(P (x0 (g x1)))
% Instantiate: f0:=(x0 (g x1)):(fofType->Prop)
% Found x2 as proof of (P0 f0)
% Found eq_ref00:=(eq_ref0 (f0 x3)):(((eq Prop) (f0 x3)) (f0 x3))
% Found (eq_ref0 (f0 x3)) as proof of (((eq Prop) (f0 x3)) ((f x1) x3))
% Found ((eq_ref Prop) (f0 x3)) as proof of (((eq Prop) (f0 x3)) ((f x1) x3))
% Found ((eq_ref Prop) (f0 x3)) as proof of (((eq Prop) (f0 x3)) ((f x1) x3))
% Found (fun (x3:fofType)=> ((eq_ref Prop) (f0 x3))) as proof of (((eq Prop) (f0 x3)) ((f x1) x3))
% Found (fun (x3:fofType)=> ((eq_ref Prop) (f0 x3))) as proof of (forall (x:fofType), (((eq Prop) (f0 x)) ((f x1) x)))
% Found eq_ref00:=(eq_ref0 (f0 x3)):(((eq Prop) (f0 x3)) (f0 x3))
% Found (eq_ref0 (f0 x3)) as proof of (((eq Prop) (f0 x3)) ((f x1) x3))
% Found ((eq_ref Prop) (f0 x3)) as proof of (((eq Prop) (f0 x3)) ((f x1) x3))
% Found ((eq_ref Prop) (f0 x3)) as proof of (((eq Prop) (f0 x3)) ((f x1) x3))
% Found (fun (x3:fofType)=> ((eq_ref Prop) (f0 x3))) as proof of (((eq Prop) (f0 x3)) ((f x1) x3))
% Found (fun (x3:fofType)=> ((eq_ref Prop) (f0 x3))) as proof of (forall (x:fofType), (((eq Prop) (f0 x)) ((f x1) x)))
% Found x3:(P1 ((x0 (g x2)) y0))
% Instantiate: g0:=(fun (x5:fofType)=> (x0 (g x5))):(fofType->(fofType->Prop))
% Found (fun (x3:(P1 ((x0 (g x2)) y0)))=> x3) as proof of (P1 ((g0 x2) y0))
% Found (fun (P1:(Prop->Prop)) (x3:(P1 ((x0 (g x2)) y0)))=> x3) as proof of ((P1 ((x0 (g x2)) y0))->(P1 ((g0 x2) y0)))
% Found (fun (y0:fofType) (P1:(Prop->Prop)) (x3:(P1 ((x0 (g x2)) y0)))=> x3) as proof of (((eq Prop) ((x0 (g x2)) y0)) ((g0 x2) y0))
% Found (fun (x2:fofType) (y0:fofType) (P1:(Prop->Prop)) (x3:(P1 ((x0 (g x2)) y0)))=> x3) as proof of (forall (y:fofType), (((eq Prop) ((x0 (g x2)) y)) ((g0 x2) y)))
% Found (fun (x2:fofType) (y0:fofType) (P1:(Prop->Prop)) (x3:(P1 ((x0 (g x2)) y0)))=> x3) as proof of (forall (x:fofType) (y:fofType), (((eq Prop) ((x0 (g x)) y)) ((g0 x) y)))
% Found (functional_extensionality_double000010 (fun (x2:fofType) (y0:fofType) (P1:(Prop->Prop)) (x3:(P1 ((x0 (g x2)) y0)))=> x3)) as proof of ((P ((x0 (g x1)) y))->(P ((f x1) y)))
% Found (functional_extensionality_double000010 (fun (x2:fofType) (y0:fofType) (P1:(Prop->Prop)) (x3:(P1 ((x0 (g x2)) y0)))=> x3)) as proof of ((P ((x0 (g x1)) y))->(P ((f x1) y)))
% Found ((fun (x2:(forall (x:fofType) (y0:fofType), (((eq Prop) ((x0 (g x)) y0)) ((g0 x) y0))))=> ((functional_extensionality_double00001 x2) (fun (x3:(fofType->(fofType->Prop)))=> (P ((x0 (g x1)) y))))) (fun (x2:fofType) (y0:fofType) (P1:(Prop->Prop)) (x3:(P1 ((x0 (g x2)) y0)))=> x3)) as proof of ((P ((x0 (g x1)) y))->(P ((f x1) y)))
% Found ((fun (x2:(forall (x:fofType) (y0:fofType), (((eq Prop) ((x0 (g x)) y0)) (((fun (x5:fofType)=> (x0 (g x5))) x) y0))))=> (((functional_extensionality_double0000 (fun (x5:fofType)=> (x0 (g x5)))) x2) (fun (x3:(fofType->(fofType->Prop)))=> (P ((x0 (g x1)) y))))) (fun (x2:fofType) (y0:fofType) (P1:(Prop->Prop)) (x3:(P1 ((x0 (g x2)) y0)))=> x3)) as proof of ((P ((x0 (g x1)) y))->(P ((f x1) y)))
% Found ((fun (x2:(forall (x:fofType) (y0:fofType), (((eq Prop) ((x0 (g x)) y0)) (((fun (x5:fofType)=> (x0 (g x5))) x) y0))))=> (((functional_extensionality_double0000 (fun (x5:fofType)=> (x0 (g x5)))) x2) (fun (x3:(fofType->(fofType->Prop)))=> (P ((x0 (g x1)) y))))) (fun (x2:fofType) (y0:fofType) (P1:(Prop->Prop)) (x3:(P1 ((x0 (g x2)) y0)))=> x3)) as proof of ((P ((x0 (g x1)) y))->(P ((f x1) y)))
% Found (fun (P:(Prop->Prop))=> ((fun (x2:(forall (x:fofType) (y0:fofType), (((eq Prop) ((x0 (g x)) y0)) (((fun (x5:fofType)=> (x0 (g x5))) x) y0))))=> (((functional_extensionality_double0000 (fun (x5:fofType)=> (x0 (g x5)))) x2) (fun (x3:(fofType->(fofType->Prop)))=> (P ((x0 (g x1)) y))))) (fun (x2:fofType) (y0:fofType) (P1:(Prop->Prop)) (x3:(P1 ((x0 (g x2)) y0)))=> x3))) as proof of ((P ((x0 (g x1)) y))->(P ((f x1) y)))
% Found (fun (y:fofType) (P:(Prop->Prop))=> ((fun (x2:(forall (x:fofType) (y0:fofType), (((eq Prop) ((x0 (g x)) y0)) (((fun (x5:fofType)=> (x0 (g x5))) x) y0))))=> (((functional_extensionality_double0000 (fun (x5:fofType)=> (x0 (g x5)))) x2) (fun (x3:(fofType->(fofType->Prop)))=> (P ((x0 (g x1)) y))))) (fun (x2:fofType) (y0:fofType) (P1:(Prop->Prop)) (x3:(P1 ((x0 (g x2)) y0)))=> x3))) as proof of (((eq Prop) ((x0 (g x1)) y)) ((f x1) y))
% Found eq_ref00:=(eq_ref0 ((f0 x2) y)):(((eq Prop) ((f0 x2) y)) ((f0 x2) y))
% Found (eq_ref0 ((f0 x2) y)) as proof of (((eq Prop) ((f0 x2) y)) ((x0 (g x2)) y))
% Found ((eq_ref Prop) ((f0 x2) y)) as proof of (((eq Prop) ((f0 x2) y)) ((x0 (g x2)) y))
% Found ((eq_ref Prop) ((f0 x2) y)) as proof of (((eq Prop) ((f0 x2) y)) ((x0 (g x2)) y))
% Found (fun (y:fofType)=> ((eq_ref Prop) ((f0 x2) y))) as proof of (((eq Prop) ((f0 x2) y)) ((x0 (g x2)) y))
% Found (fun (x2:fofType) (y:fofType)=> ((eq_ref Prop) ((f0 x2) y))) as proof of (forall (y:fofType), (((eq Prop) ((f0 x2) y)) ((x0 (g x2)) y)))
% Found (fun (x2:fofType) (y:fofType)=> ((eq_ref Prop) ((f0 x2) y))) as proof of (forall (x:fofType) (y:fofType), (((eq Prop) ((f0 x) y)) ((x0 (g x)) y)))
% Found eq_ref000:=(eq_ref00 P1):((P1 (x0 (g x1)))->(P1 (x0 (g x1))))
% Found (eq_ref00 P1) as proof of ((P1 (x0 (g x1)))->(P1 (b x1)))
% Found ((eq_ref0 (x0 (g x1))) P1) as proof of ((P1 (x0 (g x1)))->(P1 (b x1)))
% Found (((eq_ref (fofType->Prop)) (x0 (g x1))) P1) as proof of ((P1 (x0 (g x1)))->(P1 (b x1)))
% Found (((eq_ref (fofType->Prop)) (x0 (g x1))) P1) as proof of ((P1 (x0 (g x1)))->(P1 (b x1)))
% Found (fun (P1:((fofType->Prop)->Prop))=> (((eq_ref (fofType->Prop)) (x0 (g x1))) P1)) as proof of ((P1 (x0 (g x1)))->(P1 (b x1)))
% Found eq_ref000:=(eq_ref00 P1):((P1 (x0 (g x1)))->(P1 (x0 (g x1))))
% Found (eq_ref00 P1) as proof of ((P1 (x0 (g x1)))->(P1 (b x1)))
% Found ((eq_ref0 (x0 (g x1))) P1) as proof of ((P1 (x0 (g x1)))->(P1 (b x1)))
% Found (((eq_ref (fofType->Prop)) (x0 (g x1))) P1) as proof of ((P1 (x0 (g x1)))->(P1 (b x1)))
% Found (((eq_ref (fofType->Prop)) (x0 (g x1))) P1) as proof of ((P1 (x0 (g x1)))->(P1 (b x1)))
% Found (fun (P1:((fofType->Prop)->Prop))=> (((eq_ref (fofType->Prop)) (x0 (g x1))) P1)) as proof of ((P1 (x0 (g x1)))->(P1 (b x1)))
% Found eq_ref000:=(eq_ref00 P1):((P1 (x0 (g x1)))->(P1 (x0 (g x1))))
% Found (eq_ref00 P1) as proof of ((P1 (x0 (g x1)))->(P1 (b x1)))
% Found ((eq_ref0 (x0 (g x1))) P1) as proof of ((P1 (x0 (g x1)))->(P1 (b x1)))
% Found (((eq_ref (fofType->Prop)) (x0 (g x1))) P1) as proof of ((P1 (x0 (g x1)))->(P1 (b x1)))
% Found (((eq_ref (fofType->Prop)) (x0 (g x1))) P1) as proof of ((P1 (x0 (g x1)))->(P1 (b x1)))
% Found (fun (P1:((fofType->Prop)->Prop))=> (((eq_ref (fofType->Prop)) (x0 (g x1))) P1)) as proof of ((P1 (x0 (g x1)))->(P1 (b x1)))
% Found eq_ref000:=(eq_ref00 P1):((P1 (x0 (g x1)))->(P1 (x0 (g x1))))
% Found (eq_ref00 P1) as proof of ((P1 (x0 (g x1)))->(P1 (b x1)))
% Found ((eq_ref0 (x0 (g x1))) P1) as proof of ((P1 (x0 (g x1)))->(P1 (b x1)))
% Found (((eq_ref (fofType->Prop)) (x0 (g x1))) P1) as proof of ((P1 (x0 (g x1)))->(P1 (b x1)))
% Found (((eq_ref (fofType->Prop)) (x0 (g x1))) P1) as proof of ((P1 (x0 (g x1)))->(P1 (b x1)))
% Found (fun (P1:((fofType->Prop)->Prop))=> (((eq_ref (fofType->Prop)) (x0 (g x1))) P1)) as proof of ((P1 (x0 (g x1)))->(P1 (b x1)))
% Found eq_ref00:=(eq_ref0 (g Xx)):(((eq (fofType->Prop)) (g Xx)) (g Xx))
% Found (eq_ref0 (g Xx)) as proof of (((eq (fofType->Prop)) (g Xx)) (g x1))
% Found ((eq_ref (fofType->Prop)) (g Xx)) as proof of (((eq (fofType->Prop)) (g Xx)) (g x1))
% Found ((eq_ref (fofType->Prop)) (g Xx)) as proof of (((eq (fofType->Prop)) (g Xx)) (g x1))
% Found ((eq_ref (fofType->Prop)) (g Xx)) as proof of (((eq (fofType->Prop)) (g Xx)) (g x1))
% Found eq_ref000:=(eq_ref00 P):((P (x0 (g x1)))->(P (x0 (g x1))))
% Found (eq_ref00 P) as proof of (P0 (f Xx))
% Found ((eq_ref0 (x0 (g x1))) P) as proof of (P0 (f Xx))
% Found (((eq_ref (fofType->Prop)) (x0 (g x1))) P) as proof of (P0 (f Xx))
% Found (((eq_ref (fofType->Prop)) (x0 (g x1))) P) as proof of (P0 (f Xx))
% Found ((x200 ((eq_ref (fofType->Prop)) (g Xx))) (((eq_ref (fofType->Prop)) (x0 (g x1))) P)) as proof of ((P (x0 (g x1)))->(P (f x1)))
% Found ((x200 ((eq_ref (fofType->Prop)) (g Xx))) (((eq_ref (fofType->Prop)) (x0 (g x1))) P)) as proof of ((P (x0 (g x1)))->(P (f x1)))
% Found ((x200 ((eq_ref (fofType->Prop)) (g Xx))) (((eq_ref (fofType->Prop)) (x0 (g x1))) P)) as proof of ((P (x0 (g x1)))->(P (f x1)))
% Found (((fun (x3:(((eq (fofType->Prop)) (g Xx)) (g x1)))=> ((x20 x3) (fun (x5:(fofType->Prop))=> ((P (x0 (g x1)))->(P x5))))) ((eq_ref (fofType->Prop)) (g Xx))) (((eq_ref (fofType->Prop)) (x0 (g x1))) P)) as proof of ((P (x0 (g x1)))->(P (f x1)))
% Found (((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> (((x2 x1) x3) (fun (x5:(fofType->Prop))=> ((P (x0 (g x1)))->(P x5))))) ((eq_ref (fofType->Prop)) (g x1))) (((eq_ref (fofType->Prop)) (x0 (g x1))) P)) as proof of ((P (x0 (g x1)))->(P (f x1)))
% Found (((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> ((((fun (Xx:fofType)=> ((x Xx) x1)) x1) x3) (fun (x5:(fofType->Prop))=> ((P (x0 (g x1)))->(P x5))))) ((eq_ref (fofType->Prop)) (g x1))) (((eq_ref (fofType->Prop)) (x0 (g x1))) P)) as proof of ((P (x0 (g x1)))->(P (f x1)))
% Found (fun (P:((fofType->Prop)->Prop))=> (((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> ((((fun (Xx:fofType)=> ((x Xx) x1)) x1) x3) (fun (x5:(fofType->Prop))=> ((P (x0 (g x1)))->(P x5))))) ((eq_ref (fofType->Prop)) (g x1))) (((eq_ref (fofType->Prop)) (x0 (g x1))) P))) as proof of ((P (x0 (g x1)))->(P (f x1)))
% Found eq_ref00:=(eq_ref0 (g Xx)):(((eq (fofType->Prop)) (g Xx)) (g Xx))
% Found (eq_ref0 (g Xx)) as proof of (((eq (fofType->Prop)) (g Xx)) (g x1))
% Found ((eq_ref (fofType->Prop)) (g Xx)) as proof of (((eq (fofType->Prop)) (g Xx)) (g x1))
% Found ((eq_ref (fofType->Prop)) (g Xx)) as proof of (((eq (fofType->Prop)) (g Xx)) (g x1))
% Found ((eq_ref (fofType->Prop)) (g Xx)) as proof of (((eq (fofType->Prop)) (g Xx)) (g x1))
% Found eq_ref000:=(eq_ref00 P):((P (x0 (g x1)))->(P (x0 (g x1))))
% Found (eq_ref00 P) as proof of (P0 (f Xx))
% Found ((eq_ref0 (x0 (g x1))) P) as proof of (P0 (f Xx))
% Found (((eq_ref (fofType->Prop)) (x0 (g x1))) P) as proof of (P0 (f Xx))
% Found (((eq_ref (fofType->Prop)) (x0 (g x1))) P) as proof of (P0 (f Xx))
% Found ((x200 ((eq_ref (fofType->Prop)) (g Xx))) (((eq_ref (fofType->Prop)) (x0 (g x1))) P)) as proof of ((P (x0 (g x1)))->(P (f x1)))
% Found ((x200 ((eq_ref (fofType->Prop)) (g Xx))) (((eq_ref (fofType->Prop)) (x0 (g x1))) P)) as proof of ((P (x0 (g x1)))->(P (f x1)))
% Found (((fun (x3:(((eq (fofType->Prop)) (g Xx)) (g x1)))=> ((x20 x3) (fun (x5:(fofType->Prop))=> ((P (x0 (g x1)))->(P x5))))) ((eq_ref (fofType->Prop)) (g Xx))) (((eq_ref (fofType->Prop)) (x0 (g x1))) P)) as proof of ((P (x0 (g x1)))->(P (f x1)))
% Found (((fun (x3:(((eq (fofType->Prop)) (g Xx)) (g x1)))=> ((x20 x3) (fun (x5:(fofType->Prop))=> ((P (x0 (g x1)))->(P x5))))) ((eq_ref (fofType->Prop)) (g Xx))) (((eq_ref (fofType->Prop)) (x0 (g x1))) P)) as proof of ((P (x0 (g x1)))->(P (f x1)))
% Found (((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> (((x2 x1) x3) (fun (x5:(fofType->Prop))=> ((P (x0 (g x1)))->(P x5))))) ((eq_ref (fofType->Prop)) (g x1))) (((eq_ref (fofType->Prop)) (x0 (g x1))) P)) as proof of ((P (x0 (g x1)))->(P (f x1)))
% Found (((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> ((((fun (Xx:fofType)=> ((x Xx) x1)) x1) x3) (fun (x5:(fofType->Prop))=> ((P (x0 (g x1)))->(P x5))))) ((eq_ref (fofType->Prop)) (g x1))) (((eq_ref (fofType->Prop)) (x0 (g x1))) P)) as proof of ((P (x0 (g x1)))->(P (f x1)))
% Found (fun (P:((fofType->Prop)->Prop))=> (((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> ((((fun (Xx:fofType)=> ((x Xx) x1)) x1) x3) (fun (x5:(fofType->Prop))=> ((P (x0 (g x1)))->(P x5))))) ((eq_ref (fofType->Prop)) (g x1))) (((eq_ref (fofType->Prop)) (x0 (g x1))) P))) as proof of ((P (x0 (g x1)))->(P (f x1)))
% Found eq_ref00:=(eq_ref0 (g Xx)):(((eq (fofType->Prop)) (g Xx)) (g Xx))
% Found (eq_ref0 (g Xx)) as proof of (((eq (fofType->Prop)) (g Xx)) (g x1))
% Found ((eq_ref (fofType->Prop)) (g Xx)) as proof of (((eq (fofType->Prop)) (g Xx)) (g x1))
% Found ((eq_ref (fofType->Prop)) (g Xx)) as proof of (((eq (fofType->Prop)) (g Xx)) (g x1))
% Found ((eq_ref (fofType->Prop)) (g Xx)) as proof of (((eq (fofType->Prop)) (g Xx)) (g x1))
% Found eq_ref000:=(eq_ref00 P):((P (x0 (g x1)))->(P (x0 (g x1))))
% Found (eq_ref00 P) as proof of (P0 (f Xx))
% Found ((eq_ref0 (x0 (g x1))) P) as proof of (P0 (f Xx))
% Found (((eq_ref (fofType->Prop)) (x0 (g x1))) P) as proof of (P0 (f Xx))
% Found (((eq_ref (fofType->Prop)) (x0 (g x1))) P) as proof of (P0 (f Xx))
% Found ((x200 ((eq_ref (fofType->Prop)) (g Xx))) (((eq_ref (fofType->Prop)) (x0 (g x1))) P)) as proof of ((P (x0 (g x1)))->(P (f x1)))
% Found ((x200 ((eq_ref (fofType->Prop)) (g Xx))) (((eq_ref (fofType->Prop)) (x0 (g x1))) P)) as proof of ((P (x0 (g x1)))->(P (f x1)))
% Found ((x200 ((eq_ref (fofType->Prop)) (g Xx))) (((eq_ref (fofType->Prop)) (x0 (g x1))) P)) as proof of ((P (x0 (g x1)))->(P (f x1)))
% Found (((fun (x3:(((eq (fofType->Prop)) (g Xx)) (g x1)))=> ((x20 x3) (fun (x5:(fofType->Prop))=> ((P (x0 (g x1)))->(P x5))))) ((eq_ref (fofType->Prop)) (g Xx))) (((eq_ref (fofType->Prop)) (x0 (g x1))) P)) as proof of ((P (x0 (g x1)))->(P (f x1)))
% Found (((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> (((x2 x1) x3) (fun (x5:(fofType->Prop))=> ((P (x0 (g x1)))->(P x5))))) ((eq_ref (fofType->Prop)) (g x1))) (((eq_ref (fofType->Prop)) (x0 (g x1))) P)) as proof of ((P (x0 (g x1)))->(P (f x1)))
% Found (((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> ((((fun (Xx:fofType)=> ((x Xx) x1)) x1) x3) (fun (x5:(fofType->Prop))=> ((P (x0 (g x1)))->(P x5))))) ((eq_ref (fofType->Prop)) (g x1))) (((eq_ref (fofType->Prop)) (x0 (g x1))) P)) as proof of ((P (x0 (g x1)))->(P (f x1)))
% Found (fun (P:((fofType->Prop)->Prop))=> (((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> ((((fun (Xx:fofType)=> ((x Xx) x1)) x1) x3) (fun (x5:(fofType->Prop))=> ((P (x0 (g x1)))->(P x5))))) ((eq_ref (fofType->Prop)) (g x1))) (((eq_ref (fofType->Prop)) (x0 (g x1))) P))) as proof of ((P (x0 (g x1)))->(P (f x1)))
% Found eq_ref00:=(eq_ref0 (g Xx)):(((eq (fofType->Prop)) (g Xx)) (g Xx))
% Found (eq_ref0 (g Xx)) as proof of (((eq (fofType->Prop)) (g Xx)) (g x1))
% Found ((eq_ref (fofType->Prop)) (g Xx)) as proof of (((eq (fofType->Prop)) (g Xx)) (g x1))
% Found ((eq_ref (fofType->Prop)) (g Xx)) as proof of (((eq (fofType->Prop)) (g Xx)) (g x1))
% Found ((eq_ref (fofType->Prop)) (g Xx)) as proof of (((eq (fofType->Prop)) (g Xx)) (g x1))
% Found eq_ref000:=(eq_ref00 P):((P (x0 (g x1)))->(P (x0 (g x1))))
% Found (eq_ref00 P) as proof of (P0 (f Xx))
% Found ((eq_ref0 (x0 (g x1))) P) as proof of (P0 (f Xx))
% Found (((eq_ref (fofType->Prop)) (x0 (g x1))) P) as proof of (P0 (f Xx))
% Found (((eq_ref (fofType->Prop)) (x0 (g x1))) P) as proof of (P0 (f Xx))
% Found ((x200 ((eq_ref (fofType->Prop)) (g Xx))) (((eq_ref (fofType->Prop)) (x0 (g x1))) P)) as proof of ((P (x0 (g x1)))->(P (f x1)))
% Found ((x200 ((eq_ref (fofType->Prop)) (g Xx))) (((eq_ref (fofType->Prop)) (x0 (g x1))) P)) as proof of ((P (x0 (g x1)))->(P (f x1)))
% Found (((fun (x3:(((eq (fofType->Prop)) (g Xx)) (g x1)))=> ((x20 x3) (fun (x5:(fofType->Prop))=> ((P (x0 (g x1)))->(P x5))))) ((eq_ref (fofType->Prop)) (g Xx))) (((eq_ref (fofType->Prop)) (x0 (g x1))) P)) as proof of ((P (x0 (g x1)))->(P (f x1)))
% Found (((fun (x3:(((eq (fofType->Prop)) (g Xx)) (g x1)))=> ((x20 x3) (fun (x5:(fofType->Prop))=> ((P (x0 (g x1)))->(P x5))))) ((eq_ref (fofType->Prop)) (g Xx))) (((eq_ref (fofType->Prop)) (x0 (g x1))) P)) as proof of ((P (x0 (g x1)))->(P (f x1)))
% Found (((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> (((x2 x1) x3) (fun (x5:(fofType->Prop))=> ((P (x0 (g x1)))->(P x5))))) ((eq_ref (fofType->Prop)) (g x1))) (((eq_ref (fofType->Prop)) (x0 (g x1))) P)) as proof of ((P (x0 (g x1)))->(P (f x1)))
% Found (((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> ((((fun (Xx:fofType)=> ((x Xx) x1)) x1) x3) (fun (x5:(fofType->Prop))=> ((P (x0 (g x1)))->(P x5))))) ((eq_ref (fofType->Prop)) (g x1))) (((eq_ref (fofType->Prop)) (x0 (g x1))) P)) as proof of ((P (x0 (g x1)))->(P (f x1)))
% Found (fun (P:((fofType->Prop)->Prop))=> (((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> ((((fun (Xx:fofType)=> ((x Xx) x1)) x1) x3) (fun (x5:(fofType->Prop))=> ((P (x0 (g x1)))->(P x5))))) ((eq_ref (fofType->Prop)) (g x1))) (((eq_ref (fofType->Prop)) (x0 (g x1))) P))) as proof of ((P (x0 (g x1)))->(P (f x1)))
% Found eq_ref000:=(eq_ref00 P1):((P1 (x0 (g x1)))->(P1 (x0 (g x1))))
% Found (eq_ref00 P1) as proof of ((P1 (x0 (g x1)))->(P1 (b x1)))
% Found ((eq_ref0 (x0 (g x1))) P1) as proof of ((P1 (x0 (g x1)))->(P1 (b x1)))
% Found (((eq_ref (fofType->Prop)) (x0 (g x1))) P1) as proof of ((P1 (x0 (g x1)))->(P1 (b x1)))
% Found (((eq_ref (fofType->Prop)) (x0 (g x1))) P1) as proof of ((P1 (x0 (g x1)))->(P1 (b x1)))
% Found (fun (P1:((fofType->Prop)->Prop))=> (((eq_ref (fofType->Prop)) (x0 (g x1))) P1)) as proof of ((P1 (x0 (g x1)))->(P1 (b x1)))
% Found eq_ref000:=(eq_ref00 P1):((P1 (x0 (g x1)))->(P1 (x0 (g x1))))
% Found (eq_ref00 P1) as proof of ((P1 (x0 (g x1)))->(P1 (b x1)))
% Found ((eq_ref0 (x0 (g x1))) P1) as proof of ((P1 (x0 (g x1)))->(P1 (b x1)))
% Found (((eq_ref (fofType->Prop)) (x0 (g x1))) P1) as proof of ((P1 (x0 (g x1)))->(P1 (b x1)))
% Found (((eq_ref (fofType->Prop)) (x0 (g x1))) P1) as proof of ((P1 (x0 (g x1)))->(P1 (b x1)))
% Found (fun (P1:((fofType->Prop)->Prop))=> (((eq_ref (fofType->Prop)) (x0 (g x1))) P1)) as proof of ((P1 (x0 (g x1)))->(P1 (b x1)))
% Found eq_ref000:=(eq_ref00 P1):((P1 (x0 (g x1)))->(P1 (x0 (g x1))))
% Found (eq_ref00 P1) as proof of ((P1 (x0 (g x1)))->(P1 (b x1)))
% Found ((eq_ref0 (x0 (g x1))) P1) as proof of ((P1 (x0 (g x1)))->(P1 (b x1)))
% Found (((eq_ref (fofType->Prop)) (x0 (g x1))) P1) as proof of ((P1 (x0 (g x1)))->(P1 (b x1)))
% Found (((eq_ref (fofType->Prop)) (x0 (g x1))) P1) as proof of ((P1 (x0 (g x1)))->(P1 (b x1)))
% Found (fun (P1:((fofType->Prop)->Prop))=> (((eq_ref (fofType->Prop)) (x0 (g x1))) P1)) as proof of ((P1 (x0 (g x1)))->(P1 (b x1)))
% Found eq_ref000:=(eq_ref00 P1):((P1 (x0 (g x1)))->(P1 (x0 (g x1))))
% Found (eq_ref00 P1) as proof of ((P1 (x0 (g x1)))->(P1 (b x1)))
% Found ((eq_ref0 (x0 (g x1))) P1) as proof of ((P1 (x0 (g x1)))->(P1 (b x1)))
% Found (((eq_ref (fofType->Prop)) (x0 (g x1))) P1) as proof of ((P1 (x0 (g x1)))->(P1 (b x1)))
% Found (((eq_ref (fofType->Prop)) (x0 (g x1))) P1) as proof of ((P1 (x0 (g x1)))->(P1 (b x1)))
% Found (fun (P1:((fofType->Prop)->Prop))=> (((eq_ref (fofType->Prop)) (x0 (g x1))) P1)) as proof of ((P1 (x0 (g x1)))->(P1 (b x1)))
% Found eq_ref000:=(eq_ref00 P1):((P1 f)->(P1 f))
% Found (eq_ref00 P1) as proof of (P2 f)
% Found ((eq_ref0 f) P1) as proof of (P2 f)
% Found (((eq_ref (fofType->(fofType->Prop))) f) P1) as proof of (P2 f)
% Found (((eq_ref (fofType->(fofType->Prop))) f) P1) as proof of (P2 f)
% Found eq_ref000:=(eq_ref00 P1):((P1 f)->(P1 f))
% Found (eq_ref00 P1) as proof of (P2 f)
% Found ((eq_ref0 f) P1) as proof of (P2 f)
% Found (((eq_ref (fofType->(fofType->Prop))) f) P1) as proof of (P2 f)
% Found (((eq_ref (fofType->(fofType->Prop))) f) P1) as proof of (P2 f)
% Found eq_ref000:=(eq_ref00 P1):((P1 f)->(P1 f))
% Found (eq_ref00 P1) as proof of (P2 f)
% Found ((eq_ref0 f) P1) as proof of (P2 f)
% Found (((eq_ref (fofType->(fofType->Prop))) f) P1) as proof of (P2 f)
% Found (((eq_ref (fofType->(fofType->Prop))) f) P1) as proof of (P2 f)
% Found eq_ref00:=(eq_ref0 (g Xx)):(((eq (fofType->Prop)) (g Xx)) (g Xx))
% Found (eq_ref0 (g Xx)) as proof of (((eq (fofType->Prop)) (g Xx)) (g x1))
% Found ((eq_ref (fofType->Prop)) (g Xx)) as proof of (((eq (fofType->Prop)) (g Xx)) (g x1))
% Found ((eq_ref (fofType->Prop)) (g Xx)) as proof of (((eq (fofType->Prop)) (g Xx)) (g x1))
% Found ((eq_ref (fofType->Prop)) (g Xx)) as proof of (((eq (fofType->Prop)) (g Xx)) (g x1))
% Found eq_ref00:=(eq_ref0 (g Xx)):(((eq (fofType->Prop)) (g Xx)) (g Xx))
% Found (eq_ref0 (g Xx)) as proof of (((eq (fofType->Prop)) (g Xx)) (g x1))
% Found ((eq_ref (fofType->Prop)) (g Xx)) as proof of (((eq (fofType->Prop)) (g Xx)) (g x1))
% Found ((eq_ref (fofType->Prop)) (g Xx)) as proof of (((eq (fofType->Prop)) (g Xx)) (g x1))
% Found ((eq_ref (fofType->Prop)) (g Xx)) as proof of (((eq (fofType->Prop)) (g Xx)) (g x1))
% Found eq_ref000:=(eq_ref00 P1):((P1 f)->(P1 f))
% Found (eq_ref00 P1) as proof of (P2 f)
% Found ((eq_ref0 f) P1) as proof of (P2 f)
% Found (((eq_ref (fofType->(fofType->Prop))) f) P1) as proof of (P2 f)
% Found (((eq_ref (fofType->(fofType->Prop))) f) P1) as proof of (P2 f)
% Found eta_expansion_dep0000:=(eta_expansion_dep000 P):((P (fun (Xx:fofType)=> (x0 (g Xx))))->(P (fun (x:fofType)=> (x0 (g x)))))
% Found (eta_expansion_dep000 P) as proof of (P0 (fun (Xx:fofType)=> (x0 (g Xx))))
% Found ((eta_expansion_dep00 (fun (Xx:fofType)=> (x0 (g Xx)))) P) as proof of (P0 (fun (Xx:fofType)=> (x0 (g Xx))))
% Found (((eta_expansion_dep0 (fun (x2:fofType)=> (fofType->Prop))) (fun (Xx:fofType)=> (x0 (g Xx)))) P) as proof of (P0 (fun (Xx:fofType)=> (x0 (g Xx))))
% Found ((((eta_expansion_dep fofType) (fun (x2:fofType)=> (fofType->Prop))) (fun (Xx:fofType)=> (x0 (g Xx)))) P) as proof of (P0 (fun (Xx:fofType)=> (x0 (g Xx))))
% Found ((((eta_expansion_dep fofType) (fun (x2:fofType)=> (fofType->Prop))) (fun (Xx:fofType)=> (x0 (g Xx)))) P) as proof of (P0 (fun (Xx:fofType)=> (x0 (g Xx))))
% Found eq_ref00:=(eq_ref0 ((x0 (g x1)) y)):(((eq Prop) ((x0 (g x1)) y)) ((x0 (g x1)) y))
% Found (eq_ref0 ((x0 (g x1)) y)) as proof of (P (f Xx))
% Found ((eq_ref Prop) ((x0 (g x1)) y)) as proof of (P (f Xx))
% Found ((eq_ref Prop) ((x0 (g x1)) y)) as proof of (P (f Xx))
% Found ((eq_ref Prop) ((x0 (g x1)) y)) as proof of (P (f Xx))
% Found eq_ref00:=(eq_ref0 (g Xx)):(((eq (fofType->Prop)) (g Xx)) (g Xx))
% Found (eq_ref0 (g Xx)) as proof of (((eq (fofType->Prop)) (g Xx)) (g x1))
% Found ((eq_ref (fofType->Prop)) (g Xx)) as proof of (((eq (fofType->Prop)) (g Xx)) (g x1))
% Found ((eq_ref (fofType->Prop)) (g Xx)) as proof of (((eq (fofType->Prop)) (g Xx)) (g x1))
% Found ((eq_ref (fofType->Prop)) (g Xx)) as proof of (((eq (fofType->Prop)) (g Xx)) (g x1))
% Found ((x200 ((eq_ref (fofType->Prop)) (g Xx))) ((eq_ref Prop) ((x0 (g x1)) y))) as proof of (((eq Prop) ((x0 (g x1)) y)) ((f x1) y))
% Found ((x200 ((eq_ref (fofType->Prop)) (g Xx))) ((eq_ref Prop) ((x0 (g x1)) y))) as proof of (((eq Prop) ((x0 (g x1)) y)) ((f x1) y))
% Found (((fun (x3:(((eq (fofType->Prop)) (g Xx)) (g x1)))=> ((x20 x3) (fun (x5:(fofType->Prop))=> (((eq Prop) ((x0 (g x1)) y)) (x5 y))))) ((eq_ref (fofType->Prop)) (g Xx))) ((eq_ref Prop) ((x0 (g x1)) y))) as proof of (((eq Prop) ((x0 (g x1)) y)) ((f x1) y))
% Found (((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> (((x2 x1) x3) (fun (x5:(fofType->Prop))=> (((eq Prop) ((x0 (g x1)) y)) (x5 y))))) ((eq_ref (fofType->Prop)) (g x1))) ((eq_ref Prop) ((x0 (g x1)) y))) as proof of (((eq Prop) ((x0 (g x1)) y)) ((f x1) y))
% Found (((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> ((((fun (Xx:fofType)=> ((x Xx) x1)) x1) x3) (fun (x5:(fofType->Prop))=> (((eq Prop) ((x0 (g x1)) y)) (x5 y))))) ((eq_ref (fofType->Prop)) (g x1))) ((eq_ref Prop) ((x0 (g x1)) y))) as proof of (((eq Prop) ((x0 (g x1)) y)) ((f x1) y))
% Found (fun (y:fofType)=> (((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> ((((fun (Xx:fofType)=> ((x Xx) x1)) x1) x3) (fun (x5:(fofType->Prop))=> (((eq Prop) ((x0 (g x1)) y)) (x5 y))))) ((eq_ref (fofType->Prop)) (g x1))) ((eq_ref Prop) ((x0 (g x1)) y)))) as proof of (((eq Prop) ((x0 (g x1)) y)) ((f x1) y))
% Found eq_ref00:=(eq_ref0 (f0 x3)):(((eq Prop) (f0 x3)) (f0 x3))
% Found (eq_ref0 (f0 x3)) as proof of (((eq Prop) (f0 x3)) ((f x1) x3))
% Found ((eq_ref Prop) (f0 x3)) as proof of (((eq Prop) (f0 x3)) ((f x1) x3))
% Found ((eq_ref Prop) (f0 x3)) as proof of (((eq Prop) (f0 x3)) ((f x1) x3))
% Found (fun (x3:fofType)=> ((eq_ref Prop) (f0 x3))) as proof of (((eq Prop) (f0 x3)) ((f x1) x3))
% Found (fun (x3:fofType)=> ((eq_ref Prop) (f0 x3))) as proof of (forall (x:fofType), (((eq Prop) (f0 x)) ((f x1) x)))
% Found ((functional_extensionality_dep00000 (fun (x3:fofType)=> ((eq_ref Prop) (f0 x3)))) x2) as proof of (P (f x1))
% Found ((functional_extensionality_dep00000 (fun (x3:fofType)=> ((eq_ref Prop) (f0 x3)))) x2) as proof of (P (f x1))
% Found (((fun (x3:(forall (x:fofType), (((eq Prop) (f0 x)) ((f x1) x))))=> ((functional_extensionality_dep0000 x3) P)) (fun (x3:fofType)=> ((eq_ref Prop) (f0 x3)))) x2) as proof of (P (f x1))
% Found (((fun (x3:(forall (x:fofType), (((eq Prop) (f0 x)) ((f x1) x))))=> (((functional_extensionality_dep000 (f x1)) x3) P)) (fun (x3:fofType)=> ((eq_ref Prop) (f0 x3)))) x2) as proof of (P (f x1))
% Found (((fun (x3:(forall (x:fofType), (((eq Prop) ((x0 (g x1)) x)) ((f x1) x))))=> ((((functional_extensionality_dep00 (x0 (g x1))) (f x1)) x3) P)) (fun (x3:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x3)))) x2) as proof of (P (f x1))
% Found (((fun (x3:(forall (x:fofType), (((eq Prop) ((x0 (g x1)) x)) ((f x1) x))))=> (((((functional_extensionality_dep0 (fun (x6:fofType)=> Prop)) (x0 (g x1))) (f x1)) x3) P)) (fun (x3:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x3)))) x2) as proof of (P (f x1))
% Found (((fun (x3:(forall (x:fofType), (((eq Prop) ((x0 (g x1)) x)) ((f x1) x))))=> ((((((functional_extensionality_dep fofType) (fun (x6:fofType)=> Prop)) (x0 (g x1))) (f x1)) x3) P)) (fun (x3:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x3)))) x2) as proof of (P (f x1))
% Found (fun (x2:(P (x0 (g x1))))=> (((fun (x3:(forall (x:fofType), (((eq Prop) ((x0 (g x1)) x)) ((f x1) x))))=> ((((((functional_extensionality_dep fofType) (fun (x6:fofType)=> Prop)) (x0 (g x1))) (f x1)) x3) P)) (fun (x3:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x3)))) x2)) as proof of (P (f x1))
% Found (fun (P:((fofType->Prop)->Prop)) (x2:(P (x0 (g x1))))=> (((fun (x3:(forall (x:fofType), (((eq Prop) ((x0 (g x1)) x)) ((f x1) x))))=> ((((((functional_extensionality_dep fofType) (fun (x6:fofType)=> Prop)) (x0 (g x1))) (f x1)) x3) P)) (fun (x3:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x3)))) x2)) as proof of ((P (x0 (g x1)))->(P (f x1)))
% Found eq_ref00:=(eq_ref0 (f0 x3)):(((eq Prop) (f0 x3)) (f0 x3))
% Found (eq_ref0 (f0 x3)) as proof of (((eq Prop) (f0 x3)) ((f x1) x3))
% Found ((eq_ref Prop) (f0 x3)) as proof of (((eq Prop) (f0 x3)) ((f x1) x3))
% Found ((eq_ref Prop) (f0 x3)) as proof of (((eq Prop) (f0 x3)) ((f x1) x3))
% Found (fun (x3:fofType)=> ((eq_ref Prop) (f0 x3))) as proof of (((eq Prop) (f0 x3)) ((f x1) x3))
% Found (fun (x3:fofType)=> ((eq_ref Prop) (f0 x3))) as proof of (forall (x:fofType), (((eq Prop) (f0 x)) ((f x1) x)))
% Found ((functional_extensionality00000 (fun (x3:fofType)=> ((eq_ref Prop) (f0 x3)))) x2) as proof of (P (f x1))
% Found ((functional_extensionality00000 (fun (x3:fofType)=> ((eq_ref Prop) (f0 x3)))) x2) as proof of (P (f x1))
% Found (((fun (x3:(forall (x:fofType), (((eq Prop) (f0 x)) ((f x1) x))))=> ((functional_extensionality0000 x3) P)) (fun (x3:fofType)=> ((eq_ref Prop) (f0 x3)))) x2) as proof of (P (f x1))
% Found (((fun (x3:(forall (x:fofType), (((eq Prop) (f0 x)) ((f x1) x))))=> (((functional_extensionality000 (f x1)) x3) P)) (fun (x3:fofType)=> ((eq_ref Prop) (f0 x3)))) x2) as proof of (P (f x1))
% Found (((fun (x3:(forall (x:fofType), (((eq Prop) ((x0 (g x1)) x)) ((f x1) x))))=> ((((functional_extensionality00 (x0 (g x1))) (f x1)) x3) P)) (fun (x3:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x3)))) x2) as proof of (P (f x1))
% Found (((fun (x3:(forall (x:fofType), (((eq Prop) ((x0 (g x1)) x)) ((f x1) x))))=> (((((functional_extensionality0 Prop) (x0 (g x1))) (f x1)) x3) P)) (fun (x3:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x3)))) x2) as proof of (P (f x1))
% Found (((fun (x3:(forall (x:fofType), (((eq Prop) ((x0 (g x1)) x)) ((f x1) x))))=> ((((((functional_extensionality fofType) Prop) (x0 (g x1))) (f x1)) x3) P)) (fun (x3:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x3)))) x2) as proof of (P (f x1))
% Found (fun (x2:(P (x0 (g x1))))=> (((fun (x3:(forall (x:fofType), (((eq Prop) ((x0 (g x1)) x)) ((f x1) x))))=> ((((((functional_extensionality fofType) Prop) (x0 (g x1))) (f x1)) x3) P)) (fun (x3:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x3)))) x2)) as proof of (P (f x1))
% Found (fun (P:((fofType->Prop)->Prop)) (x2:(P (x0 (g x1))))=> (((fun (x3:(forall (x:fofType), (((eq Prop) ((x0 (g x1)) x)) ((f x1) x))))=> ((((((functional_extensionality fofType) Prop) (x0 (g x1))) (f x1)) x3) P)) (fun (x3:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x3)))) x2)) as proof of ((P (x0 (g x1)))->(P (f x1)))
% Found eq_ref000:=(eq_ref00 P):((P (x0 (g x1)))->(P (x0 (g x1))))
% Found (eq_ref00 P) as proof of ((P (x0 (g x1)))->(P (f x1)))
% Found ((eq_ref0 (x0 (g x1))) P) as proof of ((P (x0 (g x1)))->(P (f x1)))
% Found (((eq_ref (fofType->Prop)) (x0 (g x1))) P) as proof of ((P (x0 (g x1)))->(P (f x1)))
% Found (((eq_ref (fofType->Prop)) (x0 (g x1))) P) as proof of ((P (x0 (g x1)))->(P (f x1)))
% Found (fun (P:((fofType->Prop)->Prop))=> (((eq_ref (fofType->Prop)) (x0 (g x1))) P)) as proof of ((P (x0 (g x1)))->(P (f x1)))
% Found (fun (P:((fofType->Prop)->Prop))=> (((eq_ref (fofType->Prop)) (x0 (g x1))) P)) as proof of (forall (P:((fofType->Prop)->Prop)), ((P (x0 (g x1)))->(P (f x1))))
% Found eq_ref000:=(eq_ref00 P):((P (x0 (g x1)))->(P (x0 (g x1))))
% Found (eq_ref00 P) as proof of ((P (x0 (g x1)))->(P (f x1)))
% Found ((eq_ref0 (x0 (g x1))) P) as proof of ((P (x0 (g x1)))->(P (f x1)))
% Found (((eq_ref (fofType->Prop)) (x0 (g x1))) P) as proof of ((P (x0 (g x1)))->(P (f x1)))
% Found (((eq_ref (fofType->Prop)) (x0 (g x1))) P) as proof of ((P (x0 (g x1)))->(P (f x1)))
% Found (fun (P:((fofType->Prop)->Prop))=> (((eq_ref (fofType->Prop)) (x0 (g x1))) P)) as proof of ((P (x0 (g x1)))->(P (f x1)))
% Found (fun (P:((fofType->Prop)->Prop))=> (((eq_ref (fofType->Prop)) (x0 (g x1))) P)) as proof of (forall (P:((fofType->Prop)->Prop)), ((P (x0 (g x1)))->(P (f x1))))
% Found x2:(P ((x0 (g x1)) y))
% Instantiate: b:=((x0 (g x1)) y):Prop
% Found x2 as proof of (P0 b)
% Found eq_ref00:=(eq_ref0 ((f x1) y)):(((eq Prop) ((f x1) y)) ((f x1) y))
% Found (eq_ref0 ((f x1) y)) as proof of (((eq Prop) ((f x1) y)) b)
% Found ((eq_ref Prop) ((f x1) y)) as proof of (((eq Prop) ((f x1) y)) b)
% Found ((eq_ref Prop) ((f x1) y)) as proof of (((eq Prop) ((f x1) y)) b)
% Found ((eq_ref Prop) ((f x1) y)) as proof of (((eq Prop) ((f x1) y)) b)
% Found eq_ref00:=(eq_ref0 ((f0 x2) x3)):(((eq Prop) ((f0 x2) x3)) ((f0 x2) x3))
% Found (eq_ref0 ((f0 x2) x3)) as proof of (((eq Prop) ((f0 x2) x3)) ((f x2) x3))
% Found ((eq_ref Prop) ((f0 x2) x3)) as proof of (((eq Prop) ((f0 x2) x3)) ((f x2) x3))
% Found ((eq_ref Prop) ((f0 x2) x3)) as proof of (((eq Prop) ((f0 x2) x3)) ((f x2) x3))
% Found (fun (x3:fofType)=> ((eq_ref Prop) ((f0 x2) x3))) as proof of (((eq Prop) ((f0 x2) x3)) ((f x2) x3))
% Found (fun (x3:fofType)=> ((eq_ref Prop) ((f0 x2) x3))) as proof of (forall (x:fofType), (((eq Prop) ((f0 x2) x)) ((f x2) x)))
% Found (functional_extensionality_dep0000 (fun (x3:fofType)=> ((eq_ref Prop) ((f0 x2) x3)))) as proof of (((eq (fofType->Prop)) (f0 x2)) (f x2))
% Found ((functional_extensionality_dep000 (f x2)) (fun (x3:fofType)=> ((eq_ref Prop) ((f0 x2) x3)))) as proof of (((eq (fofType->Prop)) (f0 x2)) (f x2))
% Found (((functional_extensionality_dep00 (f0 x2)) (f x2)) (fun (x3:fofType)=> ((eq_ref Prop) ((f0 x2) x3)))) as proof of (((eq (fofType->Prop)) (f0 x2)) (f x2))
% Found ((((functional_extensionality_dep0 (fun (x5:fofType)=> Prop)) (f0 x2)) (f x2)) (fun (x3:fofType)=> ((eq_ref Prop) ((f0 x2) x3)))) as proof of (((eq (fofType->Prop)) (f0 x2)) (f x2))
% Found (((((functional_extensionality_dep fofType) (fun (x5:fofType)=> Prop)) (f0 x2)) (f x2)) (fun (x3:fofType)=> ((eq_ref Prop) ((f0 x2) x3)))) as proof of (((eq (fofType->Prop)) (f0 x2)) (f x2))
% Found eq_ref00:=(eq_ref0 ((f0 x2) x3)):(((eq Prop) ((f0 x2) x3)) ((f0 x2) x3))
% Found (eq_ref0 ((f0 x2) x3)) as proof of (((eq Prop) ((f0 x2) x3)) ((f x2) x3))
% Found ((eq_ref Prop) ((f0 x2) x3)) as proof of (((eq Prop) ((f0 x2) x3)) ((f x2) x3))
% Found ((eq_ref Prop) ((f0 x2) x3)) as proof of (((eq Prop) ((f0 x2) x3)) ((f x2) x3))
% Found (fun (x3:fofType)=> ((eq_ref Prop) ((f0 x2) x3))) as proof of (((eq Prop) ((f0 x2) x3)) ((f x2) x3))
% Found (fun (x3:fofType)=> ((eq_ref Prop) ((f0 x2) x3))) as proof of (forall (x:fofType), (((eq Prop) ((f0 x2) x)) ((f x2) x)))
% Found (functional_extensionality0000 (fun (x3:fofType)=> ((eq_ref Prop) ((f0 x2) x3)))) as proof of (((eq (fofType->Prop)) (f0 x2)) (f x2))
% Found ((functional_extensionality000 (f x2)) (fun (x3:fofType)=> ((eq_ref Prop) ((f0 x2) x3)))) as proof of (((eq (fofType->Prop)) (f0 x2)) (f x2))
% Found (((functional_extensionality00 (f0 x2)) (f x2)) (fun (x3:fofType)=> ((eq_ref Prop) ((f0 x2) x3)))) as proof of (((eq (fofType->Prop)) (f0 x2)) (f x2))
% Found ((((functional_extensionality0 Prop) (f0 x2)) (f x2)) (fun (x3:fofType)=> ((eq_ref Prop) ((f0 x2) x3)))) as proof of (((eq (fofType->Prop)) (f0 x2)) (f x2))
% Found (((((functional_extensionality fofType) Prop) (f0 x2)) (f x2)) (fun (x3:fofType)=> ((eq_ref Prop) ((f0 x2) x3)))) as proof of (((eq (fofType->Prop)) (f0 x2)) (f x2))
% Found eq_ref000:=(eq_ref00 P):((P (x0 (g x1)))->(P (x0 (g x1))))
% Found (eq_ref00 P) as proof of (P0 (x0 (g x1)))
% Found ((eq_ref0 (x0 (g x1))) P) as proof of (P0 (x0 (g x1)))
% Found (((eq_ref (fofType->Prop)) (x0 (g x1))) P) as proof of (P0 (x0 (g x1)))
% Found (((eq_ref (fofType->Prop)) (x0 (g x1))) P) as proof of (P0 (x0 (g x1)))
% Found eq_ref000:=(eq_ref00 P):((P (x0 (g x1)))->(P (x0 (g x1))))
% Found (eq_ref00 P) as proof of (P0 (x0 (g x1)))
% Found ((eq_ref0 (x0 (g x1))) P) as proof of (P0 (x0 (g x1)))
% Found (((eq_ref (fofType->Prop)) (x0 (g x1))) P) as proof of (P0 (x0 (g x1)))
% Found (((eq_ref (fofType->Prop)) (x0 (g x1))) P) as proof of (P0 (x0 (g x1)))
% Found eq_ref000:=(eq_ref00 P1):((P1 (x0 (g x1)))->(P1 (x0 (g x1))))
% Found (eq_ref00 P1) as proof of (P2 (x0 (g x1)))
% Found ((eq_ref0 (x0 (g x1))) P1) as proof of (P2 (x0 (g x1)))
% Found (((eq_ref (fofType->Prop)) (x0 (g x1))) P1) as proof of (P2 (x0 (g x1)))
% Found (((eq_ref (fofType->Prop)) (x0 (g x1))) P1) as proof of (P2 (x0 (g x1)))
% Found eq_ref000:=(eq_ref00 P1):((P1 (x0 (g x1)))->(P1 (x0 (g x1))))
% Found (eq_ref00 P1) as proof of (P2 (x0 (g x1)))
% Found ((eq_ref0 (x0 (g x1))) P1) as proof of (P2 (x0 (g x1)))
% Found (((eq_ref (fofType->Prop)) (x0 (g x1))) P1) as proof of (P2 (x0 (g x1)))
% Found (((eq_ref (fofType->Prop)) (x0 (g x1))) P1) as proof of (P2 (x0 (g x1)))
% Found eq_ref000:=(eq_ref00 P1):((P1 (x0 (g x1)))->(P1 (x0 (g x1))))
% Found (eq_ref00 P1) as proof of (P2 (x0 (g x1)))
% Found ((eq_ref0 (x0 (g x1))) P1) as proof of (P2 (x0 (g x1)))
% Found (((eq_ref (fofType->Prop)) (x0 (g x1))) P1) as proof of (P2 (x0 (g x1)))
% Found (((eq_ref (fofType->Prop)) (x0 (g x1))) P1) as proof of (P2 (x0 (g x1)))
% Found eq_ref00:=(eq_ref0 ((x0 (g x1)) y)):(((eq Prop) ((x0 (g x1)) y)) ((x0 (g x1)) y))
% Found (eq_ref0 ((x0 (g x1)) y)) as proof of (((eq Prop) ((x0 (g x1)) y)) ((b x1) y))
% Found ((eq_ref Prop) ((x0 (g x1)) y)) as proof of (((eq Prop) ((x0 (g x1)) y)) ((b x1) y))
% Found ((eq_ref Prop) ((x0 (g x1)) y)) as proof of (((eq Prop) ((x0 (g x1)) y)) ((b x1) y))
% Found (fun (y:fofType)=> ((eq_ref Prop) ((x0 (g x1)) y))) as proof of (((eq Prop) ((x0 (g x1)) y)) ((b x1) y))
% Found eq_ref000:=(eq_ref00 P1):((P1 (x0 (g x1)))->(P1 (x0 (g x1))))
% Found (eq_ref00 P1) as proof of (P2 (x0 (g x1)))
% Found ((eq_ref0 (x0 (g x1))) P1) as proof of (P2 (x0 (g x1)))
% Found (((eq_ref (fofType->Prop)) (x0 (g x1))) P1) as proof of (P2 (x0 (g x1)))
% Found (((eq_ref (fofType->Prop)) (x0 (g x1))) P1) as proof of (P2 (x0 (g x1)))
% Found eq_ref00:=(eq_ref0 ((x0 (g x1)) y)):(((eq Prop) ((x0 (g x1)) y)) ((x0 (g x1)) y))
% Found (eq_ref0 ((x0 (g x1)) y)) as proof of (((eq Prop) ((x0 (g x1)) y)) ((b x1) y))
% Found ((eq_ref Prop) ((x0 (g x1)) y)) as proof of (((eq Prop) ((x0 (g x1)) y)) ((b x1) y))
% Found ((eq_ref Prop) ((x0 (g x1)) y)) as proof of (((eq Prop) ((x0 (g x1)) y)) ((b x1) y))
% Found (fun (y:fofType)=> ((eq_ref Prop) ((x0 (g x1)) y))) as proof of (((eq Prop) ((x0 (g x1)) y)) ((b x1) y))
% Found eq_ref000:=(eq_ref00 P1):((P1 (x0 (g x1)))->(P1 (x0 (g x1))))
% Found (eq_ref00 P1) as proof of (P2 (x0 (g x1)))
% Found ((eq_ref0 (x0 (g x1))) P1) as proof of (P2 (x0 (g x1)))
% Found (((eq_ref (fofType->Prop)) (x0 (g x1))) P1) as proof of (P2 (x0 (g x1)))
% Found (((eq_ref (fofType->Prop)) (x0 (g x1))) P1) as proof of (P2 (x0 (g x1)))
% Found eq_ref000:=(eq_ref00 P1):((P1 (x0 (g x1)))->(P1 (x0 (g x1))))
% Found (eq_ref00 P1) as proof of (P2 (x0 (g x1)))
% Found ((eq_ref0 (x0 (g x1))) P1) as proof of (P2 (x0 (g x1)))
% Found (((eq_ref (fofType->Prop)) (x0 (g x1))) P1) as proof of (P2 (x0 (g x1)))
% Found (((eq_ref (fofType->Prop)) (x0 (g x1))) P1) as proof of (P2 (x0 (g x1)))
% Found eq_ref000:=(eq_ref00 P1):((P1 (x0 (g x1)))->(P1 (x0 (g x1))))
% Found (eq_ref00 P1) as proof of (P2 (x0 (g x1)))
% Found ((eq_ref0 (x0 (g x1))) P1) as proof of (P2 (x0 (g x1)))
% Found (((eq_ref (fofType->Prop)) (x0 (g x1))) P1) as proof of (P2 (x0 (g x1)))
% Found (((eq_ref (fofType->Prop)) (x0 (g x1))) P1) as proof of (P2 (x0 (g x1)))
% Found eq_ref000:=(eq_ref00 P1):((P1 (x0 (g x1)))->(P1 (x0 (g x1))))
% Found (eq_ref00 P1) as proof of (P2 (x0 (g x1)))
% Found ((eq_ref0 (x0 (g x1))) P1) as proof of (P2 (x0 (g x1)))
% Found (((eq_ref (fofType->Prop)) (x0 (g x1))) P1) as proof of (P2 (x0 (g x1)))
% Found (((eq_ref (fofType->Prop)) (x0 (g x1))) P1) as proof of (P2 (x0 (g x1)))
% Found eq_ref00:=(eq_ref0 ((x0 (g x1)) y)):(((eq Prop) ((x0 (g x1)) y)) ((x0 (g x1)) y))
% Found (eq_ref0 ((x0 (g x1)) y)) as proof of (((eq Prop) ((x0 (g x1)) y)) ((b x1) y))
% Found ((eq_ref Prop) ((x0 (g x1)) y)) as proof of (((eq Prop) ((x0 (g x1)) y)) ((b x1) y))
% Found ((eq_ref Prop) ((x0 (g x1)) y)) as proof of (((eq Prop) ((x0 (g x1)) y)) ((b x1) y))
% Found (fun (y:fofType)=> ((eq_ref Prop) ((x0 (g x1)) y))) as proof of (((eq Prop) ((x0 (g x1)) y)) ((b x1) y))
% Found eq_ref00:=(eq_ref0 ((x0 (g x1)) x2)):(((eq Prop) ((x0 (g x1)) x2)) ((x0 (g x1)) x2))
% Found (eq_ref0 ((x0 (g x1)) x2)) as proof of (((eq Prop) ((x0 (g x1)) x2)) ((f x1) x2))
% Found ((eq_ref Prop) ((x0 (g x1)) x2)) as proof of (((eq Prop) ((x0 (g x1)) x2)) ((f x1) x2))
% Found ((eq_ref Prop) ((x0 (g x1)) x2)) as proof of (((eq Prop) ((x0 (g x1)) x2)) ((f x1) x2))
% Found (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2))) as proof of (((eq Prop) ((x0 (g x1)) x2)) ((f x1) x2))
% Found (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2))) as proof of (forall (x:fofType), (((eq Prop) ((x0 (g x1)) x)) ((f x1) x)))
% Found ((functional_extensionality01000 (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2)))) (((eq_ref (fofType->Prop)) (x0 (g x1))) P1)) as proof of ((P1 (x0 (g x1)))->(P1 (f x1)))
% Found ((functional_extensionality01000 (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2)))) (((eq_ref (fofType->Prop)) (x0 (g x1))) P1)) as proof of ((P1 (x0 (g x1)))->(P1 (f x1)))
% Found (((fun (x2:(forall (x:fofType), (((eq Prop) ((x0 (g x1)) x)) ((f x1) x))))=> ((functional_extensionality0100 x2) (fun (x4:(fofType->Prop))=> ((P1 (x0 (g x1)))->(P1 x4))))) (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2)))) (((eq_ref (fofType->Prop)) (x0 (g x1))) P1)) as proof of ((P1 (x0 (g x1)))->(P1 (f x1)))
% Found (((fun (x2:(forall (x:fofType), (((eq Prop) ((x0 (g x1)) x)) ((f x1) x))))=> (((functional_extensionality010 (f x1)) x2) (fun (x4:(fofType->Prop))=> ((P1 (x0 (g x1)))->(P1 x4))))) (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2)))) (((eq_ref (fofType->Prop)) (x0 (g x1))) P1)) as proof of ((P1 (x0 (g x1)))->(P1 (f x1)))
% Found (((fun (x2:(forall (x:fofType), (((eq Prop) ((x0 (g x1)) x)) ((f x1) x))))=> ((((functional_extensionality01 (x0 (g x1))) (f x1)) x2) (fun (x4:(fofType->Prop))=> ((P1 (x0 (g x1)))->(P1 x4))))) (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2)))) (((eq_ref (fofType->Prop)) (x0 (g x1))) P1)) as proof of ((P1 (x0 (g x1)))->(P1 (f x1)))
% Found (((fun (x2:(forall (x:fofType), (((eq Prop) ((x0 (g x1)) x)) ((f x1) x))))=> (((((functional_extensionality0 Prop) (x0 (g x1))) (f x1)) x2) (fun (x4:(fofType->Prop))=> ((P1 (x0 (g x1)))->(P1 x4))))) (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2)))) (((eq_ref (fofType->Prop)) (x0 (g x1))) P1)) as proof of ((P1 (x0 (g x1)))->(P1 (f x1)))
% Found (fun (P1:((fofType->Prop)->Prop))=> (((fun (x2:(forall (x:fofType), (((eq Prop) ((x0 (g x1)) x)) ((f x1) x))))=> (((((functional_extensionality0 Prop) (x0 (g x1))) (f x1)) x2) (fun (x4:(fofType->Prop))=> ((P1 (x0 (g x1)))->(P1 x4))))) (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2)))) (((eq_ref (fofType->Prop)) (x0 (g x1))) P1))) as proof of ((P1 (x0 (g x1)))->(P1 (f x1)))
% Found eq_ref00:=(eq_ref0 ((x0 (g x1)) x2)):(((eq Prop) ((x0 (g x1)) x2)) ((x0 (g x1)) x2))
% Found (eq_ref0 ((x0 (g x1)) x2)) as proof of (((eq Prop) ((x0 (g x1)) x2)) ((f x1) x2))
% Found ((eq_ref Prop) ((x0 (g x1)) x2)) as proof of (((eq Prop) ((x0 (g x1)) x2)) ((f x1) x2))
% Found ((eq_ref Prop) ((x0 (g x1)) x2)) as proof of (((eq Prop) ((x0 (g x1)) x2)) ((f x1) x2))
% Found (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2))) as proof of (((eq Prop) ((x0 (g x1)) x2)) ((f x1) x2))
% Found (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2))) as proof of (forall (x:fofType), (((eq Prop) ((x0 (g x1)) x)) ((f x1) x)))
% Found (functional_extensionality01000 (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2)))) as proof of ((P1 (x0 (g x1)))->(P1 (f x1)))
% Found (functional_extensionality01000 (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2)))) as proof of ((P1 (x0 (g x1)))->(P1 (f x1)))
% Found ((fun (x2:(forall (x:fofType), (((eq Prop) ((x0 (g x1)) x)) ((f x1) x))))=> ((functional_extensionality0100 x2) P1)) (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2)))) as proof of ((P1 (x0 (g x1)))->(P1 (f x1)))
% Found ((fun (x2:(forall (x:fofType), (((eq Prop) ((x0 (g x1)) x)) ((f x1) x))))=> (((functional_extensionality010 (f x1)) x2) P1)) (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2)))) as proof of ((P1 (x0 (g x1)))->(P1 (f x1)))
% Found ((fun (x2:(forall (x:fofType), (((eq Prop) ((x0 (g x1)) x)) ((f x1) x))))=> ((((functional_extensionality01 (x0 (g x1))) (f x1)) x2) P1)) (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2)))) as proof of ((P1 (x0 (g x1)))->(P1 (f x1)))
% Found ((fun (x2:(forall (x:fofType), (((eq Prop) ((x0 (g x1)) x)) ((f x1) x))))=> (((((functional_extensionality0 Prop) (x0 (g x1))) (f x1)) x2) P1)) (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2)))) as proof of ((P1 (x0 (g x1)))->(P1 (f x1)))
% Found (fun (P1:((fofType->Prop)->Prop))=> ((fun (x2:(forall (x:fofType), (((eq Prop) ((x0 (g x1)) x)) ((f x1) x))))=> (((((functional_extensionality0 Prop) (x0 (g x1))) (f x1)) x2) P1)) (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2))))) as proof of ((P1 (x0 (g x1)))->(P1 (f x1)))
% Found eq_ref00:=(eq_ref0 ((x0 (g x1)) x2)):(((eq Prop) ((x0 (g x1)) x2)) ((x0 (g x1)) x2))
% Found (eq_ref0 ((x0 (g x1)) x2)) as proof of (((eq Prop) ((x0 (g x1)) x2)) ((f x1) x2))
% Found ((eq_ref Prop) ((x0 (g x1)) x2)) as proof of (((eq Prop) ((x0 (g x1)) x2)) ((f x1) x2))
% Found ((eq_ref Prop) ((x0 (g x1)) x2)) as proof of (((eq Prop) ((x0 (g x1)) x2)) ((f x1) x2))
% Found (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2))) as proof of (((eq Prop) ((x0 (g x1)) x2)) ((f x1) x2))
% Found (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2))) as proof of (forall (x:fofType), (((eq Prop) ((x0 (g x1)) x)) ((f x1) x)))
% Found ((functional_extensionality_dep01000 (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2)))) (((eq_ref (fofType->Prop)) (x0 (g x1))) P1)) as proof of ((P1 (x0 (g x1)))->(P1 (f x1)))
% Found ((functional_extensionality_dep01000 (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2)))) (((eq_ref (fofType->Prop)) (x0 (g x1))) P1)) as proof of ((P1 (x0 (g x1)))->(P1 (f x1)))
% Found (((fun (x2:(forall (x:fofType), (((eq Prop) ((x0 (g x1)) x)) ((f x1) x))))=> ((functional_extensionality_dep0100 x2) (fun (x4:(fofType->Prop))=> ((P1 (x0 (g x1)))->(P1 x4))))) (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2)))) (((eq_ref (fofType->Prop)) (x0 (g x1))) P1)) as proof of ((P1 (x0 (g x1)))->(P1 (f x1)))
% Found (((fun (x2:(forall (x:fofType), (((eq Prop) ((x0 (g x1)) x)) ((f x1) x))))=> (((functional_extensionality_dep010 (f x1)) x2) (fun (x4:(fofType->Prop))=> ((P1 (x0 (g x1)))->(P1 x4))))) (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2)))) (((eq_ref (fofType->Prop)) (x0 (g x1))) P1)) as proof of ((P1 (x0 (g x1)))->(P1 (f x1)))
% Found (((fun (x2:(forall (x:fofType), (((eq Prop) ((x0 (g x1)) x)) ((f x1) x))))=> ((((functional_extensionality_dep01 (x0 (g x1))) (f x1)) x2) (fun (x4:(fofType->Prop))=> ((P1 (x0 (g x1)))->(P1 x4))))) (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2)))) (((eq_ref (fofType->Prop)) (x0 (g x1))) P1)) as proof of ((P1 (x0 (g x1)))->(P1 (f x1)))
% Found (((fun (x2:(forall (x:fofType), (((eq Prop) ((x0 (g x1)) x)) ((f x1) x))))=> (((((functional_extensionality_dep0 (fun (x4:fofType)=> Prop)) (x0 (g x1))) (f x1)) x2) (fun (x4:(fofType->Prop))=> ((P1 (x0 (g x1)))->(P1 x4))))) (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2)))) (((eq_ref (fofType->Prop)) (x0 (g x1))) P1)) as proof of ((P1 (x0 (g x1)))->(P1 (f x1)))
% Found (fun (P1:((fofType->Prop)->Prop))=> (((fun (x2:(forall (x:fofType), (((eq Prop) ((x0 (g x1)) x)) ((f x1) x))))=> (((((functional_extensionality_dep0 (fun (x4:fofType)=> Prop)) (x0 (g x1))) (f x1)) x2) (fun (x4:(fofType->Prop))=> ((P1 (x0 (g x1)))->(P1 x4))))) (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2)))) (((eq_ref (fofType->Prop)) (x0 (g x1))) P1))) as proof of ((P1 (x0 (g x1)))->(P1 (f x1)))
% Found eq_ref00:=(eq_ref0 ((x0 (g x1)) x2)):(((eq Prop) ((x0 (g x1)) x2)) ((x0 (g x1)) x2))
% Found (eq_ref0 ((x0 (g x1)) x2)) as proof of (((eq Prop) ((x0 (g x1)) x2)) ((f x1) x2))
% Found ((eq_ref Prop) ((x0 (g x1)) x2)) as proof of (((eq Prop) ((x0 (g x1)) x2)) ((f x1) x2))
% Found ((eq_ref Prop) ((x0 (g x1)) x2)) as proof of (((eq Prop) ((x0 (g x1)) x2)) ((f x1) x2))
% Found (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2))) as proof of (((eq Prop) ((x0 (g x1)) x2)) ((f x1) x2))
% Found (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2))) as proof of (forall (x:fofType), (((eq Prop) ((x0 (g x1)) x)) ((f x1) x)))
% Found (functional_extensionality_dep01000 (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2)))) as proof of ((P1 (x0 (g x1)))->(P1 (f x1)))
% Found (functional_extensionality_dep01000 (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2)))) as proof of ((P1 (x0 (g x1)))->(P1 (f x1)))
% Found ((fun (x2:(forall (x:fofType), (((eq Prop) ((x0 (g x1)) x)) ((f x1) x))))=> ((functional_extensionality_dep0100 x2) P1)) (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2)))) as proof of ((P1 (x0 (g x1)))->(P1 (f x1)))
% Found ((fun (x2:(forall (x:fofType), (((eq Prop) ((x0 (g x1)) x)) ((f x1) x))))=> (((functional_extensionality_dep010 (f x1)) x2) P1)) (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2)))) as proof of ((P1 (x0 (g x1)))->(P1 (f x1)))
% Found ((fun (x2:(forall (x:fofType), (((eq Prop) ((x0 (g x1)) x)) ((f x1) x))))=> ((((functional_extensionality_dep01 (x0 (g x1))) (f x1)) x2) P1)) (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2)))) as proof of ((P1 (x0 (g x1)))->(P1 (f x1)))
% Found ((fun (x2:(forall (x:fofType), (((eq Prop) ((x0 (g x1)) x)) ((f x1) x))))=> (((((functional_extensionality_dep0 (fun (x4:fofType)=> Prop)) (x0 (g x1))) (f x1)) x2) P1)) (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2)))) as proof of ((P1 (x0 (g x1)))->(P1 (f x1)))
% Found (fun (P1:((fofType->Prop)->Prop))=> ((fun (x2:(forall (x:fofType), (((eq Prop) ((x0 (g x1)) x)) ((f x1) x))))=> (((((functional_extensionality_dep0 (fun (x4:fofType)=> Prop)) (x0 (g x1))) (f x1)) x2) P1)) (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2))))) as proof of ((P1 (x0 (g x1)))->(P1 (f x1)))
% Found eq_ref00:=(eq_ref0 ((x0 (g x1)) y)):(((eq Prop) ((x0 (g x1)) y)) ((x0 (g x1)) y))
% Found (eq_ref0 ((x0 (g x1)) y)) as proof of (((eq Prop) ((x0 (g x1)) y)) ((b x1) y))
% Found ((eq_ref Prop) ((x0 (g x1)) y)) as proof of (((eq Prop) ((x0 (g x1)) y)) ((b x1) y))
% Found ((eq_ref Prop) ((x0 (g x1)) y)) as proof of (((eq Prop) ((x0 (g x1)) y)) ((b x1) y))
% Found (fun (y:fofType)=> ((eq_ref Prop) ((x0 (g x1)) y))) as proof of (((eq Prop) ((x0 (g x1)) y)) ((b x1) y))
% Found eq_ref00:=(eq_ref0 ((x0 (g x1)) x2)):(((eq Prop) ((x0 (g x1)) x2)) ((x0 (g x1)) x2))
% Found (eq_ref0 ((x0 (g x1)) x2)) as proof of (((eq Prop) ((x0 (g x1)) x2)) ((f x1) x2))
% Found ((eq_ref Prop) ((x0 (g x1)) x2)) as proof of (((eq Prop) ((x0 (g x1)) x2)) ((f x1) x2))
% Found ((eq_ref Prop) ((x0 (g x1)) x2)) as proof of (((eq Prop) ((x0 (g x1)) x2)) ((f x1) x2))
% Found (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2))) as proof of (((eq Prop) ((x0 (g x1)) x2)) ((f x1) x2))
% Found (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2))) as proof of (forall (x:fofType), (((eq Prop) ((x0 (g x1)) x)) ((f x1) x)))
% Found (functional_extensionality01000 (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2)))) as proof of ((P1 (x0 (g x1)))->(P1 (f x1)))
% Found (functional_extensionality01000 (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2)))) as proof of ((P1 (x0 (g x1)))->(P1 (f x1)))
% Found ((fun (x2:(forall (x:fofType), (((eq Prop) ((x0 (g x1)) x)) ((f x1) x))))=> ((functional_extensionality0100 x2) P1)) (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2)))) as proof of ((P1 (x0 (g x1)))->(P1 (f x1)))
% Found ((fun (x2:(forall (x:fofType), (((eq Prop) ((x0 (g x1)) x)) ((f x1) x))))=> (((functional_extensionality010 (f x1)) x2) P1)) (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2)))) as proof of ((P1 (x0 (g x1)))->(P1 (f x1)))
% Found ((fun (x2:(forall (x:fofType), (((eq Prop) ((x0 (g x1)) x)) ((f x1) x))))=> ((((functional_extensionality01 (x0 (g x1))) (f x1)) x2) P1)) (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2)))) as proof of ((P1 (x0 (g x1)))->(P1 (f x1)))
% Found ((fun (x2:(forall (x:fofType), (((eq Prop) ((x0 (g x1)) x)) ((f x1) x))))=> (((((functional_extensionality0 Prop) (x0 (g x1))) (f x1)) x2) P1)) (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2)))) as proof of ((P1 (x0 (g x1)))->(P1 (f x1)))
% Found (fun (P1:((fofType->Prop)->Prop))=> ((fun (x2:(forall (x:fofType), (((eq Prop) ((x0 (g x1)) x)) ((f x1) x))))=> (((((functional_extensionality0 Prop) (x0 (g x1))) (f x1)) x2) P1)) (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2))))) as proof of ((P1 (x0 (g x1)))->(P1 (f x1)))
% Found eq_ref00:=(eq_ref0 ((x0 (g x1)) x2)):(((eq Prop) ((x0 (g x1)) x2)) ((x0 (g x1)) x2))
% Found (eq_ref0 ((x0 (g x1)) x2)) as proof of (((eq Prop) ((x0 (g x1)) x2)) ((f x1) x2))
% Found ((eq_ref Prop) ((x0 (g x1)) x2)) as proof of (((eq Prop) ((x0 (g x1)) x2)) ((f x1) x2))
% Found ((eq_ref Prop) ((x0 (g x1)) x2)) as proof of (((eq Prop) ((x0 (g x1)) x2)) ((f x1) x2))
% Found (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2))) as proof of (((eq Prop) ((x0 (g x1)) x2)) ((f x1) x2))
% Found (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2))) as proof of (forall (x:fofType), (((eq Prop) ((x0 (g x1)) x)) ((f x1) x)))
% Found ((functional_extensionality01000 (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2)))) (((eq_ref (fofType->Prop)) (x0 (g x1))) P1)) as proof of ((P1 (x0 (g x1)))->(P1 (f x1)))
% Found ((functional_extensionality01000 (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2)))) (((eq_ref (fofType->Prop)) (x0 (g x1))) P1)) as proof of ((P1 (x0 (g x1)))->(P1 (f x1)))
% Found (((fun (x2:(forall (x:fofType), (((eq Prop) ((x0 (g x1)) x)) ((f x1) x))))=> ((functional_extensionality0100 x2) (fun (x4:(fofType->Prop))=> ((P1 (x0 (g x1)))->(P1 x4))))) (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2)))) (((eq_ref (fofType->Prop)) (x0 (g x1))) P1)) as proof of ((P1 (x0 (g x1)))->(P1 (f x1)))
% Found (((fun (x2:(forall (x:fofType), (((eq Prop) ((x0 (g x1)) x)) ((f x1) x))))=> (((functional_extensionality010 (f x1)) x2) (fun (x4:(fofType->Prop))=> ((P1 (x0 (g x1)))->(P1 x4))))) (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2)))) (((eq_ref (fofType->Prop)) (x0 (g x1))) P1)) as proof of ((P1 (x0 (g x1)))->(P1 (f x1)))
% Found (((fun (x2:(forall (x:fofType), (((eq Prop) ((x0 (g x1)) x)) ((f x1) x))))=> ((((functional_extensionality01 (x0 (g x1))) (f x1)) x2) (fun (x4:(fofType->Prop))=> ((P1 (x0 (g x1)))->(P1 x4))))) (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2)))) (((eq_ref (fofType->Prop)) (x0 (g x1))) P1)) as proof of ((P1 (x0 (g x1)))->(P1 (f x1)))
% Found (((fun (x2:(forall (x:fofType), (((eq Prop) ((x0 (g x1)) x)) ((f x1) x))))=> (((((functional_extensionality0 Prop) (x0 (g x1))) (f x1)) x2) (fun (x4:(fofType->Prop))=> ((P1 (x0 (g x1)))->(P1 x4))))) (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2)))) (((eq_ref (fofType->Prop)) (x0 (g x1))) P1)) as proof of ((P1 (x0 (g x1)))->(P1 (f x1)))
% Found (fun (P1:((fofType->Prop)->Prop))=> (((fun (x2:(forall (x:fofType), (((eq Prop) ((x0 (g x1)) x)) ((f x1) x))))=> (((((functional_extensionality0 Prop) (x0 (g x1))) (f x1)) x2) (fun (x4:(fofType->Prop))=> ((P1 (x0 (g x1)))->(P1 x4))))) (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2)))) (((eq_ref (fofType->Prop)) (x0 (g x1))) P1))) as proof of ((P1 (x0 (g x1)))->(P1 (f x1)))
% Found eq_ref00:=(eq_ref0 ((x0 (g x1)) x2)):(((eq Prop) ((x0 (g x1)) x2)) ((x0 (g x1)) x2))
% Found (eq_ref0 ((x0 (g x1)) x2)) as proof of (((eq Prop) ((x0 (g x1)) x2)) ((f x1) x2))
% Found ((eq_ref Prop) ((x0 (g x1)) x2)) as proof of (((eq Prop) ((x0 (g x1)) x2)) ((f x1) x2))
% Found ((eq_ref Prop) ((x0 (g x1)) x2)) as proof of (((eq Prop) ((x0 (g x1)) x2)) ((f x1) x2))
% Found (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2))) as proof of (((eq Prop) ((x0 (g x1)) x2)) ((f x1) x2))
% Found (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2))) as proof of (forall (x:fofType), (((eq Prop) ((x0 (g x1)) x)) ((f x1) x)))
% Found (functional_extensionality_dep01000 (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2)))) as proof of ((P1 (x0 (g x1)))->(P1 (f x1)))
% Found (functional_extensionality_dep01000 (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2)))) as proof of ((P1 (x0 (g x1)))->(P1 (f x1)))
% Found ((fun (x2:(forall (x:fofType), (((eq Prop) ((x0 (g x1)) x)) ((f x1) x))))=> ((functional_extensionality_dep0100 x2) P1)) (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2)))) as proof of ((P1 (x0 (g x1)))->(P1 (f x1)))
% Found ((fun (x2:(forall (x:fofType), (((eq Prop) ((x0 (g x1)) x)) ((f x1) x))))=> (((functional_extensionality_dep010 (f x1)) x2) P1)) (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2)))) as proof of ((P1 (x0 (g x1)))->(P1 (f x1)))
% Found ((fun (x2:(forall (x:fofType), (((eq Prop) ((x0 (g x1)) x)) ((f x1) x))))=> ((((functional_extensionality_dep01 (x0 (g x1))) (f x1)) x2) P1)) (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2)))) as proof of ((P1 (x0 (g x1)))->(P1 (f x1)))
% Found ((fun (x2:(forall (x:fofType), (((eq Prop) ((x0 (g x1)) x)) ((f x1) x))))=> (((((functional_extensionality_dep0 (fun (x4:fofType)=> Prop)) (x0 (g x1))) (f x1)) x2) P1)) (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2)))) as proof of ((P1 (x0 (g x1)))->(P1 (f x1)))
% Found (fun (P1:((fofType->Prop)->Prop))=> ((fun (x2:(forall (x:fofType), (((eq Prop) ((x0 (g x1)) x)) ((f x1) x))))=> (((((functional_extensionality_dep0 (fun (x4:fofType)=> Prop)) (x0 (g x1))) (f x1)) x2) P1)) (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2))))) as proof of ((P1 (x0 (g x1)))->(P1 (f x1)))
% Found eq_ref00:=(eq_ref0 ((x0 (g x1)) x2)):(((eq Prop) ((x0 (g x1)) x2)) ((x0 (g x1)) x2))
% Found (eq_ref0 ((x0 (g x1)) x2)) as proof of (((eq Prop) ((x0 (g x1)) x2)) ((f x1) x2))
% Found ((eq_ref Prop) ((x0 (g x1)) x2)) as proof of (((eq Prop) ((x0 (g x1)) x2)) ((f x1) x2))
% Found ((eq_ref Prop) ((x0 (g x1)) x2)) as proof of (((eq Prop) ((x0 (g x1)) x2)) ((f x1) x2))
% Found (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2))) as proof of (((eq Prop) ((x0 (g x1)) x2)) ((f x1) x2))
% Found (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2))) as proof of (forall (x:fofType), (((eq Prop) ((x0 (g x1)) x)) ((f x1) x)))
% Found ((functional_extensionality_dep01000 (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2)))) (((eq_ref (fofType->Prop)) (x0 (g x1))) P1)) as proof of ((P1 (x0 (g x1)))->(P1 (f x1)))
% Found ((functional_extensionality_dep01000 (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2)))) (((eq_ref (fofType->Prop)) (x0 (g x1))) P1)) as proof of ((P1 (x0 (g x1)))->(P1 (f x1)))
% Found (((fun (x2:(forall (x:fofType), (((eq Prop) ((x0 (g x1)) x)) ((f x1) x))))=> ((functional_extensionality_dep0100 x2) (fun (x4:(fofType->Prop))=> ((P1 (x0 (g x1)))->(P1 x4))))) (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2)))) (((eq_ref (fofType->Prop)) (x0 (g x1))) P1)) as proof of ((P1 (x0 (g x1)))->(P1 (f x1)))
% Found (((fun (x2:(forall (x:fofType), (((eq Prop) ((x0 (g x1)) x)) ((f x1) x))))=> (((functional_extensionality_dep010 (f x1)) x2) (fun (x4:(fofType->Prop))=> ((P1 (x0 (g x1)))->(P1 x4))))) (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2)))) (((eq_ref (fofType->Prop)) (x0 (g x1))) P1)) as proof of ((P1 (x0 (g x1)))->(P1 (f x1)))
% Found (((fun (x2:(forall (x:fofType), (((eq Prop) ((x0 (g x1)) x)) ((f x1) x))))=> ((((functional_extensionality_dep01 (x0 (g x1))) (f x1)) x2) (fun (x4:(fofType->Prop))=> ((P1 (x0 (g x1)))->(P1 x4))))) (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2)))) (((eq_ref (fofType->Prop)) (x0 (g x1))) P1)) as proof of ((P1 (x0 (g x1)))->(P1 (f x1)))
% Found (((fun (x2:(forall (x:fofType), (((eq Prop) ((x0 (g x1)) x)) ((f x1) x))))=> (((((functional_extensionality_dep0 (fun (x4:fofType)=> Prop)) (x0 (g x1))) (f x1)) x2) (fun (x4:(fofType->Prop))=> ((P1 (x0 (g x1)))->(P1 x4))))) (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2)))) (((eq_ref (fofType->Prop)) (x0 (g x1))) P1)) as proof of ((P1 (x0 (g x1)))->(P1 (f x1)))
% Found (fun (P1:((fofType->Prop)->Prop))=> (((fun (x2:(forall (x:fofType), (((eq Prop) ((x0 (g x1)) x)) ((f x1) x))))=> (((((functional_extensionality_dep0 (fun (x4:fofType)=> Prop)) (x0 (g x1))) (f x1)) x2) (fun (x4:(fofType->Prop))=> ((P1 (x0 (g x1)))->(P1 x4))))) (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2)))) (((eq_ref (fofType->Prop)) (x0 (g x1))) P1))) as proof of ((P1 (x0 (g x1)))->(P1 (f x1)))
% Found eq_ref00:=(eq_ref0 b):(((eq (fofType->Prop)) b) b)
% Found (eq_ref0 b) as proof of (((eq (fofType->Prop)) b) (f x1))
% Found ((eq_ref (fofType->Prop)) b) as proof of (((eq (fofType->Prop)) b) (f x1))
% Found ((eq_ref (fofType->Prop)) b) as proof of (((eq (fofType->Prop)) b) (f x1))
% Found ((eq_ref (fofType->Prop)) b) as proof of (((eq (fofType->Prop)) b) (f x1))
% Found eta_expansion_dep000:=(eta_expansion_dep00 (x0 (g x1))):(((eq (fofType->Prop)) (x0 (g x1))) (fun (x:fofType)=> ((x0 (g x1)) x)))
% Found (eta_expansion_dep00 (x0 (g x1))) as proof of (((eq (fofType->Prop)) (x0 (g x1))) b)
% Found ((eta_expansion_dep0 (fun (x3:fofType)=> Prop)) (x0 (g x1))) as proof of (((eq (fofType->Prop)) (x0 (g x1))) b)
% Found (((eta_expansion_dep fofType) (fun (x3:fofType)=> Prop)) (x0 (g x1))) as proof of (((eq (fofType->Prop)) (x0 (g x1))) b)
% Found (((eta_expansion_dep fofType) (fun (x3:fofType)=> Prop)) (x0 (g x1))) as proof of (((eq (fofType->Prop)) (x0 (g x1))) b)
% Found (((eta_expansion_dep fofType) (fun (x3:fofType)=> Prop)) (x0 (g x1))) as proof of (((eq (fofType->Prop)) (x0 (g x1))) b)
% Found eq_ref00:=(eq_ref0 (x0 (g x1))):(((eq (fofType->Prop)) (x0 (g x1))) (x0 (g x1)))
% Found (eq_ref0 (x0 (g x1))) as proof of (((eq (fofType->Prop)) (x0 (g x1))) b)
% Found ((eq_ref (fofType->Prop)) (x0 (g x1))) as proof of (((eq (fofType->Prop)) (x0 (g x1))) b)
% Found ((eq_ref (fofType->Prop)) (x0 (g x1))) as proof of (((eq (fofType->Prop)) (x0 (g x1))) b)
% Found ((eq_ref (fofType->Prop)) (x0 (g x1))) as proof of (((eq (fofType->Prop)) (x0 (g x1))) b)
% Found ((eq_trans00000 ((eq_ref (fofType->Prop)) (x0 (g x1)))) ((eq_ref (fofType->Prop)) b)) as proof of ((P (x0 (g x1)))->(P (f x1)))
% Found ((eq_trans00000 ((eq_ref (fofType->Prop)) (x0 (g x1)))) ((eq_ref (fofType->Prop)) b)) as proof of ((P (x0 (g x1)))->(P (f x1)))
% Found (((fun (x2:(((eq (fofType->Prop)) (x0 (g x1))) b)) (x3:(((eq (fofType->Prop)) b) (f x1)))=> (((eq_trans0000 x2) x3) P)) ((eq_ref (fofType->Prop)) (x0 (g x1)))) ((eq_ref (fofType->Prop)) b)) as proof of ((P (x0 (g x1)))->(P (f x1)))
% Found (((fun (x2:(((eq (fofType->Prop)) (x0 (g x1))) b)) (x3:(((eq (fofType->Prop)) b) (f x1)))=> ((((eq_trans000 (f x1)) x2) x3) P)) ((eq_ref (fofType->Prop)) (x0 (g x1)))) ((eq_ref (fofType->Prop)) b)) as proof of ((P (x0 (g x1)))->(P (f x1)))
% Found (((fun (x2:(((eq (fofType->Prop)) (x0 (g x1))) (f x1))) (x3:(((eq (fofType->Prop)) (f x1)) (f x1)))=> (((((eq_trans00 (f x1)) (f x1)) x2) x3) P)) ((eq_ref (fofType->Prop)) (x0 (g x1)))) ((eq_ref (fofType->Prop)) (f x1))) as proof of ((P (x0 (g x1)))->(P (f x1)))
% Found (((fun (x2:(((eq (fofType->Prop)) (x0 (g x1))) (f x1))) (x3:(((eq (fofType->Prop)) (f x1)) (f x1)))=> ((((((eq_trans0 (x0 (g x1))) (f x1)) (f x1)) x2) x3) P)) ((eq_ref (fofType->Prop)) (x0 (g x1)))) ((eq_ref (fofType->Prop)) (f x1))) as proof of ((P (x0 (g x1)))->(P (f x1)))
% Found (((fun (x2:(((eq (fofType->Prop)) (x0 (g x1))) (f x1))) (x3:(((eq (fofType->Prop)) (f x1)) (f x1)))=> (((((((eq_trans (fofType->Prop)) (x0 (g x1))) (f x1)) (f x1)) x2) x3) P)) ((eq_ref (fofType->Prop)) (x0 (g x1)))) ((eq_ref (fofType->Prop)) (f x1))) as proof of ((P (x0 (g x1)))->(P (f x1)))
% Found (fun (P:((fofType->Prop)->Prop))=> (((fun (x2:(((eq (fofType->Prop)) (x0 (g x1))) (f x1))) (x3:(((eq (fofType->Prop)) (f x1)) (f x1)))=> (((((((eq_trans (fofType->Prop)) (x0 (g x1))) (f x1)) (f x1)) x2) x3) P)) ((eq_ref (fofType->Prop)) (x0 (g x1)))) ((eq_ref (fofType->Prop)) (f x1)))) as proof of ((P (x0 (g x1)))->(P (f x1)))
% Found eq_ref00:=(eq_ref0 b):(((eq (fofType->Prop)) b) b)
% Found (eq_ref0 b) as proof of (((eq (fofType->Prop)) b) (f x1))
% Found ((eq_ref (fofType->Prop)) b) as proof of (((eq (fofType->Prop)) b) (f x1))
% Found ((eq_ref (fofType->Prop)) b) as proof of (((eq (fofType->Prop)) b) (f x1))
% Found ((eq_ref (fofType->Prop)) b) as proof of (((eq (fofType->Prop)) b) (f x1))
% Found eta_expansion_dep000:=(eta_expansion_dep00 (x0 (g x1))):(((eq (fofType->Prop)) (x0 (g x1))) (fun (x:fofType)=> ((x0 (g x1)) x)))
% Found (eta_expansion_dep00 (x0 (g x1))) as proof of (((eq (fofType->Prop)) (x0 (g x1))) b)
% Found ((eta_expansion_dep0 (fun (x3:fofType)=> Prop)) (x0 (g x1))) as proof of (((eq (fofType->Prop)) (x0 (g x1))) b)
% Found (((eta_expansion_dep fofType) (fun (x3:fofType)=> Prop)) (x0 (g x1))) as proof of (((eq (fofType->Prop)) (x0 (g x1))) b)
% Found (((eta_expansion_dep fofType) (fun (x3:fofType)=> Prop)) (x0 (g x1))) as proof of (((eq (fofType->Prop)) (x0 (g x1))) b)
% Found (((eta_expansion_dep fofType) (fun (x3:fofType)=> Prop)) (x0 (g x1))) as proof of (((eq (fofType->Prop)) (x0 (g x1))) b)
% Found eq_ref00:=(eq_ref0 (x0 (g x1))):(((eq (fofType->Prop)) (x0 (g x1))) (x0 (g x1)))
% Found (eq_ref0 (x0 (g x1))) as proof of (((eq (fofType->Prop)) (x0 (g x1))) b)
% Found ((eq_ref (fofType->Prop)) (x0 (g x1))) as proof of (((eq (fofType->Prop)) (x0 (g x1))) b)
% Found ((eq_ref (fofType->Prop)) (x0 (g x1))) as proof of (((eq (fofType->Prop)) (x0 (g x1))) b)
% Found ((eq_ref (fofType->Prop)) (x0 (g x1))) as proof of (((eq (fofType->Prop)) (x0 (g x1))) b)
% Found (((eq_trans00000 ((eq_ref (fofType->Prop)) (x0 (g x1)))) ((eq_ref (fofType->Prop)) b)) (((eq_ref (fofType->Prop)) (x0 (g x1))) P)) as proof of ((P (x0 (g x1)))->(P (f x1)))
% Found (((eq_trans00000 ((eq_ref (fofType->Prop)) (x0 (g x1)))) ((eq_ref (fofType->Prop)) b)) (((eq_ref (fofType->Prop)) (x0 (g x1))) P)) as proof of ((P (x0 (g x1)))->(P (f x1)))
% Found ((((fun (x2:(((eq (fofType->Prop)) (x0 (g x1))) b)) (x3:(((eq (fofType->Prop)) b) (f x1)))=> (((eq_trans0000 x2) x3) (fun (x5:(fofType->Prop))=> ((P (x0 (g x1)))->(P x5))))) ((eq_ref (fofType->Prop)) (x0 (g x1)))) ((eq_ref (fofType->Prop)) b)) (((eq_ref (fofType->Prop)) (x0 (g x1))) P)) as proof of ((P (x0 (g x1)))->(P (f x1)))
% Found ((((fun (x2:(((eq (fofType->Prop)) (x0 (g x1))) b)) (x3:(((eq (fofType->Prop)) b) (f x1)))=> ((((eq_trans000 (f x1)) x2) x3) (fun (x5:(fofType->Prop))=> ((P (x0 (g x1)))->(P x5))))) ((eq_ref (fofType->Prop)) (x0 (g x1)))) ((eq_ref (fofType->Prop)) b)) (((eq_ref (fofType->Prop)) (x0 (g x1))) P)) as proof of ((P (x0 (g x1)))->(P (f x1)))
% Found ((((fun (x2:(((eq (fofType->Prop)) (x0 (g x1))) (f x1))) (x3:(((eq (fofType->Prop)) (f x1)) (f x1)))=> (((((eq_trans00 (f x1)) (f x1)) x2) x3) (fun (x5:(fofType->Prop))=> ((P (x0 (g x1)))->(P x5))))) ((eq_ref (fofType->Prop)) (x0 (g x1)))) ((eq_ref (fofType->Prop)) (f x1))) (((eq_ref (fofType->Prop)) (x0 (g x1))) P)) as proof of ((P (x0 (g x1)))->(P (f x1)))
% Found ((((fun (x2:(((eq (fofType->Prop)) (x0 (g x1))) (f x1))) (x3:(((eq (fofType->Prop)) (f x1)) (f x1)))=> ((((((eq_trans0 (x0 (g x1))) (f x1)) (f x1)) x2) x3) (fun (x5:(fofType->Prop))=> ((P (x0 (g x1)))->(P x5))))) ((eq_ref (fofType->Prop)) (x0 (g x1)))) ((eq_ref (fofType->Prop)) (f x1))) (((eq_ref (fofType->Prop)) (x0 (g x1))) P)) as proof of ((P (x0 (g x1)))->(P (f x1)))
% Found ((((fun (x2:(((eq (fofType->Prop)) (x0 (g x1))) (f x1))) (x3:(((eq (fofType->Prop)) (f x1)) (f x1)))=> (((((((eq_trans (fofType->Prop)) (x0 (g x1))) (f x1)) (f x1)) x2) x3) (fun (x5:(fofType->Prop))=> ((P (x0 (g x1)))->(P x5))))) ((eq_ref (fofType->Prop)) (x0 (g x1)))) ((eq_ref (fofType->Prop)) (f x1))) (((eq_ref (fofType->Prop)) (x0 (g x1))) P)) as proof of ((P (x0 (g x1)))->(P (f x1)))
% Found (fun (P:((fofType->Prop)->Prop))=> ((((fun (x2:(((eq (fofType->Prop)) (x0 (g x1))) (f x1))) (x3:(((eq (fofType->Prop)) (f x1)) (f x1)))=> (((((((eq_trans (fofType->Prop)) (x0 (g x1))) (f x1)) (f x1)) x2) x3) (fun (x5:(fofType->Prop))=> ((P (x0 (g x1)))->(P x5))))) ((eq_ref (fofType->Prop)) (x0 (g x1)))) ((eq_ref (fofType->Prop)) (f x1))) (((eq_ref (fofType->Prop)) (x0 (g x1))) P))) as proof of ((P (x0 (g x1)))->(P (f x1)))
% Found eq_ref00:=(eq_ref0 b):(((eq (fofType->Prop)) b) b)
% Found (eq_ref0 b) as proof of (((eq (fofType->Prop)) b) (f x1))
% Found ((eq_ref (fofType->Prop)) b) as proof of (((eq (fofType->Prop)) b) (f x1))
% Found ((eq_ref (fofType->Prop)) b) as proof of (((eq (fofType->Prop)) b) (f x1))
% Found ((eq_ref (fofType->Prop)) b) as proof of (((eq (fofType->Prop)) b) (f x1))
% Found eta_expansion_dep000:=(eta_expansion_dep00 (x0 (g x1))):(((eq (fofType->Prop)) (x0 (g x1))) (fun (x:fofType)=> ((x0 (g x1)) x)))
% Found (eta_expansion_dep00 (x0 (g x1))) as proof of (((eq (fofType->Prop)) (x0 (g x1))) b)
% Found ((eta_expansion_dep0 (fun (x3:fofType)=> Prop)) (x0 (g x1))) as proof of (((eq (fofType->Prop)) (x0 (g x1))) b)
% Found (((eta_expansion_dep fofType) (fun (x3:fofType)=> Prop)) (x0 (g x1))) as proof of (((eq (fofType->Prop)) (x0 (g x1))) b)
% Found (((eta_expansion_dep fofType) (fun (x3:fofType)=> Prop)) (x0 (g x1))) as proof of (((eq (fofType->Prop)) (x0 (g x1))) b)
% Found (((eta_expansion_dep fofType) (fun (x3:fofType)=> Prop)) (x0 (g x1))) as proof of (((eq (fofType->Prop)) (x0 (g x1))) b)
% Found eq_ref00:=(eq_ref0 (x0 (g x1))):(((eq (fofType->Prop)) (x0 (g x1))) (x0 (g x1)))
% Found (eq_ref0 (x0 (g x1))) as proof of (((eq (fofType->Prop)) (x0 (g x1))) b)
% Found ((eq_ref (fofType->Prop)) (x0 (g x1))) as proof of (((eq (fofType->Prop)) (x0 (g x1))) b)
% Found ((eq_ref (fofType->Prop)) (x0 (g x1))) as proof of (((eq (fofType->Prop)) (x0 (g x1))) b)
% Found ((eq_ref (fofType->Prop)) (x0 (g x1))) as proof of (((eq (fofType->Prop)) (x0 (g x1))) b)
% Found (((eq_trans00000 ((eq_ref (fofType->Prop)) (x0 (g x1)))) ((eq_ref (fofType->Prop)) b)) (((eq_ref (fofType->Prop)) (x0 (g x1))) P)) as proof of ((P (x0 (g x1)))->(P (f x1)))
% Found (((eq_trans00000 ((eq_ref (fofType->Prop)) (x0 (g x1)))) ((eq_ref (fofType->Prop)) b)) (((eq_ref (fofType->Prop)) (x0 (g x1))) P)) as proof of ((P (x0 (g x1)))->(P (f x1)))
% Found ((((fun (x2:(((eq (fofType->Prop)) (x0 (g x1))) b)) (x3:(((eq (fofType->Prop)) b) (f x1)))=> (((eq_trans0000 x2) x3) (fun (x5:(fofType->Prop))=> ((P (x0 (g x1)))->(P x5))))) ((eq_ref (fofType->Prop)) (x0 (g x1)))) ((eq_ref (fofType->Prop)) b)) (((eq_ref (fofType->Prop)) (x0 (g x1))) P)) as proof of ((P (x0 (g x1)))->(P (f x1)))
% Found ((((fun (x2:(((eq (fofType->Prop)) (x0 (g x1))) b)) (x3:(((eq (fofType->Prop)) b) (f x1)))=> ((((eq_trans000 (f x1)) x2) x3) (fun (x5:(fofType->Prop))=> ((P (x0 (g x1)))->(P x5))))) ((eq_ref (fofType->Prop)) (x0 (g x1)))) ((eq_ref (fofType->Prop)) b)) (((eq_ref (fofType->Prop)) (x0 (g x1))) P)) as proof of ((P (x0 (g x1)))->(P (f x1)))
% Found ((((fun (x2:(((eq (fofType->Prop)) (x0 (g x1))) (f x1))) (x3:(((eq (fofType->Prop)) (f x1)) (f x1)))=> (((((eq_trans00 (f x1)) (f x1)) x2) x3) (fun (x5:(fofType->Prop))=> ((P (x0 (g x1)))->(P x5))))) ((eq_ref (fofType->Prop)) (x0 (g x1)))) ((eq_ref (fofType->Prop)) (f x1))) (((eq_ref (fofType->Prop)) (x0 (g x1))) P)) as proof of ((P (x0 (g x1)))->(P (f x1)))
% Found ((((fun (x2:(((eq (fofType->Prop)) (x0 (g x1))) (f x1))) (x3:(((eq (fofType->Prop)) (f x1)) (f x1)))=> ((((((eq_trans0 (x0 (g x1))) (f x1)) (f x1)) x2) x3) (fun (x5:(fofType->Prop))=> ((P (x0 (g x1)))->(P x5))))) ((eq_ref (fofType->Prop)) (x0 (g x1)))) ((eq_ref (fofType->Prop)) (f x1))) (((eq_ref (fofType->Prop)) (x0 (g x1))) P)) as proof of ((P (x0 (g x1)))->(P (f x1)))
% Found ((((fun (x2:(((eq (fofType->Prop)) (x0 (g x1))) (f x1))) (x3:(((eq (fofType->Prop)) (f x1)) (f x1)))=> (((((((eq_trans (fofType->Prop)) (x0 (g x1))) (f x1)) (f x1)) x2) x3) (fun (x5:(fofType->Prop))=> ((P (x0 (g x1)))->(P x5))))) ((eq_ref (fofType->Prop)) (x0 (g x1)))) ((eq_ref (fofType->Prop)) (f x1))) (((eq_ref (fofType->Prop)) (x0 (g x1))) P)) as proof of ((P (x0 (g x1)))->(P (f x1)))
% Found (fun (P:((fofType->Prop)->Prop))=> ((((fun (x2:(((eq (fofType->Prop)) (x0 (g x1))) (f x1))) (x3:(((eq (fofType->Prop)) (f x1)) (f x1)))=> (((((((eq_trans (fofType->Prop)) (x0 (g x1))) (f x1)) (f x1)) x2) x3) (fun (x5:(fofType->Prop))=> ((P (x0 (g x1)))->(P x5))))) ((eq_ref (fofType->Prop)) (x0 (g x1)))) ((eq_ref (fofType->Prop)) (f x1))) (((eq_ref (fofType->Prop)) (x0 (g x1))) P))) as proof of ((P (x0 (g x1)))->(P (f x1)))
% Found eq_ref00:=(eq_ref0 b):(((eq (fofType->Prop)) b) b)
% Found (eq_ref0 b) as proof of (((eq (fofType->Prop)) b) (f x1))
% Found ((eq_ref (fofType->Prop)) b) as proof of (((eq (fofType->Prop)) b) (f x1))
% Found ((eq_ref (fofType->Prop)) b) as proof of (((eq (fofType->Prop)) b) (f x1))
% Found ((eq_ref (fofType->Prop)) b) as proof of (((eq (fofType->Prop)) b) (f x1))
% Found eta_expansion_dep000:=(eta_expansion_dep00 (x0 (g x1))):(((eq (fofType->Prop)) (x0 (g x1))) (fun (x:fofType)=> ((x0 (g x1)) x)))
% Found (eta_expansion_dep00 (x0 (g x1))) as proof of (((eq (fofType->Prop)) (x0 (g x1))) b)
% Found ((eta_expansion_dep0 (fun (x3:fofType)=> Prop)) (x0 (g x1))) as proof of (((eq (fofType->Prop)) (x0 (g x1))) b)
% Found (((eta_expansion_dep fofType) (fun (x3:fofType)=> Prop)) (x0 (g x1))) as proof of (((eq (fofType->Prop)) (x0 (g x1))) b)
% Found (((eta_expansion_dep fofType) (fun (x3:fofType)=> Prop)) (x0 (g x1))) as proof of (((eq (fofType->Prop)) (x0 (g x1))) b)
% Found (((eta_expansion_dep fofType) (fun (x3:fofType)=> Prop)) (x0 (g x1))) as proof of (((eq (fofType->Prop)) (x0 (g x1))) b)
% Found eq_ref00:=(eq_ref0 (x0 (g x1))):(((eq (fofType->Prop)) (x0 (g x1))) (x0 (g x1)))
% Found (eq_ref0 (x0 (g x1))) as proof of (((eq (fofType->Prop)) (x0 (g x1))) b)
% Found ((eq_ref (fofType->Prop)) (x0 (g x1))) as proof of (((eq (fofType->Prop)) (x0 (g x1))) b)
% Found ((eq_ref (fofType->Prop)) (x0 (g x1))) as proof of (((eq (fofType->Prop)) (x0 (g x1))) b)
% Found ((eq_ref (fofType->Prop)) (x0 (g x1))) as proof of (((eq (fofType->Prop)) (x0 (g x1))) b)
% Found ((eq_trans00000 ((eq_ref (fofType->Prop)) (x0 (g x1)))) ((eq_ref (fofType->Prop)) b)) as proof of ((P (x0 (g x1)))->(P (f x1)))
% Found ((eq_trans00000 ((eq_ref (fofType->Prop)) (x0 (g x1)))) ((eq_ref (fofType->Prop)) b)) as proof of ((P (x0 (g x1)))->(P (f x1)))
% Found (((fun (x2:(((eq (fofType->Prop)) (x0 (g x1))) b)) (x3:(((eq (fofType->Prop)) b) (f x1)))=> (((eq_trans0000 x2) x3) P)) ((eq_ref (fofType->Prop)) (x0 (g x1)))) ((eq_ref (fofType->Prop)) b)) as proof of ((P (x0 (g x1)))->(P (f x1)))
% Found (((fun (x2:(((eq (fofType->Prop)) (x0 (g x1))) b)) (x3:(((eq (fofType->Prop)) b) (f x1)))=> ((((eq_trans000 (f x1)) x2) x3) P)) ((eq_ref (fofType->Prop)) (x0 (g x1)))) ((eq_ref (fofType->Prop)) b)) as proof of ((P (x0 (g x1)))->(P (f x1)))
% Found (((fun (x2:(((eq (fofType->Prop)) (x0 (g x1))) (f x1))) (x3:(((eq (fofType->Prop)) (f x1)) (f x1)))=> (((((eq_trans00 (f x1)) (f x1)) x2) x3) P)) ((eq_ref (fofType->Prop)) (x0 (g x1)))) ((eq_ref (fofType->Prop)) (f x1))) as proof of ((P (x0 (g x1)))->(P (f x1)))
% Found (((fun (x2:(((eq (fofType->Prop)) (x0 (g x1))) (f x1))) (x3:(((eq (fofType->Prop)) (f x1)) (f x1)))=> ((((((eq_trans0 (x0 (g x1))) (f x1)) (f x1)) x2) x3) P)) ((eq_ref (fofType->Prop)) (x0 (g x1)))) ((eq_ref (fofType->Prop)) (f x1))) as proof of ((P (x0 (g x1)))->(P (f x1)))
% Found (((fun (x2:(((eq (fofType->Prop)) (x0 (g x1))) (f x1))) (x3:(((eq (fofType->Prop)) (f x1)) (f x1)))=> (((((((eq_trans (fofType->Prop)) (x0 (g x1))) (f x1)) (f x1)) x2) x3) P)) ((eq_ref (fofType->Prop)) (x0 (g x1)))) ((eq_ref (fofType->Prop)) (f x1))) as proof of ((P (x0 (g x1)))->(P (f x1)))
% Found (fun (P:((fofType->Prop)->Prop))=> (((fun (x2:(((eq (fofType->Prop)) (x0 (g x1))) (f x1))) (x3:(((eq (fofType->Prop)) (f x1)) (f x1)))=> (((((((eq_trans (fofType->Prop)) (x0 (g x1))) (f x1)) (f x1)) x2) x3) P)) ((eq_ref (fofType->Prop)) (x0 (g x1)))) ((eq_ref (fofType->Prop)) (f x1)))) as proof of ((P (x0 (g x1)))->(P (f x1)))
% Found eq_ref00:=(eq_ref0 b):(((eq (fofType->Prop)) b) b)
% Found (eq_ref0 b) as proof of (((eq (fofType->Prop)) b) (f x1))
% Found ((eq_ref (fofType->Prop)) b) as proof of (((eq (fofType->Prop)) b) (f x1))
% Found ((eq_ref (fofType->Prop)) b) as proof of (((eq (fofType->Prop)) b) (f x1))
% Found ((eq_ref (fofType->Prop)) b) as proof of (((eq (fofType->Prop)) b) (f x1))
% Found eta_expansion_dep000:=(eta_expansion_dep00 (x0 (g x1))):(((eq (fofType->Prop)) (x0 (g x1))) (fun (x:fofType)=> ((x0 (g x1)) x)))
% Found (eta_expansion_dep00 (x0 (g x1))) as proof of (((eq (fofType->Prop)) (x0 (g x1))) b)
% Found ((eta_expansion_dep0 (fun (x3:fofType)=> Prop)) (x0 (g x1))) as proof of (((eq (fofType->Prop)) (x0 (g x1))) b)
% Found (((eta_expansion_dep fofType) (fun (x3:fofType)=> Prop)) (x0 (g x1))) as proof of (((eq (fofType->Prop)) (x0 (g x1))) b)
% Found (((eta_expansion_dep fofType) (fun (x3:fofType)=> Prop)) (x0 (g x1))) as proof of (((eq (fofType->Prop)) (x0 (g x1))) b)
% Found (((eta_expansion_dep fofType) (fun (x3:fofType)=> Prop)) (x0 (g x1))) as proof of (((eq (fofType->Prop)) (x0 (g x1))) b)
% Found eq_ref00:=(eq_ref0 (x0 (g x1))):(((eq (fofType->Prop)) (x0 (g x1))) (x0 (g x1)))
% Found (eq_ref0 (x0 (g x1))) as proof of (((eq (fofType->Prop)) (x0 (g x1))) b)
% Found ((eq_ref (fofType->Prop)) (x0 (g x1))) as proof of (((eq (fofType->Prop)) (x0 (g x1))) b)
% Found ((eq_ref (fofType->Prop)) (x0 (g x1))) as proof of (((eq (fofType->Prop)) (x0 (g x1))) b)
% Found ((eq_ref (fofType->Prop)) (x0 (g x1))) as proof of (((eq (fofType->Prop)) (x0 (g x1))) b)
% Found ((eq_trans0000 ((eq_ref (fofType->Prop)) (x0 (g x1)))) ((eq_ref (fofType->Prop)) b)) as proof of (((eq (fofType->Prop)) (x0 (g x1))) (f x1))
% Found (((eq_trans000 (f x1)) ((eq_ref (fofType->Prop)) (x0 (g x1)))) ((eq_ref (fofType->Prop)) b)) as proof of (((eq (fofType->Prop)) (x0 (g x1))) (f x1))
% Found ((((eq_trans00 (f x1)) (f x1)) ((eq_ref (fofType->Prop)) (x0 (g x1)))) ((eq_ref (fofType->Prop)) (f x1))) as proof of (((eq (fofType->Prop)) (x0 (g x1))) (f x1))
% Found (((((eq_trans0 (x0 (g x1))) (f x1)) (f x1)) ((eq_ref (fofType->Prop)) (x0 (g x1)))) ((eq_ref (fofType->Prop)) (f x1))) as proof of (((eq (fofType->Prop)) (x0 (g x1))) (f x1))
% Found ((((((eq_trans (fofType->Prop)) (x0 (g x1))) (f x1)) (f x1)) ((eq_ref (fofType->Prop)) (x0 (g x1)))) ((eq_ref (fofType->Prop)) (f x1))) as proof of (((eq (fofType->Prop)) (x0 (g x1))) (f x1))
% Found eq_ref00:=(eq_ref0 b):(((eq (fofType->Prop)) b) b)
% Found (eq_ref0 b) as proof of (((eq (fofType->Prop)) b) (f x1))
% Found ((eq_ref (fofType->Prop)) b) as proof of (((eq (fofType->Prop)) b) (f x1))
% Found ((eq_ref (fofType->Prop)) b) as proof of (((eq (fofType->Prop)) b) (f x1))
% Found ((eq_ref (fofType->Prop)) b) as proof of (((eq (fofType->Prop)) b) (f x1))
% Found eta_expansion_dep000:=(eta_expansion_dep00 (x0 (g x1))):(((eq (fofType->Prop)) (x0 (g x1))) (fun (x:fofType)=> ((x0 (g x1)) x)))
% Found (eta_expansion_dep00 (x0 (g x1))) as proof of (((eq (fofType->Prop)) (x0 (g x1))) b)
% Found ((eta_expansion_dep0 (fun (x3:fofType)=> Prop)) (x0 (g x1))) as proof of (((eq (fofType->Prop)) (x0 (g x1))) b)
% Found (((eta_expansion_dep fofType) (fun (x3:fofType)=> Prop)) (x0 (g x1))) as proof of (((eq (fofType->Prop)) (x0 (g x1))) b)
% Found (((eta_expansion_dep fofType) (fun (x3:fofType)=> Prop)) (x0 (g x1))) as proof of (((eq (fofType->Prop)) (x0 (g x1))) b)
% Found (((eta_expansion_dep fofType) (fun (x3:fofType)=> Prop)) (x0 (g x1))) as proof of (((eq (fofType->Prop)) (x0 (g x1))) b)
% Found eq_ref00:=(eq_ref0 (x0 (g x1))):(((eq (fofType->Prop)) (x0 (g x1))) (x0 (g x1)))
% Found (eq_ref0 (x0 (g x1))) as proof of (((eq (fofType->Prop)) (x0 (g x1))) b)
% Found ((eq_ref (fofType->Prop)) (x0 (g x1))) as proof of (((eq (fofType->Prop)) (x0 (g x1))) b)
% Found ((eq_ref (fofType->Prop)) (x0 (g x1))) as proof of (((eq (fofType->Prop)) (x0 (g x1))) b)
% Found ((eq_ref (fofType->Prop)) (x0 (g x1))) as proof of (((eq (fofType->Prop)) (x0 (g x1))) b)
% Found ((eq_trans0000 ((eq_ref (fofType->Prop)) (x0 (g x1)))) ((eq_ref (fofType->Prop)) b)) as proof of (((eq (fofType->Prop)) (x0 (g x1))) (f x1))
% Found (((eq_trans000 (f x1)) ((eq_ref (fofType->Prop)) (x0 (g x1)))) ((eq_ref (fofType->Prop)) b)) as proof of (((eq (fofType->Prop)) (x0 (g x1))) (f x1))
% Found ((((eq_trans00 (f x1)) (f x1)) ((eq_ref (fofType->Prop)) (x0 (g x1)))) ((eq_ref (fofType->Prop)) (f x1))) as proof of (((eq (fofType->Prop)) (x0 (g x1))) (f x1))
% Found (((((eq_trans0 (x0 (g x1))) (f x1)) (f x1)) ((eq_ref (fofType->Prop)) (x0 (g x1)))) ((eq_ref (fofType->Prop)) (f x1))) as proof of (((eq (fofType->Prop)) (x0 (g x1))) (f x1))
% Found ((((((eq_trans (fofType->Prop)) (x0 (g x1))) (f x1)) (f x1)) ((eq_ref (fofType->Prop)) (x0 (g x1)))) ((eq_ref (fofType->Prop)) (f x1))) as proof of (((eq (fofType->Prop)) (x0 (g x1))) (f x1))
% Found eq_ref00:=(eq_ref0 b):(((eq (fofType->Prop)) b) b)
% Found (eq_ref0 b) as proof of (((eq (fofType->Prop)) b) (f x1))
% Found ((eq_ref (fofType->Prop)) b) as proof of (((eq (fofType->Prop)) b) (f x1))
% Found ((eq_ref (fofType->Prop)) b) as proof of (((eq (fofType->Prop)) b) (f x1))
% Found ((eq_ref (fofType->Prop)) b) as proof of (((eq (fofType->Prop)) b) (f x1))
% Found eta_expansion_dep000:=(eta_expansion_dep00 (x0 (g x1))):(((eq (fofType->Prop)) (x0 (g x1))) (fun (x:fofType)=> ((x0 (g x1)) x)))
% Found (eta_expansion_dep00 (x0 (g x1))) as proof of (((eq (fofType->Prop)) (x0 (g x1))) b)
% Found ((eta_expansion_dep0 (fun (x3:fofType)=> Prop)) (x0 (g x1))) as proof of (((eq (fofType->Prop)) (x0 (g x1))) b)
% Found (((eta_expansion_dep fofType) (fun (x3:fofType)=> Prop)) (x0 (g x1))) as proof of (((eq (fofType->Prop)) (x0 (g x1))) b)
% Found (((eta_expansion_dep fofType) (fun (x3:fofType)=> Prop)) (x0 (g x1))) as proof of (((eq (fofType->Prop)) (x0 (g x1))) b)
% Found (((eta_expansion_dep fofType) (fun (x3:fofType)=> Prop)) (x0 (g x1))) as proof of (((eq (fofType->Prop)) (x0 (g x1))) b)
% Found eq_ref00:=(eq_ref0 (x0 (g x1))):(((eq (fofType->Prop)) (x0 (g x1))) (x0 (g x1)))
% Found (eq_ref0 (x0 (g x1))) as proof of (((eq (fofType->Prop)) (x0 (g x1))) b)
% Found ((eq_ref (fofType->Prop)) (x0 (g x1))) as proof of (((eq (fofType->Prop)) (x0 (g x1))) b)
% Found ((eq_ref (fofType->Prop)) (x0 (g x1))) as proof of (((eq (fofType->Prop)) (x0 (g x1))) b)
% Found ((eq_ref (fofType->Prop)) (x0 (g x1))) as proof of (((eq (fofType->Prop)) (x0 (g x1))) b)
% Found ((eq_trans0000 ((eq_ref (fofType->Prop)) (x0 (g x1)))) ((eq_ref (fofType->Prop)) b)) as proof of (((eq (fofType->Prop)) (x0 (g x1))) (f x1))
% Found (((eq_trans000 (f x1)) ((eq_ref (fofType->Prop)) (x0 (g x1)))) ((eq_ref (fofType->Prop)) b)) as proof of (((eq (fofType->Prop)) (x0 (g x1))) (f x1))
% Found ((((eq_trans00 (f x1)) (f x1)) ((eq_ref (fofType->Prop)) (x0 (g x1)))) ((eq_ref (fofType->Prop)) (f x1))) as proof of (((eq (fofType->Prop)) (x0 (g x1))) (f x1))
% Found (((((eq_trans0 (x0 (g x1))) (f x1)) (f x1)) ((eq_ref (fofType->Prop)) (x0 (g x1)))) ((eq_ref (fofType->Prop)) (f x1))) as proof of (((eq (fofType->Prop)) (x0 (g x1))) (f x1))
% Found ((((((eq_trans (fofType->Prop)) (x0 (g x1))) (f x1)) (f x1)) ((eq_ref (fofType->Prop)) (x0 (g x1)))) ((eq_ref (fofType->Prop)) (f x1))) as proof of (((eq (fofType->Prop)) (x0 (g x1))) (f x1))
% Found eq_ref00:=(eq_ref0 b):(((eq (fofType->Prop)) b) b)
% Found (eq_ref0 b) as proof of (((eq (fofType->Prop)) b) (f x1))
% Found ((eq_ref (fofType->Prop)) b) as proof of (((eq (fofType->Prop)) b) (f x1))
% Found ((eq_ref (fofType->Prop)) b) as proof of (((eq (fofType->Prop)) b) (f x1))
% Found ((eq_ref (fofType->Prop)) b) as proof of (((eq (fofType->Prop)) b) (f x1))
% Found eta_expansion_dep000:=(eta_expansion_dep00 (x0 (g x1))):(((eq (fofType->Prop)) (x0 (g x1))) (fun (x:fofType)=> ((x0 (g x1)) x)))
% Found (eta_expansion_dep00 (x0 (g x1))) as proof of (((eq (fofType->Prop)) (x0 (g x1))) b)
% Found ((eta_expansion_dep0 (fun (x3:fofType)=> Prop)) (x0 (g x1))) as proof of (((eq (fofType->Prop)) (x0 (g x1))) b)
% Found (((eta_expansion_dep fofType) (fun (x3:fofType)=> Prop)) (x0 (g x1))) as proof of (((eq (fofType->Prop)) (x0 (g x1))) b)
% Found (((eta_expansion_dep fofType) (fun (x3:fofType)=> Prop)) (x0 (g x1))) as proof of (((eq (fofType->Prop)) (x0 (g x1))) b)
% Found (((eta_expansion_dep fofType) (fun (x3:fofType)=> Prop)) (x0 (g x1))) as proof of (((eq (fofType->Prop)) (x0 (g x1))) b)
% Found eq_ref00:=(eq_ref0 (x0 (g x1))):(((eq (fofType->Prop)) (x0 (g x1))) (x0 (g x1)))
% Found (eq_ref0 (x0 (g x1))) as proof of (((eq (fofType->Prop)) (x0 (g x1))) b)
% Found ((eq_ref (fofType->Prop)) (x0 (g x1))) as proof of (((eq (fofType->Prop)) (x0 (g x1))) b)
% Found ((eq_ref (fofType->Prop)) (x0 (g x1))) as proof of (((eq (fofType->Prop)) (x0 (g x1))) b)
% Found ((eq_ref (fofType->Prop)) (x0 (g x1))) as proof of (((eq (fofType->Prop)) (x0 (g x1))) b)
% Found ((eq_trans0000 ((eq_ref (fofType->Prop)) (x0 (g x1)))) ((eq_ref (fofType->Prop)) b)) as proof of (((eq (fofType->Prop)) (x0 (g x1))) (f x1))
% Found (((eq_trans000 (f x1)) ((eq_ref (fofType->Prop)) (x0 (g x1)))) ((eq_ref (fofType->Prop)) b)) as proof of (((eq (fofType->Prop)) (x0 (g x1))) (f x1))
% Found ((((eq_trans00 (f x1)) (f x1)) ((eq_ref (fofType->Prop)) (x0 (g x1)))) ((eq_ref (fofType->Prop)) (f x1))) as proof of (((eq (fofType->Prop)) (x0 (g x1))) (f x1))
% Found (((((eq_trans0 (x0 (g x1))) (f x1)) (f x1)) ((eq_ref (fofType->Prop)) (x0 (g x1)))) ((eq_ref (fofType->Prop)) (f x1))) as proof of (((eq (fofType->Prop)) (x0 (g x1))) (f x1))
% Found ((((((eq_trans (fofType->Prop)) (x0 (g x1))) (f x1)) (f x1)) ((eq_ref (fofType->Prop)) (x0 (g x1)))) ((eq_ref (fofType->Prop)) (f x1))) as proof of (((eq (fofType->Prop)) (x0 (g x1))) (f x1))
% Found eq_ref000:=(eq_ref00 P1):((P1 f)->(P1 f))
% Found (eq_ref00 P1) as proof of (P2 f)
% Found ((eq_ref0 f) P1) as proof of (P2 f)
% Found (((eq_ref (fofType->(fofType->Prop))) f) P1) as proof of (P2 f)
% Found (((eq_ref (fofType->(fofType->Prop))) f) P1) as proof of (P2 f)
% Found eq_ref000:=(eq_ref00 P1):((P1 f)->(P1 f))
% Found (eq_ref00 P1) as proof of (P2 f)
% Found ((eq_ref0 f) P1) as proof of (P2 f)
% Found (((eq_ref (fofType->(fofType->Prop))) f) P1) as proof of (P2 f)
% Found (((eq_ref (fofType->(fofType->Prop))) f) P1) as proof of (P2 f)
% Found eq_ref00:=(eq_ref0 (g Xx)):(((eq (fofType->Prop)) (g Xx)) (g Xx))
% Found (eq_ref0 (g Xx)) as proof of (((eq (fofType->Prop)) (g Xx)) (g x1))
% Found ((eq_ref (fofType->Prop)) (g Xx)) as proof of (((eq (fofType->Prop)) (g Xx)) (g x1))
% Found ((eq_ref (fofType->Prop)) (g Xx)) as proof of (((eq (fofType->Prop)) (g Xx)) (g x1))
% Found ((eq_ref (fofType->Prop)) (g Xx)) as proof of (((eq (fofType->Prop)) (g Xx)) (g x1))
% Found eq_ref000:=(eq_ref00 P):((P ((x0 (g x1)) y))->(P ((x0 (g x1)) y)))
% Found (eq_ref00 P) as proof of (P0 (f Xx))
% Found ((eq_ref0 ((x0 (g x1)) y)) P) as proof of (P0 (f Xx))
% Found (((eq_ref Prop) ((x0 (g x1)) y)) P) as proof of (P0 (f Xx))
% Found (((eq_ref Prop) ((x0 (g x1)) y)) P) as proof of (P0 (f Xx))
% Found (((eq_ref Prop) ((x0 (g x1)) y)) P) as proof of (P0 (f Xx))
% Found ((x200 ((eq_ref (fofType->Prop)) (g Xx))) (((eq_ref Prop) ((x0 (g x1)) y)) P)) as proof of ((P ((x0 (g x1)) y))->(P ((f x1) y)))
% Found ((x200 ((eq_ref (fofType->Prop)) (g Xx))) (((eq_ref Prop) ((x0 (g x1)) y)) P)) as proof of ((P ((x0 (g x1)) y))->(P ((f x1) y)))
% Found (((fun (x3:(((eq (fofType->Prop)) (g Xx)) (g x1)))=> ((x20 x3) (fun (x5:(fofType->Prop))=> ((P ((x0 (g x1)) y))->(P (x5 y)))))) ((eq_ref (fofType->Prop)) (g Xx))) (((eq_ref Prop) ((x0 (g x1)) y)) P)) as proof of ((P ((x0 (g x1)) y))->(P ((f x1) y)))
% Found (((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> (((x2 x1) x3) (fun (x5:(fofType->Prop))=> ((P ((x0 (g x1)) y))->(P (x5 y)))))) ((eq_ref (fofType->Prop)) (g x1))) (((eq_ref Prop) ((x0 (g x1)) y)) P)) as proof of ((P ((x0 (g x1)) y))->(P ((f x1) y)))
% Found (((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> ((((fun (Xx:fofType)=> ((x Xx) x1)) x1) x3) (fun (x5:(fofType->Prop))=> ((P ((x0 (g x1)) y))->(P (x5 y)))))) ((eq_ref (fofType->Prop)) (g x1))) (((eq_ref Prop) ((x0 (g x1)) y)) P)) as proof of ((P ((x0 (g x1)) y))->(P ((f x1) y)))
% Found (fun (P:(Prop->Prop))=> (((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> ((((fun (Xx:fofType)=> ((x Xx) x1)) x1) x3) (fun (x5:(fofType->Prop))=> ((P ((x0 (g x1)) y))->(P (x5 y)))))) ((eq_ref (fofType->Prop)) (g x1))) (((eq_ref Prop) ((x0 (g x1)) y)) P))) as proof of ((P ((x0 (g x1)) y))->(P ((f x1) y)))
% Found (fun (y:fofType) (P:(Prop->Prop))=> (((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> ((((fun (Xx:fofType)=> ((x Xx) x1)) x1) x3) (fun (x5:(fofType->Prop))=> ((P ((x0 (g x1)) y))->(P (x5 y)))))) ((eq_ref (fofType->Prop)) (g x1))) (((eq_ref Prop) ((x0 (g x1)) y)) P))) as proof of (((eq Prop) ((x0 (g x1)) y)) ((f x1) y))
% Found eq_ref00:=(eq_ref0 ((x0 (g x1)) y)):(((eq Prop) ((x0 (g x1)) y)) ((x0 (g x1)) y))
% Found (eq_ref0 ((x0 (g x1)) y)) as proof of (forall (P:(Prop->Prop)), ((P ((x0 (g x1)) y))->(P ((f x1) y))))
% Found ((eq_ref Prop) ((x0 (g x1)) y)) as proof of (forall (P:(Prop->Prop)), ((P ((x0 (g x1)) y))->(P ((f x1) y))))
% Found ((eq_ref Prop) ((x0 (g x1)) y)) as proof of (forall (P:(Prop->Prop)), ((P ((x0 (g x1)) y))->(P ((f x1) y))))
% Found ((eq_ref Prop) ((x0 (g x1)) y)) as proof of (forall (P:(Prop->Prop)), ((P ((x0 (g x1)) y))->(P ((f x1) y))))
% Found (fun (y:fofType)=> ((eq_ref Prop) ((x0 (g x1)) y))) as proof of (((eq Prop) ((x0 (g x1)) y)) ((f x1) y))
% Found eq_ref00:=(eq_ref0 (g x1)):(((eq (fofType->Prop)) (g x1)) (g x1))
% Found (eq_ref0 (g x1)) as proof of (((eq (fofType->Prop)) (g x1)) (g x1))
% Found ((eq_ref (fofType->Prop)) (g x1)) as proof of (((eq (fofType->Prop)) (g x1)) (g x1))
% Found ((eq_ref (fofType->Prop)) (g x1)) as proof of (((eq (fofType->Prop)) (g x1)) (g x1))
% Found (x200 ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P1 ((x0 (g x1)) y))->(P1 ((f x1) y)))
% Found (x200 ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P1 ((x0 (g x1)) y))->(P1 ((f x1) y)))
% Found ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> ((x20 x3) (fun (x4:(fofType->Prop))=> (P1 ((x0 (g x1)) y))))) ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P1 ((x0 (g x1)) y))->(P1 ((f x1) y)))
% Found ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> (((x2 x1) x3) (fun (x4:(fofType->Prop))=> (P1 ((x0 (g x1)) y))))) ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P1 ((x0 (g x1)) y))->(P1 ((f x1) y)))
% Found ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> ((((fun (Xx:fofType)=> ((x Xx) x1)) x1) x3) (fun (x4:(fofType->Prop))=> (P1 ((x0 (g x1)) y))))) ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P1 ((x0 (g x1)) y))->(P1 ((f x1) y)))
% Found ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> ((((fun (Xx:fofType)=> ((x Xx) x1)) x1) x3) (fun (x4:(fofType->Prop))=> (P1 ((x0 (g x1)) y))))) ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P1 ((x0 (g x1)) y))->(P1 ((f x1) y)))
% Found (fun (P1:(Prop->Prop))=> ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> ((((fun (Xx:fofType)=> ((x Xx) x1)) x1) x3) (fun (x4:(fofType->Prop))=> (P1 ((x0 (g x1)) y))))) ((eq_ref (fofType->Prop)) (g x1)))) as proof of ((P1 ((x0 (g x1)) y))->(P1 ((f x1) y)))
% Found (fun (y:fofType) (P1:(Prop->Prop))=> ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> ((((fun (Xx:fofType)=> ((x Xx) x1)) x1) x3) (fun (x4:(fofType->Prop))=> (P1 ((x0 (g x1)) y))))) ((eq_ref (fofType->Prop)) (g x1)))) as proof of (((eq Prop) ((x0 (g x1)) y)) ((f x1) y))
% Found eq_ref00:=(eq_ref0 (g x1)):(((eq (fofType->Prop)) (g x1)) (g x1))
% Found (eq_ref0 (g x1)) as proof of (((eq (fofType->Prop)) (g x1)) (g x1))
% Found ((eq_ref (fofType->Prop)) (g x1)) as proof of (((eq (fofType->Prop)) (g x1)) (g x1))
% Found ((eq_ref (fofType->Prop)) (g x1)) as proof of (((eq (fofType->Prop)) (g x1)) (g x1))
% Found (x200 ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P1 ((x0 (g x1)) y))->(P1 ((f x1) y)))
% Found (x200 ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P1 ((x0 (g x1)) y))->(P1 ((f x1) y)))
% Found ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> ((x20 x3) (fun (x4:(fofType->Prop))=> (P1 (x4 y))))) ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P1 ((x0 (g x1)) y))->(P1 ((f x1) y)))
% Found ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> (((x2 x1) x3) (fun (x4:(fofType->Prop))=> (P1 (x4 y))))) ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P1 ((x0 (g x1)) y))->(P1 ((f x1) y)))
% Found ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> ((((fun (Xx:fofType)=> ((x Xx) x1)) x1) x3) (fun (x4:(fofType->Prop))=> (P1 (x4 y))))) ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P1 ((x0 (g x1)) y))->(P1 ((f x1) y)))
% Found ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> ((((fun (Xx:fofType)=> ((x Xx) x1)) x1) x3) (fun (x4:(fofType->Prop))=> (P1 (x4 y))))) ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P1 ((x0 (g x1)) y))->(P1 ((f x1) y)))
% Found (fun (P1:(Prop->Prop))=> ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> ((((fun (Xx:fofType)=> ((x Xx) x1)) x1) x3) (fun (x4:(fofType->Prop))=> (P1 (x4 y))))) ((eq_ref (fofType->Prop)) (g x1)))) as proof of ((P1 ((x0 (g x1)) y))->(P1 ((f x1) y)))
% Found (fun (y:fofType) (P1:(Prop->Prop))=> ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> ((((fun (Xx:fofType)=> ((x Xx) x1)) x1) x3) (fun (x4:(fofType->Prop))=> (P1 (x4 y))))) ((eq_ref (fofType->Prop)) (g x1)))) as proof of (((eq Prop) ((x0 (g x1)) y)) ((f x1) y))
% Found eq_ref00:=(eq_ref0 (g x1)):(((eq (fofType->Prop)) (g x1)) (g x1))
% Found (eq_ref0 (g x1)) as proof of (((eq (fofType->Prop)) (g x1)) (g x1))
% Found ((eq_ref (fofType->Prop)) (g x1)) as proof of (((eq (fofType->Prop)) (g x1)) (g x1))
% Found ((eq_ref (fofType->Prop)) (g x1)) as proof of (((eq (fofType->Prop)) (g x1)) (g x1))
% Found (x200 ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P1 ((x0 (g x1)) y))->(P1 ((f x1) y)))
% Found (x200 ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P1 ((x0 (g x1)) y))->(P1 ((f x1) y)))
% Found ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> ((x20 x3) (fun (x4:(fofType->Prop))=> (P1 ((x0 (g x1)) y))))) ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P1 ((x0 (g x1)) y))->(P1 ((f x1) y)))
% Found ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> (((x2 x1) x3) (fun (x4:(fofType->Prop))=> (P1 ((x0 (g x1)) y))))) ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P1 ((x0 (g x1)) y))->(P1 ((f x1) y)))
% Found ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> ((((fun (Xx:fofType)=> ((x Xx) x1)) x1) x3) (fun (x4:(fofType->Prop))=> (P1 ((x0 (g x1)) y))))) ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P1 ((x0 (g x1)) y))->(P1 ((f x1) y)))
% Found ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> ((((fun (Xx:fofType)=> ((x Xx) x1)) x1) x3) (fun (x4:(fofType->Prop))=> (P1 ((x0 (g x1)) y))))) ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P1 ((x0 (g x1)) y))->(P1 ((f x1) y)))
% Found (fun (P1:(Prop->Prop))=> ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> ((((fun (Xx:fofType)=> ((x Xx) x1)) x1) x3) (fun (x4:(fofType->Prop))=> (P1 ((x0 (g x1)) y))))) ((eq_ref (fofType->Prop)) (g x1)))) as proof of ((P1 ((x0 (g x1)) y))->(P1 ((f x1) y)))
% Found (fun (y:fofType) (P1:(Prop->Prop))=> ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> ((((fun (Xx:fofType)=> ((x Xx) x1)) x1) x3) (fun (x4:(fofType->Prop))=> (P1 ((x0 (g x1)) y))))) ((eq_ref (fofType->Prop)) (g x1)))) as proof of (((eq Prop) ((x0 (g x1)) y)) ((f x1) y))
% Found eq_ref00:=(eq_ref0 (g x1)):(((eq (fofType->Prop)) (g x1)) (g x1))
% Found (eq_ref0 (g x1)) as proof of (((eq (fofType->Prop)) (g x1)) (g x1))
% Found ((eq_ref (fofType->Prop)) (g x1)) as proof of (((eq (fofType->Prop)) (g x1)) (g x1))
% Found ((eq_ref (fofType->Prop)) (g x1)) as proof of (((eq (fofType->Prop)) (g x1)) (g x1))
% Found (x200 ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P1 ((x0 (g x1)) y))->(P1 ((f x1) y)))
% Found (x200 ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P1 ((x0 (g x1)) y))->(P1 ((f x1) y)))
% Found ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> ((x20 x3) (fun (x4:(fofType->Prop))=> (P1 (x4 y))))) ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P1 ((x0 (g x1)) y))->(P1 ((f x1) y)))
% Found ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> (((x2 x1) x3) (fun (x4:(fofType->Prop))=> (P1 (x4 y))))) ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P1 ((x0 (g x1)) y))->(P1 ((f x1) y)))
% Found ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> ((((fun (Xx:fofType)=> ((x Xx) x1)) x1) x3) (fun (x4:(fofType->Prop))=> (P1 (x4 y))))) ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P1 ((x0 (g x1)) y))->(P1 ((f x1) y)))
% Found ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> ((((fun (Xx:fofType)=> ((x Xx) x1)) x1) x3) (fun (x4:(fofType->Prop))=> (P1 (x4 y))))) ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P1 ((x0 (g x1)) y))->(P1 ((f x1) y)))
% Found (fun (P1:(Prop->Prop))=> ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> ((((fun (Xx:fofType)=> ((x Xx) x1)) x1) x3) (fun (x4:(fofType->Prop))=> (P1 (x4 y))))) ((eq_ref (fofType->Prop)) (g x1)))) as proof of ((P1 ((x0 (g x1)) y))->(P1 ((f x1) y)))
% Found (fun (y:fofType) (P1:(Prop->Prop))=> ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> ((((fun (Xx:fofType)=> ((x Xx) x1)) x1) x3) (fun (x4:(fofType->Prop))=> (P1 (x4 y))))) ((eq_ref (fofType->Prop)) (g x1)))) as proof of (((eq Prop) ((x0 (g x1)) y)) ((f x1) y))
% Found eq_ref00:=(eq_ref0 (g x1)):(((eq (fofType->Prop)) (g x1)) (g x1))
% Found (eq_ref0 (g x1)) as proof of (((eq (fofType->Prop)) (g x1)) (g x1))
% Found ((eq_ref (fofType->Prop)) (g x1)) as proof of (((eq (fofType->Prop)) (g x1)) (g x1))
% Found ((eq_ref (fofType->Prop)) (g x1)) as proof of (((eq (fofType->Prop)) (g x1)) (g x1))
% Found (x200 ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P1 ((x0 (g x1)) y))->(P1 ((f x1) y)))
% Found (x200 ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P1 ((x0 (g x1)) y))->(P1 ((f x1) y)))
% Found ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> ((x20 x3) (fun (x4:(fofType->Prop))=> (P1 ((x0 (g x1)) y))))) ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P1 ((x0 (g x1)) y))->(P1 ((f x1) y)))
% Found ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> (((x2 x1) x3) (fun (x4:(fofType->Prop))=> (P1 ((x0 (g x1)) y))))) ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P1 ((x0 (g x1)) y))->(P1 ((f x1) y)))
% Found ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> (((x2 x1) x3) (fun (x4:(fofType->Prop))=> (P1 ((x0 (g x1)) y))))) ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P1 ((x0 (g x1)) y))->(P1 ((f x1) y)))
% Found ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> ((((fun (Xx:fofType)=> ((x Xx) x1)) x1) x3) (fun (x4:(fofType->Prop))=> (P1 ((x0 (g x1)) y))))) ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P1 ((x0 (g x1)) y))->(P1 ((f x1) y)))
% Found (fun (P1:(Prop->Prop))=> ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> ((((fun (Xx:fofType)=> ((x Xx) x1)) x1) x3) (fun (x4:(fofType->Prop))=> (P1 ((x0 (g x1)) y))))) ((eq_ref (fofType->Prop)) (g x1)))) as proof of ((P1 ((x0 (g x1)) y))->(P1 ((f x1) y)))
% Found (fun (y:fofType) (P1:(Prop->Prop))=> ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> ((((fun (Xx:fofType)=> ((x Xx) x1)) x1) x3) (fun (x4:(fofType->Prop))=> (P1 ((x0 (g x1)) y))))) ((eq_ref (fofType->Prop)) (g x1)))) as proof of (((eq Prop) ((x0 (g x1)) y)) ((f x1) y))
% Found eq_ref00:=(eq_ref0 (g x1)):(((eq (fofType->Prop)) (g x1)) (g x1))
% Found (eq_ref0 (g x1)) as proof of (((eq (fofType->Prop)) (g x1)) (g x1))
% Found ((eq_ref (fofType->Prop)) (g x1)) as proof of (((eq (fofType->Prop)) (g x1)) (g x1))
% Found ((eq_ref (fofType->Prop)) (g x1)) as proof of (((eq (fofType->Prop)) (g x1)) (g x1))
% Found (x200 ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P1 ((x0 (g x1)) y))->(P1 ((f x1) y)))
% Found (x200 ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P1 ((x0 (g x1)) y))->(P1 ((f x1) y)))
% Found ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> ((x20 x3) (fun (x4:(fofType->Prop))=> (P1 (x4 y))))) ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P1 ((x0 (g x1)) y))->(P1 ((f x1) y)))
% Found ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> (((x2 x1) x3) (fun (x4:(fofType->Prop))=> (P1 (x4 y))))) ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P1 ((x0 (g x1)) y))->(P1 ((f x1) y)))
% Found ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> (((x2 x1) x3) (fun (x4:(fofType->Prop))=> (P1 (x4 y))))) ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P1 ((x0 (g x1)) y))->(P1 ((f x1) y)))
% Found ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> ((((fun (Xx:fofType)=> ((x Xx) x1)) x1) x3) (fun (x4:(fofType->Prop))=> (P1 (x4 y))))) ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P1 ((x0 (g x1)) y))->(P1 ((f x1) y)))
% Found (fun (P1:(Prop->Prop))=> ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> ((((fun (Xx:fofType)=> ((x Xx) x1)) x1) x3) (fun (x4:(fofType->Prop))=> (P1 (x4 y))))) ((eq_ref (fofType->Prop)) (g x1)))) as proof of ((P1 ((x0 (g x1)) y))->(P1 ((f x1) y)))
% Found (fun (y:fofType) (P1:(Prop->Prop))=> ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> ((((fun (Xx:fofType)=> ((x Xx) x1)) x1) x3) (fun (x4:(fofType->Prop))=> (P1 (x4 y))))) ((eq_ref (fofType->Prop)) (g x1)))) as proof of (((eq Prop) ((x0 (g x1)) y)) ((f x1) y))
% Found eq_ref00:=(eq_ref0 (g x1)):(((eq (fofType->Prop)) (g x1)) (g x1))
% Found (eq_ref0 (g x1)) as proof of (((eq (fofType->Prop)) (g x1)) (g x1))
% Found ((eq_ref (fofType->Prop)) (g x1)) as proof of (((eq (fofType->Prop)) (g x1)) (g x1))
% Found ((eq_ref (fofType->Prop)) (g x1)) as proof of (((eq (fofType->Prop)) (g x1)) (g x1))
% Found (x200 ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P1 ((x0 (g x1)) y))->(P1 ((f x1) y)))
% Found (x200 ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P1 ((x0 (g x1)) y))->(P1 ((f x1) y)))
% Found ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> ((x20 x3) (fun (x4:(fofType->Prop))=> (P1 ((x0 (g x1)) y))))) ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P1 ((x0 (g x1)) y))->(P1 ((f x1) y)))
% Found ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> (((x2 x1) x3) (fun (x4:(fofType->Prop))=> (P1 ((x0 (g x1)) y))))) ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P1 ((x0 (g x1)) y))->(P1 ((f x1) y)))
% Found ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> (((x2 x1) x3) (fun (x4:(fofType->Prop))=> (P1 ((x0 (g x1)) y))))) ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P1 ((x0 (g x1)) y))->(P1 ((f x1) y)))
% Found ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> ((((fun (Xx:fofType)=> ((x Xx) x1)) x1) x3) (fun (x4:(fofType->Prop))=> (P1 ((x0 (g x1)) y))))) ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P1 ((x0 (g x1)) y))->(P1 ((f x1) y)))
% Found (fun (P1:(Prop->Prop))=> ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> ((((fun (Xx:fofType)=> ((x Xx) x1)) x1) x3) (fun (x4:(fofType->Prop))=> (P1 ((x0 (g x1)) y))))) ((eq_ref (fofType->Prop)) (g x1)))) as proof of ((P1 ((x0 (g x1)) y))->(P1 ((f x1) y)))
% Found (fun (y:fofType) (P1:(Prop->Prop))=> ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> ((((fun (Xx:fofType)=> ((x Xx) x1)) x1) x3) (fun (x4:(fofType->Prop))=> (P1 ((x0 (g x1)) y))))) ((eq_ref (fofType->Prop)) (g x1)))) as proof of (((eq Prop) ((x0 (g x1)) y)) ((f x1) y))
% Found eq_ref00:=(eq_ref0 (g x1)):(((eq (fofType->Prop)) (g x1)) (g x1))
% Found (eq_ref0 (g x1)) as proof of (((eq (fofType->Prop)) (g x1)) (g x1))
% Found ((eq_ref (fofType->Prop)) (g x1)) as proof of (((eq (fofType->Prop)) (g x1)) (g x1))
% Found ((eq_ref (fofType->Prop)) (g x1)) as proof of (((eq (fofType->Prop)) (g x1)) (g x1))
% Found (x200 ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P1 ((x0 (g x1)) y))->(P1 ((f x1) y)))
% Found (x200 ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P1 ((x0 (g x1)) y))->(P1 ((f x1) y)))
% Found ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> ((x20 x3) (fun (x4:(fofType->Prop))=> (P1 (x4 y))))) ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P1 ((x0 (g x1)) y))->(P1 ((f x1) y)))
% Found ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> (((x2 x1) x3) (fun (x4:(fofType->Prop))=> (P1 (x4 y))))) ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P1 ((x0 (g x1)) y))->(P1 ((f x1) y)))
% Found ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> (((x2 x1) x3) (fun (x4:(fofType->Prop))=> (P1 (x4 y))))) ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P1 ((x0 (g x1)) y))->(P1 ((f x1) y)))
% Found ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> ((((fun (Xx:fofType)=> ((x Xx) x1)) x1) x3) (fun (x4:(fofType->Prop))=> (P1 (x4 y))))) ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P1 ((x0 (g x1)) y))->(P1 ((f x1) y)))
% Found (fun (P1:(Prop->Prop))=> ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> ((((fun (Xx:fofType)=> ((x Xx) x1)) x1) x3) (fun (x4:(fofType->Prop))=> (P1 (x4 y))))) ((eq_ref (fofType->Prop)) (g x1)))) as proof of ((P1 ((x0 (g x1)) y))->(P1 ((f x1) y)))
% Found (fun (y:fofType) (P1:(Prop->Prop))=> ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> ((((fun (Xx:fofType)=> ((x Xx) x1)) x1) x3) (fun (x4:(fofType->Prop))=> (P1 (x4 y))))) ((eq_ref (fofType->Prop)) (g x1)))) as proof of (((eq Prop) ((x0 (g x1)) y)) ((f x1) y))
% Found eq_ref000:=(eq_ref00 P1):((P1 (x0 (g x1)))->(P1 (x0 (g x1))))
% Found (eq_ref00 P1) as proof of (P2 (x0 (g x1)))
% Found ((eq_ref0 (x0 (g x1))) P1) as proof of (P2 (x0 (g x1)))
% Found (((eq_ref (fofType->Prop)) (x0 (g x1))) P1) as proof of (P2 (x0 (g x1)))
% Found (((eq_ref (fofType->Prop)) (x0 (g x1))) P1) as proof of (P2 (x0 (g x1)))
% Found eq_ref000:=(eq_ref00 P1):((P1 (x0 (g x1)))->(P1 (x0 (g x1))))
% Found (eq_ref00 P1) as proof of (P2 (x0 (g x1)))
% Found ((eq_ref0 (x0 (g x1))) P1) as proof of (P2 (x0 (g x1)))
% Found (((eq_ref (fofType->Prop)) (x0 (g x1))) P1) as proof of (P2 (x0 (g x1)))
% Found (((eq_ref (fofType->Prop)) (x0 (g x1))) P1) as proof of (P2 (x0 (g x1)))
% Found eq_ref000:=(eq_ref00 P1):((P1 (x0 (g x1)))->(P1 (x0 (g x1))))
% Found (eq_ref00 P1) as proof of (P2 (x0 (g x1)))
% Found ((eq_ref0 (x0 (g x1))) P1) as proof of (P2 (x0 (g x1)))
% Found (((eq_ref (fofType->Prop)) (x0 (g x1))) P1) as proof of (P2 (x0 (g x1)))
% Found (((eq_ref (fofType->Prop)) (x0 (g x1))) P1) as proof of (P2 (x0 (g x1)))
% Found eq_ref000:=(eq_ref00 P1):((P1 (x0 (g x1)))->(P1 (x0 (g x1))))
% Found (eq_ref00 P1) as proof of (P2 (x0 (g x1)))
% Found ((eq_ref0 (x0 (g x1))) P1) as proof of (P2 (x0 (g x1)))
% Found (((eq_ref (fofType->Prop)) (x0 (g x1))) P1) as proof of (P2 (x0 (g x1)))
% Found (((eq_ref (fofType->Prop)) (x0 (g x1))) P1) as proof of (P2 (x0 (g x1)))
% Found eq_ref00:=(eq_ref0 (g Xx)):(((eq (fofType->Prop)) (g Xx)) (g Xx))
% Found (eq_ref0 (g Xx)) as proof of (((eq (fofType->Prop)) (g Xx)) (g x1))
% Found ((eq_ref (fofType->Prop)) (g Xx)) as proof of (((eq (fofType->Prop)) (g Xx)) (g x1))
% Found ((eq_ref (fofType->Prop)) (g Xx)) as proof of (((eq (fofType->Prop)) (g Xx)) (g x1))
% Found ((eq_ref (fofType->Prop)) (g Xx)) as proof of (((eq (fofType->Prop)) (g Xx)) (g x1))
% Found eq_ref000:=(eq_ref00 P):((P ((x0 (g x1)) y))->(P ((x0 (g x1)) y)))
% Found (eq_ref00 P) as proof of (P0 (f Xx))
% Found ((eq_ref0 ((x0 (g x1)) y)) P) as proof of (P0 (f Xx))
% Found (((eq_ref Prop) ((x0 (g x1)) y)) P) as proof of (P0 (f Xx))
% Found (((eq_ref Prop) ((x0 (g x1)) y)) P) as proof of (P0 (f Xx))
% Found ((x200 ((eq_ref (fofType->Prop)) (g Xx))) (((eq_ref Prop) ((x0 (g x1)) y)) P)) as proof of ((P ((x0 (g x1)) y))->(P ((f x1) y)))
% Found ((x200 ((eq_ref (fofType->Prop)) (g Xx))) (((eq_ref Prop) ((x0 (g x1)) y)) P)) as proof of ((P ((x0 (g x1)) y))->(P ((f x1) y)))
% Found (((fun (x3:(((eq (fofType->Prop)) (g Xx)) (g x1)))=> ((x20 x3) (fun (x5:(fofType->Prop))=> ((P ((x0 (g x1)) y))->(P (x5 y)))))) ((eq_ref (fofType->Prop)) (g Xx))) (((eq_ref Prop) ((x0 (g x1)) y)) P)) as proof of ((P ((x0 (g x1)) y))->(P ((f x1) y)))
% Found (((fun (x3:(((eq (fofType->Prop)) (g Xx)) (g x1)))=> ((x20 x3) (fun (x5:(fofType->Prop))=> ((P ((x0 (g x1)) y))->(P (x5 y)))))) ((eq_ref (fofType->Prop)) (g Xx))) (((eq_ref Prop) ((x0 (g x1)) y)) P)) as proof of ((P ((x0 (g x1)) y))->(P ((f x1) y)))
% Found (((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> (((x2 x1) x3) (fun (x5:(fofType->Prop))=> ((P ((x0 (g x1)) y))->(P (x5 y)))))) ((eq_ref (fofType->Prop)) (g x1))) (((eq_ref Prop) ((x0 (g x1)) y)) P)) as proof of ((P ((x0 (g x1)) y))->(P ((f x1) y)))
% Found (((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> ((((fun (Xx:fofType)=> ((x Xx) x1)) x1) x3) (fun (x5:(fofType->Prop))=> ((P ((x0 (g x1)) y))->(P (x5 y)))))) ((eq_ref (fofType->Prop)) (g x1))) (((eq_ref Prop) ((x0 (g x1)) y)) P)) as proof of ((P ((x0 (g x1)) y))->(P ((f x1) y)))
% Found (fun (P:(Prop->Prop))=> (((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> ((((fun (Xx:fofType)=> ((x Xx) x1)) x1) x3) (fun (x5:(fofType->Prop))=> ((P ((x0 (g x1)) y))->(P (x5 y)))))) ((eq_ref (fofType->Prop)) (g x1))) (((eq_ref Prop) ((x0 (g x1)) y)) P))) as proof of ((P ((x0 (g x1)) y))->(P ((f x1) y)))
% Found (fun (y:fofType) (P:(Prop->Prop))=> (((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> ((((fun (Xx:fofType)=> ((x Xx) x1)) x1) x3) (fun (x5:(fofType->Prop))=> ((P ((x0 (g x1)) y))->(P (x5 y)))))) ((eq_ref (fofType->Prop)) (g x1))) (((eq_ref Prop) ((x0 (g x1)) y)) P))) as proof of (((eq Prop) ((x0 (g x1)) y)) ((f x1) y))
% Found eq_ref00:=(eq_ref0 (g Xx)):(((eq (fofType->Prop)) (g Xx)) (g Xx))
% Found (eq_ref0 (g Xx)) as proof of (((eq (fofType->Prop)) (g Xx)) (g x1))
% Found ((eq_ref (fofType->Prop)) (g Xx)) as proof of (((eq (fofType->Prop)) (g Xx)) (g x1))
% Found ((eq_ref (fofType->Prop)) (g Xx)) as proof of (((eq (fofType->Prop)) (g Xx)) (g x1))
% Found ((eq_ref (fofType->Prop)) (g Xx)) as proof of (((eq (fofType->Prop)) (g Xx)) (g x1))
% Found eq_ref000:=(eq_ref00 P):((P ((x0 (g x1)) y))->(P ((x0 (g x1)) y)))
% Found (eq_ref00 P) as proof of (P0 (f Xx))
% Found ((eq_ref0 ((x0 (g x1)) y)) P) as proof of (P0 (f Xx))
% Found (((eq_ref Prop) ((x0 (g x1)) y)) P) as proof of (P0 (f Xx))
% Found (((eq_ref Prop) ((x0 (g x1)) y)) P) as proof of (P0 (f Xx))
% Found ((x200 ((eq_ref (fofType->Prop)) (g Xx))) (((eq_ref Prop) ((x0 (g x1)) y)) P)) as proof of ((P ((x0 (g x1)) y))->(P ((f x1) y)))
% Found ((x200 ((eq_ref (fofType->Prop)) (g Xx))) (((eq_ref Prop) ((x0 (g x1)) y)) P)) as proof of ((P ((x0 (g x1)) y))->(P ((f x1) y)))
% Found ((x200 ((eq_ref (fofType->Prop)) (g Xx))) (((eq_ref Prop) ((x0 (g x1)) y)) P)) as proof of ((P ((x0 (g x1)) y))->(P ((f x1) y)))
% Found (((fun (x3:(((eq (fofType->Prop)) (g Xx)) (g x1)))=> ((x20 x3) (fun (x5:(fofType->Prop))=> ((P ((x0 (g x1)) y))->(P (x5 y)))))) ((eq_ref (fofType->Prop)) (g Xx))) (((eq_ref Prop) ((x0 (g x1)) y)) P)) as proof of ((P ((x0 (g x1)) y))->(P ((f x1) y)))
% Found (((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> (((x2 x1) x3) (fun (x5:(fofType->Prop))=> ((P ((x0 (g x1)) y))->(P (x5 y)))))) ((eq_ref (fofType->Prop)) (g x1))) (((eq_ref Prop) ((x0 (g x1)) y)) P)) as proof of ((P ((x0 (g x1)) y))->(P ((f x1) y)))
% Found (((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> ((((fun (Xx:fofType)=> ((x Xx) x1)) x1) x3) (fun (x5:(fofType->Prop))=> ((P ((x0 (g x1)) y))->(P (x5 y)))))) ((eq_ref (fofType->Prop)) (g x1))) (((eq_ref Prop) ((x0 (g x1)) y)) P)) as proof of ((P ((x0 (g x1)) y))->(P ((f x1) y)))
% Found (fun (P:(Prop->Prop))=> (((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> ((((fun (Xx:fofType)=> ((x Xx) x1)) x1) x3) (fun (x5:(fofType->Prop))=> ((P ((x0 (g x1)) y))->(P (x5 y)))))) ((eq_ref (fofType->Prop)) (g x1))) (((eq_ref Prop) ((x0 (g x1)) y)) P))) as proof of ((P ((x0 (g x1)) y))->(P ((f x1) y)))
% Found (fun (y:fofType) (P:(Prop->Prop))=> (((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> ((((fun (Xx:fofType)=> ((x Xx) x1)) x1) x3) (fun (x5:(fofType->Prop))=> ((P ((x0 (g x1)) y))->(P (x5 y)))))) ((eq_ref (fofType->Prop)) (g x1))) (((eq_ref Prop) ((x0 (g x1)) y)) P))) as proof of (((eq Prop) ((x0 (g x1)) y)) ((f x1) y))
% Found eq_ref000:=(eq_ref00 P1):((P1 ((x0 (g x1)) y))->(P1 ((x0 (g x1)) y)))
% Found (eq_ref00 P1) as proof of ((P1 ((x0 (g x1)) y))->(P1 ((b x1) y)))
% Found ((eq_ref0 ((x0 (g x1)) y)) P1) as proof of ((P1 ((x0 (g x1)) y))->(P1 ((b x1) y)))
% Found (((eq_ref Prop) ((x0 (g x1)) y)) P1) as proof of ((P1 ((x0 (g x1)) y))->(P1 ((b x1) y)))
% Found (((eq_ref Prop) ((x0 (g x1)) y)) P1) as proof of ((P1 ((x0 (g x1)) y))->(P1 ((b x1) y)))
% Found (fun (P1:(Prop->Prop))=> (((eq_ref Prop) ((x0 (g x1)) y)) P1)) as proof of ((P1 ((x0 (g x1)) y))->(P1 ((b x1) y)))
% Found (fun (y:fofType) (P1:(Prop->Prop))=> (((eq_ref Prop) ((x0 (g x1)) y)) P1)) as proof of (((eq Prop) ((x0 (g x1)) y)) ((b x1) y))
% Found eq_ref000:=(eq_ref00 P1):((P1 ((x0 (g x1)) y))->(P1 ((x0 (g x1)) y)))
% Found (eq_ref00 P1) as proof of ((P1 ((x0 (g x1)) y))->(P1 ((b x1) y)))
% Found ((eq_ref0 ((x0 (g x1)) y)) P1) as proof of ((P1 ((x0 (g x1)) y))->(P1 ((b x1) y)))
% Found (((eq_ref Prop) ((x0 (g x1)) y)) P1) as proof of ((P1 ((x0 (g x1)) y))->(P1 ((b x1) y)))
% Found (((eq_ref Prop) ((x0 (g x1)) y)) P1) as proof of ((P1 ((x0 (g x1)) y))->(P1 ((b x1) y)))
% Found (fun (P1:(Prop->Prop))=> (((eq_ref Prop) ((x0 (g x1)) y)) P1)) as proof of ((P1 ((x0 (g x1)) y))->(P1 ((b x1) y)))
% Found (fun (y:fofType) (P1:(Prop->Prop))=> (((eq_ref Prop) ((x0 (g x1)) y)) P1)) as proof of (((eq Prop) ((x0 (g x1)) y)) ((b x1) y))
% Found eq_ref00:=(eq_ref0 ((x0 (g x1)) x2)):(((eq Prop) ((x0 (g x1)) x2)) ((x0 (g x1)) x2))
% Found (eq_ref0 ((x0 (g x1)) x2)) as proof of (((eq Prop) ((x0 (g x1)) x2)) ((f x1) x2))
% Found ((eq_ref Prop) ((x0 (g x1)) x2)) as proof of (((eq Prop) ((x0 (g x1)) x2)) ((f x1) x2))
% Found ((eq_ref Prop) ((x0 (g x1)) x2)) as proof of (((eq Prop) ((x0 (g x1)) x2)) ((f x1) x2))
% Found (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2))) as proof of (((eq Prop) ((x0 (g x1)) x2)) ((f x1) x2))
% Found (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2))) as proof of (forall (x:fofType), (((eq Prop) ((x0 (g x1)) x)) ((f x1) x)))
% Found ((functional_extensionality00000 (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2)))) (((eq_ref (fofType->Prop)) (x0 (g x1))) P1)) as proof of ((P1 (x0 (g x1)))->(P1 (f x1)))
% Found ((functional_extensionality00000 (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2)))) (((eq_ref (fofType->Prop)) (x0 (g x1))) P1)) as proof of ((P1 (x0 (g x1)))->(P1 (f x1)))
% Found (((fun (x2:(forall (x:fofType), (((eq Prop) ((x0 (g x1)) x)) ((f x1) x))))=> ((functional_extensionality0000 x2) (fun (x4:(fofType->Prop))=> ((P1 (x0 (g x1)))->(P1 x4))))) (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2)))) (((eq_ref (fofType->Prop)) (x0 (g x1))) P1)) as proof of ((P1 (x0 (g x1)))->(P1 (f x1)))
% Found (((fun (x2:(forall (x:fofType), (((eq Prop) ((x0 (g x1)) x)) ((f x1) x))))=> (((functional_extensionality000 (f x1)) x2) (fun (x4:(fofType->Prop))=> ((P1 (x0 (g x1)))->(P1 x4))))) (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2)))) (((eq_ref (fofType->Prop)) (x0 (g x1))) P1)) as proof of ((P1 (x0 (g x1)))->(P1 (f x1)))
% Found (((fun (x2:(forall (x:fofType), (((eq Prop) ((x0 (g x1)) x)) ((f x1) x))))=> ((((functional_extensionality00 (x0 (g x1))) (f x1)) x2) (fun (x4:(fofType->Prop))=> ((P1 (x0 (g x1)))->(P1 x4))))) (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2)))) (((eq_ref (fofType->Prop)) (x0 (g x1))) P1)) as proof of ((P1 (x0 (g x1)))->(P1 (f x1)))
% Found (((fun (x2:(forall (x:fofType), (((eq Prop) ((x0 (g x1)) x)) ((f x1) x))))=> (((((functional_extensionality0 Prop) (x0 (g x1))) (f x1)) x2) (fun (x4:(fofType->Prop))=> ((P1 (x0 (g x1)))->(P1 x4))))) (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2)))) (((eq_ref (fofType->Prop)) (x0 (g x1))) P1)) as proof of ((P1 (x0 (g x1)))->(P1 (f x1)))
% Found (((fun (x2:(forall (x:fofType), (((eq Prop) ((x0 (g x1)) x)) ((f x1) x))))=> ((((((functional_extensionality fofType) Prop) (x0 (g x1))) (f x1)) x2) (fun (x4:(fofType->Prop))=> ((P1 (x0 (g x1)))->(P1 x4))))) (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2)))) (((eq_ref (fofType->Prop)) (x0 (g x1))) P1)) as proof of ((P1 (x0 (g x1)))->(P1 (f x1)))
% Found (fun (P1:((fofType->Prop)->Prop))=> (((fun (x2:(forall (x:fofType), (((eq Prop) ((x0 (g x1)) x)) ((f x1) x))))=> ((((((functional_extensionality fofType) Prop) (x0 (g x1))) (f x1)) x2) (fun (x4:(fofType->Prop))=> ((P1 (x0 (g x1)))->(P1 x4))))) (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2)))) (((eq_ref (fofType->Prop)) (x0 (g x1))) P1))) as proof of ((P1 (x0 (g x1)))->(P1 (f x1)))
% Found eq_ref00:=(eq_ref0 ((x0 (g x1)) x2)):(((eq Prop) ((x0 (g x1)) x2)) ((x0 (g x1)) x2))
% Found (eq_ref0 ((x0 (g x1)) x2)) as proof of (((eq Prop) ((x0 (g x1)) x2)) ((f x1) x2))
% Found ((eq_ref Prop) ((x0 (g x1)) x2)) as proof of (((eq Prop) ((x0 (g x1)) x2)) ((f x1) x2))
% Found ((eq_ref Prop) ((x0 (g x1)) x2)) as proof of (((eq Prop) ((x0 (g x1)) x2)) ((f x1) x2))
% Found (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2))) as proof of (((eq Prop) ((x0 (g x1)) x2)) ((f x1) x2))
% Found (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2))) as proof of (forall (x:fofType), (((eq Prop) ((x0 (g x1)) x)) ((f x1) x)))
% Found (functional_extensionality00000 (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2)))) as proof of ((P1 (x0 (g x1)))->(P1 (f x1)))
% Found (functional_extensionality00000 (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2)))) as proof of ((P1 (x0 (g x1)))->(P1 (f x1)))
% Found ((fun (x2:(forall (x:fofType), (((eq Prop) ((x0 (g x1)) x)) ((f x1) x))))=> ((functional_extensionality0000 x2) P1)) (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2)))) as proof of ((P1 (x0 (g x1)))->(P1 (f x1)))
% Found ((fun (x2:(forall (x:fofType), (((eq Prop) ((x0 (g x1)) x)) ((f x1) x))))=> (((functional_extensionality000 (f x1)) x2) P1)) (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2)))) as proof of ((P1 (x0 (g x1)))->(P1 (f x1)))
% Found ((fun (x2:(forall (x:fofType), (((eq Prop) ((x0 (g x1)) x)) ((f x1) x))))=> ((((functional_extensionality00 (x0 (g x1))) (f x1)) x2) P1)) (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2)))) as proof of ((P1 (x0 (g x1)))->(P1 (f x1)))
% Found ((fun (x2:(forall (x:fofType), (((eq Prop) ((x0 (g x1)) x)) ((f x1) x))))=> (((((functional_extensionality0 Prop) (x0 (g x1))) (f x1)) x2) P1)) (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2)))) as proof of ((P1 (x0 (g x1)))->(P1 (f x1)))
% Found ((fun (x2:(forall (x:fofType), (((eq Prop) ((x0 (g x1)) x)) ((f x1) x))))=> ((((((functional_extensionality fofType) Prop) (x0 (g x1))) (f x1)) x2) P1)) (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2)))) as proof of ((P1 (x0 (g x1)))->(P1 (f x1)))
% Found (fun (P1:((fofType->Prop)->Prop))=> ((fun (x2:(forall (x:fofType), (((eq Prop) ((x0 (g x1)) x)) ((f x1) x))))=> ((((((functional_extensionality fofType) Prop) (x0 (g x1))) (f x1)) x2) P1)) (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2))))) as proof of ((P1 (x0 (g x1)))->(P1 (f x1)))
% Found eq_ref00:=(eq_ref0 ((x0 (g x1)) x2)):(((eq Prop) ((x0 (g x1)) x2)) ((x0 (g x1)) x2))
% Found (eq_ref0 ((x0 (g x1)) x2)) as proof of (((eq Prop) ((x0 (g x1)) x2)) ((f x1) x2))
% Found ((eq_ref Prop) ((x0 (g x1)) x2)) as proof of (((eq Prop) ((x0 (g x1)) x2)) ((f x1) x2))
% Found ((eq_ref Prop) ((x0 (g x1)) x2)) as proof of (((eq Prop) ((x0 (g x1)) x2)) ((f x1) x2))
% Found (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2))) as proof of (((eq Prop) ((x0 (g x1)) x2)) ((f x1) x2))
% Found (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2))) as proof of (forall (x:fofType), (((eq Prop) ((x0 (g x1)) x)) ((f x1) x)))
% Found (functional_extensionality_dep00000 (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2)))) as proof of ((P1 (x0 (g x1)))->(P1 (f x1)))
% Found (functional_extensionality_dep00000 (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2)))) as proof of ((P1 (x0 (g x1)))->(P1 (f x1)))
% Found ((fun (x2:(forall (x:fofType), (((eq Prop) ((x0 (g x1)) x)) ((f x1) x))))=> ((functional_extensionality_dep0000 x2) P1)) (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2)))) as proof of ((P1 (x0 (g x1)))->(P1 (f x1)))
% Found ((fun (x2:(forall (x:fofType), (((eq Prop) ((x0 (g x1)) x)) ((f x1) x))))=> (((functional_extensionality_dep000 (f x1)) x2) P1)) (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2)))) as proof of ((P1 (x0 (g x1)))->(P1 (f x1)))
% Found ((fun (x2:(forall (x:fofType), (((eq Prop) ((x0 (g x1)) x)) ((f x1) x))))=> ((((functional_extensionality_dep00 (x0 (g x1))) (f x1)) x2) P1)) (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2)))) as proof of ((P1 (x0 (g x1)))->(P1 (f x1)))
% Found ((fun (x2:(forall (x:fofType), (((eq Prop) ((x0 (g x1)) x)) ((f x1) x))))=> (((((functional_extensionality_dep0 (fun (x4:fofType)=> Prop)) (x0 (g x1))) (f x1)) x2) P1)) (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2)))) as proof of ((P1 (x0 (g x1)))->(P1 (f x1)))
% Found ((fun (x2:(forall (x:fofType), (((eq Prop) ((x0 (g x1)) x)) ((f x1) x))))=> ((((((functional_extensionality_dep fofType) (fun (x4:fofType)=> Prop)) (x0 (g x1))) (f x1)) x2) P1)) (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2)))) as proof of ((P1 (x0 (g x1)))->(P1 (f x1)))
% Found (fun (P1:((fofType->Prop)->Prop))=> ((fun (x2:(forall (x:fofType), (((eq Prop) ((x0 (g x1)) x)) ((f x1) x))))=> ((((((functional_extensionality_dep fofType) (fun (x4:fofType)=> Prop)) (x0 (g x1))) (f x1)) x2) P1)) (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2))))) as proof of ((P1 (x0 (g x1)))->(P1 (f x1)))
% Found eq_ref00:=(eq_ref0 ((x0 (g x1)) x2)):(((eq Prop) ((x0 (g x1)) x2)) ((x0 (g x1)) x2))
% Found (eq_ref0 ((x0 (g x1)) x2)) as proof of (((eq Prop) ((x0 (g x1)) x2)) ((f x1) x2))
% Found ((eq_ref Prop) ((x0 (g x1)) x2)) as proof of (((eq Prop) ((x0 (g x1)) x2)) ((f x1) x2))
% Found ((eq_ref Prop) ((x0 (g x1)) x2)) as proof of (((eq Prop) ((x0 (g x1)) x2)) ((f x1) x2))
% Found (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2))) as proof of (((eq Prop) ((x0 (g x1)) x2)) ((f x1) x2))
% Found (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2))) as proof of (forall (x:fofType), (((eq Prop) ((x0 (g x1)) x)) ((f x1) x)))
% Found ((functional_extensionality_dep00000 (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2)))) (((eq_ref (fofType->Prop)) (x0 (g x1))) P1)) as proof of ((P1 (x0 (g x1)))->(P1 (f x1)))
% Found ((functional_extensionality_dep00000 (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2)))) (((eq_ref (fofType->Prop)) (x0 (g x1))) P1)) as proof of ((P1 (x0 (g x1)))->(P1 (f x1)))
% Found (((fun (x2:(forall (x:fofType), (((eq Prop) ((x0 (g x1)) x)) ((f x1) x))))=> ((functional_extensionality_dep0000 x2) (fun (x4:(fofType->Prop))=> ((P1 (x0 (g x1)))->(P1 x4))))) (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2)))) (((eq_ref (fofType->Prop)) (x0 (g x1))) P1)) as proof of ((P1 (x0 (g x1)))->(P1 (f x1)))
% Found (((fun (x2:(forall (x:fofType), (((eq Prop) ((x0 (g x1)) x)) ((f x1) x))))=> (((functional_extensionality_dep000 (f x1)) x2) (fun (x4:(fofType->Prop))=> ((P1 (x0 (g x1)))->(P1 x4))))) (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2)))) (((eq_ref (fofType->Prop)) (x0 (g x1))) P1)) as proof of ((P1 (x0 (g x1)))->(P1 (f x1)))
% Found (((fun (x2:(forall (x:fofType), (((eq Prop) ((x0 (g x1)) x)) ((f x1) x))))=> ((((functional_extensionality_dep00 (x0 (g x1))) (f x1)) x2) (fun (x4:(fofType->Prop))=> ((P1 (x0 (g x1)))->(P1 x4))))) (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2)))) (((eq_ref (fofType->Prop)) (x0 (g x1))) P1)) as proof of ((P1 (x0 (g x1)))->(P1 (f x1)))
% Found (((fun (x2:(forall (x:fofType), (((eq Prop) ((x0 (g x1)) x)) ((f x1) x))))=> (((((functional_extensionality_dep0 (fun (x4:fofType)=> Prop)) (x0 (g x1))) (f x1)) x2) (fun (x4:(fofType->Prop))=> ((P1 (x0 (g x1)))->(P1 x4))))) (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2)))) (((eq_ref (fofType->Prop)) (x0 (g x1))) P1)) as proof of ((P1 (x0 (g x1)))->(P1 (f x1)))
% Found (((fun (x2:(forall (x:fofType), (((eq Prop) ((x0 (g x1)) x)) ((f x1) x))))=> ((((((functional_extensionality_dep fofType) (fun (x4:fofType)=> Prop)) (x0 (g x1))) (f x1)) x2) (fun (x4:(fofType->Prop))=> ((P1 (x0 (g x1)))->(P1 x4))))) (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2)))) (((eq_ref (fofType->Prop)) (x0 (g x1))) P1)) as proof of ((P1 (x0 (g x1)))->(P1 (f x1)))
% Found (fun (P1:((fofType->Prop)->Prop))=> (((fun (x2:(forall (x:fofType), (((eq Prop) ((x0 (g x1)) x)) ((f x1) x))))=> ((((((functional_extensionality_dep fofType) (fun (x4:fofType)=> Prop)) (x0 (g x1))) (f x1)) x2) (fun (x4:(fofType->Prop))=> ((P1 (x0 (g x1)))->(P1 x4))))) (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2)))) (((eq_ref (fofType->Prop)) (x0 (g x1))) P1))) as proof of ((P1 (x0 (g x1)))->(P1 (f x1)))
% Found eq_ref00:=(eq_ref0 ((x0 (g x1)) x2)):(((eq Prop) ((x0 (g x1)) x2)) ((x0 (g x1)) x2))
% Found (eq_ref0 ((x0 (g x1)) x2)) as proof of (((eq Prop) ((x0 (g x1)) x2)) ((f x1) x2))
% Found ((eq_ref Prop) ((x0 (g x1)) x2)) as proof of (((eq Prop) ((x0 (g x1)) x2)) ((f x1) x2))
% Found ((eq_ref Prop) ((x0 (g x1)) x2)) as proof of (((eq Prop) ((x0 (g x1)) x2)) ((f x1) x2))
% Found (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2))) as proof of (((eq Prop) ((x0 (g x1)) x2)) ((f x1) x2))
% Found (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2))) as proof of (forall (x:fofType), (((eq Prop) ((x0 (g x1)) x)) ((f x1) x)))
% Found ((functional_extensionality_dep00000 (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2)))) (((eq_ref (fofType->Prop)) (x0 (g x1))) P1)) as proof of ((P1 (x0 (g x1)))->(P1 (f x1)))
% Found ((functional_extensionality_dep00000 (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2)))) (((eq_ref (fofType->Prop)) (x0 (g x1))) P1)) as proof of ((P1 (x0 (g x1)))->(P1 (f x1)))
% Found (((fun (x2:(forall (x:fofType), (((eq Prop) ((x0 (g x1)) x)) ((f x1) x))))=> ((functional_extensionality_dep0000 x2) (fun (x4:(fofType->Prop))=> ((P1 (x0 (g x1)))->(P1 x4))))) (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2)))) (((eq_ref (fofType->Prop)) (x0 (g x1))) P1)) as proof of ((P1 (x0 (g x1)))->(P1 (f x1)))
% Found (((fun (x2:(forall (x:fofType), (((eq Prop) ((x0 (g x1)) x)) ((f x1) x))))=> (((functional_extensionality_dep000 (f x1)) x2) (fun (x4:(fofType->Prop))=> ((P1 (x0 (g x1)))->(P1 x4))))) (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2)))) (((eq_ref (fofType->Prop)) (x0 (g x1))) P1)) as proof of ((P1 (x0 (g x1)))->(P1 (f x1)))
% Found (((fun (x2:(forall (x:fofType), (((eq Prop) ((x0 (g x1)) x)) ((f x1) x))))=> ((((functional_extensionality_dep00 (x0 (g x1))) (f x1)) x2) (fun (x4:(fofType->Prop))=> ((P1 (x0 (g x1)))->(P1 x4))))) (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2)))) (((eq_ref (fofType->Prop)) (x0 (g x1))) P1)) as proof of ((P1 (x0 (g x1)))->(P1 (f x1)))
% Found (((fun (x2:(forall (x:fofType), (((eq Prop) ((x0 (g x1)) x)) ((f x1) x))))=> (((((functional_extensionality_dep0 (fun (x4:fofType)=> Prop)) (x0 (g x1))) (f x1)) x2) (fun (x4:(fofType->Prop))=> ((P1 (x0 (g x1)))->(P1 x4))))) (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2)))) (((eq_ref (fofType->Prop)) (x0 (g x1))) P1)) as proof of ((P1 (x0 (g x1)))->(P1 (f x1)))
% Found (((fun (x2:(forall (x:fofType), (((eq Prop) ((x0 (g x1)) x)) ((f x1) x))))=> ((((((functional_extensionality_dep fofType) (fun (x4:fofType)=> Prop)) (x0 (g x1))) (f x1)) x2) (fun (x4:(fofType->Prop))=> ((P1 (x0 (g x1)))->(P1 x4))))) (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2)))) (((eq_ref (fofType->Prop)) (x0 (g x1))) P1)) as proof of ((P1 (x0 (g x1)))->(P1 (f x1)))
% Found (fun (P1:((fofType->Prop)->Prop))=> (((fun (x2:(forall (x:fofType), (((eq Prop) ((x0 (g x1)) x)) ((f x1) x))))=> ((((((functional_extensionality_dep fofType) (fun (x4:fofType)=> Prop)) (x0 (g x1))) (f x1)) x2) (fun (x4:(fofType->Prop))=> ((P1 (x0 (g x1)))->(P1 x4))))) (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2)))) (((eq_ref (fofType->Prop)) (x0 (g x1))) P1))) as proof of ((P1 (x0 (g x1)))->(P1 (f x1)))
% Found eq_ref00:=(eq_ref0 ((x0 (g x1)) x2)):(((eq Prop) ((x0 (g x1)) x2)) ((x0 (g x1)) x2))
% Found (eq_ref0 ((x0 (g x1)) x2)) as proof of (((eq Prop) ((x0 (g x1)) x2)) ((f x1) x2))
% Found ((eq_ref Prop) ((x0 (g x1)) x2)) as proof of (((eq Prop) ((x0 (g x1)) x2)) ((f x1) x2))
% Found ((eq_ref Prop) ((x0 (g x1)) x2)) as proof of (((eq Prop) ((x0 (g x1)) x2)) ((f x1) x2))
% Found (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2))) as proof of (((eq Prop) ((x0 (g x1)) x2)) ((f x1) x2))
% Found (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2))) as proof of (forall (x:fofType), (((eq Prop) ((x0 (g x1)) x)) ((f x1) x)))
% Found (functional_extensionality_dep00000 (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2)))) as proof of ((P1 (x0 (g x1)))->(P1 (f x1)))
% Found (functional_extensionality_dep00000 (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2)))) as proof of ((P1 (x0 (g x1)))->(P1 (f x1)))
% Found ((fun (x2:(forall (x:fofType), (((eq Prop) ((x0 (g x1)) x)) ((f x1) x))))=> ((functional_extensionality_dep0000 x2) P1)) (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2)))) as proof of ((P1 (x0 (g x1)))->(P1 (f x1)))
% Found ((fun (x2:(forall (x:fofType), (((eq Prop) ((x0 (g x1)) x)) ((f x1) x))))=> (((functional_extensionality_dep000 (f x1)) x2) P1)) (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2)))) as proof of ((P1 (x0 (g x1)))->(P1 (f x1)))
% Found ((fun (x2:(forall (x:fofType), (((eq Prop) ((x0 (g x1)) x)) ((f x1) x))))=> ((((functional_extensionality_dep00 (x0 (g x1))) (f x1)) x2) P1)) (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2)))) as proof of ((P1 (x0 (g x1)))->(P1 (f x1)))
% Found ((fun (x2:(forall (x:fofType), (((eq Prop) ((x0 (g x1)) x)) ((f x1) x))))=> (((((functional_extensionality_dep0 (fun (x4:fofType)=> Prop)) (x0 (g x1))) (f x1)) x2) P1)) (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2)))) as proof of ((P1 (x0 (g x1)))->(P1 (f x1)))
% Found ((fun (x2:(forall (x:fofType), (((eq Prop) ((x0 (g x1)) x)) ((f x1) x))))=> ((((((functional_extensionality_dep fofType) (fun (x4:fofType)=> Prop)) (x0 (g x1))) (f x1)) x2) P1)) (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2)))) as proof of ((P1 (x0 (g x1)))->(P1 (f x1)))
% Found (fun (P1:((fofType->Prop)->Prop))=> ((fun (x2:(forall (x:fofType), (((eq Prop) ((x0 (g x1)) x)) ((f x1) x))))=> ((((((functional_extensionality_dep fofType) (fun (x4:fofType)=> Prop)) (x0 (g x1))) (f x1)) x2) P1)) (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2))))) as proof of ((P1 (x0 (g x1)))->(P1 (f x1)))
% Found eq_ref00:=(eq_ref0 ((x0 (g x1)) x2)):(((eq Prop) ((x0 (g x1)) x2)) ((x0 (g x1)) x2))
% Found (eq_ref0 ((x0 (g x1)) x2)) as proof of (((eq Prop) ((x0 (g x1)) x2)) ((f x1) x2))
% Found ((eq_ref Prop) ((x0 (g x1)) x2)) as proof of (((eq Prop) ((x0 (g x1)) x2)) ((f x1) x2))
% Found ((eq_ref Prop) ((x0 (g x1)) x2)) as proof of (((eq Prop) ((x0 (g x1)) x2)) ((f x1) x2))
% Found (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2))) as proof of (((eq Prop) ((x0 (g x1)) x2)) ((f x1) x2))
% Found (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2))) as proof of (forall (x:fofType), (((eq Prop) ((x0 (g x1)) x)) ((f x1) x)))
% Found ((functional_extensionality00000 (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2)))) (((eq_ref (fofType->Prop)) (x0 (g x1))) P1)) as proof of ((P1 (x0 (g x1)))->(P1 (f x1)))
% Found ((functional_extensionality00000 (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2)))) (((eq_ref (fofType->Prop)) (x0 (g x1))) P1)) as proof of ((P1 (x0 (g x1)))->(P1 (f x1)))
% Found (((fun (x2:(forall (x:fofType), (((eq Prop) ((x0 (g x1)) x)) ((f x1) x))))=> ((functional_extensionality0000 x2) (fun (x4:(fofType->Prop))=> ((P1 (x0 (g x1)))->(P1 x4))))) (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2)))) (((eq_ref (fofType->Prop)) (x0 (g x1))) P1)) as proof of ((P1 (x0 (g x1)))->(P1 (f x1)))
% Found (((fun (x2:(forall (x:fofType), (((eq Prop) ((x0 (g x1)) x)) ((f x1) x))))=> (((functional_extensionality000 (f x1)) x2) (fun (x4:(fofType->Prop))=> ((P1 (x0 (g x1)))->(P1 x4))))) (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2)))) (((eq_ref (fofType->Prop)) (x0 (g x1))) P1)) as proof of ((P1 (x0 (g x1)))->(P1 (f x1)))
% Found (((fun (x2:(forall (x:fofType), (((eq Prop) ((x0 (g x1)) x)) ((f x1) x))))=> ((((functional_extensionality00 (x0 (g x1))) (f x1)) x2) (fun (x4:(fofType->Prop))=> ((P1 (x0 (g x1)))->(P1 x4))))) (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2)))) (((eq_ref (fofType->Prop)) (x0 (g x1))) P1)) as proof of ((P1 (x0 (g x1)))->(P1 (f x1)))
% Found (((fun (x2:(forall (x:fofType), (((eq Prop) ((x0 (g x1)) x)) ((f x1) x))))=> (((((functional_extensionality0 Prop) (x0 (g x1))) (f x1)) x2) (fun (x4:(fofType->Prop))=> ((P1 (x0 (g x1)))->(P1 x4))))) (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2)))) (((eq_ref (fofType->Prop)) (x0 (g x1))) P1)) as proof of ((P1 (x0 (g x1)))->(P1 (f x1)))
% Found (((fun (x2:(forall (x:fofType), (((eq Prop) ((x0 (g x1)) x)) ((f x1) x))))=> ((((((functional_extensionality fofType) Prop) (x0 (g x1))) (f x1)) x2) (fun (x4:(fofType->Prop))=> ((P1 (x0 (g x1)))->(P1 x4))))) (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2)))) (((eq_ref (fofType->Prop)) (x0 (g x1))) P1)) as proof of ((P1 (x0 (g x1)))->(P1 (f x1)))
% Found (fun (P1:((fofType->Prop)->Prop))=> (((fun (x2:(forall (x:fofType), (((eq Prop) ((x0 (g x1)) x)) ((f x1) x))))=> ((((((functional_extensionality fofType) Prop) (x0 (g x1))) (f x1)) x2) (fun (x4:(fofType->Prop))=> ((P1 (x0 (g x1)))->(P1 x4))))) (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2)))) (((eq_ref (fofType->Prop)) (x0 (g x1))) P1))) as proof of ((P1 (x0 (g x1)))->(P1 (f x1)))
% Found eq_ref00:=(eq_ref0 ((x0 (g x1)) x2)):(((eq Prop) ((x0 (g x1)) x2)) ((x0 (g x1)) x2))
% Found (eq_ref0 ((x0 (g x1)) x2)) as proof of (((eq Prop) ((x0 (g x1)) x2)) ((f x1) x2))
% Found ((eq_ref Prop) ((x0 (g x1)) x2)) as proof of (((eq Prop) ((x0 (g x1)) x2)) ((f x1) x2))
% Found ((eq_ref Prop) ((x0 (g x1)) x2)) as proof of (((eq Prop) ((x0 (g x1)) x2)) ((f x1) x2))
% Found (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2))) as proof of (((eq Prop) ((x0 (g x1)) x2)) ((f x1) x2))
% Found (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2))) as proof of (forall (x:fofType), (((eq Prop) ((x0 (g x1)) x)) ((f x1) x)))
% Found (functional_extensionality00000 (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2)))) as proof of ((P1 (x0 (g x1)))->(P1 (f x1)))
% Found (functional_extensionality00000 (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2)))) as proof of ((P1 (x0 (g x1)))->(P1 (f x1)))
% Found ((fun (x2:(forall (x:fofType), (((eq Prop) ((x0 (g x1)) x)) ((f x1) x))))=> ((functional_extensionality0000 x2) P1)) (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2)))) as proof of ((P1 (x0 (g x1)))->(P1 (f x1)))
% Found ((fun (x2:(forall (x:fofType), (((eq Prop) ((x0 (g x1)) x)) ((f x1) x))))=> (((functional_extensionality000 (f x1)) x2) P1)) (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2)))) as proof of ((P1 (x0 (g x1)))->(P1 (f x1)))
% Found ((fun (x2:(forall (x:fofType), (((eq Prop) ((x0 (g x1)) x)) ((f x1) x))))=> ((((functional_extensionality00 (x0 (g x1))) (f x1)) x2) P1)) (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2)))) as proof of ((P1 (x0 (g x1)))->(P1 (f x1)))
% Found ((fun (x2:(forall (x:fofType), (((eq Prop) ((x0 (g x1)) x)) ((f x1) x))))=> (((((functional_extensionality0 Prop) (x0 (g x1))) (f x1)) x2) P1)) (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2)))) as proof of ((P1 (x0 (g x1)))->(P1 (f x1)))
% Found ((fun (x2:(forall (x:fofType), (((eq Prop) ((x0 (g x1)) x)) ((f x1) x))))=> ((((((functional_extensionality fofType) Prop) (x0 (g x1))) (f x1)) x2) P1)) (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2)))) as proof of ((P1 (x0 (g x1)))->(P1 (f x1)))
% Found (fun (P1:((fofType->Prop)->Prop))=> ((fun (x2:(forall (x:fofType), (((eq Prop) ((x0 (g x1)) x)) ((f x1) x))))=> ((((((functional_extensionality fofType) Prop) (x0 (g x1))) (f x1)) x2) P1)) (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2))))) as proof of ((P1 (x0 (g x1)))->(P1 (f x1)))
% Found eq_ref000:=(eq_ref00 P1):((P1 ((x0 (g x1)) y))->(P1 ((x0 (g x1)) y)))
% Found (eq_ref00 P1) as proof of ((P1 ((x0 (g x1)) y))->(P1 ((b x1) y)))
% Found ((eq_ref0 ((x0 (g x1)) y)) P1) as proof of ((P1 ((x0 (g x1)) y))->(P1 ((b x1) y)))
% Found (((eq_ref Prop) ((x0 (g x1)) y)) P1) as proof of ((P1 ((x0 (g x1)) y))->(P1 ((b x1) y)))
% Found (((eq_ref Prop) ((x0 (g x1)) y)) P1) as proof of ((P1 ((x0 (g x1)) y))->(P1 ((b x1) y)))
% Found (fun (P1:(Prop->Prop))=> (((eq_ref Prop) ((x0 (g x1)) y)) P1)) as proof of ((P1 ((x0 (g x1)) y))->(P1 ((b x1) y)))
% Found (fun (y:fofType) (P1:(Prop->Prop))=> (((eq_ref Prop) ((x0 (g x1)) y)) P1)) as proof of (((eq Prop) ((x0 (g x1)) y)) ((b x1) y))
% Found eq_ref000:=(eq_ref00 P1):((P1 ((x0 (g x1)) y))->(P1 ((x0 (g x1)) y)))
% Found (eq_ref00 P1) as proof of ((P1 ((x0 (g x1)) y))->(P1 ((b x1) y)))
% Found ((eq_ref0 ((x0 (g x1)) y)) P1) as proof of ((P1 ((x0 (g x1)) y))->(P1 ((b x1) y)))
% Found (((eq_ref Prop) ((x0 (g x1)) y)) P1) as proof of ((P1 ((x0 (g x1)) y))->(P1 ((b x1) y)))
% Found (((eq_ref Prop) ((x0 (g x1)) y)) P1) as proof of ((P1 ((x0 (g x1)) y))->(P1 ((b x1) y)))
% Found (fun (P1:(Prop->Prop))=> (((eq_ref Prop) ((x0 (g x1)) y)) P1)) as proof of ((P1 ((x0 (g x1)) y))->(P1 ((b x1) y)))
% Found (fun (y:fofType) (P1:(Prop->Prop))=> (((eq_ref Prop) ((x0 (g x1)) y)) P1)) as proof of (((eq Prop) ((x0 (g x1)) y)) ((b x1) y))
% Found eq_ref00:=(eq_ref0 (g Xx)):(((eq (fofType->Prop)) (g Xx)) (g Xx))
% Found (eq_ref0 (g Xx)) as proof of (((eq (fofType->Prop)) (g Xx)) (g x1))
% Found ((eq_ref (fofType->Prop)) (g Xx)) as proof of (((eq (fofType->Prop)) (g Xx)) (g x1))
% Found ((eq_ref (fofType->Prop)) (g Xx)) as proof of (((eq (fofType->Prop)) (g Xx)) (g x1))
% Found ((eq_ref (fofType->Prop)) (g Xx)) as proof of (((eq (fofType->Prop)) (g Xx)) (g x1))
% Found eq_ref000:=(eq_ref00 P):((P ((x0 (g x1)) y))->(P ((x0 (g x1)) y)))
% Found (eq_ref00 P) as proof of ((P ((x0 (g x1)) y))->(P ((f x1) y)))
% Found ((eq_ref0 ((x0 (g x1)) y)) P) as proof of ((P ((x0 (g x1)) y))->(P ((f x1) y)))
% Found (((eq_ref Prop) ((x0 (g x1)) y)) P) as proof of ((P ((x0 (g x1)) y))->(P ((f x1) y)))
% Found (((eq_ref Prop) ((x0 (g x1)) y)) P) as proof of ((P ((x0 (g x1)) y))->(P ((f x1) y)))
% Found (fun (P:(Prop->Prop))=> (((eq_ref Prop) ((x0 (g x1)) y)) P)) as proof of ((P ((x0 (g x1)) y))->(P ((f x1) y)))
% Found (fun (P:(Prop->Prop))=> (((eq_ref Prop) ((x0 (g x1)) y)) P)) as proof of (forall (P:(Prop->Prop)), ((P ((x0 (g x1)) y))->(P ((f x1) y))))
% Found (fun (y:fofType) (P:(Prop->Prop))=> (((eq_ref Prop) ((x0 (g x1)) y)) P)) as proof of (((eq Prop) ((x0 (g x1)) y)) ((f x1) y))
% Found eq_ref00:=(eq_ref0 y):(((eq fofType) y) y)
% Found (eq_ref0 y) as proof of (((eq fofType) y) b)
% Found ((eq_ref fofType) y) as proof of (((eq fofType) y) b)
% Found ((eq_ref fofType) y) as proof of (((eq fofType) y) b)
% Found ((eq_ref fofType) y) as proof of (((eq fofType) y) b)
% Found (eq_substitution00000 ((eq_ref fofType) y)) as proof of (((eq Prop) ((x0 (g x1)) y)) ((f x1) y))
% Found ((eq_substitution0000 (x0 (g x1))) ((eq_ref fofType) y)) as proof of (((eq Prop) ((x0 (g x1)) y)) ((f x1) y))
% Found (((eq_substitution000 y) (x0 (g x1))) ((eq_ref fofType) y)) as proof of (((eq Prop) ((x0 (g x1)) y)) ((f x1) y))
% Found ((((eq_substitution00 y) y) (x0 (g x1))) ((eq_ref fofType) y)) as proof of (((eq Prop) ((x0 (g x1)) y)) ((f x1) y))
% Found (((((eq_substitution0 Prop) y) y) (x0 (g x1))) ((eq_ref fofType) y)) as proof of (((eq Prop) ((x0 (g x1)) y)) ((f x1) y))
% Found ((((((eq_substitution fofType) Prop) y) y) (x0 (g x1))) ((eq_ref fofType) y)) as proof of (((eq Prop) ((x0 (g x1)) y)) ((f x1) y))
% Found ((((((eq_substitution fofType) Prop) y) y) (x0 (g x1))) ((eq_ref fofType) y)) as proof of (((eq Prop) ((x0 (g x1)) y)) ((f x1) y))
% Found eq_ref00:=(eq_ref0 y):(((eq fofType) y) y)
% Found (eq_ref0 y) as proof of (((eq fofType) y) b)
% Found ((eq_ref fofType) y) as proof of (((eq fofType) y) b)
% Found ((eq_ref fofType) y) as proof of (((eq fofType) y) b)
% Found ((eq_ref fofType) y) as proof of (((eq fofType) y) b)
% Found (eq_substitution00000 ((eq_ref fofType) y)) as proof of (((eq Prop) ((x0 (g x1)) y)) ((f x1) y))
% Found ((eq_substitution0000 (x0 (g x1))) ((eq_ref fofType) y)) as proof of (((eq Prop) ((x0 (g x1)) y)) ((f x1) y))
% Found (((eq_substitution000 y) (x0 (g x1))) ((eq_ref fofType) y)) as proof of (((eq Prop) ((x0 (g x1)) y)) ((f x1) y))
% Found ((((eq_substitution00 y) y) (x0 (g x1))) ((eq_ref fofType) y)) as proof of (((eq Prop) ((x0 (g x1)) y)) ((f x1) y))
% Found (((((eq_substitution0 Prop) y) y) (x0 (g x1))) ((eq_ref fofType) y)) as proof of (((eq Prop) ((x0 (g x1)) y)) ((f x1) y))
% Found ((((((eq_substitution fofType) Prop) y) y) (x0 (g x1))) ((eq_ref fofType) y)) as proof of (((eq Prop) ((x0 (g x1)) y)) ((f x1) y))
% Found ((((((eq_substitution fofType) Prop) y) y) (x0 (g x1))) ((eq_ref fofType) y)) as proof of (((eq Prop) ((x0 (g x1)) y)) ((f x1) y))
% Found eq_ref00:=(eq_ref0 ((x0 (g x1)) x2)):(((eq Prop) ((x0 (g x1)) x2)) ((x0 (g x1)) x2))
% Found (eq_ref0 ((x0 (g x1)) x2)) as proof of (((eq Prop) ((x0 (g x1)) x2)) ((b x1) x2))
% Found ((eq_ref Prop) ((x0 (g x1)) x2)) as proof of (((eq Prop) ((x0 (g x1)) x2)) ((b x1) x2))
% Found ((eq_ref Prop) ((x0 (g x1)) x2)) as proof of (((eq Prop) ((x0 (g x1)) x2)) ((b x1) x2))
% Found (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2))) as proof of (((eq Prop) ((x0 (g x1)) x2)) ((b x1) x2))
% Found (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2))) as proof of (forall (x:fofType), (((eq Prop) ((x0 (g x1)) x)) ((b x1) x)))
% Found (functional_extensionality_dep0100 (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2)))) as proof of (((eq (fofType->Prop)) (x0 (g x1))) (b x1))
% Found ((functional_extensionality_dep010 (b x1)) (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2)))) as proof of (((eq (fofType->Prop)) (x0 (g x1))) (b x1))
% Found (((functional_extensionality_dep01 (x0 (g x1))) (b x1)) (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2)))) as proof of (((eq (fofType->Prop)) (x0 (g x1))) (b x1))
% Found ((((functional_extensionality_dep0 (fun (x4:fofType)=> Prop)) (x0 (g x1))) (b x1)) (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2)))) as proof of (((eq (fofType->Prop)) (x0 (g x1))) (b x1))
% Found eq_ref00:=(eq_ref0 ((x0 (g x1)) x2)):(((eq Prop) ((x0 (g x1)) x2)) ((x0 (g x1)) x2))
% Found (eq_ref0 ((x0 (g x1)) x2)) as proof of (((eq Prop) ((x0 (g x1)) x2)) ((b x1) x2))
% Found ((eq_ref Prop) ((x0 (g x1)) x2)) as proof of (((eq Prop) ((x0 (g x1)) x2)) ((b x1) x2))
% Found ((eq_ref Prop) ((x0 (g x1)) x2)) as proof of (((eq Prop) ((x0 (g x1)) x2)) ((b x1) x2))
% Found (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2))) as proof of (((eq Prop) ((x0 (g x1)) x2)) ((b x1) x2))
% Found (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2))) as proof of (forall (x:fofType), (((eq Prop) ((x0 (g x1)) x)) ((b x1) x)))
% Found (functional_extensionality0100 (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2)))) as proof of (((eq (fofType->Prop)) (x0 (g x1))) (b x1))
% Found ((functional_extensionality010 (b x1)) (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2)))) as proof of (((eq (fofType->Prop)) (x0 (g x1))) (b x1))
% Found (((functional_extensionality01 (x0 (g x1))) (b x1)) (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2)))) as proof of (((eq (fofType->Prop)) (x0 (g x1))) (b x1))
% Found ((((functional_extensionality0 Prop) (x0 (g x1))) (b x1)) (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2)))) as proof of (((eq (fofType->Prop)) (x0 (g x1))) (b x1))
% Found eq_ref00:=(eq_ref0 ((x0 (g x1)) x2)):(((eq Prop) ((x0 (g x1)) x2)) ((x0 (g x1)) x2))
% Found (eq_ref0 ((x0 (g x1)) x2)) as proof of (((eq Prop) ((x0 (g x1)) x2)) ((b x1) x2))
% Found ((eq_ref Prop) ((x0 (g x1)) x2)) as proof of (((eq Prop) ((x0 (g x1)) x2)) ((b x1) x2))
% Found ((eq_ref Prop) ((x0 (g x1)) x2)) as proof of (((eq Prop) ((x0 (g x1)) x2)) ((b x1) x2))
% Found (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2))) as proof of (((eq Prop) ((x0 (g x1)) x2)) ((b x1) x2))
% Found (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2))) as proof of (forall (x:fofType), (((eq Prop) ((x0 (g x1)) x)) ((b x1) x)))
% Found (functional_extensionality_dep0100 (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2)))) as proof of (((eq (fofType->Prop)) (x0 (g x1))) (b x1))
% Found ((functional_extensionality_dep010 (b x1)) (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2)))) as proof of (((eq (fofType->Prop)) (x0 (g x1))) (b x1))
% Found (((functional_extensionality_dep01 (x0 (g x1))) (b x1)) (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2)))) as proof of (((eq (fofType->Prop)) (x0 (g x1))) (b x1))
% Found ((((functional_extensionality_dep0 (fun (x4:fofType)=> Prop)) (x0 (g x1))) (b x1)) (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2)))) as proof of (((eq (fofType->Prop)) (x0 (g x1))) (b x1))
% Found eq_ref00:=(eq_ref0 ((x0 (g x1)) x2)):(((eq Prop) ((x0 (g x1)) x2)) ((x0 (g x1)) x2))
% Found (eq_ref0 ((x0 (g x1)) x2)) as proof of (((eq Prop) ((x0 (g x1)) x2)) ((b x1) x2))
% Found ((eq_ref Prop) ((x0 (g x1)) x2)) as proof of (((eq Prop) ((x0 (g x1)) x2)) ((b x1) x2))
% Found ((eq_ref Prop) ((x0 (g x1)) x2)) as proof of (((eq Prop) ((x0 (g x1)) x2)) ((b x1) x2))
% Found (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2))) as proof of (((eq Prop) ((x0 (g x1)) x2)) ((b x1) x2))
% Found (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2))) as proof of (forall (x:fofType), (((eq Prop) ((x0 (g x1)) x)) ((b x1) x)))
% Found (functional_extensionality0100 (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2)))) as proof of (((eq (fofType->Prop)) (x0 (g x1))) (b x1))
% Found ((functional_extensionality010 (b x1)) (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2)))) as proof of (((eq (fofType->Prop)) (x0 (g x1))) (b x1))
% Found (((functional_extensionality01 (x0 (g x1))) (b x1)) (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2)))) as proof of (((eq (fofType->Prop)) (x0 (g x1))) (b x1))
% Found ((((functional_extensionality0 Prop) (x0 (g x1))) (b x1)) (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2)))) as proof of (((eq (fofType->Prop)) (x0 (g x1))) (b x1))
% Found eq_ref00:=(eq_ref0 y):(((eq fofType) y) y)
% Found (eq_ref0 y) as proof of (((eq fofType) y) b)
% Found ((eq_ref fofType) y) as proof of (((eq fofType) y) b)
% Found ((eq_ref fofType) y) as proof of (((eq fofType) y) b)
% Found ((eq_ref fofType) y) as proof of (((eq fofType) y) b)
% Found (eq_substitution000000 ((eq_ref fofType) y)) as proof of ((P ((x0 (g x1)) y))->(P ((f x1) y)))
% Found (eq_substitution000000 ((eq_ref fofType) y)) as proof of ((P ((x0 (g x1)) y))->(P ((f x1) y)))
% Found ((fun (x2:(((eq fofType) y) b))=> ((eq_substitution00000 x2) P)) ((eq_ref fofType) y)) as proof of ((P ((x0 (g x1)) y))->(P ((f x1) y)))
% Found ((fun (x2:(((eq fofType) y) b))=> (((eq_substitution0000 (x0 (g x1))) x2) P)) ((eq_ref fofType) y)) as proof of ((P ((x0 (g x1)) y))->(P ((f x1) y)))
% Found ((fun (x2:(((eq fofType) y) y))=> ((((eq_substitution000 y) (x0 (g x1))) x2) P)) ((eq_ref fofType) y)) as proof of ((P ((x0 (g x1)) y))->(P ((f x1) y)))
% Found ((fun (x2:(((eq fofType) y) y))=> (((((eq_substitution00 y) y) (x0 (g x1))) x2) P)) ((eq_ref fofType) y)) as proof of ((P ((x0 (g x1)) y))->(P ((f x1) y)))
% Found ((fun (x2:(((eq fofType) y) y))=> ((((((eq_substitution0 Prop) y) y) (x0 (g x1))) x2) P)) ((eq_ref fofType) y)) as proof of ((P ((x0 (g x1)) y))->(P ((f x1) y)))
% Found ((fun (x2:(((eq fofType) y) y))=> (((((((eq_substitution fofType) Prop) y) y) (x0 (g x1))) x2) P)) ((eq_ref fofType) y)) as proof of ((P ((x0 (g x1)) y))->(P ((f x1) y)))
% Found ((fun (x2:(((eq fofType) y) y))=> (((((((eq_substitution fofType) Prop) y) y) (x0 (g x1))) x2) P)) ((eq_ref fofType) y)) as proof of ((P ((x0 (g x1)) y))->(P ((f x1) y)))
% Found (fun (P:(Prop->Prop))=> ((fun (x2:(((eq fofType) y) y))=> (((((((eq_substitution fofType) Prop) y) y) (x0 (g x1))) x2) P)) ((eq_ref fofType) y))) as proof of ((P ((x0 (g x1)) y))->(P ((f x1) y)))
% Found eq_ref00:=(eq_ref0 y):(((eq fofType) y) y)
% Found (eq_ref0 y) as proof of (((eq fofType) y) b)
% Found ((eq_ref fofType) y) as proof of (((eq fofType) y) b)
% Found ((eq_ref fofType) y) as proof of (((eq fofType) y) b)
% Found ((eq_ref fofType) y) as proof of (((eq fofType) y) b)
% Found (eq_substitution000000 ((eq_ref fofType) y)) as proof of ((P ((x0 (g x1)) y))->(P ((f x1) y)))
% Found (eq_substitution000000 ((eq_ref fofType) y)) as proof of ((P ((x0 (g x1)) y))->(P ((f x1) y)))
% Found ((fun (x2:(((eq fofType) y) b))=> ((eq_substitution00000 x2) (fun (x3:Prop)=> (P ((x0 (g x1)) y))))) ((eq_ref fofType) y)) as proof of ((P ((x0 (g x1)) y))->(P ((f x1) y)))
% Found ((fun (x2:(((eq fofType) y) b))=> (((eq_substitution0000 (fun (x5:fofType)=> ((P ((x0 (g x1)) y))->(P ((f x1) y))))) x2) (fun (x3:Prop)=> (P ((x0 (g x1)) y))))) ((eq_ref fofType) y)) as proof of ((P ((x0 (g x1)) y))->(P ((f x1) y)))
% Found ((fun (x2:(((eq fofType) y) y))=> ((((eq_substitution000 y) (fun (x5:fofType)=> ((P ((x0 (g x1)) y))->(P ((f x1) y))))) x2) (fun (x3:Prop)=> (P ((x0 (g x1)) y))))) ((eq_ref fofType) y)) as proof of ((P ((x0 (g x1)) y))->(P ((f x1) y)))
% Found ((fun (x2:(((eq fofType) y) y))=> (((((eq_substitution00 y) y) (fun (x5:fofType)=> ((P ((x0 (g x1)) y))->(P ((f x1) y))))) x2) (fun (x3:Prop)=> (P ((x0 (g x1)) y))))) ((eq_ref fofType) y)) as proof of ((P ((x0 (g x1)) y))->(P ((f x1) y)))
% Found ((fun (x2:(((eq fofType) y) y))=> ((((((eq_substitution0 Prop) y) y) (fun (x5:fofType)=> ((P ((x0 (g x1)) y))->(P ((f x1) y))))) x2) (fun (x3:Prop)=> (P ((x0 (g x1)) y))))) ((eq_ref fofType) y)) as proof of ((P ((x0 (g x1)) y))->(P ((f x1) y)))
% Found ((fun (x2:(((eq fofType) y) y))=> (((((((eq_substitution fofType) Prop) y) y) (fun (x5:fofType)=> ((P ((x0 (g x1)) y))->(P ((f x1) y))))) x2) (fun (x3:Prop)=> (P ((x0 (g x1)) y))))) ((eq_ref fofType) y)) as proof of ((P ((x0 (g x1)) y))->(P ((f x1) y)))
% Found ((fun (x2:(((eq fofType) y) y))=> (((((((eq_substitution fofType) Prop) y) y) (fun (x5:fofType)=> ((P ((x0 (g x1)) y))->(P ((f x1) y))))) x2) (fun (x3:Prop)=> (P ((x0 (g x1)) y))))) ((eq_ref fofType) y)) as proof of ((P ((x0 (g x1)) y))->(P ((f x1) y)))
% Found (fun (P:(Prop->Prop))=> ((fun (x2:(((eq fofType) y) y))=> (((((((eq_substitution fofType) Prop) y) y) (fun (x5:fofType)=> ((P ((x0 (g x1)) y))->(P ((f x1) y))))) x2) (fun (x3:Prop)=> (P ((x0 (g x1)) y))))) ((eq_ref fofType) y))) as proof of ((P ((x0 (g x1)) y))->(P ((f x1) y)))
% Found eq_ref00:=(eq_ref0 y):(((eq fofType) y) y)
% Found (eq_ref0 y) as proof of (((eq fofType) y) b)
% Found ((eq_ref fofType) y) as proof of (((eq fofType) y) b)
% Found ((eq_ref fofType) y) as proof of (((eq fofType) y) b)
% Found ((eq_ref fofType) y) as proof of (((eq fofType) y) b)
% Found (eq_substitution000000 ((eq_ref fofType) y)) as proof of ((P ((x0 (g x1)) y))->(P ((f x1) y)))
% Found (eq_substitution000000 ((eq_ref fofType) y)) as proof of ((P ((x0 (g x1)) y))->(P ((f x1) y)))
% Found ((fun (x2:(((eq fofType) y) b))=> ((eq_substitution00000 x2) (fun (x3:Prop)=> x3))) ((eq_ref fofType) y)) as proof of ((P ((x0 (g x1)) y))->(P ((f x1) y)))
% Found ((fun (x2:(((eq fofType) y) b))=> (((eq_substitution0000 (fun (x4:fofType)=> (P ((x0 (g x1)) x4)))) x2) (fun (x3:Prop)=> x3))) ((eq_ref fofType) y)) as proof of ((P ((x0 (g x1)) y))->(P ((f x1) y)))
% Found ((fun (x2:(((eq fofType) y) y))=> ((((eq_substitution000 y) (fun (x4:fofType)=> (P ((x0 (g x1)) x4)))) x2) (fun (x3:Prop)=> x3))) ((eq_ref fofType) y)) as proof of ((P ((x0 (g x1)) y))->(P ((f x1) y)))
% Found ((fun (x2:(((eq fofType) y) y))=> (((((eq_substitution00 y) y) (fun (x4:fofType)=> (P ((x0 (g x1)) x4)))) x2) (fun (x3:Prop)=> x3))) ((eq_ref fofType) y)) as proof of ((P ((x0 (g x1)) y))->(P ((f x1) y)))
% Found ((fun (x2:(((eq fofType) y) y))=> ((((((eq_substitution0 Prop) y) y) (fun (x4:fofType)=> (P ((x0 (g x1)) x4)))) x2) (fun (x3:Prop)=> x3))) ((eq_ref fofType) y)) as proof of ((P ((x0 (g x1)) y))->(P ((f x1) y)))
% Found ((fun (x2:(((eq fofType) y) y))=> (((((((eq_substitution fofType) Prop) y) y) (fun (x4:fofType)=> (P ((x0 (g x1)) x4)))) x2) (fun (x3:Prop)=> x3))) ((eq_ref fofType) y)) as proof of ((P ((x0 (g x1)) y))->(P ((f x1) y)))
% Found ((fun (x2:(((eq fofType) y) y))=> (((((((eq_substitution fofType) Prop) y) y) (fun (x4:fofType)=> (P ((x0 (g x1)) x4)))) x2) (fun (x3:Prop)=> x3))) ((eq_ref fofType) y)) as proof of ((P ((x0 (g x1)) y))->(P ((f x1) y)))
% Found (fun (P:(Prop->Prop))=> ((fun (x2:(((eq fofType) y) y))=> (((((((eq_substitution fofType) Prop) y) y) (fun (x4:fofType)=> (P ((x0 (g x1)) x4)))) x2) (fun (x3:Prop)=> x3))) ((eq_ref fofType) y))) as proof of ((P ((x0 (g x1)) y))->(P ((f x1) y)))
% Found eq_ref00:=(eq_ref0 y):(((eq fofType) y) y)
% Found (eq_ref0 y) as proof of (((eq fofType) y) b)
% Found ((eq_ref fofType) y) as proof of (((eq fofType) y) b)
% Found ((eq_ref fofType) y) as proof of (((eq fofType) y) b)
% Found ((eq_ref fofType) y) as proof of (((eq fofType) y) b)
% Found (eq_substitution000000 ((eq_ref fofType) y)) as proof of ((P ((x0 (g x1)) y))->(P ((f x1) y)))
% Found (eq_substitution000000 ((eq_ref fofType) y)) as proof of ((P ((x0 (g x1)) y))->(P ((f x1) y)))
% Found ((fun (x2:(((eq fofType) y) b))=> ((eq_substitution00000 x2) (fun (x3:Prop)=> (P ((x0 (g x1)) y))))) ((eq_ref fofType) y)) as proof of ((P ((x0 (g x1)) y))->(P ((f x1) y)))
% Found ((fun (x2:(((eq fofType) y) b))=> (((eq_substitution0000 (fun (x5:fofType)=> (P ((f x1) y)))) x2) (fun (x3:Prop)=> (P ((x0 (g x1)) y))))) ((eq_ref fofType) y)) as proof of ((P ((x0 (g x1)) y))->(P ((f x1) y)))
% Found ((fun (x2:(((eq fofType) y) y))=> ((((eq_substitution000 y) (fun (x5:fofType)=> (P ((f x1) y)))) x2) (fun (x3:Prop)=> (P ((x0 (g x1)) y))))) ((eq_ref fofType) y)) as proof of ((P ((x0 (g x1)) y))->(P ((f x1) y)))
% Found ((fun (x2:(((eq fofType) y) y))=> (((((eq_substitution00 y) y) (fun (x5:fofType)=> (P ((f x1) y)))) x2) (fun (x3:Prop)=> (P ((x0 (g x1)) y))))) ((eq_ref fofType) y)) as proof of ((P ((x0 (g x1)) y))->(P ((f x1) y)))
% Found ((fun (x2:(((eq fofType) y) y))=> ((((((eq_substitution0 Prop) y) y) (fun (x5:fofType)=> (P ((f x1) y)))) x2) (fun (x3:Prop)=> (P ((x0 (g x1)) y))))) ((eq_ref fofType) y)) as proof of ((P ((x0 (g x1)) y))->(P ((f x1) y)))
% Found ((fun (x2:(((eq fofType) y) y))=> (((((((eq_substitution fofType) Prop) y) y) (fun (x5:fofType)=> (P ((f x1) y)))) x2) (fun (x3:Prop)=> (P ((x0 (g x1)) y))))) ((eq_ref fofType) y)) as proof of ((P ((x0 (g x1)) y))->(P ((f x1) y)))
% Found ((fun (x2:(((eq fofType) y) y))=> (((((((eq_substitution fofType) Prop) y) y) (fun (x5:fofType)=> (P ((f x1) y)))) x2) (fun (x3:Prop)=> (P ((x0 (g x1)) y))))) ((eq_ref fofType) y)) as proof of ((P ((x0 (g x1)) y))->(P ((f x1) y)))
% Found (fun (P:(Prop->Prop))=> ((fun (x2:(((eq fofType) y) y))=> (((((((eq_substitution fofType) Prop) y) y) (fun (x5:fofType)=> (P ((f x1) y)))) x2) (fun (x3:Prop)=> (P ((x0 (g x1)) y))))) ((eq_ref fofType) y))) as proof of ((P ((x0 (g x1)) y))->(P ((f x1) y)))
% Found eq_ref00:=(eq_ref0 y):(((eq fofType) y) y)
% Found (eq_ref0 y) as proof of (((eq fofType) y) b)
% Found ((eq_ref fofType) y) as proof of (((eq fofType) y) b)
% Found ((eq_ref fofType) y) as proof of (((eq fofType) y) b)
% Found ((eq_ref fofType) y) as proof of (((eq fofType) y) b)
% Found (eq_substitution000000 ((eq_ref fofType) y)) as proof of ((P ((x0 (g x1)) y))->(P ((f x1) y)))
% Found (eq_substitution000000 ((eq_ref fofType) y)) as proof of ((P ((x0 (g x1)) y))->(P ((f x1) y)))
% Found ((fun (x2:(((eq fofType) y) b))=> ((eq_substitution00000 x2) (fun (x3:Prop)=> x3))) ((eq_ref fofType) y)) as proof of ((P ((x0 (g x1)) y))->(P ((f x1) y)))
% Found ((fun (x2:(((eq fofType) y) b))=> (((eq_substitution0000 (fun (x5:fofType)=> (P ((f x1) y)))) x2) (fun (x3:Prop)=> x3))) ((eq_ref fofType) y)) as proof of ((P ((x0 (g x1)) y))->(P ((f x1) y)))
% Found ((fun (x2:(((eq fofType) y) y))=> ((((eq_substitution000 y) (fun (x5:fofType)=> (P ((f x1) y)))) x2) (fun (x3:Prop)=> x3))) ((eq_ref fofType) y)) as proof of ((P ((x0 (g x1)) y))->(P ((f x1) y)))
% Found ((fun (x2:(((eq fofType) y) y))=> (((((eq_substitution00 y) y) (fun (x5:fofType)=> (P ((f x1) y)))) x2) (fun (x3:Prop)=> x3))) ((eq_ref fofType) y)) as proof of ((P ((x0 (g x1)) y))->(P ((f x1) y)))
% Found ((fun (x2:(((eq fofType) y) y))=> ((((((eq_substitution0 Prop) y) y) (fun (x5:fofType)=> (P ((f x1) y)))) x2) (fun (x3:Prop)=> x3))) ((eq_ref fofType) y)) as proof of ((P ((x0 (g x1)) y))->(P ((f x1) y)))
% Found ((fun (x2:(((eq fofType) y) y))=> (((((((eq_substitution fofType) Prop) y) y) (fun (x5:fofType)=> (P ((f x1) y)))) x2) (fun (x3:Prop)=> x3))) ((eq_ref fofType) y)) as proof of ((P ((x0 (g x1)) y))->(P ((f x1) y)))
% Found ((fun (x2:(((eq fofType) y) y))=> (((((((eq_substitution fofType) Prop) y) y) (fun (x5:fofType)=> (P ((f x1) y)))) x2) (fun (x3:Prop)=> x3))) ((eq_ref fofType) y)) as proof of ((P ((x0 (g x1)) y))->(P ((f x1) y)))
% Found (fun (P:(Prop->Prop))=> ((fun (x2:(((eq fofType) y) y))=> (((((((eq_substitution fofType) Prop) y) y) (fun (x5:fofType)=> (P ((f x1) y)))) x2) (fun (x3:Prop)=> x3))) ((eq_ref fofType) y))) as proof of ((P ((x0 (g x1)) y))->(P ((f x1) y)))
% Found eq_ref00:=(eq_ref0 (x0 (g x1))):(((eq (fofType->Prop)) (x0 (g x1))) (x0 (g x1)))
% Found (eq_ref0 (x0 (g x1))) as proof of (((eq (fofType->Prop)) (x0 (g x1))) (b0 x1))
% Found ((eq_ref (fofType->Prop)) (x0 (g x1))) as proof of (((eq (fofType->Prop)) (x0 (g x1))) (b0 x1))
% Found ((eq_ref (fofType->Prop)) (x0 (g x1))) as proof of (((eq (fofType->Prop)) (x0 (g x1))) (b0 x1))
% Found eq_ref00:=(eq_ref0 (x0 (g x1))):(((eq (fofType->Prop)) (x0 (g x1))) (x0 (g x1)))
% Found (eq_ref0 (x0 (g x1))) as proof of (((eq (fofType->Prop)) (x0 (g x1))) (b0 x1))
% Found ((eq_ref (fofType->Prop)) (x0 (g x1))) as proof of (((eq (fofType->Prop)) (x0 (g x1))) (b0 x1))
% Found ((eq_ref (fofType->Prop)) (x0 (g x1))) as proof of (((eq (fofType->Prop)) (x0 (g x1))) (b0 x1))
% Found eq_ref00:=(eq_ref0 (x0 (g x1))):(((eq (fofType->Prop)) (x0 (g x1))) (x0 (g x1)))
% Found (eq_ref0 (x0 (g x1))) as proof of (((eq (fofType->Prop)) (x0 (g x1))) (f x1))
% Found ((eq_ref (fofType->Prop)) (x0 (g x1))) as proof of (((eq (fofType->Prop)) (x0 (g x1))) (f x1))
% Found ((eq_ref (fofType->Prop)) (x0 (g x1))) as proof of (((eq (fofType->Prop)) (x0 (g x1))) (f x1))
% Found ((eq_ref (fofType->Prop)) (x0 (g x1))) as proof of (((eq (fofType->Prop)) (x0 (g x1))) (f x1))
% Found (eq_sym1000 ((eq_ref (fofType->Prop)) (x0 (g x1)))) as proof of ((P (f x1))->(P (x0 (g x1))))
% Found (eq_sym1000 ((eq_ref (fofType->Prop)) (x0 (g x1)))) as proof of ((P (f x1))->(P (x0 (g x1))))
% Found ((fun (x2:(((eq (fofType->Prop)) (x0 (g x1))) (f x1)))=> ((eq_sym100 x2) P)) ((eq_ref (fofType->Prop)) (x0 (g x1)))) as proof of ((P (f x1))->(P (x0 (g x1))))
% Found ((fun (x2:(((eq (fofType->Prop)) (x0 (g x1))) (f x1)))=> (((eq_sym10 (f x1)) x2) P)) ((eq_ref (fofType->Prop)) (x0 (g x1)))) as proof of ((P (f x1))->(P (x0 (g x1))))
% Found ((fun (x2:(((eq (fofType->Prop)) (x0 (g x1))) (f x1)))=> ((((eq_sym1 (x0 (g x1))) (f x1)) x2) P)) ((eq_ref (fofType->Prop)) (x0 (g x1)))) as proof of ((P (f x1))->(P (x0 (g x1))))
% Found ((fun (x2:(((eq (fofType->Prop)) (x0 (g x1))) (f x1)))=> (((((eq_sym (fofType->Prop)) (x0 (g x1))) (f x1)) x2) P)) ((eq_ref (fofType->Prop)) (x0 (g x1)))) as proof of ((P (f x1))->(P (x0 (g x1))))
% Found (fun (P:((fofType->Prop)->Prop))=> ((fun (x2:(((eq (fofType->Prop)) (x0 (g x1))) (f x1)))=> (((((eq_sym (fofType->Prop)) (x0 (g x1))) (f x1)) x2) P)) ((eq_ref (fofType->Prop)) (x0 (g x1))))) as proof of ((P (f x1))->(P (x0 (g x1))))
% Found (fun (P:((fofType->Prop)->Prop))=> ((fun (x2:(((eq (fofType->Prop)) (x0 (g x1))) (f x1)))=> (((((eq_sym (fofType->Prop)) (x0 (g x1))) (f x1)) x2) P)) ((eq_ref (fofType->Prop)) (x0 (g x1))))) as proof of (forall (P:((fofType->Prop)->Prop)), ((P (f x1))->(P (x0 (g x1)))))
% Found eq_ref00:=(eq_ref0 (x0 (g x1))):(((eq (fofType->Prop)) (x0 (g x1))) (x0 (g x1)))
% Found (eq_ref0 (x0 (g x1))) as proof of (((eq (fofType->Prop)) (x0 (g x1))) (f x1))
% Found ((eq_ref (fofType->Prop)) (x0 (g x1))) as proof of (((eq (fofType->Prop)) (x0 (g x1))) (f x1))
% Found ((eq_ref (fofType->Prop)) (x0 (g x1))) as proof of (((eq (fofType->Prop)) (x0 (g x1))) (f x1))
% Found ((eq_ref (fofType->Prop)) (x0 (g x1))) as proof of (((eq (fofType->Prop)) (x0 (g x1))) (f x1))
% Found (eq_sym1000 ((eq_ref (fofType->Prop)) (x0 (g x1)))) as proof of ((P (f x1))->(P (x0 (g x1))))
% Found (eq_sym1000 ((eq_ref (fofType->Prop)) (x0 (g x1)))) as proof of ((P (f x1))->(P (x0 (g x1))))
% Found ((fun (x2:(((eq (fofType->Prop)) (x0 (g x1))) (f x1)))=> ((eq_sym100 x2) P)) ((eq_ref (fofType->Prop)) (x0 (g x1)))) as proof of ((P (f x1))->(P (x0 (g x1))))
% Found ((fun (x2:(((eq (fofType->Prop)) (x0 (g x1))) (f x1)))=> (((eq_sym10 (f x1)) x2) P)) ((eq_ref (fofType->Prop)) (x0 (g x1)))) as proof of ((P (f x1))->(P (x0 (g x1))))
% Found ((fun (x2:(((eq (fofType->Prop)) (x0 (g x1))) (f x1)))=> ((((eq_sym1 (x0 (g x1))) (f x1)) x2) P)) ((eq_ref (fofType->Prop)) (x0 (g x1)))) as proof of ((P (f x1))->(P (x0 (g x1))))
% Found ((fun (x2:(((eq (fofType->Prop)) (x0 (g x1))) (f x1)))=> (((((eq_sym (fofType->Prop)) (x0 (g x1))) (f x1)) x2) P)) ((eq_ref (fofType->Prop)) (x0 (g x1)))) as proof of ((P (f x1))->(P (x0 (g x1))))
% Found (fun (P:((fofType->Prop)->Prop))=> ((fun (x2:(((eq (fofType->Prop)) (x0 (g x1))) (f x1)))=> (((((eq_sym (fofType->Prop)) (x0 (g x1))) (f x1)) x2) P)) ((eq_ref (fofType->Prop)) (x0 (g x1))))) as proof of ((P (f x1))->(P (x0 (g x1))))
% Found (fun (P:((fofType->Prop)->Prop))=> ((fun (x2:(((eq (fofType->Prop)) (x0 (g x1))) (f x1)))=> (((((eq_sym (fofType->Prop)) (x0 (g x1))) (f x1)) x2) P)) ((eq_ref (fofType->Prop)) (x0 (g x1))))) as proof of (forall (P:((fofType->Prop)->Prop)), ((P (f x1))->(P (x0 (g x1)))))
% Found eq_ref000:=(eq_ref00 P):((P ((x0 (g x1)) y))->(P ((x0 (g x1)) y)))
% Found (eq_ref00 P) as proof of (P0 ((x0 (g x1)) y))
% Found ((eq_ref0 ((x0 (g x1)) y)) P) as proof of (P0 ((x0 (g x1)) y))
% Found (((eq_ref Prop) ((x0 (g x1)) y)) P) as proof of (P0 ((x0 (g x1)) y))
% Found (((eq_ref Prop) ((x0 (g x1)) y)) P) as proof of (P0 ((x0 (g x1)) y))
% Found eq_ref00:=(eq_ref0 (x0 (g x1))):(((eq (fofType->Prop)) (x0 (g x1))) (x0 (g x1)))
% Found (eq_ref0 (x0 (g x1))) as proof of (((eq (fofType->Prop)) (x0 (g x1))) (f x1))
% Found ((eq_ref (fofType->Prop)) (x0 (g x1))) as proof of (((eq (fofType->Prop)) (x0 (g x1))) (f x1))
% Found ((eq_ref (fofType->Prop)) (x0 (g x1))) as proof of (((eq (fofType->Prop)) (x0 (g x1))) (f x1))
% Found ((eq_ref (fofType->Prop)) (x0 (g x1))) as proof of (((eq (fofType->Prop)) (x0 (g x1))) (f x1))
% Found (eq_sym100 ((eq_ref (fofType->Prop)) (x0 (g x1)))) as proof of (forall (P:((fofType->Prop)->Prop)), ((P (f x1))->(P (x0 (g x1)))))
% Found ((eq_sym10 (f x1)) ((eq_ref (fofType->Prop)) (x0 (g x1)))) as proof of (forall (P:((fofType->Prop)->Prop)), ((P (f x1))->(P (x0 (g x1)))))
% Found (((eq_sym1 (x0 (g x1))) (f x1)) ((eq_ref (fofType->Prop)) (x0 (g x1)))) as proof of (forall (P:((fofType->Prop)->Prop)), ((P (f x1))->(P (x0 (g x1)))))
% Found ((((eq_sym (fofType->Prop)) (x0 (g x1))) (f x1)) ((eq_ref (fofType->Prop)) (x0 (g x1)))) as proof of (forall (P:((fofType->Prop)->Prop)), ((P (f x1))->(P (x0 (g x1)))))
% Found ((((eq_sym (fofType->Prop)) (x0 (g x1))) (f x1)) ((eq_ref (fofType->Prop)) (x0 (g x1)))) as proof of (forall (P:((fofType->Prop)->Prop)), ((P (f x1))->(P (x0 (g x1)))))
% Found eq_ref00:=(eq_ref0 (x0 (g x1))):(((eq (fofType->Prop)) (x0 (g x1))) (x0 (g x1)))
% Found (eq_ref0 (x0 (g x1))) as proof of (((eq (fofType->Prop)) (x0 (g x1))) (f x1))
% Found ((eq_ref (fofType->Prop)) (x0 (g x1))) as proof of (((eq (fofType->Prop)) (x0 (g x1))) (f x1))
% Found ((eq_ref (fofType->Prop)) (x0 (g x1))) as proof of (((eq (fofType->Prop)) (x0 (g x1))) (f x1))
% Found ((eq_ref (fofType->Prop)) (x0 (g x1))) as proof of (((eq (fofType->Prop)) (x0 (g x1))) (f x1))
% Found (eq_sym100 ((eq_ref (fofType->Prop)) (x0 (g x1)))) as proof of (forall (P:((fofType->Prop)->Prop)), ((P (f x1))->(P (x0 (g x1)))))
% Found ((eq_sym10 (f x1)) ((eq_ref (fofType->Prop)) (x0 (g x1)))) as proof of (forall (P:((fofType->Prop)->Prop)), ((P (f x1))->(P (x0 (g x1)))))
% Found (((eq_sym1 (x0 (g x1))) (f x1)) ((eq_ref (fofType->Prop)) (x0 (g x1)))) as proof of (forall (P:((fofType->Prop)->Prop)), ((P (f x1))->(P (x0 (g x1)))))
% Found ((((eq_sym (fofType->Prop)) (x0 (g x1))) (f x1)) ((eq_ref (fofType->Prop)) (x0 (g x1)))) as proof of (forall (P:((fofType->Prop)->Prop)), ((P (f x1))->(P (x0 (g x1)))))
% Found ((((eq_sym (fofType->Prop)) (x0 (g x1))) (f x1)) ((eq_ref (fofType->Prop)) (x0 (g x1)))) as proof of (forall (P:((fofType->Prop)->Prop)), ((P (f x1))->(P (x0 (g x1)))))
% Found eq_ref00:=(eq_ref0 (x0 (g x1))):(((eq (fofType->Prop)) (x0 (g x1))) (x0 (g x1)))
% Found (eq_ref0 (x0 (g x1))) as proof of (((eq (fofType->Prop)) (x0 (g x1))) (f x1))
% Found ((eq_ref (fofType->Prop)) (x0 (g x1))) as proof of (((eq (fofType->Prop)) (x0 (g x1))) (f x1))
% Found ((eq_ref (fofType->Prop)) (x0 (g x1))) as proof of (((eq (fofType->Prop)) (x0 (g x1))) (f x1))
% Found ((eq_ref (fofType->Prop)) (x0 (g x1))) as proof of (((eq (fofType->Prop)) (x0 (g x1))) (f x1))
% Found (eq_sym100 ((eq_ref (fofType->Prop)) (x0 (g x1)))) as proof of (forall (P:((fofType->Prop)->Prop)), ((P (f x1))->(P (x0 (g x1)))))
% Found ((eq_sym10 (f x1)) ((eq_ref (fofType->Prop)) (x0 (g x1)))) as proof of (forall (P:((fofType->Prop)->Prop)), ((P (f x1))->(P (x0 (g x1)))))
% Found (((eq_sym1 (x0 (g x1))) (f x1)) ((eq_ref (fofType->Prop)) (x0 (g x1)))) as proof of (forall (P:((fofType->Prop)->Prop)), ((P (f x1))->(P (x0 (g x1)))))
% Found ((((eq_sym (fofType->Prop)) (x0 (g x1))) (f x1)) ((eq_ref (fofType->Prop)) (x0 (g x1)))) as proof of (forall (P:((fofType->Prop)->Prop)), ((P (f x1))->(P (x0 (g x1)))))
% Found ((((eq_sym (fofType->Prop)) (x0 (g x1))) (f x1)) ((eq_ref (fofType->Prop)) (x0 (g x1)))) as proof of (forall (P:((fofType->Prop)->Prop)), ((P (f x1))->(P (x0 (g x1)))))
% Found eq_ref00:=(eq_ref0 (x0 (g x1))):(((eq (fofType->Prop)) (x0 (g x1))) (x0 (g x1)))
% Found (eq_ref0 (x0 (g x1))) as proof of (((eq (fofType->Prop)) (x0 (g x1))) (f x1))
% Found ((eq_ref (fofType->Prop)) (x0 (g x1))) as proof of (((eq (fofType->Prop)) (x0 (g x1))) (f x1))
% Found ((eq_ref (fofType->Prop)) (x0 (g x1))) as proof of (((eq (fofType->Prop)) (x0 (g x1))) (f x1))
% Found ((eq_ref (fofType->Prop)) (x0 (g x1))) as proof of (((eq (fofType->Prop)) (x0 (g x1))) (f x1))
% Found (eq_sym100 ((eq_ref (fofType->Prop)) (x0 (g x1)))) as proof of (forall (P:((fofType->Prop)->Prop)), ((P (f x1))->(P (x0 (g x1)))))
% Found ((eq_sym10 (f x1)) ((eq_ref (fofType->Prop)) (x0 (g x1)))) as proof of (forall (P:((fofType->Prop)->Prop)), ((P (f x1))->(P (x0 (g x1)))))
% Found (((eq_sym1 (x0 (g x1))) (f x1)) ((eq_ref (fofType->Prop)) (x0 (g x1)))) as proof of (forall (P:((fofType->Prop)->Prop)), ((P (f x1))->(P (x0 (g x1)))))
% Found ((((eq_sym (fofType->Prop)) (x0 (g x1))) (f x1)) ((eq_ref (fofType->Prop)) (x0 (g x1)))) as proof of (forall (P:((fofType->Prop)->Prop)), ((P (f x1))->(P (x0 (g x1)))))
% Found ((((eq_sym (fofType->Prop)) (x0 (g x1))) (f x1)) ((eq_ref (fofType->Prop)) (x0 (g x1)))) as proof of (forall (P:((fofType->Prop)->Prop)), ((P (f x1))->(P (x0 (g x1)))))
% Found eq_ref00:=(eq_ref0 (x0 (g x1))):(((eq (fofType->Prop)) (x0 (g x1))) (x0 (g x1)))
% Found (eq_ref0 (x0 (g x1))) as proof of (((eq (fofType->Prop)) (x0 (g x1))) (f x1))
% Found ((eq_ref (fofType->Prop)) (x0 (g x1))) as proof of (((eq (fofType->Prop)) (x0 (g x1))) (f x1))
% Found ((eq_ref (fofType->Prop)) (x0 (g x1))) as proof of (((eq (fofType->Prop)) (x0 (g x1))) (f x1))
% Found ((eq_ref (fofType->Prop)) (x0 (g x1))) as proof of (((eq (fofType->Prop)) (x0 (g x1))) (f x1))
% Found (eq_sym100 ((eq_ref (fofType->Prop)) (x0 (g x1)))) as proof of (forall (P:((fofType->Prop)->Prop)), ((P (f x1))->(P (x0 (g x1)))))
% Found ((eq_sym10 (f x1)) ((eq_ref (fofType->Prop)) (x0 (g x1)))) as proof of (forall (P:((fofType->Prop)->Prop)), ((P (f x1))->(P (x0 (g x1)))))
% Found (((eq_sym1 (x0 (g x1))) (f x1)) ((eq_ref (fofType->Prop)) (x0 (g x1)))) as proof of (forall (P:((fofType->Prop)->Prop)), ((P (f x1))->(P (x0 (g x1)))))
% Found ((((eq_sym (fofType->Prop)) (x0 (g x1))) (f x1)) ((eq_ref (fofType->Prop)) (x0 (g x1)))) as proof of (forall (P:((fofType->Prop)->Prop)), ((P (f x1))->(P (x0 (g x1)))))
% Found ((((eq_sym (fofType->Prop)) (x0 (g x1))) (f x1)) ((eq_ref (fofType->Prop)) (x0 (g x1)))) as proof of (forall (P:((fofType->Prop)->Prop)), ((P (f x1))->(P (x0 (g x1)))))
% Found eq_ref00:=(eq_ref0 (x0 (g x1))):(((eq (fofType->Prop)) (x0 (g x1))) (x0 (g x1)))
% Found (eq_ref0 (x0 (g x1))) as proof of (((eq (fofType->Prop)) (x0 (g x1))) (f x1))
% Found ((eq_ref (fofType->Prop)) (x0 (g x1))) as proof of (((eq (fofType->Prop)) (x0 (g x1))) (f x1))
% Found ((eq_ref (fofType->Prop)) (x0 (g x1))) as proof of (((eq (fofType->Prop)) (x0 (g x1))) (f x1))
% Found ((eq_ref (fofType->Prop)) (x0 (g x1))) as proof of (((eq (fofType->Prop)) (x0 (g x1))) (f x1))
% Found (eq_sym1000 ((eq_ref (fofType->Prop)) (x0 (g x1)))) as proof of ((P (f x1))->(P (x0 (g x1))))
% Found (eq_sym1000 ((eq_ref (fofType->Prop)) (x0 (g x1)))) as proof of ((P (f x1))->(P (x0 (g x1))))
% Found ((fun (x2:(((eq (fofType->Prop)) (x0 (g x1))) (f x1)))=> ((eq_sym100 x2) P)) ((eq_ref (fofType->Prop)) (x0 (g x1)))) as proof of ((P (f x1))->(P (x0 (g x1))))
% Found ((fun (x2:(((eq (fofType->Prop)) (x0 (g x1))) (f x1)))=> (((eq_sym10 (f x1)) x2) P)) ((eq_ref (fofType->Prop)) (x0 (g x1)))) as proof of ((P (f x1))->(P (x0 (g x1))))
% Found ((fun (x2:(((eq (fofType->Prop)) (x0 (g x1))) (f x1)))=> ((((eq_sym1 (x0 (g x1))) (f x1)) x2) P)) ((eq_ref (fofType->Prop)) (x0 (g x1)))) as proof of ((P (f x1))->(P (x0 (g x1))))
% Found ((fun (x2:(((eq (fofType->Prop)) (x0 (g x1))) (f x1)))=> (((((eq_sym (fofType->Prop)) (x0 (g x1))) (f x1)) x2) P)) ((eq_ref (fofType->Prop)) (x0 (g x1)))) as proof of ((P (f x1))->(P (x0 (g x1))))
% Found (fun (P:((fofType->Prop)->Prop))=> ((fun (x2:(((eq (fofType->Prop)) (x0 (g x1))) (f x1)))=> (((((eq_sym (fofType->Prop)) (x0 (g x1))) (f x1)) x2) P)) ((eq_ref (fofType->Prop)) (x0 (g x1))))) as proof of ((P (f x1))->(P (x0 (g x1))))
% Found eq_ref00:=(eq_ref0 (x0 (g x1))):(((eq (fofType->Prop)) (x0 (g x1))) (x0 (g x1)))
% Found (eq_ref0 (x0 (g x1))) as proof of (((eq (fofType->Prop)) (x0 (g x1))) (f x1))
% Found ((eq_ref (fofType->Prop)) (x0 (g x1))) as proof of (((eq (fofType->Prop)) (x0 (g x1))) (f x1))
% Found ((eq_ref (fofType->Prop)) (x0 (g x1))) as proof of (((eq (fofType->Prop)) (x0 (g x1))) (f x1))
% Found ((eq_ref (fofType->Prop)) (x0 (g x1))) as proof of (((eq (fofType->Prop)) (x0 (g x1))) (f x1))
% Found (eq_sym100 ((eq_ref (fofType->Prop)) (x0 (g x1)))) as proof of (forall (P:((fofType->Prop)->Prop)), ((P (f x1))->(P (x0 (g x1)))))
% Found ((eq_sym10 (f x1)) ((eq_ref (fofType->Prop)) (x0 (g x1)))) as proof of (forall (P:((fofType->Prop)->Prop)), ((P (f x1))->(P (x0 (g x1)))))
% Found (((eq_sym1 (x0 (g x1))) (f x1)) ((eq_ref (fofType->Prop)) (x0 (g x1)))) as proof of (forall (P:((fofType->Prop)->Prop)), ((P (f x1))->(P (x0 (g x1)))))
% Found ((((eq_sym (fofType->Prop)) (x0 (g x1))) (f x1)) ((eq_ref (fofType->Prop)) (x0 (g x1)))) as proof of (forall (P:((fofType->Prop)->Prop)), ((P (f x1))->(P (x0 (g x1)))))
% Found ((((eq_sym (fofType->Prop)) (x0 (g x1))) (f x1)) ((eq_ref (fofType->Prop)) (x0 (g x1)))) as proof of (forall (P:((fofType->Prop)->Prop)), ((P (f x1))->(P (x0 (g x1)))))
% Found eq_ref00:=(eq_ref0 (x0 (g x1))):(((eq (fofType->Prop)) (x0 (g x1))) (x0 (g x1)))
% Found (eq_ref0 (x0 (g x1))) as proof of (((eq (fofType->Prop)) (x0 (g x1))) (f x1))
% Found ((eq_ref (fofType->Prop)) (x0 (g x1))) as proof of (((eq (fofType->Prop)) (x0 (g x1))) (f x1))
% Found ((eq_ref (fofType->Prop)) (x0 (g x1))) as proof of (((eq (fofType->Prop)) (x0 (g x1))) (f x1))
% Found ((eq_ref (fofType->Prop)) (x0 (g x1))) as proof of (((eq (fofType->Prop)) (x0 (g x1))) (f x1))
% Found (eq_sym100 ((eq_ref (fofType->Prop)) (x0 (g x1)))) as proof of (forall (P:((fofType->Prop)->Prop)), ((P (f x1))->(P (x0 (g x1)))))
% Found ((eq_sym10 (f x1)) ((eq_ref (fofType->Prop)) (x0 (g x1)))) as proof of (forall (P:((fofType->Prop)->Prop)), ((P (f x1))->(P (x0 (g x1)))))
% Found (((eq_sym1 (x0 (g x1))) (f x1)) ((eq_ref (fofType->Prop)) (x0 (g x1)))) as proof of (forall (P:((fofType->Prop)->Prop)), ((P (f x1))->(P (x0 (g x1)))))
% Found ((((eq_sym (fofType->Prop)) (x0 (g x1))) (f x1)) ((eq_ref (fofType->Prop)) (x0 (g x1)))) as proof of (forall (P:((fofType->Prop)->Prop)), ((P (f x1))->(P (x0 (g x1)))))
% Found ((((eq_sym (fofType->Prop)) (x0 (g x1))) (f x1)) ((eq_ref (fofType->Prop)) (x0 (g x1)))) as proof of (forall (P:((fofType->Prop)->Prop)), ((P (f x1))->(P (x0 (g x1)))))
% Found eq_ref00:=(eq_ref0 (x0 (g x1))):(((eq (fofType->Prop)) (x0 (g x1))) (x0 (g x1)))
% Found (eq_ref0 (x0 (g x1))) as proof of (((eq (fofType->Prop)) (x0 (g x1))) (f x1))
% Found ((eq_ref (fofType->Prop)) (x0 (g x1))) as proof of (((eq (fofType->Prop)) (x0 (g x1))) (f x1))
% Found ((eq_ref (fofType->Prop)) (x0 (g x1))) as proof of (((eq (fofType->Prop)) (x0 (g x1))) (f x1))
% Found ((eq_ref (fofType->Prop)) (x0 (g x1))) as proof of (((eq (fofType->Prop)) (x0 (g x1))) (f x1))
% Found (eq_sym1000 ((eq_ref (fofType->Prop)) (x0 (g x1)))) as proof of ((P (f x1))->(P (x0 (g x1))))
% Found (eq_sym1000 ((eq_ref (fofType->Prop)) (x0 (g x1)))) as proof of ((P (f x1))->(P (x0 (g x1))))
% Found ((fun (x2:(((eq (fofType->Prop)) (x0 (g x1))) (f x1)))=> ((eq_sym100 x2) P)) ((eq_ref (fofType->Prop)) (x0 (g x1)))) as proof of ((P (f x1))->(P (x0 (g x1))))
% Found ((fun (x2:(((eq (fofType->Prop)) (x0 (g x1))) (f x1)))=> (((eq_sym10 (f x1)) x2) P)) ((eq_ref (fofType->Prop)) (x0 (g x1)))) as proof of ((P (f x1))->(P (x0 (g x1))))
% Found ((fun (x2:(((eq (fofType->Prop)) (x0 (g x1))) (f x1)))=> ((((eq_sym1 (x0 (g x1))) (f x1)) x2) P)) ((eq_ref (fofType->Prop)) (x0 (g x1)))) as proof of ((P (f x1))->(P (x0 (g x1))))
% Found ((fun (x2:(((eq (fofType->Prop)) (x0 (g x1))) (f x1)))=> (((((eq_sym (fofType->Prop)) (x0 (g x1))) (f x1)) x2) P)) ((eq_ref (fofType->Prop)) (x0 (g x1)))) as proof of ((P (f x1))->(P (x0 (g x1))))
% Found (fun (P:((fofType->Prop)->Prop))=> ((fun (x2:(((eq (fofType->Prop)) (x0 (g x1))) (f x1)))=> (((((eq_sym (fofType->Prop)) (x0 (g x1))) (f x1)) x2) P)) ((eq_ref (fofType->Prop)) (x0 (g x1))))) as proof of ((P (f x1))->(P (x0 (g x1))))
% Found eq_ref00:=(eq_ref0 (x0 (g x1))):(((eq (fofType->Prop)) (x0 (g x1))) (x0 (g x1)))
% Found (eq_ref0 (x0 (g x1))) as proof of (((eq (fofType->Prop)) (x0 (g x1))) (f x1))
% Found ((eq_ref (fofType->Prop)) (x0 (g x1))) as proof of (((eq (fofType->Prop)) (x0 (g x1))) (f x1))
% Found ((eq_ref (fofType->Prop)) (x0 (g x1))) as proof of (((eq (fofType->Prop)) (x0 (g x1))) (f x1))
% Found ((eq_ref (fofType->Prop)) (x0 (g x1))) as proof of (((eq (fofType->Prop)) (x0 (g x1))) (f x1))
% Found (eq_sym1000 ((eq_ref (fofType->Prop)) (x0 (g x1)))) as proof of ((P (f x1))->(P (x0 (g x1))))
% Found (eq_sym1000 ((eq_ref (fofType->Prop)) (x0 (g x1)))) as proof of ((P (f x1))->(P (x0 (g x1))))
% Found ((fun (x2:(((eq (fofType->Prop)) (x0 (g x1))) (f x1)))=> ((eq_sym100 x2) P)) ((eq_ref (fofType->Prop)) (x0 (g x1)))) as proof of ((P (f x1))->(P (x0 (g x1))))
% Found ((fun (x2:(((eq (fofType->Prop)) (x0 (g x1))) (f x1)))=> (((eq_sym10 (f x1)) x2) P)) ((eq_ref (fofType->Prop)) (x0 (g x1)))) as proof of ((P (f x1))->(P (x0 (g x1))))
% Found ((fun (x2:(((eq (fofType->Prop)) (x0 (g x1))) (f x1)))=> ((((eq_sym1 (x0 (g x1))) (f x1)) x2) P)) ((eq_ref (fofType->Prop)) (x0 (g x1)))) as proof of ((P (f x1))->(P (x0 (g x1))))
% Found ((fun (x2:(((eq (fofType->Prop)) (x0 (g x1))) (f x1)))=> (((((eq_sym (fofType->Prop)) (x0 (g x1))) (f x1)) x2) P)) ((eq_ref (fofType->Prop)) (x0 (g x1)))) as proof of ((P (f x1))->(P (x0 (g x1))))
% Found (fun (P:((fofType->Prop)->Prop))=> ((fun (x2:(((eq (fofType->Prop)) (x0 (g x1))) (f x1)))=> (((((eq_sym (fofType->Prop)) (x0 (g x1))) (f x1)) x2) P)) ((eq_ref (fofType->Prop)) (x0 (g x1))))) as proof of ((P (f x1))->(P (x0 (g x1))))
% Found eq_ref00:=(eq_ref0 (x0 (g x1))):(((eq (fofType->Prop)) (x0 (g x1))) (x0 (g x1)))
% Found (eq_ref0 (x0 (g x1))) as proof of (((eq (fofType->Prop)) (x0 (g x1))) (f x1))
% Found ((eq_ref (fofType->Prop)) (x0 (g x1))) as proof of (((eq (fofType->Prop)) (x0 (g x1))) (f x1))
% Found ((eq_ref (fofType->Prop)) (x0 (g x1))) as proof of (((eq (fofType->Prop)) (x0 (g x1))) (f x1))
% Found ((eq_ref (fofType->Prop)) (x0 (g x1))) as proof of (((eq (fofType->Prop)) (x0 (g x1))) (f x1))
% Found (eq_sym1000 ((eq_ref (fofType->Prop)) (x0 (g x1)))) as proof of ((P (f x1))->(P (x0 (g x1))))
% Found (eq_sym1000 ((eq_ref (fofType->Prop)) (x0 (g x1)))) as proof of ((P (f x1))->(P (x0 (g x1))))
% Found ((fun (x2:(((eq (fofType->Prop)) (x0 (g x1))) (f x1)))=> ((eq_sym100 x2) P)) ((eq_ref (fofType->Prop)) (x0 (g x1)))) as proof of ((P (f x1))->(P (x0 (g x1))))
% Found ((fun (x2:(((eq (fofType->Prop)) (x0 (g x1))) (f x1)))=> (((eq_sym10 (f x1)) x2) P)) ((eq_ref (fofType->Prop)) (x0 (g x1)))) as proof of ((P (f x1))->(P (x0 (g x1))))
% Found ((fun (x2:(((eq (fofType->Prop)) (x0 (g x1))) (f x1)))=> ((((eq_sym1 (x0 (g x1))) (f x1)) x2) P)) ((eq_ref (fofType->Prop)) (x0 (g x1)))) as proof of ((P (f x1))->(P (x0 (g x1))))
% Found ((fun (x2:(((eq (fofType->Prop)) (x0 (g x1))) (f x1)))=> (((((eq_sym (fofType->Prop)) (x0 (g x1))) (f x1)) x2) P)) ((eq_ref (fofType->Prop)) (x0 (g x1)))) as proof of ((P (f x1))->(P (x0 (g x1))))
% Found (fun (P:((fofType->Prop)->Prop))=> ((fun (x2:(((eq (fofType->Prop)) (x0 (g x1))) (f x1)))=> (((((eq_sym (fofType->Prop)) (x0 (g x1))) (f x1)) x2) P)) ((eq_ref (fofType->Prop)) (x0 (g x1))))) as proof of ((P (f x1))->(P (x0 (g x1))))
% Found eq_ref00:=(eq_ref0 (x0 (g x1))):(((eq (fofType->Prop)) (x0 (g x1))) (x0 (g x1)))
% Found (eq_ref0 (x0 (g x1))) as proof of (((eq (fofType->Prop)) (x0 (g x1))) (f x1))
% Found ((eq_ref (fofType->Prop)) (x0 (g x1))) as proof of (((eq (fofType->Prop)) (x0 (g x1))) (f x1))
% Found ((eq_ref (fofType->Prop)) (x0 (g x1))) as proof of (((eq (fofType->Prop)) (x0 (g x1))) (f x1))
% Found ((eq_ref (fofType->Prop)) (x0 (g x1))) as proof of (((eq (fofType->Prop)) (x0 (g x1))) (f x1))
% Found (eq_sym100 ((eq_ref (fofType->Prop)) (x0 (g x1)))) as proof of (forall (P:((fofType->Prop)->Prop)), ((P (f x1))->(P (x0 (g x1)))))
% Found ((eq_sym10 (f x1)) ((eq_ref (fofType->Prop)) (x0 (g x1)))) as proof of (forall (P:((fofType->Prop)->Prop)), ((P (f x1))->(P (x0 (g x1)))))
% Found (((eq_sym1 (x0 (g x1))) (f x1)) ((eq_ref (fofType->Prop)) (x0 (g x1)))) as proof of (forall (P:((fofType->Prop)->Prop)), ((P (f x1))->(P (x0 (g x1)))))
% Found ((((eq_sym (fofType->Prop)) (x0 (g x1))) (f x1)) ((eq_ref (fofType->Prop)) (x0 (g x1)))) as proof of (forall (P:((fofType->Prop)->Prop)), ((P (f x1))->(P (x0 (g x1)))))
% Found ((((eq_sym (fofType->Prop)) (x0 (g x1))) (f x1)) ((eq_ref (fofType->Prop)) (x0 (g x1)))) as proof of (forall (P:((fofType->Prop)->Prop)), ((P (f x1))->(P (x0 (g x1)))))
% Found eq_ref000:=(eq_ref00 P1):((P1 ((x0 (g x1)) y))->(P1 ((x0 (g x1)) y)))
% Found (eq_ref00 P1) as proof of (P2 ((x0 (g x1)) y))
% Found ((eq_ref0 ((x0 (g x1)) y)) P1) as proof of (P2 ((x0 (g x1)) y))
% Found (((eq_ref Prop) ((x0 (g x1)) y)) P1) as proof of (P2 ((x0 (g x1)) y))
% Found (((eq_ref Prop) ((x0 (g x1)) y)) P1) as proof of (P2 ((x0 (g x1)) y))
% Found eq_ref00:=(eq_ref0 b):(((eq Prop) b) b)
% Found (eq_ref0 b) as proof of (((eq Prop) b) ((f x1) y))
% Found ((eq_ref Prop) b) as proof of (((eq Prop) b) ((f x1) y))
% Found ((eq_ref Prop) b) as proof of (((eq Prop) b) ((f x1) y))
% Found ((eq_ref Prop) b) as proof of (((eq Prop) b) ((f x1) y))
% Found eq_ref00:=(eq_ref0 ((x0 (g x1)) y)):(((eq Prop) ((x0 (g x1)) y)) ((x0 (g x1)) y))
% Found (eq_ref0 ((x0 (g x1)) y)) as proof of (((eq Prop) ((x0 (g x1)) y)) b)
% Found ((eq_ref Prop) ((x0 (g x1)) y)) as proof of (((eq Prop) ((x0 (g x1)) y)) b)
% Found ((eq_ref Prop) ((x0 (g x1)) y)) as proof of (((eq Prop) ((x0 (g x1)) y)) b)
% Found ((eq_ref Prop) ((x0 (g x1)) y)) as proof of (((eq Prop) ((x0 (g x1)) y)) b)
% Found (((eq_trans00000 ((eq_ref Prop) ((x0 (g x1)) y))) ((eq_ref Prop) b)) (((eq_ref Prop) ((x0 (g x1)) y)) P)) as proof of ((P ((x0 (g x1)) y))->(P ((f x1) y)))
% Found (((eq_trans00000 ((eq_ref Prop) ((x0 (g x1)) y))) ((eq_ref Prop) b)) (((eq_ref Prop) ((x0 (g x1)) y)) P)) as proof of ((P ((x0 (g x1)) y))->(P ((f x1) y)))
% Found ((((fun (x2:(((eq Prop) ((x0 (g x1)) y)) b)) (x3:(((eq Prop) b) ((f x1) y)))=> (((eq_trans0000 x2) x3) (fun (x5:Prop)=> ((P ((x0 (g x1)) y))->(P x5))))) ((eq_ref Prop) ((x0 (g x1)) y))) ((eq_ref Prop) b)) (((eq_ref Prop) ((x0 (g x1)) y)) P)) as proof of ((P ((x0 (g x1)) y))->(P ((f x1) y)))
% Found ((((fun (x2:(((eq Prop) ((x0 (g x1)) y)) b)) (x3:(((eq Prop) b) ((f x1) y)))=> ((((eq_trans000 ((f x1) y)) x2) x3) (fun (x5:Prop)=> ((P ((x0 (g x1)) y))->(P x5))))) ((eq_ref Prop) ((x0 (g x1)) y))) ((eq_ref Prop) b)) (((eq_ref Prop) ((x0 (g x1)) y)) P)) as proof of ((P ((x0 (g x1)) y))->(P ((f x1) y)))
% Found ((((fun (x2:(((eq Prop) ((x0 (g x1)) y)) ((f x1) y))) (x3:(((eq Prop) ((f x1) y)) ((f x1) y)))=> (((((eq_trans00 ((f x1) y)) ((f x1) y)) x2) x3) (fun (x5:Prop)=> ((P ((x0 (g x1)) y))->(P x5))))) ((eq_ref Prop) ((x0 (g x1)) y))) ((eq_ref Prop) ((f x1) y))) (((eq_ref Prop) ((x0 (g x1)) y)) P)) as proof of ((P ((x0 (g x1)) y))->(P ((f x1) y)))
% Found ((((fun (x2:(((eq Prop) ((x0 (g x1)) y)) ((f x1) y))) (x3:(((eq Prop) ((f x1) y)) ((f x1) y)))=> ((((((eq_trans0 ((x0 (g x1)) y)) ((f x1) y)) ((f x1) y)) x2) x3) (fun (x5:Prop)=> ((P ((x0 (g x1)) y))->(P x5))))) ((eq_ref Prop) ((x0 (g x1)) y))) ((eq_ref Prop) ((f x1) y))) (((eq_ref Prop) ((x0 (g x1)) y)) P)) as proof of ((P ((x0 (g x1)) y))->(P ((f x1) y)))
% Found ((((fun (x2:(((eq Prop) ((x0 (g x1)) y)) ((f x1) y))) (x3:(((eq Prop) ((f x1) y)) ((f x1) y)))=> (((((((eq_trans Prop) ((x0 (g x1)) y)) ((f x1) y)) ((f x1) y)) x2) x3) (fun (x5:Prop)=> ((P ((x0 (g x1)) y))->(P x5))))) ((eq_ref Prop) ((x0 (g x1)) y))) ((eq_ref Prop) ((f x1) y))) (((eq_ref Prop) ((x0 (g x1)) y)) P)) as proof of ((P ((x0 (g x1)) y))->(P ((f x1) y)))
% Found (fun (P:(Prop->Prop))=> ((((fun (x2:(((eq Prop) ((x0 (g x1)) y)) ((f x1) y))) (x3:(((eq Prop) ((f x1) y)) ((f x1) y)))=> (((((((eq_trans Prop) ((x0 (g x1)) y)) ((f x1) y)) ((f x1) y)) x2) x3) (fun (x5:Prop)=> ((P ((x0 (g x1)) y))->(P x5))))) ((eq_ref Prop) ((x0 (g x1)) y))) ((eq_ref Prop) ((f x1) y))) (((eq_ref Prop) ((x0 (g x1)) y)) P))) as proof of ((P ((x0 (g x1)) y))->(P ((f x1) y)))
% Found eq_ref00:=(eq_ref0 ((x0 (g x1)) y)):(((eq Prop) ((x0 (g x1)) y)) ((x0 (g x1)) y))
% Found (eq_ref0 ((x0 (g x1)) y)) as proof of (((eq Prop) ((x0 (g x1)) y)) b)
% Found ((eq_ref Prop) ((x0 (g x1)) y)) as proof of (((eq Prop) ((x0 (g x1)) y)) b)
% Found ((eq_ref Prop) ((x0 (g x1)) y)) as proof of (((eq Prop) ((x0 (g x1)) y)) b)
% Found ((eq_ref Prop) ((x0 (g x1)) y)) as proof of (((eq Prop) ((x0 (g x1)) y)) b)
% Found eq_ref00:=(eq_ref0 b):(((eq Prop) b) b)
% Found (eq_ref0 b) as proof of (((eq Prop) b) ((f x1) y))
% Found ((eq_ref Prop) b) as proof of (((eq Prop) b) ((f x1) y))
% Found ((eq_ref Prop) b) as proof of (((eq Prop) b) ((f x1) y))
% Found ((eq_ref Prop) b) as proof of (((eq Prop) b) ((f x1) y))
% Found ((eq_trans00000 ((eq_ref Prop) ((x0 (g x1)) y))) ((eq_ref Prop) b)) as proof of ((P ((x0 (g x1)) y))->(P ((f x1) y)))
% Found ((eq_trans00000 ((eq_ref Prop) ((x0 (g x1)) y))) ((eq_ref Prop) b)) as proof of ((P ((x0 (g x1)) y))->(P ((f x1) y)))
% Found (((fun (x2:(((eq Prop) ((x0 (g x1)) y)) b)) (x3:(((eq Prop) b) ((f x1) y)))=> (((eq_trans0000 x2) x3) P)) ((eq_ref Prop) ((x0 (g x1)) y))) ((eq_ref Prop) b)) as proof of ((P ((x0 (g x1)) y))->(P ((f x1) y)))
% Found (((fun (x2:(((eq Prop) ((x0 (g x1)) y)) b)) (x3:(((eq Prop) b) ((f x1) y)))=> ((((eq_trans000 ((f x1) y)) x2) x3) P)) ((eq_ref Prop) ((x0 (g x1)) y))) ((eq_ref Prop) b)) as proof of ((P ((x0 (g x1)) y))->(P ((f x1) y)))
% Found (((fun (x2:(((eq Prop) ((x0 (g x1)) y)) ((f x1) y))) (x3:(((eq Prop) ((f x1) y)) ((f x1) y)))=> (((((eq_trans00 ((f x1) y)) ((f x1) y)) x2) x3) P)) ((eq_ref Prop) ((x0 (g x1)) y))) ((eq_ref Prop) ((f x1) y))) as proof of ((P ((x0 (g x1)) y))->(P ((f x1) y)))
% Found (((fun (x2:(((eq Prop) ((x0 (g x1)) y)) ((f x1) y))) (x3:(((eq Prop) ((f x1) y)) ((f x1) y)))=> ((((((eq_trans0 ((x0 (g x1)) y)) ((f x1) y)) ((f x1) y)) x2) x3) P)) ((eq_ref Prop) ((x0 (g x1)) y))) ((eq_ref Prop) ((f x1) y))) as proof of ((P ((x0 (g x1)) y))->(P ((f x1) y)))
% Found (((fun (x2:(((eq Prop) ((x0 (g x1)) y)) ((f x1) y))) (x3:(((eq Prop) ((f x1) y)) ((f x1) y)))=> (((((((eq_trans Prop) ((x0 (g x1)) y)) ((f x1) y)) ((f x1) y)) x2) x3) P)) ((eq_ref Prop) ((x0 (g x1)) y))) ((eq_ref Prop) ((f x1) y))) as proof of ((P ((x0 (g x1)) y))->(P ((f x1) y)))
% Found (fun (P:(Prop->Prop))=> (((fun (x2:(((eq Prop) ((x0 (g x1)) y)) ((f x1) y))) (x3:(((eq Prop) ((f x1) y)) ((f x1) y)))=> (((((((eq_trans Prop) ((x0 (g x1)) y)) ((f x1) y)) ((f x1) y)) x2) x3) P)) ((eq_ref Prop) ((x0 (g x1)) y))) ((eq_ref Prop) ((f x1) y)))) as proof of ((P ((x0 (g x1)) y))->(P ((f x1) y)))
% Found eq_ref000:=(eq_ref00 P1):((P1 ((x0 (g x1)) y))->(P1 ((x0 (g x1)) y)))
% Found (eq_ref00 P1) as proof of (P2 ((x0 (g x1)) y))
% Found ((eq_ref0 ((x0 (g x1)) y)) P1) as proof of (P2 ((x0 (g x1)) y))
% Found (((eq_ref Prop) ((x0 (g x1)) y)) P1) as proof of (P2 ((x0 (g x1)) y))
% Found (((eq_ref Prop) ((x0 (g x1)) y)) P1) as proof of (P2 ((x0 (g x1)) y))
% Found eq_ref00:=(eq_ref0 (x0 (g x1))):(((eq (fofType->Prop)) (x0 (g x1))) (x0 (g x1)))
% Found (eq_ref0 (x0 (g x1))) as proof of (((eq (fofType->Prop)) (x0 (g x1))) (f x1))
% Found ((eq_ref (fofType->Prop)) (x0 (g x1))) as proof of (((eq (fofType->Prop)) (x0 (g x1))) (f x1))
% Found ((eq_ref (fofType->Prop)) (x0 (g x1))) as proof of (((eq (fofType->Prop)) (x0 (g x1))) (f x1))
% Found ((eq_ref (fofType->Prop)) (x0 (g x1))) as proof of (((eq (fofType->Prop)) (x0 (g x1))) (f x1))
% Found (eq_sym100 ((eq_ref (fofType->Prop)) (x0 (g x1)))) as proof of (((eq (fofType->Prop)) (f x1)) (x0 (g x1)))
% Found ((eq_sym10 (f x1)) ((eq_ref (fofType->Prop)) (x0 (g x1)))) as proof of (((eq (fofType->Prop)) (f x1)) (x0 (g x1)))
% Found (((eq_sym1 (x0 (g x1))) (f x1)) ((eq_ref (fofType->Prop)) (x0 (g x1)))) as proof of (((eq (fofType->Prop)) (f x1)) (x0 (g x1)))
% Found ((((eq_sym (fofType->Prop)) (x0 (g x1))) (f x1)) ((eq_ref (fofType->Prop)) (x0 (g x1)))) as proof of (((eq (fofType->Prop)) (f x1)) (x0 (g x1)))
% Found eq_ref00:=(eq_ref0 (x0 (g x1))):(((eq (fofType->Prop)) (x0 (g x1))) (x0 (g x1)))
% Found (eq_ref0 (x0 (g x1))) as proof of (((eq (fofType->Prop)) (x0 (g x1))) (f x1))
% Found ((eq_ref (fofType->Prop)) (x0 (g x1))) as proof of (((eq (fofType->Prop)) (x0 (g x1))) (f x1))
% Found ((eq_ref (fofType->Prop)) (x0 (g x1))) as proof of (((eq (fofType->Prop)) (x0 (g x1))) (f x1))
% Found ((eq_ref (fofType->Prop)) (x0 (g x1))) as proof of (((eq (fofType->Prop)) (x0 (g x1))) (f x1))
% Found (eq_sym100 ((eq_ref (fofType->Prop)) (x0 (g x1)))) as proof of (((eq (fofType->Prop)) (f x1)) (x0 (g x1)))
% Found ((eq_sym10 (f x1)) ((eq_ref (fofType->Prop)) (x0 (g x1)))) as proof of (((eq (fofType->Prop)) (f x1)) (x0 (g x1)))
% Found (((eq_sym1 (x0 (g x1))) (f x1)) ((eq_ref (fofType->Prop)) (x0 (g x1)))) as proof of (((eq (fofType->Prop)) (f x1)) (x0 (g x1)))
% Found ((((eq_sym (fofType->Prop)) (x0 (g x1))) (f x1)) ((eq_ref (fofType->Prop)) (x0 (g x1)))) as proof of (((eq (fofType->Prop)) (f x1)) (x0 (g x1)))
% Found eq_ref00:=(eq_ref0 (x0 (g x1))):(((eq (fofType->Prop)) (x0 (g x1))) (x0 (g x1)))
% Found (eq_ref0 (x0 (g x1))) as proof of (((eq (fofType->Prop)) (x0 (g x1))) (f x1))
% Found ((eq_ref (fofType->Prop)) (x0 (g x1))) as proof of (((eq (fofType->Prop)) (x0 (g x1))) (f x1))
% Found ((eq_ref (fofType->Prop)) (x0 (g x1))) as proof of (((eq (fofType->Prop)) (x0 (g x1))) (f x1))
% Found ((eq_ref (fofType->Prop)) (x0 (g x1))) as proof of (((eq (fofType->Prop)) (x0 (g x1))) (f x1))
% Found (eq_sym100 ((eq_ref (fofType->Prop)) (x0 (g x1)))) as proof of (((eq (fofType->Prop)) (f x1)) (x0 (g x1)))
% Found ((eq_sym10 (f x1)) ((eq_ref (fofType->Prop)) (x0 (g x1)))) as proof of (((eq (fofType->Prop)) (f x1)) (x0 (g x1)))
% Found (((eq_sym1 (x0 (g x1))) (f x1)) ((eq_ref (fofType->Prop)) (x0 (g x1)))) as proof of (((eq (fofType->Prop)) (f x1)) (x0 (g x1)))
% Found ((((eq_sym (fofType->Prop)) (x0 (g x1))) (f x1)) ((eq_ref (fofType->Prop)) (x0 (g x1)))) as proof of (((eq (fofType->Prop)) (f x1)) (x0 (g x1)))
% Found eq_ref00:=(eq_ref0 (x0 (g x1))):(((eq (fofType->Prop)) (x0 (g x1))) (x0 (g x1)))
% Found (eq_ref0 (x0 (g x1))) as proof of (((eq (fofType->Prop)) (x0 (g x1))) (f x1))
% Found ((eq_ref (fofType->Prop)) (x0 (g x1))) as proof of (((eq (fofType->Prop)) (x0 (g x1))) (f x1))
% Found ((eq_ref (fofType->Prop)) (x0 (g x1))) as proof of (((eq (fofType->Prop)) (x0 (g x1))) (f x1))
% Found ((eq_ref (fofType->Prop)) (x0 (g x1))) as proof of (((eq (fofType->Prop)) (x0 (g x1))) (f x1))
% Found (eq_sym100 ((eq_ref (fofType->Prop)) (x0 (g x1)))) as proof of (((eq (fofType->Prop)) (f x1)) (x0 (g x1)))
% Found ((eq_sym10 (f x1)) ((eq_ref (fofType->Prop)) (x0 (g x1)))) as proof of (((eq (fofType->Prop)) (f x1)) (x0 (g x1)))
% Found (((eq_sym1 (x0 (g x1))) (f x1)) ((eq_ref (fofType->Prop)) (x0 (g x1)))) as proof of (((eq (fofType->Prop)) (f x1)) (x0 (g x1)))
% Found ((((eq_sym (fofType->Prop)) (x0 (g x1))) (f x1)) ((eq_ref (fofType->Prop)) (x0 (g x1)))) as proof of (((eq (fofType->Prop)) (f x1)) (x0 (g x1)))
% Found eq_ref00:=(eq_ref0 (x0 (g x1))):(((eq (fofType->Prop)) (x0 (g x1))) (x0 (g x1)))
% Found (eq_ref0 (x0 (g x1))) as proof of (((eq (fofType->Prop)) (x0 (g x1))) (f x1))
% Found ((eq_ref (fofType->Prop)) (x0 (g x1))) as proof of (((eq (fofType->Prop)) (x0 (g x1))) (f x1))
% Found ((eq_ref (fofType->Prop)) (x0 (g x1))) as proof of (((eq (fofType->Prop)) (x0 (g x1))) (f x1))
% Found ((eq_ref (fofType->Prop)) (x0 (g x1))) as proof of (((eq (fofType->Prop)) (x0 (g x1))) (f x1))
% Found (eq_sym100 ((eq_ref (fofType->Prop)) (x0 (g x1)))) as proof of (((eq (fofType->Prop)) (f x1)) (x0 (g x1)))
% Found ((eq_sym10 (f x1)) ((eq_ref (fofType->Prop)) (x0 (g x1)))) as proof of (((eq (fofType->Prop)) (f x1)) (x0 (g x1)))
% Found (((eq_sym1 (x0 (g x1))) (f x1)) ((eq_ref (fofType->Prop)) (x0 (g x1)))) as proof of (((eq (fofType->Prop)) (f x1)) (x0 (g x1)))
% Found ((((eq_sym (fofType->Prop)) (x0 (g x1))) (f x1)) ((eq_ref (fofType->Prop)) (x0 (g x1)))) as proof of (((eq (fofType->Prop)) (f x1)) (x0 (g x1)))
% Found eq_ref00:=(eq_ref0 (x0 (g x1))):(((eq (fofType->Prop)) (x0 (g x1))) (x0 (g x1)))
% Found (eq_ref0 (x0 (g x1))) as proof of (((eq (fofType->Prop)) (x0 (g x1))) (f x1))
% Found ((eq_ref (fofType->Prop)) (x0 (g x1))) as proof of (((eq (fofType->Prop)) (x0 (g x1))) (f x1))
% Found ((eq_ref (fofType->Prop)) (x0 (g x1))) as proof of (((eq (fofType->Prop)) (x0 (g x1))) (f x1))
% Found ((eq_ref (fofType->Prop)) (x0 (g x1))) as proof of (((eq (fofType->Prop)) (x0 (g x1))) (f x1))
% Found (eq_sym100 ((eq_ref (fofType->Prop)) (x0 (g x1)))) as proof of (((eq (fofType->Prop)) (f x1)) (x0 (g x1)))
% Found ((eq_sym10 (f x1)) ((eq_ref (fofType->Prop)) (x0 (g x1)))) as proof of (((eq (fofType->Prop)) (f x1)) (x0 (g x1)))
% Found (((eq_sym1 (x0 (g x1))) (f x1)) ((eq_ref (fofType->Prop)) (x0 (g x1)))) as proof of (((eq (fofType->Prop)) (f x1)) (x0 (g x1)))
% Found ((((eq_sym (fofType->Prop)) (x0 (g x1))) (f x1)) ((eq_ref (fofType->Prop)) (x0 (g x1)))) as proof of (((eq (fofType->Prop)) (f x1)) (x0 (g x1)))
% Found eq_ref00:=(eq_ref0 (x0 (g x1))):(((eq (fofType->Prop)) (x0 (g x1))) (x0 (g x1)))
% Found (eq_ref0 (x0 (g x1))) as proof of (((eq (fofType->Prop)) (x0 (g x1))) (f x1))
% Found ((eq_ref (fofType->Prop)) (x0 (g x1))) as proof of (((eq (fofType->Prop)) (x0 (g x1))) (f x1))
% Found ((eq_ref (fofType->Prop)) (x0 (g x1))) as proof of (((eq (fofType->Prop)) (x0 (g x1))) (f x1))
% Found ((eq_ref (fofType->Prop)) (x0 (g x1))) as proof of (((eq (fofType->Prop)) (x0 (g x1))) (f x1))
% Found (eq_sym100 ((eq_ref (fofType->Prop)) (x0 (g x1)))) as proof of (((eq (fofType->Prop)) (f x1)) (x0 (g x1)))
% Found ((eq_sym10 (f x1)) ((eq_ref (fofType->Prop)) (x0 (g x1)))) as proof of (((eq (fofType->Prop)) (f x1)) (x0 (g x1)))
% Found (((eq_sym1 (x0 (g x1))) (f x1)) ((eq_ref (fofType->Prop)) (x0 (g x1)))) as proof of (((eq (fofType->Prop)) (f x1)) (x0 (g x1)))
% Found ((((eq_sym (fofType->Prop)) (x0 (g x1))) (f x1)) ((eq_ref (fofType->Prop)) (x0 (g x1)))) as proof of (((eq (fofType->Prop)) (f x1)) (x0 (g x1)))
% Found eq_ref00:=(eq_ref0 (x0 (g x1))):(((eq (fofType->Prop)) (x0 (g x1))) (x0 (g x1)))
% Found (eq_ref0 (x0 (g x1))) as proof of (((eq (fofType->Prop)) (x0 (g x1))) (f x1))
% Found ((eq_ref (fofType->Prop)) (x0 (g x1))) as proof of (((eq (fofType->Prop)) (x0 (g x1))) (f x1))
% Found ((eq_ref (fofType->Prop)) (x0 (g x1))) as proof of (((eq (fofType->Prop)) (x0 (g x1))) (f x1))
% Found ((eq_ref (fofType->Prop)) (x0 (g x1))) as proof of (((eq (fofType->Prop)) (x0 (g x1))) (f x1))
% Found (eq_sym100 ((eq_ref (fofType->Prop)) (x0 (g x1)))) as proof of (((eq (fofType->Prop)) (f x1)) (x0 (g x1)))
% Found ((eq_sym10 (f x1)) ((eq_ref (fofType->Prop)) (x0 (g x1)))) as proof of (((eq (fofType->Prop)) (f x1)) (x0 (g x1)))
% Found (((eq_sym1 (x0 (g x1))) (f x1)) ((eq_ref (fofType->Prop)) (x0 (g x1)))) as proof of (((eq (fofType->Prop)) (f x1)) (x0 (g x1)))
% Found ((((eq_sym (fofType->Prop)) (x0 (g x1))) (f x1)) ((eq_ref (fofType->Prop)) (x0 (g x1)))) as proof of (((eq (fofType->Prop)) (f x1)) (x0 (g x1)))
% Found eq_ref00:=(eq_ref0 (x0 (g x1))):(((eq (fofType->Prop)) (x0 (g x1))) (x0 (g x1)))
% Found (eq_ref0 (x0 (g x1))) as proof of (((eq (fofType->Prop)) (x0 (g x1))) (f x1))
% Found ((eq_ref (fofType->Prop)) (x0 (g x1))) as proof of (((eq (fofType->Prop)) (x0 (g x1))) (f x1))
% Found ((eq_ref (fofType->Prop)) (x0 (g x1))) as proof of (((eq (fofType->Prop)) (x0 (g x1))) (f x1))
% Found ((eq_ref (fofType->Prop)) (x0 (g x1))) as proof of (((eq (fofType->Prop)) (x0 (g x1))) (f x1))
% Found (eq_sym100 ((eq_ref (fofType->Prop)) (x0 (g x1)))) as proof of (((eq (fofType->Prop)) (f x1)) (x0 (g x1)))
% Found ((eq_sym10 (f x1)) ((eq_ref (fofType->Prop)) (x0 (g x1)))) as proof of (((eq (fofType->Prop)) (f x1)) (x0 (g x1)))
% Found (((eq_sym1 (x0 (g x1))) (f x1)) ((eq_ref (fofType->Prop)) (x0 (g x1)))) as proof of (((eq (fofType->Prop)) (f x1)) (x0 (g x1)))
% Found ((((eq_sym (fofType->Prop)) (x0 (g x1))) (f x1)) ((eq_ref (fofType->Prop)) (x0 (g x1)))) as proof of (((eq (fofType->Prop)) (f x1)) (x0 (g x1)))
% Found eq_ref00:=(eq_ref0 (x0 (g x1))):(((eq (fofType->Prop)) (x0 (g x1))) (x0 (g x1)))
% Found (eq_ref0 (x0 (g x1))) as proof of (((eq (fofType->Prop)) (x0 (g x1))) (f x1))
% Found ((eq_ref (fofType->Prop)) (x0 (g x1))) as proof of (((eq (fofType->Prop)) (x0 (g x1))) (f x1))
% Found ((eq_ref (fofType->Prop)) (x0 (g x1))) as proof of (((eq (fofType->Prop)) (x0 (g x1))) (f x1))
% Found ((eq_ref (fofType->Prop)) (x0 (g x1))) as proof of (((eq (fofType->Prop)) (x0 (g x1))) (f x1))
% Found (eq_sym100 ((eq_ref (fofType->Prop)) (x0 (g x1)))) as proof of (((eq (fofType->Prop)) (f x1)) (x0 (g x1)))
% Found ((eq_sym10 (f x1)) ((eq_ref (fofType->Prop)) (x0 (g x1)))) as proof of (((eq (fofType->Prop)) (f x1)) (x0 (g x1)))
% Found (((eq_sym1 (x0 (g x1))) (f x1)) ((eq_ref (fofType->Prop)) (x0 (g x1)))) as proof of (((eq (fofType->Prop)) (f x1)) (x0 (g x1)))
% Found ((((eq_sym (fofType->Prop)) (x0 (g x1))) (f x1)) ((eq_ref (fofType->Prop)) (x0 (g x1)))) as proof of (((eq (fofType->Prop)) (f x1)) (x0 (g x1)))
% Found eq_ref00:=(eq_ref0 (x0 (g x1))):(((eq (fofType->Prop)) (x0 (g x1))) (x0 (g x1)))
% Found (eq_ref0 (x0 (g x1))) as proof of (((eq (fofType->Prop)) (x0 (g x1))) (f x1))
% Found ((eq_ref (fofType->Prop)) (x0 (g x1))) as proof of (((eq (fofType->Prop)) (x0 (g x1))) (f x1))
% Found ((eq_ref (fofType->Prop)) (x0 (g x1))) as proof of (((eq (fofType->Prop)) (x0 (g x1))) (f x1))
% Found ((eq_ref (fofType->Prop)) (x0 (g x1))) as proof of (((eq (fofType->Prop)) (x0 (g x1))) (f x1))
% Found (eq_sym100 ((eq_ref (fofType->Prop)) (x0 (g x1)))) as proof of (((eq (fofType->Prop)) (f x1)) (x0 (g x1)))
% Found ((eq_sym10 (f x1)) ((eq_ref (fofType->Prop)) (x0 (g x1)))) as proof of (((eq (fofType->Prop)) (f x1)) (x0 (g x1)))
% Found (((eq_sym1 (x0 (g x1))) (f x1)) ((eq_ref (fofType->Prop)) (x0 (g x1)))) as proof of (((eq (fofType->Prop)) (f x1)) (x0 (g x1)))
% Found ((((eq_sym (fofType->Prop)) (x0 (g x1))) (f x1)) ((eq_ref (fofType->Prop)) (x0 (g x1)))) as proof of (((eq (fofType->Prop)) (f x1)) (x0 (g x1)))
% Found eq_ref00:=(eq_ref0 (x0 (g x1))):(((eq (fofType->Prop)) (x0 (g x1))) (x0 (g x1)))
% Found (eq_ref0 (x0 (g x1))) as proof of (((eq (fofType->Prop)) (x0 (g x1))) (f x1))
% Found ((eq_ref (fofType->Prop)) (x0 (g x1))) as proof of (((eq (fofType->Prop)) (x0 (g x1))) (f x1))
% Found ((eq_ref (fofType->Prop)) (x0 (g x1))) as proof of (((eq (fofType->Prop)) (x0 (g x1))) (f x1))
% Found ((eq_ref (fofType->Prop)) (x0 (g x1))) as proof of (((eq (fofType->Prop)) (x0 (g x1))) (f x1))
% Found (eq_sym100 ((eq_ref (fofType->Prop)) (x0 (g x1)))) as proof of (((eq (fofType->Prop)) (f x1)) (x0 (g x1)))
% Found ((eq_sym10 (f x1)) ((eq_ref (fofType->Prop)) (x0 (g x1)))) as proof of (((eq (fofType->Prop)) (f x1)) (x0 (g x1)))
% Found (((eq_sym1 (x0 (g x1))) (f x1)) ((eq_ref (fofType->Prop)) (x0 (g x1)))) as proof of (((eq (fofType->Prop)) (f x1)) (x0 (g x1)))
% Found ((((eq_sym (fofType->Prop)) (x0 (g x1))) (f x1)) ((eq_ref (fofType->Prop)) (x0 (g x1)))) as proof of (((eq (fofType->Prop)) (f x1)) (x0 (g x1)))
% Found eq_ref00:=(eq_ref0 (x0 (g x1))):(((eq (fofType->Prop)) (x0 (g x1))) (x0 (g x1)))
% Found (eq_ref0 (x0 (g x1))) as proof of (((eq (fofType->Prop)) (x0 (g x1))) (f x1))
% Found ((eq_ref (fofType->Prop)) (x0 (g x1))) as proof of (((eq (fofType->Prop)) (x0 (g x1))) (f x1))
% Found ((eq_ref (fofType->Prop)) (x0 (g x1))) as proof of (((eq (fofType->Prop)) (x0 (g x1))) (f x1))
% Found ((eq_ref (fofType->Prop)) (x0 (g x1))) as proof of (((eq (fofType->Prop)) (x0 (g x1))) (f x1))
% Found (eq_sym100 ((eq_ref (fofType->Prop)) (x0 (g x1)))) as proof of (((eq (fofType->Prop)) (f x1)) (x0 (g x1)))
% Found ((eq_sym10 (f x1)) ((eq_ref (fofType->Prop)) (x0 (g x1)))) as proof of (((eq (fofType->Prop)) (f x1)) (x0 (g x1)))
% Found (((eq_sym1 (x0 (g x1))) (f x1)) ((eq_ref (fofType->Prop)) (x0 (g x1)))) as proof of (((eq (fofType->Prop)) (f x1)) (x0 (g x1)))
% Found ((((eq_sym (fofType->Prop)) (x0 (g x1))) (f x1)) ((eq_ref (fofType->Prop)) (x0 (g x1)))) as proof of (((eq (fofType->Prop)) (f x1)) (x0 (g x1)))
% Found eq_ref00:=(eq_ref0 (x0 (g x1))):(((eq (fofType->Prop)) (x0 (g x1))) (x0 (g x1)))
% Found (eq_ref0 (x0 (g x1))) as proof of (((eq (fofType->Prop)) (x0 (g x1))) (f x1))
% Found ((eq_ref (fofType->Prop)) (x0 (g x1))) as proof of (((eq (fofType->Prop)) (x0 (g x1))) (f x1))
% Found ((eq_ref (fofType->Prop)) (x0 (g x1))) as proof of (((eq (fofType->Prop)) (x0 (g x1))) (f x1))
% Found ((eq_ref (fofType->Prop)) (x0 (g x1))) as proof of (((eq (fofType->Prop)) (x0 (g x1))) (f x1))
% Found (eq_sym100 ((eq_ref (fofType->Prop)) (x0 (g x1)))) as proof of (((eq (fofType->Prop)) (f x1)) (x0 (g x1)))
% Found ((eq_sym10 (f x1)) ((eq_ref (fofType->Prop)) (x0 (g x1)))) as proof of (((eq (fofType->Prop)) (f x1)) (x0 (g x1)))
% Found (((eq_sym1 (x0 (g x1))) (f x1)) ((eq_ref (fofType->Prop)) (x0 (g x1)))) as proof of (((eq (fofType->Prop)) (f x1)) (x0 (g x1)))
% Found ((((eq_sym (fofType->Prop)) (x0 (g x1))) (f x1)) ((eq_ref (fofType->Prop)) (x0 (g x1)))) as proof of (((eq (fofType->Prop)) (f x1)) (x0 (g x1)))
% Found eq_ref00:=(eq_ref0 (x0 (g x1))):(((eq (fofType->Prop)) (x0 (g x1))) (x0 (g x1)))
% Found (eq_ref0 (x0 (g x1))) as proof of (((eq (fofType->Prop)) (x0 (g x1))) (f x1))
% Found ((eq_ref (fofType->Prop)) (x0 (g x1))) as proof of (((eq (fofType->Prop)) (x0 (g x1))) (f x1))
% Found ((eq_ref (fofType->Prop)) (x0 (g x1))) as proof of (((eq (fofType->Prop)) (x0 (g x1))) (f x1))
% Found ((eq_ref (fofType->Prop)) (x0 (g x1))) as proof of (((eq (fofType->Prop)) (x0 (g x1))) (f x1))
% Found (eq_sym100 ((eq_ref (fofType->Prop)) (x0 (g x1)))) as proof of (((eq (fofType->Prop)) (f x1)) (x0 (g x1)))
% Found ((eq_sym10 (f x1)) ((eq_ref (fofType->Prop)) (x0 (g x1)))) as proof of (((eq (fofType->Prop)) (f x1)) (x0 (g x1)))
% Found (((eq_sym1 (x0 (g x1))) (f x1)) ((eq_ref (fofType->Prop)) (x0 (g x1)))) as proof of (((eq (fofType->Prop)) (f x1)) (x0 (g x1)))
% Found ((((eq_sym (fofType->Prop)) (x0 (g x1))) (f x1)) ((eq_ref (fofType->Prop)) (x0 (g x1)))) as proof of (((eq (fofType->Prop)) (f x1)) (x0 (g x1)))
% Found eq_ref00:=(eq_ref0 (x0 (g x1))):(((eq (fofType->Prop)) (x0 (g x1))) (x0 (g x1)))
% Found (eq_ref0 (x0 (g x1))) as proof of (((eq (fofType->Prop)) (x0 (g x1))) (f x1))
% Found ((eq_ref (fofType->Prop)) (x0 (g x1))) as proof of (((eq (fofType->Prop)) (x0 (g x1))) (f x1))
% Found ((eq_ref (fofType->Prop)) (x0 (g x1))) as proof of (((eq (fofType->Prop)) (x0 (g x1))) (f x1))
% Found ((eq_ref (fofType->Prop)) (x0 (g x1))) as proof of (((eq (fofType->Prop)) (x0 (g x1))) (f x1))
% Found (eq_sym100 ((eq_ref (fofType->Prop)) (x0 (g x1)))) as proof of (((eq (fofType->Prop)) (f x1)) (x0 (g x1)))
% Found ((eq_sym10 (f x1)) ((eq_ref (fofType->Prop)) (x0 (g x1)))) as proof of (((eq (fofType->Prop)) (f x1)) (x0 (g x1)))
% Found (((eq_sym1 (x0 (g x1))) (f x1)) ((eq_ref (fofType->Prop)) (x0 (g x1)))) as proof of (((eq (fofType->Prop)) (f x1)) (x0 (g x1)))
% Found ((((eq_sym (fofType->Prop)) (x0 (g x1))) (f x1)) ((eq_ref (fofType->Prop)) (x0 (g x1)))) as proof of (((eq (fofType->Prop)) (f x1)) (x0 (g x1)))
% Found eq_ref00:=(eq_ref0 ((x0 (g x1)) y)):(((eq Prop) ((x0 (g x1)) y)) ((x0 (g x1)) y))
% Found (eq_ref0 ((x0 (g x1)) y)) as proof of (((eq Prop) ((x0 (g x1)) y)) b)
% Found ((eq_ref Prop) ((x0 (g x1)) y)) as proof of (((eq Prop) ((x0 (g x1)) y)) b)
% Found ((eq_ref Prop) ((x0 (g x1)) y)) as proof of (((eq Prop) ((x0 (g x1)) y)) b)
% Found ((eq_ref Prop) ((x0 (g x1)) y)) as proof of (((eq Prop) ((x0 (g x1)) y)) b)
% Found eq_ref00:=(eq_ref0 b):(((eq Prop) b) b)
% Found (eq_ref0 b) as proof of (((eq Prop) b) ((f x1) y))
% Found ((eq_ref Prop) b) as proof of (((eq Prop) b) ((f x1) y))
% Found ((eq_ref Prop) b) as proof of (((eq Prop) b) ((f x1) y))
% Found ((eq_ref Prop) b) as proof of (((eq Prop) b) ((f x1) y))
% Found ((eq_trans0000 ((eq_ref Prop) ((x0 (g x1)) y))) ((eq_ref Prop) b)) as proof of (((eq Prop) ((x0 (g x1)) y)) ((f x1) y))
% Found (((eq_trans000 ((f x1) y)) ((eq_ref Prop) ((x0 (g x1)) y))) ((eq_ref Prop) b)) as proof of (((eq Prop) ((x0 (g x1)) y)) ((f x1) y))
% Found ((((eq_trans00 ((f x1) y)) ((f x1) y)) ((eq_ref Prop) ((x0 (g x1)) y))) ((eq_ref Prop) ((f x1) y))) as proof of (((eq Prop) ((x0 (g x1)) y)) ((f x1) y))
% Found (((((eq_trans0 ((x0 (g x1)) y)) ((f x1) y)) ((f x1) y)) ((eq_ref Prop) ((x0 (g x1)) y))) ((eq_ref Prop) ((f x1) y))) as proof of (((eq Prop) ((x0 (g x1)) y)) ((f x1) y))
% Found ((((((eq_trans Prop) ((x0 (g x1)) y)) ((f x1) y)) ((f x1) y)) ((eq_ref Prop) ((x0 (g x1)) y))) ((eq_ref Prop) ((f x1) y))) as proof of (((eq Prop) ((x0 (g x1)) y)) ((f x1) y))
% Found eq_ref00:=(eq_ref0 b):(((eq Prop) b) b)
% Found (eq_ref0 b) as proof of (((eq Prop) b) ((f x1) y))
% Found ((eq_ref Prop) b) as proof of (((eq Prop) b) ((f x1) y))
% Found ((eq_ref Prop) b) as proof of (((eq Prop) b) ((f x1) y))
% Found ((eq_ref Prop) b) as proof of (((eq Prop) b) ((f x1) y))
% Found eq_ref00:=(eq_ref0 ((x0 (g x1)) y)):(((eq Prop) ((x0 (g x1)) y)) ((x0 (g x1)) y))
% Found (eq_ref0 ((x0 (g x1)) y)) as proof of (((eq Prop) ((x0 (g x1)) y)) b)
% Found ((eq_ref Prop) ((x0 (g x1)) y)) as proof of (((eq Prop) ((x0 (g x1)) y)) b)
% Found ((eq_ref Prop) ((x0 (g x1)) y)) as proof of (((eq Prop) ((x0 (g x1)) y)) b)
% Found ((eq_ref Prop) ((x0 (g x1)) y)) as proof of (((eq Prop) ((x0 (g x1)) y)) b)
% Found ((eq_trans0000 ((eq_ref Prop) ((x0 (g x1)) y))) ((eq_ref Prop) b)) as proof of (((eq Prop) ((x0 (g x1)) y)) ((f x1) y))
% Found (((eq_trans000 ((f x1) y)) ((eq_ref Prop) ((x0 (g x1)) y))) ((eq_ref Prop) b)) as proof of (((eq Prop) ((x0 (g x1)) y)) ((f x1) y))
% Found ((((eq_trans00 ((f x1) y)) ((f x1) y)) ((eq_ref Prop) ((x0 (g x1)) y))) ((eq_ref Prop) ((f x1) y))) as proof of (((eq Prop) ((x0 (g x1)) y)) ((f x1) y))
% Found (((((eq_trans0 ((x0 (g x1)) y)) ((f x1) y)) ((f x1) y)) ((eq_ref Prop) ((x0 (g x1)) y))) ((eq_ref Prop) ((f x1) y))) as proof of (((eq Prop) ((x0 (g x1)) y)) ((f x1) y))
% Found ((((((eq_trans Prop) ((x0 (g x1)) y)) ((f x1) y)) ((f x1) y)) ((eq_ref Prop) ((x0 (g x1)) y))) ((eq_ref Prop) ((f x1) y))) as proof of (((eq Prop) ((x0 (g x1)) y)) ((f x1) y))
% Found eq_ref00:=(eq_ref0 y):(((eq fofType) y) y)
% Found (eq_ref0 y) as proof of (((eq fofType) y) b)
% Found ((eq_ref fofType) y) as proof of (((eq fofType) y) b)
% Found ((eq_ref fofType) y) as proof of (((eq fofType) y) b)
% Found ((eq_ref fofType) y) as proof of (((eq fofType) y) b)
% Found (eq_substitution00000 ((eq_ref fofType) y)) as proof of (((eq Prop) ((x0 (g x1)) y)) ((f x1) y))
% Found ((eq_substitution0000 (fun (x5:fofType)=> ((x0 (g x1)) y))) ((eq_ref fofType) y)) as proof of (((eq Prop) ((x0 (g x1)) y)) ((f x1) y))
% Found (((eq_substitution000 y) (fun (x5:fofType)=> ((x0 (g x1)) y))) ((eq_ref fofType) y)) as proof of (((eq Prop) ((x0 (g x1)) y)) ((f x1) y))
% Found ((((eq_substitution00 y) y) (fun (x5:fofType)=> ((x0 (g x1)) y))) ((eq_ref fofType) y)) as proof of (((eq Prop) ((x0 (g x1)) y)) ((f x1) y))
% Found (((((eq_substitution0 Prop) y) y) (fun (x5:fofType)=> ((x0 (g x1)) y))) ((eq_ref fofType) y)) as proof of (((eq Prop) ((x0 (g x1)) y)) ((f x1) y))
% Found ((((((eq_substitution fofType) Prop) y) y) (fun (x5:fofType)=> ((x0 (g x1)) y))) ((eq_ref fofType) y)) as proof of (((eq Prop) ((x0 (g x1)) y)) ((f x1) y))
% Found ((((((eq_substitution fofType) Prop) y) y) (fun (x5:fofType)=> ((x0 (g x1)) y))) ((eq_ref fofType) y)) as proof of (((eq Prop) ((x0 (g x1)) y)) ((f x1) y))
% Found eq_ref00:=(eq_ref0 y):(((eq fofType) y) y)
% Found (eq_ref0 y) as proof of (((eq fofType) y) b)
% Found ((eq_ref fofType) y) as proof of (((eq fofType) y) b)
% Found ((eq_ref fofType) y) as proof of (((eq fofType) y) b)
% Found ((eq_ref fofType) y) as proof of (((eq fofType) y) b)
% Found (eq_substitution00000 ((eq_ref fofType) y)) as proof of (((eq Prop) ((x0 (g x1)) y)) ((f x1) y))
% Found ((eq_substitution0000 (fun (x5:fofType)=> ((x0 (g x1)) y))) ((eq_ref fofType) y)) as proof of (((eq Prop) ((x0 (g x1)) y)) ((f x1) y))
% Found (((eq_substitution000 y) (fun (x5:fofType)=> ((x0 (g x1)) y))) ((eq_ref fofType) y)) as proof of (((eq Prop) ((x0 (g x1)) y)) ((f x1) y))
% Found ((((eq_substitution00 y) y) (fun (x5:fofType)=> ((x0 (g x1)) y))) ((eq_ref fofType) y)) as proof of (((eq Prop) ((x0 (g x1)) y)) ((f x1) y))
% Found (((((eq_substitution0 Prop) y) y) (fun (x5:fofType)=> ((x0 (g x1)) y))) ((eq_ref fofType) y)) as proof of (((eq Prop) ((x0 (g x1)) y)) ((f x1) y))
% Found ((((((eq_substitution fofType) Prop) y) y) (fun (x5:fofType)=> ((x0 (g x1)) y))) ((eq_ref fofType) y)) as proof of (((eq Prop) ((x0 (g x1)) y)) ((f x1) y))
% Found ((((((eq_substitution fofType) Prop) y) y) (fun (x5:fofType)=> ((x0 (g x1)) y))) ((eq_ref fofType) y)) as proof of (((eq Prop) ((x0 (g x1)) y)) ((f x1) y))
% Found eq_ref000:=(eq_ref00 P):((P (f x1))->(P (f x1)))
% Found (eq_ref00 P) as proof of (P0 (f x1))
% Found ((eq_ref0 (f x1)) P) as proof of (P0 (f x1))
% Found (((eq_ref (fofType->Prop)) (f x1)) P) as proof of (P0 (f x1))
% Found (((eq_ref (fofType->Prop)) (f x1)) P) as proof of (P0 (f x1))
% Found eq_ref00:=(eq_ref0 (x0 (g x1))):(((eq (fofType->Prop)) (x0 (g x1))) (x0 (g x1)))
% Found (eq_ref0 (x0 (g x1))) as proof of (((eq (fofType->Prop)) (x0 (g x1))) (f x1))
% Found ((eq_ref (fofType->Prop)) (x0 (g x1))) as proof of (((eq (fofType->Prop)) (x0 (g x1))) (f x1))
% Found ((eq_ref (fofType->Prop)) (x0 (g x1))) as proof of (((eq (fofType->Prop)) (x0 (g x1))) (f x1))
% Found ((eq_ref (fofType->Prop)) (x0 (g x1))) as proof of (((eq (fofType->Prop)) (x0 (g x1))) (f x1))
% Found ((eq_sym1000 ((eq_ref (fofType->Prop)) (x0 (g x1)))) (((eq_ref (fofType->Prop)) (f x1)) P)) as proof of ((P (f x1))->(P (x0 (g x1))))
% Found ((eq_sym1000 ((eq_ref (fofType->Prop)) (x0 (g x1)))) (((eq_ref (fofType->Prop)) (f x1)) P)) as proof of ((P (f x1))->(P (x0 (g x1))))
% Found (((fun (x2:(((eq (fofType->Prop)) (x0 (g x1))) (f x1)))=> ((eq_sym100 x2) (fun (x4:(fofType->Prop))=> ((P (f x1))->(P x4))))) ((eq_ref (fofType->Prop)) (x0 (g x1)))) (((eq_ref (fofType->Prop)) (f x1)) P)) as proof of ((P (f x1))->(P (x0 (g x1))))
% Found (((fun (x2:(((eq (fofType->Prop)) (x0 (g x1))) (f x1)))=> (((eq_sym10 (f x1)) x2) (fun (x4:(fofType->Prop))=> ((P (f x1))->(P x4))))) ((eq_ref (fofType->Prop)) (x0 (g x1)))) (((eq_ref (fofType->Prop)) (f x1)) P)) as proof of ((P (f x1))->(P (x0 (g x1))))
% Found (((fun (x2:(((eq (fofType->Prop)) (x0 (g x1))) (f x1)))=> ((((eq_sym1 (x0 (g x1))) (f x1)) x2) (fun (x4:(fofType->Prop))=> ((P (f x1))->(P x4))))) ((eq_ref (fofType->Prop)) (x0 (g x1)))) (((eq_ref (fofType->Prop)) (f x1)) P)) as proof of ((P (f x1))->(P (x0 (g x1))))
% Found (((fun (x2:(((eq (fofType->Prop)) (x0 (g x1))) (f x1)))=> (((((eq_sym (fofType->Prop)) (x0 (g x1))) (f x1)) x2) (fun (x4:(fofType->Prop))=> ((P (f x1))->(P x4))))) ((eq_ref (fofType->Prop)) (x0 (g x1)))) (((eq_ref (fofType->Prop)) (f x1)) P)) as proof of ((P (f x1))->(P (x0 (g x1))))
% Found (fun (P:((fofType->Prop)->Prop))=> (((fun (x2:(((eq (fofType->Prop)) (x0 (g x1))) (f x1)))=> (((((eq_sym (fofType->Prop)) (x0 (g x1))) (f x1)) x2) (fun (x4:(fofType->Prop))=> ((P (f x1))->(P x4))))) ((eq_ref (fofType->Prop)) (x0 (g x1)))) (((eq_ref (fofType->Prop)) (f x1)) P))) as proof of ((P (f x1))->(P (x0 (g x1))))
% Found (fun (P:((fofType->Prop)->Prop))=> (((fun (x2:(((eq (fofType->Prop)) (x0 (g x1))) (f x1)))=> (((((eq_sym (fofType->Prop)) (x0 (g x1))) (f x1)) x2) (fun (x4:(fofType->Prop))=> ((P (f x1))->(P x4))))) ((eq_ref (fofType->Prop)) (x0 (g x1)))) (((eq_ref (fofType->Prop)) (f x1)) P))) as proof of (forall (P:((fofType->Prop)->Prop)), ((P (f x1))->(P (x0 (g x1)))))
% Found eq_ref000:=(eq_ref00 P):((P (f x1))->(P (f x1)))
% Found (eq_ref00 P) as proof of (P0 (f x1))
% Found ((eq_ref0 (f x1)) P) as proof of (P0 (f x1))
% Found (((eq_ref (fofType->Prop)) (f x1)) P) as proof of (P0 (f x1))
% Found (((eq_ref (fofType->Prop)) (f x1)) P) as proof of (P0 (f x1))
% Found eq_ref00:=(eq_ref0 (x0 (g x1))):(((eq (fofType->Prop)) (x0 (g x1))) (x0 (g x1)))
% Found (eq_ref0 (x0 (g x1))) as proof of (((eq (fofType->Prop)) (x0 (g x1))) (f x1))
% Found ((eq_ref (fofType->Prop)) (x0 (g x1))) as proof of (((eq (fofType->Prop)) (x0 (g x1))) (f x1))
% Found ((eq_ref (fofType->Prop)) (x0 (g x1))) as proof of (((eq (fofType->Prop)) (x0 (g x1))) (f x1))
% Found ((eq_ref (fofType->Prop)) (x0 (g x1))) as proof of (((eq (fofType->Prop)) (x0 (g x1))) (f x1))
% Found ((eq_sym1000 ((eq_ref (fofType->Prop)) (x0 (g x1)))) (((eq_ref (fofType->Prop)) (f x1)) P)) as proof of ((P (f x1))->(P (x0 (g x1))))
% Found ((eq_sym1000 ((eq_ref (fofType->Prop)) (x0 (g x1)))) (((eq_ref (fofType->Prop)) (f x1)) P)) as proof of ((P (f x1))->(P (x0 (g x1))))
% Found (((fun (x2:(((eq (fofType->Prop)) (x0 (g x1))) (f x1)))=> ((eq_sym100 x2) (fun (x4:(fofType->Prop))=> ((P (f x1))->(P x4))))) ((eq_ref (fofType->Prop)) (x0 (g x1)))) (((eq_ref (fofType->Prop)) (f x1)) P)) as proof of ((P (f x1))->(P (x0 (g x1))))
% Found (((fun (x2:(((eq (fofType->Prop)) (x0 (g x1))) (f x1)))=> (((eq_sym10 (f x1)) x2) (fun (x4:(fofType->Prop))=> ((P (f x1))->(P x4))))) ((eq_ref (fofType->Prop)) (x0 (g x1)))) (((eq_ref (fofType->Prop)) (f x1)) P)) as proof of ((P (f x1))->(P (x0 (g x1))))
% Found (((fun (x2:(((eq (fofType->Prop)) (x0 (g x1))) (f x1)))=> ((((eq_sym1 (x0 (g x1))) (f x1)) x2) (fun (x4:(fofType->Prop))=> ((P (f x1))->(P x4))))) ((eq_ref (fofType->Prop)) (x0 (g x1)))) (((eq_ref (fofType->Prop)) (f x1)) P)) as proof of ((P (f x1))->(P (x0 (g x1))))
% Found (((fun (x2:(((eq (fofType->Prop)) (x0 (g x1))) (f x1)))=> (((((eq_sym (fofType->Prop)) (x0 (g x1))) (f x1)) x2) (fun (x4:(fofType->Prop))=> ((P (f x1))->(P x4))))) ((eq_ref (fofType->Prop)) (x0 (g x1)))) (((eq_ref (fofType->Prop)) (f x1)) P)) as proof of ((P (f x1))->(P (x0 (g x1))))
% Found (fun (P:((fofType->Prop)->Prop))=> (((fun (x2:(((eq (fofType->Prop)) (x0 (g x1))) (f x1)))=> (((((eq_sym (fofType->Prop)) (x0 (g x1))) (f x1)) x2) (fun (x4:(fofType->Prop))=> ((P (f x1))->(P x4))))) ((eq_ref (fofType->Prop)) (x0 (g x1)))) (((eq_ref (fofType->Prop)) (f x1)) P))) as proof of ((P (f x1))->(P (x0 (g x1))))
% Found (fun (P:((fofType->Prop)->Prop))=> (((fun (x2:(((eq (fofType->Prop)) (x0 (g x1))) (f x1)))=> (((((eq_sym (fofType->Prop)) (x0 (g x1))) (f x1)) x2) (fun (x4:(fofType->Prop))=> ((P (f x1))->(P x4))))) ((eq_ref (fofType->Prop)) (x0 (g x1)))) (((eq_ref (fofType->Prop)) (f x1)) P))) as proof of (forall (P:((fofType->Prop)->Prop)), ((P (f x1))->(P (x0 (g x1)))))
% Found eq_ref00:=(eq_ref0 ((x0 (g x1)) x2)):(((eq Prop) ((x0 (g x1)) x2)) ((x0 (g x1)) x2))
% Found (eq_ref0 ((x0 (g x1)) x2)) as proof of (((eq Prop) ((x0 (g x1)) x2)) ((f x1) x2))
% Found ((eq_ref Prop) ((x0 (g x1)) x2)) as proof of (((eq Prop) ((x0 (g x1)) x2)) ((f x1) x2))
% Found ((eq_ref Prop) ((x0 (g x1)) x2)) as proof of (((eq Prop) ((x0 (g x1)) x2)) ((f x1) x2))
% Found (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2))) as proof of (((eq Prop) ((x0 (g x1)) x2)) ((f x1) x2))
% Found (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2))) as proof of (forall (x:fofType), (((eq Prop) ((x0 (g x1)) x)) ((f x1) x)))
% Found (functional_extensionality_dep01000 (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2)))) as proof of ((P (x0 (g x1)))->(P (f x1)))
% Found (functional_extensionality_dep01000 (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2)))) as proof of ((P (x0 (g x1)))->(P (f x1)))
% Found ((fun (x2:(forall (x:fofType), (((eq Prop) ((x0 (g x1)) x)) ((f x1) x))))=> ((functional_extensionality_dep0100 x2) P)) (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2)))) as proof of ((P (x0 (g x1)))->(P (f x1)))
% Found ((fun (x2:(forall (x:fofType), (((eq Prop) ((x0 (g x1)) x)) ((f x1) x))))=> (((functional_extensionality_dep010 (f x1)) x2) P)) (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2)))) as proof of ((P (x0 (g x1)))->(P (f x1)))
% Found ((fun (x2:(forall (x:fofType), (((eq Prop) ((x0 (g x1)) x)) ((f x1) x))))=> ((((functional_extensionality_dep01 (x0 (g x1))) (f x1)) x2) P)) (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2)))) as proof of ((P (x0 (g x1)))->(P (f x1)))
% Found ((fun (x2:(forall (x:fofType), (((eq Prop) ((x0 (g x1)) x)) ((f x1) x))))=> (((((functional_extensionality_dep0 (fun (x4:fofType)=> Prop)) (x0 (g x1))) (f x1)) x2) P)) (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2)))) as proof of ((P (x0 (g x1)))->(P (f x1)))
% Found (fun (P:((fofType->Prop)->Prop))=> ((fun (x2:(forall (x:fofType), (((eq Prop) ((x0 (g x1)) x)) ((f x1) x))))=> (((((functional_extensionality_dep0 (fun (x4:fofType)=> Prop)) (x0 (g x1))) (f x1)) x2) P)) (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2))))) as proof of ((P (x0 (g x1)))->(P (f x1)))
% Found (fun (P:((fofType->Prop)->Prop))=> ((fun (x2:(forall (x:fofType), (((eq Prop) ((x0 (g x1)) x)) ((f x1) x))))=> (((((functional_extensionality_dep0 (fun (x4:fofType)=> Prop)) (x0 (g x1))) (f x1)) x2) P)) (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2))))) as proof of (forall (P:((fofType->Prop)->Prop)), ((P (x0 (g x1)))->(P (f x1))))
% Found eq_ref00:=(eq_ref0 ((x0 (g x1)) x2)):(((eq Prop) ((x0 (g x1)) x2)) ((x0 (g x1)) x2))
% Found (eq_ref0 ((x0 (g x1)) x2)) as proof of (((eq Prop) ((x0 (g x1)) x2)) ((f x1) x2))
% Found ((eq_ref Prop) ((x0 (g x1)) x2)) as proof of (((eq Prop) ((x0 (g x1)) x2)) ((f x1) x2))
% Found ((eq_ref Prop) ((x0 (g x1)) x2)) as proof of (((eq Prop) ((x0 (g x1)) x2)) ((f x1) x2))
% Found (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2))) as proof of (((eq Prop) ((x0 (g x1)) x2)) ((f x1) x2))
% Found (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2))) as proof of (forall (x:fofType), (((eq Prop) ((x0 (g x1)) x)) ((f x1) x)))
% Found (functional_extensionality01000 (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2)))) as proof of ((P (x0 (g x1)))->(P (f x1)))
% Found (functional_extensionality01000 (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2)))) as proof of ((P (x0 (g x1)))->(P (f x1)))
% Found ((fun (x2:(forall (x:fofType), (((eq Prop) ((x0 (g x1)) x)) ((f x1) x))))=> ((functional_extensionality0100 x2) P)) (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2)))) as proof of ((P (x0 (g x1)))->(P (f x1)))
% Found ((fun (x2:(forall (x:fofType), (((eq Prop) ((x0 (g x1)) x)) ((f x1) x))))=> (((functional_extensionality010 (f x1)) x2) P)) (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2)))) as proof of ((P (x0 (g x1)))->(P (f x1)))
% Found ((fun (x2:(forall (x:fofType), (((eq Prop) ((x0 (g x1)) x)) ((f x1) x))))=> ((((functional_extensionality01 (x0 (g x1))) (f x1)) x2) P)) (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2)))) as proof of ((P (x0 (g x1)))->(P (f x1)))
% Found ((fun (x2:(forall (x:fofType), (((eq Prop) ((x0 (g x1)) x)) ((f x1) x))))=> (((((functional_extensionality0 Prop) (x0 (g x1))) (f x1)) x2) P)) (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2)))) as proof of ((P (x0 (g x1)))->(P (f x1)))
% Found (fun (P:((fofType->Prop)->Prop))=> ((fun (x2:(forall (x:fofType), (((eq Prop) ((x0 (g x1)) x)) ((f x1) x))))=> (((((functional_extensionality0 Prop) (x0 (g x1))) (f x1)) x2) P)) (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2))))) as proof of ((P (x0 (g x1)))->(P (f x1)))
% Found (fun (P:((fofType->Prop)->Prop))=> ((fun (x2:(forall (x:fofType), (((eq Prop) ((x0 (g x1)) x)) ((f x1) x))))=> (((((functional_extensionality0 Prop) (x0 (g x1))) (f x1)) x2) P)) (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2))))) as proof of (forall (P:((fofType->Prop)->Prop)), ((P (x0 (g x1)))->(P (f x1))))
% Found eq_ref000:=(eq_ref00 P):((P (x0 (g x1)))->(P (x0 (g x1))))
% Found (eq_ref00 P) as proof of (P0 (x0 (g x1)))
% Found ((eq_ref0 (x0 (g x1))) P) as proof of (P0 (x0 (g x1)))
% Found (((eq_ref (fofType->Prop)) (x0 (g x1))) P) as proof of (P0 (x0 (g x1)))
% Found (((eq_ref (fofType->Prop)) (x0 (g x1))) P) as proof of (P0 (x0 (g x1)))
% Found eq_ref00:=(eq_ref0 ((x0 (g x1)) x2)):(((eq Prop) ((x0 (g x1)) x2)) ((x0 (g x1)) x2))
% Found (eq_ref0 ((x0 (g x1)) x2)) as proof of (((eq Prop) ((x0 (g x1)) x2)) ((f x1) x2))
% Found ((eq_ref Prop) ((x0 (g x1)) x2)) as proof of (((eq Prop) ((x0 (g x1)) x2)) ((f x1) x2))
% Found ((eq_ref Prop) ((x0 (g x1)) x2)) as proof of (((eq Prop) ((x0 (g x1)) x2)) ((f x1) x2))
% Found (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2))) as proof of (((eq Prop) ((x0 (g x1)) x2)) ((f x1) x2))
% Found (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2))) as proof of (forall (x:fofType), (((eq Prop) ((x0 (g x1)) x)) ((f x1) x)))
% Found ((functional_extensionality_dep01000 (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2)))) (((eq_ref (fofType->Prop)) (x0 (g x1))) P)) as proof of ((P (x0 (g x1)))->(P (f x1)))
% Found ((functional_extensionality_dep01000 (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2)))) (((eq_ref (fofType->Prop)) (x0 (g x1))) P)) as proof of ((P (x0 (g x1)))->(P (f x1)))
% Found (((fun (x2:(forall (x:fofType), (((eq Prop) ((x0 (g x1)) x)) ((f x1) x))))=> ((functional_extensionality_dep0100 x2) (fun (x4:(fofType->Prop))=> ((P (x0 (g x1)))->(P x4))))) (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2)))) (((eq_ref (fofType->Prop)) (x0 (g x1))) P)) as proof of ((P (x0 (g x1)))->(P (f x1)))
% Found (((fun (x2:(forall (x:fofType), (((eq Prop) ((x0 (g x1)) x)) ((f x1) x))))=> (((functional_extensionality_dep010 (f x1)) x2) (fun (x4:(fofType->Prop))=> ((P (x0 (g x1)))->(P x4))))) (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2)))) (((eq_ref (fofType->Prop)) (x0 (g x1))) P)) as proof of ((P (x0 (g x1)))->(P (f x1)))
% Found (((fun (x2:(forall (x:fofType), (((eq Prop) ((x0 (g x1)) x)) ((f x1) x))))=> ((((functional_extensionality_dep01 (x0 (g x1))) (f x1)) x2) (fun (x4:(fofType->Prop))=> ((P (x0 (g x1)))->(P x4))))) (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2)))) (((eq_ref (fofType->Prop)) (x0 (g x1))) P)) as proof of ((P (x0 (g x1)))->(P (f x1)))
% Found (((fun (x2:(forall (x:fofType), (((eq Prop) ((x0 (g x1)) x)) ((f x1) x))))=> (((((functional_extensionality_dep0 (fun (x4:fofType)=> Prop)) (x0 (g x1))) (f x1)) x2) (fun (x4:(fofType->Prop))=> ((P (x0 (g x1)))->(P x4))))) (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2)))) (((eq_ref (fofType->Prop)) (x0 (g x1))) P)) as proof of ((P (x0 (g x1)))->(P (f x1)))
% Found (fun (P:((fofType->Prop)->Prop))=> (((fun (x2:(forall (x:fofType), (((eq Prop) ((x0 (g x1)) x)) ((f x1) x))))=> (((((functional_extensionality_dep0 (fun (x4:fofType)=> Prop)) (x0 (g x1))) (f x1)) x2) (fun (x4:(fofType->Prop))=> ((P (x0 (g x1)))->(P x4))))) (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2)))) (((eq_ref (fofType->Prop)) (x0 (g x1))) P))) as proof of ((P (x0 (g x1)))->(P (f x1)))
% Found (fun (P:((fofType->Prop)->Prop))=> (((fun (x2:(forall (x:fofType), (((eq Prop) ((x0 (g x1)) x)) ((f x1) x))))=> (((((functional_extensionality_dep0 (fun (x4:fofType)=> Prop)) (x0 (g x1))) (f x1)) x2) (fun (x4:(fofType->Prop))=> ((P (x0 (g x1)))->(P x4))))) (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2)))) (((eq_ref (fofType->Prop)) (x0 (g x1))) P))) as proof of (forall (P:((fofType->Prop)->Prop)), ((P (x0 (g x1)))->(P (f x1))))
% Found eq_ref000:=(eq_ref00 P):((P (x0 (g x1)))->(P (x0 (g x1))))
% Found (eq_ref00 P) as proof of (P0 (x0 (g x1)))
% Found ((eq_ref0 (x0 (g x1))) P) as proof of (P0 (x0 (g x1)))
% Found (((eq_ref (fofType->Prop)) (x0 (g x1))) P) as proof of (P0 (x0 (g x1)))
% Found (((eq_ref (fofType->Prop)) (x0 (g x1))) P) as proof of (P0 (x0 (g x1)))
% Found eq_ref00:=(eq_ref0 ((x0 (g x1)) x2)):(((eq Prop) ((x0 (g x1)) x2)) ((x0 (g x1)) x2))
% Found (eq_ref0 ((x0 (g x1)) x2)) as proof of (((eq Prop) ((x0 (g x1)) x2)) ((f x1) x2))
% Found ((eq_ref Prop) ((x0 (g x1)) x2)) as proof of (((eq Prop) ((x0 (g x1)) x2)) ((f x1) x2))
% Found ((eq_ref Prop) ((x0 (g x1)) x2)) as proof of (((eq Prop) ((x0 (g x1)) x2)) ((f x1) x2))
% Found (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2))) as proof of (((eq Prop) ((x0 (g x1)) x2)) ((f x1) x2))
% Found (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2))) as proof of (forall (x:fofType), (((eq Prop) ((x0 (g x1)) x)) ((f x1) x)))
% Found ((functional_extensionality01000 (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2)))) (((eq_ref (fofType->Prop)) (x0 (g x1))) P)) as proof of ((P (x0 (g x1)))->(P (f x1)))
% Found ((functional_extensionality01000 (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2)))) (((eq_ref (fofType->Prop)) (x0 (g x1))) P)) as proof of ((P (x0 (g x1)))->(P (f x1)))
% Found (((fun (x2:(forall (x:fofType), (((eq Prop) ((x0 (g x1)) x)) ((f x1) x))))=> ((functional_extensionality0100 x2) (fun (x4:(fofType->Prop))=> ((P (x0 (g x1)))->(P x4))))) (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2)))) (((eq_ref (fofType->Prop)) (x0 (g x1))) P)) as proof of ((P (x0 (g x1)))->(P (f x1)))
% Found (((fun (x2:(forall (x:fofType), (((eq Prop) ((x0 (g x1)) x)) ((f x1) x))))=> (((functional_extensionality010 (f x1)) x2) (fun (x4:(fofType->Prop))=> ((P (x0 (g x1)))->(P x4))))) (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2)))) (((eq_ref (fofType->Prop)) (x0 (g x1))) P)) as proof of ((P (x0 (g x1)))->(P (f x1)))
% Found (((fun (x2:(forall (x:fofType), (((eq Prop) ((x0 (g x1)) x)) ((f x1) x))))=> ((((functional_extensionality01 (x0 (g x1))) (f x1)) x2) (fun (x4:(fofType->Prop))=> ((P (x0 (g x1)))->(P x4))))) (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2)))) (((eq_ref (fofType->Prop)) (x0 (g x1))) P)) as proof of ((P (x0 (g x1)))->(P (f x1)))
% Found (((fun (x2:(forall (x:fofType), (((eq Prop) ((x0 (g x1)) x)) ((f x1) x))))=> (((((functional_extensionality0 Prop) (x0 (g x1))) (f x1)) x2) (fun (x4:(fofType->Prop))=> ((P (x0 (g x1)))->(P x4))))) (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2)))) (((eq_ref (fofType->Prop)) (x0 (g x1))) P)) as proof of ((P (x0 (g x1)))->(P (f x1)))
% Found (fun (P:((fofType->Prop)->Prop))=> (((fun (x2:(forall (x:fofType), (((eq Prop) ((x0 (g x1)) x)) ((f x1) x))))=> (((((functional_extensionality0 Prop) (x0 (g x1))) (f x1)) x2) (fun (x4:(fofType->Prop))=> ((P (x0 (g x1)))->(P x4))))) (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2)))) (((eq_ref (fofType->Prop)) (x0 (g x1))) P))) as proof of ((P (x0 (g x1)))->(P (f x1)))
% Found (fun (P:((fofType->Prop)->Prop))=> (((fun (x2:(forall (x:fofType), (((eq Prop) ((x0 (g x1)) x)) ((f x1) x))))=> (((((functional_extensionality0 Prop) (x0 (g x1))) (f x1)) x2) (fun (x4:(fofType->Prop))=> ((P (x0 (g x1)))->(P x4))))) (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2)))) (((eq_ref (fofType->Prop)) (x0 (g x1))) P))) as proof of (forall (P:((fofType->Prop)->Prop)), ((P (x0 (g x1)))->(P (f x1))))
% Found eq_ref000:=(eq_ref00 P):((P (f x1))->(P (f x1)))
% Found (eq_ref00 P) as proof of (P0 (f x1))
% Found ((eq_ref0 (f x1)) P) as proof of (P0 (f x1))
% Found (((eq_ref (fofType->Prop)) (f x1)) P) as proof of (P0 (f x1))
% Found (((eq_ref (fofType->Prop)) (f x1)) P) as proof of (P0 (f x1))
% Found eq_ref00:=(eq_ref0 (x0 (g x1))):(((eq (fofType->Prop)) (x0 (g x1))) (x0 (g x1)))
% Found (eq_ref0 (x0 (g x1))) as proof of (((eq (fofType->Prop)) (x0 (g x1))) (f x1))
% Found ((eq_ref (fofType->Prop)) (x0 (g x1))) as proof of (((eq (fofType->Prop)) (x0 (g x1))) (f x1))
% Found ((eq_ref (fofType->Prop)) (x0 (g x1))) as proof of (((eq (fofType->Prop)) (x0 (g x1))) (f x1))
% Found ((eq_ref (fofType->Prop)) (x0 (g x1))) as proof of (((eq (fofType->Prop)) (x0 (g x1))) (f x1))
% Found ((eq_sym1000 ((eq_ref (fofType->Prop)) (x0 (g x1)))) (((eq_ref (fofType->Prop)) (f x1)) P)) as proof of ((P (f x1))->(P (x0 (g x1))))
% Found ((eq_sym1000 ((eq_ref (fofType->Prop)) (x0 (g x1)))) (((eq_ref (fofType->Prop)) (f x1)) P)) as proof of ((P (f x1))->(P (x0 (g x1))))
% Found (((fun (x2:(((eq (fofType->Prop)) (x0 (g x1))) (f x1)))=> ((eq_sym100 x2) (fun (x4:(fofType->Prop))=> ((P (f x1))->(P x4))))) ((eq_ref (fofType->Prop)) (x0 (g x1)))) (((eq_ref (fofType->Prop)) (f x1)) P)) as proof of ((P (f x1))->(P (x0 (g x1))))
% Found (((fun (x2:(((eq (fofType->Prop)) (x0 (g x1))) (f x1)))=> (((eq_sym10 (f x1)) x2) (fun (x4:(fofType->Prop))=> ((P (f x1))->(P x4))))) ((eq_ref (fofType->Prop)) (x0 (g x1)))) (((eq_ref (fofType->Prop)) (f x1)) P)) as proof of ((P (f x1))->(P (x0 (g x1))))
% Found (((fun (x2:(((eq (fofType->Prop)) (x0 (g x1))) (f x1)))=> ((((eq_sym1 (x0 (g x1))) (f x1)) x2) (fun (x4:(fofType->Prop))=> ((P (f x1))->(P x4))))) ((eq_ref (fofType->Prop)) (x0 (g x1)))) (((eq_ref (fofType->Prop)) (f x1)) P)) as proof of ((P (f x1))->(P (x0 (g x1))))
% Found (((fun (x2:(((eq (fofType->Prop)) (x0 (g x1))) (f x1)))=> (((((eq_sym (fofType->Prop)) (x0 (g x1))) (f x1)) x2) (fun (x4:(fofType->Prop))=> ((P (f x1))->(P x4))))) ((eq_ref (fofType->Prop)) (x0 (g x1)))) (((eq_ref (fofType->Prop)) (f x1)) P)) as proof of ((P (f x1))->(P (x0 (g x1))))
% Found (fun (P:((fofType->Prop)->Prop))=> (((fun (x2:(((eq (fofType->Prop)) (x0 (g x1))) (f x1)))=> (((((eq_sym (fofType->Prop)) (x0 (g x1))) (f x1)) x2) (fun (x4:(fofType->Prop))=> ((P (f x1))->(P x4))))) ((eq_ref (fofType->Prop)) (x0 (g x1)))) (((eq_ref (fofType->Prop)) (f x1)) P))) as proof of ((P (f x1))->(P (x0 (g x1))))
% Found eq_ref00:=(eq_ref0 ((x0 (g x1)) x2)):(((eq Prop) ((x0 (g x1)) x2)) ((x0 (g x1)) x2))
% Found (eq_ref0 ((x0 (g x1)) x2)) as proof of (((eq Prop) ((x0 (g x1)) x2)) ((f x1) x2))
% Found ((eq_ref Prop) ((x0 (g x1)) x2)) as proof of (((eq Prop) ((x0 (g x1)) x2)) ((f x1) x2))
% Found ((eq_ref Prop) ((x0 (g x1)) x2)) as proof of (((eq Prop) ((x0 (g x1)) x2)) ((f x1) x2))
% Found (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2))) as proof of (((eq Prop) ((x0 (g x1)) x2)) ((f x1) x2))
% Found (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2))) as proof of (forall (x:fofType), (((eq Prop) ((x0 (g x1)) x)) ((f x1) x)))
% Found (functional_extensionality0100 (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2)))) as proof of (forall (P:((fofType->Prop)->Prop)), ((P (x0 (g x1)))->(P (f x1))))
% Found ((functional_extensionality010 (f x1)) (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2)))) as proof of (forall (P:((fofType->Prop)->Prop)), ((P (x0 (g x1)))->(P (f x1))))
% Found (((functional_extensionality01 (x0 (g x1))) (f x1)) (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2)))) as proof of (forall (P:((fofType->Prop)->Prop)), ((P (x0 (g x1)))->(P (f x1))))
% Found ((((functional_extensionality0 Prop) (x0 (g x1))) (f x1)) (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2)))) as proof of (forall (P:((fofType->Prop)->Prop)), ((P (x0 (g x1)))->(P (f x1))))
% Found ((((functional_extensionality0 Prop) (x0 (g x1))) (f x1)) (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2)))) as proof of (forall (P:((fofType->Prop)->Prop)), ((P (x0 (g x1)))->(P (f x1))))
% Found eq_ref00:=(eq_ref0 ((x0 (g x1)) x2)):(((eq Prop) ((x0 (g x1)) x2)) ((x0 (g x1)) x2))
% Found (eq_ref0 ((x0 (g x1)) x2)) as proof of (((eq Prop) ((x0 (g x1)) x2)) ((f x1) x2))
% Found ((eq_ref Prop) ((x0 (g x1)) x2)) as proof of (((eq Prop) ((x0 (g x1)) x2)) ((f x1) x2))
% Found ((eq_ref Prop) ((x0 (g x1)) x2)) as proof of (((eq Prop) ((x0 (g x1)) x2)) ((f x1) x2))
% Found (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2))) as proof of (((eq Prop) ((x0 (g x1)) x2)) ((f x1) x2))
% Found (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2))) as proof of (forall (x:fofType), (((eq Prop) ((x0 (g x1)) x)) ((f x1) x)))
% Found (functional_extensionality_dep0100 (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2)))) as proof of (forall (P:((fofType->Prop)->Prop)), ((P (x0 (g x1)))->(P (f x1))))
% Found ((functional_extensionality_dep010 (f x1)) (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2)))) as proof of (forall (P:((fofType->Prop)->Prop)), ((P (x0 (g x1)))->(P (f x1))))
% Found (((functional_extensionality_dep01 (x0 (g x1))) (f x1)) (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2)))) as proof of (forall (P:((fofType->Prop)->Prop)), ((P (x0 (g x1)))->(P (f x1))))
% Found ((((functional_extensionality_dep0 (fun (x4:fofType)=> Prop)) (x0 (g x1))) (f x1)) (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2)))) as proof of (forall (P:((fofType->Prop)->Prop)), ((P (x0 (g x1)))->(P (f x1))))
% Found ((((functional_extensionality_dep0 (fun (x4:fofType)=> Prop)) (x0 (g x1))) (f x1)) (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2)))) as proof of (forall (P:((fofType->Prop)->Prop)), ((P (x0 (g x1)))->(P (f x1))))
% Found eq_ref00:=(eq_ref0 ((x0 (g x1)) x2)):(((eq Prop) ((x0 (g x1)) x2)) ((x0 (g x1)) x2))
% Found (eq_ref0 ((x0 (g x1)) x2)) as proof of (((eq Prop) ((x0 (g x1)) x2)) ((f x1) x2))
% Found ((eq_ref Prop) ((x0 (g x1)) x2)) as proof of (((eq Prop) ((x0 (g x1)) x2)) ((f x1) x2))
% Found ((eq_ref Prop) ((x0 (g x1)) x2)) as proof of (((eq Prop) ((x0 (g x1)) x2)) ((f x1) x2))
% Found (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2))) as proof of (((eq Prop) ((x0 (g x1)) x2)) ((f x1) x2))
% Found (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2))) as proof of (forall (x:fofType), (((eq Prop) ((x0 (g x1)) x)) ((f x1) x)))
% Found (functional_extensionality0100 (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2)))) as proof of (forall (P:((fofType->Prop)->Prop)), ((P (x0 (g x1)))->(P (f x1))))
% Found ((functional_extensionality010 (f x1)) (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2)))) as proof of (forall (P:((fofType->Prop)->Prop)), ((P (x0 (g x1)))->(P (f x1))))
% Found (((functional_extensionality01 (x0 (g x1))) (f x1)) (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2)))) as proof of (forall (P:((fofType->Prop)->Prop)), ((P (x0 (g x1)))->(P (f x1))))
% Found ((((functional_extensionality0 Prop) (x0 (g x1))) (f x1)) (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2)))) as proof of (forall (P:((fofType->Prop)->Prop)), ((P (x0 (g x1)))->(P (f x1))))
% Found ((((functional_extensionality0 Prop) (x0 (g x1))) (f x1)) (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2)))) as proof of (forall (P:((fofType->Prop)->Prop)), ((P (x0 (g x1)))->(P (f x1))))
% Found eq_ref00:=(eq_ref0 ((x0 (g x1)) x2)):(((eq Prop) ((x0 (g x1)) x2)) ((x0 (g x1)) x2))
% Found (eq_ref0 ((x0 (g x1)) x2)) as proof of (((eq Prop) ((x0 (g x1)) x2)) ((f x1) x2))
% Found ((eq_ref Prop) ((x0 (g x1)) x2)) as proof of (((eq Prop) ((x0 (g x1)) x2)) ((f x1) x2))
% Found ((eq_ref Prop) ((x0 (g x1)) x2)) as proof of (((eq Prop) ((x0 (g x1)) x2)) ((f x1) x2))
% Found (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2))) as proof of (((eq Prop) ((x0 (g x1)) x2)) ((f x1) x2))
% Found (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2))) as proof of (forall (x:fofType), (((eq Prop) ((x0 (g x1)) x)) ((f x1) x)))
% Found (functional_extensionality_dep0100 (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2)))) as proof of (forall (P:((fofType->Prop)->Prop)), ((P (x0 (g x1)))->(P (f x1))))
% Found ((functional_extensionality_dep010 (f x1)) (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2)))) as proof of (forall (P:((fofType->Prop)->Prop)), ((P (x0 (g x1)))->(P (f x1))))
% Found (((functional_extensionality_dep01 (x0 (g x1))) (f x1)) (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2)))) as proof of (forall (P:((fofType->Prop)->Prop)), ((P (x0 (g x1)))->(P (f x1))))
% Found ((((functional_extensionality_dep0 (fun (x4:fofType)=> Prop)) (x0 (g x1))) (f x1)) (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2)))) as proof of (forall (P:((fofType->Prop)->Prop)), ((P (x0 (g x1)))->(P (f x1))))
% Found ((((functional_extensionality_dep0 (fun (x4:fofType)=> Prop)) (x0 (g x1))) (f x1)) (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2)))) as proof of (forall (P:((fofType->Prop)->Prop)), ((P (x0 (g x1)))->(P (f x1))))
% Found eq_ref000:=(eq_ref00 P):((P (f x1))->(P (f x1)))
% Found (eq_ref00 P) as proof of (P0 (f x1))
% Found ((eq_ref0 (f x1)) P) as proof of (P0 (f x1))
% Found (((eq_ref (fofType->Prop)) (f x1)) P) as proof of (P0 (f x1))
% Found (((eq_ref (fofType->Prop)) (f x1)) P) as proof of (P0 (f x1))
% Found eq_ref00:=(eq_ref0 (x0 (g x1))):(((eq (fofType->Prop)) (x0 (g x1))) (x0 (g x1)))
% Found (eq_ref0 (x0 (g x1))) as proof of (((eq (fofType->Prop)) (x0 (g x1))) (f x1))
% Found ((eq_ref (fofType->Prop)) (x0 (g x1))) as proof of (((eq (fofType->Prop)) (x0 (g x1))) (f x1))
% Found ((eq_ref (fofType->Prop)) (x0 (g x1))) as proof of (((eq (fofType->Prop)) (x0 (g x1))) (f x1))
% Found ((eq_ref (fofType->Prop)) (x0 (g x1))) as proof of (((eq (fofType->Prop)) (x0 (g x1))) (f x1))
% Found ((eq_sym1000 ((eq_ref (fofType->Prop)) (x0 (g x1)))) (((eq_ref (fofType->Prop)) (f x1)) P)) as proof of ((P (f x1))->(P (x0 (g x1))))
% Found ((eq_sym1000 ((eq_ref (fofType->Prop)) (x0 (g x1)))) (((eq_ref (fofType->Prop)) (f x1)) P)) as proof of ((P (f x1))->(P (x0 (g x1))))
% Found (((fun (x2:(((eq (fofType->Prop)) (x0 (g x1))) (f x1)))=> ((eq_sym100 x2) (fun (x4:(fofType->Prop))=> ((P (f x1))->(P x4))))) ((eq_ref (fofType->Prop)) (x0 (g x1)))) (((eq_ref (fofType->Prop)) (f x1)) P)) as proof of ((P (f x1))->(P (x0 (g x1))))
% Found (((fun (x2:(((eq (fofType->Prop)) (x0 (g x1))) (f x1)))=> (((eq_sym10 (f x1)) x2) (fun (x4:(fofType->Prop))=> ((P (f x1))->(P x4))))) ((eq_ref (fofType->Prop)) (x0 (g x1)))) (((eq_ref (fofType->Prop)) (f x1)) P)) as proof of ((P (f x1))->(P (x0 (g x1))))
% Found (((fun (x2:(((eq (fofType->Prop)) (x0 (g x1))) (f x1)))=> ((((eq_sym1 (x0 (g x1))) (f x1)) x2) (fun (x4:(fofType->Prop))=> ((P (f x1))->(P x4))))) ((eq_ref (fofType->Prop)) (x0 (g x1)))) (((eq_ref (fofType->Prop)) (f x1)) P)) as proof of ((P (f x1))->(P (x0 (g x1))))
% Found (((fun (x2:(((eq (fofType->Prop)) (x0 (g x1))) (f x1)))=> (((((eq_sym (fofType->Prop)) (x0 (g x1))) (f x1)) x2) (fun (x4:(fofType->Prop))=> ((P (f x1))->(P x4))))) ((eq_ref (fofType->Prop)) (x0 (g x1)))) (((eq_ref (fofType->Prop)) (f x1)) P)) as proof of ((P (f x1))->(P (x0 (g x1))))
% Found (fun (P:((fofType->Prop)->Prop))=> (((fun (x2:(((eq (fofType->Prop)) (x0 (g x1))) (f x1)))=> (((((eq_sym (fofType->Prop)) (x0 (g x1))) (f x1)) x2) (fun (x4:(fofType->Prop))=> ((P (f x1))->(P x4))))) ((eq_ref (fofType->Prop)) (x0 (g x1)))) (((eq_ref (fofType->Prop)) (f x1)) P))) as proof of ((P (f x1))->(P (x0 (g x1))))
% Found eq_ref000:=(eq_ref00 P):((P (f x1))->(P (f x1)))
% Found (eq_ref00 P) as proof of (P0 (f x1))
% Found ((eq_ref0 (f x1)) P) as proof of (P0 (f x1))
% Found (((eq_ref (fofType->Prop)) (f x1)) P) as proof of (P0 (f x1))
% Found (((eq_ref (fofType->Prop)) (f x1)) P) as proof of (P0 (f x1))
% Found eq_ref00:=(eq_ref0 (x0 (g x1))):(((eq (fofType->Prop)) (x0 (g x1))) (x0 (g x1)))
% Found (eq_ref0 (x0 (g x1))) as proof of (((eq (fofType->Prop)) (x0 (g x1))) (f x1))
% Found ((eq_ref (fofType->Prop)) (x0 (g x1))) as proof of (((eq (fofType->Prop)) (x0 (g x1))) (f x1))
% Found ((eq_ref (fofType->Prop)) (x0 (g x1))) as proof of (((eq (fofType->Prop)) (x0 (g x1))) (f x1))
% Found ((eq_ref (fofType->Prop)) (x0 (g x1))) as proof of (((eq (fofType->Prop)) (x0 (g x1))) (f x1))
% Found ((eq_sym1000 ((eq_ref (fofType->Prop)) (x0 (g x1)))) (((eq_ref (fofType->Prop)) (f x1)) P)) as proof of ((P (f x1))->(P (x0 (g x1))))
% Found ((eq_sym1000 ((eq_ref (fofType->Prop)) (x0 (g x1)))) (((eq_ref (fofType->Prop)) (f x1)) P)) as proof of ((P (f x1))->(P (x0 (g x1))))
% Found (((fun (x2:(((eq (fofType->Prop)) (x0 (g x1))) (f x1)))=> ((eq_sym100 x2) (fun (x4:(fofType->Prop))=> ((P (f x1))->(P x4))))) ((eq_ref (fofType->Prop)) (x0 (g x1)))) (((eq_ref (fofType->Prop)) (f x1)) P)) as proof of ((P (f x1))->(P (x0 (g x1))))
% Found (((fun (x2:(((eq (fofType->Prop)) (x0 (g x1))) (f x1)))=> (((eq_sym10 (f x1)) x2) (fun (x4:(fofType->Prop))=> ((P (f x1))->(P x4))))) ((eq_ref (fofType->Prop)) (x0 (g x1)))) (((eq_ref (fofType->Prop)) (f x1)) P)) as proof of ((P (f x1))->(P (x0 (g x1))))
% Found (((fun (x2:(((eq (fofType->Prop)) (x0 (g x1))) (f x1)))=> ((((eq_sym1 (x0 (g x1))) (f x1)) x2) (fun (x4:(fofType->Prop))=> ((P (f x1))->(P x4))))) ((eq_ref (fofType->Prop)) (x0 (g x1)))) (((eq_ref (fofType->Prop)) (f x1)) P)) as proof of ((P (f x1))->(P (x0 (g x1))))
% Found (((fun (x2:(((eq (fofType->Prop)) (x0 (g x1))) (f x1)))=> (((((eq_sym (fofType->Prop)) (x0 (g x1))) (f x1)) x2) (fun (x4:(fofType->Prop))=> ((P (f x1))->(P x4))))) ((eq_ref (fofType->Prop)) (x0 (g x1)))) (((eq_ref (fofType->Prop)) (f x1)) P)) as proof of ((P (f x1))->(P (x0 (g x1))))
% Found (fun (P:((fofType->Prop)->Prop))=> (((fun (x2:(((eq (fofType->Prop)) (x0 (g x1))) (f x1)))=> (((((eq_sym (fofType->Prop)) (x0 (g x1))) (f x1)) x2) (fun (x4:(fofType->Prop))=> ((P (f x1))->(P x4))))) ((eq_ref (fofType->Prop)) (x0 (g x1)))) (((eq_ref (fofType->Prop)) (f x1)) P))) as proof of ((P (f x1))->(P (x0 (g x1))))
% Found eq_ref000:=(eq_ref00 P):((P (f x1))->(P (f x1)))
% Found (eq_ref00 P) as proof of (P0 (f x1))
% Found ((eq_ref0 (f x1)) P) as proof of (P0 (f x1))
% Found (((eq_ref (fofType->Prop)) (f x1)) P) as proof of (P0 (f x1))
% Found (((eq_ref (fofType->Prop)) (f x1)) P) as proof of (P0 (f x1))
% Found eq_ref000:=(eq_ref00 P):((P (f x1))->(P (f x1)))
% Found (eq_ref00 P) as proof of (P0 (f x1))
% Found ((eq_ref0 (f x1)) P) as proof of (P0 (f x1))
% Found (((eq_ref (fofType->Prop)) (f x1)) P) as proof of (P0 (f x1))
% Found (((eq_ref (fofType->Prop)) (f x1)) P) as proof of (P0 (f x1))
% Found eq_ref000:=(eq_ref00 P):((P (f x1))->(P (f x1)))
% Found (eq_ref00 P) as proof of (P0 (f x1))
% Found ((eq_ref0 (f x1)) P) as proof of (P0 (f x1))
% Found (((eq_ref (fofType->Prop)) (f x1)) P) as proof of (P0 (f x1))
% Found (((eq_ref (fofType->Prop)) (f x1)) P) as proof of (P0 (f x1))
% Found eq_ref00:=(eq_ref0 (x0 (g x1))):(((eq (fofType->Prop)) (x0 (g x1))) (x0 (g x1)))
% Found (eq_ref0 (x0 (g x1))) as proof of (((eq (fofType->Prop)) (x0 (g x1))) (f x1))
% Found ((eq_ref (fofType->Prop)) (x0 (g x1))) as proof of (((eq (fofType->Prop)) (x0 (g x1))) (f x1))
% Found ((eq_ref (fofType->Prop)) (x0 (g x1))) as proof of (((eq (fofType->Prop)) (x0 (g x1))) (f x1))
% Found ((eq_ref (fofType->Prop)) (x0 (g x1))) as proof of (((eq (fofType->Prop)) (x0 (g x1))) (f x1))
% Found ((eq_sym1000 ((eq_ref (fofType->Prop)) (x0 (g x1)))) (((eq_ref (fofType->Prop)) (f x1)) P)) as proof of ((P (f x1))->(P (x0 (g x1))))
% Found ((eq_sym1000 ((eq_ref (fofType->Prop)) (x0 (g x1)))) (((eq_ref (fofType->Prop)) (f x1)) P)) as proof of ((P (f x1))->(P (x0 (g x1))))
% Found (((fun (x2:(((eq (fofType->Prop)) (x0 (g x1))) (f x1)))=> ((eq_sym100 x2) (fun (x4:(fofType->Prop))=> ((P (f x1))->(P x4))))) ((eq_ref (fofType->Prop)) (x0 (g x1)))) (((eq_ref (fofType->Prop)) (f x1)) P)) as proof of ((P (f x1))->(P (x0 (g x1))))
% Found (((fun (x2:(((eq (fofType->Prop)) (x0 (g x1))) (f x1)))=> (((eq_sym10 (f x1)) x2) (fun (x4:(fofType->Prop))=> ((P (f x1))->(P x4))))) ((eq_ref (fofType->Prop)) (x0 (g x1)))) (((eq_ref (fofType->Prop)) (f x1)) P)) as proof of ((P (f x1))->(P (x0 (g x1))))
% Found (((fun (x2:(((eq (fofType->Prop)) (x0 (g x1))) (f x1)))=> ((((eq_sym1 (x0 (g x1))) (f x1)) x2) (fun (x4:(fofType->Prop))=> ((P (f x1))->(P x4))))) ((eq_ref (fofType->Prop)) (x0 (g x1)))) (((eq_ref (fofType->Prop)) (f x1)) P)) as proof of ((P (f x1))->(P (x0 (g x1))))
% Found (((fun (x2:(((eq (fofType->Prop)) (x0 (g x1))) (f x1)))=> (((((eq_sym (fofType->Prop)) (x0 (g x1))) (f x1)) x2) (fun (x4:(fofType->Prop))=> ((P (f x1))->(P x4))))) ((eq_ref (fofType->Prop)) (x0 (g x1)))) (((eq_ref (fofType->Prop)) (f x1)) P)) as proof of ((P (f x1))->(P (x0 (g x1))))
% Found (fun (P:((fofType->Prop)->Prop))=> (((fun (x2:(((eq (fofType->Prop)) (x0 (g x1))) (f x1)))=> (((((eq_sym (fofType->Prop)) (x0 (g x1))) (f x1)) x2) (fun (x4:(fofType->Prop))=> ((P (f x1))->(P x4))))) ((eq_ref (fofType->Prop)) (x0 (g x1)))) (((eq_ref (fofType->Prop)) (f x1)) P))) as proof of ((P (f x1))->(P (x0 (g x1))))
% Found eq_ref000:=(eq_ref00 P):((P (f x1))->(P (f x1)))
% Found (eq_ref00 P) as proof of (P0 (f x1))
% Found ((eq_ref0 (f x1)) P) as proof of (P0 (f x1))
% Found (((eq_ref (fofType->Prop)) (f x1)) P) as proof of (P0 (f x1))
% Found (((eq_ref (fofType->Prop)) (f x1)) P) as proof of (P0 (f x1))
% Found eq_ref000:=(eq_ref00 P):((P (f x1))->(P (f x1)))
% Found (eq_ref00 P) as proof of (P0 (f x1))
% Found ((eq_ref0 (f x1)) P) as proof of (P0 (f x1))
% Found (((eq_ref (fofType->Prop)) (f x1)) P) as proof of (P0 (f x1))
% Found (((eq_ref (fofType->Prop)) (f x1)) P) as proof of (P0 (f x1))
% Found eq_ref00:=(eq_ref0 (g x1)):(((eq (fofType->Prop)) (g x1)) (g x1))
% Found (eq_ref0 (g x1)) as proof of (((eq (fofType->Prop)) (g x1)) (g x1))
% Found ((eq_ref (fofType->Prop)) (g x1)) as proof of (((eq (fofType->Prop)) (g x1)) (g x1))
% Found ((eq_ref (fofType->Prop)) (g x1)) as proof of (((eq (fofType->Prop)) (g x1)) (g x1))
% Found (x200 ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P (x0 (g x1)))->(P (b x1)))
% Found (x200 ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P (x0 (g x1)))->(P (b x1)))
% Found ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> ((x20 x3) P)) ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P (x0 (g x1)))->(P (b x1)))
% Found ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> (((x2 x1) x3) P)) ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P (x0 (g x1)))->(P (b x1)))
% Found ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> ((((x x1) x1) x3) P)) ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P (x0 (g x1)))->(P (b x1)))
% Found ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> ((((x x1) x1) x3) P)) ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P (x0 (g x1)))->(P (b x1)))
% Found (fun (P:((fofType->Prop)->Prop))=> ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> ((((x x1) x1) x3) P)) ((eq_ref (fofType->Prop)) (g x1)))) as proof of ((P (x0 (g x1)))->(P (b x1)))
% Found eq_ref00:=(eq_ref0 (g x1)):(((eq (fofType->Prop)) (g x1)) (g x1))
% Found (eq_ref0 (g x1)) as proof of (((eq (fofType->Prop)) (g x1)) (g x1))
% Found ((eq_ref (fofType->Prop)) (g x1)) as proof of (((eq (fofType->Prop)) (g x1)) (g x1))
% Found ((eq_ref (fofType->Prop)) (g x1)) as proof of (((eq (fofType->Prop)) (g x1)) (g x1))
% Found (x200 ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P (x0 (g x1)))->(P (b x1)))
% Found (x200 ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P (x0 (g x1)))->(P (b x1)))
% Found ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> ((x20 x3) (fun (x4:(fofType->Prop))=> (P (x0 (g x1)))))) ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P (x0 (g x1)))->(P (b x1)))
% Found ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> (((x2 x1) x3) (fun (x4:(fofType->Prop))=> (P (x0 (g x1)))))) ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P (x0 (g x1)))->(P (b x1)))
% Found ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> ((((x x1) x1) x3) (fun (x4:(fofType->Prop))=> (P (x0 (g x1)))))) ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P (x0 (g x1)))->(P (b x1)))
% Found ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> ((((x x1) x1) x3) (fun (x4:(fofType->Prop))=> (P (x0 (g x1)))))) ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P (x0 (g x1)))->(P (b x1)))
% Found (fun (P:((fofType->Prop)->Prop))=> ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> ((((x x1) x1) x3) (fun (x4:(fofType->Prop))=> (P (x0 (g x1)))))) ((eq_ref (fofType->Prop)) (g x1)))) as proof of ((P (x0 (g x1)))->(P (b x1)))
% Found eq_ref00:=(eq_ref0 (g x1)):(((eq (fofType->Prop)) (g x1)) (g x1))
% Found (eq_ref0 (g x1)) as proof of (((eq (fofType->Prop)) (g x1)) (g x1))
% Found ((eq_ref (fofType->Prop)) (g x1)) as proof of (((eq (fofType->Prop)) (g x1)) (g x1))
% Found ((eq_ref (fofType->Prop)) (g x1)) as proof of (((eq (fofType->Prop)) (g x1)) (g x1))
% Found (x200 ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P (x0 (g x1)))->(P (b x1)))
% Found (x200 ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P (x0 (g x1)))->(P (b x1)))
% Found ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> ((x20 x3) (fun (x4:(fofType->Prop))=> (P (x0 (g x1)))))) ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P (x0 (g x1)))->(P (b x1)))
% Found ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> (((x2 x1) x3) (fun (x4:(fofType->Prop))=> (P (x0 (g x1)))))) ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P (x0 (g x1)))->(P (b x1)))
% Found ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> ((((x x1) x1) x3) (fun (x4:(fofType->Prop))=> (P (x0 (g x1)))))) ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P (x0 (g x1)))->(P (b x1)))
% Found ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> ((((x x1) x1) x3) (fun (x4:(fofType->Prop))=> (P (x0 (g x1)))))) ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P (x0 (g x1)))->(P (b x1)))
% Found (fun (P:((fofType->Prop)->Prop))=> ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> ((((x x1) x1) x3) (fun (x4:(fofType->Prop))=> (P (x0 (g x1)))))) ((eq_ref (fofType->Prop)) (g x1)))) as proof of ((P (x0 (g x1)))->(P (b x1)))
% Found eq_ref00:=(eq_ref0 (g x1)):(((eq (fofType->Prop)) (g x1)) (g x1))
% Found (eq_ref0 (g x1)) as proof of (((eq (fofType->Prop)) (g x1)) (g x1))
% Found ((eq_ref (fofType->Prop)) (g x1)) as proof of (((eq (fofType->Prop)) (g x1)) (g x1))
% Found ((eq_ref (fofType->Prop)) (g x1)) as proof of (((eq (fofType->Prop)) (g x1)) (g x1))
% Found (x200 ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P (x0 (g x1)))->(P (b x1)))
% Found (x200 ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P (x0 (g x1)))->(P (b x1)))
% Found ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> ((x20 x3) P)) ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P (x0 (g x1)))->(P (b x1)))
% Found ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> (((x2 x1) x3) P)) ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P (x0 (g x1)))->(P (b x1)))
% Found ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> ((((x x1) x1) x3) P)) ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P (x0 (g x1)))->(P (b x1)))
% Found ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> ((((x x1) x1) x3) P)) ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P (x0 (g x1)))->(P (b x1)))
% Found (fun (P:((fofType->Prop)->Prop))=> ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> ((((x x1) x1) x3) P)) ((eq_ref (fofType->Prop)) (g x1)))) as proof of ((P (x0 (g x1)))->(P (b x1)))
% Found eq_ref00:=(eq_ref0 (g x1)):(((eq (fofType->Prop)) (g x1)) (g x1))
% Found (eq_ref0 (g x1)) as proof of (((eq (fofType->Prop)) (g x1)) (g x1))
% Found ((eq_ref (fofType->Prop)) (g x1)) as proof of (((eq (fofType->Prop)) (g x1)) (g x1))
% Found ((eq_ref (fofType->Prop)) (g x1)) as proof of (((eq (fofType->Prop)) (g x1)) (g x1))
% Found (x200 ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P (x0 (g x1)))->(P (b x1)))
% Found (x200 ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P (x0 (g x1)))->(P (b x1)))
% Found ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> ((x20 x3) (fun (x4:(fofType->Prop))=> (P (x0 (g x1)))))) ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P (x0 (g x1)))->(P (b x1)))
% Found ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> (((x2 x1) x3) (fun (x4:(fofType->Prop))=> (P (x0 (g x1)))))) ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P (x0 (g x1)))->(P (b x1)))
% Found ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> ((((x x1) x1) x3) (fun (x4:(fofType->Prop))=> (P (x0 (g x1)))))) ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P (x0 (g x1)))->(P (b x1)))
% Found ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> ((((x x1) x1) x3) (fun (x4:(fofType->Prop))=> (P (x0 (g x1)))))) ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P (x0 (g x1)))->(P (b x1)))
% Found (fun (P:((fofType->Prop)->Prop))=> ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> ((((x x1) x1) x3) (fun (x4:(fofType->Prop))=> (P (x0 (g x1)))))) ((eq_ref (fofType->Prop)) (g x1)))) as proof of ((P (x0 (g x1)))->(P (b x1)))
% Found eq_ref00:=(eq_ref0 (g x1)):(((eq (fofType->Prop)) (g x1)) (g x1))
% Found (eq_ref0 (g x1)) as proof of (((eq (fofType->Prop)) (g x1)) (g x1))
% Found ((eq_ref (fofType->Prop)) (g x1)) as proof of (((eq (fofType->Prop)) (g x1)) (g x1))
% Found ((eq_ref (fofType->Prop)) (g x1)) as proof of (((eq (fofType->Prop)) (g x1)) (g x1))
% Found (x200 ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P (x0 (g x1)))->(P (b x1)))
% Found (x200 ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P (x0 (g x1)))->(P (b x1)))
% Found ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> ((x20 x3) P)) ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P (x0 (g x1)))->(P (b x1)))
% Found ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> (((x2 x1) x3) P)) ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P (x0 (g x1)))->(P (b x1)))
% Found ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> ((((x x1) x1) x3) P)) ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P (x0 (g x1)))->(P (b x1)))
% Found ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> ((((x x1) x1) x3) P)) ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P (x0 (g x1)))->(P (b x1)))
% Found (fun (P:((fofType->Prop)->Prop))=> ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> ((((x x1) x1) x3) P)) ((eq_ref (fofType->Prop)) (g x1)))) as proof of ((P (x0 (g x1)))->(P (b x1)))
% Found eq_ref00:=(eq_ref0 (g x1)):(((eq (fofType->Prop)) (g x1)) (g x1))
% Found (eq_ref0 (g x1)) as proof of (((eq (fofType->Prop)) (g x1)) (g x1))
% Found ((eq_ref (fofType->Prop)) (g x1)) as proof of (((eq (fofType->Prop)) (g x1)) (g x1))
% Found ((eq_ref (fofType->Prop)) (g x1)) as proof of (((eq (fofType->Prop)) (g x1)) (g x1))
% Found (x200 ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P (x0 (g x1)))->(P (b x1)))
% Found (x200 ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P (x0 (g x1)))->(P (b x1)))
% Found ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> ((x20 x3) (fun (x4:(fofType->Prop))=> (P (x0 (g x1)))))) ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P (x0 (g x1)))->(P (b x1)))
% Found ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> (((x2 x1) x3) (fun (x4:(fofType->Prop))=> (P (x0 (g x1)))))) ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P (x0 (g x1)))->(P (b x1)))
% Found ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> ((((x x1) x1) x3) (fun (x4:(fofType->Prop))=> (P (x0 (g x1)))))) ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P (x0 (g x1)))->(P (b x1)))
% Found ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> ((((x x1) x1) x3) (fun (x4:(fofType->Prop))=> (P (x0 (g x1)))))) ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P (x0 (g x1)))->(P (b x1)))
% Found (fun (P:((fofType->Prop)->Prop))=> ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> ((((x x1) x1) x3) (fun (x4:(fofType->Prop))=> (P (x0 (g x1)))))) ((eq_ref (fofType->Prop)) (g x1)))) as proof of ((P (x0 (g x1)))->(P (b x1)))
% Found eq_ref00:=(eq_ref0 (g x1)):(((eq (fofType->Prop)) (g x1)) (g x1))
% Found (eq_ref0 (g x1)) as proof of (((eq (fofType->Prop)) (g x1)) (g x1))
% Found ((eq_ref (fofType->Prop)) (g x1)) as proof of (((eq (fofType->Prop)) (g x1)) (g x1))
% Found ((eq_ref (fofType->Prop)) (g x1)) as proof of (((eq (fofType->Prop)) (g x1)) (g x1))
% Found (x200 ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P (x0 (g x1)))->(P (b x1)))
% Found (x200 ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P (x0 (g x1)))->(P (b x1)))
% Found ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> ((x20 x3) P)) ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P (x0 (g x1)))->(P (b x1)))
% Found ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> (((x2 x1) x3) P)) ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P (x0 (g x1)))->(P (b x1)))
% Found ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> ((((x x1) x1) x3) P)) ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P (x0 (g x1)))->(P (b x1)))
% Found ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> ((((x x1) x1) x3) P)) ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P (x0 (g x1)))->(P (b x1)))
% Found (fun (P:((fofType->Prop)->Prop))=> ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> ((((x x1) x1) x3) P)) ((eq_ref (fofType->Prop)) (g x1)))) as proof of ((P (x0 (g x1)))->(P (b x1)))
% Found eq_ref00:=(eq_ref0 ((x0 (g x1)) x2)):(((eq Prop) ((x0 (g x1)) x2)) ((x0 (g x1)) x2))
% Found (eq_ref0 ((x0 (g x1)) x2)) as proof of (((eq Prop) ((x0 (g x1)) x2)) ((b x1) x2))
% Found ((eq_ref Prop) ((x0 (g x1)) x2)) as proof of (((eq Prop) ((x0 (g x1)) x2)) ((b x1) x2))
% Found ((eq_ref Prop) ((x0 (g x1)) x2)) as proof of (((eq Prop) ((x0 (g x1)) x2)) ((b x1) x2))
% Found (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2))) as proof of (((eq Prop) ((x0 (g x1)) x2)) ((b x1) x2))
% Found (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2))) as proof of (forall (x:fofType), (((eq Prop) ((x0 (g x1)) x)) ((b x1) x)))
% Found (functional_extensionality_dep0000 (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2)))) as proof of (forall (P:((fofType->Prop)->Prop)), ((P (x0 (g x1)))->(P (b x1))))
% Found ((functional_extensionality_dep000 (b x1)) (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2)))) as proof of (forall (P:((fofType->Prop)->Prop)), ((P (x0 (g x1)))->(P (b x1))))
% Found (((functional_extensionality_dep00 (x0 (g x1))) (b x1)) (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2)))) as proof of (forall (P:((fofType->Prop)->Prop)), ((P (x0 (g x1)))->(P (b x1))))
% Found ((((functional_extensionality_dep0 (fun (x4:fofType)=> Prop)) (x0 (g x1))) (b x1)) (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2)))) as proof of (forall (P:((fofType->Prop)->Prop)), ((P (x0 (g x1)))->(P (b x1))))
% Found (((((functional_extensionality_dep fofType) (fun (x4:fofType)=> Prop)) (x0 (g x1))) (b x1)) (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2)))) as proof of (forall (P:((fofType->Prop)->Prop)), ((P (x0 (g x1)))->(P (b x1))))
% Found (((((functional_extensionality_dep fofType) (fun (x4:fofType)=> Prop)) (x0 (g x1))) (b x1)) (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2)))) as proof of (forall (P:((fofType->Prop)->Prop)), ((P (x0 (g x1)))->(P (b x1))))
% Found eq_ref00:=(eq_ref0 ((x0 (g x1)) x2)):(((eq Prop) ((x0 (g x1)) x2)) ((x0 (g x1)) x2))
% Found (eq_ref0 ((x0 (g x1)) x2)) as proof of (((eq Prop) ((x0 (g x1)) x2)) ((b x1) x2))
% Found ((eq_ref Prop) ((x0 (g x1)) x2)) as proof of (((eq Prop) ((x0 (g x1)) x2)) ((b x1) x2))
% Found ((eq_ref Prop) ((x0 (g x1)) x2)) as proof of (((eq Prop) ((x0 (g x1)) x2)) ((b x1) x2))
% Found (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2))) as proof of (((eq Prop) ((x0 (g x1)) x2)) ((b x1) x2))
% Found (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2))) as proof of (forall (x:fofType), (((eq Prop) ((x0 (g x1)) x)) ((b x1) x)))
% Found (functional_extensionality_dep0000 (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2)))) as proof of (((eq (fofType->Prop)) (x0 (g x1))) (b x1))
% Found ((functional_extensionality_dep000 (b x1)) (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2)))) as proof of (((eq (fofType->Prop)) (x0 (g x1))) (b x1))
% Found (((functional_extensionality_dep00 (x0 (g x1))) (b x1)) (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2)))) as proof of (((eq (fofType->Prop)) (x0 (g x1))) (b x1))
% Found ((((functional_extensionality_dep0 (fun (x4:fofType)=> Prop)) (x0 (g x1))) (b x1)) (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2)))) as proof of (((eq (fofType->Prop)) (x0 (g x1))) (b x1))
% Found (((((functional_extensionality_dep fofType) (fun (x4:fofType)=> Prop)) (x0 (g x1))) (b x1)) (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2)))) as proof of (((eq (fofType->Prop)) (x0 (g x1))) (b x1))
% Found eq_ref00:=(eq_ref0 ((x0 (g x1)) x2)):(((eq Prop) ((x0 (g x1)) x2)) ((x0 (g x1)) x2))
% Found (eq_ref0 ((x0 (g x1)) x2)) as proof of (((eq Prop) ((x0 (g x1)) x2)) ((b x1) x2))
% Found ((eq_ref Prop) ((x0 (g x1)) x2)) as proof of (((eq Prop) ((x0 (g x1)) x2)) ((b x1) x2))
% Found ((eq_ref Prop) ((x0 (g x1)) x2)) as proof of (((eq Prop) ((x0 (g x1)) x2)) ((b x1) x2))
% Found (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2))) as proof of (((eq Prop) ((x0 (g x1)) x2)) ((b x1) x2))
% Found (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2))) as proof of (forall (x:fofType), (((eq Prop) ((x0 (g x1)) x)) ((b x1) x)))
% Found (functional_extensionality0000 (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2)))) as proof of (forall (P:((fofType->Prop)->Prop)), ((P (x0 (g x1)))->(P (b x1))))
% Found ((functional_extensionality000 (b x1)) (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2)))) as proof of (forall (P:((fofType->Prop)->Prop)), ((P (x0 (g x1)))->(P (b x1))))
% Found (((functional_extensionality00 (x0 (g x1))) (b x1)) (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2)))) as proof of (forall (P:((fofType->Prop)->Prop)), ((P (x0 (g x1)))->(P (b x1))))
% Found ((((functional_extensionality0 Prop) (x0 (g x1))) (b x1)) (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2)))) as proof of (forall (P:((fofType->Prop)->Prop)), ((P (x0 (g x1)))->(P (b x1))))
% Found (((((functional_extensionality fofType) Prop) (x0 (g x1))) (b x1)) (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2)))) as proof of (forall (P:((fofType->Prop)->Prop)), ((P (x0 (g x1)))->(P (b x1))))
% Found (((((functional_extensionality fofType) Prop) (x0 (g x1))) (b x1)) (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2)))) as proof of (forall (P:((fofType->Prop)->Prop)), ((P (x0 (g x1)))->(P (b x1))))
% Found eq_ref00:=(eq_ref0 ((x0 (g x1)) x2)):(((eq Prop) ((x0 (g x1)) x2)) ((x0 (g x1)) x2))
% Found (eq_ref0 ((x0 (g x1)) x2)) as proof of (((eq Prop) ((x0 (g x1)) x2)) ((b x1) x2))
% Found ((eq_ref Prop) ((x0 (g x1)) x2)) as proof of (((eq Prop) ((x0 (g x1)) x2)) ((b x1) x2))
% Found ((eq_ref Prop) ((x0 (g x1)) x2)) as proof of (((eq Prop) ((x0 (g x1)) x2)) ((b x1) x2))
% Found (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2))) as proof of (((eq Prop) ((x0 (g x1)) x2)) ((b x1) x2))
% Found (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2))) as proof of (forall (x:fofType), (((eq Prop) ((x0 (g x1)) x)) ((b x1) x)))
% Found (functional_extensionality0000 (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2)))) as proof of (((eq (fofType->Prop)) (x0 (g x1))) (b x1))
% Found ((functional_extensionality000 (b x1)) (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2)))) as proof of (((eq (fofType->Prop)) (x0 (g x1))) (b x1))
% Found (((functional_extensionality00 (x0 (g x1))) (b x1)) (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2)))) as proof of (((eq (fofType->Prop)) (x0 (g x1))) (b x1))
% Found ((((functional_extensionality0 Prop) (x0 (g x1))) (b x1)) (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2)))) as proof of (((eq (fofType->Prop)) (x0 (g x1))) (b x1))
% Found (((((functional_extensionality fofType) Prop) (x0 (g x1))) (b x1)) (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2)))) as proof of (((eq (fofType->Prop)) (x0 (g x1))) (b x1))
% Found eq_ref00:=(eq_ref0 ((x0 (g x1)) x2)):(((eq Prop) ((x0 (g x1)) x2)) ((x0 (g x1)) x2))
% Found (eq_ref0 ((x0 (g x1)) x2)) as proof of (((eq Prop) ((x0 (g x1)) x2)) ((b x1) x2))
% Found ((eq_ref Prop) ((x0 (g x1)) x2)) as proof of (((eq Prop) ((x0 (g x1)) x2)) ((b x1) x2))
% Found ((eq_ref Prop) ((x0 (g x1)) x2)) as proof of (((eq Prop) ((x0 (g x1)) x2)) ((b x1) x2))
% Found (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2))) as proof of (((eq Prop) ((x0 (g x1)) x2)) ((b x1) x2))
% Found (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2))) as proof of (forall (x:fofType), (((eq Prop) ((x0 (g x1)) x)) ((b x1) x)))
% Found (functional_extensionality_dep0000 (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2)))) as proof of (((eq (fofType->Prop)) (x0 (g x1))) (b x1))
% Found ((functional_extensionality_dep000 (b x1)) (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2)))) as proof of (((eq (fofType->Prop)) (x0 (g x1))) (b x1))
% Found (((functional_extensionality_dep00 (x0 (g x1))) (b x1)) (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2)))) as proof of (((eq (fofType->Prop)) (x0 (g x1))) (b x1))
% Found ((((functional_extensionality_dep0 (fun (x4:fofType)=> Prop)) (x0 (g x1))) (b x1)) (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2)))) as proof of (((eq (fofType->Prop)) (x0 (g x1))) (b x1))
% Found (((((functional_extensionality_dep fofType) (fun (x4:fofType)=> Prop)) (x0 (g x1))) (b x1)) (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2)))) as proof of (((eq (fofType->Prop)) (x0 (g x1))) (b x1))
% Found eq_ref00:=(eq_ref0 ((x0 (g x1)) x2)):(((eq Prop) ((x0 (g x1)) x2)) ((x0 (g x1)) x2))
% Found (eq_ref0 ((x0 (g x1)) x2)) as proof of (((eq Prop) ((x0 (g x1)) x2)) ((b x1) x2))
% Found ((eq_ref Prop) ((x0 (g x1)) x2)) as proof of (((eq Prop) ((x0 (g x1)) x2)) ((b x1) x2))
% Found ((eq_ref Prop) ((x0 (g x1)) x2)) as proof of (((eq Prop) ((x0 (g x1)) x2)) ((b x1) x2))
% Found (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2))) as proof of (((eq Prop) ((x0 (g x1)) x2)) ((b x1) x2))
% Found (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2))) as proof of (forall (x:fofType), (((eq Prop) ((x0 (g x1)) x)) ((b x1) x)))
% Found (functional_extensionality0000 (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2)))) as proof of (((eq (fofType->Prop)) (x0 (g x1))) (b x1))
% Found ((functional_extensionality000 (b x1)) (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2)))) as proof of (((eq (fofType->Prop)) (x0 (g x1))) (b x1))
% Found (((functional_extensionality00 (x0 (g x1))) (b x1)) (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2)))) as proof of (((eq (fofType->Prop)) (x0 (g x1))) (b x1))
% Found ((((functional_extensionality0 Prop) (x0 (g x1))) (b x1)) (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2)))) as proof of (((eq (fofType->Prop)) (x0 (g x1))) (b x1))
% Found (((((functional_extensionality fofType) Prop) (x0 (g x1))) (b x1)) (fun (x2:fofType)=> ((eq_ref Prop) ((x0 (g x1)) x2)))) as proof of (((eq (fofType->Prop)) (x0 (g x1))) (b x1))
% Found eq_ref00:=(eq_ref0 b):(((eq (fofType->Prop)) b) b)
% Found (eq_ref0 b) as proof of (((eq (fofType->Prop)) b) (x0 (g x1)))
% Found ((eq_ref (fofType->Prop)) b) as proof of (((eq (fofType->Prop)) b) (x0 (g x1)))
% Found ((eq_ref (fofType->Prop)) b) as proof of (((eq (fofType->Prop)) b) (x0 (g x1)))
% Found ((eq_ref (fofType->Prop)) b) as proof of (((eq (fofType->Prop)) b) (x0 (g x1)))
% Found eta_expansion_dep000:=(eta_expansion_dep00 (f x1)):(((eq (fofType->Prop)) (f x1)) (fun (x:fofType)=> ((f x1) x)))
% Found (eta_expansion_dep00 (f x1)) as proof of (((eq (fofType->Prop)) (f x1)) b)
% Found ((eta_expansion_dep0 (fun (x3:fofType)=> Prop)) (f x1)) as proof of (((eq (fofType->Prop)) (f x1)) b)
% Found (((eta_expansion_dep fofType) (fun (x3:fofType)=> Prop)) (f x1)) as proof of (((eq (fofType->Prop)) (f x1)) b)
% Found (((eta_expansion_dep fofType) (fun (x3:fofType)=> Prop)) (f x1)) as proof of (((eq (fofType->Prop)) (f x1)) b)
% Found (((eta_expansion_dep fofType) (fun (x3:fofType)=> Prop)) (f x1)) as proof of (((eq (fofType->Prop)) (f x1)) b)
% Found eq_ref00:=(eq_ref0 b):(((eq (fofType->Prop)) b) b)
% Found (eq_ref0 b) as proof of (((eq (fofType->Prop)) b) (x0 (g x1)))
% Found ((eq_ref (fofType->Prop)) b) as proof of (((eq (fofType->Prop)) b) (x0 (g x1)))
% Found ((eq_ref (fofType->Prop)) b) as proof of (((eq (fofType->Prop)) b) (x0 (g x1)))
% Found ((eq_ref (fofType->Prop)) b) as proof of (((eq (fofType->Prop)) b) (x0 (g x1)))
% Found eta_expansion_dep000:=(eta_expansion_dep00 (f x1)):(((eq (fofType->Prop)) (f x1)) (fun (x:fofType)=> ((f x1) x)))
% Found (eta_expansion_dep00 (f x1)) as proof of (((eq (fofType->Prop)) (f x1)) b)
% Found ((eta_expansion_dep0 (fun (x3:fofType)=> Prop)) (f x1)) as proof of (((eq (fofType->Prop)) (f x1)) b)
% Found (((eta_expansion_dep fofType) (fun (x3:fofType)=> Prop)) (f x1)) as proof of (((eq (fofType->Prop)) (f x1)) b)
% Found (((eta_expansion_dep fofType) (fun (x3:fofType)=> Prop)) (f x1)) as proof of (((eq (fofType->Prop)) (f x1)) b)
% Found (((eta_expansion_dep fofType) (fun (x3:fofType)=> Prop)) (f x1)) as proof of (((eq (fofType->Prop)) (f x1)) b)
% Found eq_ref00:=(eq_ref0 b):(((eq (fofType->Prop)) b) b)
% Found (eq_ref0 b) as proof of (((eq (fofType->Prop)) b) (x0 (g x1)))
% Found ((eq_ref (fofType->Prop)) b) as proof of (((eq (fofType->Prop)) b) (x0 (g x1)))
% Found ((eq_ref (fofType->Prop)) b) as proof of (((eq (fofType->Prop)) b) (x0 (g x1)))
% Found ((eq_ref (fofType->Prop)) b) as proof of (((eq (fofType->Prop)) b) (x0 (g x1)))
% Found eta_expansion_dep000:=(eta_expansion_dep00 (f x1)):(((eq (fofType->Prop)) (f x1)) (fun (x:fofType)=> ((f x1) x)))
% Found (eta_expansion_dep00 (f x1)) as proof of (((eq (fofType->Prop)) (f x1)) b)
% Found ((eta_expansion_dep0 (fun (x3:fofType)=> Prop)) (f x1)) as proof of (((eq (fofType->Prop)) (f x1)) b)
% Found (((eta_expansion_dep fofType) (fun (x3:fofType)=> Prop)) (f x1)) as proof of (((eq (fofType->Prop)) (f x1)) b)
% Found (((eta_expansion_dep fofType) (fun (x3:fofType)=> Prop)) (f x1)) as proof of (((eq (fofType->Prop)) (f x1)) b)
% Found (((eta_expansion_dep fofType) (fun (x3:fofType)=> Prop)) (f x1)) as proof of (((eq (fofType->Prop)) (f x1)) b)
% Found eq_ref00:=(eq_ref0 b):(((eq (fofType->Prop)) b) b)
% Found (eq_ref0 b) as proof of (((eq (fofType->Prop)) b) (x0 (g x1)))
% Found ((eq_ref (fofType->Prop)) b) as proof of (((eq (fofType->Prop)) b) (x0 (g x1)))
% Found ((eq_ref (fofType->Prop)) b) as proof of (((eq (fofType->Prop)) b) (x0 (g x1)))
% Found ((eq_ref (fofType->Prop)) b) as proof of (((eq (fofType->Prop)) b) (x0 (g x1)))
% Found eta_expansion_dep000:=(eta_expansion_dep00 (f x1)):(((eq (fofType->Prop)) (f x1)) (fun (x:fofType)=> ((f x1) x)))
% Found (eta_expansion_dep00 (f x1)) as proof of (((eq (fofType->Prop)) (f x1)) b)
% Found ((eta_expansion_dep0 (fun (x3:fofType)=> Prop)) (f x1)) as proof of (((eq (fofType->Prop)) (f x1)) b)
% Found (((eta_expansion_dep fofType) (fun (x3:fofType)=> Prop)) (f x1)) as proof of (((eq (fofType->Prop)) (f x1)) b)
% Found (((eta_expansion_dep fofType) (fun (x3:fofType)=> Prop)) (f x1)) as proof of (((eq (fofType->Prop)) (f x1)) b)
% Found (((eta_expansion_dep fofType) (fun (x3:fofType)=> Prop)) (f x1)) as proof of (((eq (fofType->Prop)) (f x1)) b)
% Found eq_ref00:=(eq_ref0 b):(((eq (fofType->Prop)) b) b)
% Found (eq_ref0 b) as proof of (((eq (fofType->Prop)) b) (x0 (g x1)))
% Found ((eq_ref (fofType->Prop)) b) as proof of (((eq (fofType->Prop)) b) (x0 (g x1)))
% Found ((eq_ref (fofType->Prop)) b) as proof of (((eq (fofType->Prop)) b) (x0 (g x1)))
% Found ((eq_ref (fofType->Prop)) b) as proof of (((eq (fofType->Prop)) b) (x0 (g x1)))
% Found eta_expansion_dep000:=(eta_expansion_dep00 (f x1)):(((eq (fofType->Prop)) (f x1)) (fun (x:fofType)=> ((f x1) x)))
% Found (eta_expansion_dep00 (f x1)) as proof of (((eq (fofType->Prop)) (f x1)) b)
% Found ((eta_expansion_dep0 (fun (x3:fofType)=> Prop)) (f x1)) as proof of (((eq (fofType->Prop)) (f x1)) b)
% Found (((eta_expansion_dep fofType) (fun (x3:fofType)=> Prop)) (f x1)) as proof of (((eq (fofType->Prop)) (f x1)) b)
% Found (((eta_expansion_dep fofType) (fun (x3:fofType)=> Prop)) (f x1)) as proof of (((eq (fofType->Prop)) (f x1)) b)
% Found (((eta_expansion_dep fofType) (fun (x3:fofType)=> Prop)) (f x1)) as proof of (((eq (fofType->Prop)) (f x1)) b)
% Found eq_ref00:=(eq_ref0 b):(((eq (fofType->Prop)) b) b)
% Found (eq_ref0 b) as proof of (((eq (fofType->Prop)) b) (x0 (g x1)))
% Found ((eq_ref (fofType->Prop)) b) as proof of (((eq (fofType->Prop)) b) (x0 (g x1)))
% Found ((eq_ref (fofType->Prop)) b) as proof of (((eq (fofType->Prop)) b) (x0 (g x1)))
% Found ((eq_ref (fofType->Prop)) b) as proof of (((eq (fofType->Prop)) b) (x0 (g x1)))
% Found eta_expansion_dep000:=(eta_expansion_dep00 (f x1)):(((eq (fofType->Prop)) (f x1)) (fun (x:fofType)=> ((f x1) x)))
% Found (eta_expansion_dep00 (f x1)) as proof of (((eq (fofType->Prop)) (f x1)) b)
% Found ((eta_expansion_dep0 (fun (x3:fofType)=> Prop)) (f x1)) as proof of (((eq (fofType->Prop)) (f x1)) b)
% Found (((eta_expansion_dep fofType) (fun (x3:fofType)=> Prop)) (f x1)) as proof of (((eq (fofType->Prop)) (f x1)) b)
% Found (((eta_expansion_dep fofType) (fun (x3:fofType)=> Prop)) (f x1)) as proof of (((eq (fofType->Prop)) (f x1)) b)
% Found (((eta_expansion_dep fofType) (fun (x3:fofType)=> Prop)) (f x1)) as proof of (((eq (fofType->Prop)) (f x1)) b)
% Found eq_ref00:=(eq_ref0 (b x1)):(((eq (fofType->Prop)) (b x1)) (b x1))
% Found (eq_ref0 (b x1)) as proof of (P b)
% Found ((eq_ref (fofType->Prop)) (b x1)) as proof of (P b)
% Found ((eq_ref (fofType->Prop)) (b x1)) as proof of (P b)
% Found ((eq_ref (fofType->Prop)) (b x1)) as proof of (P b)
% Found eta_expansion_dep000:=(eta_expansion_dep00 f):(((eq (fofType->(fofType->Prop))) f) (fun (x:fofType)=> (f x)))
% Found (eta_expansion_dep00 f) as proof of (((eq (fofType->(fofType->Prop))) f) b)
% Found ((eta_expansion_dep0 (fun (x3:fofType)=> (fofType->Prop))) f) as proof of (((eq (fofType->(fofType->Prop))) f) b)
% Found (((eta_expansion_dep fofType) (fun (x3:fofType)=> (fofType->Prop))) f) as proof of (((eq (fofType->(fofType->Prop))) f) b)
% Found (((eta_expansion_dep fofType) (fun (x3:fofType)=> (fofType->Prop))) f) as proof of (((eq (fofType->(fofType->Prop))) f) b)
% Found (((eta_expansion_dep fofType) (fun (x3:fofType)=> (fofType->Prop))) f) as proof of (((eq (fofType->(fofType->Prop))) f) b)
% Found eq_ref00:=(eq_ref0 (b x1)):(((eq (fofType->Prop)) (b x1)) (b x1))
% Found (eq_ref0 (b x1)) as proof of (P b)
% Found ((eq_ref (fofType->Prop)) (b x1)) as proof of (P b)
% Found ((eq_ref (fofType->Prop)) (b x1)) as proof of (P b)
% Found ((eq_ref (fofType->Prop)) (b x1)) as proof of (P b)
% Found eq_ref00:=(eq_ref0 f):(((eq (fofType->(fofType->Prop))) f) f)
% Found (eq_ref0 f) as proof of (((eq (fofType->(fofType->Prop))) f) b)
% Found ((eq_ref (fofType->(fofType->Prop))) f) as proof of (((eq (fofType->(fofType->Prop))) f) b)
% Found ((eq_ref (fofType->(fofType->Prop))) f) as proof of (((eq (fofType->(fofType->Prop))) f) b)
% Found ((eq_ref (fofType->(fofType->Prop))) f) as proof of (((eq (fofType->(fofType->Prop))) f) b)
% Found eta_expansion_dep0000:=(eta_expansion_dep000 P):((P b)->(P (fun (x:fofType)=> (b x))))
% Found (eta_expansion_dep000 P) as proof of (P0 b)
% Found ((eta_expansion_dep00 b) P) as proof of (P0 b)
% Found (((eta_expansion_dep0 (fun (x2:fofType)=> (fofType->Prop))) b) P) as proof of (P0 b)
% Found ((((eta_expansion_dep fofType) (fun (x2:fofType)=> (fofType->Prop))) b) P) as proof of (P0 b)
% Found ((((eta_expansion_dep fofType) (fun (x2:fofType)=> (fofType->Prop))) b) P) as proof of (P0 b)
% Found eq_ref000:=(eq_ref00 P):((P (x0 (g x1)))->(P (x0 (g x1))))
% Found (eq_ref00 P) as proof of ((P (x0 (g x1)))->(P (b0 x1)))
% Found ((eq_ref0 (x0 (g x1))) P) as proof of ((P (x0 (g x1)))->(P (b0 x1)))
% Found (((eq_ref (fofType->Prop)) (x0 (g x1))) P) as proof of ((P (x0 (g x1)))->(P (b0 x1)))
% Found (((eq_ref (fofType->Prop)) (x0 (g x1))) P) as proof of ((P (x0 (g x1)))->(P (b0 x1)))
% Found (fun (P:((fofType->Prop)->Prop))=> (((eq_ref (fofType->Prop)) (x0 (g x1))) P)) as proof of ((P (x0 (g x1)))->(P (b0 x1)))
% Found eq_ref000:=(eq_ref00 P):((P (x0 (g x1)))->(P (x0 (g x1))))
% Found (eq_ref00 P) as proof of ((P (x0 (g x1)))->(P (b0 x1)))
% Found ((eq_ref0 (x0 (g x1))) P) as proof of ((P (x0 (g x1)))->(P (b0 x1)))
% Found (((eq_ref (fofType->Prop)) (x0 (g x1))) P) as proof of ((P (x0 (g x1)))->(P (b0 x1)))
% Found (((eq_ref (fofType->Prop)) (x0 (g x1))) P) as proof of ((P (x0 (g x1)))->(P (b0 x1)))
% Found (fun (P:((fofType->Prop)->Prop))=> (((eq_ref (fofType->Prop)) (x0 (g x1))) P)) as proof of ((P (x0 (g x1)))->(P (b0 x1)))
% Found eq_ref00:=(eq_ref0 b):(((eq (fofType->(fofType->Prop))) b) b)
% Found (eq_ref0 b) as proof of (((eq (fofType->(fofType->Prop))) b) b0)
% Found ((eq_ref (fofType->(fofType->Prop))) b) as proof of (((eq (fofType->(fofType->Prop))) b) b0)
% Found ((eq_ref (fofType->(fofType->Prop))) b) as proof of (((eq (fofType->(fofType->Prop))) b) b0)
% Found ((eq_ref (fofType->(fofType->Prop))) b) as proof of (((eq (fofType->(fofType->Prop))) b) b0)
% Found eta_expansion_dep000:=(eta_expansion_dep00 b0):(((eq (fofType->(fofType->Prop))) b0) (fun (x:fofType)=> (b0 x)))
% Found (eta_expansion_dep00 b0) as proof of (((eq (fofType->(fofType->Prop))) b0) (fun (Xx:fofType)=> (x0 (g Xx))))
% Found ((eta_expansion_dep0 (fun (x2:fofType)=> (fofType->Prop))) b0) as proof of (((eq (fofType->(fofType->Prop))) b0) (fun (Xx:fofType)=> (x0 (g Xx))))
% Found (((eta_expansion_dep fofType) (fun (x2:fofType)=> (fofType->Prop))) b0) as proof of (((eq (fofType->(fofType->Prop))) b0) (fun (Xx:fofType)=> (x0 (g Xx))))
% Found (((eta_expansion_dep fofType) (fun (x2:fofType)=> (fofType->Prop))) b0) as proof of (((eq (fofType->(fofType->Prop))) b0) (fun (Xx:fofType)=> (x0 (g Xx))))
% Found (((eta_expansion_dep fofType) (fun (x2:fofType)=> (fofType->Prop))) b0) as proof of (((eq (fofType->(fofType->Prop))) b0) (fun (Xx:fofType)=> (x0 (g Xx))))
% Found eq_ref00:=(eq_ref0 b):(((eq (fofType->(fofType->Prop))) b) b)
% Found (eq_ref0 b) as proof of (((eq (fofType->(fofType->Prop))) b) b0)
% Found ((eq_ref (fofType->(fofType->Prop))) b) as proof of (((eq (fofType->(fofType->Prop))) b) b0)
% Found ((eq_ref (fofType->(fofType->Prop))) b) as proof of (((eq (fofType->(fofType->Prop))) b) b0)
% Found ((eq_ref (fofType->(fofType->Prop))) b) as proof of (((eq (fofType->(fofType->Prop))) b) b0)
% Found eta_expansion_dep000:=(eta_expansion_dep00 b0):(((eq (fofType->(fofType->Prop))) b0) (fun (x:fofType)=> (b0 x)))
% Found (eta_expansion_dep00 b0) as proof of (((eq (fofType->(fofType->Prop))) b0) (fun (Xx:fofType)=> (x0 (g Xx))))
% Found ((eta_expansion_dep0 (fun (x2:fofType)=> (fofType->Prop))) b0) as proof of (((eq (fofType->(fofType->Prop))) b0) (fun (Xx:fofType)=> (x0 (g Xx))))
% Found (((eta_expansion_dep fofType) (fun (x2:fofType)=> (fofType->Prop))) b0) as proof of (((eq (fofType->(fofType->Prop))) b0) (fun (Xx:fofType)=> (x0 (g Xx))))
% Found (((eta_expansion_dep fofType) (fun (x2:fofType)=> (fofType->Prop))) b0) as proof of (((eq (fofType->(fofType->Prop))) b0) (fun (Xx:fofType)=> (x0 (g Xx))))
% Found (((eta_expansion_dep fofType) (fun (x2:fofType)=> (fofType->Prop))) b0) as proof of (((eq (fofType->(fofType->Prop))) b0) (fun (Xx:fofType)=> (x0 (g Xx))))
% Found eq_ref000:=(eq_ref00 P):((P (f x1))->(P (f x1)))
% Found (eq_ref00 P) as proof of (P0 (f x1))
% Found ((eq_ref0 (f x1)) P) as proof of (P0 (f x1))
% Found (((eq_ref (fofType->Prop)) (f x1)) P) as proof of (P0 (f x1))
% Found (((eq_ref (fofType->Prop)) (f x1)) P) as proof of (P0 (f x1))
% Found eq_ref000:=(eq_ref00 P):((P (f x1))->(P (f x1)))
% Found (eq_ref00 P) as proof of (P0 (f x1))
% Found ((eq_ref0 (f x1)) P) as proof of (P0 (f x1))
% Found (((eq_ref (fofType->Prop)) (f x1)) P) as proof of (P0 (f x1))
% Found (((eq_ref (fofType->Prop)) (f x1)) P) as proof of (P0 (f x1))
% Found eq_ref000:=(eq_ref00 P):((P (f x1))->(P (f x1)))
% Found (eq_ref00 P) as proof of (P0 (f x1))
% Found ((eq_ref0 (f x1)) P) as proof of (P0 (f x1))
% Found (((eq_ref (fofType->Prop)) (f x1)) P) as proof of (P0 (f x1))
% Found (((eq_ref (fofType->Prop)) (f x1)) P) as proof of (P0 (f x1))
% Found eq_ref000:=(eq_ref00 P):((P (f x1))->(P (f x1)))
% Found (eq_ref00 P) as proof of (P0 (f x1))
% Found ((eq_ref0 (f x1)) P) as proof of (P0 (f x1))
% Found (((eq_ref (fofType->Prop)) (f x1)) P) as proof of (P0 (f x1))
% Found (((eq_ref (fofType->Prop)) (f x1)) P) as proof of (P0 (f x1))
% Found eq_ref000:=(eq_ref00 P):((P (f x1))->(P (f x1)))
% Found (eq_ref00 P) as proof of (P0 (f x1))
% Found ((eq_ref0 (f x1)) P) as proof of (P0 (f x1))
% Found (((eq_ref (fofType->Prop)) (f x1)) P) as proof of (P0 (f x1))
% Found (((eq_ref (fofType->Prop)) (f x1)) P) as proof of (P0 (f x1))
% Found eq_ref000:=(eq_ref00 P):((P (f x1))->(P (f x1)))
% Found (eq_ref00 P) as proof of (P0 (f x1))
% Found ((eq_ref0 (f x1)) P) as proof of (P0 (f x1))
% Found (((eq_ref (fofType->Prop)) (f x1)) P) as proof of (P0 (f x1))
% Found (((eq_ref (fofType->Prop)) (f x1)) P) as proof of (P0 (f x1))
% Found eq_ref00:=(eq_ref0 ((x0 (g x1)) y)):(((eq Prop) ((x0 (g x1)) y)) ((x0 (g x1)) y))
% Found (eq_ref0 ((x0 (g x1)) y)) as proof of (((eq Prop) ((x0 (g x1)) y)) ((b0 x1) y))
% Found ((eq_ref Prop) ((x0 (g x1)) y)) as proof of (((eq Prop) ((x0 (g x1)) y)) ((b0 x1) y))
% Found ((eq_ref Prop) ((x0 (g x1)) y)) as proof of (((eq Prop) ((x0 (g x1)) y)) ((b0 x1) y))
% Found (fun (y:fofType)=> ((eq_ref Prop) ((x0 (g x1)) y))) as proof of (((eq Prop) ((x0 (g x1)) y)) ((b0 x1) y))
% Found eq_ref00:=(eq_ref0 ((x0 (g x1)) y)):(((eq Prop) ((x0 (g x1)) y)) ((x0 (g x1)) y))
% Found (eq_ref0 ((x0 (g x1)) y)) as proof of (((eq Prop) ((x0 (g x1)) y)) ((f x1) y))
% Found ((eq_ref Prop) ((x0 (g x1)) y)) as proof of (((eq Prop) ((x0 (g x1)) y)) ((f x1) y))
% Found ((eq_ref Prop) ((x0 (g x1)) y)) as proof of (((eq Prop) ((x0 (g x1)) y)) ((f x1) y))
% Found ((eq_ref Prop) ((x0 (g x1)) y)) as proof of (((eq Prop) ((x0 (g x1)) y)) ((f x1) y))
% Found (eq_sym1000 ((eq_ref Prop) ((x0 (g x1)) y))) as proof of ((P ((f x1) y))->(P ((x0 (g x1)) y)))
% Found (eq_sym1000 ((eq_ref Prop) ((x0 (g x1)) y))) as proof of ((P ((f x1) y))->(P ((x0 (g x1)) y)))
% Found ((fun (x2:(((eq Prop) ((x0 (g x1)) y)) ((f x1) y)))=> ((eq_sym100 x2) P)) ((eq_ref Prop) ((x0 (g x1)) y))) as proof of ((P ((f x1) y))->(P ((x0 (g x1)) y)))
% Found ((fun (x2:(((eq Prop) ((x0 (g x1)) y)) ((f x1) y)))=> (((eq_sym10 ((f x1) y)) x2) P)) ((eq_ref Prop) ((x0 (g x1)) y))) as proof of ((P ((f x1) y))->(P ((x0 (g x1)) y)))
% Found ((fun (x2:(((eq Prop) ((x0 (g x1)) y)) ((f x1) y)))=> ((((eq_sym1 ((x0 (g x1)) y)) ((f x1) y)) x2) P)) ((eq_ref Prop) ((x0 (g x1)) y))) as proof of ((P ((f x1) y))->(P ((x0 (g x1)) y)))
% Found ((fun (x2:(((eq Prop) ((x0 (g x1)) y)) ((f x1) y)))=> (((((eq_sym Prop) ((x0 (g x1)) y)) ((f x1) y)) x2) P)) ((eq_ref Prop) ((x0 (g x1)) y))) as proof of ((P ((f x1) y))->(P ((x0 (g x1)) y)))
% Found (fun (P:(Prop->Prop))=> ((fun (x2:(((eq Prop) ((x0 (g x1)) y)) ((f x1) y)))=> (((((eq_sym Prop) ((x0 (g x1)) y)) ((f x1) y)) x2) P)) ((eq_ref Prop) ((x0 (g x1)) y)))) as proof of ((P ((f x1) y))->(P ((x0 (g x1)) y)))
% Found (fun (P:(Prop->Prop))=> ((fun (x2:(((eq Prop) ((x0 (g x1)) y)) ((f x1) y)))=> (((((eq_sym Prop) ((x0 (g x1)) y)) ((f x1) y)) x2) P)) ((eq_ref Prop) ((x0 (g x1)) y)))) as proof of (forall (P:(Prop->Prop)), ((P ((f x1) y))->(P ((x0 (g x1)) y))))
% Found (fun (y:fofType) (P:(Prop->Prop))=> ((fun (x2:(((eq Prop) ((x0 (g x1)) y)) ((f x1) y)))=> (((((eq_sym Prop) ((x0 (g x1)) y)) ((f x1) y)) x2) P)) ((eq_ref Prop) ((x0 (g x1)) y)))) as proof of (((eq Prop) ((f x1) y)) ((x0 (g x1)) y))
% Found eq_ref00:=(eq_ref0 ((x0 (g x1)) y)):(((eq Prop) ((x0 (g x1)) y)) ((x0 (g x1)) y))
% Found (eq_ref0 ((x0 (g x1)) y)) as proof of (((eq Prop) ((x0 (g x1)) y)) ((f x1) y))
% Found ((eq_ref Prop) ((x0 (g x1)) y)) as proof of (((eq Prop) ((x0 (g x1)) y)) ((f x1) y))
% Found ((eq_ref Prop) ((x0 (g x1)) y)) as proof of (((eq Prop) ((x0 (g x1)) y)) ((f x1) y))
% Found ((eq_ref Prop) ((x0 (g x1)) y)) as proof of (((eq Prop) ((x0 (g x1)) y)) ((f x1) y))
% Found (eq_sym100 ((eq_ref Prop) ((x0 (g x1)) y))) as proof of (forall (P:(Prop->Prop)), ((P ((f x1) y))->(P ((x0 (g x1)) y))))
% Found ((eq_sym10 ((f x1) y)) ((eq_ref Prop) ((x0 (g x1)) y))) as proof of (forall (P:(Prop->Prop)), ((P ((f x1) y))->(P ((x0 (g x1)) y))))
% Found (((eq_sym1 ((x0 (g x1)) y)) ((f x1) y)) ((eq_ref Prop) ((x0 (g x1)) y))) as proof of (forall (P:(Prop->Prop)), ((P ((f x1) y))->(P ((x0 (g x1)) y))))
% Found ((((eq_sym Prop) ((x0 (g x1)) y)) ((f x1) y)) ((eq_ref Prop) ((x0 (g x1)) y))) as proof of (forall (P:(Prop->Prop)), ((P ((f x1) y))->(P ((x0 (g x1)) y))))
% Found ((((eq_sym Prop) ((x0 (g x1)) y)) ((f x1) y)) ((eq_ref Prop) ((x0 (g x1)) y))) as proof of (forall (P:(Prop->Prop)), ((P ((f x1) y))->(P ((x0 (g x1)) y))))
% Found (fun (y:fofType)=> ((((eq_sym Prop) ((x0 (g x1)) y)) ((f x1) y)) ((eq_ref Prop) ((x0 (g x1)) y)))) as proof of (((eq Prop) ((f x1) y)) ((x0 (g x1)) y))
% Found eq_ref00:=(eq_ref0 ((x0 (g x1)) y)):(((eq Prop) ((x0 (g x1)) y)) ((x0 (g x1)) y))
% Found (eq_ref0 ((x0 (g x1)) y)) as proof of (((eq Prop) ((x0 (g x1)) y)) ((f x1) y))
% Found ((eq_ref Prop) ((x0 (g x1)) y)) as proof of (((eq Prop) ((x0 (g x1)) y)) ((f x1) y))
% Found ((eq_ref Prop) ((x0 (g x1)) y)) as proof of (((eq Prop) ((x0 (g x1)) y)) ((f x1) y))
% Found ((eq_ref Prop) ((x0 (g x1)) y)) as proof of (((eq Prop) ((x0 (g x1)) y)) ((f x1) y))
% Found (eq_sym100 ((eq_ref Prop) ((x0 (g x1)) y))) as proof of (forall (P:(Prop->Prop)), ((P ((f x1) y))->(P ((x0 (g x1)) y))))
% Found ((eq_sym10 ((f x1) y)) ((eq_ref Prop) ((x0 (g x1)) y))) as proof of (forall (P:(Prop->Prop)), ((P ((f x1) y))->(P ((x0 (g x1)) y))))
% Found (((eq_sym1 ((x0 (g x1)) y)) ((f x1) y)) ((eq_ref Prop) ((x0 (g x1)) y))) as proof of (forall (P:(Prop->Prop)), ((P ((f x1) y))->(P ((x0 (g x1)) y))))
% Found ((((eq_sym Prop) ((x0 (g x1)) y)) ((f x1) y)) ((eq_ref Prop) ((x0 (g x1)) y))) as proof of (forall (P:(Prop->Prop)), ((P ((f x1) y))->(P ((x0 (g x1)) y))))
% Found ((((eq_sym Prop) ((x0 (g x1)) y)) ((f x1) y)) ((eq_ref Prop) ((x0 (g x1)) y))) as proof of (forall (P:(Prop->Prop)), ((P ((f x1) y))->(P ((x0 (g x1)) y))))
% Found (fun (y:fofType)=> ((((eq_sym Prop) ((x0 (g x1)) y)) ((f x1) y)) ((eq_ref Prop) ((x0 (g x1)) y)))) as proof of (((eq Prop) ((f x1) y)) ((x0 (g x1)) y))
% Found eq_ref00:=(eq_ref0 (x0 (g x2))):(((eq (fofType->Prop)) (x0 (g x2))) (x0 (g x2)))
% Found (eq_ref0 (x0 (g x2))) as proof of (((eq (fofType->Prop)) (x0 (g x2))) (b x2))
% Found ((eq_ref (fofType->Prop)) (x0 (g x2))) as proof of (((eq (fofType->Prop)) (x0 (g x2))) (b x2))
% Found ((eq_ref (fofType->Prop)) (x0 (g x2))) as proof of (((eq (fofType->Prop)) (x0 (g x2))) (b x2))
% Found eq_ref00:=(eq_ref0 ((x0 (g x1)) y)):(((eq Prop) ((x0 (g x1)) y)) ((x0 (g x1)) y))
% Found (eq_ref0 ((x0 (g x1)) y)) as proof of (((eq Prop) ((x0 (g x1)) y)) ((f x1) y))
% Found ((eq_ref Prop) ((x0 (g x1)) y)) as proof of (((eq Prop) ((x0 (g x1)) y)) ((f x1) y))
% Found ((eq_ref Prop) ((x0 (g x1)) y)) as proof of (((eq Prop) ((x0 (g x1)) y)) ((f x1) y))
% Found ((eq_ref Prop) ((x0 (g x1)) y)) as proof of (((eq Prop) ((x0 (g x1)) y)) ((f x1) y))
% Found (eq_sym1000 ((eq_ref Prop) ((x0 (g x1)) y))) as proof of ((P ((f x1) y))->(P ((x0 (g x1)) y)))
% Found (eq_sym1000 ((eq_ref Prop) ((x0 (g x1)) y))) as proof of ((P ((f x1) y))->(P ((x0 (g x1)) y)))
% Found ((fun (x2:(((eq Prop) ((x0 (g x1)) y)) ((f x1) y)))=> ((eq_sym100 x2) P)) ((eq_ref Prop) ((x0 (g x1)) y))) as proof of ((P ((f x1) y))->(P ((x0 (g x1)) y)))
% Found ((fun (x2:(((eq Prop) ((x0 (g x1)) y)) ((f x1) y)))=> (((eq_sym10 ((f x1) y)) x2) P)) ((eq_ref Prop) ((x0 (g x1)) y))) as proof of ((P ((f x1) y))->(P ((x0 (g x1)) y)))
% Found ((fun (x2:(((eq Prop) ((x0 (g x1)) y)) ((f x1) y)))=> ((((eq_sym1 ((x0 (g x1)) y)) ((f x1) y)) x2) P)) ((eq_ref Prop) ((x0 (g x1)) y))) as proof of ((P ((f x1) y))->(P ((x0 (g x1)) y)))
% Found ((fun (x2:(((eq Prop) ((x0 (g x1)) y)) ((f x1) y)))=> (((((eq_sym Prop) ((x0 (g x1)) y)) ((f x1) y)) x2) P)) ((eq_ref Prop) ((x0 (g x1)) y))) as proof of ((P ((f x1) y))->(P ((x0 (g x1)) y)))
% Found (fun (P:(Prop->Prop))=> ((fun (x2:(((eq Prop) ((x0 (g x1)) y)) ((f x1) y)))=> (((((eq_sym Prop) ((x0 (g x1)) y)) ((f x1) y)) x2) P)) ((eq_ref Prop) ((x0 (g x1)) y)))) as proof of ((P ((f x1) y))->(P ((x0 (g x1)) y)))
% Found (fun (y:fofType) (P:(Prop->Prop))=> ((fun (x2:(((eq Prop) ((x0 (g x1)) y)) ((f x1) y)))=> (((((eq_sym Prop) ((x0 (g x1)) y)) ((f x1) y)) x2) P)) ((eq_ref Prop) ((x0 (g x1)) y)))) as proof of (((eq Prop) ((f x1) y)) ((x0 (g x1)) y))
% Found eq_ref00:=(eq_ref0 ((x0 (g x1)) y)):(((eq Prop) ((x0 (g x1)) y)) ((x0 (g x1)) y))
% Found (eq_ref0 ((x0 (g x1)) y)) as proof of (((eq Prop) ((x0 (g x1)) y)) ((f x1) y))
% Found ((eq_ref Prop) ((x0 (g x1)) y)) as proof of (((eq Prop) ((x0 (g x1)) y)) ((f x1) y))
% Found ((eq_ref Prop) ((x0 (g x1)) y)) as proof of (((eq Prop) ((x0 (g x1)) y)) ((f x1) y))
% Found ((eq_ref Prop) ((x0 (g x1)) y)) as proof of (((eq Prop) ((x0 (g x1)) y)) ((f x1) y))
% Found (eq_sym1000 ((eq_ref Prop) ((x0 (g x1)) y))) as proof of ((P ((f x1) y))->(P ((x0 (g x1)) y)))
% Found (eq_sym1000 ((eq_ref Prop) ((x0 (g x1)) y))) as proof of ((P ((f x1) y))->(P ((x0 (g x1)) y)))
% Found ((fun (x2:(((eq Prop) ((x0 (g x1)) y)) ((f x1) y)))=> ((eq_sym100 x2) P)) ((eq_ref Prop) ((x0 (g x1)) y))) as proof of ((P ((f x1) y))->(P ((x0 (g x1)) y)))
% Found ((fun (x2:(((eq Prop) ((x0 (g x1)) y)) ((f x1) y)))=> (((eq_sym10 ((f x1) y)) x2) P)) ((eq_ref Prop) ((x0 (g x1)) y))) as proof of ((P ((f x1) y))->(P ((x0 (g x1)) y)))
% Found ((fun (x2:(((eq Prop) ((x0 (g x1)) y)) ((f x1) y)))=> ((((eq_sym1 ((x0 (g x1)) y)) ((f x1) y)) x2) P)) ((eq_ref Prop) ((x0 (g x1)) y))) as proof of ((P ((f x1) y))->(P ((x0 (g x1)) y)))
% Found ((fun (x2:(((eq Prop) ((x0 (g x1)) y)) ((f x1) y)))=> (((((eq_sym Prop) ((x0 (g x1)) y)) ((f x1) y)) x2) P)) ((eq_ref Prop) ((x0 (g x1)) y))) as proof of ((P ((f x1) y))->(P ((x0 (g x1)) y)))
% Found (fun (P:(Prop->Prop))=> ((fun (x2:(((eq Prop) ((x0 (g x1)) y)) ((f x1) y)))=> (((((eq_sym Prop) ((x0 (g x1)) y)) ((f x1) y)) x2) P)) ((eq_ref Prop) ((x0 (g x1)) y)))) as proof of ((P ((f x1) y))->(P ((x0 (g x1)) y)))
% Found (fun (y:fofType) (P:(Prop->Prop))=> ((fun (x2:(((eq Prop) ((x0 (g x1)) y)) ((f x1) y)))=> (((((eq_sym Prop) ((x0 (g x1)) y)) ((f x1) y)) x2) P)) ((eq_ref Prop) ((x0 (g x1)) y)))) as proof of (((eq Prop) ((f x1) y)) ((x0 (g x1)) y))
% Found eq_ref00:=(eq_ref0 ((x0 (g x1)) y)):(((eq Prop) ((x0 (g x1)) y)) ((x0 (g x1)) y))
% Found (eq_ref0 ((x0 (g x1)) y)) as proof of (((eq Prop) ((x0 (g x1)) y)) ((f x1) y))
% Found ((eq_ref Prop) ((x0 (g x1)) y)) as proof of (((eq Prop) ((x0 (g x1)) y)) ((f x1) y))
% Found ((eq_ref Prop) ((x0 (g x1)) y)) as proof of (((eq Prop) ((x0 (g x1)) y)) ((f x1) y))
% Found ((eq_ref Prop) ((x0 (g x1)) y)) as proof of (((eq Prop) ((x0 (g x1)) y)) ((f x1) y))
% Found (eq_sym100 ((eq_ref Prop) ((x0 (g x1)) y))) as proof of (forall (P:(Prop->Prop)), ((P ((f x1) y))->(P ((x0 (g x1)) y))))
% Found ((eq_sym10 ((f x1) y)) ((eq_ref Prop) ((x0 (g x1)) y))) as proof of (forall (P:(Prop->Prop)), ((P ((f x1) y))->(P ((x0 (g x1)) y))))
% Found (((eq_sym1 ((x0 (g x1)) y)) ((f x1) y)) ((eq_ref Prop) ((x0 (g x1)) y))) as proof of (forall (P:(Prop->Prop)), ((P ((f x1) y))->(P ((x0 (g x1)) y))))
% Found ((((eq_sym Prop) ((x0 (g x1)) y)) ((f x1) y)) ((eq_ref Prop) ((x0 (g x1)) y))) as proof of (forall (P:(Prop->Prop)), ((P ((f x1) y))->(P ((x0 (g x1)) y))))
% Found ((((eq_sym Prop) ((x0 (g x1)) y)) ((f x1) y)) ((eq_ref Prop) ((x0 (g x1)) y))) as proof of (forall (P:(Prop->Prop)), ((P ((f x1) y))->(P ((x0 (g x1)) y))))
% Found (fun (y:fofType)=> ((((eq_sym Prop) ((x0 (g x1)) y)) ((f x1) y)) ((eq_ref Prop) ((x0 (g x1)) y)))) as proof of (((eq Prop) ((f x1) y)) ((x0 (g x1)) y))
% Found eq_ref00:=(eq_ref0 ((x0 (g x1)) y)):(((eq Prop) ((x0 (g x1)) y)) ((x0 (g x1)) y))
% Found (eq_ref0 ((x0 (g x1)) y)) as proof of (((eq Prop) ((x0 (g x1)) y)) ((f x1) y))
% Found ((eq_ref Prop) ((x0 (g x1)) y)) as proof of (((eq Prop) ((x0 (g x1)) y)) ((f x1) y))
% Found ((eq_ref Prop) ((x0 (g x1)) y)) as proof of (((eq Prop) ((x0 (g x1)) y)) ((f x1) y))
% Found ((eq_ref Prop) ((x0 (g x1)) y)) as proof of (((eq Prop) ((x0 (g x1)) y)) ((f x1) y))
% Found (eq_sym100 ((eq_ref Prop) ((x0 (g x1)) y))) as proof of (forall (P:(Prop->Prop)), ((P ((f x1) y))->(P ((x0 (g x1)) y))))
% Found ((eq_sym10 ((f x1) y)) ((eq_ref Prop) ((x0 (g x1)) y))) as proof of (forall (P:(Prop->Prop)), ((P ((f x1) y))->(P ((x0 (g x1)) y))))
% Found (((eq_sym1 ((x0 (g x1)) y)) ((f x1) y)) ((eq_ref Prop) ((x0 (g x1)) y))) as proof of (forall (P:(Prop->Prop)), ((P ((f x1) y))->(P ((x0 (g x1)) y))))
% Found ((((eq_sym Prop) ((x0 (g x1)) y)) ((f x1) y)) ((eq_ref Prop) ((x0 (g x1)) y))) as proof of (forall (P:(Prop->Prop)), ((P ((f x1) y))->(P ((x0 (g x1)) y))))
% Found ((((eq_sym Prop) ((x0 (g x1)) y)) ((f x1) y)) ((eq_ref Prop) ((x0 (g x1)) y))) as proof of (forall (P:(Prop->Prop)), ((P ((f x1) y))->(P ((x0 (g x1)) y))))
% Found (fun (y:fofType)=> ((((eq_sym Prop) ((x0 (g x1)) y)) ((f x1) y)) ((eq_ref Prop) ((x0 (g x1)) y)))) as proof of (((eq Prop) ((f x1) y)) ((x0 (g x1)) y))
% Found eq_ref00:=(eq_ref0 (x0 (g x2))):(((eq (fofType->Prop)) (x0 (g x2))) (x0 (g x2)))
% Found (eq_ref0 (x0 (g x2))) as proof of (((eq (fofType->Prop)) (x0 (g x2))) (b x2))
% Found ((eq_ref (fofType->Prop)) (x0 (g x2))) as proof of (((eq (fofType->Prop)) (x0 (g x2))) (b x2))
% Found ((eq_ref (fofType->Prop)) (x0 (g x2))) as proof of (((eq (fofType->Prop)) (x0 (g x2))) (b x2))
% Found eq_ref00:=(eq_ref0 ((x0 (g x1)) y)):(((eq Prop) ((x0 (g x1)) y)) ((x0 (g x1)) y))
% Found (eq_ref0 ((x0 (g x1)) y)) as proof of (((eq Prop) ((x0 (g x1)) y)) ((f x1) y))
% Found ((eq_ref Prop) ((x0 (g x1)) y)) as proof of (((eq Prop) ((x0 (g x1)) y)) ((f x1) y))
% Found ((eq_ref Prop) ((x0 (g x1)) y)) as proof of (((eq Prop) ((x0 (g x1)) y)) ((f x1) y))
% Found ((eq_ref Prop) ((x0 (g x1)) y)) as proof of (((eq Prop) ((x0 (g x1)) y)) ((f x1) y))
% Found (eq_sym100 ((eq_ref Prop) ((x0 (g x1)) y))) as proof of (((eq Prop) ((f x1) y)) ((x0 (g x1)) y))
% Found ((eq_sym10 ((f x1) y)) ((eq_ref Prop) ((x0 (g x1)) y))) as proof of (((eq Prop) ((f x1) y)) ((x0 (g x1)) y))
% Found (((eq_sym1 ((x0 (g x1)) y)) ((f x1) y)) ((eq_ref Prop) ((x0 (g x1)) y))) as proof of (((eq Prop) ((f x1) y)) ((x0 (g x1)) y))
% Found ((((eq_sym Prop) ((x0 (g x1)) y)) ((f x1) y)) ((eq_ref Prop) ((x0 (g x1)) y))) as proof of (((eq Prop) ((f x1) y)) ((x0 (g x1)) y))
% Found (fun (y:fofType)=> ((((eq_sym Prop) ((x0 (g x1)) y)) ((f x1) y)) ((eq_ref Prop) ((x0 (g x1)) y)))) as proof of (((eq Prop) ((f x1) y)) ((x0 (g x1)) y))
% Found eq_ref00:=(eq_ref0 ((x0 (g x1)) y)):(((eq Prop) ((x0 (g x1)) y)) ((x0 (g x1)) y))
% Found (eq_ref0 ((x0 (g x1)) y)) as proof of (((eq Prop) ((x0 (g x1)) y)) ((f x1) y))
% Found ((eq_ref Prop) ((x0 (g x1)) y)) as proof of (((eq Prop) ((x0 (g x1)) y)) ((f x1) y))
% Found ((eq_ref Prop) ((x0 (g x1)) y)) as proof of (((eq Prop) ((x0 (g x1)) y)) ((f x1) y))
% Found ((eq_ref Prop) ((x0 (g x1)) y)) as proof of (((eq Prop) ((x0 (g x1)) y)) ((f x1) y))
% Found (eq_sym100 ((eq_ref Prop) ((x0 (g x1)) y))) as proof of (((eq Prop) ((f x1) y)) ((x0 (g x1)) y))
% Found ((eq_sym10 ((f x1) y)) ((eq_ref Prop) ((x0 (g x1)) y))) as proof of (((eq Prop) ((f x1) y)) ((x0 (g x1)) y))
% Found (((eq_sym1 ((x0 (g x1)) y)) ((f x1) y)) ((eq_ref Prop) ((x0 (g x1)) y))) as proof of (((eq Prop) ((f x1) y)) ((x0 (g x1)) y))
% Found ((((eq_sym Prop) ((x0 (g x1)) y)) ((f x1) y)) ((eq_ref Prop) ((x0 (g x1)) y))) as proof of (((eq Prop) ((f x1) y)) ((x0 (g x1)) y))
% Found (fun (y:fofType)=> ((((eq_sym Prop) ((x0 (g x1)) y)) ((f x1) y)) ((eq_ref Prop) ((x0 (g x1)) y)))) as proof of (((eq Prop) ((f x1) y)) ((x0 (g x1)) y))
% Found eq_ref00:=(eq_ref0 ((x0 (g x1)) y)):(((eq Prop) ((x0 (g x1)) y)) ((x0 (g x1)) y))
% Found (eq_ref0 ((x0 (g x1)) y)) as proof of (((eq Prop) ((x0 (g x1)) y)) ((f x1) y))
% Found ((eq_ref Prop) ((x0 (g x1)) y)) as proof of (((eq Prop) ((x0 (g x1)) y)) ((f x1) y))
% Found ((eq_ref Prop) ((x0 (g x1)) y)) as proof of (((eq Prop) ((x0 (g x1)) y)) ((f x1) y))
% Found ((eq_ref Prop) ((x0 (g x1)) y)) as proof of (((eq Prop) ((x0 (g x1)) y)) ((f x1) y))
% Found (eq_sym100 ((eq_ref Prop) ((x0 (g x1)) y))) as proof of (((eq Prop) ((f x1) y)) ((x0 (g x1)) y))
% Found ((eq_sym10 ((f x1) y)) ((eq_ref Prop) ((x0 (g x1)) y))) as proof of (((eq Prop) ((f x1) y)) ((x0 (g x1)) y))
% Found (((eq_sym1 ((x0 (g x1)) y)) ((f x1) y)) ((eq_ref Prop) ((x0 (g x1)) y))) as proof of (((eq Prop) ((f x1) y)) ((x0 (g x1)) y))
% Found ((((eq_sym Prop) ((x0 (g x1)) y)) ((f x1) y)) ((eq_ref Prop) ((x0 (g x1)) y))) as proof of (((eq Prop) ((f x1) y)) ((x0 (g x1)) y))
% Found (fun (y:fofType)=> ((((eq_sym Prop) ((x0 (g x1)) y)) ((f x1) y)) ((eq_ref Prop) ((x0 (g x1)) y)))) as proof of (((eq Prop) ((f x1) y)) ((x0 (g x1)) y))
% Found eq_ref00:=(eq_ref0 ((x0 (g x1)) y)):(((eq Prop) ((x0 (g x1)) y)) ((x0 (g x1)) y))
% Found (eq_ref0 ((x0 (g x1)) y)) as proof of (((eq Prop) ((x0 (g x1)) y)) ((f x1) y))
% Found ((eq_ref Prop) ((x0 (g x1)) y)) as proof of (((eq Prop) ((x0 (g x1)) y)) ((f x1) y))
% Found ((eq_ref Prop) ((x0 (g x1)) y)) as proof of (((eq Prop) ((x0 (g x1)) y)) ((f x1) y))
% Found ((eq_ref Prop) ((x0 (g x1)) y)) as proof of (((eq Prop) ((x0 (g x1)) y)) ((f x1) y))
% Found (eq_sym100 ((eq_ref Prop) ((x0 (g x1)) y))) as proof of (((eq Prop) ((f x1) y)) ((x0 (g x1)) y))
% Found ((eq_sym10 ((f x1) y)) ((eq_ref Prop) ((x0 (g x1)) y))) as proof of (((eq Prop) ((f x1) y)) ((x0 (g x1)) y))
% Found (((eq_sym1 ((x0 (g x1)) y)) ((f x1) y)) ((eq_ref Prop) ((x0 (g x1)) y))) as proof of (((eq Prop) ((f x1) y)) ((x0 (g x1)) y))
% Found ((((eq_sym Prop) ((x0 (g x1)) y)) ((f x1) y)) ((eq_ref Prop) ((x0 (g x1)) y))) as proof of (((eq Prop) ((f x1) y)) ((x0 (g x1)) y))
% Found (fun (y:fofType)=> ((((eq_sym Prop) ((x0 (g x1)) y)) ((f x1) y)) ((eq_ref Prop) ((x0 (g x1)) y)))) as proof of (((eq Prop) ((f x1) y)) ((x0 (g x1)) y))
% Found eq_ref00:=(eq_ref0 ((x0 (g x1)) y)):(((eq Prop) ((x0 (g x1)) y)) ((x0 (g x1)) y))
% Found (eq_ref0 ((x0 (g x1)) y)) as proof of (((eq Prop) ((x0 (g x1)) y)) ((f x1) y))
% Found ((eq_ref Prop) ((x0 (g x1)) y)) as proof of (((eq Prop) ((x0 (g x1)) y)) ((f x1) y))
% Found ((eq_ref Prop) ((x0 (g x1)) y)) as proof of (((eq Prop) ((x0 (g x1)) y)) ((f x1) y))
% Found ((eq_ref Prop) ((x0 (g x1)) y)) as proof of (((eq Prop) ((x0 (g x1)) y)) ((f x1) y))
% Found (eq_sym100 ((eq_ref Prop) ((x0 (g x1)) y))) as proof of (((eq Prop) ((f x1) y)) ((x0 (g x1)) y))
% Found ((eq_sym10 ((f x1) y)) ((eq_ref Prop) ((x0 (g x1)) y))) as proof of (((eq Prop) ((f x1) y)) ((x0 (g x1)) y))
% Found (((eq_sym1 ((x0 (g x1)) y)) ((f x1) y)) ((eq_ref Prop) ((x0 (g x1)) y))) as proof of (((eq Prop) ((f x1) y)) ((x0 (g x1)) y))
% Found ((((eq_sym Prop) ((x0 (g x1)) y)) ((f x1) y)) ((eq_ref Prop) ((x0 (g x1)) y))) as proof of (((eq Prop) ((f x1) y)) ((x0 (g x1)) y))
% Found (fun (y:fofType)=> ((((eq_sym Prop) ((x0 (g x1)) y)) ((f x1) y)) ((eq_ref Prop) ((x0 (g x1)) y)))) as proof of (((eq Prop) ((f x1) y)) ((x0 (g x1)) y))
% Found eq_ref00:=(eq_ref0 ((x0 (g x1)) y)):(((eq Prop) ((x0 (g x1)) y)) ((x0 (g x1)) y))
% Found (eq_ref0 ((x0 (g x1)) y)) as proof of (((eq Prop) ((x0 (g x1)) y)) ((f x1) y))
% Found ((eq_ref Prop) ((x0 (g x1)) y)) as proof of (((eq Prop) ((x0 (g x1)) y)) ((f x1) y))
% Found ((eq_ref Prop) ((x0 (g x1)) y)) as proof of (((eq Prop) ((x0 (g x1)) y)) ((f x1) y))
% Found ((eq_ref Prop) ((x0 (g x1)) y)) as proof of (((eq Prop) ((x0 (g x1)) y)) ((f x1) y))
% Found (eq_sym100 ((eq_ref Prop) ((x0 (g x1)) y))) as proof of (((eq Prop) ((f x1) y)) ((x0 (g x1)) y))
% Found ((eq_sym10 ((f x1) y)) ((eq_ref Prop) ((x0 (g x1)) y))) as proof of (((eq Prop) ((f x1) y)) ((x0 (g x1)) y))
% Found (((eq_sym1 ((x0 (g x1)) y)) ((f x1) y)) ((eq_ref Prop) ((x0 (g x1)) y))) as proof of (((eq Prop) ((f x1) y)) ((x0 (g x1)) y))
% Found ((((eq_sym Prop) ((x0 (g x1)) y)) ((f x1) y)) ((eq_ref Prop) ((x0 (g x1)) y))) as proof of (((eq Prop) ((f x1) y)) ((x0 (g x1)) y))
% Found (fun (y:fofType)=> ((((eq_sym Prop) ((x0 (g x1)) y)) ((f x1) y)) ((eq_ref Prop) ((x0 (g x1)) y)))) as proof of (((eq Prop) ((f x1) y)) ((x0 (g x1)) y))
% Found eq_ref00:=(eq_ref0 ((x0 (g x1)) y)):(((eq Prop) ((x0 (g x1)) y)) ((x0 (g x1)) y))
% Found (eq_ref0 ((x0 (g x1)) y)) as proof of (((eq Prop) ((x0 (g x1)) y)) ((f x1) y))
% Found ((eq_ref Prop) ((x0 (g x1)) y)) as proof of (((eq Prop) ((x0 (g x1)) y)) ((f x1) y))
% Found ((eq_ref Prop) ((x0 (g x1)) y)) as proof of (((eq Prop) ((x0 (g x1)) y)) ((f x1) y))
% Found ((eq_ref Prop) ((x0 (g x1)) y)) as proof of (((eq Prop) ((x0 (g x1)) y)) ((f x1) y))
% Found (eq_sym100 ((eq_ref Prop) ((x0 (g x1)) y))) as proof of (((eq Prop) ((f x1) y)) ((x0 (g x1)) y))
% Found ((eq_sym10 ((f x1) y)) ((eq_ref Prop) ((x0 (g x1)) y))) as proof of (((eq Prop) ((f x1) y)) ((x0 (g x1)) y))
% Found (((eq_sym1 ((x0 (g x1)) y)) ((f x1) y)) ((eq_ref Prop) ((x0 (g x1)) y))) as proof of (((eq Prop) ((f x1) y)) ((x0 (g x1)) y))
% Found ((((eq_sym Prop) ((x0 (g x1)) y)) ((f x1) y)) ((eq_ref Prop) ((x0 (g x1)) y))) as proof of (((eq Prop) ((f x1) y)) ((x0 (g x1)) y))
% Found (fun (y:fofType)=> ((((eq_sym Prop) ((x0 (g x1)) y)) ((f x1) y)) ((eq_ref Prop) ((x0 (g x1)) y)))) as proof of (((eq Prop) ((f x1) y)) ((x0 (g x1)) y))
% Found eq_ref00:=(eq_ref0 ((x0 (g x1)) y)):(((eq Prop) ((x0 (g x1)) y)) ((x0 (g x1)) y))
% Found (eq_ref0 ((x0 (g x1)) y)) as proof of (((eq Prop) ((x0 (g x1)) y)) ((f x1) y))
% Found ((eq_ref Prop) ((x0 (g x1)) y)) as proof of (((eq Prop) ((x0 (g x1)) y)) ((f x1) y))
% Found ((eq_ref Prop) ((x0 (g x1)) y)) as proof of (((eq Prop) ((x0 (g x1)) y)) ((f x1) y))
% Found ((eq_ref Prop) ((x0 (g x1)) y)) as proof of (((eq Prop) ((x0 (g x1)) y)) ((f x1) y))
% Found (eq_sym100 ((eq_ref Prop) ((x0 (g x1)) y))) as proof of (((eq Prop) ((f x1) y)) ((x0 (g x1)) y))
% Found ((eq_sym10 ((f x1) y)) ((eq_ref Prop) ((x0 (g x1)) y))) as proof of (((eq Prop) ((f x1) y)) ((x0 (g x1)) y))
% Found (((eq_sym1 ((x0 (g x1)) y)) ((f x1) y)) ((eq_ref Prop) ((x0 (g x1)) y))) as proof of (((eq Prop) ((f x1) y)) ((x0 (g x1)) y))
% Found ((((eq_sym Prop) ((x0 (g x1)) y)) ((f x1) y)) ((eq_ref Prop) ((x0 (g x1)) y))) as proof of (((eq Prop) ((f x1) y)) ((x0 (g x1)) y))
% Found (fun (y:fofType)=> ((((eq_sym Prop) ((x0 (g x1)) y)) ((f x1) y)) ((eq_ref Prop) ((x0 (g x1)) y)))) as proof of (((eq Prop) ((f x1) y)) ((x0 (g x1)) y))
% Found eq_ref000:=(eq_ref00 P):((P ((f x1) y))->(P ((f x1) y)))
% Found (eq_ref00 P) as proof of (P0 ((f x1) y))
% Found ((eq_ref0 ((f x1) y)) P) as proof of (P0 ((f x1) y))
% Found (((eq_ref Prop) ((f x1) y)) P) as proof of (P0 ((f x1) y))
% Found (((eq_ref Prop) ((f x1) y)) P) as proof of (P0 ((f x1) y))
% Found eq_ref00:=(eq_ref0 ((x0 (g x1)) y)):(((eq Prop) ((x0 (g x1)) y)) ((x0 (g x1)) y))
% Found (eq_ref0 ((x0 (g x1)) y)) as proof of (((eq Prop) ((x0 (g x1)) y)) ((f x1) y))
% Found ((eq_ref Prop) ((x0 (g x1)) y)) as proof of (((eq Prop) ((x0 (g x1)) y)) ((f x1) y))
% Found ((eq_ref Prop) ((x0 (g x1)) y)) as proof of (((eq Prop) ((x0 (g x1)) y)) ((f x1) y))
% Found ((eq_ref Prop) ((x0 (g x1)) y)) as proof of (((eq Prop) ((x0 (g x1)) y)) ((f x1) y))
% Found ((eq_sym1000 ((eq_ref Prop) ((x0 (g x1)) y))) (((eq_ref Prop) ((f x1) y)) P)) as proof of ((P ((f x1) y))->(P ((x0 (g x1)) y)))
% Found ((eq_sym1000 ((eq_ref Prop) ((x0 (g x1)) y))) (((eq_ref Prop) ((f x1) y)) P)) as proof of ((P ((f x1) y))->(P ((x0 (g x1)) y)))
% Found (((fun (x2:(((eq Prop) ((x0 (g x1)) y)) ((f x1) y)))=> ((eq_sym100 x2) (fun (x4:Prop)=> ((P ((f x1) y))->(P x4))))) ((eq_ref Prop) ((x0 (g x1)) y))) (((eq_ref Prop) ((f x1) y)) P)) as proof of ((P ((f x1) y))->(P ((x0 (g x1)) y)))
% Found (((fun (x2:(((eq Prop) ((x0 (g x1)) y)) ((f x1) y)))=> (((eq_sym10 ((f x1) y)) x2) (fun (x4:Prop)=> ((P ((f x1) y))->(P x4))))) ((eq_ref Prop) ((x0 (g x1)) y))) (((eq_ref Prop) ((f x1) y)) P)) as proof of ((P ((f x1) y))->(P ((x0 (g x1)) y)))
% Found (((fun (x2:(((eq Prop) ((x0 (g x1)) y)) ((f x1) y)))=> ((((eq_sym1 ((x0 (g x1)) y)) ((f x1) y)) x2) (fun (x4:Prop)=> ((P ((f x1) y))->(P x4))))) ((eq_ref Prop) ((x0 (g x1)) y))) (((eq_ref Prop) ((f x1) y)) P)) as proof of ((P ((f x1) y))->(P ((x0 (g x1)) y)))
% Found (((fun (x2:(((eq Prop) ((x0 (g x1)) y)) ((f x1) y)))=> (((((eq_sym Prop) ((x0 (g x1)) y)) ((f x1) y)) x2) (fun (x4:Prop)=> ((P ((f x1) y))->(P x4))))) ((eq_ref Prop) ((x0 (g x1)) y))) (((eq_ref Prop) ((f x1) y)) P)) as proof of ((P ((f x1) y))->(P ((x0 (g x1)) y)))
% Found (fun (P:(Prop->Prop))=> (((fun (x2:(((eq Prop) ((x0 (g x1)) y)) ((f x1) y)))=> (((((eq_sym Prop) ((x0 (g x1)) y)) ((f x1) y)) x2) (fun (x4:Prop)=> ((P ((f x1) y))->(P x4))))) ((eq_ref Prop) ((x0 (g x1)) y))) (((eq_ref Prop) ((f x1) y)) P))) as proof of ((P ((f x1) y))->(P ((x0 (g x1)) y)))
% Found (fun (P:(Prop->Prop))=> (((fun (x2:(((eq Prop) ((x0 (g x1)) y)) ((f x1) y)))=> (((((eq_sym Prop) ((x0 (g x1)) y)) ((f x1) y)) x2) (fun (x4:Prop)=> ((P ((f x1) y))->(P x4))))) ((eq_ref Prop) ((x0 (g x1)) y))) (((eq_ref Prop) ((f x1) y)) P))) as proof of (forall (P:(Prop->Prop)), ((P ((f x1) y))->(P ((x0 (g x1)) y))))
% Found (fun (y:fofType) (P:(Prop->Prop))=> (((fun (x2:(((eq Prop) ((x0 (g x1)) y)) ((f x1) y)))=> (((((eq_sym Prop) ((x0 (g x1)) y)) ((f x1) y)) x2) (fun (x4:Prop)=> ((P ((f x1) y))->(P x4))))) ((eq_ref Prop) ((x0 (g x1)) y))) (((eq_ref Prop) ((f x1) y)) P))) as proof of (((eq Prop) ((f x1) y)) ((x0 (g x1)) y))
% Found eq_ref00:=(eq_ref0 a):(((eq fofType) a) a)
% Found (eq_ref0 a) as proof of (((eq fofType) a) x1)
% Found ((eq_ref fofType) a) as proof of (((eq fofType) a) x1)
% Found ((eq_ref fofType) a) as proof of (((eq fofType) a) x1)
% Found ((eq_ref fofType) a) as proof of (((eq fofType) a) x1)
% Found eq_ref00:=(eq_ref0 a):(((eq fofType) a) a)
% Found (eq_ref0 a) as proof of (((eq fofType) a) x1)
% Found ((eq_ref fofType) a) as proof of (((eq fofType) a) x1)
% Found ((eq_ref fofType) a) as proof of (((eq fofType) a) x1)
% Found ((eq_ref fofType) a) as proof of (((eq fofType) a) x1)
% Found eq_ref000:=(eq_ref00 P):((P ((f x1) y))->(P ((f x1) y)))
% Found (eq_ref00 P) as proof of (P0 ((f x1) y))
% Found ((eq_ref0 ((f x1) y)) P) as proof of (P0 ((f x1) y))
% Found (((eq_ref Prop) ((f x1) y)) P) as proof of (P0 ((f x1) y))
% Found (((eq_ref Prop) ((f x1) y)) P) as proof of (P0 ((f x1) y))
% Found eq_ref00:=(eq_ref0 ((x0 (g x1)) y)):(((eq Prop) ((x0 (g x1)) y)) ((x0 (g x1)) y))
% Found (eq_ref0 ((x0 (g x1)) y)) as proof of (((eq Prop) ((x0 (g x1)) y)) ((f x1) y))
% Found ((eq_ref Prop) ((x0 (g x1)) y)) as proof of (((eq Prop) ((x0 (g x1)) y)) ((f x1) y))
% Found ((eq_ref Prop) ((x0 (g x1)) y)) as proof of (((eq Prop) ((x0 (g x1)) y)) ((f x1) y))
% Found ((eq_ref Prop) ((x0 (g x1)) y)) as proof of (((eq Prop) ((x0 (g x1)) y)) ((f x1) y))
% Found ((eq_sym1000 ((eq_ref Prop) ((x0 (g x1)) y))) (((eq_ref Prop) ((f x1) y)) P)) as proof of ((P ((f x1) y))->(P ((x0 (g x1)) y)))
% Found ((eq_sym1000 ((eq_ref Prop) ((x0 (g x1)) y))) (((eq_ref Prop) ((f x1) y)) P)) as proof of ((P ((f x1) y))->(P ((x0 (g x1)) y)))
% Found (((fun (x2:(((eq Prop) ((x0 (g x1)) y)) ((f x1) y)))=> ((eq_sym100 x2) (fun (x4:Prop)=> ((P ((f x1) y))->(P x4))))) ((eq_ref Prop) ((x0 (g x1)) y))) (((eq_ref Prop) ((f x1) y)) P)) as proof of ((P ((f x1) y))->(P ((x0 (g x1)) y)))
% Found (((fun (x2:(((eq Prop) ((x0 (g x1)) y)) ((f x1) y)))=> (((eq_sym10 ((f x1) y)) x2) (fun (x4:Prop)=> ((P ((f x1) y))->(P x4))))) ((eq_ref Prop) ((x0 (g x1)) y))) (((eq_ref Prop) ((f x1) y)) P)) as proof of ((P ((f x1) y))->(P ((x0 (g x1)) y)))
% Found (((fun (x2:(((eq Prop) ((x0 (g x1)) y)) ((f x1) y)))=> ((((eq_sym1 ((x0 (g x1)) y)) ((f x1) y)) x2) (fun (x4:Prop)=> ((P ((f x1) y))->(P x4))))) ((eq_ref Prop) ((x0 (g x1)) y))) (((eq_ref Prop) ((f x1) y)) P)) as proof of ((P ((f x1) y))->(P ((x0 (g x1)) y)))
% Found (((fun (x2:(((eq Prop) ((x0 (g x1)) y)) ((f x1) y)))=> (((((eq_sym Prop) ((x0 (g x1)) y)) ((f x1) y)) x2) (fun (x4:Prop)=> ((P ((f x1) y))->(P x4))))) ((eq_ref Prop) ((x0 (g x1)) y))) (((eq_ref Prop) ((f x1) y)) P)) as proof of ((P ((f x1) y))->(P ((x0 (g x1)) y)))
% Found (fun (P:(Prop->Prop))=> (((fun (x2:(((eq Prop) ((x0 (g x1)) y)) ((f x1) y)))=> (((((eq_sym Prop) ((x0 (g x1)) y)) ((f x1) y)) x2) (fun (x4:Prop)=> ((P ((f x1) y))->(P x4))))) ((eq_ref Prop) ((x0 (g x1)) y))) (((eq_ref Prop) ((f x1) y)) P))) as proof of ((P ((f x1) y))->(P ((x0 (g x1)) y)))
% Found (fun (y:fofType) (P:(Prop->Prop))=> (((fun (x2:(((eq Prop) ((x0 (g x1)) y)) ((f x1) y)))=> (((((eq_sym Prop) ((x0 (g x1)) y)) ((f x1) y)) x2) (fun (x4:Prop)=> ((P ((f x1) y))->(P x4))))) ((eq_ref Prop) ((x0 (g x1)) y))) (((eq_ref Prop) ((f x1) y)) P))) as proof of (((eq Prop) ((f x1) y)) ((x0 (g x1)) y))
% Found eq_ref000:=(eq_ref00 P):((P ((f x1) y))->(P ((f x1) y)))
% Found (eq_ref00 P) as proof of (P0 ((f x1) y))
% Found ((eq_ref0 ((f x1) y)) P) as proof of (P0 ((f x1) y))
% Found (((eq_ref Prop) ((f x1) y)) P) as proof of (P0 ((f x1) y))
% Found (((eq_ref Prop) ((f x1) y)) P) as proof of (P0 ((f x1) y))
% Found eq_ref00:=(eq_ref0 ((x0 (g x1)) y)):(((eq Prop) ((x0 (g x1)) y)) ((x0 (g x1)) y))
% Found (eq_ref0 ((x0 (g x1)) y)) as proof of (((eq Prop) ((x0 (g x1)) y)) ((f x1) y))
% Found ((eq_ref Prop) ((x0 (g x1)) y)) as proof of (((eq Prop) ((x0 (g x1)) y)) ((f x1) y))
% Found ((eq_ref Prop) ((x0 (g x1)) y)) as proof of (((eq Prop) ((x0 (g x1)) y)) ((f x1) y))
% Found ((eq_ref Prop) ((x0 (g x1)) y)) as proof of (((eq Prop) ((x0 (g x1)) y)) ((f x1) y))
% Found ((eq_sym1000 ((eq_ref Prop) ((x0 (g x1)) y))) (((eq_ref Prop) ((f x1) y)) P)) as proof of ((P ((f x1) y))->(P ((x0 (g x1)) y)))
% Found ((eq_sym1000 ((eq_ref Prop) ((x0 (g x1)) y))) (((eq_ref Prop) ((f x1) y)) P)) as proof of ((P ((f x1) y))->(P ((x0 (g x1)) y)))
% Found (((fun (x2:(((eq Prop) ((x0 (g x1)) y)) ((f x1) y)))=> ((eq_sym100 x2) (fun (x4:Prop)=> ((P ((f x1) y))->(P x4))))) ((eq_ref Prop) ((x0 (g x1)) y))) (((eq_ref Prop) ((f x1) y)) P)) as proof of ((P ((f x1) y))->(P ((x0 (g x1)) y)))
% Found (((fun (x2:(((eq Prop) ((x0 (g x1)) y)) ((f x1) y)))=> (((eq_sym10 ((f x1) y)) x2) (fun (x4:Prop)=> ((P ((f x1) y))->(P x4))))) ((eq_ref Prop) ((x0 (g x1)) y))) (((eq_ref Prop) ((f x1) y)) P)) as proof of ((P ((f x1) y))->(P ((x0 (g x1)) y)))
% Found (((fun (x2:(((eq Prop) ((x0 (g x1)) y)) ((f x1) y)))=> ((((eq_sym1 ((x0 (g x1)) y)) ((f x1) y)) x2) (fun (x4:Prop)=> ((P ((f x1) y))->(P x4))))) ((eq_ref Prop) ((x0 (g x1)) y))) (((eq_ref Prop) ((f x1) y)) P)) as proof of ((P ((f x1) y))->(P ((x0 (g x1)) y)))
% Found (((fun (x2:(((eq Prop) ((x0 (g x1)) y)) ((f x1) y)))=> (((((eq_sym Prop) ((x0 (g x1)) y)) ((f x1) y)) x2) (fun (x4:Prop)=> ((P ((f x1) y))->(P x4))))) ((eq_ref Prop) ((x0 (g x1)) y))) (((eq_ref Prop) ((f x1) y)) P)) as proof of ((P ((f x1) y))->(P ((x0 (g x1)) y)))
% Found (fun (P:(Prop->Prop))=> (((fun (x2:(((eq Prop) ((x0 (g x1)) y)) ((f x1) y)))=> (((((eq_sym Prop) ((x0 (g x1)) y)) ((f x1) y)) x2) (fun (x4:Prop)=> ((P ((f x1) y))->(P x4))))) ((eq_ref Prop) ((x0 (g x1)) y))) (((eq_ref Prop) ((f x1) y)) P))) as proof of ((P ((f x1) y))->(P ((x0 (g x1)) y)))
% Found (fun (y:fofType) (P:(Prop->Prop))=> (((fun (x2:(((eq Prop) ((x0 (g x1)) y)) ((f x1) y)))=> (((((eq_sym Prop) ((x0 (g x1)) y)) ((f x1) y)) x2) (fun (x4:Prop)=> ((P ((f x1) y))->(P x4))))) ((eq_ref Prop) ((x0 (g x1)) y))) (((eq_ref Prop) ((f x1) y)) P))) as proof of (((eq Prop) ((f x1) y)) ((x0 (g x1)) y))
% Found eq_ref00:=(eq_ref0 (g x1)):(((eq (fofType->Prop)) (g x1)) (g x1))
% Found (eq_ref0 (g x1)) as proof of (((eq (fofType->Prop)) (g x1)) (g x1))
% Found ((eq_ref (fofType->Prop)) (g x1)) as proof of (((eq (fofType->Prop)) (g x1)) (g x1))
% Found ((eq_ref (fofType->Prop)) (g x1)) as proof of (((eq (fofType->Prop)) (g x1)) (g x1))
% Found (x200 ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P (x0 (g x1)))->(P (b x1)))
% Found (x200 ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P (x0 (g x1)))->(P (b x1)))
% Found ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> ((x20 x3) P)) ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P (x0 (g x1)))->(P (b x1)))
% Found ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> (((x2 x1) x3) P)) ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P (x0 (g x1)))->(P (b x1)))
% Found ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> ((((fun (Xx:fofType)=> ((x Xx) x1)) x1) x3) P)) ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P (x0 (g x1)))->(P (b x1)))
% Found ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> ((((fun (Xx:fofType)=> ((x Xx) x1)) x1) x3) P)) ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P (x0 (g x1)))->(P (b x1)))
% Found (fun (P:((fofType->Prop)->Prop))=> ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> ((((fun (Xx:fofType)=> ((x Xx) x1)) x1) x3) P)) ((eq_ref (fofType->Prop)) (g x1)))) as proof of ((P (x0 (g x1)))->(P (b x1)))
% Found eq_ref00:=(eq_ref0 (g x1)):(((eq (fofType->Prop)) (g x1)) (g x1))
% Found (eq_ref0 (g x1)) as proof of (((eq (fofType->Prop)) (g x1)) (g x1))
% Found ((eq_ref (fofType->Prop)) (g x1)) as proof of (((eq (fofType->Prop)) (g x1)) (g x1))
% Found ((eq_ref (fofType->Prop)) (g x1)) as proof of (((eq (fofType->Prop)) (g x1)) (g x1))
% Found (x200 ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P (x0 (g x1)))->(P (b x1)))
% Found (x200 ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P (x0 (g x1)))->(P (b x1)))
% Found ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> ((x20 x3) (fun (x4:(fofType->Prop))=> (P (x0 (g x1)))))) ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P (x0 (g x1)))->(P (b x1)))
% Found ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> (((x2 x1) x3) (fun (x4:(fofType->Prop))=> (P (x0 (g x1)))))) ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P (x0 (g x1)))->(P (b x1)))
% Found ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> ((((fun (Xx:fofType)=> ((x Xx) x1)) x1) x3) (fun (x4:(fofType->Prop))=> (P (x0 (g x1)))))) ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P (x0 (g x1)))->(P (b x1)))
% Found ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> ((((fun (Xx:fofType)=> ((x Xx) x1)) x1) x3) (fun (x4:(fofType->Prop))=> (P (x0 (g x1)))))) ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P (x0 (g x1)))->(P (b x1)))
% Found (fun (P:((fofType->Prop)->Prop))=> ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> ((((fun (Xx:fofType)=> ((x Xx) x1)) x1) x3) (fun (x4:(fofType->Prop))=> (P (x0 (g x1)))))) ((eq_ref (fofType->Prop)) (g x1)))) as proof of ((P (x0 (g x1)))->(P (b x1)))
% Found eq_ref00:=(eq_ref0 (g x1)):(((eq (fofType->Prop)) (g x1)) (g x1))
% Found (eq_ref0 (g x1)) as proof of (((eq (fofType->Prop)) (g x1)) (g x1))
% Found ((eq_ref (fofType->Prop)) (g x1)) as proof of (((eq (fofType->Prop)) (g x1)) (g x1))
% Found ((eq_ref (fofType->Prop)) (g x1)) as proof of (((eq (fofType->Prop)) (g x1)) (g x1))
% Found (x200 ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P (x0 (g x1)))->(P (b x1)))
% Found (x200 ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P (x0 (g x1)))->(P (b x1)))
% Found ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> ((x20 x3) (fun (x4:(fofType->Prop))=> (P (x0 (g x1)))))) ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P (x0 (g x1)))->(P (b x1)))
% Found ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> (((x2 x1) x3) (fun (x4:(fofType->Prop))=> (P (x0 (g x1)))))) ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P (x0 (g x1)))->(P (b x1)))
% Found ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> ((((fun (Xx:fofType)=> ((x Xx) x1)) x1) x3) (fun (x4:(fofType->Prop))=> (P (x0 (g x1)))))) ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P (x0 (g x1)))->(P (b x1)))
% Found ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> ((((fun (Xx:fofType)=> ((x Xx) x1)) x1) x3) (fun (x4:(fofType->Prop))=> (P (x0 (g x1)))))) ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P (x0 (g x1)))->(P (b x1)))
% Found (fun (P:((fofType->Prop)->Prop))=> ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> ((((fun (Xx:fofType)=> ((x Xx) x1)) x1) x3) (fun (x4:(fofType->Prop))=> (P (x0 (g x1)))))) ((eq_ref (fofType->Prop)) (g x1)))) as proof of ((P (x0 (g x1)))->(P (b x1)))
% Found eq_ref00:=(eq_ref0 (g x1)):(((eq (fofType->Prop)) (g x1)) (g x1))
% Found (eq_ref0 (g x1)) as proof of (((eq (fofType->Prop)) (g x1)) (g x1))
% Found ((eq_ref (fofType->Prop)) (g x1)) as proof of (((eq (fofType->Prop)) (g x1)) (g x1))
% Found ((eq_ref (fofType->Prop)) (g x1)) as proof of (((eq (fofType->Prop)) (g x1)) (g x1))
% Found (x200 ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P (x0 (g x1)))->(P (b x1)))
% Found (x200 ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P (x0 (g x1)))->(P (b x1)))
% Found ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> ((x20 x3) P)) ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P (x0 (g x1)))->(P (b x1)))
% Found ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> (((x2 x1) x3) P)) ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P (x0 (g x1)))->(P (b x1)))
% Found ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> ((((fun (Xx:fofType)=> ((x Xx) x1)) x1) x3) P)) ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P (x0 (g x1)))->(P (b x1)))
% Found ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> ((((fun (Xx:fofType)=> ((x Xx) x1)) x1) x3) P)) ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P (x0 (g x1)))->(P (b x1)))
% Found (fun (P:((fofType->Prop)->Prop))=> ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> ((((fun (Xx:fofType)=> ((x Xx) x1)) x1) x3) P)) ((eq_ref (fofType->Prop)) (g x1)))) as proof of ((P (x0 (g x1)))->(P (b x1)))
% Found eq_ref00:=(eq_ref0 (g x1)):(((eq (fofType->Prop)) (g x1)) (g x1))
% Found (eq_ref0 (g x1)) as proof of (((eq (fofType->Prop)) (g x1)) (g x1))
% Found ((eq_ref (fofType->Prop)) (g x1)) as proof of (((eq (fofType->Prop)) (g x1)) (g x1))
% Found ((eq_ref (fofType->Prop)) (g x1)) as proof of (((eq (fofType->Prop)) (g x1)) (g x1))
% Found (x200 ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P (x0 (g x1)))->(P (b x1)))
% Found (x200 ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P (x0 (g x1)))->(P (b x1)))
% Found ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> ((x20 x3) (fun (x4:(fofType->Prop))=> (P (x0 (g x1)))))) ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P (x0 (g x1)))->(P (b x1)))
% Found ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> (((x2 x1) x3) (fun (x4:(fofType->Prop))=> (P (x0 (g x1)))))) ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P (x0 (g x1)))->(P (b x1)))
% Found ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> (((x2 x1) x3) (fun (x4:(fofType->Prop))=> (P (x0 (g x1)))))) ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P (x0 (g x1)))->(P (b x1)))
% Found ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> ((((fun (Xx:fofType)=> ((x Xx) x1)) x1) x3) (fun (x4:(fofType->Prop))=> (P (x0 (g x1)))))) ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P (x0 (g x1)))->(P (b x1)))
% Found (fun (P:((fofType->Prop)->Prop))=> ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> ((((fun (Xx:fofType)=> ((x Xx) x1)) x1) x3) (fun (x4:(fofType->Prop))=> (P (x0 (g x1)))))) ((eq_ref (fofType->Prop)) (g x1)))) as proof of ((P (x0 (g x1)))->(P (b x1)))
% Found eq_ref00:=(eq_ref0 (g x1)):(((eq (fofType->Prop)) (g x1)) (g x1))
% Found (eq_ref0 (g x1)) as proof of (((eq (fofType->Prop)) (g x1)) (g x1))
% Found ((eq_ref (fofType->Prop)) (g x1)) as proof of (((eq (fofType->Prop)) (g x1)) (g x1))
% Found ((eq_ref (fofType->Prop)) (g x1)) as proof of (((eq (fofType->Prop)) (g x1)) (g x1))
% Found (x200 ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P (x0 (g x1)))->(P (b x1)))
% Found (x200 ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P (x0 (g x1)))->(P (b x1)))
% Found ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> ((x20 x3) P)) ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P (x0 (g x1)))->(P (b x1)))
% Found ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> (((x2 x1) x3) P)) ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P (x0 (g x1)))->(P (b x1)))
% Found ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> (((x2 x1) x3) P)) ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P (x0 (g x1)))->(P (b x1)))
% Found ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> ((((fun (Xx:fofType)=> ((x Xx) x1)) x1) x3) P)) ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P (x0 (g x1)))->(P (b x1)))
% Found (fun (P:((fofType->Prop)->Prop))=> ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> ((((fun (Xx:fofType)=> ((x Xx) x1)) x1) x3) P)) ((eq_ref (fofType->Prop)) (g x1)))) as proof of ((P (x0 (g x1)))->(P (b x1)))
% Found eq_ref00:=(eq_ref0 (g x1)):(((eq (fofType->Prop)) (g x1)) (g x1))
% Found (eq_ref0 (g x1)) as proof of (((eq (fofType->Prop)) (g x1)) (g x1))
% Found ((eq_ref (fofType->Prop)) (g x1)) as proof of (((eq (fofType->Prop)) (g x1)) (g x1))
% Found ((eq_ref (fofType->Prop)) (g x1)) as proof of (((eq (fofType->Prop)) (g x1)) (g x1))
% Found (x200 ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P (x0 (g x1)))->(P (b x1)))
% Found (x200 ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P (x0 (g x1)))->(P (b x1)))
% Found ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> ((x20 x3) P)) ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P (x0 (g x1)))->(P (b x1)))
% Found ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> (((x2 x1) x3) P)) ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P (x0 (g x1)))->(P (b x1)))
% Found ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> (((x2 x1) x3) P)) ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P (x0 (g x1)))->(P (b x1)))
% Found ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> ((((fun (Xx:fofType)=> ((x Xx) x1)) x1) x3) P)) ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P (x0 (g x1)))->(P (b x1)))
% Found (fun (P:((fofType->Prop)->Prop))=> ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> ((((fun (Xx:fofType)=> ((x Xx) x1)) x1) x3) P)) ((eq_ref (fofType->Prop)) (g x1)))) as proof of ((P (x0 (g x1)))->(P (b x1)))
% Found eq_ref00:=(eq_ref0 (g x1)):(((eq (fofType->Prop)) (g x1)) (g x1))
% Found (eq_ref0 (g x1)) as proof of (((eq (fofType->Prop)) (g x1)) (g x1))
% Found ((eq_ref (fofType->Prop)) (g x1)) as proof of (((eq (fofType->Prop)) (g x1)) (g x1))
% Found ((eq_ref (fofType->Prop)) (g x1)) as proof of (((eq (fofType->Prop)) (g x1)) (g x1))
% Found (x200 ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P (x0 (g x1)))->(P (b x1)))
% Found (x200 ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P (x0 (g x1)))->(P (b x1)))
% Found ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> ((x20 x3) (fun (x4:(fofType->Prop))=> (P (x0 (g x1)))))) ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P (x0 (g x1)))->(P (b x1)))
% Found ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> (((x2 x1) x3) (fun (x4:(fofType->Prop))=> (P (x0 (g x1)))))) ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P (x0 (g x1)))->(P (b x1)))
% Found ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> (((x2 x1) x3) (fun (x4:(fofType->Prop))=> (P (x0 (g x1)))))) ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P (x0 (g x1)))->(P (b x1)))
% Found ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> ((((fun (Xx:fofType)=> ((x Xx) x1)) x1) x3) (fun (x4:(fofType->Prop))=> (P (x0 (g x1)))))) ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P (x0 (g x1)))->(P (b x1)))
% Found (fun (P:((fofType->Prop)->Prop))=> ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> ((((fun (Xx:fofType)=> ((x Xx) x1)) x1) x3) (fun (x4:(fofType->Prop))=> (P (x0 (g x1)))))) ((eq_ref (fofType->Prop)) (g x1)))) as proof of ((P (x0 (g x1)))->(P (b x1)))
% Found eq_ref00:=(eq_ref0 (g Xx)):(((eq (fofType->Prop)) (g Xx)) (g Xx))
% Found (eq_ref0 (g Xx)) as proof of (((eq (fofType->Prop)) (g Xx)) (g x1))
% Found ((eq_ref (fofType->Prop)) (g Xx)) as proof of (((eq (fofType->Prop)) (g Xx)) (g x1))
% Found ((eq_ref (fofType->Prop)) (g Xx)) as proof of (((eq (fofType->Prop)) (g Xx)) (g x1))
% Found ((eq_ref (fofType->Prop)) (g Xx)) as proof of (((eq (fofType->Prop)) (g Xx)) (g x1))
% Found eq_ref00:=(eq_ref0 (g Xx)):(((eq (fofType->Prop)) (g Xx)) (g Xx))
% Found (eq_ref0 (g Xx)) as proof of (((eq (fofType->Prop)) (g Xx)) (g x1))
% Found ((eq_ref (fofType->Prop)) (g Xx)) as proof of (((eq (fofType->Prop)) (g Xx)) (g x1))
% Found ((eq_ref (fofType->Prop)) (g Xx)) as proof of (((eq (fofType->Prop)) (g Xx)) (g x1))
% Found ((eq_ref (fofType->Prop)) (g Xx)) as proof of (((eq (fofType->Prop)) (g Xx)) (g x1))
% Found eq_ref00:=(eq_ref0 b):(((eq Prop) b) b)
% Found (eq_ref0 b) as proof of (((eq Prop) b) ((x0 (g x1)) y))
% Found ((eq_ref Prop) b) as proof of (((eq Prop) b) ((x0 (g x1)) y))
% Found ((eq_ref Prop) b) as proof of (((eq Prop) b) ((x0 (g x1)) y))
% Found ((eq_ref Prop) b) as proof of (((eq Prop) b) ((x0 (g x1)) y))
% Found eq_ref00:=(eq_ref0 ((f x1) y)):(((eq Prop) ((f x1) y)) ((f x1) y))
% Found (eq_ref0 ((f x1) y)) as proof of (((eq Prop) ((f x1) y)) b)
% Found ((eq_ref Prop) ((f x1) y)) as proof of (((eq Prop) ((f x1) y)) b)
% Found ((eq_ref Prop) ((f x1) y)) as proof of (((eq Prop) ((f x1) y)) b)
% Found ((eq_ref Prop) ((f x1) y)) as proof of (((eq Prop) ((f x1) y)) b)
% Found eq_ref00:=(eq_ref0 ((f x1) y)):(((eq Prop) ((f x1) y)) ((f x1) y))
% Found (eq_ref0 ((f x1) y)) as proof of (((eq Prop) ((f x1) y)) b)
% Found ((eq_ref Prop) ((f x1) y)) as proof of (((eq Prop) ((f x1) y)) b)
% Found ((eq_ref Prop) ((f x1) y)) as proof of (((eq Prop) ((f x1) y)) b)
% Found ((eq_ref Prop) ((f x1) y)) as proof of (((eq Prop) ((f x1) y)) b)
% Found eq_ref00:=(eq_ref0 b):(((eq Prop) b) b)
% Found (eq_ref0 b) as proof of (((eq Prop) b) ((x0 (g x1)) y))
% Found ((eq_ref Prop) b) as proof of (((eq Prop) b) ((x0 (g x1)) y))
% Found ((eq_ref Prop) b) as proof of (((eq Prop) b) ((x0 (g x1)) y))
% Found ((eq_ref Prop) b) as proof of (((eq Prop) b) ((x0 (g x1)) y))
% Found eq_ref00:=(eq_ref0 (g x1)):(((eq (fofType->Prop)) (g x1)) (g x1))
% Found (eq_ref0 (g x1)) as proof of (((eq (fofType->Prop)) (g x1)) (g x1))
% Found ((eq_ref (fofType->Prop)) (g x1)) as proof of (((eq (fofType->Prop)) (g x1)) (g x1))
% Found ((eq_ref (fofType->Prop)) (g x1)) as proof of (((eq (fofType->Prop)) (g x1)) (g x1))
% Found (x200 ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P ((x0 (g x1)) y))->(P ((b x1) y)))
% Found (x200 ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P ((x0 (g x1)) y))->(P ((b x1) y)))
% Found ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> ((x20 x3) (fun (x4:(fofType->Prop))=> (P (x4 y))))) ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P ((x0 (g x1)) y))->(P ((b x1) y)))
% Found ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> (((x2 x1) x3) (fun (x4:(fofType->Prop))=> (P (x4 y))))) ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P ((x0 (g x1)) y))->(P ((b x1) y)))
% Found ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> ((((x x1) x1) x3) (fun (x4:(fofType->Prop))=> (P (x4 y))))) ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P ((x0 (g x1)) y))->(P ((b x1) y)))
% Found ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> ((((x x1) x1) x3) (fun (x4:(fofType->Prop))=> (P (x4 y))))) ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P ((x0 (g x1)) y))->(P ((b x1) y)))
% Found (fun (P:(Prop->Prop))=> ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> ((((x x1) x1) x3) (fun (x4:(fofType->Prop))=> (P (x4 y))))) ((eq_ref (fofType->Prop)) (g x1)))) as proof of ((P ((x0 (g x1)) y))->(P ((b x1) y)))
% Found (fun (y:fofType) (P:(Prop->Prop))=> ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> ((((x x1) x1) x3) (fun (x4:(fofType->Prop))=> (P (x4 y))))) ((eq_ref (fofType->Prop)) (g x1)))) as proof of (((eq Prop) ((x0 (g x1)) y)) ((b x1) y))
% Found eq_ref00:=(eq_ref0 (g x1)):(((eq (fofType->Prop)) (g x1)) (g x1))
% Found (eq_ref0 (g x1)) as proof of (((eq (fofType->Prop)) (g x1)) (g x1))
% Found ((eq_ref (fofType->Prop)) (g x1)) as proof of (((eq (fofType->Prop)) (g x1)) (g x1))
% Found ((eq_ref (fofType->Prop)) (g x1)) as proof of (((eq (fofType->Prop)) (g x1)) (g x1))
% Found (x200 ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P ((x0 (g x1)) y))->(P ((b x1) y)))
% Found (x200 ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P ((x0 (g x1)) y))->(P ((b x1) y)))
% Found ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> ((x20 x3) (fun (x4:(fofType->Prop))=> (P ((x0 (g x1)) y))))) ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P ((x0 (g x1)) y))->(P ((b x1) y)))
% Found ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> (((x2 x1) x3) (fun (x4:(fofType->Prop))=> (P ((x0 (g x1)) y))))) ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P ((x0 (g x1)) y))->(P ((b x1) y)))
% Found ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> ((((x x1) x1) x3) (fun (x4:(fofType->Prop))=> (P ((x0 (g x1)) y))))) ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P ((x0 (g x1)) y))->(P ((b x1) y)))
% Found ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> ((((x x1) x1) x3) (fun (x4:(fofType->Prop))=> (P ((x0 (g x1)) y))))) ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P ((x0 (g x1)) y))->(P ((b x1) y)))
% Found (fun (P:(Prop->Prop))=> ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> ((((x x1) x1) x3) (fun (x4:(fofType->Prop))=> (P ((x0 (g x1)) y))))) ((eq_ref (fofType->Prop)) (g x1)))) as proof of ((P ((x0 (g x1)) y))->(P ((b x1) y)))
% Found (fun (y:fofType) (P:(Prop->Prop))=> ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> ((((x x1) x1) x3) (fun (x4:(fofType->Prop))=> (P ((x0 (g x1)) y))))) ((eq_ref (fofType->Prop)) (g x1)))) as proof of (((eq Prop) ((x0 (g x1)) y)) ((b x1) y))
% Found eq_ref00:=(eq_ref0 (g x1)):(((eq (fofType->Prop)) (g x1)) (g x1))
% Found (eq_ref0 (g x1)) as proof of (((eq (fofType->Prop)) (g x1)) (g x1))
% Found ((eq_ref (fofType->Prop)) (g x1)) as proof of (((eq (fofType->Prop)) (g x1)) (g x1))
% Found ((eq_ref (fofType->Prop)) (g x1)) as proof of (((eq (fofType->Prop)) (g x1)) (g x1))
% Found (x200 ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P ((x0 (g x1)) y))->(P ((b x1) y)))
% Found (x200 ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P ((x0 (g x1)) y))->(P ((b x1) y)))
% Found ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> ((x20 x3) (fun (x4:(fofType->Prop))=> (P ((x0 (g x1)) y))))) ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P ((x0 (g x1)) y))->(P ((b x1) y)))
% Found ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> (((x2 x1) x3) (fun (x4:(fofType->Prop))=> (P ((x0 (g x1)) y))))) ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P ((x0 (g x1)) y))->(P ((b x1) y)))
% Found ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> ((((x x1) x1) x3) (fun (x4:(fofType->Prop))=> (P ((x0 (g x1)) y))))) ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P ((x0 (g x1)) y))->(P ((b x1) y)))
% Found ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> ((((x x1) x1) x3) (fun (x4:(fofType->Prop))=> (P ((x0 (g x1)) y))))) ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P ((x0 (g x1)) y))->(P ((b x1) y)))
% Found (fun (P:(Prop->Prop))=> ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> ((((x x1) x1) x3) (fun (x4:(fofType->Prop))=> (P ((x0 (g x1)) y))))) ((eq_ref (fofType->Prop)) (g x1)))) as proof of ((P ((x0 (g x1)) y))->(P ((b x1) y)))
% Found (fun (y:fofType) (P:(Prop->Prop))=> ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> ((((x x1) x1) x3) (fun (x4:(fofType->Prop))=> (P ((x0 (g x1)) y))))) ((eq_ref (fofType->Prop)) (g x1)))) as proof of (((eq Prop) ((x0 (g x1)) y)) ((b x1) y))
% Found eq_ref00:=(eq_ref0 (g x1)):(((eq (fofType->Prop)) (g x1)) (g x1))
% Found (eq_ref0 (g x1)) as proof of (((eq (fofType->Prop)) (g x1)) (g x1))
% Found ((eq_ref (fofType->Prop)) (g x1)) as proof of (((eq (fofType->Prop)) (g x1)) (g x1))
% Found ((eq_ref (fofType->Prop)) (g x1)) as proof of (((eq (fofType->Prop)) (g x1)) (g x1))
% Found (x200 ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P ((x0 (g x1)) y))->(P ((b x1) y)))
% Found (x200 ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P ((x0 (g x1)) y))->(P ((b x1) y)))
% Found ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> ((x20 x3) (fun (x4:(fofType->Prop))=> (P (x4 y))))) ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P ((x0 (g x1)) y))->(P ((b x1) y)))
% Found ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> (((x2 x1) x3) (fun (x4:(fofType->Prop))=> (P (x4 y))))) ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P ((x0 (g x1)) y))->(P ((b x1) y)))
% Found ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> ((((x x1) x1) x3) (fun (x4:(fofType->Prop))=> (P (x4 y))))) ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P ((x0 (g x1)) y))->(P ((b x1) y)))
% Found ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> ((((x x1) x1) x3) (fun (x4:(fofType->Prop))=> (P (x4 y))))) ((eq_ref (fofType->Prop)) (g x1))) as proof of ((P ((x0 (g x1)) y))->(P ((b x1) y)))
% Found (fun (P:(Prop->Prop))=> ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> ((((x x1) x1) x3) (fun (x4:(fofType->Prop))=> (P (x4 y))))) ((eq_ref (fofType->Prop)) (g x1)))) as proof of ((P ((x0 (g x1)) y))->(P ((b x1) y)))
% Found (fun (y:fofType) (P:(Prop->Prop))=> ((fun (x3:(((eq (fofType->Prop)) (g x1)) (g x1)))=> ((((x x1) x1) x3) (fun (x4:(fofType->Prop))=> (P (x4 y))))) ((eq_ref (fofType->Prop)) (g x1)))) as proof of (((eq Prop) ((x0 (g x1)) y)) ((b x1) y))
% Found eq_ref00:=(eq_ref0 ((x0 (g x1)) x2)):(((eq Prop) ((x0 (g x1)) x2)) ((x0 (g x1)) x2))
% Found (eq_ref0 ((x0 (g x1)) x2)) as proof of (((eq Prop) ((x0 (g x1)) x2)) ((b x1) x2))
% Found ((eq_ref Prop) ((x0 (g x1)) x2)) as proof of (((eq Prop) ((x0 (g x1)) x2)) ((b x1) x2))
% Found ((eq_ref Prop) ((x0 (g x1)) x2)) as proof of (((eq Prop) ((x0 (g x1)) x2)) ((b x1) x2))
% Found ((eq_ref Prop) ((x0 (g x1)) x2)) as proof of (((eq Prop) ((x0 (g x1)) x2)) ((b x1) x2))
% Found (eq_sym200 ((eq_ref Prop) ((x0 (g x1)) x2))) as proof of (((eq Prop) ((b x1) x2)) ((x0 (g x1)) x2))
% Found ((eq_sym20 ((b x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2))) as proof of (((eq Prop) ((b x1) x2)) ((x0 (g x1)) x2))
% Found (((eq_sym2 ((x0 (g x1)) x2)) ((b x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2))) as proof of (((eq Prop) ((b x1) x2)) ((x0 (g x1)) x2))
% Found ((((eq_sym Prop) ((x0 (g x1)) x2)) ((b x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2))) as proof of (((eq Prop) ((b x1) x2)) ((x0 (g x1)) x2))
% Found (fun (x2:fofType)=> ((((eq_sym Prop) ((x0 (g x1)) x2)) ((b x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2)))) as proof of (((eq Prop) ((b x1) x2)) ((x0 (g x1)) x2))
% Found (fun (x2:fofType)=> ((((eq_sym Prop) ((x0 (g x1)) x2)) ((b x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2)))) as proof of (forall (x:fofType), (((eq Prop) ((b x1) x)) ((x0 (g x1)) x)))
% Found (functional_extensionality_dep0100 (fun (x2:fofType)=> ((((eq_sym Prop) ((x0 (g x1)) x2)) ((b x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2))))) as proof of (((eq (fofType->Prop)) (b x1)) (x0 (g x1)))
% Found ((functional_extensionality_dep010 (x0 (g x1))) (fun (x2:fofType)=> ((((eq_sym Prop) ((x0 (g x1)) x2)) ((b x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2))))) as proof of (((eq (fofType->Prop)) (b x1)) (x0 (g x1)))
% Found (((functional_extensionality_dep01 (b x1)) (x0 (g x1))) (fun (x2:fofType)=> ((((eq_sym Prop) ((x0 (g x1)) x2)) ((b x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2))))) as proof of (((eq (fofType->Prop)) (b x1)) (x0 (g x1)))
% Found ((((functional_extensionality_dep0 (fun (x4:fofType)=> Prop)) (b x1)) (x0 (g x1))) (fun (x2:fofType)=> ((((eq_sym Prop) ((x0 (g x1)) x2)) ((b x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2))))) as proof of (((eq (fofType->Prop)) (b x1)) (x0 (g x1)))
% Found ((((functional_extensionality_dep0 (fun (x4:fofType)=> Prop)) (b x1)) (x0 (g x1))) (fun (x2:fofType)=> ((((eq_sym Prop) ((x0 (g x1)) x2)) ((b x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2))))) as proof of (((eq (fofType->Prop)) (b x1)) (x0 (g x1)))
% Found (eq_sym100 ((((functional_extensionality_dep0 (fun (x4:fofType)=> Prop)) (b x1)) (x0 (g x1))) (fun (x2:fofType)=> ((((eq_sym Prop) ((x0 (g x1)) x2)) ((b x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2)))))) as proof of (((eq (fofType->Prop)) (x0 (g x1))) (b x1))
% Found ((eq_sym10 (x0 (g x1))) ((((functional_extensionality_dep0 (fun (x4:fofType)=> Prop)) (b x1)) (x0 (g x1))) (fun (x2:fofType)=> ((((eq_sym Prop) ((x0 (g x1)) x2)) ((b x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2)))))) as proof of (((eq (fofType->Prop)) (x0 (g x1))) (b x1))
% Found (((eq_sym1 (b x1)) (x0 (g x1))) ((((functional_extensionality_dep0 (fun (x4:fofType)=> Prop)) (b x1)) (x0 (g x1))) (fun (x2:fofType)=> ((((eq_sym Prop) ((x0 (g x1)) x2)) ((b x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2)))))) as proof of (((eq (fofType->Prop)) (x0 (g x1))) (b x1))
% Found ((((eq_sym (fofType->Prop)) (b x1)) (x0 (g x1))) ((((functional_extensionality_dep0 (fun (x4:fofType)=> Prop)) (b x1)) (x0 (g x1))) (fun (x2:fofType)=> ((((eq_sym Prop) ((x0 (g x1)) x2)) ((b x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2)))))) as proof of (((eq (fofType->Prop)) (x0 (g x1))) (b x1))
% Found eq_ref00:=(eq_ref0 b):(((eq Prop) b) b)
% Found (eq_ref0 b) as proof of (((eq Prop) b) ((x0 (g x1)) y))
% Found ((eq_ref Prop) b) as proof of (((eq Prop) b) ((x0 (g x1)) y))
% Found ((eq_ref Prop) b) as proof of (((eq Prop) b) ((x0 (g x1)) y))
% Found ((eq_ref Prop) b) as proof of (((eq Prop) b) ((x0 (g x1)) y))
% Found eq_ref00:=(eq_ref0 ((f x1) y)):(((eq Prop) ((f x1) y)) ((f x1) y))
% Found (eq_ref0 ((f x1) y)) as proof of (((eq Prop) ((f x1) y)) b)
% Found ((eq_ref Prop) ((f x1) y)) as proof of (((eq Prop) ((f x1) y)) b)
% Found ((eq_ref Prop) ((f x1) y)) as proof of (((eq Prop) ((f x1) y)) b)
% Found ((eq_ref Prop) ((f x1) y)) as proof of (((eq Prop) ((f x1) y)) b)
% Found eq_ref00:=(eq_ref0 ((x0 (g x1)) x2)):(((eq Prop) ((x0 (g x1)) x2)) ((x0 (g x1)) x2))
% Found (eq_ref0 ((x0 (g x1)) x2)) as proof of (((eq Prop) ((x0 (g x1)) x2)) ((b x1) x2))
% Found ((eq_ref Prop) ((x0 (g x1)) x2)) as proof of (((eq Prop) ((x0 (g x1)) x2)) ((b x1) x2))
% Found ((eq_ref Prop) ((x0 (g x1)) x2)) as proof of (((eq Prop) ((x0 (g x1)) x2)) ((b x1) x2))
% Found ((eq_ref Prop) ((x0 (g x1)) x2)) as proof of (((eq Prop) ((x0 (g x1)) x2)) ((b x1) x2))
% Found (eq_sym200 ((eq_ref Prop) ((x0 (g x1)) x2))) as proof of (((eq Prop) ((b x1) x2)) ((x0 (g x1)) x2))
% Found ((eq_sym20 ((b x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2))) as proof of (((eq Prop) ((b x1) x2)) ((x0 (g x1)) x2))
% Found (((eq_sym2 ((x0 (g x1)) x2)) ((b x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2))) as proof of (((eq Prop) ((b x1) x2)) ((x0 (g x1)) x2))
% Found ((((eq_sym Prop) ((x0 (g x1)) x2)) ((b x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2))) as proof of (((eq Prop) ((b x1) x2)) ((x0 (g x1)) x2))
% Found (fun (x2:fofType)=> ((((eq_sym Prop) ((x0 (g x1)) x2)) ((b x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2)))) as proof of (((eq Prop) ((b x1) x2)) ((x0 (g x1)) x2))
% Found (fun (x2:fofType)=> ((((eq_sym Prop) ((x0 (g x1)) x2)) ((b x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2)))) as proof of (forall (x:fofType), (((eq Prop) ((b x1) x)) ((x0 (g x1)) x)))
% Found (functional_extensionality0100 (fun (x2:fofType)=> ((((eq_sym Prop) ((x0 (g x1)) x2)) ((b x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2))))) as proof of (((eq (fofType->Prop)) (b x1)) (x0 (g x1)))
% Found ((functional_extensionality010 (x0 (g x1))) (fun (x2:fofType)=> ((((eq_sym Prop) ((x0 (g x1)) x2)) ((b x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2))))) as proof of (((eq (fofType->Prop)) (b x1)) (x0 (g x1)))
% Found (((functional_extensionality01 (b x1)) (x0 (g x1))) (fun (x2:fofType)=> ((((eq_sym Prop) ((x0 (g x1)) x2)) ((b x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2))))) as proof of (((eq (fofType->Prop)) (b x1)) (x0 (g x1)))
% Found ((((functional_extensionality0 Prop) (b x1)) (x0 (g x1))) (fun (x2:fofType)=> ((((eq_sym Prop) ((x0 (g x1)) x2)) ((b x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2))))) as proof of (((eq (fofType->Prop)) (b x1)) (x0 (g x1)))
% Found ((((functional_extensionality0 Prop) (b x1)) (x0 (g x1))) (fun (x2:fofType)=> ((((eq_sym Prop) ((x0 (g x1)) x2)) ((b x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2))))) as proof of (((eq (fofType->Prop)) (b x1)) (x0 (g x1)))
% Found (eq_sym100 ((((functional_extensionality0 Prop) (b x1)) (x0 (g x1))) (fun (x2:fofType)=> ((((eq_sym Prop) ((x0 (g x1)) x2)) ((b x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2)))))) as proof of (((eq (fofType->Prop)) (x0 (g x1))) (b x1))
% Found ((eq_sym10 (x0 (g x1))) ((((functional_extensionality0 Prop) (b x1)) (x0 (g x1))) (fun (x2:fofType)=> ((((eq_sym Prop) ((x0 (g x1)) x2)) ((b x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2)))))) as proof of (((eq (fofType->Prop)) (x0 (g x1))) (b x1))
% Found (((eq_sym1 (b x1)) (x0 (g x1))) ((((functional_extensionality0 Prop) (b x1)) (x0 (g x1))) (fun (x2:fofType)=> ((((eq_sym Prop) ((x0 (g x1)) x2)) ((b x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2)))))) as proof of (((eq (fofType->Prop)) (x0 (g x1))) (b x1))
% Found ((((eq_sym (fofType->Prop)) (b x1)) (x0 (g x1))) ((((functional_extensionality0 Prop) (b x1)) (x0 (g x1))) (fun (x2:fofType)=> ((((eq_sym Prop) ((x0 (g x1)) x2)) ((b x1) x2)) ((eq_ref Prop) ((x0 (g x1)) x2)))))) as proof of (((eq (fofType->Prop)) (x0 (g x1))) (b x1))
% Found eq_ref00:=(eq_ref0 ((f x1) y)):(((eq Prop) ((f x1) y)) ((f x1) y))
% Found (eq_ref0 ((f x1) y)) as proof of (((eq Prop) ((f x1) y)) b)
% Found ((eq_ref Prop) ((f x1) y)) as proof of (((eq Prop) ((f x1) y)) b)
% Found ((eq_ref Prop) ((f x1) y)) as proof of (((eq Prop) ((f x1) y)) b)
% Found ((eq_ref Prop) ((f x1) y)) as proof of (((eq Prop) ((f x1) y)) b)
% Found eq_ref00:=(eq_ref0 b):(((eq Prop) b) b)
% Found (eq_ref0 b) as proof of (((eq Prop) b) ((x0 (g x1)) y))
% Found ((eq_ref Prop) b) as proof of (((eq Prop) b) ((x0 (g x1)) y))
% Found ((eq_ref Prop) b) as proof of (((eq Prop) b) ((x0 (g x1)) y))
% Found ((eq_ref Prop) b) as proof of (((eq Prop) b) ((x0 (g x1)) y))
% Found eq_ref00:=(eq_ref0 ((f x1) y)):(((eq Prop) ((f x1) y)) ((f x1) y))
% Found (eq_ref0 ((f x1) y)) as proof of (((eq Prop) ((f x1) y)) b)
% Found ((eq_ref Prop) ((f x1) y)) as proof of (((eq Prop) ((f x1) y)) b)
% Found ((eq_ref Prop) ((f x1) y)) as proof of (((eq Prop) ((f x1) y)) b)
% Found ((eq_ref Prop) ((f x1) y)) as proof of (((eq Prop) ((f x1) y)) b)
% Found eq_ref00:=(eq_ref0 b):(((eq Prop) b) b)
% Found (eq_ref0 b) as proof of (((eq Prop) b) ((x0 (g x1)) y))
% Found ((eq_ref Prop) b) as proof of (((eq Prop) b) ((x0 (g x1)) y))
% Found ((eq_ref Prop) b) as proof of (((eq Prop) b) ((x0 (g x1)) y))
% Found ((eq_ref Prop) b) as proof of (((eq Prop) b) ((x0 (g x1)) y))
% Found eq_ref00:=(eq_ref0 ((b x1) y)):(((eq Prop) ((b x1) y)) ((b x1) y))
% Found (eq_ref0 ((b x1) y)) as proof of (P b)
% Found ((eq_ref Prop) ((b x1) y)) as proof of (P b)
% Found ((eq_ref Prop) ((b x1) y)) as proof of (P b)
% Found ((eq_ref Prop) ((b x1) y)) as proof of (P b)
% Found eta_expansion_dep000:=(eta_expansion_dep00 f):(((eq (fofType->(fofType->Prop))) f) (fun (x:fofType)=> (f x)))
% Found (eta_expansion_dep00 f) as proof of (((eq (fofType->(fofType->Prop))) f) b)
% Found ((eta_expansion_dep0 (fun (x3:fofType)=> (fofType->Prop))) f) as proof of (((eq (fofType->(fofType->Prop))) f) b)
% Found (((eta_expansion_dep fofType) (fun (x3:fofType)=> (fofType->Prop))) f) as proof of (((eq (fofType->(fofType->Prop))) f) b)
% Found (((eta_expansion_dep fofType) (fun (x3:fofType)=> (fofType->Prop))) f) as proof of (((eq (fofType->(fofType->Prop))) f) b)
% Found (((eta_expansion_dep fofType) (fun (x3:fofType)=> (fofType->Prop))) f) as proof of (((eq (fofType->(fofType->Prop))) f) b)
% Found eq_ref000:=(eq_ref00 P):((P ((x0 (g x1)) y))->(P ((x0 (g x1)) y)))
% Found (eq_ref00 P) as proof of ((P ((x0 (g x1)) y))->(P ((b0 x1) y)))
% Found ((eq_ref0 ((x0 (g x1)) y)) P) as proof of ((P ((x0 (g x1)) y))->(P ((b0 x1) y)))
% Found (((eq_ref Prop) ((x0 (g x1)) y)) P) as proof of ((P ((x0 (g x1)) y))->(P ((b0 x1) y)))
% Found (((eq_ref Prop) ((x0 (g x1)) y)) P) as proof of ((P ((x0 (g x1)) y))->(P ((b0 x1) y)))
% Found (fun (P:(Prop->Prop))=> (((eq_ref Prop) ((x0 (g x1)) y)) P)) as proof of ((P ((x0 (g x1)) y))->(P ((b0 x1) y)))
% Found (fun (y:fofType) (P:(Prop->Prop))=> (((eq_ref Prop) ((x0 (g x1)) y)) P)) as proof of (((eq Prop) ((x0 (g x1)) y)) ((b0 x1) y))
% Found x2:(P (f x1))
% Instantiate: b:=(f x1):(fofType->Prop)
% Found x2 as proof of (P0 b)
% Found eta_expansion_dep000:=(eta_expansion_dep00 (x0 (g x1))):(((eq (fofType->Prop)) (x0 (g x1))) (fun (x:fofType)=> ((x0 (g x1)) x)))
% Found (eta_expansion_dep00 (x0 (g x1))) as proof of (((eq (fofType->Prop)) (x0 (g x1))) b)
% Found ((eta_expansion_dep0 (fun (x4:fofType)=> Prop)) (x0 (g x1))) as proof of (((eq (fofType->Prop)) (x0 (g x1))) b)
% Found (((eta_expansion_dep fofType) (fun (x4:fofType)=> Prop)) (x0 (g x1))) as proof of (((eq (fofType->Prop)) (x0 (g x1))) b)
% Found (((eta_expansion_dep fofType) (fun (x4:fofType)=> Prop)) (x0 (g x1))) as proof of (((eq (fofType->Prop)) (x0 (g x1))) b)
% Found (((eta_expansion_dep fofType) (fun (x4:fofType)=> Prop)) (x0 (g x1))) as proof of (((eq (fofType->Prop)) (x0 (g x1))) b)
% Found x2:(P (f x1))
% Instantiate: b:=(f x1):(fofType->Prop)
% Found x2 as proof of (P0 b)
% Found eta_expansion_dep000:=(eta_expansion_dep00 (x0 (g x1))):(((eq (fofType->Prop)) (x0 (g x1))) (fun (x:fofType)=> ((x0 (g x1)) x)))
% Found (eta_expansion_dep00 (x0 (g x1))) as proof of (((eq (fofType->Prop)) (x0 (g x1))) b)
% Found ((eta_expansion_dep0 (fun (x4:fofType)=> Prop)) (x0 (g x1))) as proof of (((eq (fofType->Prop)) (x0 (g x1))) b)
% Found (((eta_expansion_dep fofType) (fun (x4:fofType)=> Prop)) (x0 (g x1))) as proof of (((eq (fofType->Prop)) (x0 (g x1))) b)
% Found (((eta_expansion_dep fofType) (fun (x4:fofType)=> Prop)) (x0 (g x1))) as proof of (((eq (fofType->Prop)) (x0 (g x1))) b)
% Found (((eta_expansion_dep fofType) (fun (x4:fofType)=> Prop)) (x0 (g x1))) as proof of (((eq (fofType->Prop)) (x0 (g x1))) b)
% Found x2:(P (f x1))
% Instantiate: f0:=(f x1):(fofType->Prop)
% Found x2 as proof of (P0 f0)
% Found x2:(P (f x1))
% Instantiate: f0:=(f x1):(fofType->Prop)
% Found x2 as proof of (P0 f0)
% Found eq_ref00:=(eq_ref0 (x0 (g x1))):(((eq (fofType->Prop)) (x0 (g x1))) (x0 (g x1)))
% Found (eq_ref0 (x0 (g x1))) as proof of (((eq (fofType->Prop)) (x0 (g x1))) b)
% Found ((eq_ref (fofType->Prop)) (x0 (g x1))) as proof of (((eq (fofType->Prop)) (x0 (g x1))) b)
% Found ((eq_ref (fofType->Prop)) (x0 (g x1))) as proof of (((eq (fofType->Prop)) (x0 (g x1))) b)
% Found ((eq_ref (fofType->Prop)) (x0 (g x1))) as proof of (((eq (fofType->Prop)) (x0 (g x1))) b)
% Found ((eq_sym1000 ((eq_ref (fofType->Prop)) (x0 (g x1)))) x2) as proof of (P (x0 (g x1)))
% Found ((eq_sym1000 ((eq_ref (fofType->Prop)) (x0 (g x1)))) x2) as proof of (P (x0 (g x1)))
% Found (((fun (x3:(((eq (fofType->Prop)) (x0 (g x1))) b))=> ((eq_sym100 x3) P)) ((eq_ref (fofType->Prop)) (x0 (g x1)))) x2) as proof of (P (x0 (g x1)))
% Found (((fun (x3:(((eq (fofType->Prop)) (x0 (g x1))) (f x1)))=> (((eq_sym10 (f x1)) x3) P)) ((eq_ref (fofType->Prop)) (x0 (g x1)))) x2) as proof of (P (x0 (g x1)))
% Found (((fun (x3:(((eq (fofType->Prop)) (x0 (g x1))) (f x1)))=> ((((eq_sym1 (x0 (g x1))) (f x1)) x3) P)) ((eq_ref (fofType->Prop)) (x0 (g x1)))) x2) as proof of (P (x0 (g x1)))
% Found (((fun (x3:(((eq (fofType->Prop)) (x0 (g x1))) (f x1)))=> (((((eq_sym (fofType->Prop)) (x0 (g x1))) (f x1)) x3) P)) ((eq_ref (fofType->Prop)) (x0 (g x1)))) x2) as proof of (P (x0 (g x1)))
% Found (fun (x2:(P (f x1)))=> (((fun (x3:(((eq (fofType->Prop)) (x0 (g x1))) (f x1)))=> (((((eq_sym (fofType->Prop)) (x0 (g x1))) (f x1)) x3) P)) ((eq_ref (fofType->Prop)) (x0 (g x1)))) x2)) as proof of (P (x0 (g x1)))
% Found (fun (P:((fofType->Prop)->Prop)) (x2:(P (f x1)))=> (((fun (x3:(((eq (fofType->Prop)) (x0 (g x1))) (f x1)))=> (((((eq_sym (fofType->Prop)) (x0 (g x1))) (f x1)) x3) P)) ((eq_ref (fofType->Prop)) (x0 (g x1)))) x2)) as proof of ((P (f x1))->(P (x0 (g x1))))
% Found eq_ref00:=(eq_ref0 (x0 (g x1))):(((eq (fofType->Prop)) (x0 (g x1))) (x0 (g x1)))
% Found (eq_ref0 (x0 (g x1))) as proof of (((eq (fofType->Prop)) (x0 (g x1))) b)
% Found ((eq_ref (fofType->Prop)) (x0 (g x1))) as proof of (((eq (fofType->Prop)) (x0 (g x1))) b)
% Found ((eq_ref (fofType->Prop)) (x0 (g x1))) as proof of (((eq (fofType->Prop)) (x0 (g x1))) b)
% Found ((eq_ref (fofType->Prop)) (x0 (g x1))) as proof of (((eq (fofType->Prop)) (x0 (g x1))) b)
% Found ((eq_sym1000 ((eq_ref (fofType->Prop)) (x0 (g x1)))) x2) as proof of (P (x0 (g x1)))
% Found ((eq_sym1000 ((eq_ref (fofType->Prop)) (x0 (g x1)))) x2) as proof of (P (x0 (g x1)))
% Found (((fun (x3:(((eq (fofType->Prop)) (x0 (g x1))) b))=> ((eq_sym100 x3) P)) ((eq_ref (fofType->Prop)) (x0 (g x1)))) x2) as proof of (P (x0 (g x1)))
% Found (((fun (x3:(((eq (fofType->Prop)) (x0 (g x1))) (f x1)))=> (((eq_sym10 (f x1)) x3) P)) ((eq_ref (fofType->Prop)) (x0 (g x1)))) x2) as proof of (P (x0 (g x1)))
% Found (((fun (x3:(((eq (fofType->Prop)) (x0 (g x1))) (f x1)))=> ((((eq_sym1 (x0 (g x1))) (f x1)) x3) P)) ((eq_ref (fofType->Prop)) (x0 (g x1)))) x2) as proof of (P (x0 (g x1)))
% Found (((fun (x3:(((eq (fofType->Prop)) (x0 (g x1))) (f x1)))=> (((((eq_sym (fofType->Prop)) (x0 (g x1))) (f x1)) x3) P)) ((eq_ref (fofType->Prop)) (x0 (g x1)))) x2) as proof of (P (x0 (g x1)))
% Found (fun (x2:(P (f x1)))=> (((fun (x3:(((eq (fofType->Prop)) (x0 (g x1))) (f x1)))=> (((((eq_sym (fofType->Prop)) (x0 (g x1))) (f x1)) x3) P)) ((eq_ref (fofType->Prop)) (x0 (g x1)))) x2)) as proof of (P (x0 (g x1)))
% Found (fun (P:((fofType->Prop)->Prop)) (x2:(P (f x1)))=> (((fun (x3:(((eq (fofType->Prop)) (x0 (g x1))) (f x1)))=> (((((eq_sym (fofType->Prop)) (x0 (g x1))) (f x1)) x3) P)) ((eq_ref (fofType->Prop)) (x0 (g x1)))) x2)) as proof of ((P (f x1))->(P (x0 (g x1))))
% Found eq_ref000:=(eq_ref00 P):((P b)->(P b))
% Found (eq_ref00 P) as proof of (P0 b)
% Found ((eq_ref0 b) P) as proof of (P0 b)
% Found (((eq_ref (fofType->(fofType->Prop))) b) P) as proof of (P0 b)
% Found (((eq_ref (fofType->(fofType->Prop))) b) P) as proof of (P0 b)
% Found eq_ref000:=(eq_ref00 P):((P b)->(P b))
% Found (eq_ref00 P) as proof of (P0 b)
% Found ((eq_ref0 b) P) as proof of (P0 b)
% Found (((eq_ref (fofType->(fofType->Prop))) b) P) as proof of (P0 b)
% Found (((eq_ref (fofType->(fofType->Prop))) b) P) as proof of (P0 b)
% Found eq_ref00:=(eq_ref0 (f0 x3)):(((eq Prop) (f0 x3)) (f0 x3))
% Found (eq_ref0 (f0 x3)) as proof of (((eq Prop) (f0 x3)) ((x0 (g x1)) x3))
% Found ((eq_ref Prop) (f0 x3)) as proof of (((eq Prop) (f0 x3)) ((x0 (g x1)) x3))
% Found ((eq_ref Prop) (f0 x3)) as proof of (((eq Prop) (f0 x3)) ((x0 (g x1)) x3))
% Found (fun (x3:fofType)=> ((eq_ref Prop) (f0 x3))) as proof of (((eq Prop) (f0 x3)) ((x0 (g x1)) x3))
% Found (fun (x3:fofType)=> ((eq_ref Prop) (f0 x3))) as proof of (forall (x:fofType), (((eq Prop) (f0 x)) ((x0 (g x1)) x)))
% Found eq_ref00:=(eq_ref0 (f0 x3)):(((eq Prop) (f0 x3)) (f0 x3))
% Found (eq_ref0 (f0 x3)) as proof of (((eq Prop) (f0 x3)) ((x0 (g x1)) x3))
% Found ((eq_ref Prop) (f0 x3)) as proof of (((eq Prop) (f0 x3)) ((x0 (g x1)) x3))
% Found ((eq_ref Prop) (f0 x3)) as proof of (((eq Prop) (f0 x3)) ((x0 (g x1)) x3))
% Found (fun (x3:fofType)=> ((eq_ref Prop) (f0 x3))) as proof of (((eq Prop) (f0 x3)) ((x0 (g x1)) x3))
% Found (fun (x3:fofType)=> ((eq_ref Prop) (f0 x3))) as proof of (forall (x:fofType), (((eq Prop) (f0 x)) ((x0 (g x1)) x)))
% Found eq_ref00:=(eq_ref0 (x0 (g x2))):(((eq (fofType->Prop)) (x0 (g x2))) (x0 (g x2)))
% Found (eq_ref0 (x0 (g x2))) as proof of (((eq (fofType->Prop)) (x0 (g x2))) (f0 x2))
% Found ((eq_ref (fofType->Prop)) (x0 (g x2))) as proof of (((eq (fofType->Prop)) (x0 (g x2))) (f0 x2))
% Found ((eq_ref (fofType->Prop)) (x0 (g x2))) as proof of (((eq (fofType->Prop)) (x0 (g x2))) (f0 x2))
% Found ((eq_ref (fofType->Prop)) (x0 (g x2))) as proof of (((eq (fofType->Prop)) (x0 (g x2))) (f0 x2))
% Found (eq_sym100 ((eq_ref (fofType->Prop)) (x0 (g x2)))) as proof of (((eq (fofType->Prop)) (f0 x2)) (x0 (g x2)))
% Found ((eq_sym10 (f0 x2)) ((eq_ref (fofType->Prop)) (x0 (g x2)))) as proof of (((eq (fofType->Prop)) (f0 x2)) (x0 (g x2)))
% Found (((eq_sym1 (x0 (g x2))) (f0 x2)) ((eq_ref (fofType->Prop)) (x0 (g x2)))) as proof of (((eq (fofType->Prop)) (f0 x2)) (x0 (g x2)))
% Found ((((eq_sym (fofType->Prop)) (x0 (g x2))) (f0 x2)) ((eq_ref (fofType->Prop)) (x0 (g x2)))) as proof of (((eq (fofType->Prop)) (f0 x2)) (x0 (g x2)))
% Found eq_ref00:=(eq_ref0 (x0 (g x2))):(((eq (fofType->Prop)) (x0 (g x2))) (x0 (g x2)))
% Found (eq_ref0 (x0 (g x2))) as proof of (((eq (fofType->Prop)) (x0 (g x2))) (f0 x2))
% Found ((eq_ref (fofType->Prop)) (x0 (g x2))) as proof of (((eq (fofType->Prop)) (x0 (g x2))) (f0 x2))
% Found ((eq_ref (fofType->Prop)) (x0 (g x2))) as proof of (((eq (fofType->Prop)) (x0 (g x2))) (f0 x2))
% Found ((eq_ref (fofType->Prop)) (x0 (g x2))) as proof of (((eq (fofType->Prop)) (x0 (g x2))) (f0 x2))
% Found (eq_sym100 ((eq_ref (fofType->Prop)) (x0 (g x2)))) as proof of (((eq (fofType->Prop)) (f0 x2)) (x0 (g x2)))
% Found ((eq_sym10 (f0 x2)) ((eq_ref (fofType->Prop)) (x0 (g x2)))) as proof of (((eq (fofType->Prop)) (f0 x2)) (x0 (g x2)))
% Found (((eq_sym1 (x0 (g x2))) (f0 x2)) ((eq_ref (fofType->Prop)) (x0 (g x2)))) as proof of (((eq (fofType->Prop)) (f0 x2)) (x0 (g x2)))
% Found ((((eq_sym (fofType->Prop)) (x0 (g x2))) (f0 x2)) ((eq_ref (fofType->Prop)) (x0 (g x2)))) as proof of (((eq (fofType->Prop)) (f0 x2)) (x0 (g x2)))
% Found eta_expansion0000:=(eta_expansion000 P):((P b)->(P (fun (x:fofType)=> (b x))))
% Found (eta_expansion000 P) as proof of (P0 b)
% Found ((eta_expansion00 b) P) as proof of (P0 b)
% Found (((eta_expansion0 (fofType->Prop)) b) P) as proof of (P0 b)
% Found ((((eta_expansion fofType) (fofType->Prop)) b) P) as proof of (P0 b)
% Found ((((eta_expansion fofType) (fofType->Prop)) b) P) as proof of (P0 b)
% Found eta_expansion0000:=(eta_expansion000 P):((P b)->(P (fun (x:fofType)=> (b x))))
% Found (eta_expansion000 P) as proof of (P0 b)
% Found ((eta_expansion00 b) P) as proof of (P0 b)
% Found (((eta_expansion0 (fofType->Prop)) b) P) as proof of (P0 b)
% Found ((((eta_expansion fofType) (fofType->Prop)) b) P) as proof of (P0 b)
% Found ((((eta_expansion fofType) (fofType->Prop)) b) P) as proof of (P0 b)
% Found eq_ref000:=(eq_ref00 P1):((P1 (x0 (g x2)))->(P1 (x0 (g x2))))
% Found (eq_ref00 P1) as proof of ((P1 (x0 (g x2)))->(P1 (b x2)))
% Found ((eq_ref0 (x0 (g x2))) P1) as proof of ((P1 (x0 (g x2)))->(P1 (b x2)))
% Found (((eq_ref (fofType->Prop)) (x0 (g x2))) P1) as proof of ((P1 (x0 (g x2)))->(P1 (b x2)))
% Found (((eq_ref (fofType->Prop)) (x0 (g x2))) P1) as proof of ((P1 (x0 (g x2)))->(P1 (b x2)))
% Found (fun (P1:((fofType->Prop)->Prop))=> (((eq_ref (fofType->Prop)) (x0 (g x2))) P1)) as proof of ((P1 (x0 (g x2)))->(P1 (b x2)))
% Found eq_ref000:=(eq_ref00 P1):((P1 (x0 (g x2)))->(P1 (x0 (g x2))))
% Found (eq_ref00 P1) as proof of ((P1 (x0 (g x2)))->(P1 (b x2)))
% Found ((eq_ref0 (x0 (g x2))) P1) as proof of ((P1 (x0 (g x2)))->(P1 (b x2)))
% Found (((eq_ref (fofType->Prop)) (x0 (g x2))) P1) as proof of ((P1 (x0 (g x2)))->(P1 (b x2)))
% Found (((eq_ref (fofType->Prop)) (x0 (g x2))) P1) as proof of ((P1 (x0 (g x2)))->(P1 (b x2)))
% Found (fun (P1:((fofType->Prop)->Prop))=> (((eq_ref (fofType->Prop)) (x0 (g x2))) P1)) as proof of ((P1 (x0 (g x2)))->(P1 (b x2)))
% Found eq_ref00:=(eq_ref0 (g Xx)):(((eq (fofType->Prop)) (g Xx)) (g Xx))
% Fo
% EOF
%------------------------------------------------------------------------------