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

View Problem - Process Solution

%------------------------------------------------------------------------------
% File     : cocATP---0.2.0
% Problem  : SEU959^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 : n100.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:26 EDT 2014

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

% Comments : 
%------------------------------------------------------------------------------
%----NO SOLUTION OUTPUT BY SYSTEM
%------------------------------------------------------------------------------
%----ORIGINAL SYSTEM OUTPUT
% % Problem  : SEU959^5 : TPTP v6.1.0. Released v4.0.0.
% % Command  : python CASC.py /export/starexec/sandbox/benchmark/theBenchmark.p
% % Computer : n100.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:46:26 CDT 2014
% % CPUTime  : 300.04 
% Python 2.7.5
% Using paths ['/home/cristobal/cocATP/CASC/TPTP/', '/export/starexec/sandbox/benchmark/', '/export/starexec/sandbox/benchmark/']
% FOF formula (<kernel.Constant object at 0x121b680>, <kernel.DependentProduct object at 0x121bcf8>) of role type named f
% Using role type
% Declaring f:(fofType->fofType)
% FOF formula (<kernel.Constant object at 0x15d8248>, <kernel.DependentProduct object at 0x121bb00>) of role type named g
% Using role type
% Declaring g:(fofType->fofType)
% FOF formula ((forall (Xr:(fofType->(fofType->Prop))), ((forall (Xx:fofType), ((ex fofType) (fun (Xy:fofType)=> ((Xr Xx) Xy))))->((ex (fofType->fofType)) (fun (Xh:(fofType->fofType))=> (forall (Xx:fofType), ((Xr Xx) (Xh Xx)))))))->((forall (Xx:fofType) (Xy:fofType), ((((eq fofType) (g Xx)) (g Xy))->(((eq fofType) (f Xx)) (f Xy))))->((ex (fofType->fofType)) (fun (Xh:(fofType->fofType))=> (((eq (fofType->fofType)) (fun (Xx:fofType)=> (Xh (g Xx)))) f))))) of role conjecture named cTHM588AC2_pme
% Conjecture to prove = ((forall (Xr:(fofType->(fofType->Prop))), ((forall (Xx:fofType), ((ex fofType) (fun (Xy:fofType)=> ((Xr Xx) Xy))))->((ex (fofType->fofType)) (fun (Xh:(fofType->fofType))=> (forall (Xx:fofType), ((Xr Xx) (Xh Xx)))))))->((forall (Xx:fofType) (Xy:fofType), ((((eq fofType) (g Xx)) (g Xy))->(((eq fofType) (f Xx)) (f Xy))))->((ex (fofType->fofType)) (fun (Xh:(fofType->fofType))=> (((eq (fofType->fofType)) (fun (Xx:fofType)=> (Xh (g Xx)))) f))))):Prop
% Parameter fofType_DUMMY:fofType.
% We need to prove ['((forall (Xr:(fofType->(fofType->Prop))), ((forall (Xx:fofType), ((ex fofType) (fun (Xy:fofType)=> ((Xr Xx) Xy))))->((ex (fofType->fofType)) (fun (Xh:(fofType->fofType))=> (forall (Xx:fofType), ((Xr Xx) (Xh Xx)))))))->((forall (Xx:fofType) (Xy:fofType), ((((eq fofType) (g Xx)) (g Xy))->(((eq fofType) (f Xx)) (f Xy))))->((ex (fofType->fofType)) (fun (Xh:(fofType->fofType))=> (((eq (fofType->fofType)) (fun (Xx:fofType)=> (Xh (g Xx)))) f)))))']
% Parameter fofType:Type.
% Parameter f:(fofType->fofType).
% Parameter g:(fofType->fofType).
% Trying to prove ((forall (Xr:(fofType->(fofType->Prop))), ((forall (Xx:fofType), ((ex fofType) (fun (Xy:fofType)=> ((Xr Xx) Xy))))->((ex (fofType->fofType)) (fun (Xh:(fofType->fofType))=> (forall (Xx:fofType), ((Xr Xx) (Xh Xx)))))))->((forall (Xx:fofType) (Xy:fofType), ((((eq fofType) (g Xx)) (g Xy))->(((eq fofType) (f Xx)) (f Xy))))->((ex (fofType->fofType)) (fun (Xh:(fofType->fofType))=> (((eq (fofType->fofType)) (fun (Xx:fofType)=> (Xh (g Xx)))) f)))))
% Found eq_ref00:=(eq_ref0 (x1 (g x2))):(((eq fofType) (x1 (g x2))) (x1 (g x2)))
% Found (eq_ref0 (x1 (g x2))) as proof of (((eq fofType) (x1 (g x2))) (f x2))
% Found ((eq_ref fofType) (x1 (g x2))) as proof of (((eq fofType) (x1 (g x2))) (f x2))
% Found ((eq_ref fofType) (x1 (g x2))) as proof of (((eq fofType) (x1 (g x2))) (f x2))
% Found eq_ref00:=(eq_ref0 (x1 (g x2))):(((eq fofType) (x1 (g x2))) (x1 (g x2)))
% Found (eq_ref0 (x1 (g x2))) as proof of (((eq fofType) (x1 (g x2))) (f x2))
% Found ((eq_ref fofType) (x1 (g x2))) as proof of (((eq fofType) (x1 (g x2))) (f x2))
% Found ((eq_ref fofType) (x1 (g x2))) as proof of (((eq fofType) (x1 (g x2))) (f x2))
% Found eq_ref000:=(eq_ref00 P):((P (x1 (g x2)))->(P (x1 (g x2))))
% Found (eq_ref00 P) as proof of ((P (x1 (g x2)))->(P (f x2)))
% Found ((eq_ref0 (x1 (g x2))) P) as proof of ((P (x1 (g x2)))->(P (f x2)))
% Found (((eq_ref fofType) (x1 (g x2))) P) as proof of ((P (x1 (g x2)))->(P (f x2)))
% Found (((eq_ref fofType) (x1 (g x2))) P) as proof of ((P (x1 (g x2)))->(P (f x2)))
% Found (fun (P:(fofType->Prop))=> (((eq_ref fofType) (x1 (g x2))) P)) as proof of ((P (x1 (g x2)))->(P (f x2)))
% Found eq_ref000:=(eq_ref00 P):((P (x1 (g x2)))->(P (x1 (g x2))))
% Found (eq_ref00 P) as proof of ((P (x1 (g x2)))->(P (f x2)))
% Found ((eq_ref0 (x1 (g x2))) P) as proof of ((P (x1 (g x2)))->(P (f x2)))
% Found (((eq_ref fofType) (x1 (g x2))) P) as proof of ((P (x1 (g x2)))->(P (f x2)))
% Found (((eq_ref fofType) (x1 (g x2))) P) as proof of ((P (x1 (g x2)))->(P (f x2)))
% Found (fun (P:(fofType->Prop))=> (((eq_ref fofType) (x1 (g x2))) P)) as proof of ((P (x1 (g x2)))->(P (f x2)))
% Found eq_ref00:=(eq_ref0 (x1 (g x2))):(((eq fofType) (x1 (g x2))) (x1 (g x2)))
% Found (eq_ref0 (x1 (g x2))) as proof of (((eq fofType) (x1 (g x2))) (f x2))
% Found ((eq_ref fofType) (x1 (g x2))) as proof of (((eq fofType) (x1 (g x2))) (f x2))
% Found ((eq_ref fofType) (x1 (g x2))) as proof of (((eq fofType) (x1 (g x2))) (f x2))
% Found ((eq_ref fofType) (x1 (g x2))) as proof of (((eq fofType) (x1 (g x2))) (f x2))
% Found (eq_sym100 ((eq_ref fofType) (x1 (g x2)))) as proof of (((eq fofType) (f x2)) (x1 (g x2)))
% Found ((eq_sym10 (f x2)) ((eq_ref fofType) (x1 (g x2)))) as proof of (((eq fofType) (f x2)) (x1 (g x2)))
% Found (((eq_sym1 (x1 (g x2))) (f x2)) ((eq_ref fofType) (x1 (g x2)))) as proof of (((eq fofType) (f x2)) (x1 (g x2)))
% Found ((((eq_sym fofType) (x1 (g x2))) (f x2)) ((eq_ref fofType) (x1 (g x2)))) as proof of (((eq fofType) (f x2)) (x1 (g x2)))
% Found eq_ref00:=(eq_ref0 (x1 (g x2))):(((eq fofType) (x1 (g x2))) (x1 (g x2)))
% Found (eq_ref0 (x1 (g x2))) as proof of (((eq fofType) (x1 (g x2))) (f x2))
% Found ((eq_ref fofType) (x1 (g x2))) as proof of (((eq fofType) (x1 (g x2))) (f x2))
% Found ((eq_ref fofType) (x1 (g x2))) as proof of (((eq fofType) (x1 (g x2))) (f x2))
% Found ((eq_ref fofType) (x1 (g x2))) as proof of (((eq fofType) (x1 (g x2))) (f x2))
% Found (eq_sym100 ((eq_ref fofType) (x1 (g x2)))) as proof of (((eq fofType) (f x2)) (x1 (g x2)))
% Found ((eq_sym10 (f x2)) ((eq_ref fofType) (x1 (g x2)))) as proof of (((eq fofType) (f x2)) (x1 (g x2)))
% Found (((eq_sym1 (x1 (g x2))) (f x2)) ((eq_ref fofType) (x1 (g x2)))) as proof of (((eq fofType) (f x2)) (x1 (g x2)))
% Found ((((eq_sym fofType) (x1 (g x2))) (f x2)) ((eq_ref fofType) (x1 (g x2)))) as proof of (((eq fofType) (f x2)) (x1 (g x2)))
% Found eta_expansion000:=(eta_expansion00 (fun (Xh:(fofType->fofType))=> (((eq (fofType->fofType)) (fun (Xx:fofType)=> (Xh (g Xx)))) f))):(((eq ((fofType->fofType)->Prop)) (fun (Xh:(fofType->fofType))=> (((eq (fofType->fofType)) (fun (Xx:fofType)=> (Xh (g Xx)))) f))) (fun (x:(fofType->fofType))=> (((eq (fofType->fofType)) (fun (Xx:fofType)=> (x (g Xx)))) f)))
% Found (eta_expansion00 (fun (Xh:(fofType->fofType))=> (((eq (fofType->fofType)) (fun (Xx:fofType)=> (Xh (g Xx)))) f))) as proof of (((eq ((fofType->fofType)->Prop)) (fun (Xh:(fofType->fofType))=> (((eq (fofType->fofType)) (fun (Xx:fofType)=> (Xh (g Xx)))) f))) b)
% Found ((eta_expansion0 Prop) (fun (Xh:(fofType->fofType))=> (((eq (fofType->fofType)) (fun (Xx:fofType)=> (Xh (g Xx)))) f))) as proof of (((eq ((fofType->fofType)->Prop)) (fun (Xh:(fofType->fofType))=> (((eq (fofType->fofType)) (fun (Xx:fofType)=> (Xh (g Xx)))) f))) b)
% Found (((eta_expansion (fofType->fofType)) Prop) (fun (Xh:(fofType->fofType))=> (((eq (fofType->fofType)) (fun (Xx:fofType)=> (Xh (g Xx)))) f))) as proof of (((eq ((fofType->fofType)->Prop)) (fun (Xh:(fofType->fofType))=> (((eq (fofType->fofType)) (fun (Xx:fofType)=> (Xh (g Xx)))) f))) b)
% Found (((eta_expansion (fofType->fofType)) Prop) (fun (Xh:(fofType->fofType))=> (((eq (fofType->fofType)) (fun (Xx:fofType)=> (Xh (g Xx)))) f))) as proof of (((eq ((fofType->fofType)->Prop)) (fun (Xh:(fofType->fofType))=> (((eq (fofType->fofType)) (fun (Xx:fofType)=> (Xh (g Xx)))) f))) b)
% Found (((eta_expansion (fofType->fofType)) Prop) (fun (Xh:(fofType->fofType))=> (((eq (fofType->fofType)) (fun (Xx:fofType)=> (Xh (g Xx)))) f))) as proof of (((eq ((fofType->fofType)->Prop)) (fun (Xh:(fofType->fofType))=> (((eq (fofType->fofType)) (fun (Xx:fofType)=> (Xh (g Xx)))) f))) b)
% Found eq_ref00:=(eq_ref0 (f0 x1)):(((eq Prop) (f0 x1)) (f0 x1))
% Found (eq_ref0 (f0 x1)) as proof of (((eq Prop) (f0 x1)) (((eq (fofType->fofType)) (fun (Xx:fofType)=> (x1 (g Xx)))) f))
% Found ((eq_ref Prop) (f0 x1)) as proof of (((eq Prop) (f0 x1)) (((eq (fofType->fofType)) (fun (Xx:fofType)=> (x1 (g Xx)))) f))
% Found ((eq_ref Prop) (f0 x1)) as proof of (((eq Prop) (f0 x1)) (((eq (fofType->fofType)) (fun (Xx:fofType)=> (x1 (g Xx)))) f))
% Found (fun (x1:(fofType->fofType))=> ((eq_ref Prop) (f0 x1))) as proof of (((eq Prop) (f0 x1)) (((eq (fofType->fofType)) (fun (Xx:fofType)=> (x1 (g Xx)))) f))
% Found (fun (x1:(fofType->fofType))=> ((eq_ref Prop) (f0 x1))) as proof of (forall (x:(fofType->fofType)), (((eq Prop) (f0 x)) (((eq (fofType->fofType)) (fun (Xx:fofType)=> (x (g Xx)))) f)))
% Found eq_ref00:=(eq_ref0 (f0 x1)):(((eq Prop) (f0 x1)) (f0 x1))
% Found (eq_ref0 (f0 x1)) as proof of (((eq Prop) (f0 x1)) (((eq (fofType->fofType)) (fun (Xx:fofType)=> (x1 (g Xx)))) f))
% Found ((eq_ref Prop) (f0 x1)) as proof of (((eq Prop) (f0 x1)) (((eq (fofType->fofType)) (fun (Xx:fofType)=> (x1 (g Xx)))) f))
% Found ((eq_ref Prop) (f0 x1)) as proof of (((eq Prop) (f0 x1)) (((eq (fofType->fofType)) (fun (Xx:fofType)=> (x1 (g Xx)))) f))
% Found (fun (x1:(fofType->fofType))=> ((eq_ref Prop) (f0 x1))) as proof of (((eq Prop) (f0 x1)) (((eq (fofType->fofType)) (fun (Xx:fofType)=> (x1 (g Xx)))) f))
% Found (fun (x1:(fofType->fofType))=> ((eq_ref Prop) (f0 x1))) as proof of (forall (x:(fofType->fofType)), (((eq Prop) (f0 x)) (((eq (fofType->fofType)) (fun (Xx:fofType)=> (x (g Xx)))) f)))
% Found eta_expansion0000:=(eta_expansion000 P):((P (fun (Xx:fofType)=> (x1 (g Xx))))->(P (fun (x:fofType)=> (x1 (g x)))))
% Found (eta_expansion000 P) as proof of (P0 (fun (Xx:fofType)=> (x1 (g Xx))))
% Found ((eta_expansion00 (fun (Xx:fofType)=> (x1 (g Xx)))) P) as proof of (P0 (fun (Xx:fofType)=> (x1 (g Xx))))
% Found (((eta_expansion0 fofType) (fun (Xx:fofType)=> (x1 (g Xx)))) P) as proof of (P0 (fun (Xx:fofType)=> (x1 (g Xx))))
% Found ((((eta_expansion fofType) fofType) (fun (Xx:fofType)=> (x1 (g Xx)))) P) as proof of (P0 (fun (Xx:fofType)=> (x1 (g Xx))))
% Found ((((eta_expansion fofType) fofType) (fun (Xx:fofType)=> (x1 (g Xx)))) P) as proof of (P0 (fun (Xx:fofType)=> (x1 (g Xx))))
% Found eq_ref00:=(eq_ref0 (x1 (g x2))):(((eq fofType) (x1 (g x2))) (x1 (g x2)))
% Found (eq_ref0 (x1 (g x2))) as proof of (((eq fofType) (x1 (g x2))) (f x2))
% Found ((eq_ref fofType) (x1 (g x2))) as proof of (((eq fofType) (x1 (g x2))) (f x2))
% Found ((eq_ref fofType) (x1 (g x2))) as proof of (((eq fofType) (x1 (g x2))) (f x2))
% Found eq_ref00:=(eq_ref0 (x1 (g x2))):(((eq fofType) (x1 (g x2))) (x1 (g x2)))
% Found (eq_ref0 (x1 (g x2))) as proof of (((eq fofType) (x1 (g x2))) (f x2))
% Found ((eq_ref fofType) (x1 (g x2))) as proof of (((eq fofType) (x1 (g x2))) (f x2))
% Found ((eq_ref fofType) (x1 (g x2))) as proof of (((eq fofType) (x1 (g x2))) (f x2))
% Found eta_expansion0000:=(eta_expansion000 P):((P (fun (Xx:fofType)=> (x1 (g Xx))))->(P (fun (x:fofType)=> (x1 (g x)))))
% Found (eta_expansion000 P) as proof of (P0 (fun (Xx:fofType)=> (x1 (g Xx))))
% Found ((eta_expansion00 (fun (Xx:fofType)=> (x1 (g Xx)))) P) as proof of (P0 (fun (Xx:fofType)=> (x1 (g Xx))))
% Found (((eta_expansion0 fofType) (fun (Xx:fofType)=> (x1 (g Xx)))) P) as proof of (P0 (fun (Xx:fofType)=> (x1 (g Xx))))
% Found ((((eta_expansion fofType) fofType) (fun (Xx:fofType)=> (x1 (g Xx)))) P) as proof of (P0 (fun (Xx:fofType)=> (x1 (g Xx))))
% Found ((((eta_expansion fofType) fofType) (fun (Xx:fofType)=> (x1 (g Xx)))) P) as proof of (P0 (fun (Xx:fofType)=> (x1 (g Xx))))
% Found eq_ref00:=(eq_ref0 (x1 (g x2))):(((eq fofType) (x1 (g x2))) (x1 (g x2)))
% Found (eq_ref0 (x1 (g x2))) as proof of (((eq fofType) (x1 (g x2))) (f x2))
% Found ((eq_ref fofType) (x1 (g x2))) as proof of (((eq fofType) (x1 (g x2))) (f x2))
% Found ((eq_ref fofType) (x1 (g x2))) as proof of (((eq fofType) (x1 (g x2))) (f x2))
% Found eta_expansion0000:=(eta_expansion000 P):((P (fun (Xx:fofType)=> (x1 (g Xx))))->(P (fun (x:fofType)=> (x1 (g x)))))
% Found (eta_expansion000 P) as proof of (P0 (fun (Xx:fofType)=> (x1 (g Xx))))
% Found ((eta_expansion00 (fun (Xx:fofType)=> (x1 (g Xx)))) P) as proof of (P0 (fun (Xx:fofType)=> (x1 (g Xx))))
% Found (((eta_expansion0 fofType) (fun (Xx:fofType)=> (x1 (g Xx)))) P) as proof of (P0 (fun (Xx:fofType)=> (x1 (g Xx))))
% Found ((((eta_expansion fofType) fofType) (fun (Xx:fofType)=> (x1 (g Xx)))) P) as proof of (P0 (fun (Xx:fofType)=> (x1 (g Xx))))
% Found ((((eta_expansion fofType) fofType) (fun (Xx:fofType)=> (x1 (g Xx)))) P) as proof of (P0 (fun (Xx:fofType)=> (x1 (g Xx))))
% Found eq_ref00:=(eq_ref0 (x1 (g x2))):(((eq fofType) (x1 (g x2))) (x1 (g x2)))
% Found (eq_ref0 (x1 (g x2))) as proof of (((eq fofType) (x1 (g x2))) (f x2))
% Found ((eq_ref fofType) (x1 (g x2))) as proof of (((eq fofType) (x1 (g x2))) (f x2))
% Found ((eq_ref fofType) (x1 (g x2))) as proof of (((eq fofType) (x1 (g x2))) (f x2))
% Found eq_ref000:=(eq_ref00 P1):((P1 (x1 (g x2)))->(P1 (x1 (g x2))))
% Found (eq_ref00 P1) as proof of ((P1 (x1 (g x2)))->(P1 (f x2)))
% Found ((eq_ref0 (x1 (g x2))) P1) as proof of ((P1 (x1 (g x2)))->(P1 (f x2)))
% Found (((eq_ref fofType) (x1 (g x2))) P1) as proof of ((P1 (x1 (g x2)))->(P1 (f x2)))
% Found (((eq_ref fofType) (x1 (g x2))) P1) as proof of ((P1 (x1 (g x2)))->(P1 (f x2)))
% Found (fun (P1:(fofType->Prop))=> (((eq_ref fofType) (x1 (g x2))) P1)) as proof of ((P1 (x1 (g x2)))->(P1 (f x2)))
% Found eq_ref000:=(eq_ref00 P1):((P1 (x1 (g x2)))->(P1 (x1 (g x2))))
% Found (eq_ref00 P1) as proof of ((P1 (x1 (g x2)))->(P1 (f x2)))
% Found ((eq_ref0 (x1 (g x2))) P1) as proof of ((P1 (x1 (g x2)))->(P1 (f x2)))
% Found (((eq_ref fofType) (x1 (g x2))) P1) as proof of ((P1 (x1 (g x2)))->(P1 (f x2)))
% Found (((eq_ref fofType) (x1 (g x2))) P1) as proof of ((P1 (x1 (g x2)))->(P1 (f x2)))
% Found (fun (P1:(fofType->Prop))=> (((eq_ref fofType) (x1 (g x2))) P1)) as proof of ((P1 (x1 (g x2)))->(P1 (f x2)))
% Found eq_ref000:=(eq_ref00 P1):((P1 (x1 (g x2)))->(P1 (x1 (g x2))))
% Found (eq_ref00 P1) as proof of ((P1 (x1 (g x2)))->(P1 (f x2)))
% Found ((eq_ref0 (x1 (g x2))) P1) as proof of ((P1 (x1 (g x2)))->(P1 (f x2)))
% Found (((eq_ref fofType) (x1 (g x2))) P1) as proof of ((P1 (x1 (g x2)))->(P1 (f x2)))
% Found (((eq_ref fofType) (x1 (g x2))) P1) as proof of ((P1 (x1 (g x2)))->(P1 (f x2)))
% Found (fun (P1:(fofType->Prop))=> (((eq_ref fofType) (x1 (g x2))) P1)) as proof of ((P1 (x1 (g x2)))->(P1 (f x2)))
% Found eq_ref000:=(eq_ref00 P1):((P1 (x1 (g x2)))->(P1 (x1 (g x2))))
% Found (eq_ref00 P1) as proof of ((P1 (x1 (g x2)))->(P1 (f x2)))
% Found ((eq_ref0 (x1 (g x2))) P1) as proof of ((P1 (x1 (g x2)))->(P1 (f x2)))
% Found (((eq_ref fofType) (x1 (g x2))) P1) as proof of ((P1 (x1 (g x2)))->(P1 (f x2)))
% Found (((eq_ref fofType) (x1 (g x2))) P1) as proof of ((P1 (x1 (g x2)))->(P1 (f x2)))
% Found (fun (P1:(fofType->Prop))=> (((eq_ref fofType) (x1 (g x2))) P1)) as proof of ((P1 (x1 (g x2)))->(P1 (f x2)))
% Found eq_ref00:=(eq_ref0 b):(((eq (fofType->fofType)) b) b)
% Found (eq_ref0 b) as proof of (((eq (fofType->fofType)) b) f)
% Found ((eq_ref (fofType->fofType)) b) as proof of (((eq (fofType->fofType)) b) f)
% Found ((eq_ref (fofType->fofType)) b) as proof of (((eq (fofType->fofType)) b) f)
% Found ((eq_ref (fofType->fofType)) b) as proof of (((eq (fofType->fofType)) b) f)
% Found eta_expansion000:=(eta_expansion00 (fun (Xx:fofType)=> (x1 (g Xx)))):(((eq (fofType->fofType)) (fun (Xx:fofType)=> (x1 (g Xx)))) (fun (x:fofType)=> (x1 (g x))))
% Found (eta_expansion00 (fun (Xx:fofType)=> (x1 (g Xx)))) as proof of (((eq (fofType->fofType)) (fun (Xx:fofType)=> (x1 (g Xx)))) b)
% Found ((eta_expansion0 fofType) (fun (Xx:fofType)=> (x1 (g Xx)))) as proof of (((eq (fofType->fofType)) (fun (Xx:fofType)=> (x1 (g Xx)))) b)
% Found (((eta_expansion fofType) fofType) (fun (Xx:fofType)=> (x1 (g Xx)))) as proof of (((eq (fofType->fofType)) (fun (Xx:fofType)=> (x1 (g Xx)))) b)
% Found (((eta_expansion fofType) fofType) (fun (Xx:fofType)=> (x1 (g Xx)))) as proof of (((eq (fofType->fofType)) (fun (Xx:fofType)=> (x1 (g Xx)))) b)
% Found (((eta_expansion fofType) fofType) (fun (Xx:fofType)=> (x1 (g Xx)))) as proof of (((eq (fofType->fofType)) (fun (Xx:fofType)=> (x1 (g Xx)))) b)
% Found eq_ref00:=(eq_ref0 (g x2)):(((eq fofType) (g x2)) (g x2))
% Found (eq_ref0 (g x2)) as proof of (((eq fofType) (g x2)) (g x2))
% Found ((eq_ref fofType) (g x2)) as proof of (((eq fofType) (g x2)) (g x2))
% Found ((eq_ref fofType) (g x2)) as proof of (((eq fofType) (g x2)) (g x2))
% Found (x0000 ((eq_ref fofType) (g x2))) as proof of ((P (x1 (g x2)))->(P (f x2)))
% Found (x0000 ((eq_ref fofType) (g x2))) as proof of ((P (x1 (g x2)))->(P (f x2)))
% Found ((fun (x3:(((eq fofType) (g x2)) (g x2)))=> ((x000 x3) P)) ((eq_ref fofType) (g x2))) as proof of ((P (x1 (g x2)))->(P (f x2)))
% Found ((fun (x3:(((eq fofType) (g x2)) (g x2)))=> (((x00 x2) x3) P)) ((eq_ref fofType) (g x2))) as proof of ((P (x1 (g x2)))->(P (f x2)))
% Found ((fun (x3:(((eq fofType) (g x2)) (g x2)))=> ((((x0 x2) x2) x3) P)) ((eq_ref fofType) (g x2))) as proof of ((P (x1 (g x2)))->(P (f x2)))
% Found ((fun (x3:(((eq fofType) (g x2)) (g x2)))=> ((((x0 x2) x2) x3) P)) ((eq_ref fofType) (g x2))) as proof of ((P (x1 (g x2)))->(P (f x2)))
% Found (fun (P:(fofType->Prop))=> ((fun (x3:(((eq fofType) (g x2)) (g x2)))=> ((((x0 x2) x2) x3) P)) ((eq_ref fofType) (g x2)))) as proof of ((P (x1 (g x2)))->(P (f x2)))
% Found eq_ref00:=(eq_ref0 (g x2)):(((eq fofType) (g x2)) (g x2))
% Found (eq_ref0 (g x2)) as proof of (((eq fofType) (g x2)) (g x2))
% Found ((eq_ref fofType) (g x2)) as proof of (((eq fofType) (g x2)) (g x2))
% Found ((eq_ref fofType) (g x2)) as proof of (((eq fofType) (g x2)) (g x2))
% Found (x0000 ((eq_ref fofType) (g x2))) as proof of ((P (x1 (g x2)))->(P (f x2)))
% Found (x0000 ((eq_ref fofType) (g x2))) as proof of ((P (x1 (g x2)))->(P (f x2)))
% Found ((fun (x3:(((eq fofType) (g x2)) (g x2)))=> ((x000 x3) (fun (x4:fofType)=> (P (x1 (g x2)))))) ((eq_ref fofType) (g x2))) as proof of ((P (x1 (g x2)))->(P (f x2)))
% Found ((fun (x3:(((eq fofType) (g x2)) (g x2)))=> (((x00 x2) x3) (fun (x4:fofType)=> (P (x1 (g x2)))))) ((eq_ref fofType) (g x2))) as proof of ((P (x1 (g x2)))->(P (f x2)))
% Found ((fun (x3:(((eq fofType) (g x2)) (g x2)))=> ((((x0 x2) x2) x3) (fun (x4:fofType)=> (P (x1 (g x2)))))) ((eq_ref fofType) (g x2))) as proof of ((P (x1 (g x2)))->(P (f x2)))
% Found ((fun (x3:(((eq fofType) (g x2)) (g x2)))=> ((((x0 x2) x2) x3) (fun (x4:fofType)=> (P (x1 (g x2)))))) ((eq_ref fofType) (g x2))) as proof of ((P (x1 (g x2)))->(P (f x2)))
% Found (fun (P:(fofType->Prop))=> ((fun (x3:(((eq fofType) (g x2)) (g x2)))=> ((((x0 x2) x2) x3) (fun (x4:fofType)=> (P (x1 (g x2)))))) ((eq_ref fofType) (g x2)))) as proof of ((P (x1 (g x2)))->(P (f x2)))
% Found eq_ref00:=(eq_ref0 (g x2)):(((eq fofType) (g x2)) (g x2))
% Found (eq_ref0 (g x2)) as proof of (((eq fofType) (g x2)) (g x2))
% Found ((eq_ref fofType) (g x2)) as proof of (((eq fofType) (g x2)) (g x2))
% Found ((eq_ref fofType) (g x2)) as proof of (((eq fofType) (g x2)) (g x2))
% Found (x0000 ((eq_ref fofType) (g x2))) as proof of ((P (x1 (g x2)))->(P (f x2)))
% Found (x0000 ((eq_ref fofType) (g x2))) as proof of ((P (x1 (g x2)))->(P (f x2)))
% Found ((fun (x3:(((eq fofType) (g x2)) (g x2)))=> ((x000 x3) (fun (x4:fofType)=> (P (x1 (g x2)))))) ((eq_ref fofType) (g x2))) as proof of ((P (x1 (g x2)))->(P (f x2)))
% Found ((fun (x3:(((eq fofType) (g x2)) (g x2)))=> (((x00 x2) x3) (fun (x4:fofType)=> (P (x1 (g x2)))))) ((eq_ref fofType) (g x2))) as proof of ((P (x1 (g x2)))->(P (f x2)))
% Found ((fun (x3:(((eq fofType) (g x2)) (g x2)))=> ((((x0 x2) x2) x3) (fun (x4:fofType)=> (P (x1 (g x2)))))) ((eq_ref fofType) (g x2))) as proof of ((P (x1 (g x2)))->(P (f x2)))
% Found ((fun (x3:(((eq fofType) (g x2)) (g x2)))=> ((((x0 x2) x2) x3) (fun (x4:fofType)=> (P (x1 (g x2)))))) ((eq_ref fofType) (g x2))) as proof of ((P (x1 (g x2)))->(P (f x2)))
% Found (fun (P:(fofType->Prop))=> ((fun (x3:(((eq fofType) (g x2)) (g x2)))=> ((((x0 x2) x2) x3) (fun (x4:fofType)=> (P (x1 (g x2)))))) ((eq_ref fofType) (g x2)))) as proof of ((P (x1 (g x2)))->(P (f x2)))
% Found eq_ref00:=(eq_ref0 (g x2)):(((eq fofType) (g x2)) (g x2))
% Found (eq_ref0 (g x2)) as proof of (((eq fofType) (g x2)) (g x2))
% Found ((eq_ref fofType) (g x2)) as proof of (((eq fofType) (g x2)) (g x2))
% Found ((eq_ref fofType) (g x2)) as proof of (((eq fofType) (g x2)) (g x2))
% Found (x0000 ((eq_ref fofType) (g x2))) as proof of ((P (x1 (g x2)))->(P (f x2)))
% Found (x0000 ((eq_ref fofType) (g x2))) as proof of ((P (x1 (g x2)))->(P (f x2)))
% Found ((fun (x3:(((eq fofType) (g x2)) (g x2)))=> ((x000 x3) P)) ((eq_ref fofType) (g x2))) as proof of ((P (x1 (g x2)))->(P (f x2)))
% Found ((fun (x3:(((eq fofType) (g x2)) (g x2)))=> (((x00 x2) x3) P)) ((eq_ref fofType) (g x2))) as proof of ((P (x1 (g x2)))->(P (f x2)))
% Found ((fun (x3:(((eq fofType) (g x2)) (g x2)))=> ((((x0 x2) x2) x3) P)) ((eq_ref fofType) (g x2))) as proof of ((P (x1 (g x2)))->(P (f x2)))
% Found ((fun (x3:(((eq fofType) (g x2)) (g x2)))=> ((((x0 x2) x2) x3) P)) ((eq_ref fofType) (g x2))) as proof of ((P (x1 (g x2)))->(P (f x2)))
% Found (fun (P:(fofType->Prop))=> ((fun (x3:(((eq fofType) (g x2)) (g x2)))=> ((((x0 x2) x2) x3) P)) ((eq_ref fofType) (g x2)))) as proof of ((P (x1 (g x2)))->(P (f x2)))
% Found eq_ref00:=(eq_ref0 (g x2)):(((eq fofType) (g x2)) (g x2))
% Found (eq_ref0 (g x2)) as proof of (((eq fofType) (g x2)) (g x2))
% Found ((eq_ref fofType) (g x2)) as proof of (((eq fofType) (g x2)) (g x2))
% Found ((eq_ref fofType) (g x2)) as proof of (((eq fofType) (g x2)) (g x2))
% Found (x0000 ((eq_ref fofType) (g x2))) as proof of ((P (x1 (g x2)))->(P (f x2)))
% Found (x0000 ((eq_ref fofType) (g x2))) as proof of ((P (x1 (g x2)))->(P (f x2)))
% Found ((fun (x3:(((eq fofType) (g x2)) (g x2)))=> ((x000 x3) P)) ((eq_ref fofType) (g x2))) as proof of ((P (x1 (g x2)))->(P (f x2)))
% Found ((fun (x3:(((eq fofType) (g x2)) (g x2)))=> (((x00 x2) x3) P)) ((eq_ref fofType) (g x2))) as proof of ((P (x1 (g x2)))->(P (f x2)))
% Found ((fun (x3:(((eq fofType) (g x2)) (g x2)))=> ((((x0 x2) x2) x3) P)) ((eq_ref fofType) (g x2))) as proof of ((P (x1 (g x2)))->(P (f x2)))
% Found ((fun (x3:(((eq fofType) (g x2)) (g x2)))=> ((((x0 x2) x2) x3) P)) ((eq_ref fofType) (g x2))) as proof of ((P (x1 (g x2)))->(P (f x2)))
% Found (fun (P:(fofType->Prop))=> ((fun (x3:(((eq fofType) (g x2)) (g x2)))=> ((((x0 x2) x2) x3) P)) ((eq_ref fofType) (g x2)))) as proof of ((P (x1 (g x2)))->(P (f x2)))
% Found eq_ref00:=(eq_ref0 (g x2)):(((eq fofType) (g x2)) (g x2))
% Found (eq_ref0 (g x2)) as proof of (((eq fofType) (g x2)) (g x2))
% Found ((eq_ref fofType) (g x2)) as proof of (((eq fofType) (g x2)) (g x2))
% Found ((eq_ref fofType) (g x2)) as proof of (((eq fofType) (g x2)) (g x2))
% Found (x0000 ((eq_ref fofType) (g x2))) as proof of ((P (x1 (g x2)))->(P (f x2)))
% Found (x0000 ((eq_ref fofType) (g x2))) as proof of ((P (x1 (g x2)))->(P (f x2)))
% Found ((fun (x3:(((eq fofType) (g x2)) (g x2)))=> ((x000 x3) (fun (x4:fofType)=> (P (x1 (g x2)))))) ((eq_ref fofType) (g x2))) as proof of ((P (x1 (g x2)))->(P (f x2)))
% Found ((fun (x3:(((eq fofType) (g x2)) (g x2)))=> (((x00 x2) x3) (fun (x4:fofType)=> (P (x1 (g x2)))))) ((eq_ref fofType) (g x2))) as proof of ((P (x1 (g x2)))->(P (f x2)))
% Found ((fun (x3:(((eq fofType) (g x2)) (g x2)))=> ((((x0 x2) x2) x3) (fun (x4:fofType)=> (P (x1 (g x2)))))) ((eq_ref fofType) (g x2))) as proof of ((P (x1 (g x2)))->(P (f x2)))
% Found ((fun (x3:(((eq fofType) (g x2)) (g x2)))=> ((((x0 x2) x2) x3) (fun (x4:fofType)=> (P (x1 (g x2)))))) ((eq_ref fofType) (g x2))) as proof of ((P (x1 (g x2)))->(P (f x2)))
% Found (fun (P:(fofType->Prop))=> ((fun (x3:(((eq fofType) (g x2)) (g x2)))=> ((((x0 x2) x2) x3) (fun (x4:fofType)=> (P (x1 (g x2)))))) ((eq_ref fofType) (g x2)))) as proof of ((P (x1 (g x2)))->(P (f x2)))
% Found eq_ref00:=(eq_ref0 (g x2)):(((eq fofType) (g x2)) (g x2))
% Found (eq_ref0 (g x2)) as proof of (((eq fofType) (g x2)) (g x2))
% Found ((eq_ref fofType) (g x2)) as proof of (((eq fofType) (g x2)) (g x2))
% Found ((eq_ref fofType) (g x2)) as proof of (((eq fofType) (g x2)) (g x2))
% Found (x0000 ((eq_ref fofType) (g x2))) as proof of ((P (x1 (g x2)))->(P (f x2)))
% Found (x0000 ((eq_ref fofType) (g x2))) as proof of ((P (x1 (g x2)))->(P (f x2)))
% Found ((fun (x3:(((eq fofType) (g x2)) (g x2)))=> ((x000 x3) (fun (x4:fofType)=> (P (x1 (g x2)))))) ((eq_ref fofType) (g x2))) as proof of ((P (x1 (g x2)))->(P (f x2)))
% Found ((fun (x3:(((eq fofType) (g x2)) (g x2)))=> (((x00 x2) x3) (fun (x4:fofType)=> (P (x1 (g x2)))))) ((eq_ref fofType) (g x2))) as proof of ((P (x1 (g x2)))->(P (f x2)))
% Found ((fun (x3:(((eq fofType) (g x2)) (g x2)))=> ((((x0 x2) x2) x3) (fun (x4:fofType)=> (P (x1 (g x2)))))) ((eq_ref fofType) (g x2))) as proof of ((P (x1 (g x2)))->(P (f x2)))
% Found ((fun (x3:(((eq fofType) (g x2)) (g x2)))=> ((((x0 x2) x2) x3) (fun (x4:fofType)=> (P (x1 (g x2)))))) ((eq_ref fofType) (g x2))) as proof of ((P (x1 (g x2)))->(P (f x2)))
% Found (fun (P:(fofType->Prop))=> ((fun (x3:(((eq fofType) (g x2)) (g x2)))=> ((((x0 x2) x2) x3) (fun (x4:fofType)=> (P (x1 (g x2)))))) ((eq_ref fofType) (g x2)))) as proof of ((P (x1 (g x2)))->(P (f x2)))
% Found eq_ref00:=(eq_ref0 (g x2)):(((eq fofType) (g x2)) (g x2))
% Found (eq_ref0 (g x2)) as proof of (((eq fofType) (g x2)) (g x2))
% Found ((eq_ref fofType) (g x2)) as proof of (((eq fofType) (g x2)) (g x2))
% Found ((eq_ref fofType) (g x2)) as proof of (((eq fofType) (g x2)) (g x2))
% Found (x0000 ((eq_ref fofType) (g x2))) as proof of ((P (x1 (g x2)))->(P (f x2)))
% Found (x0000 ((eq_ref fofType) (g x2))) as proof of ((P (x1 (g x2)))->(P (f x2)))
% Found ((fun (x3:(((eq fofType) (g x2)) (g x2)))=> ((x000 x3) P)) ((eq_ref fofType) (g x2))) as proof of ((P (x1 (g x2)))->(P (f x2)))
% Found ((fun (x3:(((eq fofType) (g x2)) (g x2)))=> (((x00 x2) x3) P)) ((eq_ref fofType) (g x2))) as proof of ((P (x1 (g x2)))->(P (f x2)))
% Found ((fun (x3:(((eq fofType) (g x2)) (g x2)))=> ((((x0 x2) x2) x3) P)) ((eq_ref fofType) (g x2))) as proof of ((P (x1 (g x2)))->(P (f x2)))
% Found ((fun (x3:(((eq fofType) (g x2)) (g x2)))=> ((((x0 x2) x2) x3) P)) ((eq_ref fofType) (g x2))) as proof of ((P (x1 (g x2)))->(P (f x2)))
% Found (fun (P:(fofType->Prop))=> ((fun (x3:(((eq fofType) (g x2)) (g x2)))=> ((((x0 x2) x2) x3) P)) ((eq_ref fofType) (g x2)))) as proof of ((P (x1 (g x2)))->(P (f x2)))
% Found eq_ref00:=(eq_ref0 (x1 (g x3))):(((eq fofType) (x1 (g x3))) (x1 (g x3)))
% Found (eq_ref0 (x1 (g x3))) as proof of (((eq fofType) (x1 (g x3))) (f x2))
% Found ((eq_ref fofType) (x1 (g x3))) as proof of (((eq fofType) (x1 (g x3))) (f x2))
% Found (fun (x3:fofType)=> ((eq_ref fofType) (x1 (g x3)))) as proof of (((eq fofType) (x1 (g x3))) (f x2))
% Found (fun (x3:fofType)=> ((eq_ref fofType) (x1 (g x3)))) as proof of (forall (x:fofType), (((eq fofType) (x1 (g x))) (f x2)))
% Found (functional_extensionality00010 (fun (x3:fofType)=> ((eq_ref fofType) (x1 (g x3))))) as proof of ((P (x1 (g x2)))->(P (f x2)))
% Found (functional_extensionality00010 (fun (x3:fofType)=> ((eq_ref fofType) (x1 (g x3))))) as proof of ((P (x1 (g x2)))->(P (f x2)))
% Found ((fun (x3:(forall (x:fofType), (((eq fofType) (x1 (g x))) (f x2))))=> ((functional_extensionality0001 x3) (fun (x4:(fofType->fofType))=> (P (x1 (g x2)))))) (fun (x3:fofType)=> ((eq_ref fofType) (x1 (g x3))))) as proof of ((P (x1 (g x2)))->(P (f x2)))
% Found ((fun (x3:(forall (x:fofType), (((eq fofType) (x1 (g x))) (f x2))))=> (((functional_extensionality000 (fun (x5:fofType)=> (f x2))) x3) (fun (x4:(fofType->fofType))=> (P (x1 (g x2)))))) (fun (x3:fofType)=> ((eq_ref fofType) (x1 (g x3))))) as proof of ((P (x1 (g x2)))->(P (f x2)))
% Found ((fun (x3:(forall (x:fofType), (((eq fofType) (x1 (g x))) (f x2))))=> (((functional_extensionality000 (fun (x5:fofType)=> (f x2))) x3) (fun (x4:(fofType->fofType))=> (P (x1 (g x2)))))) (fun (x3:fofType)=> ((eq_ref fofType) (x1 (g x3))))) as proof of ((P (x1 (g x2)))->(P (f x2)))
% Found (fun (P:(fofType->Prop))=> ((fun (x3:(forall (x:fofType), (((eq fofType) (x1 (g x))) (f x2))))=> (((functional_extensionality000 (fun (x5:fofType)=> (f x2))) x3) (fun (x4:(fofType->fofType))=> (P (x1 (g x2)))))) (fun (x3:fofType)=> ((eq_ref fofType) (x1 (g x3)))))) as proof of ((P (x1 (g x2)))->(P (f x2)))
% Found eq_ref00:=(eq_ref0 (x1 (g x3))):(((eq fofType) (x1 (g x3))) (x1 (g x3)))
% Found (eq_ref0 (x1 (g x3))) as proof of (((eq fofType) (x1 (g x3))) (f x2))
% Found ((eq_ref fofType) (x1 (g x3))) as proof of (((eq fofType) (x1 (g x3))) (f x2))
% Found (fun (x3:fofType)=> ((eq_ref fofType) (x1 (g x3)))) as proof of (((eq fofType) (x1 (g x3))) (f x2))
% Found (fun (x3:fofType)=> ((eq_ref fofType) (x1 (g x3)))) as proof of (forall (x:fofType), (((eq fofType) (x1 (g x))) (f x2)))
% Found (functional_extensionality00010 (fun (x3:fofType)=> ((eq_ref fofType) (x1 (g x3))))) as proof of ((P (x1 (g x2)))->(P (f x2)))
% Found (functional_extensionality00010 (fun (x3:fofType)=> ((eq_ref fofType) (x1 (g x3))))) as proof of ((P (x1 (g x2)))->(P (f x2)))
% Found ((fun (x3:(forall (x:fofType), (((eq fofType) (x1 (g x))) (f x2))))=> ((functional_extensionality0001 x3) (fun (x4:(fofType->fofType))=> (P (x4 (g x2)))))) (fun (x3:fofType)=> ((eq_ref fofType) (x1 (g x3))))) as proof of ((P (x1 (g x2)))->(P (f x2)))
% Found ((fun (x3:(forall (x:fofType), (((eq fofType) (x1 (g x))) (f x2))))=> (((functional_extensionality000 (fun (x5:fofType)=> (f x2))) x3) (fun (x4:(fofType->fofType))=> (P (x4 (g x2)))))) (fun (x3:fofType)=> ((eq_ref fofType) (x1 (g x3))))) as proof of ((P (x1 (g x2)))->(P (f x2)))
% Found ((fun (x3:(forall (x:fofType), (((eq fofType) (x1 (g x))) (f x2))))=> (((functional_extensionality000 (fun (x5:fofType)=> (f x2))) x3) (fun (x4:(fofType->fofType))=> (P (x4 (g x2)))))) (fun (x3:fofType)=> ((eq_ref fofType) (x1 (g x3))))) as proof of ((P (x1 (g x2)))->(P (f x2)))
% Found (fun (P:(fofType->Prop))=> ((fun (x3:(forall (x:fofType), (((eq fofType) (x1 (g x))) (f x2))))=> (((functional_extensionality000 (fun (x5:fofType)=> (f x2))) x3) (fun (x4:(fofType->fofType))=> (P (x4 (g x2)))))) (fun (x3:fofType)=> ((eq_ref fofType) (x1 (g x3)))))) as proof of ((P (x1 (g x2)))->(P (f x2)))
% Found eq_ref00:=(eq_ref0 (x1 (g x3))):(((eq fofType) (x1 (g x3))) (x1 (g x3)))
% Found (eq_ref0 (x1 (g x3))) as proof of (((eq fofType) (x1 (g x3))) (f x2))
% Found ((eq_ref fofType) (x1 (g x3))) as proof of (((eq fofType) (x1 (g x3))) (f x2))
% Found (fun (x3:fofType)=> ((eq_ref fofType) (x1 (g x3)))) as proof of (((eq fofType) (x1 (g x3))) (f x2))
% Found (fun (x3:fofType)=> ((eq_ref fofType) (x1 (g x3)))) as proof of (forall (x:fofType), (((eq fofType) (x1 (g x))) (f x2)))
% Found (functional_extensionality_dep00010 (fun (x3:fofType)=> ((eq_ref fofType) (x1 (g x3))))) as proof of ((P (x1 (g x2)))->(P (f x2)))
% Found (functional_extensionality_dep00010 (fun (x3:fofType)=> ((eq_ref fofType) (x1 (g x3))))) as proof of ((P (x1 (g x2)))->(P (f x2)))
% Found ((fun (x3:(forall (x:fofType), (((eq fofType) (x1 (g x))) (f x2))))=> ((functional_extensionality_dep0001 x3) (fun (x4:(fofType->fofType))=> (P (x4 (g x2)))))) (fun (x3:fofType)=> ((eq_ref fofType) (x1 (g x3))))) as proof of ((P (x1 (g x2)))->(P (f x2)))
% Found ((fun (x3:(forall (x:fofType), (((eq fofType) (x1 (g x))) (f x2))))=> (((functional_extensionality_dep000 (fun (x5:fofType)=> (f x2))) x3) (fun (x4:(fofType->fofType))=> (P (x4 (g x2)))))) (fun (x3:fofType)=> ((eq_ref fofType) (x1 (g x3))))) as proof of ((P (x1 (g x2)))->(P (f x2)))
% Found ((fun (x3:(forall (x:fofType), (((eq fofType) (x1 (g x))) (f x2))))=> (((functional_extensionality_dep000 (fun (x5:fofType)=> (f x2))) x3) (fun (x4:(fofType->fofType))=> (P (x4 (g x2)))))) (fun (x3:fofType)=> ((eq_ref fofType) (x1 (g x3))))) as proof of ((P (x1 (g x2)))->(P (f x2)))
% Found (fun (P:(fofType->Prop))=> ((fun (x3:(forall (x:fofType), (((eq fofType) (x1 (g x))) (f x2))))=> (((functional_extensionality_dep000 (fun (x5:fofType)=> (f x2))) x3) (fun (x4:(fofType->fofType))=> (P (x4 (g x2)))))) (fun (x3:fofType)=> ((eq_ref fofType) (x1 (g x3)))))) as proof of ((P (x1 (g x2)))->(P (f x2)))
% Found eq_ref00:=(eq_ref0 (x1 (g x3))):(((eq fofType) (x1 (g x3))) (x1 (g x3)))
% Found (eq_ref0 (x1 (g x3))) as proof of (((eq fofType) (x1 (g x3))) (f x2))
% Found ((eq_ref fofType) (x1 (g x3))) as proof of (((eq fofType) (x1 (g x3))) (f x2))
% Found (fun (x3:fofType)=> ((eq_ref fofType) (x1 (g x3)))) as proof of (((eq fofType) (x1 (g x3))) (f x2))
% Found (fun (x3:fofType)=> ((eq_ref fofType) (x1 (g x3)))) as proof of (forall (x:fofType), (((eq fofType) (x1 (g x))) (f x2)))
% Found (functional_extensionality_dep00010 (fun (x3:fofType)=> ((eq_ref fofType) (x1 (g x3))))) as proof of ((P (x1 (g x2)))->(P (f x2)))
% Found (functional_extensionality_dep00010 (fun (x3:fofType)=> ((eq_ref fofType) (x1 (g x3))))) as proof of ((P (x1 (g x2)))->(P (f x2)))
% Found ((fun (x3:(forall (x:fofType), (((eq fofType) (x1 (g x))) (f x2))))=> ((functional_extensionality_dep0001 x3) (fun (x4:(fofType->fofType))=> (P (x1 (g x2)))))) (fun (x3:fofType)=> ((eq_ref fofType) (x1 (g x3))))) as proof of ((P (x1 (g x2)))->(P (f x2)))
% Found ((fun (x3:(forall (x:fofType), (((eq fofType) (x1 (g x))) (f x2))))=> (((functional_extensionality_dep000 (fun (x5:fofType)=> (f x2))) x3) (fun (x4:(fofType->fofType))=> (P (x1 (g x2)))))) (fun (x3:fofType)=> ((eq_ref fofType) (x1 (g x3))))) as proof of ((P (x1 (g x2)))->(P (f x2)))
% Found ((fun (x3:(forall (x:fofType), (((eq fofType) (x1 (g x))) (f x2))))=> (((functional_extensionality_dep000 (fun (x5:fofType)=> (f x2))) x3) (fun (x4:(fofType->fofType))=> (P (x1 (g x2)))))) (fun (x3:fofType)=> ((eq_ref fofType) (x1 (g x3))))) as proof of ((P (x1 (g x2)))->(P (f x2)))
% Found (fun (P:(fofType->Prop))=> ((fun (x3:(forall (x:fofType), (((eq fofType) (x1 (g x))) (f x2))))=> (((functional_extensionality_dep000 (fun (x5:fofType)=> (f x2))) x3) (fun (x4:(fofType->fofType))=> (P (x1 (g x2)))))) (fun (x3:fofType)=> ((eq_ref fofType) (x1 (g x3)))))) as proof of ((P (x1 (g x2)))->(P (f x2)))
% Found eq_ref00:=(eq_ref0 (g x2)):(((eq fofType) (g x2)) (g x2))
% Found (eq_ref0 (g x2)) as proof of (((eq fofType) (g x2)) (g x2))
% Found ((eq_ref fofType) (g x2)) as proof of (((eq fofType) (g x2)) (g x2))
% Found ((eq_ref fofType) (g x2)) as proof of (((eq fofType) (g x2)) (g x2))
% Found (x0000 ((eq_ref fofType) (g x2))) as proof of ((P (x1 (g x2)))->(P (f x2)))
% Found (x0000 ((eq_ref fofType) (g x2))) as proof of ((P (x1 (g x2)))->(P (f x2)))
% Found ((fun (x3:(((eq fofType) (g x2)) (g x2)))=> ((x000 x3) (fun (x4:fofType)=> (P (x1 (g x2)))))) ((eq_ref fofType) (g x2))) as proof of ((P (x1 (g x2)))->(P (f x2)))
% Found ((fun (x3:(((eq fofType) (g x2)) (g x2)))=> (((x00 x2) x3) (fun (x4:fofType)=> (P (x1 (g x2)))))) ((eq_ref fofType) (g x2))) as proof of ((P (x1 (g x2)))->(P (f x2)))
% Found ((fun (x3:(((eq fofType) (g x2)) (g x2)))=> ((((fun (Xx:fofType)=> ((x0 Xx) x2)) x2) x3) (fun (x4:fofType)=> (P (x1 (g x2)))))) ((eq_ref fofType) (g x2))) as proof of ((P (x1 (g x2)))->(P (f x2)))
% Found ((fun (x3:(((eq fofType) (g x2)) (g x2)))=> ((((fun (Xx:fofType)=> ((x0 Xx) x2)) x2) x3) (fun (x4:fofType)=> (P (x1 (g x2)))))) ((eq_ref fofType) (g x2))) as proof of ((P (x1 (g x2)))->(P (f x2)))
% Found (fun (P:(fofType->Prop))=> ((fun (x3:(((eq fofType) (g x2)) (g x2)))=> ((((fun (Xx:fofType)=> ((x0 Xx) x2)) x2) x3) (fun (x4:fofType)=> (P (x1 (g x2)))))) ((eq_ref fofType) (g x2)))) as proof of ((P (x1 (g x2)))->(P (f x2)))
% Found eq_ref00:=(eq_ref0 (g x2)):(((eq fofType) (g x2)) (g x2))
% Found (eq_ref0 (g x2)) as proof of (((eq fofType) (g x2)) (g x2))
% Found ((eq_ref fofType) (g x2)) as proof of (((eq fofType) (g x2)) (g x2))
% Found ((eq_ref fofType) (g x2)) as proof of (((eq fofType) (g x2)) (g x2))
% Found (x0000 ((eq_ref fofType) (g x2))) as proof of ((P (x1 (g x2)))->(P (f x2)))
% Found (x0000 ((eq_ref fofType) (g x2))) as proof of ((P (x1 (g x2)))->(P (f x2)))
% Found ((fun (x3:(((eq fofType) (g x2)) (g x2)))=> ((x000 x3) P)) ((eq_ref fofType) (g x2))) as proof of ((P (x1 (g x2)))->(P (f x2)))
% Found ((fun (x3:(((eq fofType) (g x2)) (g x2)))=> (((x00 x2) x3) P)) ((eq_ref fofType) (g x2))) as proof of ((P (x1 (g x2)))->(P (f x2)))
% Found ((fun (x3:(((eq fofType) (g x2)) (g x2)))=> ((((fun (Xx:fofType)=> ((x0 Xx) x2)) x2) x3) P)) ((eq_ref fofType) (g x2))) as proof of ((P (x1 (g x2)))->(P (f x2)))
% Found ((fun (x3:(((eq fofType) (g x2)) (g x2)))=> ((((fun (Xx:fofType)=> ((x0 Xx) x2)) x2) x3) P)) ((eq_ref fofType) (g x2))) as proof of ((P (x1 (g x2)))->(P (f x2)))
% Found (fun (P:(fofType->Prop))=> ((fun (x3:(((eq fofType) (g x2)) (g x2)))=> ((((fun (Xx:fofType)=> ((x0 Xx) x2)) x2) x3) P)) ((eq_ref fofType) (g x2)))) as proof of ((P (x1 (g x2)))->(P (f x2)))
% Found eq_ref00:=(eq_ref0 (g x2)):(((eq fofType) (g x2)) (g x2))
% Found (eq_ref0 (g x2)) as proof of (((eq fofType) (g x2)) (g x2))
% Found ((eq_ref fofType) (g x2)) as proof of (((eq fofType) (g x2)) (g x2))
% Found ((eq_ref fofType) (g x2)) as proof of (((eq fofType) (g x2)) (g x2))
% Found (x0000 ((eq_ref fofType) (g x2))) as proof of ((P (x1 (g x2)))->(P (f x2)))
% Found (x0000 ((eq_ref fofType) (g x2))) as proof of ((P (x1 (g x2)))->(P (f x2)))
% Found ((fun (x3:(((eq fofType) (g x2)) (g x2)))=> ((x000 x3) P)) ((eq_ref fofType) (g x2))) as proof of ((P (x1 (g x2)))->(P (f x2)))
% Found ((fun (x3:(((eq fofType) (g x2)) (g x2)))=> (((x00 x2) x3) P)) ((eq_ref fofType) (g x2))) as proof of ((P (x1 (g x2)))->(P (f x2)))
% Found ((fun (x3:(((eq fofType) (g x2)) (g x2)))=> (((x00 x2) x3) P)) ((eq_ref fofType) (g x2))) as proof of ((P (x1 (g x2)))->(P (f x2)))
% Found ((fun (x3:(((eq fofType) (g x2)) (g x2)))=> ((((fun (Xx:fofType)=> ((x0 Xx) x2)) x2) x3) P)) ((eq_ref fofType) (g x2))) as proof of ((P (x1 (g x2)))->(P (f x2)))
% Found (fun (P:(fofType->Prop))=> ((fun (x3:(((eq fofType) (g x2)) (g x2)))=> ((((fun (Xx:fofType)=> ((x0 Xx) x2)) x2) x3) P)) ((eq_ref fofType) (g x2)))) as proof of ((P (x1 (g x2)))->(P (f x2)))
% Found eq_ref00:=(eq_ref0 (g x2)):(((eq fofType) (g x2)) (g x2))
% Found (eq_ref0 (g x2)) as proof of (((eq fofType) (g x2)) (g x2))
% Found ((eq_ref fofType) (g x2)) as proof of (((eq fofType) (g x2)) (g x2))
% Found ((eq_ref fofType) (g x2)) as proof of (((eq fofType) (g x2)) (g x2))
% Found (x0000 ((eq_ref fofType) (g x2))) as proof of ((P (x1 (g x2)))->(P (f x2)))
% Found (x0000 ((eq_ref fofType) (g x2))) as proof of ((P (x1 (g x2)))->(P (f x2)))
% Found ((fun (x3:(((eq fofType) (g x2)) (g x2)))=> ((x000 x3) (fun (x4:fofType)=> (P (x1 (g x2)))))) ((eq_ref fofType) (g x2))) as proof of ((P (x1 (g x2)))->(P (f x2)))
% Found ((fun (x3:(((eq fofType) (g x2)) (g x2)))=> (((x00 x2) x3) (fun (x4:fofType)=> (P (x1 (g x2)))))) ((eq_ref fofType) (g x2))) as proof of ((P (x1 (g x2)))->(P (f x2)))
% Found ((fun (x3:(((eq fofType) (g x2)) (g x2)))=> (((x00 x2) x3) (fun (x4:fofType)=> (P (x1 (g x2)))))) ((eq_ref fofType) (g x2))) as proof of ((P (x1 (g x2)))->(P (f x2)))
% Found ((fun (x3:(((eq fofType) (g x2)) (g x2)))=> ((((fun (Xx:fofType)=> ((x0 Xx) x2)) x2) x3) (fun (x4:fofType)=> (P (x1 (g x2)))))) ((eq_ref fofType) (g x2))) as proof of ((P (x1 (g x2)))->(P (f x2)))
% Found (fun (P:(fofType->Prop))=> ((fun (x3:(((eq fofType) (g x2)) (g x2)))=> ((((fun (Xx:fofType)=> ((x0 Xx) x2)) x2) x3) (fun (x4:fofType)=> (P (x1 (g x2)))))) ((eq_ref fofType) (g x2)))) as proof of ((P (x1 (g x2)))->(P (f x2)))
% Found eq_ref00:=(eq_ref0 (g x2)):(((eq fofType) (g x2)) (g x2))
% Found (eq_ref0 (g x2)) as proof of (((eq fofType) (g x2)) (g x2))
% Found ((eq_ref fofType) (g x2)) as proof of (((eq fofType) (g x2)) (g x2))
% Found ((eq_ref fofType) (g x2)) as proof of (((eq fofType) (g x2)) (g x2))
% Found (x0000 ((eq_ref fofType) (g x2))) as proof of ((P (x1 (g x2)))->(P (f x2)))
% Found (x0000 ((eq_ref fofType) (g x2))) as proof of ((P (x1 (g x2)))->(P (f x2)))
% Found ((fun (x3:(((eq fofType) (g x2)) (g x2)))=> ((x000 x3) (fun (x4:fofType)=> (P (x1 (g x2)))))) ((eq_ref fofType) (g x2))) as proof of ((P (x1 (g x2)))->(P (f x2)))
% Found ((fun (x3:(((eq fofType) (g x2)) (g x2)))=> (((x00 x2) x3) (fun (x4:fofType)=> (P (x1 (g x2)))))) ((eq_ref fofType) (g x2))) as proof of ((P (x1 (g x2)))->(P (f x2)))
% Found ((fun (x3:(((eq fofType) (g x2)) (g x2)))=> ((((fun (Xx:fofType)=> ((x0 Xx) x2)) x2) x3) (fun (x4:fofType)=> (P (x1 (g x2)))))) ((eq_ref fofType) (g x2))) as proof of ((P (x1 (g x2)))->(P (f x2)))
% Found ((fun (x3:(((eq fofType) (g x2)) (g x2)))=> ((((fun (Xx:fofType)=> ((x0 Xx) x2)) x2) x3) (fun (x4:fofType)=> (P (x1 (g x2)))))) ((eq_ref fofType) (g x2))) as proof of ((P (x1 (g x2)))->(P (f x2)))
% Found (fun (P:(fofType->Prop))=> ((fun (x3:(((eq fofType) (g x2)) (g x2)))=> ((((fun (Xx:fofType)=> ((x0 Xx) x2)) x2) x3) (fun (x4:fofType)=> (P (x1 (g x2)))))) ((eq_ref fofType) (g x2)))) as proof of ((P (x1 (g x2)))->(P (f x2)))
% Found eq_ref00:=(eq_ref0 (g x2)):(((eq fofType) (g x2)) (g x2))
% Found (eq_ref0 (g x2)) as proof of (((eq fofType) (g x2)) (g x2))
% Found ((eq_ref fofType) (g x2)) as proof of (((eq fofType) (g x2)) (g x2))
% Found ((eq_ref fofType) (g x2)) as proof of (((eq fofType) (g x2)) (g x2))
% Found (x0000 ((eq_ref fofType) (g x2))) as proof of ((P (x1 (g x2)))->(P (f x2)))
% Found (x0000 ((eq_ref fofType) (g x2))) as proof of ((P (x1 (g x2)))->(P (f x2)))
% Found ((fun (x3:(((eq fofType) (g x2)) (g x2)))=> ((x000 x3) P)) ((eq_ref fofType) (g x2))) as proof of ((P (x1 (g x2)))->(P (f x2)))
% Found ((fun (x3:(((eq fofType) (g x2)) (g x2)))=> (((x00 x2) x3) P)) ((eq_ref fofType) (g x2))) as proof of ((P (x1 (g x2)))->(P (f x2)))
% Found ((fun (x3:(((eq fofType) (g x2)) (g x2)))=> ((((fun (Xx:fofType)=> ((x0 Xx) x2)) x2) x3) P)) ((eq_ref fofType) (g x2))) as proof of ((P (x1 (g x2)))->(P (f x2)))
% Found ((fun (x3:(((eq fofType) (g x2)) (g x2)))=> ((((fun (Xx:fofType)=> ((x0 Xx) x2)) x2) x3) P)) ((eq_ref fofType) (g x2))) as proof of ((P (x1 (g x2)))->(P (f x2)))
% Found (fun (P:(fofType->Prop))=> ((fun (x3:(((eq fofType) (g x2)) (g x2)))=> ((((fun (Xx:fofType)=> ((x0 Xx) x2)) x2) x3) P)) ((eq_ref fofType) (g x2)))) as proof of ((P (x1 (g x2)))->(P (f x2)))
% Found eq_ref00:=(eq_ref0 (g x2)):(((eq fofType) (g x2)) (g x2))
% Found (eq_ref0 (g x2)) as proof of (((eq fofType) (g x2)) (g x2))
% Found ((eq_ref fofType) (g x2)) as proof of (((eq fofType) (g x2)) (g x2))
% Found ((eq_ref fofType) (g x2)) as proof of (((eq fofType) (g x2)) (g x2))
% Found (x0000 ((eq_ref fofType) (g x2))) as proof of ((P (x1 (g x2)))->(P (f x2)))
% Found (x0000 ((eq_ref fofType) (g x2))) as proof of ((P (x1 (g x2)))->(P (f x2)))
% Found ((fun (x3:(((eq fofType) (g x2)) (g x2)))=> ((x000 x3) P)) ((eq_ref fofType) (g x2))) as proof of ((P (x1 (g x2)))->(P (f x2)))
% Found ((fun (x3:(((eq fofType) (g x2)) (g x2)))=> (((x00 x2) x3) P)) ((eq_ref fofType) (g x2))) as proof of ((P (x1 (g x2)))->(P (f x2)))
% Found ((fun (x3:(((eq fofType) (g x2)) (g x2)))=> (((x00 x2) x3) P)) ((eq_ref fofType) (g x2))) as proof of ((P (x1 (g x2)))->(P (f x2)))
% Found ((fun (x3:(((eq fofType) (g x2)) (g x2)))=> ((((fun (Xx:fofType)=> ((x0 Xx) x2)) x2) x3) P)) ((eq_ref fofType) (g x2))) as proof of ((P (x1 (g x2)))->(P (f x2)))
% Found (fun (P:(fofType->Prop))=> ((fun (x3:(((eq fofType) (g x2)) (g x2)))=> ((((fun (Xx:fofType)=> ((x0 Xx) x2)) x2) x3) P)) ((eq_ref fofType) (g x2)))) as proof of ((P (x1 (g x2)))->(P (f x2)))
% Found eq_ref00:=(eq_ref0 (g x2)):(((eq fofType) (g x2)) (g x2))
% Found (eq_ref0 (g x2)) as proof of (((eq fofType) (g x2)) (g x2))
% Found ((eq_ref fofType) (g x2)) as proof of (((eq fofType) (g x2)) (g x2))
% Found ((eq_ref fofType) (g x2)) as proof of (((eq fofType) (g x2)) (g x2))
% Found (x0000 ((eq_ref fofType) (g x2))) as proof of ((P (x1 (g x2)))->(P (f x2)))
% Found (x0000 ((eq_ref fofType) (g x2))) as proof of ((P (x1 (g x2)))->(P (f x2)))
% Found ((fun (x3:(((eq fofType) (g x2)) (g x2)))=> ((x000 x3) (fun (x4:fofType)=> (P (x1 (g x2)))))) ((eq_ref fofType) (g x2))) as proof of ((P (x1 (g x2)))->(P (f x2)))
% Found ((fun (x3:(((eq fofType) (g x2)) (g x2)))=> (((x00 x2) x3) (fun (x4:fofType)=> (P (x1 (g x2)))))) ((eq_ref fofType) (g x2))) as proof of ((P (x1 (g x2)))->(P (f x2)))
% Found ((fun (x3:(((eq fofType) (g x2)) (g x2)))=> (((x00 x2) x3) (fun (x4:fofType)=> (P (x1 (g x2)))))) ((eq_ref fofType) (g x2))) as proof of ((P (x1 (g x2)))->(P (f x2)))
% Found ((fun (x3:(((eq fofType) (g x2)) (g x2)))=> ((((fun (Xx:fofType)=> ((x0 Xx) x2)) x2) x3) (fun (x4:fofType)=> (P (x1 (g x2)))))) ((eq_ref fofType) (g x2))) as proof of ((P (x1 (g x2)))->(P (f x2)))
% Found (fun (P:(fofType->Prop))=> ((fun (x3:(((eq fofType) (g x2)) (g x2)))=> ((((fun (Xx:fofType)=> ((x0 Xx) x2)) x2) x3) (fun (x4:fofType)=> (P (x1 (g x2)))))) ((eq_ref fofType) (g x2)))) as proof of ((P (x1 (g x2)))->(P (f x2)))
% 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)) f) P) as proof of (P0 f)
% Found (((eq_ref (fofType->fofType)) 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)) f) P) as proof of (P0 f)
% Found (((eq_ref (fofType->fofType)) f) P) as proof of (P0 f)
% Found eq_ref000:=(eq_ref00 P):((P (x1 (g x2)))->(P (x1 (g x2))))
% Found (eq_ref00 P) as proof of (P0 (x1 (g x2)))
% Found ((eq_ref0 (x1 (g x2))) P) as proof of (P0 (x1 (g x2)))
% Found (((eq_ref fofType) (x1 (g x2))) P) as proof of (P0 (x1 (g x2)))
% Found (((eq_ref fofType) (x1 (g x2))) P) as proof of (P0 (x1 (g x2)))
% Found eq_ref000:=(eq_ref00 P):((P (x1 (g x2)))->(P (x1 (g x2))))
% Found (eq_ref00 P) as proof of (P0 (x1 (g x2)))
% Found ((eq_ref0 (x1 (g x2))) P) as proof of (P0 (x1 (g x2)))
% Found (((eq_ref fofType) (x1 (g x2))) P) as proof of (P0 (x1 (g x2)))
% Found (((eq_ref fofType) (x1 (g x2))) P) as proof of (P0 (x1 (g x2)))
% Found eq_ref00:=(eq_ref0 (x1 (g x2))):(((eq fofType) (x1 (g x2))) (x1 (g x2)))
% Found (eq_ref0 (x1 (g x2))) as proof of (((eq fofType) (x1 (g x2))) (b x2))
% Found ((eq_ref fofType) (x1 (g x2))) as proof of (((eq fofType) (x1 (g x2))) (b x2))
% Found ((eq_ref fofType) (x1 (g x2))) as proof of (((eq fofType) (x1 (g x2))) (b x2))
% Found eq_ref00:=(eq_ref0 (x1 (g x2))):(((eq fofType) (x1 (g x2))) (x1 (g x2)))
% Found (eq_ref0 (x1 (g x2))) as proof of (((eq fofType) (x1 (g x2))) (b x2))
% Found ((eq_ref fofType) (x1 (g x2))) as proof of (((eq fofType) (x1 (g x2))) (b x2))
% Found ((eq_ref fofType) (x1 (g x2))) as proof of (((eq fofType) (x1 (g x2))) (b x2))
% Found eq_ref00:=(eq_ref0 b):(((eq (fofType->fofType)) b) b)
% Found (eq_ref0 b) as proof of (((eq (fofType->fofType)) b) (fun (Xx:fofType)=> (x1 (g Xx))))
% Found ((eq_ref (fofType->fofType)) b) as proof of (((eq (fofType->fofType)) b) (fun (Xx:fofType)=> (x1 (g Xx))))
% Found ((eq_ref (fofType->fofType)) b) as proof of (((eq (fofType->fofType)) b) (fun (Xx:fofType)=> (x1 (g Xx))))
% Found ((eq_ref (fofType->fofType)) b) as proof of (((eq (fofType->fofType)) b) (fun (Xx:fofType)=> (x1 (g Xx))))
% Found eq_ref00:=(eq_ref0 f):(((eq (fofType->fofType)) f) f)
% Found (eq_ref0 f) as proof of (((eq (fofType->fofType)) f) b)
% Found ((eq_ref (fofType->fofType)) f) as proof of (((eq (fofType->fofType)) f) b)
% Found ((eq_ref (fofType->fofType)) f) as proof of (((eq (fofType->fofType)) f) b)
% Found ((eq_ref (fofType->fofType)) f) as proof of (((eq (fofType->fofType)) f) b)
% Found eq_ref000:=(eq_ref00 P):((P (x1 (g x2)))->(P (x1 (g x2))))
% Found (eq_ref00 P) as proof of ((P (x1 (g x2)))->(P (b x2)))
% Found ((eq_ref0 (x1 (g x2))) P) as proof of ((P (x1 (g x2)))->(P (b x2)))
% Found (((eq_ref fofType) (x1 (g x2))) P) as proof of ((P (x1 (g x2)))->(P (b x2)))
% Found (((eq_ref fofType) (x1 (g x2))) P) as proof of ((P (x1 (g x2)))->(P (b x2)))
% Found (fun (P:(fofType->Prop))=> (((eq_ref fofType) (x1 (g x2))) P)) as proof of ((P (x1 (g x2)))->(P (b x2)))
% Found eq_ref000:=(eq_ref00 P):((P (x1 (g x2)))->(P (x1 (g x2))))
% Found (eq_ref00 P) as proof of ((P (x1 (g x2)))->(P (b x2)))
% Found ((eq_ref0 (x1 (g x2))) P) as proof of ((P (x1 (g x2)))->(P (b x2)))
% Found (((eq_ref fofType) (x1 (g x2))) P) as proof of ((P (x1 (g x2)))->(P (b x2)))
% Found (((eq_ref fofType) (x1 (g x2))) P) as proof of ((P (x1 (g x2)))->(P (b x2)))
% Found (fun (P:(fofType->Prop))=> (((eq_ref fofType) (x1 (g x2))) P)) as proof of ((P (x1 (g x2)))->(P (b x2)))
% Found eq_ref00:=(eq_ref0 (x1 (g x2))):(((eq fofType) (x1 (g x2))) (x1 (g x2)))
% Found (eq_ref0 (x1 (g x2))) as proof of (((eq fofType) (x1 (g x2))) b)
% Found ((eq_ref fofType) (x1 (g x2))) as proof of (((eq fofType) (x1 (g x2))) b)
% Found ((eq_ref fofType) (x1 (g x2))) as proof of (((eq fofType) (x1 (g x2))) b)
% Found ((eq_ref fofType) (x1 (g x2))) as proof of (((eq fofType) (x1 (g x2))) b)
% Found eq_ref00:=(eq_ref0 b):(((eq fofType) b) b)
% Found (eq_ref0 b) as proof of (((eq fofType) b) (f x2))
% Found ((eq_ref fofType) b) as proof of (((eq fofType) b) (f x2))
% Found ((eq_ref fofType) b) as proof of (((eq fofType) b) (f x2))
% Found ((eq_ref fofType) b) as proof of (((eq fofType) b) (f x2))
% Found ((eq_trans0000 ((eq_ref fofType) (x1 (g x2)))) ((eq_ref fofType) b)) as proof of (((eq fofType) (x1 (g x2))) (f x2))
% Found (((eq_trans000 (f x2)) ((eq_ref fofType) (x1 (g x2)))) ((eq_ref fofType) (f x2))) as proof of (((eq fofType) (x1 (g x2))) (f x2))
% Found ((((fun (b:fofType)=> ((eq_trans00 b) (f x2))) (f x2)) ((eq_ref fofType) (x1 (g x2)))) ((eq_ref fofType) (f x2))) as proof of (((eq fofType) (x1 (g x2))) (f x2))
% Found ((((fun (b:fofType)=> (((eq_trans0 (x1 (g x2))) b) (f x2))) (f x2)) ((eq_ref fofType) (x1 (g x2)))) ((eq_ref fofType) (f x2))) as proof of (((eq fofType) (x1 (g x2))) (f x2))
% Found ((((fun (b:fofType)=> ((((eq_trans fofType) (x1 (g x2))) b) (f x2))) (f x2)) ((eq_ref fofType) (x1 (g x2)))) ((eq_ref fofType) (f x2))) as proof of (((eq fofType) (x1 (g x2))) (f x2))
% Found eq_ref00:=(eq_ref0 (x1 (g x2))):(((eq fofType) (x1 (g x2))) (x1 (g x2)))
% Found (eq_ref0 (x1 (g x2))) as proof of (((eq fofType) (x1 (g x2))) b)
% Found ((eq_ref fofType) (x1 (g x2))) as proof of (((eq fofType) (x1 (g x2))) b)
% Found ((eq_ref fofType) (x1 (g x2))) as proof of (((eq fofType) (x1 (g x2))) b)
% Found ((eq_ref fofType) (x1 (g x2))) as proof of (((eq fofType) (x1 (g x2))) b)
% Found eq_ref00:=(eq_ref0 b):(((eq fofType) b) b)
% Found (eq_ref0 b) as proof of (((eq fofType) b) (f x2))
% Found ((eq_ref fofType) b) as proof of (((eq fofType) b) (f x2))
% Found ((eq_ref fofType) b) as proof of (((eq fofType) b) (f x2))
% Found ((eq_ref fofType) b) as proof of (((eq fofType) b) (f x2))
% Found ((eq_trans0000 ((eq_ref fofType) (x1 (g x2)))) ((eq_ref fofType) b)) as proof of (((eq fofType) (x1 (g x2))) (f x2))
% Found (((eq_trans000 (f x2)) ((eq_ref fofType) (x1 (g x2)))) ((eq_ref fofType) (f x2))) as proof of (((eq fofType) (x1 (g x2))) (f x2))
% Found ((((fun (b:fofType)=> ((eq_trans00 b) (f x2))) (f x2)) ((eq_ref fofType) (x1 (g x2)))) ((eq_ref fofType) (f x2))) as proof of (((eq fofType) (x1 (g x2))) (f x2))
% Found ((((fun (b:fofType)=> (((eq_trans0 (x1 (g x2))) b) (f x2))) (f x2)) ((eq_ref fofType) (x1 (g x2)))) ((eq_ref fofType) (f x2))) as proof of (((eq fofType) (x1 (g x2))) (f x2))
% Found ((((fun (b:fofType)=> ((((eq_trans fofType) (x1 (g x2))) b) (f x2))) (f x2)) ((eq_ref fofType) (x1 (g x2)))) ((eq_ref fofType) (f x2))) as proof of (((eq fofType) (x1 (g x2))) (f x2))
% Found eq_ref000:=(eq_ref00 P):((P (x1 (g x2)))->(P (x1 (g x2))))
% Found (eq_ref00 P) as proof of (P0 (f (g x2)))
% Found ((eq_ref0 (x1 (g x2))) P) as proof of (P0 (f (g x2)))
% Found (((eq_ref fofType) (x1 (g x2))) P) as proof of (P0 (f (g x2)))
% Found (((eq_ref fofType) (x1 (g x2))) P) as proof of (P0 (f (g x2)))
% Found eq_ref000:=(eq_ref00 P):((P (x1 (g x2)))->(P (x1 (g x2))))
% Found (eq_ref00 P) as proof of (P0 (x1 (g x2)))
% Found ((eq_ref0 (x1 (g x2))) P) as proof of (P0 (x1 (g x2)))
% Found (((eq_ref fofType) (x1 (g x2))) P) as proof of (P0 (x1 (g x2)))
% Found (((eq_ref fofType) (x1 (g x2))) P) as proof of (P0 (x1 (g x2)))
% Found eq_ref000:=(eq_ref00 P):((P (x1 (g x2)))->(P (x1 (g x2))))
% Found (eq_ref00 P) as proof of (P0 (x1 (g x2)))
% Found ((eq_ref0 (x1 (g x2))) P) as proof of (P0 (x1 (g x2)))
% Found (((eq_ref fofType) (x1 (g x2))) P) as proof of (P0 (x1 (g x2)))
% Found (((eq_ref fofType) (x1 (g x2))) P) as proof of (P0 (x1 (g x2)))
% Found eq_ref000:=(eq_ref00 P):((P (x1 (g x2)))->(P (x1 (g x2))))
% Found (eq_ref00 P) as proof of (P0 (f (g x2)))
% Found ((eq_ref0 (x1 (g x2))) P) as proof of (P0 (f (g x2)))
% Found (((eq_ref fofType) (x1 (g x2))) P) as proof of (P0 (f (g x2)))
% Found (((eq_ref fofType) (x1 (g x2))) P) as proof of (P0 (f (g x2)))
% Found eq_ref00:=(eq_ref0 (x1 (g x2))):(((eq fofType) (x1 (g x2))) (x1 (g x2)))
% Found (eq_ref0 (x1 (g x2))) as proof of (forall (P:(fofType->Prop)), ((P (x1 (g x2)))->(P (f x2))))
% Found ((eq_ref fofType) (x1 (g x2))) as proof of (forall (P:(fofType->Prop)), ((P (x1 (g x2)))->(P (f x2))))
% Found ((eq_ref fofType) (x1 (g x2))) as proof of (forall (P:(fofType->Prop)), ((P (x1 (g x2)))->(P (f x2))))
% Found ((eq_ref fofType) (x1 (g x2))) as proof of (forall (P:(fofType->Prop)), ((P (x1 (g x2)))->(P (f x2))))
% Found eq_ref00:=(eq_ref0 (x1 (g x2))):(((eq fofType) (x1 (g x2))) (x1 (g x2)))
% Found (eq_ref0 (x1 (g x2))) as proof of (forall (P:(fofType->Prop)), ((P (x1 (g x2)))->(P (f x2))))
% Found ((eq_ref fofType) (x1 (g x2))) as proof of (forall (P:(fofType->Prop)), ((P (x1 (g x2)))->(P (f x2))))
% Found ((eq_ref fofType) (x1 (g x2))) as proof of (forall (P:(fofType->Prop)), ((P (x1 (g x2)))->(P (f x2))))
% Found ((eq_ref fofType) (x1 (g x2))) as proof of (forall (P:(fofType->Prop)), ((P (x1 (g x2)))->(P (f x2))))
% Found eq_ref00:=(eq_ref0 (x1 (g x2))):(((eq fofType) (x1 (g x2))) (x1 (g x2)))
% Found (eq_ref0 (x1 (g x2))) as proof of (((eq fofType) (x1 (g x2))) (f x2))
% Found ((eq_ref fofType) (x1 (g x2))) as proof of (((eq fofType) (x1 (g x2))) (f x2))
% Found ((eq_ref fofType) (x1 (g x2))) as proof of (((eq fofType) (x1 (g x2))) (f x2))
% Found eq_ref00:=(eq_ref0 (x1 (g x2))):(((eq fofType) (x1 (g x2))) (x1 (g x2)))
% Found (eq_ref0 (x1 (g x2))) as proof of (((eq fofType) (x1 (g x2))) (f x2))
% Found ((eq_ref fofType) (x1 (g x2))) as proof of (((eq fofType) (x1 (g x2))) (f x2))
% Found ((eq_ref fofType) (x1 (g x2))) as proof of (((eq fofType) (x1 (g x2))) (f x2))
% Found eq_ref000:=(eq_ref00 P):((P (x1 (g x2)))->(P (x1 (g x2))))
% Found (eq_ref00 P) as proof of ((P (x1 (g x2)))->(P (f x2)))
% Found ((eq_ref0 (x1 (g x2))) P) as proof of ((P (x1 (g x2)))->(P (f x2)))
% Found (((eq_ref fofType) (x1 (g x2))) P) as proof of ((P (x1 (g x2)))->(P (f x2)))
% Found (((eq_ref fofType) (x1 (g x2))) P) as proof of ((P (x1 (g x2)))->(P (f x2)))
% Found (fun (P:(fofType->Prop))=> (((eq_ref fofType) (x1 (g x2))) P)) as proof of ((P (x1 (g x2)))->(P (f x2)))
% Found eq_ref000:=(eq_ref00 P):((P (x1 (g x2)))->(P (x1 (g x2))))
% Found (eq_ref00 P) as proof of ((P (x1 (g x2)))->(P (f x2)))
% Found ((eq_ref0 (x1 (g x2))) P) as proof of ((P (x1 (g x2)))->(P (f x2)))
% Found (((eq_ref fofType) (x1 (g x2))) P) as proof of ((P (x1 (g x2)))->(P (f x2)))
% Found (((eq_ref fofType) (x1 (g x2))) P) as proof of ((P (x1 (g x2)))->(P (f x2)))
% Found (fun (P:(fofType->Prop))=> (((eq_ref fofType) (x1 (g x2))) P)) as proof of ((P (x1 (g x2)))->(P (f x2)))
% Found eq_ref000:=(eq_ref00 P):((P (x1 (g x2)))->(P (x1 (g x2))))
% Found (eq_ref00 P) as proof of ((P (x1 (g x2)))->(P (f x2)))
% Found ((eq_ref0 (x1 (g x2))) P) as proof of ((P (x1 (g x2)))->(P (f x2)))
% Found (((eq_ref fofType) (x1 (g x2))) P) as proof of ((P (x1 (g x2)))->(P (f x2)))
% Found (((eq_ref fofType) (x1 (g x2))) P) as proof of ((P (x1 (g x2)))->(P (f x2)))
% Found (fun (P:(fofType->Prop))=> (((eq_ref fofType) (x1 (g x2))) P)) as proof of ((P (x1 (g x2)))->(P (f x2)))
% Found (fun (P:(fofType->Prop))=> (((eq_ref fofType) (x1 (g x2))) P)) as proof of (forall (P:(fofType->Prop)), ((P (x1 (g x2)))->(P (f x2))))
% Found eq_ref000:=(eq_ref00 P):((P (x1 (g x2)))->(P (x1 (g x2))))
% Found (eq_ref00 P) as proof of ((P (x1 (g x2)))->(P (f x2)))
% Found ((eq_ref0 (x1 (g x2))) P) as proof of ((P (x1 (g x2)))->(P (f x2)))
% Found (((eq_ref fofType) (x1 (g x2))) P) as proof of ((P (x1 (g x2)))->(P (f x2)))
% Found (((eq_ref fofType) (x1 (g x2))) P) as proof of ((P (x1 (g x2)))->(P (f x2)))
% Found (fun (P:(fofType->Prop))=> (((eq_ref fofType) (x1 (g x2))) P)) as proof of ((P (x1 (g x2)))->(P (f x2)))
% Found (fun (P:(fofType->Prop))=> (((eq_ref fofType) (x1 (g x2))) P)) as proof of (forall (P:(fofType->Prop)), ((P (x1 (g x2)))->(P (f x2))))
% Found eq_ref000:=(eq_ref00 P):((P (f x2))->(P (f x2)))
% Found (eq_ref00 P) as proof of (P0 (f x2))
% Found ((eq_ref0 (f x2)) P) as proof of (P0 (f x2))
% Found (((eq_ref fofType) (f x2)) P) as proof of (P0 (f x2))
% Found (((eq_ref fofType) (f x2)) P) as proof of (P0 (f x2))
% Found eq_ref000:=(eq_ref00 P):((P (f x2))->(P (f x2)))
% Found (eq_ref00 P) as proof of (P0 (f x2))
% Found ((eq_ref0 (f x2)) P) as proof of (P0 (f x2))
% Found (((eq_ref fofType) (f x2)) P) as proof of (P0 (f x2))
% Found (((eq_ref fofType) (f x2)) P) as proof of (P0 (f x2))
% Found eq_ref000:=(eq_ref00 P):((P (f x2))->(P (f x2)))
% Found (eq_ref00 P) as proof of (P0 (f x2))
% Found ((eq_ref0 (f x2)) P) as proof of (P0 (f x2))
% Found (((eq_ref fofType) (f x2)) P) as proof of (P0 (f x2))
% Found (((eq_ref fofType) (f x2)) P) as proof of (P0 (f x2))
% Found eq_ref000:=(eq_ref00 P):((P (f x2))->(P (f x2)))
% Found (eq_ref00 P) as proof of (P0 (f x2))
% Found ((eq_ref0 (f x2)) P) as proof of (P0 (f x2))
% Found (((eq_ref fofType) (f x2)) P) as proof of (P0 (f x2))
% Found (((eq_ref fofType) (f x2)) P) as proof of (P0 (f x2))
% Found eq_ref000:=(eq_ref00 P):((P (f x2))->(P (f x2)))
% Found (eq_ref00 P) as proof of (P0 (f x2))
% Found ((eq_ref0 (f x2)) P) as proof of (P0 (f x2))
% Found (((eq_ref fofType) (f x2)) P) as proof of (P0 (f x2))
% Found (((eq_ref fofType) (f x2)) P) as proof of (P0 (f x2))
% Found eq_ref000:=(eq_ref00 P):((P (f x2))->(P (f x2)))
% Found (eq_ref00 P) as proof of (P0 (f x2))
% Found ((eq_ref0 (f x2)) P) as proof of (P0 (f x2))
% Found (((eq_ref fofType) (f x2)) P) as proof of (P0 (f x2))
% Found (((eq_ref fofType) (f x2)) P) as proof of (P0 (f x2))
% Found eq_ref000:=(eq_ref00 P):((P (f x2))->(P (f x2)))
% Found (eq_ref00 P) as proof of (P0 (f x2))
% Found ((eq_ref0 (f x2)) P) as proof of (P0 (f x2))
% Found (((eq_ref fofType) (f x2)) P) as proof of (P0 (f x2))
% Found (((eq_ref fofType) (f x2)) P) as proof of (P0 (f x2))
% Found eq_ref000:=(eq_ref00 P):((P (f x2))->(P (f x2)))
% Found (eq_ref00 P) as proof of (P0 (f x2))
% Found ((eq_ref0 (f x2)) P) as proof of (P0 (f x2))
% Found (((eq_ref fofType) (f x2)) P) as proof of (P0 (f x2))
% Found (((eq_ref fofType) (f x2)) P) as proof of (P0 (f x2))
% Found eq_ref00:=(eq_ref0 (x1 (g x2))):(((eq fofType) (x1 (g x2))) (x1 (g x2)))
% Found (eq_ref0 (x1 (g x2))) as proof of (((eq fofType) (x1 (g x2))) (f x2))
% Found ((eq_ref fofType) (x1 (g x2))) as proof of (((eq fofType) (x1 (g x2))) (f x2))
% Found ((eq_ref fofType) (x1 (g x2))) as proof of (((eq fofType) (x1 (g x2))) (f x2))
% Found ((eq_ref fofType) (x1 (g x2))) as proof of (((eq fofType) (x1 (g x2))) (f x2))
% Found (eq_sym1000 ((eq_ref fofType) (x1 (g x2)))) as proof of ((P (f x2))->(P (x1 (g x2))))
% Found (eq_sym1000 ((eq_ref fofType) (x1 (g x2)))) as proof of ((P (f x2))->(P (x1 (g x2))))
% Found ((fun (x3:(((eq fofType) (x1 (g x2))) (f x2)))=> ((eq_sym100 x3) P)) ((eq_ref fofType) (x1 (g x2)))) as proof of ((P (f x2))->(P (x1 (g x2))))
% Found ((fun (x3:(((eq fofType) (x1 (g x2))) (f x2)))=> (((eq_sym10 (f x2)) x3) P)) ((eq_ref fofType) (x1 (g x2)))) as proof of ((P (f x2))->(P (x1 (g x2))))
% Found ((fun (x3:(((eq fofType) (x1 (g x2))) (f x2)))=> ((((eq_sym1 (x1 (g x2))) (f x2)) x3) P)) ((eq_ref fofType) (x1 (g x2)))) as proof of ((P (f x2))->(P (x1 (g x2))))
% Found ((fun (x3:(((eq fofType) (x1 (g x2))) (f x2)))=> (((((eq_sym fofType) (x1 (g x2))) (f x2)) x3) P)) ((eq_ref fofType) (x1 (g x2)))) as proof of ((P (f x2))->(P (x1 (g x2))))
% Found (fun (P:(fofType->Prop))=> ((fun (x3:(((eq fofType) (x1 (g x2))) (f x2)))=> (((((eq_sym fofType) (x1 (g x2))) (f x2)) x3) P)) ((eq_ref fofType) (x1 (g x2))))) as proof of ((P (f x2))->(P (x1 (g x2))))
% Found eq_ref00:=(eq_ref0 (x1 (g x2))):(((eq fofType) (x1 (g x2))) (x1 (g x2)))
% Found (eq_ref0 (x1 (g x2))) as proof of (((eq fofType) (x1 (g x2))) (f x2))
% Found ((eq_ref fofType) (x1 (g x2))) as proof of (((eq fofType) (x1 (g x2))) (f x2))
% Found ((eq_ref fofType) (x1 (g x2))) as proof of (((eq fofType) (x1 (g x2))) (f x2))
% Found ((eq_ref fofType) (x1 (g x2))) as proof of (((eq fofType) (x1 (g x2))) (f x2))
% Found (eq_sym1000 ((eq_ref fofType) (x1 (g x2)))) as proof of ((P (f x2))->(P (x1 (g x2))))
% Found (eq_sym1000 ((eq_ref fofType) (x1 (g x2)))) as proof of ((P (f x2))->(P (x1 (g x2))))
% Found ((fun (x3:(((eq fofType) (x1 (g x2))) (f x2)))=> ((eq_sym100 x3) P)) ((eq_ref fofType) (x1 (g x2)))) as proof of ((P (f x2))->(P (x1 (g x2))))
% Found ((fun (x3:(((eq fofType) (x1 (g x2))) (f x2)))=> (((eq_sym10 (f x2)) x3) P)) ((eq_ref fofType) (x1 (g x2)))) as proof of ((P (f x2))->(P (x1 (g x2))))
% Found ((fun (x3:(((eq fofType) (x1 (g x2))) (f x2)))=> ((((eq_sym1 (x1 (g x2))) (f x2)) x3) P)) ((eq_ref fofType) (x1 (g x2)))) as proof of ((P (f x2))->(P (x1 (g x2))))
% Found ((fun (x3:(((eq fofType) (x1 (g x2))) (f x2)))=> (((((eq_sym fofType) (x1 (g x2))) (f x2)) x3) P)) ((eq_ref fofType) (x1 (g x2)))) as proof of ((P (f x2))->(P (x1 (g x2))))
% Found (fun (P:(fofType->Prop))=> ((fun (x3:(((eq fofType) (x1 (g x2))) (f x2)))=> (((((eq_sym fofType) (x1 (g x2))) (f x2)) x3) P)) ((eq_ref fofType) (x1 (g x2))))) as proof of ((P (f x2))->(P (x1 (g x2))))
% Found eq_ref00:=(eq_ref0 (x1 (g x2))):(((eq fofType) (x1 (g x2))) (x1 (g x2)))
% Found (eq_ref0 (x1 (g x2))) as proof of (((eq fofType) (x1 (g x2))) (f x2))
% Found ((eq_ref fofType) (x1 (g x2))) as proof of (((eq fofType) (x1 (g x2))) (f x2))
% Found ((eq_ref fofType) (x1 (g x2))) as proof of (((eq fofType) (x1 (g x2))) (f x2))
% Found ((eq_ref fofType) (x1 (g x2))) as proof of (((eq fofType) (x1 (g x2))) (f x2))
% Found (eq_sym100 ((eq_ref fofType) (x1 (g x2)))) as proof of (((eq fofType) (f x2)) (x1 (g x2)))
% Found ((eq_sym10 (f x2)) ((eq_ref fofType) (x1 (g x2)))) as proof of (((eq fofType) (f x2)) (x1 (g x2)))
% Found (((eq_sym1 (x1 (g x2))) (f x2)) ((eq_ref fofType) (x1 (g x2)))) as proof of (((eq fofType) (f x2)) (x1 (g x2)))
% Found ((((eq_sym fofType) (x1 (g x2))) (f x2)) ((eq_ref fofType) (x1 (g x2)))) as proof of (((eq fofType) (f x2)) (x1 (g x2)))
% Found eq_ref00:=(eq_ref0 (x1 (g x2))):(((eq fofType) (x1 (g x2))) (x1 (g x2)))
% Found (eq_ref0 (x1 (g x2))) as proof of (((eq fofType) (x1 (g x2))) (f x2))
% Found ((eq_ref fofType) (x1 (g x2))) as proof of (((eq fofType) (x1 (g x2))) (f x2))
% Found ((eq_ref fofType) (x1 (g x2))) as proof of (((eq fofType) (x1 (g x2))) (f x2))
% Found ((eq_ref fofType) (x1 (g x2))) as proof of (((eq fofType) (x1 (g x2))) (f x2))
% Found (eq_sym100 ((eq_ref fofType) (x1 (g x2)))) as proof of (((eq fofType) (f x2)) (x1 (g x2)))
% Found ((eq_sym10 (f x2)) ((eq_ref fofType) (x1 (g x2)))) as proof of (((eq fofType) (f x2)) (x1 (g x2)))
% Found (((eq_sym1 (x1 (g x2))) (f x2)) ((eq_ref fofType) (x1 (g x2)))) as proof of (((eq fofType) (f x2)) (x1 (g x2)))
% Found ((((eq_sym fofType) (x1 (g x2))) (f x2)) ((eq_ref fofType) (x1 (g x2)))) as proof of (((eq fofType) (f x2)) (x1 (g x2)))
% Found eq_ref00:=(eq_ref0 (x1 (g x2))):(((eq fofType) (x1 (g x2))) (x1 (g x2)))
% Found (eq_ref0 (x1 (g x2))) as proof of (((eq fofType) (x1 (g x2))) (f x2))
% Found ((eq_ref fofType) (x1 (g x2))) as proof of (((eq fofType) (x1 (g x2))) (f x2))
% Found ((eq_ref fofType) (x1 (g x2))) as proof of (((eq fofType) (x1 (g x2))) (f x2))
% Found ((eq_ref fofType) (x1 (g x2))) as proof of (((eq fofType) (x1 (g x2))) (f x2))
% Found (eq_sym100 ((eq_ref fofType) (x1 (g x2)))) as proof of (((eq fofType) (f x2)) (x1 (g x2)))
% Found ((eq_sym10 (f x2)) ((eq_ref fofType) (x1 (g x2)))) as proof of (((eq fofType) (f x2)) (x1 (g x2)))
% Found (((eq_sym1 (x1 (g x2))) (f x2)) ((eq_ref fofType) (x1 (g x2)))) as proof of (((eq fofType) (f x2)) (x1 (g x2)))
% Found ((((eq_sym fofType) (x1 (g x2))) (f x2)) ((eq_ref fofType) (x1 (g x2)))) as proof of (((eq fofType) (f x2)) (x1 (g x2)))
% Found eq_ref00:=(eq_ref0 (x1 (g x2))):(((eq fofType) (x1 (g x2))) (x1 (g x2)))
% Found (eq_ref0 (x1 (g x2))) as proof of (((eq fofType) (x1 (g x2))) (f x2))
% Found ((eq_ref fofType) (x1 (g x2))) as proof of (((eq fofType) (x1 (g x2))) (f x2))
% Found ((eq_ref fofType) (x1 (g x2))) as proof of (((eq fofType) (x1 (g x2))) (f x2))
% Found ((eq_ref fofType) (x1 (g x2))) as proof of (((eq fofType) (x1 (g x2))) (f x2))
% Found (eq_sym100 ((eq_ref fofType) (x1 (g x2)))) as proof of (((eq fofType) (f x2)) (x1 (g x2)))
% Found ((eq_sym10 (f x2)) ((eq_ref fofType) (x1 (g x2)))) as proof of (((eq fofType) (f x2)) (x1 (g x2)))
% Found (((eq_sym1 (x1 (g x2))) (f x2)) ((eq_ref fofType) (x1 (g x2)))) as proof of (((eq fofType) (f x2)) (x1 (g x2)))
% Found ((((eq_sym fofType) (x1 (g x2))) (f x2)) ((eq_ref fofType) (x1 (g x2)))) as proof of (((eq fofType) (f x2)) (x1 (g x2)))
% Found eq_ref00:=(eq_ref0 (x1 (g x2))):(((eq fofType) (x1 (g x2))) (x1 (g x2)))
% Found (eq_ref0 (x1 (g x2))) as proof of (((eq fofType) (x1 (g x2))) (f x2))
% Found ((eq_ref fofType) (x1 (g x2))) as proof of (((eq fofType) (x1 (g x2))) (f x2))
% Found ((eq_ref fofType) (x1 (g x2))) as proof of (((eq fofType) (x1 (g x2))) (f x2))
% Found ((eq_ref fofType) (x1 (g x2))) as proof of (((eq fofType) (x1 (g x2))) (f x2))
% Found (eq_sym100 ((eq_ref fofType) (x1 (g x2)))) as proof of (((eq fofType) (f x2)) (x1 (g x2)))
% Found ((eq_sym10 (f x2)) ((eq_ref fofType) (x1 (g x2)))) as proof of (((eq fofType) (f x2)) (x1 (g x2)))
% Found (((eq_sym1 (x1 (g x2))) (f x2)) ((eq_ref fofType) (x1 (g x2)))) as proof of (((eq fofType) (f x2)) (x1 (g x2)))
% Found ((((eq_sym fofType) (x1 (g x2))) (f x2)) ((eq_ref fofType) (x1 (g x2)))) as proof of (((eq fofType) (f x2)) (x1 (g x2)))
% Found eq_ref00:=(eq_ref0 (x1 (g x2))):(((eq fofType) (x1 (g x2))) (x1 (g x2)))
% Found (eq_ref0 (x1 (g x2))) as proof of (((eq fofType) (x1 (g x2))) (f x2))
% Found ((eq_ref fofType) (x1 (g x2))) as proof of (((eq fofType) (x1 (g x2))) (f x2))
% Found ((eq_ref fofType) (x1 (g x2))) as proof of (((eq fofType) (x1 (g x2))) (f x2))
% Found ((eq_ref fofType) (x1 (g x2))) as proof of (((eq fofType) (x1 (g x2))) (f x2))
% Found (eq_sym100 ((eq_ref fofType) (x1 (g x2)))) as proof of (((eq fofType) (f x2)) (x1 (g x2)))
% Found ((eq_sym10 (f x2)) ((eq_ref fofType) (x1 (g x2)))) as proof of (((eq fofType) (f x2)) (x1 (g x2)))
% Found (((eq_sym1 (x1 (g x2))) (f x2)) ((eq_ref fofType) (x1 (g x2)))) as proof of (((eq fofType) (f x2)) (x1 (g x2)))
% Found ((((eq_sym fofType) (x1 (g x2))) (f x2)) ((eq_ref fofType) (x1 (g x2)))) as proof of (((eq fofType) (f x2)) (x1 (g x2)))
% Found eq_ref00:=(eq_ref0 (x1 (g x2))):(((eq fofType) (x1 (g x2))) (x1 (g x2)))
% Found (eq_ref0 (x1 (g x2))) as proof of (((eq fofType) (x1 (g x2))) (f x2))
% Found ((eq_ref fofType) (x1 (g x2))) as proof of (((eq fofType) (x1 (g x2))) (f x2))
% Found ((eq_ref fofType) (x1 (g x2))) as proof of (((eq fofType) (x1 (g x2))) (f x2))
% Found ((eq_ref fofType) (x1 (g x2))) as proof of (((eq fofType) (x1 (g x2))) (f x2))
% Found (eq_sym100 ((eq_ref fofType) (x1 (g x2)))) as proof of (((eq fofType) (f x2)) (x1 (g x2)))
% Found ((eq_sym10 (f x2)) ((eq_ref fofType) (x1 (g x2)))) as proof of (((eq fofType) (f x2)) (x1 (g x2)))
% Found (((eq_sym1 (x1 (g x2))) (f x2)) ((eq_ref fofType) (x1 (g x2)))) as proof of (((eq fofType) (f x2)) (x1 (g x2)))
% Found ((((eq_sym fofType) (x1 (g x2))) (f x2)) ((eq_ref fofType) (x1 (g x2)))) as proof of (((eq fofType) (f x2)) (x1 (g x2)))
% Found eq_ref00:=(eq_ref0 (x1 (g x2))):(((eq fofType) (x1 (g x2))) (x1 (g x2)))
% Found (eq_ref0 (x1 (g x2))) as proof of (((eq fofType) (x1 (g x2))) (f x2))
% Found ((eq_ref fofType) (x1 (g x2))) as proof of (((eq fofType) (x1 (g x2))) (f x2))
% Found ((eq_ref fofType) (x1 (g x2))) as proof of (((eq fofType) (x1 (g x2))) (f x2))
% Found ((eq_ref fofType) (x1 (g x2))) as proof of (((eq fofType) (x1 (g x2))) (f x2))
% Found (eq_sym100 ((eq_ref fofType) (x1 (g x2)))) as proof of (((eq fofType) (f x2)) (x1 (g x2)))
% Found ((eq_sym10 (f x2)) ((eq_ref fofType) (x1 (g x2)))) as proof of (((eq fofType) (f x2)) (x1 (g x2)))
% Found (((eq_sym1 (x1 (g x2))) (f x2)) ((eq_ref fofType) (x1 (g x2)))) as proof of (((eq fofType) (f x2)) (x1 (g x2)))
% Found ((((eq_sym fofType) (x1 (g x2))) (f x2)) ((eq_ref fofType) (x1 (g x2)))) as proof of (((eq fofType) (f x2)) (x1 (g x2)))
% Found eq_ref000:=(eq_ref00 P):((P (f x2))->(P (f x2)))
% Found (eq_ref00 P) as proof of (P0 (f x2))
% Found ((eq_ref0 (f x2)) P) as proof of (P0 (f x2))
% Found (((eq_ref fofType) (f x2)) P) as proof of (P0 (f x2))
% Found (((eq_ref fofType) (f x2)) P) as proof of (P0 (f x2))
% Found eq_ref00:=(eq_ref0 (x1 (g x2))):(((eq fofType) (x1 (g x2))) (x1 (g x2)))
% Found (eq_ref0 (x1 (g x2))) as proof of (((eq fofType) (x1 (g x2))) (f x2))
% Found ((eq_ref fofType) (x1 (g x2))) as proof of (((eq fofType) (x1 (g x2))) (f x2))
% Found ((eq_ref fofType) (x1 (g x2))) as proof of (((eq fofType) (x1 (g x2))) (f x2))
% Found ((eq_ref fofType) (x1 (g x2))) as proof of (((eq fofType) (x1 (g x2))) (f x2))
% Found ((eq_sym1000 ((eq_ref fofType) (x1 (g x2)))) (((eq_ref fofType) (f x2)) P)) as proof of ((P (f x2))->(P (x1 (g x2))))
% Found ((eq_sym1000 ((eq_ref fofType) (x1 (g x2)))) (((eq_ref fofType) (f x2)) P)) as proof of ((P (f x2))->(P (x1 (g x2))))
% Found (((fun (x3:(((eq fofType) (x1 (g x2))) (f x2)))=> ((eq_sym100 x3) (fun (x5:fofType)=> ((P (f x2))->(P x5))))) ((eq_ref fofType) (x1 (g x2)))) (((eq_ref fofType) (f x2)) P)) as proof of ((P (f x2))->(P (x1 (g x2))))
% Found (((fun (x3:(((eq fofType) (x1 (g x2))) (f x2)))=> (((eq_sym10 (f x2)) x3) (fun (x5:fofType)=> ((P (f x2))->(P x5))))) ((eq_ref fofType) (x1 (g x2)))) (((eq_ref fofType) (f x2)) P)) as proof of ((P (f x2))->(P (x1 (g x2))))
% Found (((fun (x3:(((eq fofType) (x1 (g x2))) (f x2)))=> ((((eq_sym1 (x1 (g x2))) (f x2)) x3) (fun (x5:fofType)=> ((P (f x2))->(P x5))))) ((eq_ref fofType) (x1 (g x2)))) (((eq_ref fofType) (f x2)) P)) as proof of ((P (f x2))->(P (x1 (g x2))))
% Found (((fun (x3:(((eq fofType) (x1 (g x2))) (f x2)))=> (((((eq_sym fofType) (x1 (g x2))) (f x2)) x3) (fun (x5:fofType)=> ((P (f x2))->(P x5))))) ((eq_ref fofType) (x1 (g x2)))) (((eq_ref fofType) (f x2)) P)) as proof of ((P (f x2))->(P (x1 (g x2))))
% Found (fun (P:(fofType->Prop))=> (((fun (x3:(((eq fofType) (x1 (g x2))) (f x2)))=> (((((eq_sym fofType) (x1 (g x2))) (f x2)) x3) (fun (x5:fofType)=> ((P (f x2))->(P x5))))) ((eq_ref fofType) (x1 (g x2)))) (((eq_ref fofType) (f x2)) P))) as proof of ((P (f x2))->(P (x1 (g x2))))
% Found eq_ref000:=(eq_ref00 P):((P (f x2))->(P (f x2)))
% Found (eq_ref00 P) as proof of (P0 (f x2))
% Found ((eq_ref0 (f x2)) P) as proof of (P0 (f x2))
% Found (((eq_ref fofType) (f x2)) P) as proof of (P0 (f x2))
% Found (((eq_ref fofType) (f x2)) P) as proof of (P0 (f x2))
% Found eq_ref00:=(eq_ref0 (x1 (g x2))):(((eq fofType) (x1 (g x2))) (x1 (g x2)))
% Found (eq_ref0 (x1 (g x2))) as proof of (((eq fofType) (x1 (g x2))) (f x2))
% Found ((eq_ref fofType) (x1 (g x2))) as proof of (((eq fofType) (x1 (g x2))) (f x2))
% Found ((eq_ref fofType) (x1 (g x2))) as proof of (((eq fofType) (x1 (g x2))) (f x2))
% Found ((eq_ref fofType) (x1 (g x2))) as proof of (((eq fofType) (x1 (g x2))) (f x2))
% Found ((eq_sym1000 ((eq_ref fofType) (x1 (g x2)))) (((eq_ref fofType) (f x2)) P)) as proof of ((P (f x2))->(P (x1 (g x2))))
% Found ((eq_sym1000 ((eq_ref fofType) (x1 (g x2)))) (((eq_ref fofType) (f x2)) P)) as proof of ((P (f x2))->(P (x1 (g x2))))
% Found (((fun (x3:(((eq fofType) (x1 (g x2))) (f x2)))=> ((eq_sym100 x3) (fun (x5:fofType)=> ((P (f x2))->(P x5))))) ((eq_ref fofType) (x1 (g x2)))) (((eq_ref fofType) (f x2)) P)) as proof of ((P (f x2))->(P (x1 (g x2))))
% Found (((fun (x3:(((eq fofType) (x1 (g x2))) (f x2)))=> (((eq_sym10 (f x2)) x3) (fun (x5:fofType)=> ((P (f x2))->(P x5))))) ((eq_ref fofType) (x1 (g x2)))) (((eq_ref fofType) (f x2)) P)) as proof of ((P (f x2))->(P (x1 (g x2))))
% Found (((fun (x3:(((eq fofType) (x1 (g x2))) (f x2)))=> ((((eq_sym1 (x1 (g x2))) (f x2)) x3) (fun (x5:fofType)=> ((P (f x2))->(P x5))))) ((eq_ref fofType) (x1 (g x2)))) (((eq_ref fofType) (f x2)) P)) as proof of ((P (f x2))->(P (x1 (g x2))))
% Found (((fun (x3:(((eq fofType) (x1 (g x2))) (f x2)))=> (((((eq_sym fofType) (x1 (g x2))) (f x2)) x3) (fun (x5:fofType)=> ((P (f x2))->(P x5))))) ((eq_ref fofType) (x1 (g x2)))) (((eq_ref fofType) (f x2)) P)) as proof of ((P (f x2))->(P (x1 (g x2))))
% Found (fun (P:(fofType->Prop))=> (((fun (x3:(((eq fofType) (x1 (g x2))) (f x2)))=> (((((eq_sym fofType) (x1 (g x2))) (f x2)) x3) (fun (x5:fofType)=> ((P (f x2))->(P x5))))) ((eq_ref fofType) (x1 (g x2)))) (((eq_ref fofType) (f x2)) P))) as proof of ((P (f x2))->(P (x1 (g x2))))
% Found eq_ref000:=(eq_ref00 P):((P (f x2))->(P (f x2)))
% Found (eq_ref00 P) as proof of (P0 (f x2))
% Found ((eq_ref0 (f x2)) P) as proof of (P0 (f x2))
% Found (((eq_ref fofType) (f x2)) P) as proof of (P0 (f x2))
% Found (((eq_ref fofType) (f x2)) P) as proof of (P0 (f x2))
% Found eq_ref000:=(eq_ref00 P):((P (f x2))->(P (f x2)))
% Found (eq_ref00 P) as proof of (P0 (f x2))
% Found ((eq_ref0 (f x2)) P) as proof of (P0 (f x2))
% Found (((eq_ref fofType) (f x2)) P) as proof of (P0 (f x2))
% Found (((eq_ref fofType) (f x2)) P) as proof of (P0 (f x2))
% Found eq_ref000:=(eq_ref00 P):((P (f x2))->(P (f x2)))
% Found (eq_ref00 P) as proof of (P0 (f x2))
% Found ((eq_ref0 (f x2)) P) as proof of (P0 (f x2))
% Found (((eq_ref fofType) (f x2)) P) as proof of (P0 (f x2))
% Found (((eq_ref fofType) (f x2)) P) as proof of (P0 (f x2))
% Found eq_ref000:=(eq_ref00 P):((P (f x2))->(P (f x2)))
% Found (eq_ref00 P) as proof of (P0 (f x2))
% Found ((eq_ref0 (f x2)) P) as proof of (P0 (f x2))
% Found (((eq_ref fofType) (f x2)) P) as proof of (P0 (f x2))
% Found (((eq_ref fofType) (f x2)) P) as proof of (P0 (f x2))
% Found eq_ref00:=(eq_ref0 (g (g x2))):(((eq fofType) (g (g x2))) (g (g x2)))
% Found (eq_ref0 (g (g x2))) as proof of (((eq fofType) (g (g x2))) b)
% Found ((eq_ref fofType) (g (g x2))) as proof of (((eq fofType) (g (g x2))) b)
% Found ((eq_ref fofType) (g (g x2))) as proof of (((eq fofType) (g (g x2))) b)
% Found ((eq_ref fofType) (g (g x2))) as proof of (((eq fofType) (g (g x2))) b)
% Found eq_ref00:=(eq_ref0 b):(((eq fofType) b) b)
% Found (eq_ref0 b) as proof of (((eq fofType) b) (g x2))
% Found ((eq_ref fofType) b) as proof of (((eq fofType) b) (g x2))
% Found ((eq_ref fofType) b) as proof of (((eq fofType) b) (g x2))
% Found ((eq_ref fofType) b) as proof of (((eq fofType) b) (g x2))
% Found eq_ref00:=(eq_ref0 (g (g x2))):(((eq fofType) (g (g x2))) (g (g x2)))
% Found (eq_ref0 (g (g x2))) as proof of (((eq fofType) (g (g x2))) b)
% Found ((eq_ref fofType) (g (g x2))) as proof of (((eq fofType) (g (g x2))) b)
% Found ((eq_ref fofType) (g (g x2))) as proof of (((eq fofType) (g (g x2))) b)
% Found ((eq_ref fofType) (g (g x2))) as proof of (((eq fofType) (g (g x2))) b)
% Found eq_ref00:=(eq_ref0 b):(((eq fofType) b) b)
% Found (eq_ref0 b) as proof of (((eq fofType) b) (g x2))
% Found ((eq_ref fofType) b) as proof of (((eq fofType) b) (g x2))
% Found ((eq_ref fofType) b) as proof of (((eq fofType) b) (g x2))
% Found ((eq_ref fofType) b) as proof of (((eq fofType) b) (g x2))
% Found eq_ref00:=(eq_ref0 (g (g x2))):(((eq fofType) (g (g x2))) (g (g x2)))
% Found (eq_ref0 (g (g x2))) as proof of (((eq fofType) (g (g x2))) b)
% Found ((eq_ref fofType) (g (g x2))) as proof of (((eq fofType) (g (g x2))) b)
% Found ((eq_ref fofType) (g (g x2))) as proof of (((eq fofType) (g (g x2))) b)
% Found ((eq_ref fofType) (g (g x2))) as proof of (((eq fofType) (g (g x2))) b)
% Found eq_ref00:=(eq_ref0 b):(((eq fofType) b) b)
% Found (eq_ref0 b) as proof of (((eq fofType) b) (g x2))
% Found ((eq_ref fofType) b) as proof of (((eq fofType) b) (g x2))
% Found ((eq_ref fofType) b) as proof of (((eq fofType) b) (g x2))
% Found ((eq_ref fofType) b) as proof of (((eq fofType) b) (g x2))
% Found eq_ref00:=(eq_ref0 (g (g x2))):(((eq fofType) (g (g x2))) (g (g x2)))
% Found (eq_ref0 (g (g x2))) as proof of (((eq fofType) (g (g x2))) b)
% Found ((eq_ref fofType) (g (g x2))) as proof of (((eq fofType) (g (g x2))) b)
% Found ((eq_ref fofType) (g (g x2))) as proof of (((eq fofType) (g (g x2))) b)
% Found ((eq_ref fofType) (g (g x2))) as proof of (((eq fofType) (g (g x2))) b)
% Found eq_ref00:=(eq_ref0 b):(((eq fofType) b) b)
% Found (eq_ref0 b) as proof of (((eq fofType) b) (g x2))
% Found ((eq_ref fofType) b) as proof of (((eq fofType) b) (g x2))
% Found ((eq_ref fofType) b) as proof of (((eq fofType) b) (g x2))
% Found ((eq_ref fofType) b) as proof of (((eq fofType) b) (g x2))
% Found eq_ref00:=(eq_ref0 (f x2)):(((eq fofType) (f x2)) (f x2))
% Found (eq_ref0 (f x2)) as proof of (((eq fofType) (f x2)) b)
% Found ((eq_ref fofType) (f x2)) as proof of (((eq fofType) (f x2)) b)
% Found ((eq_ref fofType) (f x2)) as proof of (((eq fofType) (f x2)) b)
% Found ((eq_ref fofType) (f x2)) as proof of (((eq fofType) (f x2)) b)
% Found eq_ref00:=(eq_ref0 b):(((eq fofType) b) b)
% Found (eq_ref0 b) as proof of (((eq fofType) b) (x1 (g x2)))
% Found ((eq_ref fofType) b) as proof of (((eq fofType) b) (x1 (g x2)))
% Found ((eq_ref fofType) b) as proof of (((eq fofType) b) (x1 (g x2)))
% Found ((eq_ref fofType) b) as proof of (((eq fofType) b) (x1 (g x2)))
% Found eq_ref00:=(eq_ref0 (f x2)):(((eq fofType) (f x2)) (f x2))
% Found (eq_ref0 (f x2)) as proof of (((eq fofType) (f x2)) b)
% Found ((eq_ref fofType) (f x2)) as proof of (((eq fofType) (f x2)) b)
% Found ((eq_ref fofType) (f x2)) as proof of (((eq fofType) (f x2)) b)
% Found ((eq_ref fofType) (f x2)) as proof of (((eq fofType) (f x2)) b)
% Found eq_ref00:=(eq_ref0 b):(((eq fofType) b) b)
% Found (eq_ref0 b) as proof of (((eq fofType) b) (x1 (g x2)))
% Found ((eq_ref fofType) b) as proof of (((eq fofType) b) (x1 (g x2)))
% Found ((eq_ref fofType) b) as proof of (((eq fofType) b) (x1 (g x2)))
% Found ((eq_ref fofType) b) as proof of (((eq fofType) b) (x1 (g x2)))
% Found eq_ref00:=(eq_ref0 b):(((eq fofType) b) b)
% Found (eq_ref0 b) as proof of (((eq fofType) b) (x1 (g x2)))
% Found ((eq_ref fofType) b) as proof of (((eq fofType) b) (x1 (g x2)))
% Found ((eq_ref fofType) b) as proof of (((eq fofType) b) (x1 (g x2)))
% Found ((eq_ref fofType) b) as proof of (((eq fofType) b) (x1 (g x2)))
% Found eq_ref00:=(eq_ref0 (f x2)):(((eq fofType) (f x2)) (f x2))
% Found (eq_ref0 (f x2)) as proof of (((eq fofType) (f x2)) b)
% Found ((eq_ref fofType) (f x2)) as proof of (((eq fofType) (f x2)) b)
% Found ((eq_ref fofType) (f x2)) as proof of (((eq fofType) (f x2)) b)
% Found ((eq_ref fofType) (f x2)) as proof of (((eq fofType) (f x2)) b)
% Found eq_ref00:=(eq_ref0 b):(((eq fofType) b) b)
% Found (eq_ref0 b) as proof of (((eq fofType) b) (x1 (g x2)))
% Found ((eq_ref fofType) b) as proof of (((eq fofType) b) (x1 (g x2)))
% Found ((eq_ref fofType) b) as proof of (((eq fofType) b) (x1 (g x2)))
% Found ((eq_ref fofType) b) as proof of (((eq fofType) b) (x1 (g x2)))
% Found eq_ref00:=(eq_ref0 (f x2)):(((eq fofType) (f x2)) (f x2))
% Found (eq_ref0 (f x2)) as proof of (((eq fofType) (f x2)) b)
% Found ((eq_ref fofType) (f x2)) as proof of (((eq fofType) (f x2)) b)
% Found ((eq_ref fofType) (f x2)) as proof of (((eq fofType) (f x2)) b)
% Found ((eq_ref fofType) (f x2)) as proof of (((eq fofType) (f x2)) b)
% Found eq_ref00:=(eq_ref0 (g (g x2))):(((eq fofType) (g (g x2))) (g (g x2)))
% Found (eq_ref0 (g (g x2))) as proof of (((eq fofType) (g (g x2))) b)
% Found ((eq_ref fofType) (g (g x2))) as proof of (((eq fofType) (g (g x2))) b)
% Found ((eq_ref fofType) (g (g x2))) as proof of (((eq fofType) (g (g x2))) b)
% Found ((eq_ref fofType) (g (g x2))) as proof of (((eq fofType) (g (g x2))) b)
% Found eq_ref00:=(eq_ref0 b):(((eq fofType) b) b)
% Found (eq_ref0 b) as proof of (((eq fofType) b) (g x2))
% Found ((eq_ref fofType) b) as proof of (((eq fofType) b) (g x2))
% Found ((eq_ref fofType) b) as proof of (((eq fofType) b) (g x2))
% Found ((eq_ref fofType) b) as proof of (((eq fofType) b) (g x2))
% Found eq_ref00:=(eq_ref0 (g (g x2))):(((eq fofType) (g (g x2))) (g (g x2)))
% Found (eq_ref0 (g (g x2))) as proof of (((eq fofType) (g (g x2))) b)
% Found ((eq_ref fofType) (g (g x2))) as proof of (((eq fofType) (g (g x2))) b)
% Found ((eq_ref fofType) (g (g x2))) as proof of (((eq fofType) (g (g x2))) b)
% Found ((eq_ref fofType) (g (g x2))) as proof of (((eq fofType) (g (g x2))) b)
% Found eq_ref00:=(eq_ref0 b):(((eq fofType) b) b)
% Found (eq_ref0 b) as proof of (((eq fofType) b) (g x2))
% Found ((eq_ref fofType) b) as proof of (((eq fofType) b) (g x2))
% Found ((eq_ref fofType) b) as proof of (((eq fofType) b) (g x2))
% Found ((eq_ref fofType) b) as proof of (((eq fofType) b) (g x2))
% Found eq_ref00:=(eq_ref0 (g (g x2))):(((eq fofType) (g (g x2))) (g (g x2)))
% Found (eq_ref0 (g (g x2))) as proof of (((eq fofType) (g (g x2))) b)
% Found ((eq_ref fofType) (g (g x2))) as proof of (((eq fofType) (g (g x2))) b)
% Found ((eq_ref fofType) (g (g x2))) as proof of (((eq fofType) (g (g x2))) b)
% Found ((eq_ref fofType) (g (g x2))) as proof of (((eq fofType) (g (g x2))) b)
% Found eq_ref00:=(eq_ref0 b):(((eq fofType) b) b)
% Found (eq_ref0 b) as proof of (((eq fofType) b) (g x2))
% Found ((eq_ref fofType) b) as proof of (((eq fofType) b) (g x2))
% Found ((eq_ref fofType) b) as proof of (((eq fofType) b) (g x2))
% Found ((eq_ref fofType) b) as proof of (((eq fofType) b) (g x2))
% Found eq_ref00:=(eq_ref0 (g (g x2))):(((eq fofType) (g (g x2))) (g (g x2)))
% Found (eq_ref0 (g (g x2))) as proof of (((eq fofType) (g (g x2))) b)
% Found ((eq_ref fofType) (g (g x2))) as proof of (((eq fofType) (g (g x2))) b)
% Found ((eq_ref fofType) (g (g x2))) as proof of (((eq fofType) (g (g x2))) b)
% Found ((eq_ref fofType) (g (g x2))) as proof of (((eq fofType) (g (g x2))) b)
% Found eq_ref00:=(eq_ref0 b):(((eq fofType) b) b)
% Found (eq_ref0 b) as proof of (((eq fofType) b) (g x2))
% Found ((eq_ref fofType) b) as proof of (((eq fofType) b) (g x2))
% Found ((eq_ref fofType) b) as proof of (((eq fofType) b) (g x2))
% Found ((eq_ref fofType) b) as proof of (((eq fofType) b) (g x2))
% Found eq_ref000:=(eq_ref00 P):((P (f x2))->(P (f x2)))
% Found (eq_ref00 P) as proof of (P0 (x1 x2))
% Found ((eq_ref0 (f x2)) P) as proof of (P0 (x1 x2))
% Found (((eq_ref fofType) (f x2)) P) as proof of (P0 (x1 x2))
% Found (((eq_ref fofType) (f x2)) P) as proof of (P0 (x1 x2))
% Found eq_ref000:=(eq_ref00 P):((P (f x2))->(P (f x2)))
% Found (eq_ref00 P) as proof of (P0 (f x2))
% Found ((eq_ref0 (f x2)) P) as proof of (P0 (f x2))
% Found (((eq_ref fofType) (f x2)) P) as proof of (P0 (f x2))
% Found (((eq_ref fofType) (f x2)) P) as proof of (P0 (f x2))
% Found eq_ref000:=(eq_ref00 P):((P (f x2))->(P (f x2)))
% Found (eq_ref00 P) as proof of (P0 (x1 x2))
% Found ((eq_ref0 (f x2)) P) as proof of (P0 (x1 x2))
% Found (((eq_ref fofType) (f x2)) P) as proof of (P0 (x1 x2))
% Found (((eq_ref fofType) (f x2)) P) as proof of (P0 (x1 x2))
% Found eq_ref000:=(eq_ref00 P):((P (f x2))->(P (f x2)))
% Found (eq_ref00 P) as proof of (P0 (f x2))
% Found ((eq_ref0 (f x2)) P) as proof of (P0 (f x2))
% Found (((eq_ref fofType) (f x2)) P) as proof of (P0 (f x2))
% Found (((eq_ref fofType) (f x2)) P) as proof of (P0 (f x2))
% Found eq_ref000:=(eq_ref00 P):((P (f x2))->(P (f x2)))
% Found (eq_ref00 P) as proof of (P0 (x1 x2))
% Found ((eq_ref0 (f x2)) P) as proof of (P0 (x1 x2))
% Found (((eq_ref fofType) (f x2)) P) as proof of (P0 (x1 x2))
% Found (((eq_ref fofType) (f x2)) P) as proof of (P0 (x1 x2))
% Found eq_ref000:=(eq_ref00 P):((P (f x2))->(P (f x2)))
% Found (eq_ref00 P) as proof of (P0 x2)
% Found ((eq_ref0 (f x2)) P) as proof of (P0 x2)
% Found (((eq_ref fofType) (f x2)) P) as proof of (P0 x2)
% Found (((eq_ref fofType) (f x2)) P) as proof of (P0 x2)
% Found eq_ref000:=(eq_ref00 P):((P (f x2))->(P (f x2)))
% Found (eq_ref00 P) as proof of (P0 (f x2))
% Found ((eq_ref0 (f x2)) P) as proof of (P0 (f x2))
% Found (((eq_ref fofType) (f x2)) P) as proof of (P0 (f x2))
% Found (((eq_ref fofType) (f x2)) P) as proof of (P0 (f x2))
% Found eq_ref000:=(eq_ref00 P):((P (f x2))->(P (f x2)))
% Found (eq_ref00 P) as proof of (P0 (x1 x2))
% Found ((eq_ref0 (f x2)) P) as proof of (P0 (x1 x2))
% Found (((eq_ref fofType) (f x2)) P) as proof of (P0 (x1 x2))
% Found (((eq_ref fofType) (f x2)) P) as proof of (P0 (x1 x2))
% Found eq_ref000:=(eq_ref00 P):((P (f x2))->(P (f x2)))
% Found (eq_ref00 P) as proof of (P0 x2)
% Found ((eq_ref0 (f x2)) P) as proof of (P0 x2)
% Found (((eq_ref fofType) (f x2)) P) as proof of (P0 x2)
% Found (((eq_ref fofType) (f x2)) P) as proof of (P0 x2)
% Found eq_ref000:=(eq_ref00 P):((P (f x2))->(P (f x2)))
% Found (eq_ref00 P) as proof of (P0 x2)
% Found ((eq_ref0 (f x2)) P) as proof of (P0 x2)
% Found (((eq_ref fofType) (f x2)) P) as proof of (P0 x2)
% Found (((eq_ref fofType) (f x2)) P) as proof of (P0 x2)
% Found eq_ref000:=(eq_ref00 P):((P (f x2))->(P (f x2)))
% Found (eq_ref00 P) as proof of (P0 (f x2))
% Found ((eq_ref0 (f x2)) P) as proof of (P0 (f x2))
% Found (((eq_ref fofType) (f x2)) P) as proof of (P0 (f x2))
% Found (((eq_ref fofType) (f x2)) P) as proof of (P0 (f x2))
% Found eq_ref000:=(eq_ref00 P):((P (f x2))->(P (f x2)))
% Found (eq_ref00 P) as proof of (P0 x2)
% Found ((eq_ref0 (f x2)) P) as proof of (P0 x2)
% Found (((eq_ref fofType) (f x2)) P) as proof of (P0 x2)
% Found (((eq_ref fofType) (f x2)) P) as proof of (P0 x2)
% Found eq_ref000:=(eq_ref00 P):((P (g x2))->(P (g x2)))
% Found (eq_ref00 P) as proof of (P0 (g x2))
% Found ((eq_ref0 (g x2)) P) as proof of (P0 (g x2))
% Found (((eq_ref fofType) (g x2)) P) as proof of (P0 (g x2))
% Found (((eq_ref fofType) (g x2)) P) as proof of (P0 (g x2))
% Found eq_ref000:=(eq_ref00 P):((P (g x2))->(P (g x2)))
% Found (eq_ref00 P) as proof of (P0 (g x2))
% Found ((eq_ref0 (g x2)) P) as proof of (P0 (g x2))
% Found (((eq_ref fofType) (g x2)) P) as proof of (P0 (g x2))
% Found (((eq_ref fofType) (g x2)) P) as proof of (P0 (g x2))
% Found eq_ref00:=(eq_ref0 (f x2)):(((eq fofType) (f x2)) (f x2))
% Found (eq_ref0 (f x2)) as proof of (P x2)
% Found ((eq_ref fofType) (f x2)) as proof of (P x2)
% Found ((eq_ref fofType) (f x2)) as proof of (P x2)
% Found eq_ref00:=(eq_ref0 (f x2)):(((eq fofType) (f x2)) (f x2))
% Found (eq_ref0 (f x2)) as proof of (P x2)
% Found ((eq_ref fofType) (f x2)) as proof of (P x2)
% Found ((eq_ref fofType) (f x2)) as proof of (P x2)
% Found eq_ref00:=(eq_ref0 (f x2)):(((eq fofType) (f x2)) (f x2))
% Found (eq_ref0 (f x2)) as proof of (P x2)
% Found ((eq_ref fofType) (f x2)) as proof of (P x2)
% Found ((eq_ref fofType) (f x2)) as proof of (P x2)
% Found eq_ref00:=(eq_ref0 (f x2)):(((eq fofType) (f x2)) (f x2))
% Found (eq_ref0 (f x2)) as proof of (P x2)
% Found ((eq_ref fofType) (f x2)) as proof of (P x2)
% Found ((eq_ref fofType) (f x2)) as proof of (P x2)
% Found eq_ref000:=(eq_ref00 P):((P (g x2))->(P (g x2)))
% Found (eq_ref00 P) as proof of (P0 (g x2))
% Found ((eq_ref0 (g x2)) P) as proof of (P0 (g x2))
% Found (((eq_ref fofType) (g x2)) P) as proof of (P0 (g x2))
% Found (((eq_ref fofType) (g x2)) P) as proof of (P0 (g x2))
% Found eq_ref000:=(eq_ref00 P):((P (g x2))->(P (g x2)))
% Found (eq_ref00 P) as proof of (P0 (g x2))
% Found ((eq_ref0 (g x2)) P) as proof of (P0 (g x2))
% Found (((eq_ref fofType) (g x2)) P) as proof of (P0 (g x2))
% Found (((eq_ref fofType) (g x2)) P) as proof 
% EOF
%------------------------------------------------------------------------------