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

View Problem - Process Solution

%------------------------------------------------------------------------------
% File     : cocATP---0.2.0
% Problem  : SEU987^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 : n185.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:28 EDT 2014

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

% Comments : 
%------------------------------------------------------------------------------
%----NO SOLUTION OUTPUT BY SYSTEM
%------------------------------------------------------------------------------
%----ORIGINAL SYSTEM OUTPUT
% % Problem  : SEU987^5 : TPTP v6.1.0. Released v4.0.0.
% % Command  : python CASC.py /export/starexec/sandbox/benchmark/theBenchmark.p
% % Computer : n185.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:47:56 CDT 2014
% % CPUTime  : 300.01 
% 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 0x153d7e8>, <kernel.Type object at 0x153dfc8>) of role type named b_type
% Using role type
% Declaring b:Type
% FOF formula (<kernel.Constant object at 0x171f0e0>, <kernel.Type object at 0x153da70>) of role type named a_type
% Using role type
% Declaring a:Type
% FOF formula (<kernel.Constant object at 0x153dea8>, <kernel.DependentProduct object at 0x153d710>) of role type named g
% Using role type
% Declaring g:(b->b)
% FOF formula (<kernel.Constant object at 0x153dfc8>, <kernel.DependentProduct object at 0x153d5a8>) of role type named f
% Using role type
% Declaring f:(a->a)
% FOF formula (<kernel.Constant object at 0x153d7e8>, <kernel.DependentProduct object at 0x153da28>) of role type named cS
% Using role type
% Declaring cS:(a->(b->Prop))
% FOF formula (((and (forall (Xx:a) (Xy:a), ((((eq a) (f Xx)) (f Xy))->(((eq a) Xx) Xy)))) (forall (Xx:b) (Xy:b), ((((eq b) (g Xx)) (g Xy))->(((eq b) Xx) Xy))))->((ex (a->(b->Prop))) (fun (Xu:(a->(b->Prop)))=> (forall (Xx:a) (Xy:b), ((iff ((cS Xx) Xy)) ((Xu (f Xx)) (g Xy))))))) of role conjecture named cSV7_pme
% Conjecture to prove = (((and (forall (Xx:a) (Xy:a), ((((eq a) (f Xx)) (f Xy))->(((eq a) Xx) Xy)))) (forall (Xx:b) (Xy:b), ((((eq b) (g Xx)) (g Xy))->(((eq b) Xx) Xy))))->((ex (a->(b->Prop))) (fun (Xu:(a->(b->Prop)))=> (forall (Xx:a) (Xy:b), ((iff ((cS Xx) Xy)) ((Xu (f Xx)) (g Xy))))))):Prop
% Parameter b_DUMMY:b.
% Parameter a_DUMMY:a.
% We need to prove ['(((and (forall (Xx:a) (Xy:a), ((((eq a) (f Xx)) (f Xy))->(((eq a) Xx) Xy)))) (forall (Xx:b) (Xy:b), ((((eq b) (g Xx)) (g Xy))->(((eq b) Xx) Xy))))->((ex (a->(b->Prop))) (fun (Xu:(a->(b->Prop)))=> (forall (Xx:a) (Xy:b), ((iff ((cS Xx) Xy)) ((Xu (f Xx)) (g Xy)))))))']
% Parameter b:Type.
% Parameter a:Type.
% Parameter g:(b->b).
% Parameter f:(a->a).
% Parameter cS:(a->(b->Prop)).
% Trying to prove (((and (forall (Xx:a) (Xy:a), ((((eq a) (f Xx)) (f Xy))->(((eq a) Xx) Xy)))) (forall (Xx:b) (Xy:b), ((((eq b) (g Xx)) (g Xy))->(((eq b) Xx) Xy))))->((ex (a->(b->Prop))) (fun (Xu:(a->(b->Prop)))=> (forall (Xx:a) (Xy:b), ((iff ((cS Xx) Xy)) ((Xu (f Xx)) (g Xy)))))))
% Found iff_refl0:=(iff_refl ((x0 (f Xx)) (g Xy))):((iff ((x0 (f Xx)) (g Xy))) ((x0 (f Xx)) (g Xy)))
% Found (iff_refl ((x0 (f Xx)) (g Xy))) as proof of ((iff ((x0 (f Xx)) (g Xy))) ((cS Xx) Xy))
% Found (iff_refl ((x0 (f Xx)) (g Xy))) as proof of ((iff ((x0 (f Xx)) (g Xy))) ((cS Xx) Xy))
% Found (iff_refl ((x0 (f Xx)) (g Xy))) as proof of ((iff ((x0 (f Xx)) (g Xy))) ((cS Xx) Xy))
% Found (iff_sym00 (iff_refl ((x0 (f Xx)) (g Xy)))) as proof of ((iff ((cS Xx) Xy)) ((x0 (f Xx)) (g Xy)))
% Found ((iff_sym0 ((cS Xx) Xy)) (iff_refl ((x0 (f Xx)) (g Xy)))) as proof of ((iff ((cS Xx) Xy)) ((x0 (f Xx)) (g Xy)))
% Found (((iff_sym ((x0 (f Xx)) (g Xy))) ((cS Xx) Xy)) (iff_refl ((x0 (f Xx)) (g Xy)))) as proof of ((iff ((cS Xx) Xy)) ((x0 (f Xx)) (g Xy)))
% Found eq_ref000:=(eq_ref00 (fun (x1:b)=> ((x0 (f Xx)) (g x1)))):(((x0 (f Xx)) (g Xy))->((x0 (f Xx)) (g Xy)))
% Found (eq_ref00 (fun (x1:b)=> ((x0 (f Xx)) (g x1)))) as proof of (((x0 (f Xx)) (g Xy))->((cS Xx) Xy))
% Found ((eq_ref0 Xy) (fun (x1:b)=> ((x0 (f Xx)) (g x1)))) as proof of (((x0 (f Xx)) (g Xy))->((cS Xx) Xy))
% Found (((eq_ref b) Xy) (fun (x1:b)=> ((x0 (f Xx)) (g x1)))) as proof of (((x0 (f Xx)) (g Xy))->((cS Xx) Xy))
% Found (((eq_ref b) Xy) (fun (x1:b)=> ((x0 (f Xx)) (g x1)))) as proof of (((x0 (f Xx)) (g Xy))->((cS Xx) Xy))
% Found (((eq_ref b) Xy) (fun (x1:b)=> ((x0 (f Xx)) (g x1)))) as proof of (((x0 (f Xx)) (g Xy))->((cS Xx) Xy))
% Found eq_ref000:=(eq_ref00 (cS Xx)):(((cS Xx) Xy)->((cS Xx) Xy))
% Found (eq_ref00 (cS Xx)) as proof of (((cS Xx) Xy)->((x0 (f Xx)) (g Xy)))
% Found ((eq_ref0 Xy) (cS Xx)) as proof of (((cS Xx) Xy)->((x0 (f Xx)) (g Xy)))
% Found (((eq_ref b) Xy) (cS Xx)) as proof of (((cS Xx) Xy)->((x0 (f Xx)) (g Xy)))
% Found (((eq_ref b) Xy) (cS Xx)) as proof of (((cS Xx) Xy)->((x0 (f Xx)) (g Xy)))
% Found ((conj00 (((eq_ref b) Xy) (cS Xx))) (((eq_ref b) Xy) (fun (x1:b)=> ((x0 (f Xx)) (g x1))))) as proof of ((iff ((cS Xx) Xy)) ((x0 (f Xx)) (g Xy)))
% Found (((conj0 (((x0 (f Xx)) (g Xy))->((cS Xx) Xy))) (((eq_ref b) Xy) (cS Xx))) (((eq_ref b) Xy) (fun (x1:b)=> ((x0 (f Xx)) (g x1))))) as proof of ((iff ((cS Xx) Xy)) ((x0 (f Xx)) (g Xy)))
% Found ((((conj (((cS Xx) Xy)->((x0 (f Xx)) (g Xy)))) (((x0 (f Xx)) (g Xy))->((cS Xx) Xy))) (((eq_ref b) Xy) (cS Xx))) (((eq_ref b) Xy) (fun (x1:b)=> ((x0 (f Xx)) (g x1))))) as proof of ((iff ((cS Xx) Xy)) ((x0 (f Xx)) (g Xy)))
% Found iff_refl0:=(iff_refl ((x2 (f Xx)) (g Xy))):((iff ((x2 (f Xx)) (g Xy))) ((x2 (f Xx)) (g Xy)))
% Found (iff_refl ((x2 (f Xx)) (g Xy))) as proof of ((iff ((x2 (f Xx)) (g Xy))) ((cS Xx) Xy))
% Found (iff_refl ((x2 (f Xx)) (g Xy))) as proof of ((iff ((x2 (f Xx)) (g Xy))) ((cS Xx) Xy))
% Found (iff_refl ((x2 (f Xx)) (g Xy))) as proof of ((iff ((x2 (f Xx)) (g Xy))) ((cS Xx) Xy))
% Found (iff_sym00 (iff_refl ((x2 (f Xx)) (g Xy)))) as proof of ((iff ((cS Xx) Xy)) ((x2 (f Xx)) (g Xy)))
% Found ((iff_sym0 ((cS Xx) Xy)) (iff_refl ((x2 (f Xx)) (g Xy)))) as proof of ((iff ((cS Xx) Xy)) ((x2 (f Xx)) (g Xy)))
% Found (((iff_sym ((x2 (f Xx)) (g Xy))) ((cS Xx) Xy)) (iff_refl ((x2 (f Xx)) (g Xy)))) as proof of ((iff ((cS Xx) Xy)) ((x2 (f Xx)) (g Xy)))
% Found iff_refl0:=(iff_refl ((x0 (f Xx)) (g Xy))):((iff ((x0 (f Xx)) (g Xy))) ((x0 (f Xx)) (g Xy)))
% Found (iff_refl ((x0 (f Xx)) (g Xy))) as proof of ((iff ((x0 (f Xx)) (g Xy))) ((cS Xx) Xy))
% Found (iff_refl ((x0 (f Xx)) (g Xy))) as proof of ((iff ((x0 (f Xx)) (g Xy))) ((cS Xx) Xy))
% Found (iff_refl ((x0 (f Xx)) (g Xy))) as proof of ((iff ((x0 (f Xx)) (g Xy))) ((cS Xx) Xy))
% Found (iff_sym00 (iff_refl ((x0 (f Xx)) (g Xy)))) as proof of ((iff ((cS Xx) Xy)) ((x0 (f Xx)) (g Xy)))
% Found ((iff_sym0 ((cS Xx) Xy)) (iff_refl ((x0 (f Xx)) (g Xy)))) as proof of ((iff ((cS Xx) Xy)) ((x0 (f Xx)) (g Xy)))
% Found (((iff_sym ((x0 (f Xx)) (g Xy))) ((cS Xx) Xy)) (iff_refl ((x0 (f Xx)) (g Xy)))) as proof of ((iff ((cS Xx) Xy)) ((x0 (f Xx)) (g Xy)))
% Found (fun (x2:(forall (Xx0:b) (Xy0:b), ((((eq b) (g Xx0)) (g Xy0))->(((eq b) Xx0) Xy0))))=> (((iff_sym ((x0 (f Xx)) (g Xy))) ((cS Xx) Xy)) (iff_refl ((x0 (f Xx)) (g Xy))))) as proof of ((iff ((cS Xx) Xy)) ((x0 (f Xx)) (g Xy)))
% Found (fun (x1:(forall (Xx0:a) (Xy0:a), ((((eq a) (f Xx0)) (f Xy0))->(((eq a) Xx0) Xy0)))) (x2:(forall (Xx0:b) (Xy0:b), ((((eq b) (g Xx0)) (g Xy0))->(((eq b) Xx0) Xy0))))=> (((iff_sym ((x0 (f Xx)) (g Xy))) ((cS Xx) Xy)) (iff_refl ((x0 (f Xx)) (g Xy))))) as proof of ((forall (Xx0:b) (Xy0:b), ((((eq b) (g Xx0)) (g Xy0))->(((eq b) Xx0) Xy0)))->((iff ((cS Xx) Xy)) ((x0 (f Xx)) (g Xy))))
% Found (fun (x1:(forall (Xx0:a) (Xy0:a), ((((eq a) (f Xx0)) (f Xy0))->(((eq a) Xx0) Xy0)))) (x2:(forall (Xx0:b) (Xy0:b), ((((eq b) (g Xx0)) (g Xy0))->(((eq b) Xx0) Xy0))))=> (((iff_sym ((x0 (f Xx)) (g Xy))) ((cS Xx) Xy)) (iff_refl ((x0 (f Xx)) (g Xy))))) as proof of ((forall (Xx0:a) (Xy0:a), ((((eq a) (f Xx0)) (f Xy0))->(((eq a) Xx0) Xy0)))->((forall (Xx0:b) (Xy0:b), ((((eq b) (g Xx0)) (g Xy0))->(((eq b) Xx0) Xy0)))->((iff ((cS Xx) Xy)) ((x0 (f Xx)) (g Xy)))))
% Found (and_rect00 (fun (x1:(forall (Xx0:a) (Xy0:a), ((((eq a) (f Xx0)) (f Xy0))->(((eq a) Xx0) Xy0)))) (x2:(forall (Xx0:b) (Xy0:b), ((((eq b) (g Xx0)) (g Xy0))->(((eq b) Xx0) Xy0))))=> (((iff_sym ((x0 (f Xx)) (g Xy))) ((cS Xx) Xy)) (iff_refl ((x0 (f Xx)) (g Xy)))))) as proof of ((iff ((cS Xx) Xy)) ((x0 (f Xx)) (g Xy)))
% Found ((and_rect0 ((iff ((cS Xx) Xy)) ((x0 (f Xx)) (g Xy)))) (fun (x1:(forall (Xx0:a) (Xy0:a), ((((eq a) (f Xx0)) (f Xy0))->(((eq a) Xx0) Xy0)))) (x2:(forall (Xx0:b) (Xy0:b), ((((eq b) (g Xx0)) (g Xy0))->(((eq b) Xx0) Xy0))))=> (((iff_sym ((x0 (f Xx)) (g Xy))) ((cS Xx) Xy)) (iff_refl ((x0 (f Xx)) (g Xy)))))) as proof of ((iff ((cS Xx) Xy)) ((x0 (f Xx)) (g Xy)))
% Found (((fun (P:Type) (x1:((forall (Xx:a) (Xy:a), ((((eq a) (f Xx)) (f Xy))->(((eq a) Xx) Xy)))->((forall (Xx:b) (Xy:b), ((((eq b) (g Xx)) (g Xy))->(((eq b) Xx) Xy)))->P)))=> (((((and_rect (forall (Xx:a) (Xy:a), ((((eq a) (f Xx)) (f Xy))->(((eq a) Xx) Xy)))) (forall (Xx:b) (Xy:b), ((((eq b) (g Xx)) (g Xy))->(((eq b) Xx) Xy)))) P) x1) x)) ((iff ((cS Xx) Xy)) ((x0 (f Xx)) (g Xy)))) (fun (x1:(forall (Xx0:a) (Xy0:a), ((((eq a) (f Xx0)) (f Xy0))->(((eq a) Xx0) Xy0)))) (x2:(forall (Xx0:b) (Xy0:b), ((((eq b) (g Xx0)) (g Xy0))->(((eq b) Xx0) Xy0))))=> (((iff_sym ((x0 (f Xx)) (g Xy))) ((cS Xx) Xy)) (iff_refl ((x0 (f Xx)) (g Xy)))))) as proof of ((iff ((cS Xx) Xy)) ((x0 (f Xx)) (g Xy)))
% Found eq_ref000:=(eq_ref00 (fun (x3:b)=> ((x2 (f Xx)) (g x3)))):(((x2 (f Xx)) (g Xy))->((x2 (f Xx)) (g Xy)))
% Found (eq_ref00 (fun (x3:b)=> ((x2 (f Xx)) (g x3)))) as proof of (((x2 (f Xx)) (g Xy))->((cS Xx) Xy))
% Found ((eq_ref0 Xy) (fun (x3:b)=> ((x2 (f Xx)) (g x3)))) as proof of (((x2 (f Xx)) (g Xy))->((cS Xx) Xy))
% Found (((eq_ref b) Xy) (fun (x3:b)=> ((x2 (f Xx)) (g x3)))) as proof of (((x2 (f Xx)) (g Xy))->((cS Xx) Xy))
% Found (((eq_ref b) Xy) (fun (x3:b)=> ((x2 (f Xx)) (g x3)))) as proof of (((x2 (f Xx)) (g Xy))->((cS Xx) Xy))
% Found (((eq_ref b) Xy) (fun (x3:b)=> ((x2 (f Xx)) (g x3)))) as proof of (((x2 (f Xx)) (g Xy))->((cS Xx) Xy))
% Found eq_ref000:=(eq_ref00 (cS Xx)):(((cS Xx) Xy)->((cS Xx) Xy))
% Found (eq_ref00 (cS Xx)) as proof of (((cS Xx) Xy)->((x2 (f Xx)) (g Xy)))
% Found ((eq_ref0 Xy) (cS Xx)) as proof of (((cS Xx) Xy)->((x2 (f Xx)) (g Xy)))
% Found (((eq_ref b) Xy) (cS Xx)) as proof of (((cS Xx) Xy)->((x2 (f Xx)) (g Xy)))
% Found (((eq_ref b) Xy) (cS Xx)) as proof of (((cS Xx) Xy)->((x2 (f Xx)) (g Xy)))
% Found ((conj00 (((eq_ref b) Xy) (cS Xx))) (((eq_ref b) Xy) (fun (x3:b)=> ((x2 (f Xx)) (g x3))))) as proof of ((iff ((cS Xx) Xy)) ((x2 (f Xx)) (g Xy)))
% Found (((conj0 (((x2 (f Xx)) (g Xy))->((cS Xx) Xy))) (((eq_ref b) Xy) (cS Xx))) (((eq_ref b) Xy) (fun (x3:b)=> ((x2 (f Xx)) (g x3))))) as proof of ((iff ((cS Xx) Xy)) ((x2 (f Xx)) (g Xy)))
% Found ((((conj (((cS Xx) Xy)->((x2 (f Xx)) (g Xy)))) (((x2 (f Xx)) (g Xy))->((cS Xx) Xy))) (((eq_ref b) Xy) (cS Xx))) (((eq_ref b) Xy) (fun (x3:b)=> ((x2 (f Xx)) (g x3))))) as proof of ((iff ((cS Xx) Xy)) ((x2 (f Xx)) (g Xy)))
% Found eta_expansion_dep000:=(eta_expansion_dep00 (fun (Xu:(a->(b->Prop)))=> (forall (Xx:a) (Xy:b), ((iff ((cS Xx) Xy)) ((Xu (f Xx)) (g Xy)))))):(((eq ((a->(b->Prop))->Prop)) (fun (Xu:(a->(b->Prop)))=> (forall (Xx:a) (Xy:b), ((iff ((cS Xx) Xy)) ((Xu (f Xx)) (g Xy)))))) (fun (x:(a->(b->Prop)))=> (forall (Xx:a) (Xy:b), ((iff ((cS Xx) Xy)) ((x (f Xx)) (g Xy))))))
% Found (eta_expansion_dep00 (fun (Xu:(a->(b->Prop)))=> (forall (Xx:a) (Xy:b), ((iff ((cS Xx) Xy)) ((Xu (f Xx)) (g Xy)))))) as proof of (((eq ((a->(b->Prop))->Prop)) (fun (Xu:(a->(b->Prop)))=> (forall (Xx:a) (Xy:b), ((iff ((cS Xx) Xy)) ((Xu (f Xx)) (g Xy)))))) b0)
% Found ((eta_expansion_dep0 (fun (x1:(a->(b->Prop)))=> Prop)) (fun (Xu:(a->(b->Prop)))=> (forall (Xx:a) (Xy:b), ((iff ((cS Xx) Xy)) ((Xu (f Xx)) (g Xy)))))) as proof of (((eq ((a->(b->Prop))->Prop)) (fun (Xu:(a->(b->Prop)))=> (forall (Xx:a) (Xy:b), ((iff ((cS Xx) Xy)) ((Xu (f Xx)) (g Xy)))))) b0)
% Found (((eta_expansion_dep (a->(b->Prop))) (fun (x1:(a->(b->Prop)))=> Prop)) (fun (Xu:(a->(b->Prop)))=> (forall (Xx:a) (Xy:b), ((iff ((cS Xx) Xy)) ((Xu (f Xx)) (g Xy)))))) as proof of (((eq ((a->(b->Prop))->Prop)) (fun (Xu:(a->(b->Prop)))=> (forall (Xx:a) (Xy:b), ((iff ((cS Xx) Xy)) ((Xu (f Xx)) (g Xy)))))) b0)
% Found (((eta_expansion_dep (a->(b->Prop))) (fun (x1:(a->(b->Prop)))=> Prop)) (fun (Xu:(a->(b->Prop)))=> (forall (Xx:a) (Xy:b), ((iff ((cS Xx) Xy)) ((Xu (f Xx)) (g Xy)))))) as proof of (((eq ((a->(b->Prop))->Prop)) (fun (Xu:(a->(b->Prop)))=> (forall (Xx:a) (Xy:b), ((iff ((cS Xx) Xy)) ((Xu (f Xx)) (g Xy)))))) b0)
% Found (((eta_expansion_dep (a->(b->Prop))) (fun (x1:(a->(b->Prop)))=> Prop)) (fun (Xu:(a->(b->Prop)))=> (forall (Xx:a) (Xy:b), ((iff ((cS Xx) Xy)) ((Xu (f Xx)) (g Xy)))))) as proof of (((eq ((a->(b->Prop))->Prop)) (fun (Xu:(a->(b->Prop)))=> (forall (Xx:a) (Xy:b), ((iff ((cS Xx) Xy)) ((Xu (f Xx)) (g Xy)))))) b0)
% 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)) (forall (Xx:a) (Xy:b), ((iff ((cS Xx) Xy)) ((x0 (f Xx)) (g Xy)))))
% Found ((eq_ref Prop) (f0 x0)) as proof of (((eq Prop) (f0 x0)) (forall (Xx:a) (Xy:b), ((iff ((cS Xx) Xy)) ((x0 (f Xx)) (g Xy)))))
% Found ((eq_ref Prop) (f0 x0)) as proof of (((eq Prop) (f0 x0)) (forall (Xx:a) (Xy:b), ((iff ((cS Xx) Xy)) ((x0 (f Xx)) (g Xy)))))
% Found (fun (x0:(a->(b->Prop)))=> ((eq_ref Prop) (f0 x0))) as proof of (((eq Prop) (f0 x0)) (forall (Xx:a) (Xy:b), ((iff ((cS Xx) Xy)) ((x0 (f Xx)) (g Xy)))))
% Found (fun (x0:(a->(b->Prop)))=> ((eq_ref Prop) (f0 x0))) as proof of (forall (x:(a->(b->Prop))), (((eq Prop) (f0 x)) (forall (Xx:a) (Xy:b), ((iff ((cS Xx) Xy)) ((x (f Xx)) (g Xy))))))
% 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)) (forall (Xx:a) (Xy:b), ((iff ((cS Xx) Xy)) ((x0 (f Xx)) (g Xy)))))
% Found ((eq_ref Prop) (f0 x0)) as proof of (((eq Prop) (f0 x0)) (forall (Xx:a) (Xy:b), ((iff ((cS Xx) Xy)) ((x0 (f Xx)) (g Xy)))))
% Found ((eq_ref Prop) (f0 x0)) as proof of (((eq Prop) (f0 x0)) (forall (Xx:a) (Xy:b), ((iff ((cS Xx) Xy)) ((x0 (f Xx)) (g Xy)))))
% Found (fun (x0:(a->(b->Prop)))=> ((eq_ref Prop) (f0 x0))) as proof of (((eq Prop) (f0 x0)) (forall (Xx:a) (Xy:b), ((iff ((cS Xx) Xy)) ((x0 (f Xx)) (g Xy)))))
% Found (fun (x0:(a->(b->Prop)))=> ((eq_ref Prop) (f0 x0))) as proof of (forall (x:(a->(b->Prop))), (((eq Prop) (f0 x)) (forall (Xx:a) (Xy:b), ((iff ((cS Xx) Xy)) ((x (f Xx)) (g Xy))))))
% Found eta_expansion000:=(eta_expansion00 (fun (Xu:(a->(b->Prop)))=> (forall (Xx:a) (Xy:b), ((iff ((cS Xx) Xy)) ((Xu (f Xx)) (g Xy)))))):(((eq ((a->(b->Prop))->Prop)) (fun (Xu:(a->(b->Prop)))=> (forall (Xx:a) (Xy:b), ((iff ((cS Xx) Xy)) ((Xu (f Xx)) (g Xy)))))) (fun (x:(a->(b->Prop)))=> (forall (Xx:a) (Xy:b), ((iff ((cS Xx) Xy)) ((x (f Xx)) (g Xy))))))
% Found (eta_expansion00 (fun (Xu:(a->(b->Prop)))=> (forall (Xx:a) (Xy:b), ((iff ((cS Xx) Xy)) ((Xu (f Xx)) (g Xy)))))) as proof of (((eq ((a->(b->Prop))->Prop)) (fun (Xu:(a->(b->Prop)))=> (forall (Xx:a) (Xy:b), ((iff ((cS Xx) Xy)) ((Xu (f Xx)) (g Xy)))))) b0)
% Found ((eta_expansion0 Prop) (fun (Xu:(a->(b->Prop)))=> (forall (Xx:a) (Xy:b), ((iff ((cS Xx) Xy)) ((Xu (f Xx)) (g Xy)))))) as proof of (((eq ((a->(b->Prop))->Prop)) (fun (Xu:(a->(b->Prop)))=> (forall (Xx:a) (Xy:b), ((iff ((cS Xx) Xy)) ((Xu (f Xx)) (g Xy)))))) b0)
% Found (((eta_expansion (a->(b->Prop))) Prop) (fun (Xu:(a->(b->Prop)))=> (forall (Xx:a) (Xy:b), ((iff ((cS Xx) Xy)) ((Xu (f Xx)) (g Xy)))))) as proof of (((eq ((a->(b->Prop))->Prop)) (fun (Xu:(a->(b->Prop)))=> (forall (Xx:a) (Xy:b), ((iff ((cS Xx) Xy)) ((Xu (f Xx)) (g Xy)))))) b0)
% Found (((eta_expansion (a->(b->Prop))) Prop) (fun (Xu:(a->(b->Prop)))=> (forall (Xx:a) (Xy:b), ((iff ((cS Xx) Xy)) ((Xu (f Xx)) (g Xy)))))) as proof of (((eq ((a->(b->Prop))->Prop)) (fun (Xu:(a->(b->Prop)))=> (forall (Xx:a) (Xy:b), ((iff ((cS Xx) Xy)) ((Xu (f Xx)) (g Xy)))))) b0)
% Found (((eta_expansion (a->(b->Prop))) Prop) (fun (Xu:(a->(b->Prop)))=> (forall (Xx:a) (Xy:b), ((iff ((cS Xx) Xy)) ((Xu (f Xx)) (g Xy)))))) as proof of (((eq ((a->(b->Prop))->Prop)) (fun (Xu:(a->(b->Prop)))=> (forall (Xx:a) (Xy:b), ((iff ((cS Xx) Xy)) ((Xu (f Xx)) (g Xy)))))) b0)
% Found eq_ref00:=(eq_ref0 (f0 x2)):(((eq Prop) (f0 x2)) (f0 x2))
% Found (eq_ref0 (f0 x2)) as proof of (((eq Prop) (f0 x2)) (forall (Xx:a) (Xy:b), ((iff ((cS Xx) Xy)) ((x2 (f Xx)) (g Xy)))))
% Found ((eq_ref Prop) (f0 x2)) as proof of (((eq Prop) (f0 x2)) (forall (Xx:a) (Xy:b), ((iff ((cS Xx) Xy)) ((x2 (f Xx)) (g Xy)))))
% Found ((eq_ref Prop) (f0 x2)) as proof of (((eq Prop) (f0 x2)) (forall (Xx:a) (Xy:b), ((iff ((cS Xx) Xy)) ((x2 (f Xx)) (g Xy)))))
% Found (fun (x2:(a->(b->Prop)))=> ((eq_ref Prop) (f0 x2))) as proof of (((eq Prop) (f0 x2)) (forall (Xx:a) (Xy:b), ((iff ((cS Xx) Xy)) ((x2 (f Xx)) (g Xy)))))
% Found (fun (x2:(a->(b->Prop)))=> ((eq_ref Prop) (f0 x2))) as proof of (forall (x:(a->(b->Prop))), (((eq Prop) (f0 x)) (forall (Xx:a) (Xy:b), ((iff ((cS Xx) Xy)) ((x (f Xx)) (g Xy))))))
% Found eq_ref00:=(eq_ref0 (f0 x2)):(((eq Prop) (f0 x2)) (f0 x2))
% Found (eq_ref0 (f0 x2)) as proof of (((eq Prop) (f0 x2)) (forall (Xx:a) (Xy:b), ((iff ((cS Xx) Xy)) ((x2 (f Xx)) (g Xy)))))
% Found ((eq_ref Prop) (f0 x2)) as proof of (((eq Prop) (f0 x2)) (forall (Xx:a) (Xy:b), ((iff ((cS Xx) Xy)) ((x2 (f Xx)) (g Xy)))))
% Found ((eq_ref Prop) (f0 x2)) as proof of (((eq Prop) (f0 x2)) (forall (Xx:a) (Xy:b), ((iff ((cS Xx) Xy)) ((x2 (f Xx)) (g Xy)))))
% Found (fun (x2:(a->(b->Prop)))=> ((eq_ref Prop) (f0 x2))) as proof of (((eq Prop) (f0 x2)) (forall (Xx:a) (Xy:b), ((iff ((cS Xx) Xy)) ((x2 (f Xx)) (g Xy)))))
% Found (fun (x2:(a->(b->Prop)))=> ((eq_ref Prop) (f0 x2))) as proof of (forall (x:(a->(b->Prop))), (((eq Prop) (f0 x)) (forall (Xx:a) (Xy:b), ((iff ((cS Xx) Xy)) ((x (f Xx)) (g Xy))))))
% Found iff_refl0:=(iff_refl ((x0 (f Xx)) (g Xy))):((iff ((x0 (f Xx)) (g Xy))) ((x0 (f Xx)) (g Xy)))
% Found (iff_refl ((x0 (f Xx)) (g Xy))) as proof of ((iff ((x0 (f Xx)) (g Xy))) ((cS Xx) Xy))
% Found (iff_refl ((x0 (f Xx)) (g Xy))) as proof of ((iff ((x0 (f Xx)) (g Xy))) ((cS Xx) Xy))
% Found (iff_refl ((x0 (f Xx)) (g Xy))) as proof of ((iff ((x0 (f Xx)) (g Xy))) ((cS Xx) Xy))
% Found (iff_sym00 (iff_refl ((x0 (f Xx)) (g Xy)))) as proof of ((and (((cS Xx) Xy)->((x0 (f Xx)) (g Xy)))) (((x0 (f Xx)) (g Xy))->((cS Xx) Xy)))
% Found ((iff_sym0 ((cS Xx) Xy)) (iff_refl ((x0 (f Xx)) (g Xy)))) as proof of ((and (((cS Xx) Xy)->((x0 (f Xx)) (g Xy)))) (((x0 (f Xx)) (g Xy))->((cS Xx) Xy)))
% Found (((iff_sym ((x0 (f Xx)) (g Xy))) ((cS Xx) Xy)) (iff_refl ((x0 (f Xx)) (g Xy)))) as proof of ((and (((cS Xx) Xy)->((x0 (f Xx)) (g Xy)))) (((x0 (f Xx)) (g Xy))->((cS Xx) Xy)))
% Found (((iff_sym ((x0 (f Xx)) (g Xy))) ((cS Xx) Xy)) (iff_refl ((x0 (f Xx)) (g Xy)))) as proof of ((and (((cS Xx) Xy)->((x0 (f Xx)) (g Xy)))) (((x0 (f Xx)) (g Xy))->((cS Xx) Xy)))
% Found eq_ref000:=(eq_ref00 (fun (x1:b)=> ((x0 (f Xx)) (g x1)))):(((x0 (f Xx)) (g Xy))->((x0 (f Xx)) (g Xy)))
% Found (eq_ref00 (fun (x1:b)=> ((x0 (f Xx)) (g x1)))) as proof of (((x0 (f Xx)) (g Xy))->((cS Xx) Xy))
% Found ((eq_ref0 Xy) (fun (x1:b)=> ((x0 (f Xx)) (g x1)))) as proof of (((x0 (f Xx)) (g Xy))->((cS Xx) Xy))
% Found (((eq_ref b) Xy) (fun (x1:b)=> ((x0 (f Xx)) (g x1)))) as proof of (((x0 (f Xx)) (g Xy))->((cS Xx) Xy))
% Found (((eq_ref b) Xy) (fun (x1:b)=> ((x0 (f Xx)) (g x1)))) as proof of (((x0 (f Xx)) (g Xy))->((cS Xx) Xy))
% Found (((eq_ref b) Xy) (fun (x1:b)=> ((x0 (f Xx)) (g x1)))) as proof of (((x0 (f Xx)) (g Xy))->((cS Xx) Xy))
% Found eq_ref000:=(eq_ref00 (cS Xx)):(((cS Xx) Xy)->((cS Xx) Xy))
% Found (eq_ref00 (cS Xx)) as proof of (((cS Xx) Xy)->((x0 (f Xx)) (g Xy)))
% Found ((eq_ref0 Xy) (cS Xx)) as proof of (((cS Xx) Xy)->((x0 (f Xx)) (g Xy)))
% Found (((eq_ref b) Xy) (cS Xx)) as proof of (((cS Xx) Xy)->((x0 (f Xx)) (g Xy)))
% Found (((eq_ref b) Xy) (cS Xx)) as proof of (((cS Xx) Xy)->((x0 (f Xx)) (g Xy)))
% Found ((conj00 (((eq_ref b) Xy) (cS Xx))) (((eq_ref b) Xy) (fun (x1:b)=> ((x0 (f Xx)) (g x1))))) as proof of ((and (((cS Xx) Xy)->((x0 (f Xx)) (g Xy)))) (((x0 (f Xx)) (g Xy))->((cS Xx) Xy)))
% Found (((conj0 (((x0 (f Xx)) (g Xy))->((cS Xx) Xy))) (((eq_ref b) Xy) (cS Xx))) (((eq_ref b) Xy) (fun (x1:b)=> ((x0 (f Xx)) (g x1))))) as proof of ((and (((cS Xx) Xy)->((x0 (f Xx)) (g Xy)))) (((x0 (f Xx)) (g Xy))->((cS Xx) Xy)))
% Found ((((conj (((cS Xx) Xy)->((x0 (f Xx)) (g Xy)))) (((x0 (f Xx)) (g Xy))->((cS Xx) Xy))) (((eq_ref b) Xy) (cS Xx))) (((eq_ref b) Xy) (fun (x1:b)=> ((x0 (f Xx)) (g x1))))) as proof of ((and (((cS Xx) Xy)->((x0 (f Xx)) (g Xy)))) (((x0 (f Xx)) (g Xy))->((cS Xx) Xy)))
% Found ((((conj (((cS Xx) Xy)->((x0 (f Xx)) (g Xy)))) (((x0 (f Xx)) (g Xy))->((cS Xx) Xy))) (((eq_ref b) Xy) (cS Xx))) (((eq_ref b) Xy) (fun (x1:b)=> ((x0 (f Xx)) (g x1))))) as proof of ((and (((cS Xx) Xy)->((x0 (f Xx)) (g Xy)))) (((x0 (f Xx)) (g Xy))->((cS Xx) Xy)))
% Found iff_refl0:=(iff_refl ((x2 (f Xx)) (g Xy))):((iff ((x2 (f Xx)) (g Xy))) ((x2 (f Xx)) (g Xy)))
% Found (iff_refl ((x2 (f Xx)) (g Xy))) as proof of ((iff ((x2 (f Xx)) (g Xy))) ((cS Xx) Xy))
% Found (iff_refl ((x2 (f Xx)) (g Xy))) as proof of ((iff ((x2 (f Xx)) (g Xy))) ((cS Xx) Xy))
% Found (iff_refl ((x2 (f Xx)) (g Xy))) as proof of ((iff ((x2 (f Xx)) (g Xy))) ((cS Xx) Xy))
% Found (iff_sym00 (iff_refl ((x2 (f Xx)) (g Xy)))) as proof of ((and (((cS Xx) Xy)->((x2 (f Xx)) (g Xy)))) (((x2 (f Xx)) (g Xy))->((cS Xx) Xy)))
% Found ((iff_sym0 ((cS Xx) Xy)) (iff_refl ((x2 (f Xx)) (g Xy)))) as proof of ((and (((cS Xx) Xy)->((x2 (f Xx)) (g Xy)))) (((x2 (f Xx)) (g Xy))->((cS Xx) Xy)))
% Found (((iff_sym ((x2 (f Xx)) (g Xy))) ((cS Xx) Xy)) (iff_refl ((x2 (f Xx)) (g Xy)))) as proof of ((and (((cS Xx) Xy)->((x2 (f Xx)) (g Xy)))) (((x2 (f Xx)) (g Xy))->((cS Xx) Xy)))
% Found (((iff_sym ((x2 (f Xx)) (g Xy))) ((cS Xx) Xy)) (iff_refl ((x2 (f Xx)) (g Xy)))) as proof of ((and (((cS Xx) Xy)->((x2 (f Xx)) (g Xy)))) (((x2 (f Xx)) (g Xy))->((cS Xx) Xy)))
% Found eq_ref000:=(eq_ref00 (fun (x3:b)=> ((x2 (f Xx)) (g x3)))):(((x2 (f Xx)) (g Xy))->((x2 (f Xx)) (g Xy)))
% Found (eq_ref00 (fun (x3:b)=> ((x2 (f Xx)) (g x3)))) as proof of (((x2 (f Xx)) (g Xy))->((cS Xx) Xy))
% Found ((eq_ref0 Xy) (fun (x3:b)=> ((x2 (f Xx)) (g x3)))) as proof of (((x2 (f Xx)) (g Xy))->((cS Xx) Xy))
% Found (((eq_ref b) Xy) (fun (x3:b)=> ((x2 (f Xx)) (g x3)))) as proof of (((x2 (f Xx)) (g Xy))->((cS Xx) Xy))
% Found (((eq_ref b) Xy) (fun (x3:b)=> ((x2 (f Xx)) (g x3)))) as proof of (((x2 (f Xx)) (g Xy))->((cS Xx) Xy))
% Found (((eq_ref b) Xy) (fun (x3:b)=> ((x2 (f Xx)) (g x3)))) as proof of (((x2 (f Xx)) (g Xy))->((cS Xx) Xy))
% Found eq_ref000:=(eq_ref00 (cS Xx)):(((cS Xx) Xy)->((cS Xx) Xy))
% Found (eq_ref00 (cS Xx)) as proof of (((cS Xx) Xy)->((x2 (f Xx)) (g Xy)))
% Found ((eq_ref0 Xy) (cS Xx)) as proof of (((cS Xx) Xy)->((x2 (f Xx)) (g Xy)))
% Found (((eq_ref b) Xy) (cS Xx)) as proof of (((cS Xx) Xy)->((x2 (f Xx)) (g Xy)))
% Found (((eq_ref b) Xy) (cS Xx)) as proof of (((cS Xx) Xy)->((x2 (f Xx)) (g Xy)))
% Found ((conj00 (((eq_ref b) Xy) (cS Xx))) (((eq_ref b) Xy) (fun (x3:b)=> ((x2 (f Xx)) (g x3))))) as proof of ((and (((cS Xx) Xy)->((x2 (f Xx)) (g Xy)))) (((x2 (f Xx)) (g Xy))->((cS Xx) Xy)))
% Found (((conj0 (((x2 (f Xx)) (g Xy))->((cS Xx) Xy))) (((eq_ref b) Xy) (cS Xx))) (((eq_ref b) Xy) (fun (x3:b)=> ((x2 (f Xx)) (g x3))))) as proof of ((and (((cS Xx) Xy)->((x2 (f Xx)) (g Xy)))) (((x2 (f Xx)) (g Xy))->((cS Xx) Xy)))
% Found ((((conj (((cS Xx) Xy)->((x2 (f Xx)) (g Xy)))) (((x2 (f Xx)) (g Xy))->((cS Xx) Xy))) (((eq_ref b) Xy) (cS Xx))) (((eq_ref b) Xy) (fun (x3:b)=> ((x2 (f Xx)) (g x3))))) as proof of ((and (((cS Xx) Xy)->((x2 (f Xx)) (g Xy)))) (((x2 (f Xx)) (g Xy))->((cS Xx) Xy)))
% Found ((((conj (((cS Xx) Xy)->((x2 (f Xx)) (g Xy)))) (((x2 (f Xx)) (g Xy))->((cS Xx) Xy))) (((eq_ref b) Xy) (cS Xx))) (((eq_ref b) Xy) (fun (x3:b)=> ((x2 (f Xx)) (g x3))))) as proof of ((and (((cS Xx) Xy)->((x2 (f Xx)) (g Xy)))) (((x2 (f Xx)) (g Xy))->((cS Xx) Xy)))
% Found eq_ref000:=(eq_ref00 (fun (x3:b)=> ((x0 (f Xx)) (g x3)))):(((x0 (f Xx)) (g Xy))->((x0 (f Xx)) (g Xy)))
% Found (eq_ref00 (fun (x3:b)=> ((x0 (f Xx)) (g x3)))) as proof of (((x0 (f Xx)) (g Xy))->((cS Xx) Xy))
% Found ((eq_ref0 Xy) (fun (x3:b)=> ((x0 (f Xx)) (g x3)))) as proof of (((x0 (f Xx)) (g Xy))->((cS Xx) Xy))
% Found (((eq_ref b) Xy) (fun (x3:b)=> ((x0 (f Xx)) (g x3)))) as proof of (((x0 (f Xx)) (g Xy))->((cS Xx) Xy))
% Found (((eq_ref b) Xy) (fun (x3:b)=> ((x0 (f Xx)) (g x3)))) as proof of (((x0 (f Xx)) (g Xy))->((cS Xx) Xy))
% Found (((eq_ref b) Xy) (fun (x3:b)=> ((x0 (f Xx)) (g x3)))) as proof of (((x0 (f Xx)) (g Xy))->((cS Xx) Xy))
% Found eq_ref000:=(eq_ref00 (cS Xx)):(((cS Xx) Xy)->((cS Xx) Xy))
% Found (eq_ref00 (cS Xx)) as proof of (((cS Xx) Xy)->((x0 (f Xx)) (g Xy)))
% Found ((eq_ref0 Xy) (cS Xx)) as proof of (((cS Xx) Xy)->((x0 (f Xx)) (g Xy)))
% Found (((eq_ref b) Xy) (cS Xx)) as proof of (((cS Xx) Xy)->((x0 (f Xx)) (g Xy)))
% Found (((eq_ref b) Xy) (cS Xx)) as proof of (((cS Xx) Xy)->((x0 (f Xx)) (g Xy)))
% Found ((conj00 (((eq_ref b) Xy) (cS Xx))) (((eq_ref b) Xy) (fun (x3:b)=> ((x0 (f Xx)) (g x3))))) as proof of ((and (((cS Xx) Xy)->((x0 (f Xx)) (g Xy)))) (((x0 (f Xx)) (g Xy))->((cS Xx) Xy)))
% Found (((conj0 (((x0 (f Xx)) (g Xy))->((cS Xx) Xy))) (((eq_ref b) Xy) (cS Xx))) (((eq_ref b) Xy) (fun (x3:b)=> ((x0 (f Xx)) (g x3))))) as proof of ((and (((cS Xx) Xy)->((x0 (f Xx)) (g Xy)))) (((x0 (f Xx)) (g Xy))->((cS Xx) Xy)))
% Found ((((conj (((cS Xx) Xy)->((x0 (f Xx)) (g Xy)))) (((x0 (f Xx)) (g Xy))->((cS Xx) Xy))) (((eq_ref b) Xy) (cS Xx))) (((eq_ref b) Xy) (fun (x3:b)=> ((x0 (f Xx)) (g x3))))) as proof of ((and (((cS Xx) Xy)->((x0 (f Xx)) (g Xy)))) (((x0 (f Xx)) (g Xy))->((cS Xx) Xy)))
% Found (fun (x2:(forall (Xx0:b) (Xy0:b), ((((eq b) (g Xx0)) (g Xy0))->(((eq b) Xx0) Xy0))))=> ((((conj (((cS Xx) Xy)->((x0 (f Xx)) (g Xy)))) (((x0 (f Xx)) (g Xy))->((cS Xx) Xy))) (((eq_ref b) Xy) (cS Xx))) (((eq_ref b) Xy) (fun (x3:b)=> ((x0 (f Xx)) (g x3)))))) as proof of ((and (((cS Xx) Xy)->((x0 (f Xx)) (g Xy)))) (((x0 (f Xx)) (g Xy))->((cS Xx) Xy)))
% Found (fun (x1:(forall (Xx0:a) (Xy0:a), ((((eq a) (f Xx0)) (f Xy0))->(((eq a) Xx0) Xy0)))) (x2:(forall (Xx0:b) (Xy0:b), ((((eq b) (g Xx0)) (g Xy0))->(((eq b) Xx0) Xy0))))=> ((((conj (((cS Xx) Xy)->((x0 (f Xx)) (g Xy)))) (((x0 (f Xx)) (g Xy))->((cS Xx) Xy))) (((eq_ref b) Xy) (cS Xx))) (((eq_ref b) Xy) (fun (x3:b)=> ((x0 (f Xx)) (g x3)))))) as proof of ((forall (Xx0:b) (Xy0:b), ((((eq b) (g Xx0)) (g Xy0))->(((eq b) Xx0) Xy0)))->((and (((cS Xx) Xy)->((x0 (f Xx)) (g Xy)))) (((x0 (f Xx)) (g Xy))->((cS Xx) Xy))))
% Found (fun (x1:(forall (Xx0:a) (Xy0:a), ((((eq a) (f Xx0)) (f Xy0))->(((eq a) Xx0) Xy0)))) (x2:(forall (Xx0:b) (Xy0:b), ((((eq b) (g Xx0)) (g Xy0))->(((eq b) Xx0) Xy0))))=> ((((conj (((cS Xx) Xy)->((x0 (f Xx)) (g Xy)))) (((x0 (f Xx)) (g Xy))->((cS Xx) Xy))) (((eq_ref b) Xy) (cS Xx))) (((eq_ref b) Xy) (fun (x3:b)=> ((x0 (f Xx)) (g x3)))))) as proof of ((forall (Xx0:a) (Xy0:a), ((((eq a) (f Xx0)) (f Xy0))->(((eq a) Xx0) Xy0)))->((forall (Xx0:b) (Xy0:b), ((((eq b) (g Xx0)) (g Xy0))->(((eq b) Xx0) Xy0)))->((and (((cS Xx) Xy)->((x0 (f Xx)) (g Xy)))) (((x0 (f Xx)) (g Xy))->((cS Xx) Xy)))))
% Found (and_rect00 (fun (x1:(forall (Xx0:a) (Xy0:a), ((((eq a) (f Xx0)) (f Xy0))->(((eq a) Xx0) Xy0)))) (x2:(forall (Xx0:b) (Xy0:b), ((((eq b) (g Xx0)) (g Xy0))->(((eq b) Xx0) Xy0))))=> ((((conj (((cS Xx) Xy)->((x0 (f Xx)) (g Xy)))) (((x0 (f Xx)) (g Xy))->((cS Xx) Xy))) (((eq_ref b) Xy) (cS Xx))) (((eq_ref b) Xy) (fun (x3:b)=> ((x0 (f Xx)) (g x3))))))) as proof of ((and (((cS Xx) Xy)->((x0 (f Xx)) (g Xy)))) (((x0 (f Xx)) (g Xy))->((cS Xx) Xy)))
% Found ((and_rect0 ((and (((cS Xx) Xy)->((x0 (f Xx)) (g Xy)))) (((x0 (f Xx)) (g Xy))->((cS Xx) Xy)))) (fun (x1:(forall (Xx0:a) (Xy0:a), ((((eq a) (f Xx0)) (f Xy0))->(((eq a) Xx0) Xy0)))) (x2:(forall (Xx0:b) (Xy0:b), ((((eq b) (g Xx0)) (g Xy0))->(((eq b) Xx0) Xy0))))=> ((((conj (((cS Xx) Xy)->((x0 (f Xx)) (g Xy)))) (((x0 (f Xx)) (g Xy))->((cS Xx) Xy))) (((eq_ref b) Xy) (cS Xx))) (((eq_ref b) Xy) (fun (x3:b)=> ((x0 (f Xx)) (g x3))))))) as proof of ((and (((cS Xx) Xy)->((x0 (f Xx)) (g Xy)))) (((x0 (f Xx)) (g Xy))->((cS Xx) Xy)))
% Found (((fun (P:Type) (x1:((forall (Xx:a) (Xy:a), ((((eq a) (f Xx)) (f Xy))->(((eq a) Xx) Xy)))->((forall (Xx:b) (Xy:b), ((((eq b) (g Xx)) (g Xy))->(((eq b) Xx) Xy)))->P)))=> (((((and_rect (forall (Xx:a) (Xy:a), ((((eq a) (f Xx)) (f Xy))->(((eq a) Xx) Xy)))) (forall (Xx:b) (Xy:b), ((((eq b) (g Xx)) (g Xy))->(((eq b) Xx) Xy)))) P) x1) x)) ((and (((cS Xx) Xy)->((x0 (f Xx)) (g Xy)))) (((x0 (f Xx)) (g Xy))->((cS Xx) Xy)))) (fun (x1:(forall (Xx0:a) (Xy0:a), ((((eq a) (f Xx0)) (f Xy0))->(((eq a) Xx0) Xy0)))) (x2:(forall (Xx0:b) (Xy0:b), ((((eq b) (g Xx0)) (g Xy0))->(((eq b) Xx0) Xy0))))=> ((((conj (((cS Xx) Xy)->((x0 (f Xx)) (g Xy)))) (((x0 (f Xx)) (g Xy))->((cS Xx) Xy))) (((eq_ref b) Xy) (cS Xx))) (((eq_ref b) Xy) (fun (x3:b)=> ((x0 (f Xx)) (g x3))))))) as proof of ((and (((cS Xx) Xy)->((x0 (f Xx)) (g Xy)))) (((x0 (f Xx)) (g Xy))->((cS Xx) Xy)))
% Found (((fun (P:Type) (x1:((forall (Xx:a) (Xy:a), ((((eq a) (f Xx)) (f Xy))->(((eq a) Xx) Xy)))->((forall (Xx:b) (Xy:b), ((((eq b) (g Xx)) (g Xy))->(((eq b) Xx) Xy)))->P)))=> (((((and_rect (forall (Xx:a) (Xy:a), ((((eq a) (f Xx)) (f Xy))->(((eq a) Xx) Xy)))) (forall (Xx:b) (Xy:b), ((((eq b) (g Xx)) (g Xy))->(((eq b) Xx) Xy)))) P) x1) x)) ((and (((cS Xx) Xy)->((x0 (f Xx)) (g Xy)))) (((x0 (f Xx)) (g Xy))->((cS Xx) Xy)))) (fun (x1:(forall (Xx0:a) (Xy0:a), ((((eq a) (f Xx0)) (f Xy0))->(((eq a) Xx0) Xy0)))) (x2:(forall (Xx0:b) (Xy0:b), ((((eq b) (g Xx0)) (g Xy0))->(((eq b) Xx0) Xy0))))=> ((((conj (((cS Xx) Xy)->((x0 (f Xx)) (g Xy)))) (((x0 (f Xx)) (g Xy))->((cS Xx) Xy))) (((eq_ref b) Xy) (cS Xx))) (((eq_ref b) Xy) (fun (x3:b)=> ((x0 (f Xx)) (g x3))))))) as proof of ((and (((cS Xx) Xy)->((x0 (f Xx)) (g Xy)))) (((x0 (f Xx)) (g Xy))->((cS Xx) Xy)))
% Found eta_expansion000:=(eta_expansion00 a0):(((eq ((a->(b->Prop))->Prop)) a0) (fun (x:(a->(b->Prop)))=> (a0 x)))
% Found (eta_expansion00 a0) as proof of (((eq ((a->(b->Prop))->Prop)) a0) b0)
% Found ((eta_expansion0 Prop) a0) as proof of (((eq ((a->(b->Prop))->Prop)) a0) b0)
% Found (((eta_expansion (a->(b->Prop))) Prop) a0) as proof of (((eq ((a->(b->Prop))->Prop)) a0) b0)
% Found (((eta_expansion (a->(b->Prop))) Prop) a0) as proof of (((eq ((a->(b->Prop))->Prop)) a0) b0)
% Found (((eta_expansion (a->(b->Prop))) Prop) a0) as proof of (((eq ((a->(b->Prop))->Prop)) a0) b0)
% Found eta_expansion_dep000:=(eta_expansion_dep00 b0):(((eq ((a->(b->Prop))->Prop)) b0) (fun (x:(a->(b->Prop)))=> (b0 x)))
% Found (eta_expansion_dep00 b0) as proof of (((eq ((a->(b->Prop))->Prop)) b0) (fun (Xu:(a->(b->Prop)))=> (forall (Xx:a) (Xy:b), ((iff ((cS Xx) Xy)) ((Xu (f Xx)) (g Xy))))))
% Found ((eta_expansion_dep0 (fun (x1:(a->(b->Prop)))=> Prop)) b0) as proof of (((eq ((a->(b->Prop))->Prop)) b0) (fun (Xu:(a->(b->Prop)))=> (forall (Xx:a) (Xy:b), ((iff ((cS Xx) Xy)) ((Xu (f Xx)) (g Xy))))))
% Found (((eta_expansion_dep (a->(b->Prop))) (fun (x1:(a->(b->Prop)))=> Prop)) b0) as proof of (((eq ((a->(b->Prop))->Prop)) b0) (fun (Xu:(a->(b->Prop)))=> (forall (Xx:a) (Xy:b), ((iff ((cS Xx) Xy)) ((Xu (f Xx)) (g Xy))))))
% Found (((eta_expansion_dep (a->(b->Prop))) (fun (x1:(a->(b->Prop)))=> Prop)) b0) as proof of (((eq ((a->(b->Prop))->Prop)) b0) (fun (Xu:(a->(b->Prop)))=> (forall (Xx:a) (Xy:b), ((iff ((cS Xx) Xy)) ((Xu (f Xx)) (g Xy))))))
% Found (((eta_expansion_dep (a->(b->Prop))) (fun (x1:(a->(b->Prop)))=> Prop)) b0) as proof of (((eq ((a->(b->Prop))->Prop)) b0) (fun (Xu:(a->(b->Prop)))=> (forall (Xx:a) (Xy:b), ((iff ((cS Xx) Xy)) ((Xu (f Xx)) (g Xy))))))
% Found eta_expansion_dep000:=(eta_expansion_dep00 b0):(((eq ((a->(b->Prop))->Prop)) b0) (fun (x:(a->(b->Prop)))=> (b0 x)))
% Found (eta_expansion_dep00 b0) as proof of (((eq ((a->(b->Prop))->Prop)) b0) (fun (Xu:(a->(b->Prop)))=> (forall (Xx:a) (Xy:b), ((iff ((cS Xx) Xy)) ((Xu (f Xx)) (g Xy))))))
% Found ((eta_expansion_dep0 (fun (x1:(a->(b->Prop)))=> Prop)) b0) as proof of (((eq ((a->(b->Prop))->Prop)) b0) (fun (Xu:(a->(b->Prop)))=> (forall (Xx:a) (Xy:b), ((iff ((cS Xx) Xy)) ((Xu (f Xx)) (g Xy))))))
% Found (((eta_expansion_dep (a->(b->Prop))) (fun (x1:(a->(b->Prop)))=> Prop)) b0) as proof of (((eq ((a->(b->Prop))->Prop)) b0) (fun (Xu:(a->(b->Prop)))=> (forall (Xx:a) (Xy:b), ((iff ((cS Xx) Xy)) ((Xu (f Xx)) (g Xy))))))
% Found (((eta_expansion_dep (a->(b->Prop))) (fun (x1:(a->(b->Prop)))=> Prop)) b0) as proof of (((eq ((a->(b->Prop))->Prop)) b0) (fun (Xu:(a->(b->Prop)))=> (forall (Xx:a) (Xy:b), ((iff ((cS Xx) Xy)) ((Xu (f Xx)) (g Xy))))))
% Found (((eta_expansion_dep (a->(b->Prop))) (fun (x1:(a->(b->Prop)))=> Prop)) b0) as proof of (((eq ((a->(b->Prop))->Prop)) b0) (fun (Xu:(a->(b->Prop)))=> (forall (Xx:a) (Xy:b), ((iff ((cS Xx) Xy)) ((Xu (f Xx)) (g Xy))))))
% Found eta_expansion000:=(eta_expansion00 a0):(((eq ((a->(b->Prop))->Prop)) a0) (fun (x:(a->(b->Prop)))=> (a0 x)))
% Found (eta_expansion00 a0) as proof of (((eq ((a->(b->Prop))->Prop)) a0) b0)
% Found ((eta_expansion0 Prop) a0) as proof of (((eq ((a->(b->Prop))->Prop)) a0) b0)
% Found (((eta_expansion (a->(b->Prop))) Prop) a0) as proof of (((eq ((a->(b->Prop))->Prop)) a0) b0)
% Found (((eta_expansion (a->(b->Prop))) Prop) a0) as proof of (((eq ((a->(b->Prop))->Prop)) a0) b0)
% Found (((eta_expansion (a->(b->Prop))) Prop) a0) as proof of (((eq ((a->(b->Prop))->Prop)) a0) b0)
% Found eta_expansion_dep000:=(eta_expansion_dep00 b0):(((eq ((a->(b->Prop))->Prop)) b0) (fun (x:(a->(b->Prop)))=> (b0 x)))
% Found (eta_expansion_dep00 b0) as proof of (((eq ((a->(b->Prop))->Prop)) b0) (fun (Xu:(a->(b->Prop)))=> (forall (Xx:a) (Xy:b), ((iff ((cS Xx) Xy)) ((Xu (f Xx)) (g Xy))))))
% Found ((eta_expansion_dep0 (fun (x3:(a->(b->Prop)))=> Prop)) b0) as proof of (((eq ((a->(b->Prop))->Prop)) b0) (fun (Xu:(a->(b->Prop)))=> (forall (Xx:a) (Xy:b), ((iff ((cS Xx) Xy)) ((Xu (f Xx)) (g Xy))))))
% Found (((eta_expansion_dep (a->(b->Prop))) (fun (x3:(a->(b->Prop)))=> Prop)) b0) as proof of (((eq ((a->(b->Prop))->Prop)) b0) (fun (Xu:(a->(b->Prop)))=> (forall (Xx:a) (Xy:b), ((iff ((cS Xx) Xy)) ((Xu (f Xx)) (g Xy))))))
% Found (((eta_expansion_dep (a->(b->Prop))) (fun (x3:(a->(b->Prop)))=> Prop)) b0) as proof of (((eq ((a->(b->Prop))->Prop)) b0) (fun (Xu:(a->(b->Prop)))=> (forall (Xx:a) (Xy:b), ((iff ((cS Xx) Xy)) ((Xu (f Xx)) (g Xy))))))
% Found (((eta_expansion_dep (a->(b->Prop))) (fun (x3:(a->(b->Prop)))=> Prop)) b0) as proof of (((eq ((a->(b->Prop))->Prop)) b0) (fun (Xu:(a->(b->Prop)))=> (forall (Xx:a) (Xy:b), ((iff ((cS Xx) Xy)) ((Xu (f Xx)) (g Xy))))))
% Found eq_ref00:=(eq_ref0 b0):(((eq ((a->(b->Prop))->Prop)) b0) b0)
% Found (eq_ref0 b0) as proof of (((eq ((a->(b->Prop))->Prop)) b0) (fun (Xu:(a->(b->Prop)))=> (forall (Xx:a) (Xy:b), ((iff ((cS Xx) Xy)) ((Xu (f Xx)) (g Xy))))))
% Found ((eq_ref ((a->(b->Prop))->Prop)) b0) as proof of (((eq ((a->(b->Prop))->Prop)) b0) (fun (Xu:(a->(b->Prop)))=> (forall (Xx:a) (Xy:b), ((iff ((cS Xx) Xy)) ((Xu (f Xx)) (g Xy))))))
% Found ((eq_ref ((a->(b->Prop))->Prop)) b0) as proof of (((eq ((a->(b->Prop))->Prop)) b0) (fun (Xu:(a->(b->Prop)))=> (forall (Xx:a) (Xy:b), ((iff ((cS Xx) Xy)) ((Xu (f Xx)) (g Xy))))))
% Found ((eq_ref ((a->(b->Prop))->Prop)) b0) as proof of (((eq ((a->(b->Prop))->Prop)) b0) (fun (Xu:(a->(b->Prop)))=> (forall (Xx:a) (Xy:b), ((iff ((cS Xx) Xy)) ((Xu (f Xx)) (g Xy))))))
% Found eq_ref000:=(eq_ref00 (fun (x1:b)=> ((x0 (f Xx)) (g x1)))):(((x0 (f Xx)) (g Xy))->((x0 (f Xx)) (g Xy)))
% Found (eq_ref00 (fun (x1:b)=> ((x0 (f Xx)) (g x1)))) as proof of (((x0 (f Xx)) (g Xy))->((cS Xx) Xy))
% Found ((eq_ref0 Xy) (fun (x1:b)=> ((x0 (f Xx)) (g x1)))) as proof of (((x0 (f Xx)) (g Xy))->((cS Xx) Xy))
% Found (((eq_ref b) Xy) (fun (x1:b)=> ((x0 (f Xx)) (g x1)))) as proof of (((x0 (f Xx)) (g Xy))->((cS Xx) Xy))
% Found (((eq_ref b) Xy) (fun (x1:b)=> ((x0 (f Xx)) (g x1)))) as proof of (((x0 (f Xx)) (g Xy))->((cS Xx) Xy))
% Found (((eq_ref b) Xy) (fun (x1:b)=> ((x0 (f Xx)) (g x1)))) as proof of (((x0 (f Xx)) (g Xy))->((cS Xx) Xy))
% Found eq_ref000:=(eq_ref00 (cS Xx)):(((cS Xx) Xy)->((cS Xx) Xy))
% Found (eq_ref00 (cS Xx)) as proof of (((cS Xx) Xy)->((x0 (f Xx)) (g Xy)))
% Found ((eq_ref0 Xy) (cS Xx)) as proof of (((cS Xx) Xy)->((x0 (f Xx)) (g Xy)))
% Found (((eq_ref b) Xy) (cS Xx)) as proof of (((cS Xx) Xy)->((x0 (f Xx)) (g Xy)))
% Found (((eq_ref b) Xy) (cS Xx)) as proof of (((cS Xx) Xy)->((x0 (f Xx)) (g Xy)))
% Found ((conj00 (((eq_ref b) Xy) (cS Xx))) (((eq_ref b) Xy) (fun (x1:b)=> ((x0 (f Xx)) (g x1))))) as proof of ((iff ((cS Xx) Xy)) ((x0 (f Xx)) (g Xy)))
% Found (((conj0 (((x0 (f Xx)) (g Xy))->((cS Xx) Xy))) (((eq_ref b) Xy) (cS Xx))) (((eq_ref b) Xy) (fun (x1:b)=> ((x0 (f Xx)) (g x1))))) as proof of ((iff ((cS Xx) Xy)) ((x0 (f Xx)) (g Xy)))
% Found ((((conj (((cS Xx) Xy)->((x0 (f Xx)) (g Xy)))) (((x0 (f Xx)) (g Xy))->((cS Xx) Xy))) (((eq_ref b) Xy) (cS Xx))) (((eq_ref b) Xy) (fun (x1:b)=> ((x0 (f Xx)) (g x1))))) as proof of ((iff ((cS Xx) Xy)) ((x0 (f Xx)) (g Xy)))
% Found eq_ref000:=(eq_ref00 (fun (x1:b)=> ((x0 (f Xx)) (g x1)))):(((x0 (f Xx)) (g Xy))->((x0 (f Xx)) (g Xy)))
% Found (eq_ref00 (fun (x1:b)=> ((x0 (f Xx)) (g x1)))) as proof of (((x0 (f Xx)) (g Xy))->((cS Xx) Xy))
% Found ((eq_ref0 Xy) (fun (x1:b)=> ((x0 (f Xx)) (g x1)))) as proof of (((x0 (f Xx)) (g Xy))->((cS Xx) Xy))
% Found (((eq_ref b) Xy) (fun (x1:b)=> ((x0 (f Xx)) (g x1)))) as proof of (((x0 (f Xx)) (g Xy))->((cS Xx) Xy))
% Found (((eq_ref b) Xy) (fun (x1:b)=> ((x0 (f Xx)) (g x1)))) as proof of (((x0 (f Xx)) (g Xy))->((cS Xx) Xy))
% Found (((eq_ref b) Xy) (fun (x1:b)=> ((x0 (f Xx)) (g x1)))) as proof of (((x0 (f Xx)) (g Xy))->((cS Xx) Xy))
% Found eq_ref000:=(eq_ref00 (cS Xx)):(((cS Xx) Xy)->((cS Xx) Xy))
% Found (eq_ref00 (cS Xx)) as proof of (((cS Xx) Xy)->((x0 (f Xx)) (g Xy)))
% Found ((eq_ref0 Xy) (cS Xx)) as proof of (((cS Xx) Xy)->((x0 (f Xx)) (g Xy)))
% Found (((eq_ref b) Xy) (cS Xx)) as proof of (((cS Xx) Xy)->((x0 (f Xx)) (g Xy)))
% Found (((eq_ref b) Xy) (cS Xx)) as proof of (((cS Xx) Xy)->((x0 (f Xx)) (g Xy)))
% Found ((conj00 (((eq_ref b) Xy) (cS Xx))) (((eq_ref b) Xy) (fun (x1:b)=> ((x0 (f Xx)) (g x1))))) as proof of ((iff ((cS Xx) Xy)) ((x0 (f Xx)) (g Xy)))
% Found (((conj0 (((x0 (f Xx)) (g Xy))->((cS Xx) Xy))) (((eq_ref b) Xy) (cS Xx))) (((eq_ref b) Xy) (fun (x1:b)=> ((x0 (f Xx)) (g x1))))) as proof of ((iff ((cS Xx) Xy)) ((x0 (f Xx)) (g Xy)))
% Found ((((conj (((cS Xx) Xy)->((x0 (f Xx)) (g Xy)))) (((x0 (f Xx)) (g Xy))->((cS Xx) Xy))) (((eq_ref b) Xy) (cS Xx))) (((eq_ref b) Xy) (fun (x1:b)=> ((x0 (f Xx)) (g x1))))) as proof of ((iff ((cS Xx) Xy)) ((x0 (f Xx)) (g Xy)))
% Found eq_ref000:=(eq_ref00 (fun (x1:b)=> ((x0 (f Xx)) (g x1)))):(((x0 (f Xx)) (g Xy))->((x0 (f Xx)) (g Xy)))
% Found (eq_ref00 (fun (x1:b)=> ((x0 (f Xx)) (g x1)))) as proof of (((x0 (f Xx)) (g Xy))->((cS Xx) Xy))
% Found ((eq_ref0 Xy) (fun (x1:b)=> ((x0 (f Xx)) (g x1)))) as proof of (((x0 (f Xx)) (g Xy))->((cS Xx) Xy))
% Found (((eq_ref b) Xy) (fun (x1:b)=> ((x0 (f Xx)) (g x1)))) as proof of (((x0 (f Xx)) (g Xy))->((cS Xx) Xy))
% Found (((eq_ref b) Xy) (fun (x1:b)=> ((x0 (f Xx)) (g x1)))) as proof of (((x0 (f Xx)) (g Xy))->((cS Xx) Xy))
% Found (((eq_ref b) Xy) (fun (x1:b)=> ((x0 (f Xx)) (g x1)))) as proof of (((x0 (f Xx)) (g Xy))->((cS Xx) Xy))
% Found eq_ref000:=(eq_ref00 (cS Xx)):(((cS Xx) Xy)->((cS Xx) Xy))
% Found (eq_ref00 (cS Xx)) as proof of (((cS Xx) Xy)->((x0 (f Xx)) (g Xy)))
% Found ((eq_ref0 Xy) (cS Xx)) as proof of (((cS Xx) Xy)->((x0 (f Xx)) (g Xy)))
% Found (((eq_ref b) Xy) (cS Xx)) as proof of (((cS Xx) Xy)->((x0 (f Xx)) (g Xy)))
% Found (((eq_ref b) Xy) (cS Xx)) as proof of (((cS Xx) Xy)->((x0 (f Xx)) (g Xy)))
% Found ((conj00 (((eq_ref b) Xy) (cS Xx))) (((eq_ref b) Xy) (fun (x1:b)=> ((x0 (f Xx)) (g x1))))) as proof of ((iff ((cS Xx) Xy)) ((x0 (f Xx)) (g Xy)))
% Found (((conj0 (((x0 (f Xx)) (g Xy))->((cS Xx) Xy))) (((eq_ref b) Xy) (cS Xx))) (((eq_ref b) Xy) (fun (x1:b)=> ((x0 (f Xx)) (g x1))))) as proof of ((iff ((cS Xx) Xy)) ((x0 (f Xx)) (g Xy)))
% Found ((((conj (((cS Xx) Xy)->((x0 (f Xx)) (g Xy)))) (((x0 (f Xx)) (g Xy))->((cS Xx) Xy))) (((eq_ref b) Xy) (cS Xx))) (((eq_ref b) Xy) (fun (x1:b)=> ((x0 (f Xx)) (g x1))))) as proof of ((iff ((cS Xx) Xy)) ((x0 (f Xx)) (g Xy)))
% Found eq_ref00:=(eq_ref0 (((x0 (f Xx)) (g Xy))->((cS Xx) Xy))):(((eq Prop) (((x0 (f Xx)) (g Xy))->((cS Xx) Xy))) (((x0 (f Xx)) (g Xy))->((cS Xx) Xy)))
% Found (eq_ref0 (((x0 (f Xx)) (g Xy))->((cS Xx) Xy))) as proof of (((eq Prop) (((x0 (f Xx)) (g Xy))->((cS Xx) Xy))) b0)
% Found ((eq_ref Prop) (((x0 (f Xx)) (g Xy))->((cS Xx) Xy))) as proof of (((eq Prop) (((x0 (f Xx)) (g Xy))->((cS Xx) Xy))) b0)
% Found ((eq_ref Prop) (((x0 (f Xx)) (g Xy))->((cS Xx) Xy))) as proof of (((eq Prop) (((x0 (f Xx)) (g Xy))->((cS Xx) Xy))) b0)
% Found ((eq_ref Prop) (((x0 (f Xx)) (g Xy))->((cS Xx) Xy))) as proof of (((eq Prop) (((x0 (f Xx)) (g Xy))->((cS Xx) Xy))) b0)
% Found eq_ref000:=(eq_ref00 (fun (x3:b)=> ((x2 (f Xx)) (g x3)))):(((x2 (f Xx)) (g Xy))->((x2 (f Xx)) (g Xy)))
% Found (eq_ref00 (fun (x3:b)=> ((x2 (f Xx)) (g x3)))) as proof of (((x2 (f Xx)) (g Xy))->((cS Xx) Xy))
% Found ((eq_ref0 Xy) (fun (x3:b)=> ((x2 (f Xx)) (g x3)))) as proof of (((x2 (f Xx)) (g Xy))->((cS Xx) Xy))
% Found (((eq_ref b) Xy) (fun (x3:b)=> ((x2 (f Xx)) (g x3)))) as proof of (((x2 (f Xx)) (g Xy))->((cS Xx) Xy))
% Found (((eq_ref b) Xy) (fun (x3:b)=> ((x2 (f Xx)) (g x3)))) as proof of (((x2 (f Xx)) (g Xy))->((cS Xx) Xy))
% Found (((eq_ref b) Xy) (fun (x3:b)=> ((x2 (f Xx)) (g x3)))) as proof of (((x2 (f Xx)) (g Xy))->((cS Xx) Xy))
% Found eq_ref000:=(eq_ref00 (cS Xx)):(((cS Xx) Xy)->((cS Xx) Xy))
% Found (eq_ref00 (cS Xx)) as proof of (((cS Xx) Xy)->((x2 (f Xx)) (g Xy)))
% Found ((eq_ref0 Xy) (cS Xx)) as proof of (((cS Xx) Xy)->((x2 (f Xx)) (g Xy)))
% Found (((eq_ref b) Xy) (cS Xx)) as proof of (((cS Xx) Xy)->((x2 (f Xx)) (g Xy)))
% Found (((eq_ref b) Xy) (cS Xx)) as proof of (((cS Xx) Xy)->((x2 (f Xx)) (g Xy)))
% Found ((conj00 (((eq_ref b) Xy) (cS Xx))) (((eq_ref b) Xy) (fun (x3:b)=> ((x2 (f Xx)) (g x3))))) as proof of ((iff ((cS Xx) Xy)) ((x2 (f Xx)) (g Xy)))
% Found (((conj0 (((x2 (f Xx)) (g Xy))->((cS Xx) Xy))) (((eq_ref b) Xy) (cS Xx))) (((eq_ref b) Xy) (fun (x3:b)=> ((x2 (f Xx)) (g x3))))) as proof of ((iff ((cS Xx) Xy)) ((x2 (f Xx)) (g Xy)))
% Found ((((conj (((cS Xx) Xy)->((x2 (f Xx)) (g Xy)))) (((x2 (f Xx)) (g Xy))->((cS Xx) Xy))) (((eq_ref b) Xy) (cS Xx))) (((eq_ref b) Xy) (fun (x3:b)=> ((x2 (f Xx)) (g x3))))) as proof of ((iff ((cS Xx) Xy)) ((x2 (f Xx)) (g Xy)))
% Found or_ind:(forall (A:Prop) (B:Prop) (P:Prop), ((A->P)->((B->P)->(((or A) B)->P))))
% Instantiate: b0:=(forall (A:Prop) (B:Prop) (P:Prop), ((A->P)->((B->P)->(((or A) B)->P)))):Prop
% Found or_ind as proof of b0
% Found eq_ref000:=(eq_ref00 (fun (x3:b)=> ((x2 (f Xx)) (g x3)))):(((x2 (f Xx)) (g Xy))->((x2 (f Xx)) (g Xy)))
% Found (eq_ref00 (fun (x3:b)=> ((x2 (f Xx)) (g x3)))) as proof of (((x2 (f Xx)) (g Xy))->((cS Xx) Xy))
% Found ((eq_ref0 Xy) (fun (x3:b)=> ((x2 (f Xx)) (g x3)))) as proof of (((x2 (f Xx)) (g Xy))->((cS Xx) Xy))
% Found (((eq_ref b) Xy) (fun (x3:b)=> ((x2 (f Xx)) (g x3)))) as proof of (((x2 (f Xx)) (g Xy))->((cS Xx) Xy))
% Found (((eq_ref b) Xy) (fun (x3:b)=> ((x2 (f Xx)) (g x3)))) as proof of (((x2 (f Xx)) (g Xy))->((cS Xx) Xy))
% Found (((eq_ref b) Xy) (fun (x3:b)=> ((x2 (f Xx)) (g x3)))) as proof of (((x2 (f Xx)) (g Xy))->((cS Xx) Xy))
% Found eq_ref000:=(eq_ref00 (cS Xx)):(((cS Xx) Xy)->((cS Xx) Xy))
% Found (eq_ref00 (cS Xx)) as proof of (((cS Xx) Xy)->((x2 (f Xx)) (g Xy)))
% Found ((eq_ref0 Xy) (cS Xx)) as proof of (((cS Xx) Xy)->((x2 (f Xx)) (g Xy)))
% Found (((eq_ref b) Xy) (cS Xx)) as proof of (((cS Xx) Xy)->((x2 (f Xx)) (g Xy)))
% Found (((eq_ref b) Xy) (cS Xx)) as proof of (((cS Xx) Xy)->((x2 (f Xx)) (g Xy)))
% Found ((conj00 (((eq_ref b) Xy) (cS Xx))) (((eq_ref b) Xy) (fun (x3:b)=> ((x2 (f Xx)) (g x3))))) as proof of ((iff ((cS Xx) Xy)) ((x2 (f Xx)) (g Xy)))
% Found (((conj0 (((x2 (f Xx)) (g Xy))->((cS Xx) Xy))) (((eq_ref b) Xy) (cS Xx))) (((eq_ref b) Xy) (fun (x3:b)=> ((x2 (f Xx)) (g x3))))) as proof of ((iff ((cS Xx) Xy)) ((x2 (f Xx)) (g Xy)))
% Found ((((conj (((cS Xx) Xy)->((x2 (f Xx)) (g Xy)))) (((x2 (f Xx)) (g Xy))->((cS Xx) Xy))) (((eq_ref b) Xy) (cS Xx))) (((eq_ref b) Xy) (fun (x3:b)=> ((x2 (f Xx)) (g x3))))) as proof of ((iff ((cS Xx) Xy)) ((x2 (f Xx)) (g Xy)))
% Found eq_ref000:=(eq_ref00 (fun (x3:b)=> ((x2 (f Xx)) (g x3)))):(((x2 (f Xx)) (g Xy))->((x2 (f Xx)) (g Xy)))
% Found (eq_ref00 (fun (x3:b)=> ((x2 (f Xx)) (g x3)))) as proof of (((x2 (f Xx)) (g Xy))->((cS Xx) Xy))
% Found ((eq_ref0 Xy) (fun (x3:b)=> ((x2 (f Xx)) (g x3)))) as proof of (((x2 (f Xx)) (g Xy))->((cS Xx) Xy))
% Found (((eq_ref b) Xy) (fun (x3:b)=> ((x2 (f Xx)) (g x3)))) as proof of (((x2 (f Xx)) (g Xy))->((cS Xx) Xy))
% Found (((eq_ref b) Xy) (fun (x3:b)=> ((x2 (f Xx)) (g x3)))) as proof of (((x2 (f Xx)) (g Xy))->((cS Xx) Xy))
% Found (((eq_ref b) Xy) (fun (x3:b)=> ((x2 (f Xx)) (g x3)))) as proof of (((x2 (f Xx)) (g Xy))->((cS Xx) Xy))
% Found eq_ref000:=(eq_ref00 (cS Xx)):(((cS Xx) Xy)->((cS Xx) Xy))
% Found (eq_ref00 (cS Xx)) as proof of (((cS Xx) Xy)->((x2 (f Xx)) (g Xy)))
% Found ((eq_ref0 Xy) (cS Xx)) as proof of (((cS Xx) Xy)->((x2 (f Xx)) (g Xy)))
% Found (((eq_ref b) Xy) (cS Xx)) as proof of (((cS Xx) Xy)->((x2 (f Xx)) (g Xy)))
% Found (((eq_ref b) Xy) (cS Xx)) as proof of (((cS Xx) Xy)->((x2 (f Xx)) (g Xy)))
% Found ((conj00 (((eq_ref b) Xy) (cS Xx))) (((eq_ref b) Xy) (fun (x3:b)=> ((x2 (f Xx)) (g x3))))) as proof of ((iff ((cS Xx) Xy)) ((x2 (f Xx)) (g Xy)))
% Found (((conj0 (((x2 (f Xx)) (g Xy))->((cS Xx) Xy))) (((eq_ref b) Xy) (cS Xx))) (((eq_ref b) Xy) (fun (x3:b)=> ((x2 (f Xx)) (g x3))))) as proof of ((iff ((cS Xx) Xy)) ((x2 (f Xx)) (g Xy)))
% Found ((((conj (((cS Xx) Xy)->((x2 (f Xx)) (g Xy)))) (((x2 (f Xx)) (g Xy))->((cS Xx) Xy))) (((eq_ref b) Xy) (cS Xx))) (((eq_ref b) Xy) (fun (x3:b)=> ((x2 (f Xx)) (g x3))))) as proof of ((iff ((cS Xx) Xy)) ((x2 (f Xx)) (g Xy)))
% Found eq_ref00:=(eq_ref0 (((x2 (f Xx)) (g Xy))->((cS Xx) Xy))):(((eq Prop) (((x2 (f Xx)) (g Xy))->((cS Xx) Xy))) (((x2 (f Xx)) (g Xy))->((cS Xx) Xy)))
% Found (eq_ref0 (((x2 (f Xx)) (g Xy))->((cS Xx) Xy))) as proof of (((eq Prop) (((x2 (f Xx)) (g Xy))->((cS Xx) Xy))) b0)
% Found ((eq_ref Prop) (((x2 (f Xx)) (g Xy))->((cS Xx) Xy))) as proof of (((eq Prop) (((x2 (f Xx)) (g Xy))->((cS Xx) Xy))) b0)
% Found ((eq_ref Prop) (((x2 (f Xx)) (g Xy))->((cS Xx) Xy))) as proof of (((eq Prop) (((x2 (f Xx)) (g Xy))->((cS Xx) Xy))) b0)
% Found ((eq_ref Prop) (((x2 (f Xx)) (g Xy))->((cS Xx) Xy))) as proof of (((eq Prop) (((x2 (f Xx)) (g Xy))->((cS Xx) Xy))) b0)
% Found iff_refl0:=(iff_refl ((x0 (f Xx)) (g Xy))):((iff ((x0 (f Xx)) (g Xy))) ((x0 (f Xx)) (g Xy)))
% Found (iff_refl ((x0 (f Xx)) (g Xy))) as proof of ((iff ((x0 (f Xx)) (g Xy))) ((cS Xx) Xy))
% Found (iff_refl ((x0 (f Xx)) (g Xy))) as proof of ((iff ((x0 (f Xx)) (g Xy))) ((cS Xx) Xy))
% Found (iff_refl ((x0 (f Xx)) (g Xy))) as proof of ((iff ((x0 (f Xx)) (g Xy))) ((cS Xx) Xy))
% Found (iff_sym00 (iff_refl ((x0 (f Xx)) (g Xy)))) as proof of ((iff ((cS Xx) Xy)) ((x0 (f Xx)) (g Xy)))
% Found ((iff_sym0 ((cS Xx) Xy)) (iff_refl ((x0 (f Xx)) (g Xy)))) as proof of ((iff ((cS Xx) Xy)) ((x0 (f Xx)) (g Xy)))
% Found (((iff_sym ((x0 (f Xx)) (g Xy))) ((cS Xx) Xy)) (iff_refl ((x0 (f Xx)) (g Xy)))) as proof of ((iff ((cS Xx) Xy)) ((x0 (f Xx)) (g Xy)))
% Found (fun (x2:(forall (Xx0:b) (Xy0:b), ((((eq b) (g Xx0)) (g Xy0))->(((eq b) Xx0) Xy0))))=> (((iff_sym ((x0 (f Xx)) (g Xy))) ((cS Xx) Xy)) (iff_refl ((x0 (f Xx)) (g Xy))))) as proof of ((iff ((cS Xx) Xy)) ((x0 (f Xx)) (g Xy)))
% Found (fun (x1:(forall (Xx0:a) (Xy0:a), ((((eq a) (f Xx0)) (f Xy0))->(((eq a) Xx0) Xy0)))) (x2:(forall (Xx0:b) (Xy0:b), ((((eq b) (g Xx0)) (g Xy0))->(((eq b) Xx0) Xy0))))=> (((iff_sym ((x0 (f Xx)) (g Xy))) ((cS Xx) Xy)) (iff_refl ((x0 (f Xx)) (g Xy))))) as proof of ((forall (Xx0:b) (Xy0:b), ((((eq b) (g Xx0)) (g Xy0))->(((eq b) Xx0) Xy0)))->((iff ((cS Xx) Xy)) ((x0 (f Xx)) (g Xy))))
% Found (fun (x1:(forall (Xx0:a) (Xy0:a), ((((eq a) (f Xx0)) (f Xy0))->(((eq a) Xx0) Xy0)))) (x2:(forall (Xx0:b) (Xy0:b), ((((eq b) (g Xx0)) (g Xy0))->(((eq b) Xx0) Xy0))))=> (((iff_sym ((x0 (f Xx)) (g Xy))) ((cS Xx) Xy)) (iff_refl ((x0 (f Xx)) (g Xy))))) as proof of ((forall (Xx0:a) (Xy0:a), ((((eq a) (f Xx0)) (f Xy0))->(((eq a) Xx0) Xy0)))->((forall (Xx0:b) (Xy0:b), ((((eq b) (g Xx0)) (g Xy0))->(((eq b) Xx0) Xy0)))->((iff ((cS Xx) Xy)) ((x0 (f Xx)) (g Xy)))))
% Found (and_rect00 (fun (x1:(forall (Xx0:a) (Xy0:a), ((((eq a) (f Xx0)) (f Xy0))->(((eq a) Xx0) Xy0)))) (x2:(forall (Xx0:b) (Xy0:b), ((((eq b) (g Xx0)) (g Xy0))->(((eq b) Xx0) Xy0))))=> (((iff_sym ((x0 (f Xx)) (g Xy))) ((cS Xx) Xy)) (iff_refl ((x0 (f Xx)) (g Xy)))))) as proof of ((iff ((cS Xx) Xy)) ((x0 (f Xx)) (g Xy)))
% Found ((and_rect0 ((iff ((cS Xx) Xy)) ((x0 (f Xx)) (g Xy)))) (fun (x1:(forall (Xx0:a) (Xy0:a), ((((eq a) (f Xx0)) (f Xy0))->(((eq a) Xx0) Xy0)))) (x2:(forall (Xx0:b) (Xy0:b), ((((eq b) (g Xx0)) (g Xy0))->(((eq b) Xx0) Xy0))))=> (((iff_sym ((x0 (f Xx)) (g Xy))) ((cS Xx) Xy)) (iff_refl ((x0 (f Xx)) (g Xy)))))) as proof of ((iff ((cS Xx) Xy)) ((x0 (f Xx)) (g Xy)))
% Found (((fun (P0:Type) (x1:((forall (Xx:a) (Xy:a), ((((eq a) (f Xx)) (f Xy))->(((eq a) Xx) Xy)))->((forall (Xx:b) (Xy:b), ((((eq b) (g Xx)) (g Xy))->(((eq b) Xx) Xy)))->P0)))=> (((((and_rect (forall (Xx:a) (Xy:a), ((((eq a) (f Xx)) (f Xy))->(((eq a) Xx) Xy)))) (forall (Xx:b) (Xy:b), ((((eq b) (g Xx)) (g Xy))->(((eq b) Xx) Xy)))) P0) x1) x)) ((iff ((cS Xx) Xy)) ((x0 (f Xx)) (g Xy)))) (fun (x1:(forall (Xx0:a) (Xy0:a), ((((eq a) (f Xx0)) (f Xy0))->(((eq a) Xx0) Xy0)))) (x2:(forall (Xx0:b) (Xy0:b), ((((eq b) (g Xx0)) (g Xy0))->(((eq b) Xx0) Xy0))))=> (((iff_sym ((x0 (f Xx)) (g Xy))) ((cS Xx) Xy)) (iff_refl ((x0 (f Xx)) (g Xy)))))) as proof of ((iff ((cS Xx) Xy)) ((x0 (f Xx)) (g Xy)))
% Found eq_ref000:=(eq_ref00 (fun (x3:b)=> ((x2 (f Xx)) (g x3)))):(((x2 (f Xx)) (g Xy))->((x2 (f Xx)) (g Xy)))
% Found (eq_ref00 (fun (x3:b)=> ((x2 (f Xx)) (g x3)))) as proof of (((x2 (f Xx)) (g Xy))->((cS Xx) Xy))
% Found ((eq_ref0 Xy) (fun (x3:b)=> ((x2 (f Xx)) (g x3)))) as proof of (((x2 (f Xx)) (g Xy))->((cS Xx) Xy))
% Found (((eq_ref b) Xy) (fun (x3:b)=> ((x2 (f Xx)) (g x3)))) as proof of (((x2 (f Xx)) (g Xy))->((cS Xx) Xy))
% Found (((eq_ref b) Xy) (fun (x3:b)=> ((x2 (f Xx)) (g x3)))) as proof of (((x2 (f Xx)) (g Xy))->((cS Xx) Xy))
% Found (((eq_ref b) Xy) (fun (x3:b)=> ((x2 (f Xx)) (g x3)))) as proof of (((x2 (f Xx)) (g Xy))->((cS Xx) Xy))
% Found eq_ref000:=(eq_ref00 (cS Xx)):(((cS Xx) Xy)->((cS Xx) Xy))
% Found (eq_ref00 (cS Xx)) as proof of (((cS Xx) Xy)->((x2 (f Xx)) (g Xy)))
% Found ((eq_ref0 Xy) (cS Xx)) as proof of (((cS Xx) Xy)->((x2 (f Xx)) (g Xy)))
% Found (((eq_ref b) Xy) (cS Xx)) as proof of (((cS Xx) Xy)->((x2 (f Xx)) (g Xy)))
% Found (((eq_ref b) Xy) (cS Xx)) as proof of (((cS Xx) Xy)->((x2 (f Xx)) (g Xy)))
% Found ((conj00 (((eq_ref b) Xy) (cS Xx))) (((eq_ref b) Xy) (fun (x3:b)=> ((x2 (f Xx)) (g x3))))) as proof of ((iff ((cS Xx) Xy)) ((x2 (f Xx)) (g Xy)))
% Found (((conj0 (((x2 (f Xx)) (g Xy))->((cS Xx) Xy))) (((eq_ref b) Xy) (cS Xx))) (((eq_ref b) Xy) (fun (x3:b)=> ((x2 (f Xx)) (g x3))))) as proof of ((iff ((cS Xx) Xy)) ((x2 (f Xx)) (g Xy)))
% Found ((((conj (((cS Xx) Xy)->((x2 (f Xx)) (g Xy)))) (((x2 (f Xx)) (g Xy))->((cS Xx) Xy))) (((eq_ref b) Xy) (cS Xx))) (((eq_ref b) Xy) (fun (x3:b)=> ((x2 (f Xx)) (g x3))))) as proof of ((iff ((cS Xx) Xy)) ((x2 (f Xx)) (g Xy)))
% Found eq_ref000:=(eq_ref00 (fun (x3:b)=> ((x2 (f Xx)) (g x3)))):(((x2 (f Xx)) (g Xy))->((x2 (f Xx)) (g Xy)))
% Found (eq_ref00 (fun (x3:b)=> ((x2 (f Xx)) (g x3)))) as proof of (((x2 (f Xx)) (g Xy))->((cS Xx) Xy))
% Found ((eq_ref0 Xy) (fun (x3:b)=> ((x2 (f Xx)) (g x3)))) as proof of (((x2 (f Xx)) (g Xy))->((cS Xx) Xy))
% Found (((eq_ref b) Xy) (fun (x3:b)=> ((x2 (f Xx)) (g x3)))) as proof of (((x2 (f Xx)) (g Xy))->((cS Xx) Xy))
% Found (((eq_ref b) Xy) (fun (x3:b)=> ((x2 (f Xx)) (g x3)))) as proof of (((x2 (f Xx)) (g Xy))->((cS Xx) Xy))
% Found (((eq_ref b) Xy) (fun (x3:b)=> ((x2 (f Xx)) (g x3)))) as proof of (((x2 (f Xx)) (g Xy))->((cS Xx) Xy))
% Found eq_ref000:=(eq_ref00 (cS Xx)):(((cS Xx) Xy)->((cS Xx) Xy))
% Found (eq_ref00 (cS Xx)) as proof of (((cS Xx) Xy)->((x2 (f Xx)) (g Xy)))
% Found ((eq_ref0 Xy) (cS Xx)) as proof of (((cS Xx) Xy)->((x2 (f Xx)) (g Xy)))
% Found (((eq_ref b) Xy) (cS Xx)) as proof of (((cS Xx) Xy)->((x2 (f Xx)) (g Xy)))
% Found (((eq_ref b) Xy) (cS Xx)) as proof of (((cS Xx) Xy)->((x2 (f Xx)) (g Xy)))
% Found ((conj00 (((eq_ref b) Xy) (cS Xx))) (((eq_ref b) Xy) (fun (x3:b)=> ((x2 (f Xx)) (g x3))))) as proof of ((iff ((cS Xx) Xy)) ((x2 (f Xx)) (g Xy)))
% Found (((conj0 (((x2 (f Xx)) (g Xy))->((cS Xx) Xy))) (((eq_ref b) Xy) (cS Xx))) (((eq_ref b) Xy) (fun (x3:b)=> ((x2 (f Xx)) (g x3))))) as proof of ((iff ((cS Xx) Xy)) ((x2 (f Xx)) (g Xy)))
% Found ((((conj (((cS Xx) Xy)->((x2 (f Xx)) (g Xy)))) (((x2 (f Xx)) (g Xy))->((cS Xx) Xy))) (((eq_ref b) Xy) (cS Xx))) (((eq_ref b) Xy) (fun (x3:b)=> ((x2 (f Xx)) (g x3))))) as proof of ((iff ((cS Xx) Xy)) ((x2 (f Xx)) (g Xy)))
% Found eq_ref000:=(eq_ref00 (fun (x1:b)=> ((x0 (f Xx)) (g x1)))):(((x0 (f Xx)) (g Xy))->((x0 (f Xx)) (g Xy)))
% Found (eq_ref00 (fun (x1:b)=> ((x0 (f Xx)) (g x1)))) as proof of b0
% Found ((eq_ref0 Xy) (fun (x1:b)=> ((x0 (f Xx)) (g x1)))) as proof of b0
% Found (((eq_ref b) Xy) (fun (x1:b)=> ((x0 (f Xx)) (g x1)))) as proof of b0
% Found (((eq_ref b) Xy) (fun (x1:b)=> ((x0 (f Xx)) (g x1)))) as proof of b0
% Found (((eq_ref b) Xy) (fun (x1:b)=> ((x0 (f Xx)) (g x1)))) as proof of b0
% Found eq_ref000:=(eq_ref00 (cS Xx)):(((cS Xx) Xy)->((cS Xx) Xy))
% Found (eq_ref00 (cS Xx)) as proof of (((cS Xx) Xy)->((x0 (f Xx)) (g Xy)))
% Found ((eq_ref0 Xy) (cS Xx)) as proof of (((cS Xx) Xy)->((x0 (f Xx)) (g Xy)))
% Found (((eq_ref b) Xy) (cS Xx)) as proof of (((cS Xx) Xy)->((x0 (f Xx)) (g Xy)))
% Found (((eq_ref b) Xy) (cS Xx)) as proof of (((cS Xx) Xy)->((x0 (f Xx)) (g Xy)))
% Found ((conj00 (((eq_ref b) Xy) (cS Xx))) (((eq_ref b) Xy) (fun (x1:b)=> ((x0 (f Xx)) (g x1))))) as proof of (P b0)
% Found (((conj0 b0) (((eq_ref b) Xy) (cS Xx))) (((eq_ref b) Xy) (fun (x1:b)=> ((x0 (f Xx)) (g x1))))) as proof of (P b0)
% Found ((((conj (((cS Xx) Xy)->((x0 (f Xx)) (g Xy)))) b0) (((eq_ref b) Xy) (cS Xx))) (((eq_ref b) Xy) (fun (x1:b)=> ((x0 (f Xx)) (g x1))))) as proof of (P b0)
% Found ((((conj (((cS Xx) Xy)->((x0 (f Xx)) (g Xy)))) b0) (((eq_ref b) Xy) (cS Xx))) (((eq_ref b) Xy) (fun (x1:b)=> ((x0 (f Xx)) (g x1))))) as proof of (P b0)
% Found ((eq_sym0000 ((eq_ref Prop) (((x0 (f Xx)) (g Xy))->((cS Xx) Xy)))) ((((conj (((cS Xx) Xy)->((x0 (f Xx)) (g Xy)))) b0) (((eq_ref b) Xy) (cS Xx))) (((eq_ref b) Xy) (fun (x1:b)=> ((x0 (f Xx)) (g x1)))))) as proof of ((and (((cS Xx) Xy)->((x0 (f Xx)) (g Xy)))) (((x0 (f Xx)) (g Xy))->((cS Xx) Xy)))
% Found ((eq_sym0000 ((eq_ref Prop) (((x0 (f Xx)) (g Xy))->((cS Xx) Xy)))) ((((conj (((cS Xx) Xy)->((x0 (f Xx)) (g Xy)))) b0) (((eq_ref b) Xy) (cS Xx))) (((eq_ref b) Xy) (fun (x1:b)=> ((x0 (f Xx)) (g x1)))))) as proof of ((and (((cS Xx) Xy)->((x0 (f Xx)) (g Xy)))) (((x0 (f Xx)) (g Xy))->((cS Xx) Xy)))
% Found (((fun (x1:(((eq Prop) (((x0 (f Xx)) (g Xy))->((cS Xx) Xy))) b0))=> ((eq_sym000 x1) (and (((cS Xx) Xy)->((x0 (f Xx)) (g Xy)))))) ((eq_ref Prop) (((x0 (f Xx)) (g Xy))->((cS Xx) Xy)))) ((((conj (((cS Xx) Xy)->((x0 (f Xx)) (g Xy)))) b0) (((eq_ref b) Xy) (cS Xx))) (((eq_ref b) Xy) (fun (x1:b)=> ((x0 (f Xx)) (g x1)))))) as proof of ((and (((cS Xx) Xy)->((x0 (f Xx)) (g Xy)))) (((x0 (f Xx)) (g Xy))->((cS Xx) Xy)))
% Found (((fun (x1:(((eq Prop) (((x0 (f Xx)) (g Xy))->((cS Xx) Xy))) (((x0 (f Xx)) (g Xy))->((cS Xx) Xy))))=> (((eq_sym00 (((x0 (f Xx)) (g Xy))->((cS Xx) Xy))) x1) (and (((cS Xx) Xy)->((x0 (f Xx)) (g Xy)))))) ((eq_ref Prop) (((x0 (f Xx)) (g Xy))->((cS Xx) Xy)))) ((((conj (((cS Xx) Xy)->((x0 (f Xx)) (g Xy)))) (((x0 (f Xx)) (g Xy))->((cS Xx) Xy))) (((eq_ref b) Xy) (cS Xx))) (((eq_ref b) Xy) (fun (x1:b)=> ((x0 (f Xx)) (g x1)))))) as proof of ((and (((cS Xx) Xy)->((x0 (f Xx)) (g Xy)))) (((x0 (f Xx)) (g Xy))->((cS Xx) Xy)))
% Found (((fun (x1:(((eq Prop) (((x0 (f Xx)) (g Xy))->((cS Xx) Xy))) (((x0 (f Xx)) (g Xy))->((cS Xx) Xy))))=> ((((eq_sym0 (((x0 (f Xx)) (g Xy))->((cS Xx) Xy))) (((x0 (f Xx)) (g Xy))->((cS Xx) Xy))) x1) (and (((cS Xx) Xy)->((x0 (f Xx)) (g Xy)))))) ((eq_ref Prop) (((x0 (f Xx)) (g Xy))->((cS Xx) Xy)))) ((((conj (((cS Xx) Xy)->((x0 (f Xx)) (g Xy)))) (((x0 (f Xx)) (g Xy))->((cS Xx) Xy))) (((eq_ref b) Xy) (cS Xx))) (((eq_ref b) Xy) (fun (x1:b)=> ((x0 (f Xx)) (g x1)))))) as proof of ((and (((cS Xx) Xy)->((x0 (f Xx)) (g Xy)))) (((x0 (f Xx)) (g Xy))->((cS Xx) Xy)))
% Found (((fun (x1:(((eq Prop) (((x0 (f Xx)) (g Xy))->((cS Xx) Xy))) (((x0 (f Xx)) (g Xy))->((cS Xx) Xy))))=> (((((eq_sym Prop) (((x0 (f Xx)) (g Xy))->((cS Xx) Xy))) (((x0 (f Xx)) (g Xy))->((cS Xx) Xy))) x1) (and (((cS Xx) Xy)->((x0 (f Xx)) (g Xy)))))) ((eq_ref Prop) (((x0 (f Xx)) (g Xy))->((cS Xx) Xy)))) ((((conj (((cS Xx) Xy)->((x0 (f Xx)) (g Xy)))) (((x0 (f Xx)) (g Xy))->((cS Xx) Xy))) (((eq_ref b) Xy) (cS Xx))) (((eq_ref b) Xy) (fun (x1:b)=> ((x0 (f Xx)) (g x1)))))) as proof of ((and (((cS Xx) Xy)->((x0 (f Xx)) (g Xy)))) (((x0 (f Xx)) (g Xy))->((cS Xx) Xy)))
% Found (((fun (x1:(((eq Prop) (((x0 (f Xx)) (g Xy))->((cS Xx) Xy))) (((x0 (f Xx)) (g Xy))->((cS Xx) Xy))))=> (((((eq_sym Prop) (((x0 (f Xx)) (g Xy))->((cS Xx) Xy))) (((x0 (f Xx)) (g Xy))->((cS Xx) Xy))) x1) (and (((cS Xx) Xy)->((x0 (f Xx)) (g Xy)))))) ((eq_ref Prop) (((x0 (f Xx)) (g Xy))->((cS Xx) Xy)))) ((((conj (((cS Xx) Xy)->((x0 (f Xx)) (g Xy)))) (((x0 (f Xx)) (g Xy))->((cS Xx) Xy))) (((eq_ref b) Xy) (cS Xx))) (((eq_ref b) Xy) (fun (x1:b)=> ((x0 (f Xx)) (g x1)))))) as proof of ((and (((cS Xx) Xy)->((x0 (f Xx)) (g Xy)))) (((x0 (f Xx)) (g Xy))->((cS Xx) Xy)))
% Found iff_refl0:=(iff_refl ((x0 (f Xx)) (g Xy))):((iff ((x0 (f Xx)) (g Xy))) ((x0 (f Xx)) (g Xy)))
% Found (iff_refl ((x0 (f Xx)) (g Xy))) as proof of ((iff ((x0 (f Xx)) (g Xy))) ((cS Xx) Xy))
% Found (iff_refl ((x0 (f Xx)) (g Xy))) as proof of ((iff ((x0 (f Xx)) (g Xy))) ((cS Xx) Xy))
% Found (iff_refl ((x0 (f Xx)) (g Xy))) as proof of ((iff ((x0 (f Xx)) (g Xy))) ((cS Xx) Xy))
% Found (iff_sym00 (iff_refl ((x0 (f Xx)) (g Xy)))) as proof of ((iff ((cS Xx) Xy)) ((x0 (f Xx)) (g Xy)))
% Found ((iff_sym0 ((cS Xx) Xy)) (iff_refl ((x0 (f Xx)) (g Xy)))) as proof of ((iff ((cS Xx) Xy)) ((x0 (f Xx)) (g Xy)))
% Found (((iff_sym ((x0 (f Xx)) (g Xy))) ((cS Xx) Xy)) (iff_refl ((x0 (f Xx)) (g Xy)))) as proof of ((iff ((cS Xx) Xy)) ((x0 (f Xx)) (g Xy)))
% Found (fun (x2:(forall (Xx0:b) (Xy0:b), ((((eq b) (g Xx0)) (g Xy0))->(((eq b) Xx0) Xy0))))=> (((iff_sym ((x0 (f Xx)) (g Xy))) ((cS Xx) Xy)) (iff_refl ((x0 (f Xx)) (g Xy))))) as proof of ((iff ((cS Xx) Xy)) ((x0 (f Xx)) (g Xy)))
% Found (fun (x1:(forall (Xx0:a) (Xy0:a), ((((eq a) (f Xx0)) (f Xy0))->(((eq a) Xx0) Xy0)))) (x2:(forall (Xx0:b) (Xy0:b), ((((eq b) (g Xx0)) (g Xy0))->(((eq b) Xx0) Xy0))))=> (((iff_sym ((x0 (f Xx)) (g Xy))) ((cS Xx) Xy)) (iff_refl ((x0 (f Xx)) (g Xy))))) as proof of ((forall (Xx0:b) (Xy0:b), ((((eq b) (g Xx0)) (g Xy0))->(((eq b) Xx0) Xy0)))->((iff ((cS Xx) Xy)) ((x0 (f Xx)) (g Xy))))
% Found (fun (x1:(forall (Xx0:a) (Xy0:a), ((((eq a) (f Xx0)) (f Xy0))->(((eq a) Xx0) Xy0)))) (x2:(forall (Xx0:b) (Xy0:b), ((((eq b) (g Xx0)) (g Xy0))->(((eq b) Xx0) Xy0))))=> (((iff_sym ((x0 (f Xx)) (g Xy))) ((cS Xx) Xy)) (iff_refl ((x0 (f Xx)) (g Xy))))) as proof of ((forall (Xx0:a) (Xy0:a), ((((eq a) (f Xx0)) (f Xy0))->(((eq a) Xx0) Xy0)))->((forall (Xx0:b) (Xy0:b), ((((eq b) (g Xx0)) (g Xy0))->(((eq b) Xx0) Xy0)))->((iff ((cS Xx) Xy)) ((x0 (f Xx)) (g Xy)))))
% Found (and_rect00 (fun (x1:(forall (Xx0:a) (Xy0:a), ((((eq a) (f Xx0)) (f Xy0))->(((eq a) Xx0) Xy0)))) (x2:(forall (Xx0:b) (Xy0:b), ((((eq b) (g Xx0)) (g Xy0))->(((eq b) Xx0) Xy0))))=> (((iff_sym ((x0 (f Xx)) (g Xy))) ((cS Xx) Xy)) (iff_refl ((x0 (f Xx)) (g Xy)))))) as proof of ((iff ((cS Xx) Xy)) ((x0 (f Xx)) (g Xy)))
% Found ((and_rect0 ((iff ((cS Xx) Xy)) ((x0 (f Xx)) (g Xy)))) (fun (x1:(forall (Xx0:a) (Xy0:a), ((((eq a) (f Xx0)) (f Xy0))->(((eq a) Xx0) Xy0)))) (x2:(forall (Xx0:b) (Xy0:b), ((((eq b) (g Xx0)) (g Xy0))->(((eq b) Xx0) Xy0))))=> (((iff_sym ((x0 (f Xx)) (g Xy))) ((cS Xx) Xy)) (iff_refl ((x0 (f Xx)) (g Xy)))))) as proof of ((iff ((cS Xx) Xy)) ((x0 (f Xx)) (g Xy)))
% Found (((fun (P0:Type) (x1:((forall (Xx:a) (Xy:a), ((((eq a) (f Xx)) (f Xy))->(((eq a) Xx) Xy)))->((forall (Xx:b) (Xy:b), ((((eq b) (g Xx)) (g Xy))->(((eq b) Xx) Xy)))->P0)))=> (((((and_rect (forall (Xx:a) (Xy:a), ((((eq a) (f Xx)) (f Xy))->(((eq a) Xx) Xy)))) (forall (Xx:b) (Xy:b), ((((eq b) (g Xx)) (g Xy))->(((eq b) Xx) Xy)))) P0) x1) x)) ((iff ((cS Xx) Xy)) ((x0 (f Xx)) (g Xy)))) (fun (x1:(forall (Xx0:a) (Xy0:a), ((((eq a) (f Xx0)) (f Xy0))->(((eq a) Xx0) Xy0)))) (x2:(forall (Xx0:b) (Xy0:b), ((((eq b) (g Xx0)) (g Xy0))->(((eq b) Xx0) Xy0))))=> (((iff_sym ((x0 (f Xx)) (g Xy))) ((cS Xx) Xy)) (iff_refl ((x0 (f Xx)) (g Xy)))))) as proof of ((iff ((cS Xx) Xy)) ((x0 (f Xx)) (g Xy)))
% Found iff_refl0:=(iff_refl ((x0 (f Xx)) (g Xy))):((iff ((x0 (f Xx)) (g Xy))) ((x0 (f Xx)) (g Xy)))
% Found (iff_refl ((x0 (f Xx)) (g Xy))) as proof of ((iff ((x0 (f Xx)) (g Xy))) ((cS Xx) Xy))
% Found (iff_refl ((x0 (f Xx)) (g Xy))) as proof of ((iff ((x0 (f Xx)) (g Xy))) ((cS Xx) Xy))
% Found (iff_refl ((x0 (f Xx)) (g Xy))) as proof of ((iff ((x0 (f Xx)) (g Xy))) ((cS Xx) Xy))
% Found (iff_sym00 (iff_refl ((x0 (f Xx)) (g Xy)))) as proof of ((iff ((cS Xx) Xy)) ((x0 (f Xx)) (g Xy)))
% Found ((iff_sym0 ((cS Xx) Xy)) (iff_refl ((x0 (f Xx)) (g Xy)))) as proof of ((iff ((cS Xx) Xy)) ((x0 (f Xx)) (g Xy)))
% Found (((iff_sym ((x0 (f Xx)) (g Xy))) ((cS Xx) Xy)) (iff_refl ((x0 (f Xx)) (g Xy)))) as proof of ((iff ((cS Xx) Xy)) ((x0 (f Xx)) (g Xy)))
% Found (fun (x2:(forall (Xx0:b) (Xy0:b), ((((eq b) (g Xx0)) (g Xy0))->(((eq b) Xx0) Xy0))))=> (((iff_sym ((x0 (f Xx)) (g Xy))) ((cS Xx) Xy)) (iff_refl ((x0 (f Xx)) (g Xy))))) as proof of ((iff ((cS Xx) Xy)) ((x0 (f Xx)) (g Xy)))
% Found (fun (x1:(forall (Xx0:a) (Xy0:a), ((((eq a) (f Xx0)) (f Xy0))->(((eq a) Xx0) Xy0)))) (x2:(forall (Xx0:b) (Xy0:b), ((((eq b) (g Xx0)) (g Xy0))->(((eq b) Xx0) Xy0))))=> (((iff_sym ((x0 (f Xx)) (g Xy))) ((cS Xx) Xy)) (iff_refl ((x0 (f Xx)) (g Xy))))) as proof of ((forall (Xx0:b) (Xy0:b), ((((eq b) (g Xx0)) (g Xy0))->(((eq b) Xx0) Xy0)))->((iff ((cS Xx) Xy)) ((x0 (f Xx)) (g Xy))))
% Found (fun (x1:(forall (Xx0:a) (Xy0:a), ((((eq a) (f Xx0)) (f Xy0))->(((eq a) Xx0) Xy0)))) (x2:(forall (Xx0:b) (Xy0:b), ((((eq b) (g Xx0)) (g Xy0))->(((eq b) Xx0) Xy0))))=> (((iff_sym ((x0 (f Xx)) (g Xy))) ((cS Xx) Xy)) (iff_refl ((x0 (f Xx)) (g Xy))))) as proof of ((forall (Xx0:a) (Xy0:a), ((((eq a) (f Xx0)) (f Xy0))->(((eq a) Xx0) Xy0)))->((forall (Xx0:b) (Xy0:b), ((((eq b) (g Xx0)) (g Xy0))->(((eq b) Xx0) Xy0)))->((iff ((cS Xx) Xy)) ((x0 (f Xx)) (g Xy)))))
% Found (and_rect00 (fun (x1:(forall (Xx0:a) (Xy0:a), ((((eq a) (f Xx0)) (f Xy0))->(((eq a) Xx0) Xy0)))) (x2:(forall (Xx0:b) (Xy0:b), ((((eq b) (g Xx0)) (g Xy0))->(((eq b) Xx0) Xy0))))=> (((iff_sym ((x0 (f Xx)) (g Xy))) ((cS Xx) Xy)) (iff_refl ((x0 (f Xx)) (g Xy)))))) as proof of ((iff ((cS Xx) Xy)) ((x0 (f Xx)) (g Xy)))
% Found ((and_rect0 ((iff ((cS Xx) Xy)) ((x0 (f Xx)) (g Xy)))) (fun (x1:(forall (Xx0:a) (Xy0:a), ((((eq a) (f Xx0)) (f Xy0))->(((eq a) Xx0) Xy0)))) (x2:(forall (Xx0:b) (Xy0:b), ((((eq b) (g Xx0)) (g Xy0))->(((eq b) Xx0) Xy0))))=> (((iff_sym ((x0 (f Xx)) (g Xy))) ((cS Xx) Xy)) (iff_refl ((x0 (f Xx)) (g Xy)))))) as proof of ((iff ((cS Xx) Xy)) ((x0 (f Xx)) (g Xy)))
% Found (((fun (P0:Type) (x1:((forall (Xx:a) (Xy:a), ((((eq a) (f Xx)) (f Xy))->(((eq a) Xx) Xy)))->((forall (Xx:b) (Xy:b), ((((eq b) (g Xx)) (g Xy))->(((eq b) Xx) Xy)))->P0)))=> (((((and_rect (forall (Xx:a) (Xy:a), ((((eq a) (f Xx)) (f Xy))->(((eq a) Xx) Xy)))) (forall (Xx:b) (Xy:b), ((((eq b) (g Xx)) (g Xy))->(((eq b) Xx) Xy)))) P0) x1) x)) ((iff ((cS Xx) Xy)) ((x0 (f Xx)) (g Xy)))) (fun (x1:(forall (Xx0:a) (Xy0:a), ((((eq a) (f Xx0)) (f Xy0))->(((eq a) Xx0) Xy0)))) (x2:(forall (Xx0:b) (Xy0:b), ((((eq b) (g Xx0)) (g Xy0))->(((eq b) Xx0) Xy0))))=> (((iff_sym ((x0 (f Xx)) (g Xy))) ((cS Xx) Xy)) (iff_refl ((x0 (f Xx)) (g Xy)))))) as proof of ((iff ((cS Xx) Xy)) ((x0 (f Xx)) (g Xy)))
% Found eq_ref000:=(eq_ref00 (fun (x3:b)=> ((x2 (f Xx)) (g x3)))):(((x2 (f Xx)) (g Xy))->((x2 (f Xx)) (g Xy)))
% Found (eq_ref00 (fun (x3:b)=> ((x2 (f Xx)) (g x3)))) as proof of (((x2 (f Xx)) (g Xy))->((cS Xx) Xy))
% Found ((eq_ref0 Xy) (fun (x3:b)=> ((x2 (f Xx)) (g x3)))) as proof of (((x2 (f Xx)) (g Xy))->((cS Xx) Xy))
% Found (((eq_ref b) Xy) (fun (x3:b)=> ((x2 (f Xx)) (g x3)))) as proof of (((x2 (f Xx)) (g Xy))->((cS Xx) Xy))
% Found (((eq_ref b) Xy) (fun (x3:b)=> ((x2 (f Xx)) (g x3)))) as proof of (((x2 (f Xx)) (g Xy))->((cS Xx) Xy))
% Found (((eq_ref b) Xy) (fun (x3:b)=> ((x2 (f Xx)) (g x3)))) as proof of (((x2 (f Xx)) (g Xy))->((cS Xx) Xy))
% Found eq_ref000:=(eq_ref00 (cS Xx)):(((cS Xx) Xy)->((cS Xx) Xy))
% Found (eq_ref00 (cS Xx)) as proof of (((cS Xx) Xy)->((x2 (f Xx)) (g Xy)))
% Found ((eq_ref0 Xy) (cS Xx)) as proof of (((cS Xx) Xy)->((x2 (f Xx)) (g Xy)))
% Found (((eq_ref b) Xy) (cS Xx)) as proof of (((cS Xx) Xy)->((x2 (f Xx)) (g Xy)))
% Found (((eq_ref b) Xy) (cS Xx)) as proof of (((cS Xx) Xy)->((x2 (f Xx)) (g Xy)))
% Found ((conj00 (((eq_ref b) Xy) (cS Xx))) (((eq_ref b) Xy) (fun (x3:b)=> ((x2 (f Xx)) (g x3))))) as proof of ((iff ((cS Xx) Xy)) ((x2 (f Xx)) (g Xy)))
% Found (((conj0 (((x2 (f Xx)) (g Xy))->((cS Xx) Xy))) (((eq_ref b) Xy) (cS Xx))) (((eq_ref b) Xy) (fun (x3:b)=> ((x2 (f Xx)) (g x3))))) as proof of ((iff ((cS Xx) Xy)) ((x2 (f Xx)) (g Xy)))
% Found ((((conj (((cS Xx) Xy)->((x2 (f Xx)) (g Xy)))) (((x2 (f Xx)) (g Xy))->((cS Xx) Xy))) (((eq_ref b) Xy) (cS Xx))) (((eq_ref b) Xy) (fun (x3:b)=> ((x2 (f Xx)) (g x3))))) as proof of ((iff ((cS Xx) Xy)) ((x2 (f Xx)) (g Xy)))
% Found eq_ref000:=(eq_ref00 (fun (x3:b)=> ((x2 (f Xx)) (g x3)))):(((x2 (f Xx)) (g Xy))->((x2 (f Xx)) (g Xy)))
% Found (eq_ref00 (fun (x3:b)=> ((x2 (f Xx)) (g x3)))) as proof of (((x2 (f Xx)) (g Xy))->((cS Xx) Xy))
% Found ((eq_ref0 Xy) (fun (x3:b)=> ((x2 (f Xx)) (g x3)))) as proof of (((x2 (f Xx)) (g Xy))->((cS Xx) Xy))
% Found (((eq_ref b) Xy) (fun (x3:b)=> ((x2 (f Xx)) (g x3)))) as proof of (((x2 (f Xx)) (g Xy))->((cS Xx) Xy))
% Found (((eq_ref b) Xy) (fun (x3:b)=> ((x2 (f Xx)) (g x3)))) as proof of (((x2 (f Xx)) (g Xy))->((cS Xx) Xy))
% Found (((eq_ref b) Xy) (fun (x3:b)=> ((x2 (f Xx)) (g x3)))) as proof of (((x2 (f Xx)) (g Xy))->((cS Xx) Xy))
% Found eq_ref000:=(eq_ref00 (cS Xx)):(((cS Xx) Xy)->((cS Xx) Xy))
% Found (eq_ref00 (cS Xx)) as proof of (((cS Xx) Xy)->((x2 (f Xx)) (g Xy)))
% Found ((eq_ref0 Xy) (cS Xx)) as proof of (((cS Xx) Xy)->((x2 (f Xx)) (g Xy)))
% Found (((eq_ref b) Xy) (cS Xx)) as proof of (((cS Xx) Xy)->((x2 (f Xx)) (g Xy)))
% Found (((eq_ref b) Xy) (cS Xx)) as proof of (((cS Xx) Xy)->((x2 (f Xx)) (g Xy)))
% Found ((conj00 (((eq_ref b) Xy) (cS Xx))) (((eq_ref b) Xy) (fun (x3:b)=> ((x2 (f Xx)) (g x3))))) as proof of ((iff ((cS Xx) Xy)) ((x2 (f Xx)) (g Xy)))
% Found (((conj0 (((x2 (f Xx)) (g Xy))->((cS Xx) Xy))) (((eq_ref b) Xy) (cS Xx))) (((eq_ref b) Xy) (fun (x3:b)=> ((x2 (f Xx)) (g x3))))) as proof of ((iff ((cS Xx) Xy)) ((x2 (f Xx)) (g Xy)))
% Found ((((conj (((cS Xx) Xy)->((x2 (f Xx)) (g Xy)))) (((x2 (f Xx)) (g Xy))->((cS Xx) Xy))) (((eq_ref b) Xy) (cS Xx))) (((eq_ref b) Xy) (fun (x3:b)=> ((x2 (f Xx)) (g x3))))) as proof of ((iff ((cS Xx) Xy)) ((x2 (f Xx)) (g Xy)))
% Found eq_ref000:=(eq_ref00 (fun (x3:b)=> ((x2 (f Xx)) (g x3)))):(((x2 (f Xx)) (g Xy))->((x2 (f Xx)) (g Xy)))
% Found (eq_ref00 (fun (x3:b)=> ((x2 (f Xx)) (g x3)))) as proof of (((x2 (f Xx)) (g Xy))->((cS Xx) Xy))
% Found ((eq_ref0 Xy) (fun (x3:b)=> ((x2 (f Xx)) (g x3)))) as proof of (((x2 (f Xx)) (g Xy))->((cS Xx) Xy))
% Found (((eq_ref b) Xy) (fun (x3:b)=> ((x2 (f Xx)) (g x3)))) as proof of (((x2 (f Xx)) (g Xy))->((cS Xx) Xy))
% Found (((eq_ref b) Xy) (fun (x3:b)=> ((x2 (f Xx)) (g x3)))) as proof of (((x2 (f Xx)) (g Xy))->((cS Xx) Xy))
% Found (((eq_ref b) Xy) (fun (x3:b)=> ((x2 (f Xx)) (g x3)))) as proof of (((x2 (f Xx)) (g Xy))->((cS Xx) Xy))
% Found eq_ref000:=(eq_ref00 (cS Xx)):(((cS Xx) Xy)->((cS Xx) Xy))
% Found (eq_ref00 (cS Xx)) as proof of (((cS Xx) Xy)->((x2 (f Xx)) (g Xy)))
% Found ((eq_ref0 Xy) (cS Xx)) as proof of (((cS Xx) Xy)->((x2 (f Xx)) (g Xy)))
% Found (((eq_ref b) Xy) (cS Xx)) as proof of (((cS Xx) Xy)->((x2 (f Xx)) (g Xy)))
% Found (((eq_ref b) Xy) (cS Xx)) as proof of (((cS Xx) Xy)->((x2 (f Xx)) (g Xy)))
% Found ((conj00 (((eq_ref b) Xy) (cS Xx))) (((eq_ref b) Xy) (fun (x3:b)=> ((x2 (f Xx)) (g x3))))) as proof of ((iff ((cS Xx) Xy)) ((x2 (f Xx)) (g Xy)))
% Found (((conj0 (((x2 (f Xx)) (g Xy))->((cS Xx) Xy))) (((eq_ref b) Xy) (cS Xx))) (((eq_ref b) Xy) (fun (x3:b)=> ((x2 (f Xx)) (g x3))))) as proof of ((iff ((cS Xx) Xy)) ((x2 (f Xx)) (g Xy)))
% Found ((((conj (((cS Xx) Xy)->((x2 (f Xx)) (g Xy)))) (((x2 (f Xx)) (g Xy))->((cS Xx) Xy))) (((eq_ref b) Xy) (cS Xx))) (((eq_ref b) Xy) (fun (x3:b)=> ((x2 (f Xx)) (g x3))))) as proof of ((iff ((cS Xx) Xy)) ((x2 (f Xx)) (g Xy)))
% Found eq_ref000:=(eq_ref00 (fun (x3:b)=> ((x2 (f Xx)) (g x3)))):(((x2 (f Xx)) (g Xy))->((x2 (f Xx)) (g Xy)))
% Found (eq_ref00 (fun (x3:b)=> ((x2 (f Xx)) (g x3)))) as proof of (((x2 (f Xx)) (g Xy))->((cS Xx) Xy))
% Found ((eq_ref0 Xy) (fun (x3:b)=> ((x2 (f Xx)) (g x3)))) as proof of (((x2 (f Xx)) (g Xy))->((cS Xx) Xy))
% Found (((eq_ref b) Xy) (fun (x3:b)=> ((x2 (f Xx)) (g x3)))) as proof of (((x2 (f Xx)) (g Xy))->((cS Xx) Xy))
% Found (((eq_ref b) Xy) (fun (x3:b)=> ((x2 (f Xx)) (g x3)))) as proof of (((x2 (f Xx)) (g Xy))->((cS Xx) Xy))
% Found (((eq_ref b) Xy) (fun (x3:b)=> ((x2 (f Xx)) (g x3)))) as proof of (((x2 (f Xx)) (g Xy))->((cS Xx) Xy))
% Found eq_ref000:=(eq_ref00 (cS Xx)):(((cS Xx) Xy)->((cS Xx) Xy))
% Found (eq_ref00 (cS Xx)) as proof of (((cS Xx) Xy)->((x2 (f Xx)) (g Xy)))
% Found ((eq_ref0 Xy) (cS Xx)) as proof of (((cS Xx) Xy)->((x2 (f Xx)) (g Xy)))
% Found (((eq_ref b) Xy) (cS Xx)) as proof of (((cS Xx) Xy)->((x2 (f Xx)) (g Xy)))
% Found (((eq_ref b) Xy) (cS Xx)) as proof of (((cS Xx) Xy)->((x2 (f Xx)) (g Xy)))
% Found ((conj00 (((eq_ref b) Xy) (cS Xx))) (((eq_ref b) Xy) (fun (x3:b)=> ((x2 (f Xx)) (g x3))))) as proof of ((iff ((cS Xx) Xy)) ((x2 (f Xx)) (g Xy)))
% Found (((conj0 (((x2 (f Xx)) (g Xy))->((cS Xx) Xy))) (((eq_ref b) Xy) (cS Xx))) (((eq_ref b) Xy) (fun (x3:b)=> ((x2 (f Xx)) (g x3))))) as proof of ((iff ((cS Xx) Xy)) ((x2 (f Xx)) (g Xy)))
% Found ((((conj (((cS Xx) Xy)->((x2 (f Xx)) (g Xy)))) (((x2 (f Xx)) (g Xy))->((cS Xx) Xy))) (((eq_ref b) Xy) (cS Xx))) (((eq_ref b) Xy) (fun (x3:b)=> ((x2 (f Xx)) (g x3))))) as proof of ((iff ((cS Xx) Xy)) ((x2 (f Xx)) (g Xy)))
% Found eq_ref000:=(eq_ref00 (fun (x3:b)=> ((x0 (f Xx)) (g x3)))):(((x0 (f Xx)) (g Xy))->((x0 (f Xx)) (g Xy)))
% Found (eq_ref00 (fun (x3:b)=> ((x0 (f Xx)) (g x3)))) as proof of (((x0 (f Xx)) (g Xy))->((cS Xx) Xy))
% Found ((eq_ref0 Xy) (fun (x3:b)=> ((x0 (f Xx)) (g x3)))) as proof of (((x0 (f Xx)) (g Xy))->((cS Xx) Xy))
% Found (((eq_ref b) Xy) (fun (x3:b)=> ((x0 (f Xx)) (g x3)))) as proof of (((x0 (f Xx)) (g Xy))->((cS Xx) Xy))
% Found (((eq_ref b) Xy) (fun (x3:b)=> ((x0 (f Xx)) (g x3)))) as proof of (((x0 (f Xx)) (g Xy))->((cS Xx) Xy))
% Found (((eq_ref b) Xy) (fun (x3:b)=> ((x0 (f Xx)) (g x3)))) as proof of (((x0 (f Xx)) (g Xy))->((cS Xx) Xy))
% Found eq_ref000:=(eq_ref00 (cS Xx)):(((cS Xx) Xy)->((cS Xx) Xy))
% Found (eq_ref00 (cS Xx)) as proof of (((cS Xx) Xy)->((x0 (f Xx)) (g Xy)))
% Found ((eq_ref0 Xy) (cS Xx)) as proof of (((cS Xx) Xy)->((x0 (f Xx)) (g Xy)))
% Found (((eq_ref b) Xy) (cS Xx)) as proof of (((cS Xx) Xy)->((x0 (f Xx)) (g Xy)))
% Found (((eq_ref b) Xy) (cS Xx)) as proof of (((cS Xx) Xy)->((x0 (f Xx)) (g Xy)))
% Found ((conj00 (((eq_ref b) Xy) (cS Xx))) (((eq_ref b) Xy) (fun (x3:b)=> ((x0 (f Xx)) (g x3))))) as proof of ((iff ((cS Xx) Xy)) ((x0 (f Xx)) (g Xy)))
% Found (((conj0 (((x0 (f Xx)) (g Xy))->((cS Xx) Xy))) (((eq_ref b) Xy) (cS Xx))) (((eq_ref b) Xy) (fun (x3:b)=> ((x0 (f Xx)) (g x3))))) as proof of ((iff ((cS Xx) Xy)) ((x0 (f Xx)) (g Xy)))
% Found ((((conj (((cS Xx) Xy)->((x0 (f Xx)) (g Xy)))) (((x0 (f Xx)) (g Xy))->((cS Xx) Xy))) (((eq_ref b) Xy) (cS Xx))) (((eq_ref b) Xy) (fun (x3:b)=> ((x0 (f Xx)) (g x3))))) as proof of ((iff ((cS Xx) Xy)) ((x0 (f Xx)) (g Xy)))
% Found eta_expansion000:=(eta_expansion00 f0):(((eq ((a->(b->Prop))->Prop)) f0) (fun (x:(a->(b->Prop)))=> (f0 x)))
% Found (eta_expansion00 f0) as proof of (((eq ((a->(b->Prop))->Prop)) f0) b0)
% Found ((eta_expansion0 Prop) f0) as proof of (((eq ((a->(b->Prop))->Prop)) f0) b0)
% Found (((eta_expansion (a->(b->Prop))) Prop) f0) as proof of (((eq ((a->(b->Prop))->Prop)) f0) b0)
% Found (((eta_expansion (a->(b->Prop))) Prop) f0) as proof of (((eq ((a->(b->Prop))->Prop)) f0) b0)
% Found (((eta_expansion (a->(b->Prop))) Prop) f0) as proof of (((eq ((a->(b->Prop))->Prop)) f0) b0)
% Found eta_expansion000:=(eta_expansion00 f0):(((eq ((a->(b->Prop))->Prop)) f0) (fun (x:(a->(b->Prop)))=> (f0 x)))
% Found (eta_expansion00 f0) as proof of (((eq ((a->(b->Prop))->Prop)) f0) b0)
% Found ((eta_expansion0 Prop) f0) as proof of (((eq ((a->(b->Prop))->Prop)) f0) b0)
% Found (((eta_expansion (a->(b->Prop))) Prop) f0) as proof of (((eq ((a->(b->Prop))->Prop)) f0) b0)
% Found (((eta_expansion (a->(b->Prop))) Prop) f0) as proof of (((eq ((a->(b->Prop))->Prop)) f0) b0)
% Found (((eta_expansion (a->(b->Prop))) Prop) f0) as proof of (((eq ((a->(b->Prop))->Prop)) f0) b0)
% Found eq_ref000:=(eq_ref00 (fun (x3:b)=> ((x0 (f Xx)) (g x3)))):(((x0 (f Xx)) (g Xy))->((x0 (f Xx)) (g Xy)))
% Found (eq_ref00 (fun (x3:b)=> ((x0 (f Xx)) (g x3)))) as proof of (((x0 (f Xx)) (g Xy))->((cS Xx) Xy))
% Found ((eq_ref0 Xy) (fun (x3:b)=> ((x0 (f Xx)) (g x3)))) as proof of (((x0 (f Xx)) (g Xy))->((cS Xx) Xy))
% Found (((eq_ref b) Xy) (fun (x3:b)=> ((x0 (f Xx)) (g x3)))) as proof of (((x0 (f Xx)) (g Xy))->((cS Xx) Xy))
% Found (((eq_ref b) Xy) (fun (x3:b)=> ((x0 (f Xx)) (g x3)))) as proof of (((x0 (f Xx)) (g Xy))->((cS Xx) Xy))
% Found (((eq_ref b) Xy) (fun (x3:b)=> ((x0 (f Xx)) (g x3)))) as proof of (((x0 (f Xx)) (g Xy))->((cS Xx) Xy))
% Found eq_ref000:=(eq_ref00 (cS Xx)):(((cS Xx) Xy)->((cS Xx) Xy))
% Found (eq_ref00 (cS Xx)) as proof of (((cS Xx) Xy)->((x0 (f Xx)) (g Xy)))
% Found ((eq_ref0 Xy) (cS Xx)) as proof of (((cS Xx) Xy)->((x0 (f Xx)) (g Xy)))
% Found (((eq_ref b) Xy) (cS Xx)) as proof of (((cS Xx) Xy)->((x0 (f Xx)) (g Xy)))
% Found (((eq_ref b) Xy) (cS Xx)) as proof of (((cS Xx) Xy)->((x0 (f Xx)) (g Xy)))
% Found ((conj00 (((eq_ref b) Xy) (cS Xx))) (((eq_ref b) Xy) (fun (x3:b)=> ((x0 (f Xx)) (g x3))))) as proof of ((iff ((cS Xx) Xy)) ((x0 (f Xx)) (g Xy)))
% Found (((conj0 (((x0 (f Xx)) (g Xy))->((cS Xx) Xy))) (((eq_ref b) Xy) (cS Xx))) (((eq_ref b) Xy) (fun (x3:b)=> ((x0 (f Xx)) (g x3))))) as proof of ((iff ((cS Xx) Xy)) ((x0 (f Xx)) (g Xy)))
% Found ((((conj (((cS Xx) Xy)->((x0 (f Xx)) (g Xy)))) (((x0 (f Xx)) (g Xy))->((cS Xx) Xy))) (((eq_ref b) Xy) (cS Xx))) (((eq_ref b) Xy) (fun (x3:b)=> ((x0 (f Xx)) (g x3))))) as proof of ((iff ((cS Xx) Xy)) ((x0 (f Xx)) (g Xy)))
% Found eq_ref000:=(eq_ref00 (fun (x3:b)=> ((x0 (f Xx)) (g x3)))):(((x0 (f Xx)) (g Xy))->((x0 (f Xx)) (g Xy)))
% Found (eq_ref00 (fun (x3:b)=> ((x0 (f Xx)) (g x3)))) as proof of (((x0 (f Xx)) (g Xy))->((cS Xx) Xy))
% Found ((eq_ref0 Xy) (fun (x3:b)=> ((x0 (f Xx)) (g x3)))) as proof of (((x0 (f Xx)) (g Xy))->((cS Xx) Xy))
% Found (((eq_ref b) Xy) (fun (x3:b)=> ((x0 (f Xx)) (g x3)))) as proof of (((x0 (f Xx)) (g Xy))->((cS Xx) Xy))
% Found (((eq_ref b) Xy) (fun (x3:b)=> ((x0 (f Xx)) (g x3)))) as proof of (((x0 (f Xx)) (g Xy))->((cS Xx) Xy))
% Found (((eq_ref b) Xy) (fun (x3:b)=> ((x0 (f Xx)) (g x3)))) as proof of (((x0 (f Xx)) (g Xy))->((cS Xx) Xy))
% Found eq_ref000:=(eq_ref00 (cS Xx)):(((cS Xx) Xy)->((cS Xx) Xy))
% Found (eq_ref00 (cS Xx)) as proof of (((cS Xx) Xy)->((x0 (f Xx)) (g Xy)))
% Found ((eq_ref0 Xy) (cS Xx)) as proof of (((cS Xx) Xy)->((x0 (f Xx)) (g Xy)))
% Found (((eq_ref b) Xy) (cS Xx)) as proof of (((cS Xx) Xy)->((x0 (f Xx)) (g Xy)))
% Found (((eq_ref b) Xy) (cS Xx)) as proof of (((cS Xx) Xy)->((x0 (f Xx)) (g Xy)))
% Found ((conj00 (((eq_ref b) Xy) (cS Xx))) (((eq_ref b) Xy) (fun (x3:b)=> ((x0 (f Xx)) (g x3))))) as proof of ((iff ((cS Xx) Xy)) ((x0 (f Xx)) (g Xy)))
% Found (((conj0 (((x0 (f Xx)) (g Xy))->((cS Xx) Xy))) (((eq_ref b) Xy) (cS Xx))) (((eq_ref b) Xy) (fun (x3:b)=> ((x0 (f Xx)) (g x3))))) as proof of ((iff ((cS Xx) Xy)) ((x0 (f Xx)) (g Xy)))
% Found ((((conj (((cS Xx) Xy)->((x0 (f Xx)) (g Xy)))) (((x0 (f Xx)) (g Xy))->((cS Xx) Xy))) (((eq_ref b) Xy) (cS Xx))) (((eq_ref b) Xy) (fun (x3:b)=> ((x0 (f Xx)) (g x3))))) as proof of ((iff ((cS Xx) Xy)) ((x0 (f Xx)) (g Xy)))
% Found eta_expansion000:=(eta_expansion00 f0):(((eq ((a->(b->Prop))->Prop)) f0) (fun (x:(a->(b->Prop)))=> (f0 x)))
% Found (eta_expansion00 f0) as proof of (((eq ((a->(b->Prop))->Prop)) f0) b0)
% Found ((eta_expansion0 Prop) f0) as proof of (((eq ((a->(b->Prop))->Prop)) f0) b0)
% Found (((eta_expansion (a->(b->Prop))) Prop) f0) as proof of (((eq ((a->(b->Prop))->Prop)) f0) b0)
% Found (((eta_expansion (a->(b->Prop))) Prop) f0) as proof of (((eq ((a->(b->Prop))->Prop)) f0) b0)
% Found (((eta_expansion (a->(b->Prop))) Prop) f0) as proof of (((eq ((a->(b->Prop))->Prop)) f0) b0)
% Found eta_expansion000:=(eta_expansion00 f0):(((eq ((a->(b->Prop))->Prop)) f0) (fun (x:(a->(b->Prop)))=> (f0 x)))
% Found (eta_expansion00 f0) as proof of (((eq ((a->(b->Prop))->Prop)) f0) b0)
% Found ((eta_expansion0 Prop) f0) as proof of (((eq ((a->(b->Prop))->Prop)) f0) b0)
% Found (((eta_expansion (a->(b->Prop))) Prop) f0) as proof of (((eq ((a->(b->Prop))->Prop)) f0) b0)
% Found (((eta_expansion (a->(b->Prop))) Prop) f0) as proof of (((eq ((a->(b->Prop))->Prop)) f0) b0)
% Found (((eta_expansion (a->(b->Prop))) Prop) f0) as proof of (((eq ((a->(b->Prop))->Prop)) f0) b0)
% Found ex_intro0:=(ex_intro (a->(b->Prop))):(forall (P:((a->(b->Prop))->Prop)) (x:(a->(b->Prop))), ((P x)->((ex (a->(b->Prop))) P)))
% Instantiate: b0:=(forall (P:((a->(b->Prop))->Prop)) (x:(a->(b->Prop))), ((P x)->((ex (a->(b->Prop))) P))):Prop
% Found ex_intro0 as proof of b0
% Found eta_expansion_dep000:=(eta_expansion_dep00 b0):(((eq ((a->(b->Prop))->Prop)) b0) (fun (x:(a->(b->Prop)))=> (b0 x)))
% Found (eta_expansion_dep00 b0) as proof of (((eq ((a->(b->Prop))->Prop)) b0) b00)
% Found ((eta_expansion_dep0 (fun (x1:(a->(b->Prop)))=> Prop)) b0) as proof of (((eq ((a->(b->Prop))->Prop)) b0) b00)
% Found (((eta_expansion_dep (a->(b->Prop))) (fun (x1:(a->(b->Prop)))=> Prop)) b0) as proof of (((eq ((a->(b->Prop))->Prop)) b0) b00)
% Found (((eta_expansion_dep (a->(b->Prop))) (fun (x1:(a->(b->Prop)))=> Prop)) b0) as proof of (((eq ((a->(b->Prop))->Prop)) b0) b00)
% Found (((eta_expansion_dep (a->(b->Prop))) (fun (x1:(a->(b->Prop)))=> Prop)) b0) as proof of (((eq ((a->(b->Prop))->Prop)) b0) b00)
% 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)) (b0 x0))
% Found ((eq_ref Prop) (f0 x0)) as proof of (((eq Prop) (f0 x0)) (b0 x0))
% Found ((eq_ref Prop) (f0 x0)) as proof of (((eq Prop) (f0 x0)) (b0 x0))
% Found (fun (x0:(a->(b->Prop)))=> ((eq_ref Prop) (f0 x0))) as proof of (((eq Prop) (f0 x0)) (b0 x0))
% Found (fun (x0:(a->(b->Prop)))=> ((eq_ref Prop) (f0 x0))) as proof of (forall (x:(a->(b->Prop))), (((eq Prop) (f0 x)) (b0 x)))
% 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)) (b0 x0))
% Found ((eq_ref Prop) (f0 x0)) as proof of (((eq Prop) (f0 x0)) (b0 x0))
% Found ((eq_ref Prop) (f0 x0)) as proof of (((eq Prop) (f0 x0)) (b0 x0))
% Found (fun (x0:(a->(b->Prop)))=> ((eq_ref Prop) (f0 x0))) as proof of (((eq Prop) (f0 x0)) (b0 x0))
% Found (fun (x0:(a->(b->Prop)))=> ((eq_ref Prop) (f0 x0))) as proof of (forall (x:(a->(b->Prop))), (((eq Prop) (f0 x)) (b0 x)))
% 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)) (b0 x0))
% Found ((eq_ref Prop) (f0 x0)) as proof of (((eq Prop) (f0 x0)) (b0 x0))
% Found ((eq_ref Prop) (f0 x0)) as proof of (((eq Prop) (f0 x0)) (b0 x0))
% Found (fun (x0:(a->(b->Prop)))=> ((eq_ref Prop) (f0 x0))) as proof of (((eq Prop) (f0 x0)) (b0 x0))
% Found (fun (x0:(a->(b->Prop)))=> ((eq_ref Prop) (f0 x0))) as proof of (forall (x:(a->(b->Prop))), (((eq Prop) (f0 x)) (b0 x)))
% 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)) (b0 x0))
% Found ((eq_ref Prop) (f0 x0)) as proof of (((eq Prop) (f0 x0)) (b0 x0))
% Found ((eq_ref Prop) (f0 x0)) as proof of (((eq Prop) (f0 x0)) (b0 x0))
% Found (fun (x0:(a->(b->Prop)))=> ((eq_ref Prop) (f0 x0))) as proof of (((eq Prop) (f0 x0)) (b0 x0))
% Found (fun (x0:(a->(b->Prop)))=> ((eq_ref Prop) (f0 x0))) as proof of (forall (x:(a->(b->Prop))), (((eq Prop) (f0 x)) (b0 x)))
% Found eq_ref000:=(eq_ref00 (fun (x3:b)=> ((x2 (f Xx)) (g x3)))):(((x2 (f Xx)) (g Xy))->((x2 (f Xx)) (g Xy)))
% Found (eq_ref00 (fun (x3:b)=> ((x2 (f Xx)) (g x3)))) as proof of b0
% Found ((eq_ref0 Xy) (fun (x3:b)=> ((x2 (f Xx)) (g x3)))) as proof of b0
% Found (((eq_ref b) Xy) (fun (x3:b)=> ((x2 (f Xx)) (g x3)))) as proof of b0
% Found (((eq_ref b) Xy) (fun (x3:b)=> ((x2 (f Xx)) (g x3)))) as proof of b0
% Found (((eq_ref b) Xy) (fun (x3:b)=> ((x2 (f Xx)) (g x3)))) as proof of b0
% Found eq_ref000:=(eq_ref00 (cS Xx)):(((cS Xx) Xy)->((cS Xx) Xy))
% Found (eq_ref00 (cS Xx)) as proof of (((cS Xx) Xy)->((x2 (f Xx)) (g Xy)))
% Found ((eq_ref0 Xy) (cS Xx)) as proof of (((cS Xx) Xy)->((x2 (f Xx)) (g Xy)))
% Found (((eq_ref b) Xy) (cS Xx)) as proof of (((cS Xx) Xy)->((x2 (f Xx)) (g Xy)))
% Found (((eq_ref b) Xy) (cS Xx)) as proof of (((cS Xx) Xy)->((x2 (f Xx)) (g Xy)))
% Found ((conj00 (((eq_ref b) Xy) (cS Xx))) (((eq_ref b) Xy) (fun (x3:b)=> ((x2 (f Xx)) (g x3))))) as proof of (P b0)
% Found (((conj0 b0) (((eq_ref b) Xy) (cS Xx))) (((eq_ref b) Xy) (fun (x3:b)=> ((x2 (f Xx)) (g x3))))) as proof of (P b0)
% Found ((((conj (((cS Xx) Xy)->((x2 (f Xx)) (g Xy)))) b0) (((eq_ref b) Xy) (cS Xx))) (((eq_ref b) Xy) (fun (x3:b)=> ((x2 (f Xx)) (g x3))))) as proof of (P b0)
% Found ((((conj (((cS Xx) Xy)->((x2 (f Xx)) (g Xy)))) b0) (((eq_ref b) Xy) (cS Xx))) (((eq_ref b) Xy) (fun (x3:b)=> ((x2 (f Xx)) (g x3))))) as proof of (P b0)
% Found ((eq_sym0000 ((eq_ref Prop) (((x2 (f Xx)) (g Xy))->((cS Xx) Xy)))) ((((conj (((cS Xx) Xy)->((x2 (f Xx)) (g Xy)))) b0) (((eq_ref b) Xy) (cS Xx))) (((eq_ref b) Xy) (fun (x3:b)=> ((x2 (f Xx)) (g x3)))))) as proof of ((and (((cS Xx) Xy)->((x2 (f Xx)) (g Xy)))) (((x2 (f Xx)) (g Xy))->((cS Xx) Xy)))
% Found ((eq_sym0000 ((eq_ref Prop) (((x2 (f Xx)) (g Xy))->((cS Xx) Xy)))) ((((conj (((cS Xx) Xy)->((x2 (f Xx)) (g Xy)))) b0) (((eq_ref b) Xy) (cS Xx))) (((eq_ref b) Xy) (fun (x3:b)=> ((x2 (f Xx)) (g x3)))))) as proof of ((and (((cS Xx) Xy)->((x2 (f Xx)) (g Xy)))) (((x2 (f Xx)) (g Xy))->((cS Xx) Xy)))
% Found (((fun (x3:(((eq Prop) (((x2 (f Xx)) (g Xy))->((cS Xx) Xy))) b0))=> ((eq_sym000 x3) (and (((cS Xx) Xy)->((x2 (f Xx)) (g Xy)))))) ((eq_ref Prop) (((x2 (f Xx)) (g Xy))->((cS Xx) Xy)))) ((((conj (((cS Xx) Xy)->((x2 (f Xx)) (g Xy)))) b0) (((eq_ref b) Xy) (cS Xx))) (((eq_ref b) Xy) (fun (x3:b)=> ((x2 (f Xx)) (g x3)))))) as proof of ((and (((cS Xx) Xy)->((x2 (f Xx)) (g Xy)))) (((x2 (f Xx)) (g Xy))->((cS Xx) Xy)))
% Found (((fun (x3:(((eq Prop) (((x2 (f Xx)) (g Xy))->((cS Xx) Xy))) (((x2 (f Xx)) (g Xy))->((cS Xx) Xy))))=> (((eq_sym00 (((x2 (f Xx)) (g Xy))->((cS Xx) Xy))) x3) (and (((cS Xx) Xy)->((x2 (f Xx)) (g Xy)))))) ((eq_ref Prop) (((x2 (f Xx)) (g Xy))->((cS Xx) Xy)))) ((((conj (((cS Xx) Xy)->((x2 (f Xx)) (g Xy)))) (((x2 (f Xx)) (g Xy))->((cS Xx) Xy))) (((eq_ref b) Xy) (cS Xx))) (((eq_ref b) Xy) (fun (x3:b)=> ((x2 (f Xx)) (g x3)))))) as proof of ((and (((cS Xx) Xy)->((x2 (f Xx)) (g Xy)))) (((x2 (f Xx)) (g Xy))->((cS Xx) Xy)))
% Found (((fun (x3:(((eq Prop) (((x2 (f Xx)) (g Xy))->((cS Xx) Xy))) (((x2 (f Xx)) (g Xy))->((cS Xx) Xy))))=> ((((eq_sym0 (((x2 (f Xx)) (g Xy))->((cS Xx) Xy))) (((x2 (f Xx)) (g Xy))->((cS Xx) Xy))) x3) (and (((cS Xx) Xy)->((x2 (f Xx)) (g Xy)))))) ((eq_ref Prop) (((x2 (f Xx)) (g Xy))->((cS Xx) Xy)))) ((((conj (((cS Xx) Xy)->((x2 (f Xx)) (g Xy)))) (((x2 (f Xx)) (g Xy))->((cS Xx) Xy))) (((eq_ref b) Xy) (cS Xx))) (((eq_ref b) Xy) (fun (x3:b)=> ((x2 (f Xx)) (g x3)))))) as proof of ((and (((cS Xx) Xy)->((x2 (f Xx)) (g Xy)))) (((x2 (f Xx)) (g Xy))->((cS Xx) Xy)))
% Found (((fun (x3:(((eq Prop) (((x2 (f Xx)) (g Xy))->((cS Xx) Xy))) (((x2 (f Xx)) (g Xy))->((cS Xx) Xy))))=> (((((eq_sym Prop) (((x2 (f Xx)) (g Xy))->((cS Xx) Xy))) (((x2 (f Xx)) (g Xy))->((cS Xx) Xy))) x3) (and (((cS Xx) Xy)->((x2 (f Xx)) (g Xy)))))) ((eq_ref Prop) (((x2 (f Xx)) (g Xy))->((cS Xx) Xy)))) ((((conj (((cS Xx) Xy)->((x2 (f Xx)) (g Xy)))) (((x2 (f Xx)) (g Xy))->((cS Xx) Xy))) (((eq_ref b) Xy) (cS Xx))) (((eq_ref b) Xy) (fun (x3:b)=> ((x2 (f Xx)) (g x3)))))) as proof of ((and (((cS Xx) Xy)->((x2 (f Xx)) (g Xy)))) (((x2 (f Xx)) (g Xy))->((cS Xx) Xy)))
% Found (((fun (x3:(((eq Prop) (((x2 (f Xx)) (g Xy))->((cS Xx) Xy))) (((x2 (f Xx)) (g Xy))->((cS Xx) Xy))))=> (((((eq_sym Prop) (((x2 (f Xx)) (g Xy))->((cS Xx) Xy))) (((x2 (f Xx)) (g Xy))->((cS Xx) Xy))) x3) (and (((cS Xx) Xy)->((x2 (f Xx)) (g Xy)))))) ((eq_ref Prop) (((x2 (f Xx)) (g Xy))->((cS Xx) Xy)))) ((((conj (((cS Xx) Xy)->((x2 (f Xx)) (g Xy)))) (((x2 (f Xx)) (g Xy))->((cS Xx) Xy))) (((eq_ref b) Xy) (cS Xx))) (((eq_ref b) Xy) (fun (x3:b)=> ((x2 (f Xx)) (g x3)))))) as proof of ((and (((cS Xx) Xy)->((x2 (f Xx)) (g Xy)))) (((x2 (f Xx)) (g Xy))->((cS Xx) Xy)))
% Found eq_ref00:=(eq_ref0 f0):(((eq ((a->(b->Prop))->Prop)) f0) f0)
% Found (eq_ref0 f0) as proof of (((eq ((a->(b->Prop))->Prop)) f0) b0)
% Found ((eq_ref ((a->(b->Prop))->Prop)) f0) as proof of (((eq ((a->(b->Prop))->Prop)) f0) b0)
% Found ((eq_ref ((a->(b->Prop))->Prop)) f0) as proof of (((eq ((a->(b->Prop))->Prop)) f0) b0)
% Found ((eq_ref ((a->(b->Prop))->Prop)) f0) as proof of (((eq ((a->(b->Prop))->Prop)) f0) b0)
% Found eta_expansion_dep000:=(eta_expansion_dep00 f0):(((eq ((a->(b->Prop))->Prop)) f0) (fun (x:(a->(b->Prop)))=> (f0 x)))
% Found (eta_expansion_dep00 f0) as proof of (((eq ((a->(b->Prop))->Prop)) f0) b0)
% Found ((eta_expansion_dep0 (fun (x3:(a->(b->Prop)))=> Prop)) f0) as proof of (((eq ((a->(b->Prop))->Prop)) f0) b0)
% Found (((eta_expansion_dep (a->(b->Prop))) (fun (x3:(a->(b->Prop)))=> Prop)) f0) as proof of (((eq ((a->(b->Prop))->Prop)) f0) b0)
% Found (((eta_expansion_dep (a->(b->Prop))) (fun (x3:(a->(b->Prop)))=> Prop)) f0) as proof of (((eq ((a->(b->Prop))->Prop)) f0) b0)
% Found (((eta_expansion_dep (a->(b->Prop))) (fun (x3:(a->(b->Prop)))=> Prop)) f0) as proof of (((eq ((a->(b->Prop))->Prop)) f0) b0)
% Found eq_ref00:=(eq_ref0 b0):(((eq ((a->(b->Prop))->Prop)) b0) b0)
% Found (eq_ref0 b0) as proof of (((eq ((a->(b->Prop))->Prop)) b0) b00)
% Found ((eq_ref ((a->(b->Prop))->Prop)) b0) as proof of (((eq ((a->(b->Prop))->Prop)) b0) b00)
% Found ((eq_ref ((a->(b->Prop))->Prop)) b0) as proof of (((eq ((a->(b->Prop))->Prop)) b0) b00)
% Found ((eq_ref ((a->(b->Prop))->Prop)) b0) as proof of (((eq ((a->(b->Prop))->Prop)) b0) b00)
% Found eq_ref00:=(eq_ref0 (f1 x2)):(((eq Prop) (f1 x2)) (f1 x2))
% Found (eq_ref0 (f1 x2)) as proof of (((eq Prop) (f1 x2)) (f0 x2))
% Found ((eq_ref Prop) (f1 x2)) as proof of (((eq Prop) (f1 x2)) (f0 x2))
% Found ((eq_ref Prop) (f1 x2)) as proof of (((eq Prop) (f1 x2)) (f0 x2))
% Found (fun (x2:(a->(b->Prop)))=> ((eq_ref Prop) (f1 x2))) as proof of (((eq Prop) (f1 x2)) (f0 x2))
% Found (fun (x2:(a->(b->Prop)))=> ((eq_ref Prop) (f1 x2))) as proof of (forall (x:(a->(b->Prop))), (((eq Prop) (f1 x)) (f0 x)))
% Found eq_ref00:=(eq_ref0 (f1 x2)):(((eq Prop) (f1 x2)) (f1 x2))
% Found (eq_ref0 (f1 x2)) as proof of (((eq Prop) (f1 x2)) (f0 x2))
% Found ((eq_ref Prop) (f1 x2)) as proof of (((eq Prop) (f1 x2)) (f0 x2))
% Found ((eq_ref Prop) (f1 x2)) as proof of (((eq Prop) (f1 x2)) (f0 x2))
% Found (fun (x2:(a->(b->Prop)))=> ((eq_ref Prop) (f1 x2))) as proof of (((eq Prop) (f1 x2)) (f0 x2))
% Found (fun (x2:(a->(b->Prop)))=> ((eq_ref Prop) (f1 x2))) as proof of (forall (x:(a->(b->Prop))), (((eq Prop) (f1 x)) (f0 x)))
% Found eta_expansion_dep000:=(eta_expansion_dep00 f0):(((eq ((a->(b->Prop))->Prop)) f0) (fun (x:(a->(b->Prop)))=> (f0 x)))
% Found (eta_expansion_dep00 f0) as proof of (((eq ((a->(b->Prop))->Prop)) f0) b0)
% Found ((eta_expansion_dep0 (fun (x3:(a->(b->Prop)))=> Prop)) f0) as proof of (((eq ((a->(b->Prop))->Prop)) f0) b0)
% Found (((eta_expansion_dep (a->(b->Prop))) (fun (x3:(a->(b->Prop)))=> Prop)) f0) as proof of (((eq ((a->(b->Prop))->Prop)) f0) b0)
% Found (((eta_expansion_dep (a->(b->Prop))) (fun (x3:(a->(b->Prop)))=> Prop)) f0) as proof of (((eq ((a->(b->Prop))->Prop)) f0) b0)
% Found (((eta_expansion_dep (a->(b->Prop))) (fun (x3:(a->(b->Prop)))=> Prop)) f0) as proof of (((eq ((a->(b->Prop))->Prop)) f0) b0)
% Found eq_ref00:=(eq_ref0 f0):(((eq ((a->(b->Prop))->Prop)) f0) f0)
% Found (eq_ref0 f0) as proof of (((eq ((a->(b->Prop))->Prop)) f0) b0)
% Found ((eq_ref ((a->(b->Prop))->Prop)) f0) as proof of (((eq ((a->(b->Prop))->Prop)) f0) b0)
% Found ((eq_ref ((a->(b->Prop))->Prop)) f0) as proof of (((eq ((a->(b->Prop))->Prop)) f0) b0)
% Found ((eq_ref ((a->(b->Prop))->Prop)) f0) as proof of (((eq ((a->(b->Prop))->Prop)) f0) b0)
% Found eq_ref00:=(eq_ref0 (f1 x2)):(((eq Prop) (f1 x2)) (f1 x2))
% Found (eq_ref0 (f1 x2)) as proof of (((eq Prop) (f1 x2)) (f0 x2))
% Found ((eq_ref Prop) (f1 x2)) as proof of (((eq Prop) (f1 x2)) (f0 x2))
% Found ((eq_ref Prop) (f1 x2)) as proof of (((eq Prop) (f1 x2)) (f0 x2))
% Found (fun (x2:(a->(b->Prop)))=> ((eq_ref Prop) (f1 x2))) as proof of (((eq Prop) (f1 x2)) (f0 x2))
% Found (fun (x2:(a->(b->Prop)))=> ((eq_ref Prop) (f1 x2))) as proof of (forall (x:(a->(b->Prop))), (((eq Prop) (f1 x)) (f0 x)))
% Found eq_ref00:=(eq_ref0 (f1 x2)):(((eq Prop) (f1 x2)) (f1 x2))
% Found (eq_ref0 (f1 x2)) as proof of (((eq Prop) (f1 x2)) (f0 x2))
% Found ((eq_ref Prop) (f1 x2)) as proof of (((eq Prop) (f1 x2)) (f0 x2))
% Found ((eq_ref Prop) (f1 x2)) as proof of (((eq Prop) (f1 x2)) (f0 x2))
% Found (fun (x2:(a->(b->Prop)))=> ((eq_ref Prop) (f1 x2))) as proof of (((eq Prop) (f1 x2)) (f0 x2))
% Found (fun (x2:(a->(b->Prop)))=> ((eq_ref Prop) (f1 x2))) as proof of (forall (x:(a->(b->Prop))), (((eq Prop) (f1 x)) (f0 x)))
% Found eq_ref00:=(eq_ref0 (f0 x2)):(((eq Prop) (f0 x2)) (f0 x2))
% Found (eq_ref0 (f0 x2)) as proof of (((eq Prop) (f0 x2)) (b0 x2))
% Found ((eq_ref Prop) (f0 x2)) as proof of (((eq Prop) (f0 x2)) (b0 x2))
% Found ((eq_ref Prop) (f0 x2)) as proof of (((eq Prop) (f0 x2)) (b0 x2))
% Found (fun (x2:(a->(b->Prop)))=> ((eq_ref Prop) (f0 x2))) as proof of (((eq Prop) (f0 x2)) (b0 x2))
% Found (fun (x2:(a->(b->Prop)))=> ((eq_ref Prop) (f0 x2))) as proof of (forall (x:(a->(b->Prop))), (((eq Prop) (f0 x)) (b0 x)))
% Found eq_ref00:=(eq_ref0 (f0 x2)):(((eq Prop) (f0 x2)) (f0 x2))
% Found (eq_ref0 (f0 x2)) as proof of (((eq Prop) (f0 x2)) (b0 x2))
% Found ((eq_ref Prop) (f0 x2)) as proof of (((eq Prop) (f0 x2)) (b0 x2))
% Found ((eq_ref Prop) (f0 x2)) as proof of (((eq Prop) (f0 x2)) (b0 x2))
% Found (fun (x2:(a->(b->Prop)))=> ((eq_ref Prop) (f0 x2))) as proof of (((eq Prop) (f0 x2)) (b0 x2))
% Found (fun (x2:(a->(b->Prop)))=> ((eq_ref Prop) (f0 x2))) as proof of (forall (x:(a->(b->Prop))), (((eq Prop) (f0 x)) (b0 x)))
% Found eq_ref00:=(eq_ref0 (fun (Xu:(a->(b->Prop)))=> (forall (Xx:a) (Xy:b), ((iff ((cS Xx) Xy)) ((Xu (f Xx)) (g Xy)))))):(((eq ((a->(b->Prop))->Prop)) (fun (Xu:(a->(b->Prop)))=> (forall (Xx:a) (Xy:b), ((iff ((cS Xx) Xy)) ((Xu (f Xx)) (g Xy)))))) (fun (Xu:(a->(b->Prop)))=> (forall (Xx:a) (Xy:b), ((iff ((cS Xx) Xy)) ((Xu (f Xx)) (g Xy))))))
% Found (eq_ref0 (fun (Xu:(a->(b->Prop)))=> (forall (Xx:a) (Xy:b), ((iff ((cS Xx) Xy)) ((Xu (f Xx)) (g Xy)))))) as proof of (((eq ((a->(b->Prop))->Prop)) (fun (Xu:(a->(b->Prop)))=> (forall (Xx:a) (Xy:b), ((iff ((cS Xx) Xy)) ((Xu (f Xx)) (g Xy)))))) b00)
% Found ((eq_ref ((a->(b->Prop))->Prop)) (fun (Xu:(a->(b->Prop)))=> (forall (Xx:a) (Xy:b), ((iff ((cS Xx) Xy)) ((Xu (f Xx)) (g Xy)))))) as proof of (((eq ((a->(b->Prop))->Prop)) (fun (Xu:(a->(b->Prop)))=> (forall (Xx:a) (Xy:b), ((iff ((cS Xx) Xy)) ((Xu (f Xx)) (g Xy)))))) b00)
% Found ((eq_ref ((a->(b->Prop))->Prop)) (fun (Xu:(a->(b->Prop)))=> (forall (Xx:a) (Xy:b), ((iff ((cS Xx) Xy)) ((Xu (f Xx)) (g Xy)))))) as proof of (((eq ((a->(b->Prop))->Prop)) (fun (Xu:(a->(b->Prop)))=> (forall (Xx:a) (Xy:b), ((iff ((cS Xx) Xy)) ((Xu (f Xx)) (g Xy)))))) b00)
% Found ((eq_ref ((a->(b->Prop))->Prop)) (fun (Xu:(a->(b->Prop)))=> (forall (Xx:a) (Xy:b), ((iff ((cS Xx) Xy)) ((Xu (f Xx)) (g Xy)))))) as proof of (((eq ((a->(b->Prop))->Prop)) (fun (Xu:(a->(b->Prop)))=> (forall (Xx:a) (Xy:b), ((iff ((cS Xx) Xy)) ((Xu (f Xx)) (g Xy)))))) b00)
% Found eq_ref00:=(eq_ref0 (f0 x2)):(((eq Prop) (f0 x2)) (f0 x2))
% Found (eq_ref0 (f0 x2)) as proof of (((eq Prop) (f0 x2)) (b0 x2))
% Found ((eq_ref Prop) (f0 x2)) as proof of (((eq Prop) (f0 x2)) (b0 x2))
% Found ((eq_ref Prop) (f0 x2)) as proof of (((eq Prop) (f0 x2)) (b0 x2))
% Found (fun (x2:(a->(b->Prop)))=> ((eq_ref Prop) (f0 x2))) as proof of (((eq Prop) (f0 x2)) (b0 x2))
% Found (fun (x2:(a->(b->Prop)))=> ((eq_ref Prop) (f0 x2))) as proof of (forall (x:(a->(b->Prop))), (((eq Prop) (f0 x)) (b0 x)))
% Found eq_ref00:=(eq_ref0 (f0 x2)):(((eq Prop) (f0 x2)) (f0 x2))
% Found (eq_ref0 (f0 x2)) as proof of (((eq Prop) (f0 x2)) (b0 x2))
% Found ((eq_ref Prop) (f0 x2)) as proof of (((eq Prop) (f0 x2)) (b0 x2))
% Found ((eq_ref Prop) (f0 x2)) as proof of (((eq Prop) (f0 x2)) (b0 x2))
% Found (fun (x2:(a->(b->Prop)))=> ((eq_ref Prop) (f0 x2))) as proof of (((eq Prop) (f0 x2)) (b0 x2))
% Found (fun (x2:(a->(b->Prop)))=> ((eq_ref Prop) (f0 x2))) as proof of (forall (x:(a->(b->Prop))), (((eq Prop) (f0 x)) (b0 x)))
% Found eta_expansion_dep000:=(eta_expansion_dep00 f0):(((eq ((a->(b->Prop))->Prop)) f0) (fun (x:(a->(b->Prop)))=> (f0 x)))
% Found (eta_expansion_dep00 f0) as proof of (((eq ((a->(b->Prop))->Prop)) f0) b0)
% Found ((eta_expansion_dep0 (fun (x3:(a->(b->Prop)))=> Prop)) f0) as proof of (((eq ((a->(b->Prop))->Prop)) f0) b0)
% Found (((eta_expansion_dep (a->(b->Prop))) (fun (x3:(a->(b->Prop)))=> Prop)) f0) as proof of (((eq ((a->(b->Prop))->Prop)) f0) b0)
% Found (((eta_expansion_dep (a->(b->Prop))) (fun (x3:(a->(b->Prop)))=> Prop)) f0) as proof of (((eq ((a->(b->Prop))->Prop)) f0) b0)
% Found (((eta_expansion_dep (a->(b->Prop))) (fun (x3:(a->(b->Prop)))=> Prop)) f0) as proof of (((eq ((a->(b->Prop))->Prop)) f0) b0)
% Found eq_ref00:=(eq_ref0 f0):(((eq ((a->(b->Prop))->Prop)) f0) f0)
% Found (eq_ref0 f0) as proof of (((eq ((a->(b->Prop))->Prop)) f0) b0)
% Found ((eq_ref ((a->(b->Prop))->Prop)) f0) as proof of (((eq ((a->(b->Prop))->Prop)) f0) b0)
% Found ((eq_ref ((a->(b->Prop))->Prop)) f0) as proof of (((eq ((a->(b->Prop))->Prop)) f0) b0)
% Found ((eq_ref ((a->(b->Prop))->Prop)) f0) as proof of (((eq ((a->(b->Prop))->Prop)) f0) b0)
% Found eq_ref00:=(eq_ref0 (f1 x2)):(((eq Prop) (f1 x2)) (f1 x2))
% Found (eq_ref0 (f1 x2)) as proof of (((eq Prop) (f1 x2)) (f0 x2))
% Found ((eq_ref Prop) (f1 x2)) as proof of (((eq Prop) (f1 x2)) (f0 x2))
% Found ((eq_ref Prop) (f1 x2)) as proof of (((eq Prop) (f1 x2)) (f0 x2))
% Found (fun (x2:(a->(b->Prop)))=> ((eq_ref Prop) (f1 x2))) as proof of (((eq Prop) (f1 x2)) (f0 x2))
% Found (fun (x2:(a->(b->Prop)))=> ((eq_ref Prop) (f1 x2))) as proof of (forall (x:(a->(b->Prop))), (((eq Prop) (f1 x)) (f0 x)))
% Found eq_ref00:=(eq_ref0 (f1 x2)):(((eq Prop) (f1 x2)) (f1 x2))
% Found (eq_ref0 (f1 x2)) as proof of (((eq Prop) (f1 x2)) (f0 x2))
% Found ((eq_ref Prop) (f1 x2)) as proof of (((eq Prop) (f1 x2)) (f0 x2))
% Found ((eq_ref Prop) (f1 x2)) as proof of (((eq Prop) (f1 x2)) (f0 x2))
% Found (fun (x2:(a->(b->Prop)))=> ((eq_ref Prop) (f1 x2))) as proof of (((eq Prop) (f1 x2)) (f0 x2))
% Found (fun (x2:(a->(b->Prop)))=> ((eq_ref Prop) (f1 x2))) as proof of (forall (x:(a->(b->Prop))), (((eq Prop) (f1 x)) (f0 x)))
% Found eta_expansion_dep000:=(eta_expansion_dep00 f0):(((eq ((a->(b->Prop))->Prop)) f0) (fun (x:(a->(b->Prop)))=> (f0 x)))
% Found (eta_expansion_dep00 f0) as proof of (((eq ((a->(b->Prop))->Prop)) f0) b0)
% Found ((eta_expansion_dep0 (fun (x3:(a->(b->Prop)))=> Prop)) f0) as proof of (((eq ((a->(b->Prop))->Prop)) f0) b0)
% Found (((eta_expansion_dep (a->(b->Prop))) (fun (x3:(a->(b->Prop)))=> Prop)) f0) as proof of (((eq ((a->(b->Prop))->Prop)) f0) b0)
% Found (((eta_expansion_dep (a->(b->Prop))) (fun (x3:(a->(b->Prop)))=> Prop)) f0) as proof of (((eq ((a->(b->Prop))->Prop)) f0) b0)
% Found (((eta_expansion_dep (a->(b->Prop))) (fun (x3:(a->(b->Prop)))=> Prop)) f0) as proof of (((eq ((a->(b->Prop))->Prop)) f0) b0)
% Found eta_expansion_dep000:=(eta_expansion_dep00 f0):(((eq ((a->(b->Prop))->Prop)) f0) (fun (x:(a->(b->Prop)))=> (f0 x)))
% Found (eta_expansion_dep00 f0) as proof of (((eq ((a->(b->Prop))->Prop)) f0) b0)
% Found ((eta_expansion_dep0 (fun (x3:(a->(b->Prop)))=> Prop)) f0) as proof of (((eq ((a->(b->Prop))->Prop)) f0) b0)
% Found (((eta_expansion_dep (a->(b->Prop))) (fun (x3:(a->(b->Prop)))=> Prop)) f0) as proof of (((eq ((a->(b->Prop))->Prop)) f0) b0)
% Found (((eta_expansion_dep (a->(b->Prop))) (fun (x3:(a->(b->Prop)))=> Prop)) f0) as proof of (((eq ((a->(b->Prop))->Prop)) f0) b0)
% Found (((eta_expansion_dep (a->(b->Prop))) (fun (x3:(a->(b->Prop)))=> Prop)) f0) as proof of (((eq ((a->(b->Prop))->Prop)) f0) b0)
% Found eq_ref00:=(eq_ref0 (f1 x2)):(((eq Prop) (f1 x2)) (f1 x2))
% Found (eq_ref0 (f1 x2)) as proof of (((eq Prop) (f1 x2)) (f0 x2))
% Found ((eq_ref Prop) (f1 x2)) as proof of (((eq Prop) (f1 x2)) (f0 x2))
% Found ((eq_ref Prop) (f1 x2)) as proof of (((eq Prop) (f1 x2)) (f0 x2))
% Found (fun (x2:(a->(b->Prop)))=> ((eq_ref Prop) (f1 x2))) as proof of (((eq Prop) (f1 x2)) (f0 x2))
% Found (fun (x2:(a->(b->Prop)))=> ((eq_ref Prop) (f1 x2))) as proof of (forall (x:(a->(b->Prop))), (((eq Prop) (f1 x)) (f0 x)))
% Found eq_ref00:=(eq_ref0 (f1 x2)):(((eq Prop) (f1 x2)) (f1 x2))
% Found (eq_ref0 (f1 x2)) as proof of (((eq Prop) (f1 x2)) (f0 x2))
% Found ((eq_ref Prop) (f1 x2)) as proof of (((eq Prop) (f1 x2)) (f0 x2))
% Found ((eq_ref Prop) (f1 x2)) as proof of (((eq Prop) (f1 x2)) (f0 x2))
% Found (fun (x2:(a->(b->Prop)))=> ((eq_ref Prop) (f1 x2))) as proof of (((eq Prop) (f1 x2)) (f0 x2))
% Found (fun (x2:(a->(b->Prop)))=> ((eq_ref Prop) (f1 x2))) as proof of (forall (x:(a->(b->Prop))), (((eq Prop) (f1 x)) (f0 x)))
% Found eq_ref00:=(eq_ref0 (f0 x2)):(((eq Prop) (f0 x2)) (f0 x2))
% Found (eq_ref0 (f0 x2)) as proof of (((eq Prop) (f0 x2)) (b0 x2))
% Found ((eq_ref Prop) (f0 x2)) as proof of (((eq Prop) (f0 x2)) (b0 x2))
% Found ((eq_ref Prop) (f0 x2)) as proof of (((eq Prop) (f0 x2)) (b0 x2))
% Found (fun (x2:(a->(b->Prop)))=> ((eq_ref Prop) (f0 x2))) as proof of (((eq Prop) (f0 x2)) (b0 x2))
% Found (fun (x2:(a->(b->Prop)))=> ((eq_ref Prop) (f0 x2))) as proof of (forall (x:(a->(b->Prop))), (((eq Prop) (f0 x)) (b0 x)))
% Found eq_ref00:=(eq_ref0 (f0 x2)):(((eq Prop) (f0 x2)) (f0 x2))
% Found (eq_ref0 (f0 x2)) as proof of (((eq Prop) (f0 x2)) (b0 x2))
% Found ((eq_ref Prop) (f0 x2)) as proof of (((eq Prop) (f0 x2)) (b0 x2))
% Found ((eq_ref Prop) (f0 x2)) as proof of (((eq Prop) (f0 x2)) (b0 x2))
% Found (fun (x2:(a->(b->Prop)))=> ((eq_ref Prop) (f0 x2))) as proof of (((eq Prop) (f0 x2)) (b0 x2))
% Found (fun (x2:(a->(b->Prop)))=> ((eq_ref Prop) (f0 x2))) as proof of (forall (x:(a->(b->Prop))), (((eq Prop) (f0 x)) (b0 x)))
% Found eq_ref00:=(eq_ref0 (f0 x2)):(((eq Prop) (f0 x2)) (f0 x2))
% Found (eq_ref0 (f0 x2)) as proof of (((eq Prop) (f0 x2)) (b0 x2))
% Found ((eq_ref Prop) (f0 x2)) as proof of (((eq Prop) (f0 x2)) (b0 x2))
% Found ((eq_ref Prop) (f0 x2)) as proof of (((eq Prop) (f0 x2)) (b0 x2))
% Found (fun (x2:(a->(b->Prop)))=> ((eq_ref Prop) (f0 x2))) as proof of (((eq Prop) (f0 x2)) (b0 x2))
% Found (fun (x2:(a->(b->Prop)))=> ((eq_ref Prop) (f0 x2))) as proof of (forall (x:(a->(b->Prop))), (((eq Prop) (f0 x)) (b0 x)))
% Found eq_ref00:=(eq_ref0 (f0 x2)):(((eq Prop) (f0 x2)) (f0 x2))
% Found (eq_ref0 (f0 x2)) as proof of (((eq Prop) (f0 x2)) (b0 x2))
% Found ((eq_ref Prop) (f0 x2)) as proof of (((eq Prop) (f0 x2)) (b0 x2))
% Found ((eq_ref Prop) (f0 x2)) as proof of (((eq Prop) (f0 x2)) (b0 x2))
% Found (fun (x2:(a->(b->Prop)))=> ((eq_ref Prop) (f0 x2))) as proof of (((eq Prop) (f0 x2)) (b0 x2))
% Found (fun (x2:(a->(b->Prop)))=> ((eq_ref Prop) (f0 x2))) as proof of (forall (x:(a->(b->Prop))), (((eq Prop) (f0 x)) (b0 x)))
% Found eq_ref00:=(eq_ref0 (f1 x0)):(((eq Prop) (f1 x0)) (f1 x0))
% Found (eq_ref0 (f1 x0)) as proof of (((eq Prop) (f1 x0)) (f0 x0))
% Found ((eq_ref Prop) (f1 x0)) as proof of (((eq Prop) (f1 x0)) (f0 x0))
% Found ((eq_ref Prop) (f1 x0)) as proof of (((eq Prop) (f1 x0)) (f0 x0))
% Found (fun (x0:(a->(b->Prop)))=> ((eq_ref Prop) (f1 x0))) as proof of (((eq Prop) (f1 x0)) (f0 x0))
% Found (fun (x0:(a->(b->Prop)))=> ((eq_ref Prop) (f1 x0))) as proof of (forall (x:(a->(b->Prop))), (((eq Prop) (f1 x)) (f0 x)))
% Found eq_ref00:=(eq_ref0 (f1 x0)):(((eq Prop) (f1 x0)) (f1 x0))
% Found (eq_ref0 (f1 x0)) as proof of (((eq Prop) (f1 x0)) (f0 x0))
% Found ((eq_ref Prop) (f1 x0)) as proof of (((eq Prop) (f1 x0)) (f0 x0))
% Found ((eq_ref Prop) (f1 x0)) as proof of (((eq Prop) (f1 x0)) (f0 x0))
% Found (fun (x0:(a->(b->Prop)))=> ((eq_ref Prop) (f1 x0))) as proof of (((eq Prop) (f1 x0)) (f0 x0))
% Found (fun (x0:(a->(b->Prop)))=> ((eq_ref Prop) (f1 x0))) as proof of (forall (x:(a->(b->Prop))), (((eq Prop) (f1 x)) (f0 x)))
% Found eq_ref00:=(eq_ref0 (f1 x0)):(((eq Prop) (f1 x0)) (f1 x0))
% Found (eq_ref0 (f1 x0)) as proof of (((eq Prop) (f1 x0)) (f0 x0))
% Found ((eq_ref Prop) (f1 x0)) as proof of (((eq Prop) (f1 x0)) (f0 x0))
% Found ((eq_ref Prop) (f1 x0)) as proof of (((eq Prop) (f1 x0)) (f0 x0))
% Found (fun (x0:(a->(b->Prop)))=> ((eq_ref Prop) (f1 x0))) as proof of (((eq Prop) (f1 x0)) (f0 x0))
% Found (fun (x0:(a->(b->Prop)))=> ((eq_ref Prop) (f1 x0))) as proof of (forall (x:(a->(b->Prop))), (((eq Prop) (f1 x)) (f0 x)))
% Found eq_ref00:=(eq_ref0 (f1 x0)):(((eq Prop) (f1 x0)) (f1 x0))
% Found (eq_ref0 (f1 x0)) as proof of (((eq Prop) (f1 x0)) (f0 x0))
% Found ((eq_ref Prop) (f1 x0)) as proof of (((eq Prop) (f1 x0)) (f0 x0))
% Found ((eq_ref Prop) (f1 x0)) as proof of (((eq Prop) (f1 x0)) (f0 x0))
% Found (fun (x0:(a->(b->Prop)))=> ((eq_ref Prop) (f1 x0))) as proof of (((eq Prop) (f1 x0)) (f0 x0))
% Found (fun (x0:(a->(b->Prop)))=> ((eq_ref Prop) (f1 x0))) as proof of (forall (x:(a->(b->Prop))), (((eq Prop) (f1 x)) (f0 x)))
% Found iff_refl0:=(iff_refl ((x0 (f Xx)) (g Xy))):((iff ((x0 (f Xx)) (g Xy))) ((x0 (f Xx)) (g Xy)))
% Found (iff_refl ((x0 (f Xx)) (g Xy))) as proof of ((iff ((x0 (f Xx)) (g Xy))) ((cS Xx) Xy))
% Found (iff_refl ((x0 (f Xx)) (g Xy))) as proof of ((iff ((x0 (f Xx)) (g Xy))) ((cS Xx) Xy))
% Found (iff_refl ((x0 (f Xx)) (g Xy))) as proof of ((iff ((x0 (f Xx)) (g Xy))) ((cS Xx) Xy))
% Found (iff_sym00 (iff_refl ((x0 (f Xx)) (g Xy)))) as proof of ((iff ((cS Xx) Xy)) ((x0 (f Xx)) (g Xy)))
% Found ((iff_sym0 ((cS Xx) Xy)) (iff_refl ((x0 (f Xx)) (g Xy)))) as proof of ((iff ((cS Xx) Xy)) ((x0 (f Xx)) (g Xy)))
% Found (((iff_sym ((x0 (f Xx)) (g Xy))) ((cS Xx) Xy)) (iff_refl ((x0 (f Xx)) (g Xy)))) as proof of ((iff ((cS Xx) Xy)) ((x0 (f Xx)) (g Xy)))
% Found iff_refl0:=(iff_refl ((x0 (f Xx)) (g Xy))):((iff ((x0 (f Xx)) (g Xy))) ((x0 (f Xx)) (g Xy)))
% Found (iff_refl ((x0 (f Xx)) (g Xy))) as proof of ((iff ((x0 (f Xx)) (g Xy))) ((cS Xx) Xy))
% Found (iff_refl ((x0 (f Xx)) (g Xy))) as proof of ((iff ((x0 (f Xx)) (g Xy))) ((cS Xx) Xy))
% Found (iff_refl ((x0 (f Xx)) (g Xy))) as proof of ((iff ((x0 (f Xx)) (g Xy))) ((cS Xx) Xy))
% Found (iff_sym00 (iff_refl ((x0 (f Xx)) (g Xy)))) as proof of ((iff ((cS Xx) Xy)) ((x0 (f Xx)) (g Xy)))
% Found ((iff_sym0 ((cS Xx) Xy)) (iff_refl ((x0 (f Xx)) (g Xy)))) as proof of ((iff ((cS Xx) Xy)) ((x0 (f Xx)) (g Xy)))
% Found (((iff_sym ((x0 (f Xx)) (g Xy))) ((cS Xx) Xy)) (iff_refl ((x0 (f Xx)) (g Xy)))) as proof of ((iff ((cS Xx) Xy)) ((x0 (f Xx)) (g Xy)))
% Found iff_refl0:=(iff_refl ((x0 (f Xx)) (g Xy))):((iff ((x0 (f Xx)) (g Xy))) ((x0 (f Xx)) (g Xy)))
% Found (iff_refl ((x0 (f Xx)) (g Xy))) as proof of ((iff ((x0 (f Xx)) (g Xy))) ((cS Xx) Xy))
% Found (iff_refl ((x0 (f Xx)) (g Xy))) as proof of ((iff ((x0 (f Xx)) (g Xy))) ((cS Xx) Xy))
% Found (iff_refl ((x0 (f Xx)) (g Xy))) as proof of ((iff ((x0 (f Xx)) (g Xy))) ((cS Xx) Xy))
% Found (iff_sym00 (iff_refl ((x0 (f Xx)) (g Xy)))) as proof of ((iff ((cS Xx) Xy)) ((x0 (f Xx)) (g Xy)))
% Found ((iff_sym0 ((cS Xx) Xy)) (iff_refl ((x0 (f Xx)) (g Xy)))) as proof of ((iff ((cS Xx) Xy)) ((x0 (f Xx)) (g Xy)))
% Found (((iff_sym ((x0 (f Xx)) (g Xy))) ((cS Xx) Xy)) (iff_refl ((x0 (f Xx)) (g Xy)))) as proof of ((iff ((cS Xx) Xy)) ((x0 (f Xx)) (g Xy)))
% Found eta_expansion_dep000:=(eta_expansion_dep00 b0):(((eq ((a->(b->Prop))->Prop)) b0) (fun (x:(a->(b->Prop)))=> (b0 x)))
% Found (eta_expansion_dep00 b0) as proof of (((eq ((a->(b->Prop))->Prop)) b0) b00)
% Found ((eta_expansion_dep0 (fun (x3:(a->(b->Prop)))=> Prop)) b0) as proof of (((eq ((a->(b->Prop))->Prop)) b0) b00)
% Found (((eta_expansion_dep (a->(b->Prop))) (fun (x3:(a->(b->Prop)))=> Prop)) b0) as proof of (((eq ((a->(b->Prop))->Prop)) b0) b00)
% Found (((eta_expansion_dep (a->(b->Prop))) (fun (x3:(a->(b->Prop)))=> Prop)) b0) as proof of (((eq ((a->(b->Prop))->Prop)) b0) b00)
% Found (((eta_expansion_dep (a->(b->Prop))) (fun (x3:(a->(b->Prop)))=> Prop)) b0) as proof of (((eq ((a->(b->Prop))->Prop)) b0) b00)
% Found eq_ref000:=(eq_ref00 (fun (x1:b)=> ((x0 (f Xx)) (g x1)))):(((x0 (f Xx)) (g Xy))->((x0 (f Xx)) (g Xy)))
% Found (eq_ref00 (fun (x1:b)=> ((x0 (f Xx)) (g x1)))) as proof of (((x0 (f Xx)) (g Xy))->((cS Xx) Xy))
% Found ((eq_ref0 Xy) (fun (x1:b)=> ((x0 (f Xx)) (g x1)))) as proof of (((x0 (f Xx)) (g Xy))->((cS Xx) Xy))
% Found (((eq_ref b) Xy) (fun (x1:b)=> ((x0 (f Xx)) (g x1)))) as proof of (((x0 (f Xx)) (g Xy))->((cS Xx) Xy))
% Found (((eq_ref b) Xy) (fun (x1:b)=> ((x0 (f Xx)) (g x1)))) as proof of (((x0 (f Xx)) (g Xy))->((cS Xx) Xy))
% Found (((eq_ref b) Xy) (fun (x1:b)=> ((x0 (f Xx)) (g x1)))) as proof of (((x0 (f Xx)) (g Xy))->((cS Xx) Xy))
% Found eq_ref000:=(eq_ref00 (cS Xx)):(((cS Xx) Xy)->((cS Xx) Xy))
% Found (eq_ref00 (cS Xx)) as proof of (((cS Xx) Xy)->((x0 (f Xx)) (g Xy)))
% Found ((eq_ref0 Xy) (cS Xx)) as proof of (((cS Xx) Xy)->((x0 (f Xx)) (g Xy)))
% Found (((eq_ref b) Xy) (cS Xx)) as proof of (((cS Xx) Xy)->((x0 (f Xx)) (g Xy)))
% Found (((eq_ref b) Xy) (cS Xx)) as proof of (((cS Xx) Xy)->((x0 (f Xx)) (g Xy)))
% Found ((conj00 (((eq_ref b) Xy) (cS Xx))) (((eq_ref b) Xy) (fun (x1:b)=> ((x0 (f Xx)) (g x1))))) as proof of ((iff ((cS Xx) Xy)) ((x0 (f Xx)) (g Xy)))
% Found (((conj0 (((x0 (f Xx)) (g Xy))->((cS Xx) Xy))) (((eq_ref b) Xy) (cS Xx))) (((eq_ref b) Xy) (fun (x1:b)=> ((x0 (f Xx)) (g x1))))) as proof of ((iff ((cS Xx) Xy)) ((x0 (f Xx)) (g Xy)))
% Found ((((conj (((cS Xx) Xy)->((x0 (f Xx)) (g Xy)))) (((x0 (f Xx)) (g Xy))->((cS Xx) Xy))) (((eq_ref b) Xy) (cS Xx))) (((eq_ref b) Xy) (fun (x1:b)=> ((x0 (f Xx)) (g x1))))) as proof of ((iff ((cS Xx) Xy)) ((x0 (f Xx)) (g Xy)))
% Found eq_ref000:=(eq_ref00 (fun (x1:b)=> ((x0 (f Xx)) (g x1)))):(((x0 (f Xx)) (g Xy))->((x0 (f Xx)) (g Xy)))
% Found (eq_ref00 (fun (x1:b)=> ((x0 (f Xx)) (g x1)))) as proof of (((x0 (f Xx)) (g Xy))->((cS Xx) Xy))
% Found ((eq_ref0 Xy) (fun (x1:b)=> ((x0 (f Xx)) (g x1)))) as proof of (((x0 (f Xx)) (g Xy))->((cS Xx) Xy))
% Found (((eq_ref b) Xy) (fun (x1:b)=> ((x0 (f Xx)) (g x1)))) as proof of (((x0 (f Xx)) (g Xy))->((cS Xx) Xy))
% Found (((eq_ref b) Xy) (fun (x1:b)=> ((x0 (f Xx)) (g x1)))) as proof of (((x0 (f Xx)) (g Xy))->((cS Xx) Xy))
% Found (((eq_ref b) Xy) (fun (x1:b)=> ((x0 (f Xx)) (g x1)))) as proof of (((x0 (f Xx)) (g Xy))->((cS Xx) Xy))
% Found eq_ref000:=(eq_ref00 (cS Xx)):(((cS Xx) Xy)->((cS Xx) Xy))
% Found (eq_ref00 (cS Xx)) as proof of (((cS Xx) Xy)->((x0 (f Xx)) (g Xy)))
% Found ((eq_ref0 Xy) (cS Xx)) as proof of (((cS Xx) Xy)->((x0 (f Xx)) (g Xy)))
% Found (((eq_ref b) Xy) (cS Xx)) as proof of (((cS Xx) Xy)->((x0 (f Xx)) (g Xy)))
% Found (((eq_ref b) Xy) (cS Xx)) as proof of (((cS Xx) Xy)->((x0 (f Xx)) (g Xy)))
% Found ((conj00 (((eq_ref b) Xy) (cS Xx))) (((eq_ref b) Xy) (fun (x1:b)=> ((x0 (f Xx)) (g x1))))) as proof of ((iff ((cS Xx) Xy)) ((x0 (f Xx)) (g Xy)))
% Found (((conj0 (((x0 (f Xx)) (g Xy))->((cS Xx) Xy))) (((eq_ref b) Xy) (cS Xx))) (((eq_ref b) Xy) (fun (x1:b)=> ((x0 (f Xx)) (g x1))))) as proof of ((iff ((cS Xx) Xy)) ((x0 (f Xx)) (g Xy)))
% Found ((((conj (((cS Xx) Xy)->((x0 (f Xx)) (g Xy)))) (((x0 (f Xx)) (g Xy))->((cS Xx) Xy))) (((eq_ref b) Xy) (cS Xx))) (((eq_ref b) Xy) (fun (x1:b)=> ((x0 (f Xx)) (g x1))))) as proof of ((iff ((cS Xx) Xy)) ((x0 (f Xx)) (g Xy)))
% Found eq_ref000:=(eq_ref00 (fun (x1:b)=> ((x0 (f Xx)) (g x1)))):(((x0 (f Xx)) (g Xy))->((x0 (f Xx)) (g Xy)))
% Found (eq_ref00 (fun (x1:b)=> ((x0 (f Xx)) (g x1)))) as proof of (((x0 (f Xx)) (g Xy))->((cS Xx) Xy))
% Found ((eq_ref0 Xy) (fun (x1:b)=> ((x0 (f Xx)) (g x1)))) as proof of (((x0 (f Xx)) (g Xy))->((cS Xx) Xy))
% Found (((eq_ref b) Xy) (fun (x1:b)=> ((x0 (f Xx)) (g x1)))) as proof of (((x0 (f Xx)) (g Xy))->((cS Xx) Xy))
% Found (((eq_ref b) Xy) (fun (x1:b)=> ((x0 (f Xx)) (g x1)))) as proof of (((x0 (f Xx)) (g Xy))->((cS Xx) Xy))
% Found (((eq_ref b) Xy) (fun (x1:b)=> ((x0 (f Xx)) (g x1)))) as proof of (((x0 (f Xx)) (g Xy))->((cS Xx) Xy))
% Found eq_ref000:=(eq_ref00 (cS Xx)):(((cS Xx) Xy)->((cS Xx) Xy))
% Found (eq_ref00 (cS Xx)) as proof of (((cS Xx) Xy)->((x0 (f Xx)) (g Xy)))
% Found ((eq_ref0 Xy) (cS Xx)) as proof of (((cS Xx) Xy)->((x0 (f Xx)) (g Xy)))
% Found (((eq_ref b) Xy) (cS Xx)) as proof of (((cS Xx) Xy)->((x0 (f Xx)) (g Xy)))
% Found (((eq_ref b) Xy) (cS Xx)) as proof of (((cS Xx) Xy)->((x0 (f Xx)) (g Xy)))
% Found ((conj00 (((eq_ref b) Xy) (cS Xx))) (((eq_ref b) Xy) (fun (x1:b)=> ((x0 (f Xx)) (g x1))))) as proof of ((iff ((cS Xx) Xy)) ((x0 (f Xx)) (g Xy)))
% Found (((conj0 (((x0 (f Xx)) (g Xy))->((cS Xx) Xy))) (((eq_ref b) Xy) (cS Xx))) (((eq_ref b) Xy) (fun (x1:b)=> ((x0 (f Xx)) (g x1))))) as proof of ((iff ((cS Xx) Xy)) ((x0 (f Xx)) (g Xy)))
% Found ((((conj (((cS Xx) Xy)->((x0 (f Xx)) (g Xy)))) (((x0 (f Xx)) (g Xy))->((cS Xx) Xy))) (((eq_ref b) Xy) (cS Xx))) (((eq_ref b) Xy) (fun (x1:b)=> ((x0 (f Xx)) (g x1))))) as proof of ((iff ((cS Xx) Xy)) ((x0 (f Xx)) (g Xy)))
% Found eta_expansion_dep000:=(eta_expansion_dep00 (fun (Xu:(a->(b->Prop)))=> (forall (Xx:a) (Xy:b), ((iff ((cS Xx) Xy)) ((Xu (f Xx)) (g Xy)))))):(((eq ((a->(b->Prop))->Prop)) (fun (Xu:(a->(b->Prop)))=> (forall (Xx:a) (Xy:b), ((iff ((cS Xx) Xy)) ((Xu (f Xx)) (g Xy)))))) (fun (x:(a->(b->Prop)))=> (forall (Xx:a) (Xy:b), ((iff ((cS Xx) Xy)) ((x (f Xx)) (g Xy))))))
% Found (eta_expansion_dep00 (fun (Xu:(a->(b->Prop)))=> (forall (Xx:a) (Xy:b), ((iff ((cS Xx) Xy)) ((Xu (f Xx)) (g Xy)))))) as proof of (((eq ((a->(b->Prop))->Prop)) (fun (Xu:(a->(b->Prop)))=> (forall (Xx:a) (Xy:b), ((iff ((cS Xx) Xy)) ((Xu (f Xx)) (g Xy)))))) b00)
% Found ((eta_expansion_dep0 (fun (x1:(a->(b->Prop)))=> Prop)) (fun (Xu:(a->(b->Prop)))=> (forall (Xx:a) (Xy:b), ((iff ((cS Xx) Xy)) ((Xu (f Xx)) (g Xy)))))) as proof of (((eq ((a->(b->Prop))->Prop)) (fun (Xu:(a->(b->Prop)))=> (forall (Xx:a) (Xy:b), ((iff ((cS Xx) Xy)) ((Xu (f Xx)) (g Xy)))))) b00)
% Found (((eta_expansion_dep (a->(b->Prop))) (fun (x1:(a->(b->Prop)))=> Prop)) (fun (Xu:(a->(b->Prop)))=> (forall (Xx:a) (Xy:b), ((iff ((cS Xx) Xy)) ((Xu (f Xx)) (g Xy)))))) as proof of (((eq ((a->(b->Prop))->Prop)) (fun (Xu:(a->(b->Prop)))=> (forall (Xx:a) (Xy:b), ((iff ((cS Xx) Xy)) ((Xu (f Xx)) (g Xy)))))) b00)
% Found (((eta_expansion_dep (a->(b->Prop))) (fun (x1:(a->(b->Prop)))=> Prop)) (fun (Xu:(a->(b->Prop)))=> (forall (Xx:a) (Xy:b), ((iff ((cS Xx) Xy)) ((Xu (f Xx)) (g Xy)))))) as proof of (((eq ((a->(b->Prop))->Prop)) (fun (Xu:(a->(b->Prop)))=> (forall (Xx:a) (Xy:b), ((iff ((cS Xx) Xy)) ((Xu (f Xx)) (g Xy)))))) b00)
% Found (((eta_expansion_dep (a->(b->Prop))) (fun (x1:(a->(b->Prop)))=> Prop)) (fun (Xu:(a->(b->Prop)))=> (forall (Xx:a) (Xy:b), ((iff ((cS Xx) Xy)) ((Xu (f Xx)) (g Xy)))))) as proof of (((eq ((a->(b->Prop))->Prop)) (fun (Xu:(a->(b->Prop)))=> (forall (Xx:a) (Xy:b), ((iff ((cS Xx) Xy)) ((Xu (f Xx)) (g Xy)))))) b00)
% Found iff_refl0:=(iff_refl ((x2 (f Xx)) (g Xy))):((iff ((x2 (f Xx)) (g Xy))) ((x2 (f Xx)) (g Xy)))
% Found (iff_refl ((x2 (f Xx)) (g Xy))) as proof of ((iff ((x2 (f Xx)) (g Xy))) ((cS Xx) Xy))
% Found (iff_refl ((x2 (f Xx)) (g Xy))) as proof of ((iff ((x2 (f Xx)) (g Xy))) ((cS Xx) Xy))
% Found (iff_refl ((x2 (f Xx)) (g Xy))) as proof of ((iff ((x2 (f Xx)) (g Xy))) ((cS Xx) Xy))
% Found (iff_sym00 (iff_refl ((x2 (f Xx)) (g Xy)))) as proof of ((iff ((cS Xx) Xy)) ((x2 (f Xx)) (g Xy)))
% Found ((iff_sym0 ((cS Xx) Xy)) (iff_refl ((x2 (f Xx)) (g Xy)))) as proof of ((iff ((cS Xx) Xy)) ((x2 (f Xx)) (g Xy)))
% Found (((iff_sym ((x2 (f Xx)) (g Xy))) ((cS Xx) Xy)) (iff_refl ((x2 (f Xx)) (g Xy)))) as proof of ((iff ((cS Xx) Xy)) ((x2 (f Xx)) (g Xy)))
% Found iff_refl0:=(iff_refl ((x2 (f Xx)) (g Xy))):((iff ((x2 (f Xx)) (g Xy))) ((x2 (f Xx)) (g Xy)))
% Found (iff_refl ((x2 (f Xx)) (g Xy))) as proof of ((iff ((x2 (f Xx)) (g Xy))) ((cS Xx) Xy))
% Found (iff_refl ((x2 (f Xx)) (g Xy))) as proof of ((iff ((x2 (f Xx)) (g Xy))) ((cS Xx) Xy))
% Found (iff_refl ((x2 (f Xx)) (g Xy))) as proof of ((iff ((x2 (f Xx)) (g Xy))) ((cS Xx) Xy))
% Found (iff_sym00 (iff_refl ((x2 (f Xx)) (g Xy)))) as proof of ((iff ((cS Xx) Xy)) ((x2 (f Xx)) (g Xy)))
% Found ((iff_sym0 ((cS Xx) Xy)) (iff_refl ((x2 (f Xx)) (g Xy)))) as proof of ((iff ((cS Xx) Xy)) ((x2 (f Xx)) (g Xy)))
% Found (((iff_sym ((x2 (f Xx)) (g Xy))) ((cS Xx) Xy)) (iff_refl ((x2 (f Xx)) (g Xy)))) as proof of ((iff ((cS Xx) Xy)) ((x2 (f Xx)) (g Xy)))
% Found iff_refl0:=(iff_refl ((x2 (f Xx)) (g Xy))):((iff ((x2 (f Xx)) (g Xy))) ((x2 (f Xx)) (g Xy)))
% Found (iff_refl ((x2 (f Xx)) (g Xy))) as proof of ((iff ((x2 (f Xx)) (g Xy))) ((cS Xx) Xy))
% Found (iff_refl ((x2 (f Xx)) (g Xy))) as proof of ((iff ((x2 (f Xx)) (g Xy))) ((cS Xx) Xy))
% Found (iff_refl ((x2 (f Xx)) (g Xy))) as proof of ((iff ((x2 (f Xx)) (g Xy))) ((cS Xx) Xy))
% Found (iff_sym00 (iff_refl ((x2 (f Xx)) (g Xy)))) as proof of ((iff ((cS Xx) Xy)) ((x2 (f Xx)) (g Xy)))
% Found ((iff_sym0 ((cS Xx) Xy)) (iff_refl ((x2 (f Xx)) (g Xy)))) as proof of ((iff ((cS Xx) Xy)) ((x2 (f Xx)) (g Xy)))
% Found (((iff_sym ((x2 (f Xx)) (g Xy))) ((cS Xx) Xy)) (iff_refl ((x2 (f Xx)) (g Xy)))) as proof of ((iff ((cS Xx) Xy)) ((x2 (f Xx)) (g Xy)))
% Found iff_refl0:=(iff_refl ((x2 (f Xx)) (g Xy))):((iff ((x2 (f Xx)) (g Xy))) ((x2 (f Xx)) (g Xy)))
% Found (iff_refl ((x2 (f Xx)) (g Xy))) as proof of ((iff ((x2 (f Xx)) (g Xy))) ((cS Xx) Xy))
% Found (iff_refl ((x2 (f Xx)) (g Xy))) as proof of ((iff ((x2 (f Xx)) (g Xy))) ((cS Xx) Xy))
% Found (iff_refl ((x2 (f Xx)) (g Xy))) as proof of ((iff ((x2 (f Xx)) (g Xy))) ((cS Xx) Xy))
% Found (iff_sym00 (iff_refl ((x2 (f Xx)) (g Xy)))) as proof of ((iff ((cS Xx) Xy)) ((x2 (f Xx)) (g Xy)))
% Found ((iff_sym0 ((cS Xx) Xy)) (iff_refl ((x2 (f Xx)) (g Xy)))) as proof of ((iff ((cS Xx) Xy)) ((x2 (f Xx)) (g Xy)))
% Found (((iff_sym ((x2 (f Xx)) (g Xy))) ((cS Xx) Xy)) (iff_refl ((x2 (f Xx)) (g Xy)))) as proof of ((iff ((cS Xx) Xy)) ((x2 (f Xx)) (g Xy)))
% Found iff_refl0:=(iff_refl ((x2 (f Xx)) (g Xy))):((iff ((x2 (f Xx)) (g Xy))) ((x2 (f Xx)) (g Xy)))
% Found (iff_refl ((x2 (f Xx)) (g Xy))) as proof of ((iff ((x2 (f Xx)) (g Xy))) ((cS Xx) Xy))
% Found (iff_refl ((x2 (f Xx)) (g Xy))) as proof of ((iff ((x2 (f Xx)) (g Xy))) ((cS Xx) Xy))
% Found (iff_refl ((x2 (f Xx)) (g Xy))) as proof of ((iff ((x2 (f Xx)) (g Xy))) ((cS Xx) Xy))
% Found (iff_sym00 (iff_refl ((x2 (f Xx)) (g Xy)))) as proof of ((iff ((cS Xx) Xy)) ((x2 (f Xx)) (g Xy)))
% Found ((iff_sym0 ((cS Xx) Xy)) (iff_refl ((x2 (f Xx)) (g Xy)))) as proof of ((iff ((cS Xx) Xy)) ((x2 (f Xx)) (g Xy)))
% Found (((iff_sym ((x2 (f Xx)) (g Xy))) ((cS Xx) Xy)) (iff_refl ((x2 (f Xx)) (g Xy)))) as proof of ((iff ((cS Xx) Xy)) ((x2 (f Xx)) (g Xy)))
% Found eq_ref000:=(eq_ref00 (fun (x3:b)=> ((x2 (f Xx)) (g x3)))):(((x2 (f Xx)) (g Xy))->((x2 (f Xx)) (g Xy)))
% Found (eq_ref00 (fun (x3:b)=> ((x2 (f Xx)) (g x3)))) as proof of (((x2 (f Xx)) (g Xy))->((cS Xx) Xy))
% Found ((eq_ref0 Xy) (fun (x3:b)=> ((x2 (f Xx)) (g x3)))) as proof of (((x2 (f Xx)) (g Xy))->((cS Xx) Xy))
% Found (((eq_ref b) Xy) (fun (x3:b)=> ((x2 (f Xx)) (g x3)))) as proof of (((x2 (f Xx)) (g Xy))->((cS Xx) Xy))
% Found (((eq_ref b) Xy) (fun (x3:b)=> ((x2 (f Xx)) (g x3)))) as proof of (((x2 (f Xx)) (g Xy))->((cS Xx) Xy))
% Found (((eq_ref b) Xy) (fun (x3:b)=> ((x2 (f Xx)) (g x3)))) as proof of (((x2 (f Xx)) (g Xy))->((cS Xx) Xy))
% Found eq_ref000:=(eq_ref00 (cS Xx)):(((cS Xx) Xy)->((cS Xx) Xy))
% Found (eq_ref00 (cS Xx)) as proof of (((cS Xx) Xy)->((x2 (f Xx)) (g Xy)))
% Found ((eq_ref0 Xy) (cS Xx)) as proof of (((cS Xx) Xy)->((x2 (f Xx)) (g Xy)))
% Found (((eq_ref b) Xy) (cS Xx)) as proof of (((cS Xx) Xy)->((x2 (f Xx)) (g Xy)))
% Found (((eq_ref b) Xy) (cS Xx)) as proof of (((cS Xx) Xy)->((x2 (f Xx)) (g Xy)))
% Found ((conj00 (((eq_ref b) Xy) (cS Xx))) (((eq_ref b) Xy) (fun (x3:b)=> ((x2 (f Xx)) (g x3))))) as proof of ((iff ((cS Xx) Xy)) ((x2 (f Xx)) (g Xy)))
% Found (((conj0 (((x2 (f Xx)) (g Xy))->((cS Xx) Xy))) (((eq_ref b) Xy) (cS Xx))) (((eq_ref b) Xy) (fun (x3:b)=> ((x2 (f Xx)) (g x3))))) as proof of ((iff ((cS Xx) Xy)) ((x2 (f Xx)) (g Xy)))
% Found ((((conj (((cS Xx) Xy)->((x2 (f Xx)) (g Xy)))) (((x2 (f Xx)) (g Xy))->((cS Xx) Xy))) (((eq_ref b) Xy) (cS Xx))) (((eq_ref b) Xy) (fun (x3:b)=> ((x2 (f Xx)) (g x3))))) as proof of ((iff ((cS Xx) Xy)) ((x2 (f Xx)) (g Xy)))
% Found iff_refl0:=(iff_refl ((x2 (f Xx)) (g Xy))):((iff ((x2 (f Xx)) (g Xy))) ((x2 (f Xx)) (g Xy)))
% Found (iff_refl ((x2 (f Xx)) (g Xy))) as proof of ((iff ((x2 (f Xx)) (g Xy))) ((cS Xx) Xy))
% Found (iff_refl ((x2 (f Xx)) (g Xy))) as proof of ((iff ((x2 (f Xx)) (g Xy))) ((cS Xx) Xy))
% Found (iff_refl ((x2 (f Xx)) (g Xy))) as proof of ((iff ((x2 (f Xx)) (g Xy))) ((cS Xx) Xy))
% Found (iff_sym00 (iff_refl ((x2 (f Xx)) (g Xy)))) as proof of ((iff ((cS Xx) Xy)) ((x2 (f Xx)) (g Xy)))
% Found ((iff_sym0 ((cS Xx) Xy)) (iff_refl ((x2 (f Xx)) (g Xy)))) as proof of ((iff ((cS Xx) Xy)) ((x2 (f Xx)) (g Xy)))
% Found (((iff_sym ((x2 (f Xx)) (g Xy))) ((cS Xx) Xy)) (iff_refl ((x2 (f Xx)) (g Xy)))) as proof of ((iff ((cS Xx) Xy)) ((x2 (f Xx)) (g Xy)))
% Found iff_refl0:=(iff_refl ((x2 (f Xx)) (g Xy))):((iff ((x2 (f Xx)) (g Xy))) ((x2 (f Xx)) (g Xy)))
% Found (iff_refl ((x2 (f Xx)) (g Xy))) as proof of ((iff ((x2 (f Xx)) (g Xy))) ((cS Xx) Xy))
% Found (iff_refl ((x2 (f Xx)) (g Xy))) as proof of ((iff ((x2 (f Xx)) (g Xy))) ((cS Xx) Xy))
% Found (iff_refl ((x2 (f Xx)) (g Xy))) as proof of ((iff ((x2 (f Xx)) (g Xy))) ((cS Xx) Xy))
% Found (iff_sym00 (iff_refl ((x2 (f Xx)) (g Xy)))) as proof of ((iff ((cS Xx) Xy)) ((x2 (f Xx)) (g Xy)))
% Found ((iff_sym0 ((cS Xx) Xy)) (iff_refl ((x2 (f Xx)) (g Xy)))) as proof of ((iff ((cS Xx) Xy)) ((x2 (f Xx)) (g Xy)))
% Found (((iff_sym ((x2 (f Xx)) (g Xy))) ((cS Xx) Xy)) (iff_refl ((x2 (f Xx)) (g Xy)))) as proof of ((iff ((cS Xx) Xy)) ((x2 (f Xx)) (g Xy)))
% Found eq_ref000:=(eq_ref00 (fun (x3:b)=> ((x2 (f Xx)) (g x3)))):(((x2 (f Xx)) (g Xy))->((x2 (f Xx)) (g Xy)))
% Found (eq_ref00 (fun (x3:b)=> ((x2 (f Xx)) (g x3)))) as proof of (((x2 (f Xx)) (g Xy))->((cS Xx) Xy))
% Found ((eq_ref0 Xy) (fun (x3:b)=> ((x2 (f Xx)) (g x3)))) as proof of (((x2 (f Xx)) (g Xy))->((cS Xx) Xy))
% Found (((eq_ref b) Xy) (fun (x3:b)=> ((x2 (f Xx)) (g x3)))) as proof of (((x2 (f Xx)) (g Xy))->((cS Xx) Xy))
% Found (((eq_ref b) Xy) (fun (x3:b)=> ((x2 (f Xx)) (g x3)))) as proof of (((x2 (f Xx)) (g Xy))->((cS Xx) Xy))
% Found (((eq_ref b) Xy) (fun (x3:b)=> ((x2 (f Xx)) (g x3)))) as proof of (((x2 (f Xx)) (g Xy))->((cS Xx) Xy))
% Found eq_ref000:=(eq_ref00 (cS Xx)):(((cS Xx) Xy)->((cS Xx) Xy))
% Found (eq_ref00 (cS Xx)) as proof of (((cS Xx) Xy)->((x2 (f Xx)) (g Xy)))
% Found ((eq_ref0 Xy) (cS Xx)) as proof of (((cS Xx) Xy)->((x2 (f Xx)) (g Xy)))
% Found (((eq_ref b) Xy) (cS Xx)) as proof of (((cS Xx) Xy)->((x2 (f Xx)) (g Xy)))
% Found (((eq_ref b) Xy) (cS Xx)) as proof of (((cS Xx) Xy)->((x2 (f Xx)) (g Xy)))
% Found ((conj00 (((eq_ref b) Xy) (cS Xx))) (((eq_ref b) Xy) (fun (x3:b)=> ((x2 (f Xx)) (g x3))))) as proof of ((iff ((cS Xx) Xy)) ((x2 (f Xx)) (g Xy)))
% Found (((conj0 (((x2 (f Xx)) (g Xy))->((cS Xx) Xy))) (((eq_ref b) Xy) (cS Xx))) (((eq_ref b) Xy) (fun (x3:b)=> ((x2 (f Xx)) (g x3))))) as proof of ((iff ((cS Xx) Xy)) ((x2 (f Xx)) (g Xy)))
% Found ((((conj (((cS Xx) Xy)->((x2 (f Xx)) (g Xy)))) (((x2 (f Xx)) (g Xy))->((cS Xx) Xy))) (((eq_ref b) Xy) (cS Xx))) (((eq_ref b) Xy) (fun (x3:b)=> ((x2 (f Xx)) (g x3))))) as proof of ((iff ((cS Xx) Xy)) ((x2 (f Xx)) (g Xy)))
% Found eq_ref000:=(eq_ref00 (fun (x3:b)=> ((x2 (f Xx)) (g x3)))):(((x2 (f Xx)) (g Xy))->((x2 (f Xx)) (g Xy)))
% Found (eq_ref00 (fun (x3:b)=> ((x2 (f Xx)) (g x3)))) as proof of (((x2 (f Xx)) (g Xy))->((cS Xx) Xy))
% Found ((eq_ref0 Xy) (fun (x3:b)=> ((x2 (f Xx)) (g x3)))) as proof of (((x2 (f Xx)) (g Xy))->((cS Xx) Xy))
% Found (((eq_ref b) Xy) (fun (x3:b)=> ((x2 (f Xx)) (g x3)))) as proof of (((x2 (f Xx)) (g Xy))->((cS Xx) Xy))
% Found (((eq_ref b) Xy) (fun (x3:b)=> ((x2 (f Xx)) (g x3)))) as proof of (((x2 (f Xx)) (g Xy))->((cS Xx) Xy))
% Found (((eq_ref b) Xy) (fun (x3:b)=> ((x2 (f Xx)) (g x3)))) as proof of (((x2 (f Xx)) (g Xy))->((cS Xx) Xy))
% Found eq_ref000:=(eq_ref00 (cS Xx)):(((cS Xx) Xy)->((cS Xx) Xy))
% Found (eq_ref00 (cS Xx)) as proof of (((cS Xx) Xy)->((x2 (f Xx)) (g Xy)))
% Found ((eq_ref0 Xy) (cS Xx)) as proof of (((cS Xx) Xy)->((x2 (f Xx)) (g Xy)))
% Found (((eq_ref b) Xy) (cS Xx)) as proof of (((cS Xx) Xy)->((x2 (f Xx)) (g Xy)))
% Found (((eq_ref b) Xy) (cS Xx)) as proof of (((cS Xx) Xy)->((x2 (f Xx)) (g Xy)))
% Found ((conj00 (((eq_ref b) Xy) (cS Xx))) (((eq_ref b) Xy) (fun (x3:b)=> ((x2 (f Xx)) (g x3))))) as proof of ((iff ((cS Xx) Xy)) ((x2 (f Xx)) (g Xy)))
% Found (((conj0 (((x2 (f Xx)) (g Xy))->((cS Xx) Xy))) (((eq_ref b) Xy) (cS Xx))) (((eq_ref b) Xy) (fun (x3:b)=> ((x2 (f Xx)) (g x3))))) as proof of ((iff ((cS Xx) Xy)) ((x2 (f Xx)) (g Xy)))
% Found ((((conj (((cS Xx) Xy)->((x2 (f Xx)) (g Xy)))) (((x2 (f Xx)) (g Xy))->((cS Xx) Xy))) (((eq_ref b) Xy) (cS Xx))) (((eq_ref b) Xy) (fun (x3:b)=> ((x2 (f Xx)) (g x3))))) as proof of ((iff ((cS Xx) Xy)) ((x2 (f Xx)) (g Xy)))
% Found iff_refl0:=(iff_refl ((x2 (f Xx)) (g Xy))):((iff ((x2 (f Xx)) (g Xy))) ((x2 (f Xx)) (g Xy)))
% Found (iff_refl ((x2 (f Xx)) (g Xy))) as proof of ((iff ((x2 (f Xx)) (g Xy))) ((cS Xx) Xy))
% Found (iff_refl ((x2 (f Xx)) (g Xy))) as proof of ((iff ((x2 (f Xx)) (g Xy))) ((cS Xx) Xy))
% Found (iff_refl ((x2 (f Xx)) (g Xy))) as proof of ((iff ((x2 (f Xx)) (g Xy))) ((cS Xx) Xy))
% Found (iff_sym00 (iff_refl ((x2 (f Xx)) (g Xy)))) as proof of ((iff ((cS Xx) Xy)) ((x2 (f Xx)) (g Xy)))
% Found ((iff_sym0 ((cS Xx) Xy)) (iff_refl ((x2 (f Xx)) (g Xy)))) as proof of ((iff ((cS Xx) Xy)) ((x2 (f Xx)) (g Xy)))
% Found (((iff_sym ((x2 (f Xx)) (g Xy))) ((cS Xx) Xy)) (iff_refl ((x2 (f Xx)) (g Xy)))) as proof of ((iff ((cS Xx) Xy)) ((x2 (f Xx)) (g Xy)))
% Found iff_refl0:=(iff_refl ((x2 (f Xx)) (g Xy))):((iff ((x2 (f Xx)) (g Xy))) ((x2 (f Xx)) (g Xy)))
% Found (iff_refl ((x2 (f Xx)) (g Xy))) as proof of ((iff ((x2 (f Xx)) (g Xy))) ((cS Xx) Xy))
% Found (iff_refl ((x2 (f Xx)) (g Xy))) as proof of ((iff ((x2 (f Xx)) (g Xy))) ((cS Xx) Xy))
% Found (iff_refl ((x2 (f Xx)) (g Xy))) as proof of ((iff ((x2 (f Xx)) (g Xy))) ((cS Xx) Xy))
% Found (iff_sym00 (iff_refl ((x2 (f Xx)) (g Xy)))) as proof of ((iff ((cS Xx) Xy)) ((x2 (f Xx)) (g Xy)))
% Found ((iff_sym0 ((cS Xx) Xy)) (iff_refl ((x2 (f Xx)) (g Xy)))) as proof of ((iff ((cS Xx) Xy)) ((x2 (f Xx)) (g Xy)))
% Found (((iff_sym ((x2 (f Xx)) (g Xy))) ((cS Xx) Xy)) (iff_refl ((x2 (f Xx)) (g Xy)))) as proof of ((iff ((cS Xx) Xy)) ((x2 (f Xx)) (g Xy)))
% Found iff_refl0:=(iff_refl ((x0 (f Xx)) (g Xy))):((iff ((x0 (f Xx)) (g Xy))) ((x0 (f Xx)) (g Xy)))
% Found (iff_refl ((x0 (f Xx)) (g Xy))) as proof of ((iff ((x0 (f Xx)) (g Xy))) ((cS Xx) Xy))
% Found (iff_refl ((x0 (f Xx)) (g Xy))) as proof of ((iff ((x0 (f Xx)) (g Xy))) ((cS Xx) Xy))
% Found (iff_refl ((x0 (f Xx)) (g Xy))) as proof of ((iff ((x0 (f Xx)) (g Xy))) ((cS Xx) Xy))
% Found (iff_sym00 (iff_refl ((x0 (f Xx)) (g Xy)))) as proof of ((iff ((cS Xx) Xy)) ((x0 (f Xx)) (g Xy)))
% Found ((iff_sym0 ((cS Xx) Xy)) (iff_refl ((x0 (f Xx)) (g Xy)))) as proof of ((iff ((cS Xx) Xy)) ((x0 (f Xx)) (g Xy)))
% Found (((iff_sym ((x0 (f Xx)) (g Xy))) ((cS Xx) Xy)) (iff_refl ((x0 (f Xx)) (g Xy)))) as proof of ((iff ((cS Xx) Xy)) ((x0 (f Xx)) (g Xy)))
% Found eq_ref000:=(eq_ref00 (fun (x3:b)=> ((x2 (f Xx)) (g x3)))):(((x2 (f Xx)) (g Xy))->((x2 (f Xx)) (g Xy)))
% Found (eq_ref00 (fun (x3:b)=> ((x2 (f Xx)) (g x3)))) as proof of (((x2 (f Xx)) (g Xy))->((cS Xx) Xy))
% Found ((eq_ref0 Xy) (fun (x3:b)=> ((x2 (f Xx)) (g x3)))) as proof of (((x2 (f Xx)) (g Xy))->((cS Xx) Xy))
% Found (((eq_ref b) Xy) (fun (x3:b)=> ((x2 (f Xx)) (g x3)))) as proof of (((x2 (f Xx)) (g Xy))->((cS Xx) Xy))
% Found (((eq_ref b) Xy) (fun (x3:b)=> ((x2 (f Xx)) (g x3)))) as proof of (((x2 (f Xx)) (g Xy))->((cS Xx) Xy))
% Found (((eq_ref b) Xy) (fun (x3:b)=> ((x2 (f Xx)) (g x3)))) as proof of (((x2 (f Xx)) (g Xy))->((cS Xx) Xy))
% Found eq_ref000:=(eq_ref00 (cS Xx)):(((cS Xx) Xy)->((cS Xx) Xy))
% Found (eq_ref00 (cS Xx)) as proof of (((cS Xx) Xy)->((x2 (f Xx)) (g Xy)))
% Found ((eq_ref0 Xy) (cS Xx)) as proof of (((cS Xx) Xy)->((x2 (f Xx)) (g Xy)))
% Found (((eq_ref b) Xy) (cS Xx)) as proof of (((cS Xx) Xy)->((x2 (f Xx)) (g Xy)))
% Found (((eq_ref b) Xy) (cS Xx)) as proof of (((cS Xx) Xy)->((x2 (f Xx)) (g Xy)))
% Found ((conj00 (((eq_ref b) Xy) (cS Xx))) (((eq_ref b) Xy) (fun (x3:b)=> ((x2 (f Xx)) (g x3))))) as proof of ((iff ((cS Xx) Xy)) ((x2 (f Xx)) (g Xy)))
% Found (((conj0 (((x2 (f Xx)) (g Xy))->((cS Xx) Xy))) (((eq_ref b) Xy) (cS Xx))) (((eq_ref b) Xy) (fun (x3:b)=> ((x2 (f Xx)) (g x3))))) as proof of ((iff ((cS Xx) Xy)) ((x2 (f Xx)) (g Xy)))
% Found ((((conj (((cS Xx) Xy)->((x2 (f Xx)) (g Xy)))) (((x2 (f Xx)) (g Xy))->((cS Xx) Xy))) (((eq_ref b) Xy) (cS Xx))) (((eq_ref b) Xy) (fun (x3:b)=> ((x2 (f Xx)) (g x3))))) as proof of ((iff ((cS Xx) Xy)) ((x2 (f Xx)) (g Xy)))
% Found iff_refl0:=(iff_refl ((x0 (f Xx)) (g Xy))):((iff ((x0 (f Xx)) (g Xy))) ((x0 (f Xx)) (g Xy)))
% Found (iff_refl ((x0 (f Xx)) (g Xy))) as proof of ((iff ((x0 (f Xx)) (g Xy))) ((cS Xx) Xy))
% Found (iff_refl ((x0 (f Xx)) (g Xy))) as proof of ((iff ((x0 (f Xx)) (g Xy))) ((cS Xx) Xy))
% Found (iff_refl ((x0 (f Xx)) (g Xy))) as proof of ((iff ((x0 (f Xx)) (g Xy))) ((cS Xx) Xy))
% Found (iff_sym00 (iff_refl ((x0 (f Xx)) (g Xy)))) as proof of ((iff ((cS Xx) Xy)) ((x0 (f Xx)) (g Xy)))
% Found ((iff_sym0 ((cS Xx) Xy)) (iff_refl ((x0 (f Xx)) (g Xy)))) as proof of ((iff ((cS Xx) Xy)) ((x0 (f Xx)) (g Xy)))
% Found (((iff_sym ((x0 (f Xx)) (g Xy))) ((cS Xx) Xy)) (iff_refl ((x0 (f Xx)) (g Xy)))) as proof of ((iff ((cS Xx) Xy)) ((x0 (f Xx)) (g Xy)))
% Found (fun (x2:(forall (Xx0:b) (Xy0:b), ((((eq b) (g Xx0)) (g Xy0))->(((eq b) Xx0) Xy0))))=> (((iff_sym ((x0 (f Xx)) (g Xy))) ((cS Xx) Xy)) (iff_refl ((x0 (f Xx)) (g Xy))))) as proof of ((iff ((cS Xx) Xy)) ((x0 (f Xx)) (g Xy)))
% Found (fun (x1:(forall (Xx0:a) (Xy0:a), ((((eq a) (f Xx0)) (f Xy0))->(((eq a) Xx0) Xy0)))) (x2:(forall (Xx0:b) (Xy0:b), ((((eq b) (g Xx0)) (g Xy0))->(((eq b) Xx0) Xy0))))=> (((iff_sym ((x0 (f Xx)) (g Xy))) ((cS Xx) Xy)) (iff_refl ((x0 (f Xx)) (g Xy))))) as proof of ((forall (Xx0:b) (Xy0:b), ((((eq b) (g Xx0)) (g Xy0))->(((eq b) Xx0) Xy0)))->((iff ((cS Xx) Xy)) ((x0 (f Xx)) (g Xy))))
% Found (fun (x1:(forall (Xx0:a) (Xy0:a), ((((eq a) (f Xx0)) (f Xy0))->(((eq a) Xx0) Xy0)))) (x2:(forall (Xx0:b) (Xy0:b), ((((eq b) (g Xx0)) (g Xy0))->(((eq b) Xx0) Xy0))))=> (((iff_sym ((x0 (f Xx)) (g Xy))) ((cS Xx) Xy)) (iff_refl ((x0 (f Xx)) (g Xy))))) as proof of ((forall (Xx0:a) (Xy0:a), ((((eq a) (f Xx0)) (f Xy0))->(((eq a) Xx0) Xy0)))->((forall (Xx0:b) (Xy0:b), ((((eq b) (g Xx0)) (g Xy0))->(((eq b) Xx0) Xy0)))->((iff ((cS Xx) Xy)) ((x0 (f Xx)) (g Xy)))))
% Found (and_rect00 (fun (x1:(forall (Xx0:a) (Xy0:a), ((((eq a) (f Xx0)) (f Xy0))->(((eq a) Xx0) Xy0)))) (x2:(forall (Xx0:b) (Xy0:b), ((((eq b) (g Xx0)) (g Xy0))->(((eq b) Xx0) Xy0))))=> (((iff_sym ((x0 (f Xx)) (g Xy))) ((cS Xx) Xy)) (iff_refl ((x0 (f Xx)) (g Xy)))))) as proof of ((iff ((cS Xx) Xy)) ((x0 (f Xx)) (g Xy)))
% Found ((and_rect0 ((iff ((cS Xx) Xy)) ((x0 (f Xx)) (g Xy)))) (fun (x1:(forall (Xx0:a) (Xy0:a), ((((eq a) (f Xx0)) (f Xy0))->(((eq a) Xx0) Xy0)))) (x2:(forall (Xx0:b) (Xy0:b), ((((eq b) (g Xx0)) (g Xy0))->(((eq b) Xx0) Xy0))))=> (((iff_sym ((x0 (f Xx)) (g Xy))) ((cS Xx) Xy)) (iff_refl ((x0 (f Xx)) (g Xy)))))) as proof of ((iff ((cS Xx) Xy)) ((x0 (f Xx)) (g Xy)))
% Found (((fun (P0:Type) (x1:((forall (Xx:a) (Xy:a), ((((eq a) (f Xx)) (f Xy))->(((eq a) Xx) Xy)))->((forall (Xx:b) (Xy:b), ((((eq b) (g Xx)) (g Xy))->(((eq b) Xx) Xy)))->P0)))=> (((((and_rect (forall (Xx:a) (Xy:a), ((((eq a) (f Xx)) (f Xy))->(((eq a) Xx) Xy)))) (forall (Xx:b) (Xy:b), ((((eq b) (g Xx)) (g Xy))->(((eq b) Xx) Xy)))) P0) x1) x)) ((iff ((cS Xx) Xy)) ((x0 (f Xx)) (g Xy)))) (fun (x1:(forall (Xx0:a) (Xy0:a), ((((eq a) (f Xx0)) (f Xy0))->(((eq a) Xx0) Xy0)))) (x2:(forall (Xx0:b) (Xy0:b), ((((eq b) (g Xx0)) (g Xy0))->(((eq b) Xx0) Xy0))))=> (((iff_sym ((x0 (f Xx)) (g Xy))) ((cS Xx) Xy)) (iff_refl ((x0 (f Xx)) (g Xy)))))) as proof of ((iff ((cS Xx) Xy)) ((x0 (f Xx)) (g Xy)))
% Found eq_ref000:=(eq_ref00 (fun (x3:b)=> ((x2 (f Xx)) (g x3)))):(((x2 (f Xx)) (g Xy))->((x2 (f Xx)) (g Xy)))
% Found (eq_ref00 (fun (x3:b)=> ((x2 (f Xx)) (g x3)))) as proof of (((x2 (f Xx)) (g Xy))->((cS Xx) Xy))
% Found ((eq_ref0 Xy) (fun (x3:b)=> ((x2 (f Xx)) (g x3)))) as proof of (((x2 (f Xx)) (g Xy))->((cS Xx) Xy))
% Found (((eq_ref b) Xy) (fun (x3:b)=> ((x2 (f Xx)) (g x3)))) as proof of (((x2 (f Xx)) (g Xy))->((cS Xx) Xy))
% Found (((eq_ref b) Xy) (fun (x3:b)=> ((x2 (f Xx)) (g x3)))) as proof of (((x2 (f Xx)) (g Xy))->((cS Xx) Xy))
% Found (((eq_ref b) Xy) (fun (x3:b)=> ((x2 (f Xx)) (g x3)))) as proof of (((x2 (f Xx)) (g Xy))->((cS Xx) Xy))
% Found eq_ref000:=(eq_ref00 (cS Xx)):(((cS Xx) Xy)->((cS Xx) Xy))
% Found (eq_ref00 (cS Xx)) as proof of (((cS Xx) Xy)->((x2 (f Xx)) (g Xy)))
% Found ((eq_ref0 Xy) (cS Xx)) as proof of (((cS Xx) Xy)->((x2 (f Xx)) (g Xy)))
% Found (((eq_ref b) Xy) (cS Xx)) as proof of (((cS Xx) Xy)->((x2 (f Xx)) (g Xy)))
% Found (((eq_ref b) Xy) (cS Xx)) as proof of (((cS Xx) Xy)->((x2 (f Xx)) (g Xy)))
% Found ((conj00 (((eq_ref b) Xy) (cS Xx))) (((eq_ref b) Xy) (fun (x3:b)=> ((x2 (f Xx)) (g x3))))) as proof of ((iff ((cS Xx) Xy)) ((x2 (f Xx)) (g Xy)))
% Found (((conj0 (((x2 (f Xx)) (g Xy))->((cS Xx) Xy))) (((eq_ref b) Xy) (cS Xx))) (((eq_ref b) Xy) (fun (x3:b)=> ((x2 (f Xx)) (g x3))))) as proof of ((iff ((cS Xx) Xy)) ((x2 (f Xx)) (g Xy)))
% Found ((((conj (((cS Xx) Xy)->((x2 (f Xx)) (g Xy)))) (((x2 (f Xx)) (g Xy))->((cS Xx) Xy))) (((eq_ref b) Xy) (cS Xx))) (((eq_ref b) Xy) (fun (x3:b)=> ((x2 (f Xx)) (g x3))))) as proof of ((iff ((cS Xx) Xy)) ((x2 (f Xx)) (g Xy)))
% Found iff_refl0:=(iff_refl ((x0 (f Xx)) (g Xy))):((iff ((x0 (f Xx)) (g Xy))) ((x0 (f Xx)) (g Xy)))
% Found (iff_refl ((x0 (f Xx)) (g Xy))) as proof of ((iff ((x0 (f Xx)) (g Xy))) ((cS Xx) Xy))
% Found (iff_refl ((x0 (f Xx)) (g Xy))) as proof of ((iff ((x0 (f Xx)) (g Xy))) ((cS Xx) Xy))
% Found (iff_refl ((x0 (f Xx)) (g Xy))) as proof of ((iff ((x0 (f Xx)) (g Xy))) ((cS Xx) Xy))
% Found (iff_sym00 (iff_refl ((x0 (f Xx)) (g Xy)))) as proof of ((iff ((cS Xx) Xy)) ((x0 (f Xx)) (g Xy)))
% Found ((iff_sym0 ((cS Xx) Xy)) (iff_refl ((x0 (f Xx)) (g Xy)))) as proof of ((iff ((cS Xx) Xy)) ((x0 (f Xx)) (g Xy)))
% Found (((iff_sym ((x0 (f Xx)) (g Xy))) ((cS Xx) Xy)) (iff_refl ((x0 (f Xx)) (g Xy)))) as proof of ((iff ((cS Xx) Xy)) ((x0 (f Xx)) (g Xy)))
% Found iff_refl0:=(iff_refl ((x0 (f Xx)) (g Xy))):((iff ((x0 (f Xx)) (g Xy))) ((x0 (f Xx)) (g Xy)))
% Found (iff_refl ((x0 (f Xx)) (g Xy))) as proof of ((iff ((x0 (f Xx)) (g Xy))) ((cS Xx) Xy))
% Found (iff_refl ((x0 (f Xx)) (g Xy))) as proof of ((iff ((x0 (f Xx)) (g Xy))) ((cS Xx) Xy))
% Found (iff_refl ((x0 (f Xx)) (g Xy))) as proof of ((iff ((x0 (f Xx)) (g Xy))) ((cS Xx) Xy))
% Found (iff_sym00 (iff_refl ((x0 (f Xx)) (g Xy)))) as proof of ((iff ((cS Xx) Xy)) ((x0 (f Xx)) (g Xy)))
% Found ((iff_sym0 ((cS Xx) Xy)) (iff_refl ((x0 (f Xx)) (g Xy)))) as proof of ((iff ((cS Xx) Xy)) ((x0 (f Xx)) (g Xy)))
% Found (((iff_sym ((x0 (f Xx)) (g Xy))) ((cS Xx) Xy)) (iff_refl ((x0 (f Xx)) (g Xy)))) as proof of ((iff ((cS Xx) Xy)) ((x0 (f Xx)) (g Xy)))
% Found eq_ref000:=(eq_ref00 (fun (x1:b)=> ((x0 (f Xx)) (g x1)))):(((x0 (f Xx)) (g Xy))->((x0 (f Xx)) (g Xy)))
% Found (eq_ref00 (fun (x1:b)=> ((x0 (f Xx)) (g x1)))) as proof of (((x0 (f Xx)) (g Xy))->((cS Xx) Xy))
% Found ((eq_ref0 Xy) (fun (x1:b)=> ((x0 (f Xx)) (g x1)))) as proof of (((x0 (f Xx)) (g Xy))->((cS Xx) Xy))
% Found (((eq_ref b) Xy) (fun (x1:b)=> ((x0 (f Xx)) (g x1)))) as proof of (((x0 (f Xx)) (g Xy))->((cS Xx) Xy))
% Found (((eq_ref b) Xy) (fun (x1:b)=> ((x0 (f Xx)) (g x1)))) as proof of (((x0 (f Xx)) (g Xy))->((cS Xx) Xy))
% Found (((eq_ref b) Xy) (fun (x1:b)=> ((x0 (f Xx)) (g x1)))) as proof of (((x0 (f Xx)) (g Xy))->((cS Xx) Xy))
% Found eq_ref000:=(eq_ref00 (cS Xx)):(((cS Xx) Xy)->((cS Xx) Xy))
% Found (eq_ref00 (cS Xx)) as proof of (((cS Xx) Xy)->((x0 (f Xx)) (g Xy)))
% Found ((eq_ref0 Xy) (cS Xx)) as proof of (((cS Xx) Xy)->((x0 (f Xx)) (g Xy)))
% Found (((eq_ref b) Xy) (cS Xx)) as proof of (((cS Xx) Xy)->((x0 (f Xx)) (g Xy)))
% Found (((eq_ref b) Xy) (cS Xx)) as proof of (((cS Xx) Xy)->((x0 (f Xx)) (g Xy)))
% Found ((conj00 (((eq_ref b) Xy) (cS Xx))) (((eq_ref b) Xy) (fun (x1:b)=> ((x0 (f Xx)) (g x1))))) as proof of ((and (((cS Xx) Xy)->((x0 (f Xx)) (g Xy)))) (((x0 (f Xx)) (g Xy))->((cS Xx) Xy)))
% Found (((conj0 (((x0 (f Xx)) (g Xy))->((cS Xx) Xy))) (((eq_ref b) Xy) (cS Xx))) (((eq_ref b) Xy) (fun (x1:b)=> ((x0 (f Xx)) (g x1))))) as proof of ((and (((cS Xx) Xy)->((x0 (f Xx)) (g Xy)))) (((x0 (f Xx)) (g Xy))->((cS Xx) Xy)))
% Found ((((conj (((cS Xx) Xy)->((x0 (f Xx)) (g Xy)))) (((x0 (f Xx)) (g Xy))->((cS Xx) Xy))) (((eq_ref b) Xy) (cS Xx))) (((eq_ref b) Xy) (fun (x1:b)=> ((x0 (f Xx)) (g x1))))) as proof of ((and (((cS Xx) Xy)->((x0 (f Xx)) (g Xy)))) (((x0 (f Xx)) (g Xy))->((cS Xx) Xy)))
% Found ((((conj (((cS Xx) Xy)->((x0 (f Xx)) (g Xy)))) (((x0 (f Xx)) (g Xy))->((cS Xx) Xy))) (((eq_ref b) Xy) (cS Xx))) (((eq_ref b) Xy) (fun (x1:b)=> ((x0 (f Xx)) (g x1))))) as proof of ((and (((cS Xx) Xy)->((x0 (f Xx)) (g Xy)))) (((x0 (f Xx)) (g Xy))->((cS Xx) Xy)))
% Found eq_ref000:=(eq_ref00 (fun (x3:b)=> ((x2 (f Xx)) (g x3)))):(((x2 (f Xx)) (g Xy))->((x2 (f Xx)) (g Xy)))
% Found (eq_ref00 (fun (x3:b)=> ((x2 (f Xx)) (g x3)))) as proof of (((x2 (f Xx)) (g Xy))->((cS Xx) Xy))
% Found ((eq_ref0 Xy) (fun (x3:b)=> ((x2 (f Xx)) (g x3)))) as proof of (((x2 (f Xx)) (g Xy))->((cS Xx) Xy))
% Found (((eq_ref b) Xy) (fun (x3:b)=> ((x2 (f Xx)) (g x3)))) as proof of (((x2 (f Xx)) (g Xy))->((cS Xx) Xy))
% Found (((eq_ref b) Xy) (fun (x3:b)=> ((x2 (f Xx)) (g x3)))) as proof of (((x2 (f Xx)) (g Xy))->((cS Xx) Xy))
% Found (((eq_ref b) Xy) (fun (x3:b)=> ((x2 (f Xx)) (g x3)))) as proof of (((x2 (f Xx)) (g Xy))->((cS Xx) Xy))
% Found eq_ref000:=(eq_ref00 (cS Xx)):(((cS Xx) Xy)->((cS Xx) Xy))
% Found (eq_ref00 (cS Xx)) as proof of (((cS Xx) Xy)->((x2 (f Xx)) (g Xy)))
% Found ((eq_ref0 Xy) (cS Xx)) as proof of (((cS Xx) Xy)->((x2 (f Xx)) (g Xy)))
% Found (((eq_ref b) Xy) (cS Xx)) as proof of (((cS Xx) Xy)->((x2 (f Xx)) (g Xy)))
% Found (((eq_ref b) Xy) (cS Xx)) as proof of (((cS Xx) Xy)->((x2 (f Xx)) (g Xy)))
% Found ((conj00 (((eq_ref b) Xy) (cS Xx))) (((eq_ref b) Xy) (fun (x3:b)=> ((x2 (f Xx)) (g x3))))) as proof of ((iff ((cS Xx) Xy)) ((x2 (f Xx)) (g Xy)))
% Found (((conj0 (((x2 (f Xx)) (g Xy))->((cS Xx) Xy))) (((eq_ref b) Xy) (cS Xx))) (((eq_ref b) Xy) (fun (x3:b)=> ((x2 (f Xx)) (g x3))))) as proof of ((iff ((cS Xx) Xy)) ((x2 (f Xx)) (g Xy)))
% Found ((((conj (((cS Xx) Xy)->((x2 (f Xx)) (g Xy)))) (((x2 (f Xx)) (g Xy))->((cS Xx) Xy))) (((eq_ref b) Xy) (cS Xx))) (((eq_ref b) Xy) (fun (x3:b)=> ((x2 (f Xx)) (g x3))))) as proof of ((iff ((cS Xx) Xy)) ((x2 (f Xx)) (g Xy)))
% Found eq_ref000:=(eq_ref00 (fun (x3:b)=> ((x2 (f Xx)) (g x3)))):(((x2 (f Xx)) (g Xy))->((x2 (f Xx)) (g Xy)))
% Found (eq_ref00 (fun (x3:b)=> ((x2 (f Xx)) (g x3)))) as proof of (((x2 (f Xx)) (g Xy))->((cS Xx) Xy))
% Found ((eq_ref0 Xy) (fun (x3:b)=> ((x2 (f Xx)) (g x3)))) as proof of (((x2 (f Xx)) (g Xy))->((cS Xx) Xy))
% Found (((eq_ref b) Xy) (fun (x3:b)=> ((x2 (f Xx)) (g x3)))) as proof of (((x2 (f Xx)) (g Xy))->((cS Xx) Xy))
% Found (((eq_ref b) Xy) (fun (x3:b)=> ((x2 (f Xx)) (g x3)))) as proof of (((x2 (f Xx)) (g Xy))->((cS Xx) Xy))
% Found (((eq_ref b) Xy) (fun (x3:b)=> ((x2 (f Xx)) (g x3)))) as proof of (((x2 (f Xx)) (g Xy))->((cS Xx) Xy))
% Found eq_ref000:=(eq_ref00 (cS Xx)):(((cS Xx) Xy)->((cS Xx) Xy))
% Found (eq_ref00 (cS Xx)) as proof of (((cS Xx) Xy)->((x2 (f Xx)) (g Xy)))
% Found ((eq_ref0 Xy) (cS Xx)) as proof of (((cS Xx) Xy)->((x2 (f Xx)) (g Xy)))
% Found (((eq_ref b) Xy) (cS Xx)) as proof of (((cS Xx) Xy)->((x2 (f Xx)) (g Xy)))
% Found (((eq_ref b) Xy) (cS Xx)) as proof of (((cS Xx) Xy)->((x2 (f Xx)) (g Xy)))
% Found ((conj00 (((eq_ref b) Xy) (cS Xx))) (((eq_ref b) Xy) (fun (x3:b)=> ((x2 (f Xx)) (g x3))))) as proof of ((iff ((cS Xx) Xy)) ((x2 (f Xx)) (g Xy)))
% Found (((conj0 (((x2 (f Xx)) (g Xy))->((cS Xx) Xy))) (((eq_ref b) Xy) (cS Xx))) (((eq_ref b) Xy) (fun (x3:b)=> ((x2 (f Xx)) (g x3))))) as proof of ((iff ((cS Xx) Xy)) ((x2 (f Xx)) (g Xy)))
% Found ((((conj (((cS Xx) Xy)->((x2 (f Xx)) (g Xy)))) (((x2 (f Xx)) (g Xy))->((cS Xx) Xy))) (((eq_ref b) Xy) (cS Xx))) (((eq_ref b) Xy) (fun (x3:b)=> ((x2 (f Xx)) (g x3))))) as proof of ((iff ((cS Xx) Xy)) ((x2 (f Xx)) (g Xy)))
% Found iff_refl0:=(iff_refl ((x0 (f Xx)) (g Xy))):((iff ((x0 (f Xx)) (g Xy))) ((x0 (f Xx)) (g Xy)))
% Found (iff_refl ((x0 (f Xx)) (g Xy))) as proof of ((iff ((x0 (f Xx)) (g Xy))) ((cS Xx) Xy))
% Found (iff_refl ((x0 (f Xx)) (g Xy))) as proof of ((iff ((x0 (f Xx)) (g Xy))) ((cS Xx) Xy))
% Found (iff_refl ((x0 (f Xx)) (g Xy))) as proof of ((iff ((x0 (f Xx)) (g Xy))) ((cS Xx) Xy))
% Found (iff_sym00 (iff_refl ((x0 (f Xx)) (g Xy)))) as proof of ((iff ((cS Xx) Xy)) ((x0 (f Xx)) (g Xy)))
% Found ((iff_sym0 ((cS Xx) Xy)) (iff_refl ((x0 (f Xx)) (g Xy)))) as proof of ((iff ((cS Xx) Xy)) ((x0 (f Xx)) (g Xy)))
% Found (((iff_sym ((x0 (f Xx)) (g Xy))) ((cS Xx) Xy)) (iff_refl ((x0 (f Xx)) (g Xy)))) as proof of ((iff ((cS Xx) Xy)) ((x0 (f Xx)) (g Xy)))
% Found (fun (x2:(forall (Xx0:b) (Xy0:b), ((((eq b) (g Xx0)) (g Xy0))->(((eq b) Xx0) Xy0))))=> (((iff_sym ((x0 (f Xx)) (g Xy))) ((cS Xx) Xy)) (iff_refl ((x0 (f Xx)) (g Xy))))) as proof of ((iff ((cS Xx) Xy)) ((x0 (f Xx)) (g Xy)))
% Found (fun (x1:(forall (Xx0:a) (Xy0:a), ((((eq a) (f Xx0)) (f Xy0))->(((eq a) Xx0) Xy0)))) (x2:(forall (Xx0:b) (Xy0:b), ((((eq b) (g Xx0)) (g Xy0))->(((eq b) Xx0) Xy0))))=> (((iff_sym ((x0 (f Xx)) (g Xy))) ((cS Xx) Xy)) (iff_refl ((x0 (f Xx)) (g Xy))))) as proof of ((forall (Xx0:b) (Xy0:b), ((((eq b) (g Xx0)) (g Xy0))->(((eq b) Xx0) Xy0)))->((iff ((cS Xx) Xy)) ((x0 (f Xx)) (g Xy))))
% Found (fun (x1:(forall (Xx0:a) (Xy0:a), ((((eq a) (f Xx0)) (f Xy0))->(((eq a) Xx0) Xy0)))) (x2:(forall (Xx0:b) (Xy0:b), ((((eq b) (g Xx0)) (g Xy0))->(((eq b) Xx0) Xy0))))=> (((iff_sym ((x0 (f Xx)) (g Xy))) ((cS Xx) Xy)) (iff_refl ((x0 (f Xx)) (g Xy))))) as proof of ((forall (Xx0:a) (Xy0:a), ((((eq a) (f Xx0)) (f Xy0))->(((eq a) Xx0) Xy0)))->((forall (Xx0:b) (Xy0:b), ((((eq b) (g Xx0)) (g Xy0))->(((eq b) Xx0) Xy0)))->((iff ((cS Xx) Xy)) ((x0 (f Xx)) (g Xy)))))
% Found (and_rect00 (fun (x1:(forall (Xx0:a) (Xy0:a), ((((eq a) (f Xx0)) (f Xy0))->(((eq a) Xx0) Xy0)))) (x2:(forall (Xx0:b) (Xy0:b), ((((eq b) (g Xx0)) (g Xy0))->(((eq b) Xx0) Xy0))))=> (((iff_sym ((x0 (f Xx)) (g Xy))) ((cS Xx) Xy)) (iff_refl ((x0 (f Xx)) (g Xy)))))) as proof of ((iff ((cS Xx) Xy)) ((x0 (f Xx)) (g Xy)))
% Found ((and_rect0 ((iff ((cS Xx) Xy)) ((x0 (f Xx)) (g Xy)))) (fun (x1:(forall (Xx0:a) (Xy0:a), ((((eq a) (f Xx0)) (f Xy0))->(((eq a) Xx0) Xy0)))) (x2:(forall (Xx0:b) (Xy0:b), ((((eq b) (g Xx0)) (g Xy0))->(((eq b) Xx0) Xy0))))=> (((iff_sym ((x0 (f Xx)) (g Xy))) ((cS Xx) Xy)) (iff_refl ((x0 (f Xx)) (g Xy)))))) as proof of ((iff ((cS Xx) Xy)) ((x0 (f Xx)) (g Xy)))
% Found (((fun (P0:Type) (x1:((forall (Xx:a) (Xy:a), ((((eq a) (f Xx)) (f Xy))->(((eq a) Xx) Xy)))->((forall (Xx:b) (Xy:b), ((((eq b) (g Xx)) (g Xy))->(((eq b) Xx) Xy)))->P0)))=> (((((and_rect (forall (Xx:a) (Xy:a), ((((eq a) (f Xx)) (f Xy))->(((eq a) Xx) Xy)))) (forall (Xx:b) (Xy:b), ((((eq b) (g Xx)) (g Xy))->(((eq b) Xx) Xy)))) P0) x1) x)) ((iff ((cS Xx) Xy)) ((x0 (f Xx)) (g Xy)))) (fun (x1:(forall (Xx0:a) (Xy0:a), ((((eq a) (f Xx0)) (f Xy0))->(((eq a) Xx0) Xy0)))) (x2:(forall (Xx0:b) (Xy0:b), ((((eq b) (g Xx0)) (g Xy0))->(((eq b) Xx0) Xy0))))=> (((iff_sym ((x0 (f Xx)) (g Xy))) ((cS Xx) Xy)) (iff_refl ((x0 (f Xx)) (g Xy)))))) as proof of ((iff ((cS Xx) Xy)) ((x0 (f Xx)) (g Xy)))
% Found iff_refl0:=(iff_refl ((x0 (f Xx)) (g Xy))):((iff ((x0 (f Xx)) (g Xy))) ((x0 (f Xx)) (g Xy)))
% Found (iff_refl ((x0 (f Xx)) (g Xy))) as proof of ((iff ((x0 (f Xx)) (g Xy))) ((cS Xx) Xy))
% Found (iff_refl ((x0 (f Xx)) (g Xy))) as proof of ((iff ((x0 (f Xx)) (g Xy))) ((cS Xx) Xy))
% Found (iff_refl ((x0 (f Xx)) (g Xy))) as proof of ((iff ((x0 (f Xx)) (g Xy))) ((cS Xx) Xy))
% Found (iff_sym00 (iff_refl ((x0 (f Xx)) (g Xy)))) as proof of ((iff ((cS Xx) Xy)) ((x0 (f Xx)) (g Xy)))
% Found ((iff_sym0 ((cS Xx) Xy)) (iff_refl ((x0 (f Xx)) (g Xy)))) as proof of ((iff ((cS Xx) Xy)) ((x0 (f Xx)) (g Xy)))
% Found (((iff_sym ((x0 (f Xx)) (g Xy))) ((cS Xx) Xy)) (iff_refl ((x0 (f Xx)) (g Xy)))) as proof of ((iff ((cS Xx) Xy)) ((x0 (f Xx)) (g Xy)))
% Found (fun (x2:(forall (Xx0:b) (Xy0:b), ((((eq b) (g Xx0)) (g Xy0))->(((eq b) Xx0) Xy0))))=> (((iff_sym ((x0 (f Xx)) (g Xy))) ((cS Xx) Xy)) (iff_refl ((x0 (f Xx)) (g Xy))))) as proof of ((iff ((cS Xx) Xy)) ((x0 (f Xx)) (g Xy)))
% Found (fun (x1:(forall (Xx0:a) (Xy0:a), ((((eq a) (f Xx0)) (f Xy0))->(((eq a) Xx0) Xy0)))) (x2:(forall (Xx0:b) (Xy0:b), ((((eq b) (g Xx0)) (g Xy0))->(((eq b) Xx0) Xy0))))=> (((iff_sym ((x0 (f Xx)) (g Xy))) ((cS Xx) Xy)) (iff_refl ((x0 (f Xx)) (g Xy))))) as proof of ((forall (Xx0:b) (Xy0:b), ((((eq b) (g Xx0)) (g Xy0))->(((eq b) Xx0) Xy0)))->((iff ((cS Xx) Xy)) ((x0 (f Xx)) (g Xy))))
% Found (fun (x1:(forall (Xx0:a) (Xy0:a), ((((eq a) (f Xx0)) (f Xy0))->(((eq a) Xx0) Xy0)))) (x2:(forall (Xx0:b) (Xy0:b), ((((eq b) (g Xx0)) (g Xy0))->(((eq b) Xx0) Xy0))))=> (((iff_sym ((x0 (f Xx)) (g Xy))) ((cS Xx) Xy)) (iff_refl ((x0 (f Xx)) (g Xy))))) as proof of ((forall (Xx0:a) (Xy0:a), ((((eq a) (f Xx0)) (f Xy0))->(((eq a) Xx0) Xy0)))->((forall (Xx0:b) (Xy0:b), ((((eq b) (g Xx0)) (g Xy0))->(((eq b) Xx0) Xy0)))->((iff ((cS Xx) Xy)) ((x0 (f Xx)) (g Xy)))))
% Found (and_rect00 (fun (x1:(forall (Xx0:a) (Xy0:a), ((((eq a) (f Xx0)) (f Xy0))->(((eq a) Xx0) Xy0)))) (x2:(forall (Xx0:b) (Xy0:b), ((((eq b) (g Xx0)) (g Xy0))->(((eq b) Xx0) Xy0))))=> (((iff_sym ((x0 (f Xx)) (g Xy))) ((cS Xx) Xy)) (iff_refl ((x0 (f Xx)) (g Xy)))))) as proof of ((iff ((cS Xx) Xy)) ((x0 (f Xx)) (g Xy)))
% Found ((and_rect0 ((iff ((cS Xx) Xy)) ((x0 (f Xx)) (g Xy)))) (fun (x1:(forall (Xx0:a) (Xy0:a), ((((eq a) (f Xx0)) (f Xy0))->(((eq a) Xx0) Xy0)))) (x2:(forall (Xx0:b) (Xy0:b), ((((eq b) (g Xx0)) (g Xy0))->(((eq b) Xx0) Xy0))))=> (((iff_sym ((x0 (f Xx)) (g Xy))) ((cS Xx) Xy)) (iff_refl ((x0 (f Xx)) (g Xy)))))) as proof of ((iff ((cS Xx) Xy)) ((x0 (f Xx)) (g Xy)))
% Found (((fun (P0:Type) (x1:((forall (Xx:a) (Xy:a), ((((eq a) (f Xx)) (f Xy))->(((eq a) Xx) Xy)))->((forall (Xx:b) (Xy:b), ((((eq b) (g Xx)) (g Xy))->(((eq b) Xx) Xy)))->P0)))=> (((((and_rect (forall (Xx:a) (Xy:a), ((((eq a) (f Xx)) (f Xy))->(((eq a) Xx) Xy)))) (forall (Xx:b) (Xy:b), ((((eq b) (g Xx)) (g Xy))->(((eq b) Xx) Xy)))) P0) x1) x)) ((iff ((cS Xx) Xy)) ((x0 (f Xx)) (g Xy)))) (fun (x1:(forall (Xx0:a) (Xy0:a), ((((eq a) (f Xx0)) (f Xy0))->(((eq a) Xx0) Xy0)))) (x2:(forall (Xx0:b) (Xy0:b), ((((eq b) (g Xx0)) (g Xy0))->(((eq b) Xx0) Xy0))))=> (((iff_sym ((x0 (f Xx)) (g Xy))) ((cS Xx) Xy)) (iff_refl ((x0 (f Xx)) (g Xy)))))) as proof of ((iff ((cS Xx) Xy)) ((x0 (f Xx)) (g Xy)))
% Found eq_ref000:=(eq_ref00 (fun (x1:b)=> ((x0 (f Xx)) (g x1)))):(((x0 (f Xx)) (g Xy))->((x0 (f Xx)) (g Xy)))
% Found (eq_ref00 (fun (x1:b)=> ((x0 (f Xx)) (g x1)))) as proof of (((x0 (f Xx)) (g Xy))->((cS Xx) Xy))
% Found ((eq_ref0 Xy) (fun (x1:b)=> ((x0 (f Xx)) (g x1)))) as proof of (((x0 (f Xx)) (g Xy))->((cS Xx) Xy))
% Found (((eq_ref b) Xy) (fun (x1:b)=> ((x0 (f Xx)) (g x1)))) as proof of (((x0 (f Xx)) (g Xy))->((cS Xx) Xy))
% Found (((eq_ref b) Xy) (fun (x1:b)=> ((x0 (f Xx)) (g x1)))) as proof of (((x0 (f Xx)) (g Xy))->((cS Xx) Xy))
% Found (((eq_ref b) Xy) (fun (x1:b)=> ((x0 (f Xx)) (g x1)))) as proof of (((x0 (f Xx)) (g Xy))->((cS Xx) Xy))
% Found eq_ref000:=(eq_ref00 (cS Xx)):(((cS Xx) Xy)->((cS Xx) Xy))
% Found (eq_ref00 (cS Xx)) as proof of (((cS Xx) Xy)->((x0 (f Xx)) (g Xy)))
% Found ((eq_ref0 Xy) (cS Xx)) as proof of (((cS Xx) Xy)->((x0 (f Xx)) (g Xy)))
% Found (((eq_ref b) Xy) (cS Xx)) as proof of (((cS Xx) Xy)->((x0 (f Xx)) (g Xy)))
% Found (((eq_ref b) Xy) (cS Xx)) as proof of (((cS Xx) Xy)->((x0 (f Xx)) (g Xy)))
% Found ((conj00 (((eq_ref b) Xy) (cS Xx))) (((eq_ref b) Xy) (fun (x1:b)=> ((x0 (f Xx)) (g x1))))) as proof of ((and (((cS Xx) Xy)->((x0 (f Xx)) (g Xy)))) (((x0 (f Xx)) (g Xy))->((cS Xx) Xy)))
% Found (((conj0 (((x0 (f Xx)) (g Xy))->((cS Xx) Xy))) (((eq_ref b) Xy) (cS Xx))) (((eq_ref b) Xy) (fun (x1:b)=> ((x0 (f Xx)) (g x1))))) as proof of ((and (((cS Xx) Xy)->((x0 (f Xx)) (g Xy)))) (((x0 (f Xx)) (g Xy))->((cS Xx) Xy)))
% Found ((((conj (((cS Xx) Xy)->((x0 (f Xx)) (g Xy)))) (((x0 (f Xx)) (g Xy))->((cS Xx) Xy))) (((eq_ref b) Xy) (cS Xx))) (((eq_ref b) Xy) (fun (x1:b)=> ((x0 (f Xx)) (g x1))))) as proof of ((and (((cS Xx) Xy)->((x0 (f Xx)) (g Xy)))) (((x0 (f Xx)) (g Xy))->((cS Xx) Xy)))
% Found ((((conj (((cS Xx) Xy)->((x0 (f Xx)) (g Xy)))) (((x0 (f Xx)) (g Xy))->((cS Xx) Xy))) (((eq_ref b) Xy) (cS Xx))) (((eq_ref b) Xy) (fun (x1:b)=> ((x0 (f Xx)) (g x1))))) as proof of ((and (((cS Xx) Xy)->((x0 (f Xx)) (g Xy)))) (((x0 (f Xx)) (g Xy))->((cS Xx) Xy)))
% Found eq_ref000:=(eq_ref00 (fun (x1:b)=> ((x0 (f Xx)) (g x1)))):(((x0 (f Xx)) (g Xy))->((x0 (f Xx)) (g Xy)))
% Found (eq_ref00 (fun (x1:b)=> ((x0 (f Xx)) (g x1)))) as proof of (((x0 (f Xx)) (g Xy))->((cS Xx) Xy))
% Found ((eq_ref0 Xy) (fun (x1:b)=> ((x0 (f Xx)) (g x1)))) as proof of (((x0 (f Xx)) (g Xy))->((cS Xx) Xy))
% Found (((eq_ref b) Xy) (fun (x1:b)=> ((x0 (f Xx)) (g x1)))) as proof of (((x0 (f Xx)) (g Xy))->((cS Xx) Xy))
% Found (((eq_ref b) Xy) (fun (x1:b)=> ((x0 (f Xx)) (g x1)))) as proof of (((x0 (f Xx)) (g Xy))->((cS Xx) Xy))
% Found (((eq_ref b) Xy) (fun (x1:b)=> ((x0 (f Xx)) (g x1)))) as proof of (((x0 (f Xx)) (g Xy))->((cS Xx) Xy))
% Found eq_ref000:=(eq_ref00 (cS Xx)):(((cS Xx) Xy)->((cS Xx) Xy))
% Found (eq_ref00 (cS Xx)) as proof of (((cS Xx) Xy)->((x0 (f Xx)) (g Xy)))
% Found ((eq_ref0 Xy) (cS Xx)) as proof of (((cS Xx) Xy)->((x0 (f Xx)) (g Xy)))
% Found (((eq_ref b) Xy) (cS Xx)) as proof of (((cS Xx) Xy)->((x0 (f Xx)) (g Xy)))
% Found (((eq_ref b) Xy) (cS Xx)) as proof of (((cS Xx) Xy)->((x0 (f Xx)) (g Xy)))
% Found ((conj00 (((eq_ref b) Xy) (cS Xx))) (((eq_ref b) Xy) (fun (x1:b)=> ((x0 (f Xx)) (g x1))))) as proof of ((and (((cS Xx) Xy)->((x0 (f Xx)) (g Xy)))) (((x0 (f Xx)) (g Xy))->((cS Xx) Xy)))
% Found (((conj0 (((x0 (f Xx)) (g Xy))->((cS Xx) Xy))) (((eq_ref b) Xy) (cS Xx))) (((eq_ref b) Xy) (fun (x1:b)=> ((x0 (f Xx)) (g x1))))) as proof of ((and (((cS Xx) Xy)->((x0 (f Xx)) (g Xy)))) (((x0 (f Xx)) (g Xy))->((cS Xx) Xy)))
% Found ((((conj (((cS Xx) Xy)->((x0 (f Xx)) (g Xy)))) (((x0 (f Xx)) (g Xy))->((cS Xx) Xy))) (((eq_ref b) Xy) (cS Xx))) (((eq_ref b) Xy) (fun (x1:b)=> ((x0 (f Xx)) (g x1))))) as proof of ((and (((cS Xx) Xy)->((x0 (f Xx)) (g Xy)))) (((x0 (f Xx)) (g Xy))->((cS Xx) Xy)))
% Found ((((conj (((cS Xx) Xy)->((x0 (f Xx)) (g Xy)))) (((x0 (f Xx)) (g Xy))->((cS Xx) Xy))) (((eq_ref b) Xy) (cS Xx))) (((eq_ref b) Xy) (fun (x1:b)=> ((x0 (f Xx)) (g x1))))) as proof of ((and (((cS Xx) Xy)->((x0 (f Xx)) (g Xy)))) (((x0 (f Xx)) (g Xy))->((cS Xx) Xy)))
% Found eq_ref000:=(eq_ref00 (fun (x3:b)=> ((x2 (f Xx)) (g x3)))):(((x2 (f Xx)) (g Xy))->((x2 (f Xx)) (g Xy)))
% Found (eq_ref00 (fun (x3:b)=> ((x2 (f Xx)) (g x3)))) as proof of (((x2 (f Xx)) (g Xy))->((cS Xx) Xy))
% Found ((eq_ref0 Xy) (fun (x3:b)=> ((x2 (f Xx)) (g x3)))) as proof of (((x2 (f Xx)) (g Xy))->((cS Xx) Xy))
% Found (((eq_ref b) Xy) (fun (x3:b)=> ((x2 (f Xx)) (g x3)))) as proof of (((x2 (f Xx)) (g Xy))->((cS Xx) Xy))
% Found (((eq_ref b) Xy) (fun (x3:b)=> ((x2 (f Xx)) (g x3)))) as proof of (((x2 (f Xx)) (g Xy))->((cS Xx) Xy))
% Found (((eq_ref b) Xy) (fun (x3:b)=> ((x2 (f Xx)) (g x3)))) as proof of (((x2 (f Xx)) (g Xy))->((cS Xx) Xy))
% Found eq_ref000:=(eq_ref00 (cS Xx)):(((cS Xx) Xy)->((cS Xx) Xy))
% Found (eq_ref00 (cS Xx)) as proof of (((cS Xx) Xy)->((x2 (f Xx)) (g Xy)))
% Found ((eq_ref0 Xy) (cS Xx)) as proof of (((cS Xx) Xy)->((x2 (f Xx)) (g Xy)))
% Found (((eq_ref b) Xy) (cS Xx)) as proof of (((cS Xx) Xy)->((x2 (f Xx)) (g Xy)))
% Found (((eq_ref b) Xy) (cS Xx)) as proof of (((cS Xx) Xy)->((x2 (f Xx)) (g Xy)))
% Found ((conj00 (((eq_ref b) Xy) (cS Xx))) (((eq_ref b) Xy) (fun (x3:b)=> ((x2 (f Xx)) (g x3))))) as proof of ((iff ((cS Xx) Xy)) ((x2 (f Xx)) (g Xy)))
% Found (((conj0 (((x2 (f Xx)) (g Xy))->((cS Xx) Xy))) (((eq_ref b) Xy) (cS Xx))) (((eq_ref b) Xy) (fun (x3:b)=> ((x2 (f Xx)) (g x3))))) as proof of ((iff ((cS Xx) Xy)) ((x2 (f Xx)) (g Xy)))
% Found ((((conj (((cS Xx) Xy)->((x2 (f Xx)) (g Xy)))) (((x2 (f Xx)) (g Xy))->((cS Xx) Xy))) (((eq_ref b) Xy) (cS Xx))) (((eq_ref b) Xy) (fun (x3:b)=> ((x2 (f Xx)) (g x3))))) as proof of ((iff ((cS Xx) Xy)) ((x2 (f Xx)) (g Xy)))
% Found eq_ref000:=(eq_ref00 (fun (x3:b)=> ((x2 (f Xx)) (g x3)))):(((x2 (f Xx)) (g Xy))->((x2 (f Xx)) (g Xy)))
% Found (eq_ref00 (fun (x3:b)=> ((x2 (f Xx)) (g x3)))) as proof of (((x2 (f Xx)) (g Xy))->((cS Xx) Xy))
% Found ((eq_ref0 Xy) (fun (x3:b)=> ((x2 (f Xx)) (g x3)))) as proof of (((x2 (f Xx)) (g Xy))->((cS Xx) Xy))
% Found (((eq_ref b) Xy) (fun (x3:b)=> ((x2 (f Xx)) (g x3)))) as proof of (((x2 (f Xx)) (g Xy))->((cS Xx) Xy))
% Found (((eq_ref b) Xy) (fun (x3:b)=> ((x2 (f Xx)) (g x3)))) as proof of (((x2 (f Xx)) (g Xy))->((cS Xx) Xy))
% Found (((eq_ref b) Xy) (fun (x3:b)=> ((x2 (f Xx)) (g x3)))) as proof of (((x2 (f Xx)) (g Xy))->((cS Xx) Xy))
% Found eq_ref000:=(eq_ref00 (cS Xx)):(((cS Xx) Xy)->((cS Xx) Xy))
% Found (eq_ref00 (cS Xx)) as proof of (((cS Xx) Xy)->((x2 (f Xx)) (g Xy)))
% Found ((eq_ref0 Xy) (cS Xx)) as proof of (((cS Xx) Xy)->((x2 (f Xx)) (g Xy)))
% Found (((eq_ref b) Xy) (cS Xx)) as proof of (((cS Xx) Xy)->((x2 (f Xx)) (g Xy)))
% Found (((eq_ref b) Xy) (cS Xx)) as proof of (((cS Xx) Xy)->((x2 (f Xx)) (g Xy)))
% Found ((conj00 (((eq_ref b) Xy) (cS Xx))) (((eq_ref b) Xy) (fun (x3:b)=> ((x2 (f Xx)) (g x3))))) as proof of ((iff ((cS Xx) Xy)) ((x2 (f Xx)) (g Xy)))
% Found (((conj0 (((x2 (f Xx)) (g Xy))->((cS Xx) Xy))) (((eq_ref b) Xy) (cS Xx))) (((eq_ref b) Xy) (fun (x3:b)=> ((x2 (f Xx)) (g x3))))) as proof of ((iff ((cS Xx) Xy)) ((x2 (f Xx)) (g Xy)))
% Found ((((conj (((cS Xx) Xy)->((x2 (f Xx)) (g Xy)))) (((x2 (f Xx)) (g Xy))->((cS Xx) Xy))) (((eq_ref b) Xy) (cS Xx))) (((eq_ref b) Xy) (fun (x3:b)=> ((x2 (f Xx)) (g x3))))) as proof of ((iff ((cS Xx) Xy)) ((x2 (f Xx)) (g Xy)))
% Found eq_ref000:=(eq_ref00 (fun (x3:b)=> ((x0 (f Xx)) (g x3)))):(((x0 (f Xx)) (g Xy))->((x0 (f Xx)) (g Xy)))
% Found (eq_ref00 (fun (x3:b)=> ((x0 (f Xx)) (g x3)))) as proof of (((x0 (f Xx)) (g Xy))->((cS Xx) Xy))
% Found ((eq_ref0 Xy) (fun (x3:b)=> ((x0 (f Xx)) (g x3)))) as proof of (((x0 (f Xx)) (g Xy))->((cS Xx) Xy))
% Found (((eq_ref b) Xy) (fun (x3:b)=> ((x0 (f Xx)) (g x3)))) as proof of (((x0 (f Xx)) (g Xy))->((cS Xx) Xy))
% Found (((eq_ref b) Xy) (fun (x3:b)=> ((x0 (f Xx)) (g x3)))) as proof of (((x0 (f Xx)) (g Xy))->((cS Xx) Xy))
% Found (((eq_ref b) Xy) (fun (x3:b)=> ((x0 (f Xx)) (g x3)))) as proof of (((x0 (f Xx)) (g Xy))->((cS Xx) Xy))
% Found eq_ref000:=(eq_ref00 (cS Xx)):(((cS Xx) Xy)->((cS Xx) Xy))
% Found (eq_ref00 (cS Xx)) as proof of (((cS Xx) Xy)->((x0 (f Xx)) (g Xy)))
% Found ((eq_ref0 Xy) (cS Xx)) as proof of (((cS Xx) Xy)->((x0 (f Xx)) (g Xy)))
% Found (((eq_ref b) Xy) (cS Xx)) as proof of (((cS Xx) Xy)->((x0 (f Xx)) (g Xy)))
% Found (((eq_ref b) Xy) (cS Xx)) as proof of (((cS Xx) Xy)->((x0 (f Xx)) (g Xy)))
% Found ((conj00 (((eq_ref b) Xy) (cS Xx))) (((eq_ref b) Xy) (fun (x3:b)=> ((x0 (f Xx)) (g x3))))) as proof of ((iff ((cS Xx) Xy)) ((x0 (f Xx)) (g Xy)))
% Found (((conj0 (((x0 (f Xx)) (g Xy))->((cS Xx) Xy))) (((eq_ref b) Xy) (cS Xx))) (((eq_ref b) Xy) (fun (x3:b)=> ((x0 (f Xx)) (g x3))))) as proof of ((iff ((cS Xx) Xy)) ((x0 (f Xx)) (g Xy)))
% Found ((((conj (((cS Xx) Xy)->((x0 (f Xx)) (g Xy)))) (((x0 (f Xx)) (g Xy))->((cS Xx) Xy))) (((eq_ref b) Xy) (cS Xx))) (((eq_ref b) Xy) (fun (x3:b)=> ((x0 (f Xx)) (g x3))))) as proof of ((iff ((cS Xx) Xy)) ((x0 (f Xx)) (g Xy)))
% Found eta_expansion000:=(eta_expansion00 f0):(((eq ((a->(b->Prop))->Prop)) f0) (fun (x:(a->(b->Prop)))=> (f0 x)))
% Found (eta_expansion00 f0) as proof of (((eq ((a->(b->Prop))->Prop)) f0) b0)
% Found ((eta_expansion0 Prop) f0) as proof of (((eq ((a->(b->Prop))->Prop)) f0) b0)
% Found (((eta_expansion (a->(b->Prop))) Prop) f0) as proof of (((eq ((a->(b->Prop))->Prop)) f0) b0)
% Found (((eta_expansion (a->(b->Prop))) Prop) f0) as proof of (((eq ((a->(b->Prop))->Prop)) f0) b0)
% Found (((eta_expansion (a->(b->Prop))) Prop) f0) as proof of (((eq ((a->(b->Prop))->Prop)) f0) b0)
% Found eq_ref00:=(eq_ref0 f0):(((eq ((a->(b->Prop))->Prop)) f0) f0)
% Found (eq_ref0 f0) as proof of (((eq ((a->(b->Prop))->Prop)) f0) b0)
% Found ((eq_ref ((a->(b->Prop))->Prop)) f0) as proof of (((eq ((a->(b->Prop))->Prop)) f0) b0)
% Found ((eq_ref ((a->(b->Prop))->Prop)) f0) as proof of (((eq ((a->(b->Prop))->Prop)) f0) b0)
% Found ((eq_ref ((a->(b->Prop))->Prop)) f0) as proof of (((eq ((a->(b->Prop))->Prop)) f0) b0)
% Found eta_expansion_dep000:=(eta_expansion_dep00 f0):(((eq ((a->(b->Prop))->Prop)) f0) (fun (x:(a->(b->Prop)))=> (f0 x)))
% Found (eta_expansion_dep00 f0) as proof of (((eq ((a->(b->Prop))->Prop)) f0) b0)
% Found ((eta_expansion_dep0 (fun (x1:(a->(b->Prop)))=> Prop)) f0) as proof of (((eq ((a->(b->Prop))->Prop)) f0) b0)
% Found (((eta_expansion_dep (a->(b->Prop))) (fun (x1:(a->(b->Prop)))=> Prop)) f0) as proof of (((eq ((a->(b->Prop))->Prop)) f0) b0)
% Found (((eta_expansion_dep (a->(b->Prop))) (fun (x1:(a->(b->Prop)))=> Prop)) f0) as proof of (((eq ((a->(b->Prop))->Prop)) f0) b0)
% Found (((eta_expansion_dep (a->(b->Prop))) (fun (x1:(a->(b->Prop)))=> Prop)) f0) as proof of (((eq ((a->(b->Prop))->Prop)) f0) b0)
% Found eta_expansion000:=(eta_expansion00 f0):(((eq ((a->(b->Prop))->Prop)) f0) (fun (x:(a->(b->Prop)))=> (f0 x)))
% Found (eta_expansion00 f0) as proof of (((eq ((a->(b->Prop))->Prop)) f0) b0)
% Found ((eta_expansion0 Prop) f0) as proof of (((eq ((a->(b->Prop))->Prop)) f0) b0)
% Found (((eta_expansion (a->(b->Prop))) Prop) f0) as proof of (((eq ((a->(b->Prop))->Prop)) f0) b0)
% Found (((eta_expansion (a->(b->Prop))) Prop) f0) as proof of (((eq ((a->(b->Prop))->Prop)) f0) b0)
% Found (((eta_expansion (a->(b->Prop))) Prop) f0) as proof of (((eq ((a->(b->Prop))->Prop)) f0) b0)
% Found eq_ref000:=(eq_ref00 (fun (x3:b)=> ((x0 (f Xx)) (g x3)))):(((x0 (f Xx)) (g Xy))->((x0 (f Xx)) (g Xy)))
% Found (eq_ref00 (fun (x3:b)=> ((x0 (f Xx)) (g x3)))) as proof of (((x0 (f Xx)) (g Xy))->((cS Xx) Xy))
% Found ((eq_ref0 Xy) (fun (x3:b)=> ((x0 (f Xx)) (g x3)))) as proof of (((x0 (f Xx)) (g Xy))->((cS Xx) Xy))
% Found (((eq_ref b) Xy) (fun (x3:b)=> ((x0 (f Xx)) (g x3)))) as proof of (((x0 (f Xx)) (g Xy))->((cS Xx) Xy))
% Found (((eq_ref b) Xy) (fun (x3:b)=> ((x0 (f Xx)) (g x3)))) as proof of (((x0 (f Xx)) (g Xy))->((cS Xx) Xy))
% Found (((eq_ref b) Xy) (fun (x3:b)=> ((x0 (f Xx)) (g x3)))) as proof of (((x0 (f Xx)) (g Xy))->((cS Xx) Xy))
% Found eq_ref000:=(eq_ref00 (cS Xx)):(((cS Xx) Xy)->((cS Xx) Xy))
% Found (eq_ref00 (cS Xx)) as proof of (((cS Xx) Xy)->((x0 (f Xx)) (g Xy)))
% Found ((eq_ref0 Xy) (cS Xx)) as proof of (((cS Xx) Xy)->((x0 (f Xx)) (g Xy)))
% Found (((eq_ref b) Xy) (cS Xx)) as proof of (((cS Xx) Xy)->((x0 (f Xx)) (g Xy)))
% Found (((eq_ref b) Xy) (cS Xx)) as proof of (((cS Xx) Xy)->((x0 (f Xx)) (g Xy)))
% Found ((conj00 (((eq_ref b) Xy) (cS Xx))) (((eq_ref b) Xy) (fun (x3:b)=> ((x0 (f Xx)) (g x3))))) as proof of ((iff ((cS Xx) Xy)) ((x0 (f Xx)) (g Xy)))
% Found (((conj0 (((x0 (f Xx)) (g Xy))->((cS Xx) Xy))) (((eq_ref b) Xy) (cS Xx))) (((eq_ref b) Xy) (fun (x3:b)=> ((x0 (f Xx)) (g x3))))) as proof of ((iff ((cS Xx) Xy)) ((x0 (f Xx)) (g Xy)))
% Found ((((conj (((cS Xx) Xy)->((x0 (f Xx)) (g Xy)))) (((x0 (f Xx)) (g Xy))->((cS Xx) Xy))) (((eq_ref b) Xy) (cS Xx))) (((eq_ref b) Xy) (fun (x3:b)=> ((x0 (f Xx)) (g x3))))) as proof of ((iff ((cS Xx) Xy)) ((x0 (f Xx)) (g Xy)))
% Found eq_ref000:=(eq_ref00 (fun (x3:b)=> ((x0 (f Xx)) (g x3)))):(((x0 (f Xx)) (g Xy))->((x0 (f Xx)) (g Xy)))
% Found (eq_ref00 (fun (x3:b)=> ((x0 (f Xx)) (g x3)))) as proof of (((x0 (f Xx)) (g Xy))->((cS Xx) Xy))
% Found ((eq_ref0 Xy) (fun (x3:b)=> ((x0 (f Xx)) (g x3)))) as proof of (((x0 (f Xx)) (g Xy))->((cS Xx) Xy))
% Found (((eq_ref b) Xy) (fun (x3:b)=> ((x0 (f Xx)) (g x3)))) as proof of (((x0 (f Xx)) (g Xy))->((cS Xx) Xy))
% Found (((eq_ref b) Xy) (fun (x3:b)=> ((x0 (f Xx)) (g x3)))) as proof of (((x0 (f Xx)) (g Xy))->((cS Xx) Xy))
% Found (((eq_ref b) Xy) (fun (x3:b)=> ((x0 (f Xx)) (g x3)))) as proof of (((x0 (f Xx)) (g Xy))->((cS Xx) Xy))
% Found eq_ref000:=(eq_ref00 (cS Xx)):(((cS Xx) Xy)->((cS Xx) Xy))
% Found (eq_ref00 (cS Xx)) as proof of (((cS Xx) Xy)->((x0 (f Xx)) (g Xy)))
% Found ((eq_ref0 Xy) (cS Xx)) as proof of (((cS Xx) Xy)->((x0 (f Xx)) (g Xy)))
% Found (((eq_ref b) Xy) (cS Xx)) as proof of (((cS Xx) Xy)->((x0 (f Xx)) (g Xy)))
% Found (((eq_ref b) Xy) (cS Xx)) as proof of (((cS Xx) Xy)->((x0 (f Xx)) (g Xy)))
% Found ((conj00 (((eq_ref b) Xy) (cS Xx))) (((eq_ref b) Xy) (fun (x3:b)=> ((x0 (f Xx)) (g x3))))) as proof of ((iff ((cS Xx) Xy)) ((x0 (f Xx)) (g Xy)))
% Found (((conj0 (((x0 (f Xx)) (g Xy))->((cS Xx) Xy))) (((eq_ref b) Xy) (cS Xx))) (((eq_ref b) Xy) (fun (x3:b)=> ((x0 (f Xx)) (g x3))))) as proof of ((iff ((cS Xx) Xy)) ((x0 (f Xx)) (g Xy)))
% Found ((((conj (((cS Xx) Xy)->((x0 (f Xx)) (g Xy)))) (((x0 (f Xx)) (g Xy))->((cS Xx) Xy))) (((eq_ref b) Xy) (cS Xx))) (((eq_ref b) Xy) (fun (x3:b)=> ((x0 (f Xx)) (g x3))))) as proof of ((iff ((cS Xx) Xy)) ((x0 (f Xx)) (g Xy)))
% Found eta_expansion000:=(eta_expansion00 b0):(((eq ((a->(b->Prop))->Prop)) b0) (fun (x:(a->(b->Prop)))=> (b0 x)))
% Found (eta_expansion00 b0) as proof of (((eq ((a->(b->Prop))->Prop)) b0) b00)
% Found ((eta_expansion0 Prop) b0) as proof of (((eq ((a->(b->Prop))->Prop)) b0) b00)
% Found (((eta_expansion (a->(b->Prop))) Prop) b0) as proof of (((eq ((a->(b->Prop))->Prop)) b0) b00)
% Found (((eta_expansion (a->(b->Prop))) Prop) b0) as proof of (((eq ((a->(b->Prop))->Prop)) b0) b00)
% Found (((eta_expansion (a->(b->Prop))) Prop) b0) as proof of (((eq ((a->(b->Prop))->Prop)) b0) b00)
% 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)) (b0 x0))
% Found ((eq_ref Prop) (f0 x0)) as proof of (((eq Prop) (f0 x0)) (b0 x0))
% Found ((eq_ref Prop) (f0 x0)) as proof of (((eq Prop) (f0 x0)) (b0 x0))
% Found (fun (x0:(a->(b->Prop)))=> ((eq_ref Prop) (f0 x0))) as proof of (((eq Prop) (f0 x0)) (b0 x0))
% Found (fun (x0:(a->(b->Prop)))=> ((eq_ref Prop) (f0 x0))) as proof of (forall (x:(a->(b->Prop))), (((eq Prop) (f0 x)) (b0 x)))
% 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)) (b0 x0))
% Found ((eq_ref Prop) (f0 x0)) as proof of (((eq Prop) (f0 x0)) (b0 x0))
% Found ((eq_ref Prop) (f0 x0)) as proof of (((eq Prop) (f0 x0)) (b0 x0))
% Found (fun (x0:(a->(b->Prop)))=> ((eq_ref Prop) (f0 x0))) as proof of (((eq Prop) (f0 x0)) (b0 x0))
% Found (fun (x0:(a->(b->Prop)))=> ((eq_ref Prop) (f0 x0))) as proof of (forall (x:(a->(b->Prop))), (((eq Prop) (f0 x)) (b0 x)))
% 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)) (b0 x0))
% Found ((eq_ref Prop) (f0 x0)) as proof of (((eq Prop) (f0 x0)) (b0 x0))
% Found ((eq_ref Prop) (f0 x0)) as proof of (((eq Prop) (f0 x0)) (b0 x0))
% Found (fun (x0:(a->(b->Prop)))=> ((eq_ref Prop) (f0 x0))) as proof of (((eq Prop) (f0 x0)) (b0 x0))
% Found (fun (x0:(a->(b->Prop)))=> ((eq_ref Prop) (f0 x0))) as proof of (forall (x:(a->(b->Prop))), (((eq Prop) (f0 x)) (b0 x)))
% 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)) (b0 x0))
% Found ((eq_ref Prop) (f0 x0)) as proof of (((eq Prop) (f0 x0)) (b0 x0))
% Found ((eq_ref Prop) (f0 x0)) as proof of (((eq Prop) (f0 x0)) (b0 x0))
% Found (fun (x0:(a->(b->Prop)))=> ((eq_ref Prop) (f0 x0))) as proof of (((eq Prop) (f0 x0)) (b0 x0))
% Found (fun (x0:(a->(b->Prop)))=> ((eq_ref Prop) (f0 x0))) as proof of (forall (x:(a->(b->Prop))), (((eq Prop) (f0 x)) (b0 x)))
% Found eq_ref00:=(eq_ref0 (f1 x0)):(((eq Prop) (f1 x0)) (f1 x0))
% Found (eq_ref0 (f1 x0)) as proof of (((eq Prop) (f1 x0)) (f0 x0))
% Found ((eq_ref Prop) (f1 x0)) as proof of (((eq Prop) (f1 x0)) (f0 x0))
% Found ((eq_ref Prop) (f1 x0)) as proof of (((eq Prop) (f1 x0)) (f0 x0))
% Found (fun (x0:(a->(b->Prop)))=> ((eq_ref Prop) (f1 x0))) as proof of (((eq Prop) (f1 x0)) (f0 x0))
% Found (fun (x0:(a->(b->Prop)))=> ((eq_ref Prop) (f1 x0))) as proof of (forall (x:(a->(b->Prop))), (((eq Prop) (f1 x)) (f0 x)))
% Found eq_ref00:=(eq_ref0 (f1 x0)):(((eq Prop) (f1 x0)) (f1 x0))
% Found (eq_ref0 (f1 x0)) as proof of (((eq Prop) (f1 x0)) (f0 x0))
% Found ((eq_ref Prop) (f1 x0)) as proof of (((eq Prop) (f1 x0)) (f0 x0))
% Found ((eq_ref Prop) (f1 x0)) as proof of (((eq Prop) (f1 x0)) (f0 x0))
% Found (fun (x0:(a->(b->Prop)))=> ((eq_ref Prop) (f1 x0))) as proof of (((eq Prop) (f1 x0)) (f0 x0))
% Found (fun (x0:(a->(b->Prop)))=> ((eq_ref Prop) (f1 x0))) as proof of (forall (x:(a->(b->Prop))), (((eq Prop) (f1 x)) (f0 x)))
% Found eq_ref000:=(eq_ref00 (fun (x3:b)=> ((x2 (f Xx)) (g x3)))):(((x2 (f Xx)) (g Xy))->((x2 (f Xx)) (g Xy)))
% Found (eq_ref00 (fun (x3:b)=> ((x2 (f Xx)) (g x3)))) as proof of (((x2 (f Xx)) (g Xy))->((cS Xx) Xy))
% Found ((eq_ref0 Xy) (fun (x3:b)=> ((x2 (f Xx)) (g x3)))) as proof of (((x2 (f Xx)) (g Xy))->((cS Xx) Xy))
% Found (((eq_ref b) Xy) (fun (x3:b)=> ((x2 (f Xx)) (g x3)))) as proof of (((x2 (f Xx)) (g Xy))->((cS Xx) Xy))
% Found (((eq_ref b) Xy) (fun (x3:b)=> ((x2 (f Xx)) (g x3)))) as proof of (((x2 (f Xx)) (g Xy))->((cS Xx) Xy))
% Found (((eq_ref b) Xy) (fun (x3:b)=> ((x2 (f Xx)) (g x3)))) as proof of (((x2 (f Xx)) (g Xy))->((cS Xx) Xy))
% Found eq_ref000:=(eq_ref00 (cS Xx)):(((cS Xx) Xy)->((cS Xx) Xy))
% Found (eq_ref00 (cS Xx)) as proof of (((cS Xx) Xy)->((x2 (f Xx)) (g Xy)))
% Found ((eq_ref0 Xy) (cS Xx)) as proof of (((cS Xx) Xy)->((x2 (f Xx)) (g Xy)))
% Found (((eq_ref b) Xy) (cS Xx)) as proof of (((cS Xx) Xy)->((x2 (f Xx)) (g Xy)))
% Found (((eq_ref b) Xy) (cS Xx)) as proof of (((cS Xx) Xy)->((x2 (f Xx)) (g Xy)))
% Found ((conj00 (((eq_ref b) Xy) (cS Xx))) (((eq_ref b) Xy) (fun (x3:b)=> ((x2 (f Xx)) (g x3))))) as proof of ((and (((cS Xx) Xy)->((x2 (f Xx)) (g Xy)))) (((x2 (f Xx)) (g Xy))->((cS Xx) Xy)))
% Found (((conj0 (((x2 (f Xx)) (g Xy))->((cS Xx) Xy))) (((eq_ref b) Xy) (cS Xx))) (((eq_ref b) Xy) (fun (x3:b)=> ((x2 (f Xx)) (g x3))))) as proof of ((and (((cS Xx) Xy)->((x2 (f Xx)) (g Xy)))) (((x2 (f Xx)) (g Xy))->((cS Xx) Xy)))
% Found ((((conj (((cS Xx) Xy)->((x2 (f Xx)) (g Xy)))) (((x2 (f Xx)) (g Xy))->((cS Xx) Xy))) (((eq_ref b) Xy) (cS Xx))) (((eq_ref b) Xy) (fun (x3:b)=> ((x2 (f Xx)) (g x3))))) as proof of ((and (((cS Xx) Xy)->((x2 (f Xx)) (g Xy)))) (((x2 (f Xx)) (g Xy))->((cS Xx) Xy)))
% Found ((((conj (((cS Xx) Xy)->((x2 (f Xx)) (g Xy)))) (((x2 (f Xx)) (g Xy))->((cS Xx) Xy))) (((eq_ref b) Xy) (cS Xx))) (((eq_ref b) Xy) (fun (x3:b)=> ((x2 (f Xx)) (g x3))))) as proof of ((and (((cS Xx) Xy)->((x2 (f Xx)) (g Xy)))) (((x2 (f Xx)) (g Xy))->((cS Xx) Xy)))
% Found eq_ref00:=(eq_ref0 (f1 x0)):(((eq Prop) (f1 x0)) (f1 x0))
% Found (eq_ref0 (f1 x0)) as proof of (((eq Prop) (f1 x0)) (f0 x0))
% Found ((eq_ref Prop) (f1 x0)) as proof of (((eq Prop) (f1 x0)) (f0 x0))
% Found ((eq_ref Prop) (f1 x0)) as proof of (((eq Prop) (f1 x0)) (f0 x0))
% Found (fun (x0:(a->(b->Prop)))=> ((eq_ref Prop) (f1 x0))) as proof of (((eq Prop) (f1 x0)) (f0 x0))
% Found (fun (x0:(a->(b->Prop)))=> ((eq_ref Prop) (f1 x0))) as proof of (forall (x:(a->(b->Prop))), (((eq Prop) (f1 x)) (f0 x)))
% Found eq_ref00:=(eq_ref0 (f1 x0)):(((eq Prop) (f1 x0)) (f1 x0))
% Found (eq_ref0 (f1 x0)) as proof of (((eq Prop) (f1 x0)) (f0 x0))
% Found ((eq_ref Prop) (f1 x0)) as proof of (((eq Prop) (f1 x0)) (f0 x0))
% Found ((eq_ref Prop) (f1 x0)) as proof of (((eq Prop) (f1 x0)) (f0 x0))
% Found (fun (x0:(a->(b->Prop)))=> ((eq_ref Prop) (f1 x0))) as proof of (((eq Prop) (f1 x0)) (f0 x0))
% Found (fun (x0:(a->(b->Prop)))=> ((eq_ref Prop) (f1 x0))) as proof of (forall (x:(a->(b->Prop))), (((eq Prop) (f1 x)) (f0 x)))
% Found eta_expansion000:=(eta_expansion00 f0):(((eq ((a->(b->Prop))->Prop)) f0) (fun (x:(a->(b->Prop)))=> (f0 x)))
% Found (eta_expansion00 f0) as proof of (((eq ((a->(b->Prop))->Prop)) f0) b0)
% Found ((eta_expansion0 Prop) f0) as proof of (((eq ((a->(b->Prop))->Prop)) f0) b0)
% Found (((eta_expansion (a->(b->Prop))) Prop) f0) as proof of (((eq ((a->(b->Prop))->Prop)) f0) b0)
% Found (((eta_expansion (a->(b->Prop))) Prop) f0) as proof of (((eq ((a->(b->Prop))->Prop)) f0) b0)
% Found (((eta_expansion (a->(b->Prop))) Prop) f0) as proof of (((eq ((a->(b->Prop))->Prop)) f0) b0)
% Found eta_expansion_dep000:=(eta_expansion_dep00 f0):(((eq ((a->(b->Prop))->Prop)) f0) (fun (x:(a->(b->Prop)))=> (f0 x)))
% Found (eta_expansion_dep00 f0) as proof of (((eq ((a->(b->Prop))->Prop)) f0) b0)
% Found ((eta_expansion_dep0 (fun (x3:(a->(b->Prop)))=> Prop)) f0) as proof of (((eq ((a->(b->Prop))->Prop)) f0) b0)
% Found (((eta_expansion_dep (a->(b->Prop))) (fun (x3:(a->(b->Prop)))=> Prop)) f0) as proof of (((eq ((a->(b->Prop))->Prop)) f0) b0)
% Found (((eta_expansion_dep (a->(b->Prop))) (fun (x3:(a->(b->Prop)))=> Prop)) f0) as proof of (((eq ((a->(b->Prop))->Prop)) f0) b0)
% Found (((eta_expansion_dep (a->(b->Prop))) (fun (x3:(a->(b->Prop)))=> Prop)) f0) as proof of (((eq ((a->(b->Prop))->Prop)) f0) b0)
% Found eq_ref000:=(eq_ref00 (fun (x3:b)=> ((x2 (f Xx)) (g x3)))):(((x2 (f Xx)) (g Xy))->((x2 (f Xx)) (g Xy)))
% Found (eq_ref00 (fun (x3:b)=> ((x2 (f Xx)) (g x3)))) as proof of (((x2 (f Xx)) (g Xy))->((cS Xx) Xy))
% Found ((eq_ref0 Xy) (fun (x3:b)=> ((x2 (f Xx)) (g x3)))) as proof of (((x2 (f Xx)) (g Xy))->((cS Xx) Xy))
% Found (((eq_ref b) Xy) (fun (x3:b)=> ((x2 (f Xx)) (g x3)))) as proof of (((x2 (f Xx)) (g Xy))->((cS Xx) Xy))
% Found (((eq_ref b) Xy) (fun (x3:b)=> ((x2 (f Xx)) (g x3)))) as proof of (((x2 (f Xx)) (g Xy))->((cS Xx) Xy))
% Found (((eq_ref b) Xy) (fun (x3:b)=> ((x2 (f Xx)) (g x3)))) as proof of (((x2 (f Xx)) (g Xy))->((cS Xx) Xy))
% Found eq_ref000:=(eq_ref00 (cS Xx)):(((cS Xx) Xy)->((cS Xx) Xy))
% Found (eq_ref00 (cS Xx)) as proof of (((cS Xx) Xy)->((x2 (f Xx)) (g Xy)))
% Found ((eq_ref0 Xy) (cS Xx)) as proof of (((cS Xx) Xy)->((x2 (f Xx)) (g Xy)))
% Found (((eq_ref b) Xy) (cS Xx)) as proof of (((cS Xx) Xy)->((x2 (f Xx)) (g Xy)))
% Found (((eq_ref b) Xy) (cS Xx)) as proof of (((cS Xx) Xy)->((x2 (f Xx)) (g Xy)))
% Found ((conj00 (((eq_ref b) Xy) (cS Xx))) (((eq_ref b) Xy) (fun (x3:b)=> ((x2 (f Xx)) (g x3))))) as proof of ((and (((cS Xx) Xy)->((x2 (f Xx)) (g Xy)))) (((x2 (f Xx)) (g Xy))->((cS Xx) Xy)))
% Found (((conj0 (((x2 (f Xx)) (g Xy))->((cS Xx) Xy))) (((eq_ref b) Xy) (cS Xx))) (((eq_ref b) Xy) (fun (x3:b)=> ((x2 (f Xx)) (g x3))))) as proof of ((and (((cS Xx) Xy)->((x2 (f Xx)) (g Xy)))) (((x2 (f Xx)) (g Xy))->((cS Xx) Xy)))
% Found ((((conj (((cS Xx) Xy)->((x2 (f Xx)) (g Xy)))) (((x2 (f Xx)) (g Xy))->((cS Xx) Xy))) (((eq_ref b) Xy) (cS Xx))) (((eq_ref b) Xy) (fun (x3:b)=> ((x2 (f Xx)) (g x3))))) as proof of ((and (((cS Xx) Xy)->((x2 (f Xx)) (g Xy)))) (((x2 (f Xx)) (g Xy))->((cS Xx) Xy)))
% Found ((((conj (((cS Xx) Xy)->((x2 (f Xx)) (g Xy)))) (((x2 (f Xx)) (g Xy))->((cS Xx) Xy))) (((eq_ref b) Xy) (cS Xx))) (((eq_ref b) Xy) (fun (x3:b)=> ((x2 (f Xx)) (g x3))))) as proof of ((and (((cS Xx) Xy)->((x2 (f Xx)) (g Xy)))) (((x2 (f Xx)) (g Xy))->((cS Xx) Xy)))
% Found eq_ref000:=(eq_ref00 (fun (x3:b)=> ((x2 (f Xx)) (g x3)))):(((x2 (f Xx)) (g Xy))->((x2 (f Xx)) (g Xy)))
% Found (eq_ref00 (fun (x3:b)=> ((x2 (f Xx)) (g x3)))) as proof of (((x2 (f Xx)) (g Xy))->((cS Xx) Xy))
% Found ((eq_ref0 Xy) (fun (x3:b)=> ((x2 (f Xx)) (g x3)))) as proof of (((x2 (f Xx)) (g Xy))->((cS Xx) Xy))
% Found (((eq_ref b) Xy) (fun (x3:b)=> ((x2 (f Xx)) (g x3)))) as proof of (((x2 (f Xx)) (g Xy))->((cS Xx) Xy))
% Found (((eq_ref b) Xy) (fun (x3:b)=> ((x2 (f Xx)) (g x3)))) as proof of (((x2 (f Xx)) (g Xy))->((cS Xx) Xy))
% Found (((eq_ref b) Xy) (fun (x3:b)=> ((x2 (f Xx)) (g x3)))) as proof of (((x2 (f Xx)) (g Xy))->((cS Xx) Xy))
% Found eq_ref000:=(eq_ref00 (cS Xx)):(((cS Xx) Xy)->((cS Xx) Xy))
% Found (eq_ref00 (cS Xx)) as proof of (((cS Xx) Xy)->((x2 (f Xx)) (g Xy)))
% Found ((eq_ref0 Xy) (cS Xx)) as proof of (((cS Xx) Xy)->((x2 (f Xx)) (g Xy)))
% Found (((eq_ref b) Xy) (cS Xx)) as proof of (((cS Xx) Xy)->((x2 (f Xx)) (g Xy)))
% Found (((eq_ref b) Xy) (cS Xx)) as proof of (((cS Xx) Xy)->((x2 (f Xx)) (g Xy)))
% Found ((conj00 (((eq_ref b) Xy) (cS Xx))) (((eq_ref b) Xy) (fun (x3:b)=> ((x2 (f Xx)) (g x3))))) as proof of ((and (((cS Xx) Xy)->((x2 (f Xx)) (g Xy)))) (((x2 (f Xx)) (g Xy))->((cS Xx) Xy)))
% Found (((conj0 (((x2 (f Xx)) (g Xy))->((cS Xx) Xy))) (((eq_ref b) Xy) (cS Xx))) (((eq_ref b) Xy) (fun (x3:b)=> ((x2 (f Xx)) (g x3))))) as proof of ((and (((cS Xx) Xy)->((x2 (f Xx)) (g Xy)))) (((x2 (f Xx)) (g Xy))->((cS Xx) Xy)))
% Found ((((conj (((cS Xx) Xy)->((x2 (f Xx)) (g Xy)))) (((x2 (f Xx)) (g Xy))->((cS Xx) Xy))) (((eq_ref b) Xy) (cS Xx))) (((eq_ref b) Xy) (fun (x3:b)=> ((x2 (f Xx)) (g x3))))) as proof of ((and (((cS Xx) Xy)->((x2 (f Xx)) (g Xy)))) (((x2 (f Xx)) (g Xy))->((cS Xx) Xy)))
% Found ((((conj (((cS Xx) Xy)->((x2 (f Xx)) (g Xy)))) (((x2 (f Xx)) (g Xy))->((cS Xx) Xy))) (((eq_ref b) Xy) (cS Xx))) (((eq_ref b) Xy) (fun (x3:b)=> ((x2 (f Xx)) (g x3))))) as proof of ((and (((cS Xx) Xy)->((x2 (f Xx)) (g Xy)))) (((x2 (f Xx)) (g Xy))->((cS Xx) Xy)))
% Found eta_expansion_dep000:=(eta_expansion_dep00 b0):(((eq ((a->(b->Prop))->Prop)) b0) (fun (x:(a->(b->Prop)))=> (b0 x)))
% Found (eta_expansion_dep00 b0) as proof of (((eq ((a->(b->Prop))->Prop)) b0) b00)
% Found ((eta_expansion_dep0 (fun (x3:(a->(b->Prop)))=> Prop)) b0) as proof of (((eq ((a->(b->Prop))->Prop)) b0) b00)
% Found (((eta_expansion_dep (a->(b->Prop))) (fun (x3:(a->(b->Prop)))=> Prop)) b0) as proof of (((eq ((a->(b->Prop))->Prop)) b0) b00)
% Found (((eta_expansion_dep (a->(b->Prop))) (fun (x3:(a->(b->Prop)))=> Prop)) b0) as proof of (((eq ((a->(b->Prop))->Prop)) b0) b00)
% Found (((eta_expansion_dep (a->(b->Prop))) (fun (x3:(a->(b->Prop)))=> Prop)) b0) as proof of (((eq ((a->(b->Prop))->Prop)) b0) b00)
% Found eta_expansion_dep000:=(eta_expansion_dep00 f0):(((eq ((a->(b->Prop))->Prop)) f0) (fun (x:(a->(b->Prop)))=> (f0 x)))
% Found (eta_expansion_dep00 f0) as proof of (((eq ((a->(b->Prop))->Prop)) f0) b0)
% Found ((eta_expansion_dep0 (fun (x3:(a->(b->Prop)))=> Prop)) f0) as proof of (((eq ((a->(b->Prop))->Prop)) f0) b0)
% Found (((eta_expansion_dep (a->(b->Prop))) (fun (x3:(a->(b->Prop)))=> Prop)) f0) as proof of (((eq ((a->(b->Prop))->Prop)) f0) b0)
% Found (((eta_expansion_dep (a->(b->Prop))) (fun (x3:(a->(b->Prop)))=> Prop)) f0) as proof of (((eq ((a->(b->Prop))->Prop)) f0) b0)
% Found (((eta_expansion_dep (a->(b->Prop))) (fun (x3:(a->(b->Prop)))=> Prop)) f0) as proof of (((eq ((a->(b->Prop))->Prop)) f0) b0)
% Found eq_ref00:=(eq_ref0 f0):(((eq ((a->(b->Prop))->Prop)) f0) f0)
% Found (eq_ref0 f0) as proof of (((eq ((a->(b->Prop))->Prop)) f0) b0)
% Found ((eq_ref ((a->(b->Prop))->Prop)) f0) as proof of (((eq ((a->(b->Prop))->Prop)) f0) b0)
% Found ((eq_ref ((a->(b->Prop))->Prop)) f0) as proof of (((eq ((a->(b->Prop))->Prop)) f0) b0)
% Found ((eq_ref ((a->(b->Prop))->Prop)) f0) as proof of (((eq ((a->(b->Prop))->Prop)) f0) b0)
% Found eq_ref000:=(eq_ref00 (fun (x1:b)=> ((x0 (f Xx)) (g x1)))):(((x0 (f Xx)) (g Xy))->((x0 (f Xx)) (g Xy)))
% Found (eq_ref00 (fun (x1:b)=> ((x0 (f Xx)) (g x1)))) as proof of (((x0 (f Xx)) (g Xy))->((cS Xx) Xy))
% Found ((eq_ref0 Xy) (fun (x1:b)=> ((x0 (f Xx)) (g x1)))) as proof of (((x0 (f Xx)) (g Xy))->((cS Xx) Xy))
% Found (((eq_ref b) Xy) (fun (x1:b)=> ((x0 (f Xx)) (g x1)))) as proof of (((x0 (f Xx)) (g Xy))->((cS Xx) Xy))
% Found (((eq_ref b) Xy) (fun (x1:b)=> ((x0 (f Xx)) (g x1)))) as proof of (((x0 (f Xx)) (g Xy))->((cS Xx) Xy))
% Found (((eq_ref b) Xy) (fun (x1:b)=> ((x0 (f Xx)) (g x1)))) as proof of (((x0 (f Xx)) (g Xy))->((cS Xx) Xy))
% Found eq_ref000:=(eq_ref00 (cS Xx)):(((cS Xx) Xy)->((cS Xx) Xy))
% Found (eq_ref00 (cS Xx)) as proof of (((cS Xx) Xy)->((x0 (f Xx)) (g Xy)))
% Found ((eq_ref0 Xy) (cS Xx)) as proof of (((cS Xx) Xy)->((x0 (f Xx)) (g Xy)))
% Found (((eq_ref b) Xy) (cS Xx)) as proof of (((cS Xx) Xy)->((x0 (f Xx)) (g Xy)))
% Found (((eq_ref b) Xy) (cS Xx)) as proof of (((cS Xx) Xy)->((x0 (f Xx)) (g Xy)))
% Found ((conj00 (((eq_ref b) Xy) (cS Xx))) (((eq_ref b) Xy) (fun (x1:b)=> ((x0 (f Xx)) (g x1))))) as proof of ((iff ((cS Xx) Xy)) ((x0 (f Xx)) (g Xy)))
% Found (((conj0 (((x0 (f Xx)) (g Xy))->((cS Xx) Xy))) (((eq_ref b) Xy) (cS Xx))) (((eq_ref b) Xy) (fun (x1:b)=> ((x0 (f Xx)) (g x1))))) as proof of ((iff ((cS Xx) Xy)) ((x0 (f Xx)) (g Xy)))
% Found ((((conj (((cS Xx) Xy)->((x0 (f Xx)) (g Xy)))) (((x0 (f Xx)) (g Xy))->((cS Xx) Xy))) (((eq_ref b) Xy) (cS Xx))) (((eq_ref b) Xy) (fun (x1:b)=> ((x0 (f Xx)) (g x1))))) as proof of ((iff ((cS Xx) Xy)) ((x0 (f Xx)) (g Xy)))
% Found eta_expansion000:=(eta_expansion00 b0):(((eq ((a->(b->Prop))->Prop)) b0) (fun (x:(a->(b->Prop)))=> (b0 x)))
% Found (eta_expansion00 b0) as proof of (((eq ((a->(b->Prop))->Prop)) b0) b00)
% Found ((eta_expansion0 Prop) b0) as proof of (((eq ((a->(b->Prop))->Prop)) b0) b00)
% Found (((eta_expansion (a->(b->Prop))) Prop) b0) as proof of (((eq ((a->(b->Prop))->Prop)) b0) b00)
% Found (((eta_expansion (a->(b->Prop))) Prop) b0) as proof of (((eq ((a->(b->Prop))->Prop)) b0) b00)
% Found (((eta_expansion (a->(b->Prop))) Prop) b0) as proof of (((eq ((a->(b->Prop))->Prop)) b0) b00)
% Found eq_ref000:=(eq_ref00 (fun (x3:b)=> ((x2 (f Xx)) (g x3)))):(((x2 (f Xx)) (g Xy))->((x2 (f Xx)) (g Xy)))
% Found (eq_ref00 (fun (x3:b)=> ((x2 (f Xx)) (g x3)))) as proof of (((x2 (f Xx)) (g Xy))->((cS Xx) Xy))
% Found ((eq_ref0 Xy) (fun (x3:b)=> ((x2 (f Xx)) (g x3)))) as proof of (((x2 (f Xx)) (g Xy))->((cS Xx) Xy))
% Found (((eq_ref b) Xy) (fun (x3:b)=> ((x2 (f Xx)) (g x3)))) as proof of (((x2 (f Xx)) (g Xy))->((cS Xx) Xy))
% Found (((eq_ref b) Xy) (fun (x3:b)=> ((x2 (f Xx)) (g x3)))) as proof of (((x2 (f Xx)) (g Xy))->((cS Xx) Xy))
% Found (((eq_ref b) Xy) (fun (x3:b)=> ((x2 (f Xx)) (g x3)))) as proof of (((x2 (f Xx)) (g Xy))->((cS Xx) Xy))
% Found eq_ref000:=(eq_ref00 (cS Xx)):(((cS Xx) Xy)->((cS Xx) Xy))
% Found (eq_ref00 (cS Xx)) as proof of (((cS Xx) Xy)->((x2 (f Xx)) (g Xy)))
% Found ((eq_ref0 Xy) (cS Xx)) as proof of (((cS Xx) Xy)->((x2 (f Xx)) (g Xy)))
% Found (((eq_ref b) Xy) (cS Xx)) as proof of (((cS Xx) Xy)->((x2 (f Xx)) (g Xy)))
% Found (((eq_ref b) Xy) (cS Xx)) as proof of (((cS Xx) Xy)->((x2 (f Xx)) (g Xy)))
% Found ((conj00 (((eq_ref b) Xy) (cS Xx))) (((eq_ref b) Xy) (fun (x3:b)=> ((x2 (f Xx)) (g x3))))) as proof of ((and (((cS Xx) Xy)->((x2 (f Xx)) (g Xy)))) (((x2 (f Xx)) (g Xy))->((cS Xx) Xy)))
% Found (((conj0 (((x2 (f Xx)) (g Xy))->((cS Xx) Xy))) (((eq_ref b) Xy) (cS Xx))) (((eq_ref b) Xy) (fun (x3:b)=> ((x2 (f Xx)) (g x3))))) as proof of ((and (((cS Xx) Xy)->((x2 (f Xx)) (g Xy)))) (((x2 (f Xx)) (g Xy))->((cS Xx) Xy)))
% Found ((((conj (((cS Xx) Xy)->((x2 (f Xx)) (g Xy)))) (((x2 (f Xx)) (g Xy))->((cS Xx) Xy))) (((eq_ref b) Xy) (cS Xx))) (((eq_ref b) Xy) (fun (x3:b)=> ((x2 (f Xx)) (g x3))))) as proof of ((and (((cS Xx) Xy)->((x2 (f Xx)) (g Xy)))) (((x2 (f Xx)) (g Xy))->((cS Xx) Xy)))
% Found ((((conj (((cS Xx) Xy)->((x2 (f Xx)) (g Xy)))) (((x2 (f Xx)) (g Xy))->((cS Xx) Xy))) (((eq_ref b) Xy) (cS Xx))) (((eq_ref b) Xy) (fun (x3:b)=> ((x2 (f Xx)) (g x3))))) as proof of ((and (((cS Xx) Xy)->((x2 (f Xx)) (g Xy)))) (((x2 (f Xx)) (g Xy))->((cS Xx) Xy)))
% Found eq_ref000:=(eq_ref00 (fun (x3:b)=> ((x2 (f Xx)) (g x3)))):(((x2 (f Xx)) (g Xy))->((x2 (f Xx)) (g Xy)))
% Found (eq_ref00 (fun (x3:b)=> ((x2 (f Xx)) (g x3)))) as proof of (((x2 (f Xx)) (g Xy))->((cS Xx) Xy))
% Found ((eq_ref0 Xy) (fun (x3:b)=> ((x2 (f Xx)) (g x3)))) as proof of (((x2 (f Xx)) (g Xy))->((cS Xx) Xy))
% Found (((eq_ref b) Xy) (fun (x3:b)=> ((x2 (f Xx)) (g x3)))) as proof of (((x2 (f Xx)) (g Xy))->((cS Xx) Xy))
% Found (((eq_ref b) Xy) (fun (x3:b)=> ((x2 (f Xx)) (g x3)))) as proof of (((x2 (f Xx)) (g Xy))->((cS Xx) Xy))
% Found (((eq_ref b) Xy) (fun (x3:b)=> ((x2 (f Xx)) (g x3)))) as proof of (((x2 (f Xx)) (g Xy))->((cS Xx) Xy))
% Found eq_ref000:=(eq_ref00 (cS Xx)):(((cS Xx) Xy)->((cS Xx) Xy))
% Found (eq_ref00 (cS Xx)) as proof of (((cS Xx) Xy)->((x2 (f Xx)) (g Xy)))
% Found ((eq_ref0 Xy) (cS Xx)) as proof of (((cS Xx) Xy)->((x2 (f Xx)) (g Xy)))
% Found (((eq_ref b) Xy) (cS Xx)) as proof of (((cS Xx) Xy)->((x2 (f Xx)) (g Xy)))
% Found (((eq_ref b) Xy) (cS Xx)) as proof of (((cS Xx) Xy)->((x2 (f Xx)) (g Xy)))
% Found ((conj00 (((eq_ref b) Xy) (cS Xx))) (((eq_ref b) Xy) (fun (x3:b)=> ((x2 (f Xx)) (g x3))))) as proof of ((and (((cS Xx) Xy)->((x2 (f Xx)) (g Xy)))) (((x2 (f Xx)) (g Xy))->((cS Xx) Xy)))
% Found (((conj0 (((x2 (f Xx)) (g Xy))->((cS Xx) Xy))) (((eq_ref b) Xy) (cS Xx))) (((eq_ref b) Xy) (fun (x3:b)=> ((x2 (f Xx)) (g x3))))) as proof of ((and (((cS Xx) Xy)->((x2 (f Xx)) (g Xy)))) (((x2 (f Xx)) (g Xy))->((cS Xx) Xy)))
% Found ((((conj (((cS Xx) Xy)->((x2 (f Xx)) (g Xy)))) (((x2 (f Xx)) (g Xy))->((cS Xx) Xy))) (((eq_ref b) Xy) (cS Xx))) (((eq_ref b) Xy) (fun (x3:b)=> ((x2 (f Xx)) (g x3))))) as proof of ((and (((cS Xx) Xy)->((x2 (f Xx)) (g Xy)))) (((x2 (f Xx)) (g Xy))->((cS Xx) Xy)))
% Found ((((conj (((cS Xx) Xy)->((x2 (f Xx)) (g Xy)))) (((x2 (f Xx)) (g Xy))->((cS Xx) Xy))) (((eq_ref b) Xy) (cS Xx))) (((eq_ref b) Xy) (fun (x3:b)=> ((x2 (f Xx)) (g x3))))) as proof of ((and (((cS Xx) Xy)->((x2 (f Xx)) (g Xy)))) (((x2 (f Xx)) (g Xy))->((cS Xx) Xy)))
% Found eq_ref00:=(eq_ref0 (f0 x2)):(((eq Prop) (f0 x2)) (f0 x2))
% Found (eq_ref0 (f0 x2)) as proof of (((eq Prop) (f0 x2)) (b0 x2))
% Found ((eq_ref Prop) (f0 x2)) as proof of (((eq Prop) (f0 x2)) (b0 x2))
% Found ((eq_ref Prop) (f0 x2)) as proof of (((eq Prop) (f0 x2)) (b0 x2))
% Found (fun (x2:(a->(b->Prop)))=> ((eq_ref Prop) (f0 x2))) as proof of (((eq Prop) (f0 x2)) (b0 x2))
% Found (fun (x2:(a->(b->Prop)))=> ((eq_ref Prop) (f0 x2))) as proof of (forall (x:(a->(b->Prop))), (((eq Prop) (f0 x)) (b0 x)))
% Found eq_ref00:=(eq_ref0 (f0 x2)):(((eq Prop) (f0 x2)) (f0 x2))
% Found (eq_ref0 (f0 x2)) as proof of (((eq Prop) (f0 x2)) (b0 x2))
% Found ((eq_ref Prop) (f0 x2)) as proof of (((eq Prop) (f0 x2)) (b0 x2))
% Found ((eq_ref Prop) (f0 x2)) as proof of (((eq Prop) (f0 x2)) (b0 x2))
% Found (fun (x2:(a->(b->Prop)))=> ((eq_ref Prop) (f0 x2))) as proof of (((eq Prop) (f0 x2)) (b0 x2))
% Found (fun (x2:(a->(b->Prop)))=> ((eq_ref Prop) (f0 x2))) as proof of (forall (x:(a->(b->Prop))), (((eq Prop) (f0 x)) (b0 x)))
% Found eq_ref00:=(eq_ref0 (f0 x2)):(((eq Prop) (f0 x2)) (f0 x2))
% Found (eq_ref0 (f0 x2)) as proof of (((eq Prop) (f0 x2)) (b0 x2))
% Found ((eq_ref Prop) (f0 x2)) as proof of (((eq Prop) (f0 x2)) (b0 x2))
% Found ((eq_ref Prop) (f0 x2)) as proof of (((eq Prop) (f0 x2)) (b0 x2))
% Found (fun (x2:(a->(b->Prop)))=> ((eq_ref Prop) (f0 x2))) as proof of (((eq Prop) (f0 x2)) (b0 x2))
% Found (fun (x2:(a->(b->Prop)))=> ((eq_ref Prop) (f0 x2))) as proof of (forall (x:(a->(b->Prop))), (((eq Prop) (f0 x)) (b0 x)))
% Found eq_ref00:=(eq_ref0 (f0 x2)):(((eq Prop) (f0 x2)) (f0 x2))
% Found (eq_ref0 (f0 x2)) as proof of (((eq Prop) (f0 x2)) (b0 x2))
% Found ((eq_ref Prop) (f0 x2)) as proof of (((eq Prop) (f0 x2)) (b0 x2))
% Found ((eq_ref Prop) (f0 x2)) as proof of (((eq Prop) (f0 x2)) (b0 x2))
% Found (fun (x2:(a->(b->Prop)))=> ((eq_ref Prop) (f0 x2))) as proof of (((eq Prop) (f0 x2)) (b0 x2))
% Found (fun (x2:(a->(b->Prop)))=> ((eq_ref Prop) (f0 x2))) as proof of (forall (x:(a->(b->Prop))), (((eq Prop) (f0 x)) (b0 x)))
% Found eq_ref00:=(eq_ref0 (fun (Xu:(a->(b->Prop)))=> (forall (Xx:a) (Xy:b), ((iff ((cS Xx) Xy)) ((Xu (f Xx)) (g Xy)))))):(((eq ((a->(b->Prop))->Prop)) (fun (Xu:(a->(b->Prop)))=> (forall (Xx:a) (Xy:b), ((iff ((cS Xx) Xy)) ((Xu (f Xx)) (g Xy)))))) (fun (Xu:(a->(b->Prop)))=> (forall (Xx:a) (Xy:b), ((iff ((cS Xx) Xy)) ((Xu (f Xx)) (g Xy))))))
% Found (eq_ref0 (fun (Xu:(a->(b->Prop)))=> (forall (Xx:a) (Xy:b), ((iff ((cS Xx) Xy)) ((Xu (f Xx)) (g Xy)))))) as proof of (((eq ((a->(b->Prop))->Prop)) (fun (Xu:(a->(b->Prop)))=> (forall (Xx:a) (Xy:b), ((iff ((cS Xx) Xy)) ((Xu (f Xx)) (g Xy)))))) b00)
% Found ((eq_ref ((a->(b->Prop))->Prop)) (fun (Xu:(a->(b->Prop)))=> (forall (Xx:a) (Xy:b), ((iff ((cS Xx) Xy)) ((Xu (f Xx)) (g Xy)))))) as proof of (((eq ((a->(b->Prop))->Prop)) (fun (Xu:(a->(b->Prop)))=> (forall (Xx:a) (Xy:b), ((iff ((cS Xx) Xy)) ((Xu (f Xx)) (g Xy)))))) b00)
% Found ((eq_ref ((a->(b->Prop))->Prop)) (fun (Xu:(a->(b->Prop)))=> (forall (Xx:a) (Xy:b), ((iff ((cS Xx) Xy)) ((Xu (f Xx)) (g Xy)))))) as proof of (((eq ((a->(b->Prop))->Prop)) (fun (Xu:(a->(b->Prop)))=> (forall (Xx:a) (Xy:b), ((iff ((cS Xx) Xy)) ((Xu (f Xx)) (g Xy)))))) b00)
% Found ((eq_ref ((a->(b->Prop))->Prop)) (fun (Xu:(a->(b->Prop)))=> (forall (Xx:a) (Xy:b), ((iff ((cS Xx) Xy)) ((Xu (f Xx)) (g Xy)))))) as proof of (((eq ((a->(b->Prop))->Prop)) (fun (Xu:(a->(b->Prop)))=> (forall (Xx:a) (Xy:b), ((iff ((cS Xx) Xy)) ((Xu (f Xx)) (g Xy)))))) b00)
% Found eta_expansion_dep000:=(eta_expansion_dep00 f0):(((eq ((a->(b->Prop))->Prop)) f0) (fun (x:(a->(b->Prop)))=> (f0 x)))
% Found (eta_expansion_dep00 f0) as proof of (((eq ((a->(b->Prop))->Prop)) f0) b0)
% Found ((eta_expansion_dep0 (fun (x3:(a->(b->Prop)))=> Prop)) f0) as proof of (((eq ((a->(b->Prop))->Prop)) f0) b0)
% Found (((eta_expansion_dep (a->(b->Prop))) (fun (x3:(a->(b->Prop)))=> Prop)) f0) as proof of (((eq ((a->(b->Prop))->Prop)) f0) b0)
% Found (((eta_expansion_dep (a->(b->Prop))) (fun (x3:(a->(b->Prop)))=> Prop)) f0) as proof of (((eq ((a->(b->Prop))->Prop)) f0) b0)
% Found (((eta_expansion_dep (a->(b->Prop))) (fun (x3:(a->(b->Prop)))=> Prop)) f0) as proof of (((eq ((a->(b->Prop))->Prop)) f0) b0)
% Found eta_expansion000:=(eta_expansion00 f0):(((eq ((a->(b->Prop))->Prop)) f0) (fun (x:(a->(b->Prop)))=> (f0 x)))
% Found (eta_expansion00 f0) as proof of (((eq ((a->(b->Prop))->Prop)) f0) b0)
% Found ((eta_expansion0 Prop) f0) as proof of (((eq ((a->(b->Prop))->Prop)) f0) b0)
% Found (((eta_expansion (a->(b->Prop))) Prop) f0) as proof of (((eq ((a->(b->Prop))->Prop)) f0) b0)
% Found (((eta_expansion (a->(b->Prop))) Prop) f0) as proof of (((eq ((a->(b->Prop))->Prop)) f0) b0)
% Found (((eta_expansion (a->(b->Prop))) Prop) f0) as proof of (((eq ((a->(b->Prop))->Prop)) f0) b0)
% Found eq_ref000:=(eq_ref00 (fun (x3:b)=> ((x2 (f Xx)) (g x3)))):(((x2 (f Xx)) (g Xy))->((x2 (f Xx)) (g Xy)))
% Found (eq_ref00 (fun (x3:b)=> ((x2 (f Xx)) (g x3)))) as proof of (((x2 (f Xx)) (g Xy))->((cS Xx) Xy))
% Found ((eq_ref0 Xy) (fun (x3:b)=> ((x2 (f Xx)) (g x3)))) as proof of (((x2 (f Xx)) (g Xy))->((cS Xx) Xy))
% Found (((eq_ref b) Xy) (fun (x3:b)=> ((x2 (f Xx)) (g x3)))) as proof of (((x2 (f Xx)) (g Xy))->((cS Xx) Xy))
% Found (((eq_ref b) Xy) (fun (x3:b)=> ((x2 (f Xx)) (g x3)))) as proof of (((x2 (f Xx)) (g Xy))->((cS Xx) Xy))
% Found (((eq_ref b) Xy) (fun (x3:b)=> ((x2 (f Xx)) (g x3)))) as proof of (((x2 (f Xx)) (g Xy))->((cS Xx) Xy))
% Found eq_ref000:=(eq_ref00 (cS Xx)):(((cS Xx) Xy)->((cS Xx) Xy))
% Found (eq_ref00 (cS Xx)) as proof of (((cS Xx) Xy)->((x2 (f Xx)) (g Xy)))
% Found ((eq_ref0 Xy) (cS Xx)) as proof of (((cS Xx) Xy)->((x2 (f Xx)) (g Xy)))
% Found (((eq_ref b) Xy) (cS Xx)) as proof of (((cS Xx) Xy)->((x2 (f Xx)) (g Xy)))
% Found (((eq_ref b) Xy) (cS Xx)) as proof of (((cS Xx) Xy)->((x2 (f Xx)) (g Xy)))
% Found ((conj00 (((eq_ref b) Xy) (cS Xx))) (((eq_ref b) Xy) (fun (x3:b)=> ((x2 (f Xx)) (g x3))))) as proof of ((and (((cS Xx) Xy)->((x2 (f Xx)) (g Xy)))) (((x2 (f Xx)) (g Xy))->((cS Xx) Xy)))
% Found (((conj0 (((x2 (f Xx)) (g Xy))->((cS Xx) Xy))) (((eq_ref b) Xy) (cS Xx))) (((eq_ref b) Xy) (fun (x3:b)=> ((x2 (f Xx)) (g x3))))) as proof of ((and (((cS Xx) Xy)->((x2 (f Xx)) (g Xy)))) (((x2 (f Xx)) (g Xy))->((cS Xx) Xy)))
% Found ((((conj (((cS Xx) Xy)->((x2 (f Xx)) (g Xy)))) (((x2 (f Xx)) (g Xy))->((cS Xx) Xy))) (((eq_ref b) Xy) (cS Xx))) (((eq_ref b) Xy) (fun (x3:b)=> ((x2 (f Xx)) (g x3))))) as proof of ((and (((cS Xx) Xy)->((x2 (f Xx)) (g Xy)))) (((x2 (f Xx)) (g Xy))->((cS Xx) Xy)))
% Found ((((conj (((cS Xx) Xy)->((x2 (f Xx)) (g Xy)))) (((x2 (f Xx)) (g Xy))->((cS Xx) Xy))) (((eq_ref b) Xy) (cS Xx))) (((eq_ref b) Xy) (fun (x3:b)=> ((x2 (f Xx)) (g x3))))) as proof of ((and (((cS Xx) Xy)->((x2 (f Xx)) (g Xy)))) (((x2 (f Xx)) (g Xy))->((cS Xx) Xy)))
% Found eq_ref000:=(eq_ref00 (fun (x3:b)=> ((x2 (f Xx)) (g x3)))):(((x2 (f Xx)) (g Xy))->((x2 (f Xx)) (g Xy)))
% Found (eq_ref00 (fun (x3:b)=> ((x2 (f Xx)) (g x3)))) as proof of (((x2 (f Xx)) (g Xy))->((cS Xx) Xy))
% Found ((eq_ref0 Xy) (fun (x3:b)=> ((x2 (f Xx)) (g x3)))) as proof of (((x2 (f Xx)) (g Xy))->((cS Xx) Xy))
% Found (((eq_ref b) Xy) (fun (x3:b)=> ((x2 (f Xx)) (g x3)))) as proof of (((x2 (f Xx)) (g Xy))->((cS Xx) Xy))
% Found (((eq_ref b) Xy) (fun (x3:b)=> ((x2 (f Xx)) (g x3)))) as proof of (((x2 (f Xx)) (g Xy))->((cS Xx) Xy))
% Found (((eq_ref b) Xy) (fun (x3:b)=> ((x2 (f Xx)) (g x3)))) as proof of (((x2 (f Xx)) (g Xy))->((cS Xx) Xy))
% Found eq_ref000:=(eq_ref00 (cS Xx)):(((cS Xx) Xy)->((cS Xx) Xy))
% Found (eq_ref00 (cS Xx)) as proof of (((cS Xx) Xy)->((x2 (f Xx)) (g Xy)))
% Found ((eq_ref0 Xy) (cS Xx)) as proof of (((cS Xx) Xy)->((x2 (f Xx)) (g Xy)))
% Found (((eq_ref b) Xy) (cS Xx)) as proof of (((cS Xx) Xy)->((x2 (f Xx)) (g Xy)))
% Found (((eq_ref b) Xy) (cS Xx)) as proof of (((cS Xx) Xy)->((x2 (f Xx)) (g Xy)))
% Found ((conj00 (((eq_ref b) Xy) (cS Xx))) (((eq_ref b) Xy) (fun (x3:b)=> ((x2 (f Xx)) (g x3))))) as proof of ((and (((cS Xx) Xy)->((x2 (f Xx)) (g Xy)))) (((x2 (f Xx)) (g Xy))->((cS Xx) Xy)))
% Found (((conj0 (((x2 (f Xx)) (g Xy))->((cS Xx) Xy))) (((eq_ref b) Xy) (cS Xx))) (((eq_ref b) Xy) (fun (x3:b)=> ((x2 (f Xx)) (g x3))))) as proof of ((and (((cS Xx) Xy)->((x2 (f Xx)) (g Xy)))) (((x2 (f Xx)) (g Xy))->((cS Xx) Xy)))
% Found ((((conj (((cS Xx) Xy)->((x2 (f Xx)) (g Xy)))) (((x2 (f Xx)) (g Xy))->((cS Xx) Xy))) (((eq_ref b) Xy) (cS Xx))) (((eq_ref b) Xy) (fun (x3:b)=> ((x2 (f Xx)) (g x3))))) as proof of ((and (((cS Xx) Xy)->((x2 (f Xx)) (g Xy)))) (((x2 (f Xx)) (g Xy))->((cS Xx) Xy)))
% Found ((((conj (((cS Xx) Xy)->((x2 (f Xx)) (g Xy)))) (((x2 (f Xx)) (g Xy))->((cS Xx) Xy))) (((eq_ref b) Xy) (cS Xx))) (((eq_ref b) Xy) (fun (x3:b)=> ((x2 (f Xx)) (g x3))))) as proof of ((and (((cS Xx) Xy)->((x2 (f Xx)) (g Xy)))) (((x2 (f Xx)) (g Xy))->((cS Xx) Xy)))
% Found eta_expansion_dep000:=(eta_expansion_dep00 f0):(((eq ((a->(b->Prop))->Prop)) f0) (fun (x:(a->(b->Prop)))=> (f0 x)))
% Found (eta_expansion_dep00 f0) as proof of (((eq ((a->(b->Prop))->Prop)) f0) b0)
% Found ((eta_expansion_dep0 (fun (x3:(a->(b->Prop)))=> Prop)) f0) as proof of (((eq ((a->(b->Prop))->Prop)) f0) b0)
% Found (((eta_expansion_dep (a->(b->Prop))) (fun (x3:(a->(b->Prop)))=> Prop)) f0) as proof of (((eq ((a->(b->Prop))->Prop)) f0) b0)
% Found (((eta_expansion_dep (a->(b->Prop))) (fun (x3:(a->(b->Prop)))=> Prop)) f0) as proof of (((eq ((a->(b->Prop))->Prop)) f0) b0)
% Found (((eta_expansion_dep (a->(b->Prop))) (fun (x3:(a->(b->Prop)))=> Prop)) f0) as proof of (((eq ((a->(b->Prop))->Prop)) f0) b0)
% Found eq_ref00:=(eq_ref0 f0):(((eq ((a->(b->Prop))->Prop)) f0) f0)
% Found (eq_ref0 f0) as proof of (((eq ((a->(b->Prop))->Prop)) f0) b0)
% Found ((eq_ref ((a->(b->Prop))->Prop)) f0) as proof of (((eq ((a->(b->Prop))->Prop)) f0) b0)
% Found ((eq_ref ((a->(b->Prop))->Prop)) f0) as proof of (((eq ((a->(b->Prop))->Prop)) f0) b0)
% Found ((eq_ref ((a->(b->Prop))->Prop)) f0) as proof of (((eq ((a->(b->Prop))->Prop)) f0) b0)
% Found eq_ref000:=(eq_ref00 (fun (x3:b)=> ((x2 (f Xx)) (g x3)))):(((x2 (f Xx)) (g Xy))->((x2 (f Xx)) (g Xy)))
% Found (eq_ref00 (fun (x3:b)=> ((x2 (f Xx)) (g x3)))) as proof of (((x2 (f Xx)) (g Xy))->((cS Xx) Xy))
% Found ((eq_ref0 Xy) (fun (x3:b)=> ((x2 (f Xx)) (g x3)))) as proof of (((x2 (f Xx)) (g Xy))->((cS Xx) Xy))
% Found (((eq_ref b) Xy) (fun (x3:b)=> ((x2 (f Xx)) (g x3)))) as proof of (((x2 (f Xx)) (g Xy))->((cS Xx) Xy))
% Found (((eq_ref b) Xy) (fun (x3:b)=> ((x2 (f Xx)) (g x3)))) as proof of (((x2 (f Xx)) (g Xy))->((cS Xx) Xy))
% Found (((eq_ref b) Xy) (fun (x3:b)=> ((x2 (f Xx)) (g x3)))) as proof of (((x2 (f Xx)) (g Xy))->((cS Xx) Xy))
% Found eq_ref000:=(eq_ref00 (cS Xx)):(((cS Xx) Xy)->((cS Xx) Xy))
% Found (eq_ref00 (cS Xx)) as proof of (((cS Xx) Xy)->((x2 (f Xx)) (g Xy)))
% Found ((eq_ref0 Xy) (cS Xx)) as proof of (((cS Xx) Xy)->((x2 (f Xx)) (g Xy)))
% Found (((eq_ref b) Xy) (cS Xx)) as proof of (((cS Xx) Xy)->((x2 (f Xx)) (g Xy)))
% Found (((eq_ref b) Xy) (cS Xx)) as proof of (((cS Xx) Xy)->((x2 (f Xx)) (g Xy)))
% Found ((conj00 (((eq_ref b) Xy) (cS Xx))) (((eq_ref b) Xy) (fun (x3:b)=> ((x2 (f Xx)) (g x3))))) as proof of ((and (((cS Xx) Xy)->((x2 (f Xx)) (g Xy)))) (((x2 (f Xx)) (g Xy))->((cS Xx) Xy)))
% Found (((conj0 (((x2 (f Xx)) (g Xy))->((cS Xx) Xy))) (((eq_ref b) Xy) (cS Xx))) (((eq_ref b) Xy) (fun (x3:b)=> ((x2 (f Xx)) (g x3))))) as proof of ((and (((cS Xx) Xy)->((x2 (f Xx)) (g Xy)))) (((x2 (f Xx)) (g Xy))->((cS Xx) Xy)))
% Found ((((conj (((cS Xx) Xy)->((x2 (f Xx)) (g Xy)))) (((x2 (f Xx)) (g Xy))->((cS Xx) Xy))) (((eq_ref b) Xy) (cS Xx))) (((eq_ref b) Xy) (fun (x3:b)=> ((x2 (f Xx)) (g x3))))) as proof of ((and (((cS Xx) Xy)->((x2 (f Xx)) (g Xy)))) (((x2 (f Xx)) (g Xy))->((cS Xx) Xy)))
% Found ((((conj (((cS Xx) Xy)->((x2 (f Xx)) (g Xy)))) (((x2 (f Xx)) (g Xy))->((cS Xx) Xy))) (((eq_ref b) Xy) (cS Xx))) (((eq_ref b) Xy) (fun (x3:b)=> ((x2 (f Xx)) (g x3))))) as proof of ((and (((cS Xx) Xy)->((x2 (f Xx)) (g Xy)))) (((x2 (f Xx)) (g Xy))->((cS Xx) Xy)))
% Found eq_ref000:=(eq_ref00 (fun (x3:b)=> ((x2 (f Xx)) (g x3)))):(((x2 (f Xx)) (g Xy))->((x2 (f Xx)) (g Xy)))
% Found (eq_ref00 (fun (x3:b)=> ((x2 (f Xx)) (g x3)))) as proof of (((x2 (f Xx)) (g Xy))->((cS Xx) Xy))
% Found ((eq_ref0 Xy) (fun (x3:b)=> ((x2 (f Xx)) (g x3)))) as proof of (((x2 (f Xx)) (g Xy))->((cS Xx) Xy))
% Found (((eq_ref b) Xy) (fun (x3:b)=> ((x2 (f Xx)) (g x3)))) as proof of (((x2 (f Xx)) (g Xy))->((cS Xx) Xy))
% Found (((eq_ref b) Xy) (fun (x3:b)=> ((x2 (f Xx)) (g x3)))) as proof of (((x2 (f Xx)) (g Xy))->((cS Xx) Xy))
% Found (((eq_ref b) Xy) (fun (x3:b)=> ((x2 (f Xx)) (g x3)))) as proof of (((x2 (f Xx)) (g Xy))->((cS Xx) Xy))
% Found eq_ref000:=(eq_ref00 (cS Xx)):(((cS Xx) Xy)->((cS Xx) Xy))
% Found (eq_ref00 (cS Xx)) as proof of (((cS Xx) Xy)->((x2 (f Xx)) (g Xy)))
% Found ((eq_ref0 Xy) (cS Xx)) as proof of (((cS Xx) Xy)->((x2 (f Xx)) (g Xy)))
% Found (((eq_ref b) Xy) (cS Xx)) as proof of (((cS Xx) Xy)->((x2 (f Xx)) (g Xy)))
% Found (((eq_ref b) Xy) (cS Xx)) as proof of (((cS Xx) Xy)->((x2 (f Xx)) (g Xy)))
% Found ((conj00 (((eq_ref b) Xy) (cS Xx))) (((eq_ref b) Xy) (fun (x3:b)=> ((x2 (f Xx)) (g x3))))) as proof of ((and (((cS Xx) Xy)->((x2 (f Xx)) (g Xy)))) (((x2 (f Xx)) (g Xy))->((cS Xx) Xy)))
% Found (((conj0 (((x2 (f Xx)) (g Xy))->((cS Xx) Xy))) (((eq_ref b) Xy) (cS Xx))) (((eq_ref b) Xy) (fun (x3:b)=> ((x2 (f Xx)) (g x3))))) as proof of ((and (((cS Xx) Xy)->((x2 (f Xx)) (g Xy)))) (((x2 (f Xx)) (g Xy))->((cS Xx) Xy)))
% Found ((((conj (((cS Xx) Xy)->((x2 (f Xx)) (g Xy)))) (((x2 (f Xx)) (g Xy))->((cS Xx) Xy))) (((eq_ref b) Xy) (cS Xx))) (((eq_ref b) Xy) (fun (x3:b)=> ((x2 (f Xx)) (g x3))))) as proof of ((and (((cS Xx) Xy)->((x2 (f Xx)) (g Xy)))) (((x2 (f Xx)) (g Xy))->((cS Xx) Xy)))
% Found ((((conj (((cS Xx) Xy)->((x2 (f Xx)) (g Xy)))) (((x2 (f Xx)) (g Xy))->((cS Xx) Xy))) (((eq_ref b) Xy) (cS Xx))) (((eq_ref b) Xy) (fun (x3:b)=> ((x2 (f Xx)) (g x3))))) as proof of ((and (((cS Xx) Xy)->((x2 (f Xx)) (g Xy)))) (((x2 (f Xx)) (g Xy))->((cS Xx) Xy)))
% Found eta_expansion_dep000:=(eta_expansion_dep00 f0):(((eq ((a->(b->Prop))->Prop)) f0) (fun (x:(a->(b->Prop)))=> (f0 x)))
% Found (eta_expansion_dep00 f0) as proof of (((eq ((a->(b->Prop))->Prop)) f0) b0)
% Found ((eta_expansion_dep0 (fun (x3:(a->(b->Prop)))=> Prop)) f0) as proof of (((eq ((a->(b->Prop))->Prop)) f0) b0)
% Found (((eta_expansion_dep (a->(b->Prop))) (fun (x3:(a->(b->Prop)))=> Prop)) f0) as proof of (((eq ((a->(b->Prop))->Prop)) f0) b0)
% Found (((eta_expansion_dep (a->(b->Prop))) (fun (x3:(a->(b->Prop)))=> Prop)) f0) as proof of (((eq ((a->(b->Prop))->Prop)) f0) b0)
% Found (((eta_expansion_dep (a->(b->Prop))) (fun (x3:(a->(b->Prop)))=> Prop)) f0) as proof of (((eq ((a->(b->Prop))->Prop)) f0) b0)
% Found eta_expansion000:=(eta_expansion00 f0):(((eq ((a->(b->Prop))->Prop)) f0) (fun (x:(a->(b->Prop)))=> (f0 x)))
% Found (eta_expansion00 f0) as proof of (((eq ((a->(b->Prop))->Prop)) f0) b0)
% Found ((eta_expansion0 Prop) f0) as proof of (((eq ((a->(b->Prop))->Prop)) f0) b0)
% Found (((eta_expansion (a->(b->Prop))) Prop) f0) as proof of (((eq ((a->(b->Prop))->Prop)) f0) b0)
% Found (((eta_expansion (a->(b->Prop))) Prop) f0) as proof of (((eq ((a->(b->Prop))->Prop)) f0) b0)
% Found (((eta_expansion (a->(b->Prop))) Prop) f0) as proof of (((eq ((a->(b->Prop))->Prop)) f0) b0)
% Found eq_ref00:=(eq_ref0 (f1 x2)):(((eq Prop) (f1 x2)) (f1 x2))
% Found (eq_ref0 (f1 x2)) as proof of (((eq Prop) (f1 x2)) (f0 x2))
% Found ((eq_ref Prop) (f1 x2)) as proof of (((eq Prop) (f1 x2)) (f0 x2))
% Found ((eq_ref Prop) (f1 x2)) as proof of (((eq Prop) (f1 x2)) (f0 x2))
% Found (fun (x2:(a->(b->Prop)))=> ((eq_ref Prop) (f1 x2))) as proof of (((eq Prop) (f1 x2)) (f0 x2))
% Found (fun (x2:(a->(b->Prop)))=> ((eq_ref Prop) (f1 x2))) as proof of (forall (x:(a->(b->Prop))), (((eq Prop) (f1 x)) (f0 x)))
% Found eta_expansion000:=(eta_expansion00 b0):(((eq ((a->(b->Prop))->Prop)) b0) (fun (x:(a->(b->Prop)))=> (b0 x)))
% Found (eta_expansion00 b0) as proof of (((eq ((a->(b->Prop))->Prop)) b0) b00)
% Found ((eta_expansion0 Prop) b0) as proof of (((eq ((a->(b->Prop))->Prop)) b0) b00)
% Found (((eta_expansion (a->(b->Prop))) Prop) b0) as proof of (((eq ((a->(b->Prop))->Prop)) b0) b00)
% Found (((eta_expansion (a->(b->Prop))) Prop) b0) as proof of (((eq ((a->(b->Prop))->Prop)) b0) b00)
% Found (((eta_expansion (a->(b->Prop))) Prop) b0) as proof of (((eq ((a->(b->Prop))->Prop)) b0) b00)
% Found eq_ref000:=(eq_ref00 (fun (x3:b)=> ((x0 (f Xx)) (g x3)))):(((x0 (f Xx)) (g Xy))->((x0 (f Xx)) (g Xy)))
% Found (eq_ref00 (fun (x3:b)=> ((x0 (f Xx)) (g x3)))) as proof of (((x0 (f Xx)) (g Xy))->((cS Xx) Xy))
% Found ((eq_ref0 Xy) (fun (x3:b)=> ((x0 (f Xx)) (g x3)))) as proof of (((x0 (f Xx)) (g Xy))->((cS Xx) Xy))
% Found (((eq_ref b) Xy) (fun (x3:b)=> ((x0 (f Xx)) (g x3)))) as proof of (((x0 (f Xx)) (g Xy))->((cS Xx) Xy))
% Found (((eq_ref b) Xy) (fun (x3:b)=> ((x0 (f Xx)) (g x3)))) as proof of (((x0 (f Xx)) (g Xy))->((cS Xx) Xy))
% Found (((eq_ref b) Xy) (fun (x3:b)=> ((x0 (f Xx)) (g x3)))) as proof of (((x0 (f Xx)) (g Xy))->((cS Xx) Xy))
% Found eq_ref000:=(eq_ref00 (cS Xx)):(((cS Xx) Xy)->((cS Xx) Xy))
% Found (eq_ref00 (cS Xx)) as proof of (((cS Xx) Xy)->((x0 (f Xx)) (g Xy)))
% Found ((eq_ref0 Xy) (cS Xx)) as proof of (((cS Xx) Xy)->((x0 (f Xx)) (g Xy)))
% Found (((eq_ref b) Xy) (cS Xx)) as proof of (((cS Xx) Xy)->((x0 (f Xx)) (g Xy)))
% Found (((eq_ref b) Xy) (cS Xx)) as proof of (((cS Xx) Xy)->((x0 (f Xx)) (g Xy)))
% Found ((conj00 (((eq_ref b) Xy) (cS Xx))) (((eq_ref b) Xy) (fun (x3:b)=> ((x0 (f Xx)) (g x3))))) as proof of ((and (((cS Xx) Xy)->((x0 (f Xx)) (g Xy)))) (((x0 (f Xx)) (g Xy))->((cS Xx) Xy)))
% Found (((conj0 (((x0 (f Xx)) (g Xy))->((cS Xx) Xy))) (((eq_ref b) Xy) (cS Xx))) (((eq_ref b) Xy) (fun (x3:b)=> ((x0 (f Xx)) (g x3))))) as proof of ((and (((cS Xx) Xy)->((x0 (f Xx)) (g Xy)))) (((x0 (f Xx)) (g Xy))->((cS Xx) Xy)))
% Found ((((conj (((cS Xx) Xy)->((x0 (f Xx)) (g Xy)))) (((x0 (f Xx)) (g Xy))->((cS Xx) Xy))) (((eq_ref b) Xy) (cS Xx))) (((eq_ref b) Xy) (fun (x3:b)=> ((x0 (f Xx)) (g x3))))) as proof of ((and (((cS Xx) Xy)->((x0 (f Xx)) (g Xy)))) (((x0 (f Xx)) (g Xy))->((cS Xx) Xy)))
% Found ((((conj (((cS Xx) Xy)->((x0 (f Xx)) (g Xy)))) (((x0 (f Xx)) (g Xy))->((cS Xx) Xy))) (((eq_ref b) Xy) (cS Xx))) (((eq_ref b) Xy) (fun (x3:b)=> ((x0 (f Xx)) (g x3))))) as proof of ((and (((cS Xx) Xy)->((x0 (f Xx)) (g Xy)))) (((x0 (f Xx)) (g Xy))->((cS Xx) Xy)))
% Found eq_ref00:=(eq_ref0 (f1 x2)):(((eq Prop) (f1 x2)) (f1 x2))
% Found (eq_ref0 (f1 x2)) as proof of (((eq Prop) (f1 x2)) (f0 x2))
% Found ((eq_ref Prop) (f1 x2)) as proof of (((eq Prop) (f1 x2)) (f0 x2))
% Found ((eq_ref Prop) (f1 x2)) as proof of (((eq Prop) (f1 x2)) (f0 x2))
% Found (fun (x2:(a->(b->Prop)))=> ((eq_ref Prop) (f1 x2))) as proof of (((eq Prop) (f1 x2)) (f0 x2))
% Found (fun (x2:(a->(b->Prop)))=> ((eq_ref Prop) (f1 x2))) as proof of (forall (x:(a->(b->Prop))), (((eq Prop) (f1 x)) (f0 x)))
% Found eq_ref00:=(eq_ref0 (f1 x2)):(((eq Prop) (f1 x2)) (f1 x2))
% Found (eq_ref0 (f1 x2)) as proof of (((eq Prop) (f1 x2)) (f0 x2))
% Found ((eq_ref Prop) (f1 x2)) as proof of (((eq Prop) (f1 x2)) (f0 x2))
% Found ((eq_ref Prop) (f1 x2)) as proof of (((eq Prop) (f1 x2)) (f0 x2))
% Found (fun (x2:(a->(b->Prop)))=> ((eq_ref Prop) (f1 x2))) as proof of (((eq Prop) (f1 x2)) (f0 x2))
% Found (fun (x2:(a->(b->Prop)))=> ((eq_ref Prop) (f1 x2))) as proof of (forall (x:(a->(b->Prop))), (((eq Prop) (f1 x)) (f0 x)))
% Found eq_ref00:=(eq_ref0 f0):(((eq ((a->(b->Prop))->Prop)) f0) f0)
% Found (eq_ref0 f0) as proof of (((eq ((a->(b->Prop))->Prop)) f0) b0)
% Found ((eq_ref ((a->(b->Prop))->Prop)) f0) as proof of (((eq ((a->(b->Prop))->Prop)) f0) b0)
% Found ((eq_ref ((a->(b->Prop))->Prop)) f0) as proof of (((eq ((a->(b->Prop))->Prop)) f0) b0)
% Found ((eq_ref ((a->(b->Prop))->Prop)) f0) as proof of (((eq ((a->(b->Prop))->Prop)) f0) b0)
% Found eta_expansion_dep000:=(eta_expansion_dep00 f0):(((eq ((a->(b->Prop))->Prop)) f0) (fun (x:(a->(b->Prop)))=> (f0 x)))
% Found (eta_expansion_dep00 f0) as proof of (((eq ((a->(b->Prop))->Prop)) f0) b0)
% Found ((eta_expansion_dep0 (fun (x3:(a->(b->Prop)))=> Prop)) f0) as proof of (((eq ((a->(b->Prop))->Prop)) f0) b0)
% Found (((eta_expansion_dep (a->(b->Prop))) (fun (x3:(a->(b->Prop)))=> Prop)) f0) as proof of (((eq ((a->(b->Prop))->Prop)) f0) b0)
% Found (((eta_expansion_dep (a->(b->Prop))) (fun (x3:(a->(b->Prop)))=> Prop)) f0) as proof of (((eq ((a->(b->Prop))->Prop)) f0) b0)
% Found (((eta_expansion_dep (a->(b->Prop))) (fun (x3:(a->(b->Prop)))=> Prop)) f0) as proof of (((eq ((a->(b->Prop))->Prop)) f0) b0)
% Found eq_ref00:=(eq_ref0 (f1 x2)):(((eq Prop) (f1 x2)) (f1 x2))
% Found (eq_ref0 (f1 x2)) as proof of (((eq Prop) (f1 x2)) (f0 x2))
% Found ((eq_ref Prop) (f1 x2)) as proof of (((eq Prop) (f1 x2)) (f0 x2))
% Found ((eq_ref Prop) (f1 x2)) as proof of (((eq Prop) (f1 x2)) (f0 x2))
% Found (fun (x2:(a->(b->Prop)))=> ((eq_ref Prop) (f1 x2))) as proof of (((eq Prop) (f1 x2)) (f0 x2))
% Found (fun (x2:(a->(b->Prop)))=> ((eq_ref Prop) (f1 x2))) as proof of (forall (x:(a->(b->Prop))), (((eq Prop) (f1 x)) (f0 x)))
% Found eq_ref00:=(eq_ref0 (f1 x2)):(((eq Prop) (f1 x2)) (f1 x2))
% Found (eq_ref0 (f1 x2)) as proof of (((eq Prop) (f1 x2)) (f0 x2))
% Found ((eq_ref Prop) (f1 x2)) as proof of (((eq Prop) (f1 x2)) (f0 x2))
% Found ((eq_ref Prop) (f1 x2)) as proof of (((eq Prop) (f1 x2)) (f0 x2))
% Found (fun (x2:(a->(b->Prop)))=> ((eq_ref Prop) (f1 x2))) as proof of (((eq Prop) (f1 x2)) (f0 x2))
% Found (fun (x2:(a->(b->Prop)))=> ((eq_ref Prop) (f1 x2))) as proof of (forall (x:(a->(b->Prop))), (((eq Prop) (f1 x)) (f0 x)))
% Found eq_ref00:=(eq_ref0 (f1 x2)):(((eq Prop) (f1 x2)) (f1 x2))
% Found (eq_ref0 (f1 x2)) as proof of (((eq Prop) (f1 x2)) (f0 x2))
% Found ((eq_ref Prop) (f1 x2)) as proof of (((eq Prop) (f1 x2)) (f0 x2))
% Found ((eq_ref Prop) (f1 x2)) as proof of (((eq Prop) (f1 x2)) (f0 x2))
% Found (fun (x2:(a->(b->Prop)))=> ((eq_ref Prop) (f1 x2))) as proof of (((eq Prop) (f1 x2)) (f0 x2))
% Found (fun (x2:(a->(b->Prop)))=> ((eq_ref Prop) (f1 x2))) as proof of (forall (x:(a->(b->Prop))), (((eq Prop) (f1 x)) (f0 x)))
% Found eq_ref00:=(eq_ref0 (f0 x2)):(((eq Prop) (f0 x2)) (f0 x2))
% Found (eq_ref0 (f0 x2)) as proof of (((eq Prop) (f0 x2)) (b0 x2))
% Found ((eq_ref Prop) (f0 x2)) as proof of (((eq Prop) (f0 x2)) (b0 x2))
% Found ((eq_ref Prop) (f0 x2)) as proof of (((eq Prop) (f0 x2)) (b0 x2))
% Found (fun (x2:(a->(b->Prop)))=> ((eq_ref Prop) (f0 x2))) as proof of (((eq Prop) (f0 x2)) (b0 x2))
% Found (fun (x2:(a->(b->Prop)))=> ((eq_ref Prop) (f0 x2))) as proof of (forall (x:(a->(b->Prop))), (((eq Prop) (f0 x)) (b0 x)))
% Found eq_ref00:=(eq_ref0 (f0 x2)):(((eq Prop) (f0 x2)) (f0 x2))
% Found (eq_ref0 (f0 x2)) as proof of (((eq Prop) (f0 x2)) (b0 x2))
% Found ((eq_ref Prop) (f0 x2)) as proof of (((eq Prop) (f0 x2)) (b0 x2))
% Found ((eq_ref Prop) (f0 x2)) as proof of (((eq Prop) (f0 x2)) (b0 x2))
% Found (fun (x2:(a->(b->Prop)))=> ((eq_ref Prop) (f0 x2))) as proof of (((eq Prop) (f0 x2)) (b0 x2))
% Found (fun (x2:(a->(b->Prop)))=> ((eq_ref Prop) (f0 x2))) as proof of (forall (x:(a->(b->Prop))), (((eq Prop) (f0 x)) (b0 x)))
% Found eq_ref00:=(eq_ref0 (f1 x2)):(((eq Prop) (f1 x2)) (f1 x2))
% Found (eq_ref0 (f1 x2)) as proof of (((eq Prop) (f1 x2)) (f0 x2))
% Found ((eq_ref Prop) (f1 x2)) as proof of (((eq Prop) (f1 x2)) (f0 x2))
% Found ((eq_ref Prop) (f1 x2)) as proof of (((eq Prop) (f1 x2)) (f0 x2))
% Found (fun (x2:(a->(b->Prop)))=> ((eq_ref Prop) (f1 x2))) as proof of (((eq Prop) (f1 x2)) (f0 x2))
% Found (fun (x2:(a->(b->Prop)))=> ((eq_ref Prop) (f1 x2))) as proof of (forall (x:(a->(b->Prop))), (((eq Prop) (f1 x)) (f0 x)))
% Found eq_ref00:=(eq_ref0 (f1 x2)):(((eq Prop) (f1 x2)) (f1 x2))
% Found (eq_ref0 (f1 x2)) as proof of (((eq Prop) (f1 x2)) (f0 x2))
% Found ((eq_ref Prop) (f1 x2)) as proof of (((eq Prop) (f1 x2)) (f0 x2))
% Found ((eq_ref Prop) (f1 x2)) as proof of (((eq Prop) (f1 x2)) (f0 x2))
% Found (fun (x2:(a->(b->Prop)))=> ((eq_ref Prop) (f1 x2))) as proof of (((eq Prop) (f1 x2)) (f0 x2))
% Found (fun (x2:(a->(b->Prop)))=> ((eq_ref Prop) (f1 x2))) as proof of (forall (x:(a->(b->Prop))), (((eq Prop) (f1 x)) (f0 x)))
% Found eq_ref000:=(eq_ref00 (fun (x3:b)=> ((x0 (f Xx)) (g x3)))):(((x0 (f Xx)) (g Xy))->((x0 (f Xx)) (g Xy)))
% Found (eq_ref00 (fun (x3:b)=> ((x0 (f Xx)) (g x3)))) as proof of (((x0 (f Xx)) (g Xy))->((cS Xx) Xy))
% Found ((eq_ref0 Xy) (fun (x3:b)=> ((x0 (f Xx)) (g x3)))) as proof of (((x0 (f Xx)) (g Xy))->((cS Xx) Xy))
% Found (((eq_ref b) Xy) (fun (x3:b)=> ((x0 (f Xx)) (g x3)))) as proof of (((x0 (f Xx)) (g Xy))->((cS Xx) Xy))
% Found (((eq_ref b) Xy) (fun (x3:b)=> ((x0 (f Xx)) (g x3)))) as proof of (((x0 (f Xx)) (g Xy))->((cS Xx) Xy))
% Found (((eq_ref b) Xy) (fun (x3:b)=> ((x0 (f Xx)) (g x3)))) as proof of (((x0 (f Xx)) (g Xy))->((cS Xx) Xy))
% Found eq_ref000:=(eq_ref00 (cS Xx)):(((cS Xx) Xy)->((cS Xx) Xy))
% Found (eq_ref00 (cS Xx)) as proof of (((cS Xx) Xy)->((x0 (f Xx)) (g Xy)))
% Found ((eq_ref0 Xy) (cS Xx)) as proof of (((cS Xx) Xy)->((x0 (f Xx)) (g Xy)))
% Found (((eq_ref b) Xy) (cS Xx)) as proof of (((cS Xx) Xy)->((x0 (f Xx)) (g Xy)))
% Found (((eq_ref b) Xy) (cS Xx)) as proof of (((cS Xx) Xy)->((x0 (f Xx)) (g Xy)))
% Found ((conj00 (((eq_ref b) Xy) (cS Xx))) (((eq_ref b) Xy) (fun (x3:b)=> ((x0 (f Xx)) (g x3))))) as proof of ((and (((cS Xx) Xy)->((x0 (f Xx)) (g Xy)))) (((x0 (f Xx)) (g Xy))->((cS Xx) Xy)))
% Found (((conj0 (((x0 (f Xx)) (g Xy))->((cS Xx) Xy))) (((eq_ref b) Xy) (cS Xx))) (((eq_ref b) Xy) (fun (x3:b)=> ((x0 (f Xx)) (g x3))))) as proof of ((and (((cS Xx) Xy)->((x0 (f Xx)) (g Xy)))) (((x0 (f Xx)) (g Xy))->((cS Xx) Xy)))
% Found ((((conj (((cS Xx) Xy)->((x0 (f Xx)) (g Xy)))) (((x0 (f Xx)) (g Xy))->((cS Xx) Xy))) (((eq_ref b) Xy) (cS Xx))) (((eq_ref b) Xy) (fun (x3:b)=> ((x0 (f Xx)) (g x3))))) as proof of ((and (((cS Xx) Xy)->((x0 (f Xx)) (g Xy)))) (((x0 (f Xx)) (g Xy))->((cS Xx) Xy)))
% Found (fun (x2:(forall (Xx0:b) (Xy0:b), ((((eq b) (g Xx0)) (g Xy0))->(((eq b) Xx0) Xy0))))=> ((((conj (((cS Xx) Xy)->((x0 (f Xx)) (g Xy)))) (((x0 (f Xx)) (g Xy))->((cS Xx) Xy))) (((eq_ref b) Xy) (cS Xx))) (((eq_ref b) Xy) (fun (x3:b)=> ((x0 (f Xx)) (g x3)))))) as proof of ((and (((cS Xx) Xy)->((x0 (f Xx)) (g Xy)))) (((x0 (f Xx)) (g Xy))->((cS Xx) Xy)))
% Found (fun (x1:(forall (Xx0:a) (Xy0:a), ((((eq a) (f Xx0)) (f Xy0))->(((eq a) Xx0) Xy0)))) (x2:(forall (Xx0:b) (Xy0:b), ((((eq b) (g Xx0)) (g Xy0))->(((eq b) Xx0) Xy0))))=> ((((conj (((cS Xx) Xy)->((x0 (f Xx)) (g Xy)))) (((x0 (f Xx)) (g Xy))->((cS Xx) Xy))) (((eq_ref b) Xy) (cS Xx))) (((eq_ref b) Xy) (fun (x3:b)=> ((x0 (f Xx)) (g x3)))))) as proof of ((forall (Xx0:b) (Xy0:b), ((((eq b) (g Xx0)) (g Xy0))->(((eq b) Xx0) Xy0)))->((and (((cS Xx) Xy)->((x0 (f Xx)) (g Xy)))) (((x0 (f Xx)) (g Xy))->((cS Xx) Xy))))
% Found (fun (x1:(forall (Xx0:a) (Xy0:a), ((((eq a) (f Xx0)) (f Xy0))->(((eq a) Xx0) Xy0)))) (x2:(forall (Xx0:b) (Xy0:b), ((((eq b) (g Xx0)) (g Xy0))->(((eq b) Xx0) Xy0))))=> ((((conj (((cS Xx) Xy)->((x0 (f Xx)) (g Xy)))) (((x0 (f Xx)) (g Xy))->((cS Xx) Xy))) (((eq_ref b) Xy) (cS Xx))) (((eq_ref b) Xy) (fun (x3:b)=> ((x0 (f Xx)) (g x3)))))) as proof of ((forall (Xx0:a) (Xy0:a), ((((eq a) (f Xx0)) (f Xy0))->(((eq a) Xx0) Xy0)))->((forall (Xx0:b) (Xy0:b), ((((eq b) (g Xx0)) (g Xy0))->(((eq b) Xx0) Xy0)))->((and (((cS Xx) Xy)->((x0 (f Xx)) (g Xy)))) (((x0 (f Xx)) (g Xy))->((cS Xx) Xy)))))
% Found (and_rect00 (fun (x1:(forall (Xx0:a) (Xy0:a), ((((eq a) (f Xx0)) (f Xy0))->(((eq a) Xx0) Xy0)))) (x2:(forall (Xx0:b) (Xy0:b), ((((eq b) (g Xx0)) (g Xy0))->(((eq b) Xx0) Xy0))))=> ((((conj (((cS Xx) Xy)->((x0 (f Xx)) (g Xy)))) (((x0 (f Xx)) (g Xy))->((cS Xx) Xy))) (((eq_ref b) Xy) (cS Xx))) (((eq_ref b) Xy) (fun (x3:b)=> ((x0 (f Xx)) (g x3))))))) as proof of ((and (((cS Xx) Xy)->((x0 (f Xx)) (g Xy)))) (((x0 (f Xx)) (g Xy))->((cS Xx) Xy)))
% Found ((and_rect0 ((and (((cS Xx) Xy)->((x0 (f Xx)) (g Xy)))) (((x0 (f Xx)) (g Xy))->((cS Xx) Xy)))) (fun (x1:(forall (Xx0:a) (Xy0:a), ((((eq a) (f Xx0)) (f Xy0))->(((eq a) Xx0) Xy0)))) (x2:(forall (Xx0:b) (Xy0:b), ((((eq b) (g Xx0)) (g Xy0))->(((eq b) Xx0) Xy0))))=> ((((conj (((cS Xx) Xy)->((x0 (f Xx)) (g Xy)))) (((x0 (f Xx)) (g Xy))->((cS Xx) Xy))) (((eq_ref b) Xy) (cS Xx))) (((eq_ref b) Xy) (fun (x3:b)=> ((x0 (f Xx)) (g x3))))))) as proof of ((and (((cS Xx) Xy)->((x0 (f Xx)) (g Xy)))) (((x0 (f Xx)) (g Xy))->((cS Xx) Xy)))
% Found (((fun (P0:Type) (x1:((forall (Xx:a) (Xy:a), ((((eq a) (f Xx)) (f Xy))->(((eq a) Xx) Xy)))->((forall (Xx:b) (Xy:b), ((((eq b) (g Xx)) (g Xy))->(((eq b) Xx) Xy)))->P0)))=> (((((and_rect (forall (Xx:a) (Xy:a), ((((eq a) (f Xx)) (f Xy))->(((eq a) Xx) Xy)))) (forall (Xx:b) (Xy:b), ((((eq b) (g Xx)) (g Xy))->(((eq b) Xx) Xy)))) P0) x1) x)) ((and (((cS Xx) Xy)->((x0 (f Xx)) (g Xy)))) (((x0 (f Xx)) (g Xy))->((cS Xx) Xy)))) (fun (x1:(forall (Xx0:a) (Xy0:a), ((((eq a) (f Xx0)) (f Xy0))->(((eq a) Xx0) Xy0)))) (x2:(forall (Xx0:b) (Xy0:b), ((((eq b) (g Xx0)) (g Xy0))->(((eq b) Xx0) Xy0))))=> ((((conj (((cS Xx) Xy)->((x0 (f Xx)) (g Xy)))) (((x0 (f Xx)) (g Xy))->((cS Xx) Xy))) (((eq_ref b) Xy) (cS Xx))) (((eq_ref b) Xy) (fun (x3:b)=> ((x0 (f Xx)) (g x3))))))) as proof of ((and (((cS Xx) Xy)->((x0 (f Xx)) (g Xy)))) (((x0 (f Xx)) (g Xy))->((cS Xx) Xy)))
% Found (((fun (P0:Type) (x1:((forall (Xx:a) (Xy:a), ((((eq a) (f Xx)) (f Xy))->(((eq a) Xx) Xy)))->((forall (Xx:b) (Xy:b), ((((eq b) (g Xx)) (g Xy))->(((eq b) Xx) Xy)))->P0)))=> (((((and_rect (forall (Xx:a) (Xy:a), ((((eq a) (f Xx)) (f Xy))->(((eq a) Xx) Xy)))) (forall (Xx:b) (Xy:b), ((((eq b) (g Xx)) (g Xy))->(((eq b) Xx) Xy)))) P0) x1) x)) ((and (((cS Xx) Xy)->((x0 (f Xx)) (g Xy)))) (((x0 (f Xx)) (g Xy))->((cS Xx) Xy)))) (fun (x1:(forall (Xx0:a) (Xy0:a), ((((eq a) (f Xx0)) (f Xy0))->(((eq a) Xx0) Xy0)))) (x2:(forall (Xx0:b) (Xy0:b), ((((eq b) (g Xx0)) (g Xy0))->(((eq b) Xx0) Xy0))))=> ((((conj (((cS Xx) Xy)->((x0 (f Xx)) (g Xy)))) (((x0 (f Xx)) (g Xy))->((cS Xx) Xy))) (((eq_ref b) Xy) (cS Xx))) (((eq_ref b) Xy) (fun (x3:b)=> ((x0 (f Xx)) (g x3))))))) as proof of ((and (((cS Xx) Xy)->((x0 (f Xx)) (g Xy)))) (((x0 (f Xx)) (g Xy))->((cS Xx) Xy)))
% Found eq_ref00:=(eq_ref0 (f0 x2)):(((eq Prop) (f0 x2)) (f0 x2))
% Found (eq_ref0 (f0 x2)) as proof of (((eq Prop) (f0 x2)) (b0 x2))
% Found ((eq_ref Prop) (f0 x2)) as proof of (((eq Prop) (f0 x2)) (b0 x2))
% Found ((eq_ref Prop) (f0 x2)) as proof of (((eq Prop) (f0 x2)) (b0 x2))
% Found (fun (x2:(a->(b->Prop)))=> ((eq_ref Prop) (f0 x2))) as proof of (((eq Prop) (f0 x2)) (b0 x2))
% Found (fun (x2:(a->(b->Prop)))=> ((eq_ref Prop) (f0 x2))) as proof of (forall (x:(a->(b->Prop))), (((eq Prop) (f0 x)) (b0 x)))
% Found eq_ref00:=(eq_ref0 (f0 x2)):(((eq Prop) (f0 x2)) (f0 x2))
% Found (eq_ref0 (f0 x2)) as proof of (((eq Prop) (f0 x2)) (b0 x2))
% Found ((eq_ref Prop) (f0 x2)) as proof of (((eq Prop) (f0 x2)) (b0 x2))
% Found ((eq_ref Prop) (f0 x2)) as proof of (((eq Prop) (f0 x2)) (b0 x2))
% Found (fun (x2:(a->(b->Prop)))=> ((eq_ref Prop) (f0 x2))) as proof of (((eq Prop) (f0 x2)) (b0 x2))
% Found (fun (x2:(a->(b->Prop)))=> ((eq_ref Prop) (f0 x2))) as proof of (forall (x:(a->(b->Prop))), (((eq Prop) (f0 x)) (b0 x)))
% Found eq_ref00:=(eq_ref0 (f0 x2)):(((eq Prop) (f0 x2)) (f0 x2))
% Found (eq_ref0 (f0 x2)) as proof of (((eq Prop) (f0 x2)) (b0 x2))
% Found ((eq_ref Prop) (f0 x2)) as proof of (((eq Prop) (f0 x2)) (b0 x2))
% Found ((eq_ref Prop) (f0 x2)) as proof of (((eq Prop) (f0 x2)) (b0 x2))
% Found (fun (x2:(a->(b->Prop)))=> ((eq_ref Prop) (f0 x2))) as proof of (((eq Prop) (f0 x2)) (b0 x2))
% Found (fun (x2:(a->(b->Prop)))=> ((eq_ref Prop) (f0 x2))) as proof of (forall (x:(a->(b->Prop))), (((eq Prop) (f0 x)) (b0 x)))
% Found eq_ref00:=(eq_ref0 (f0 x2)):(((eq Prop) (f0 x2)) (f0 x2))
% Found (eq_ref0 (f0 x2)) as proof of (((eq Prop) (f0 x2)) (b0 x2))
% Found ((eq_ref Prop) (f0 x2)) as proof of (((eq Prop) (f0 x2)) (b0 x2))
% Found ((eq_ref Prop) (f0 x2)) as proof of (((eq Prop) (f0 x2)) (b0 x2))
% Found (fun (x2:(a->(b->Prop)))=> ((eq_ref Prop) (f0 x2))) as proof of (((eq Prop) (f0 x2)) (b0 x2))
% Found (fun (x2:(a->(b->Prop)))=> ((eq_ref Prop) (f0 x2))) as proof of (forall (x:(a->(b->Prop))), (((eq Prop) (f0 x)) (b0 x)))
% Found eq_ref000:=(eq_ref00 (fun (x3:b)=> ((x0 (f Xx)) (g x3)))):(((x0 (f Xx)) (g Xy))->((x0 (f Xx)) (g Xy)))
% Found (eq_ref00 (fun (x3:b)=> ((x0 (f Xx)) (g x3)))) as proof of (((x0 (f Xx)) (g Xy))->((cS Xx) Xy))
% Found ((eq_ref0 Xy) (fun (x3:b)=> ((x0 (f Xx)) (g x3)))) as proof of (((x0 (f Xx)) (g Xy))->((cS Xx) Xy))
% Found (((eq_ref b) Xy) (fun (x3:b)=> ((x0 (f Xx)) (g x3)))) as proof of (((x0 (f Xx)) (g Xy))->((cS Xx) Xy))
% Found (((eq_ref b) Xy) (fun (x3:b)=> ((x0 (f Xx)) (g x3)))) as proof of (((x0 (f Xx)) (g Xy))->((cS Xx) Xy))
% Found (((eq_ref b) Xy) (fun (x3:b)=> ((x0 (f Xx)) (g x3)))) as proof of (((x0 (f Xx)) (g Xy))->((cS Xx) Xy))
% Found eq_ref000:=(eq_ref00 (cS Xx)):(((cS Xx) Xy)->((cS Xx) Xy))
% Found (eq_ref00 (cS Xx)) as proof of (((cS Xx) Xy)->((x0 (f Xx)) (g Xy)))
% Found ((eq_ref0 Xy) (cS Xx)) as proof of (((cS Xx) Xy)->((x0 (f Xx)) (g Xy)))
% Found (((eq_ref b) Xy) (cS Xx)) as proof of (((cS Xx) Xy)->((x0 (f Xx)) (g Xy)))
% Found (((eq_ref b) Xy) (cS Xx)) as proof of (((cS Xx) Xy)->((x0 (f Xx)) (g Xy)))
% Found ((conj00 (((eq_ref b) Xy) (cS Xx))) (((eq_ref b) Xy) (fun (x3:b)=> ((x0 (f Xx)) (g x3))))) as proof of ((and (((cS Xx) Xy)->((x0 (f Xx)) (g Xy)))) (((x0 (f Xx)) (g Xy))->((cS Xx) Xy)))
% Found (((conj0 (((x0 (f Xx)) (g Xy))->((cS Xx) Xy))) (((eq_ref b) Xy) (cS Xx))) (((eq_ref b) Xy) (fun (x3:b)=> ((x0 (f Xx)) (g x3))))) as proof of ((and (((cS Xx) Xy)->((x0 (f Xx)) (g Xy)))) (((x0 (f Xx)) (g Xy))->((cS Xx) Xy)))
% Found ((((conj (((cS Xx) Xy)->((x0 (f Xx)) (g Xy)))) (((x0 (f Xx)) (g Xy))->((cS Xx) Xy))) (((eq_ref b) Xy) (cS Xx))) (((eq_ref b) Xy) (fun (x3:b)=> ((x0 (f Xx)) (g x3))))) as proof of ((and (((cS Xx) Xy)->((x0 (f Xx)) (g Xy)))) (((x0 (f Xx)) (g Xy))->((cS Xx) Xy)))
% Found ((((conj (((cS Xx) Xy)->((x0 (f Xx)) (g Xy)))) (((x0 (f Xx)) (g Xy))->((cS Xx) Xy))) (((eq_ref b) Xy) (cS Xx))) (((eq_ref b) Xy) (fun (x3:b)=> ((x0 (f Xx)) (g x3))))) as proof of ((and (((cS Xx) Xy)->((x0 (f Xx)) (g Xy)))) (((x0 (f Xx)) (g Xy))->((cS Xx) Xy)))
% Found eq_ref000:=(eq_ref00 (fun (x3:b)=> ((x0 (f Xx)) (g x3)))):(((x0 (f Xx)) (g Xy))->((x0 (f Xx)) (g Xy)))
% Found (eq_ref00 (fun (x3:b)=> ((x0 (f Xx)) (g x3)))) as proof of (((x0 (f Xx)) (g Xy))->((cS Xx) Xy))
% Found ((eq_ref0 Xy) (fun (x3:b)=> ((x0 (f Xx)) (g x3)))) as proof of (((x0 (f Xx)) (g Xy))->((cS Xx) Xy))
% Found (((eq_ref b) Xy) (fun (x3:b)=> ((x0 (f Xx)) (g x3)))) as proof of (((x0 (f Xx)) (g Xy))->((cS Xx) Xy))
% Found (((eq_ref b) Xy) (fun (x3:b)=> ((x0 (f Xx)) (g x3)))) as proof of (((x0 (f Xx)) (g Xy))->((cS Xx) Xy))
% Found (((eq_ref b) Xy) (fun (x3:b)=> ((x0 (f Xx)) (g x3)))) as proof of (((x0 (f Xx)) (g Xy))->((cS Xx) Xy))
% Found eq_ref000:=(eq_ref00 (cS Xx)):(((cS Xx) Xy)->((cS Xx) Xy))
% Found (eq_ref00 (cS Xx)) as proof of (((cS Xx) Xy)->((x0 (f Xx)) (g Xy)))
% Found ((eq_ref0 Xy) (cS Xx)) as proof of (((cS Xx) Xy)->((x0 (f Xx)) (g Xy)))
% Found (((eq_ref b) Xy) (cS Xx)) as proof of (((cS Xx) Xy)->((x0 (f Xx)) (g Xy)))
% Found (((eq_ref b) Xy) (cS Xx)) as proof of (((cS Xx) Xy)->((x0 (f Xx)) (g Xy)))
% Found ((conj00 (((eq_ref b) Xy) (cS Xx))) (((eq_ref b) Xy) (fun (x3:b)=> ((x0 (f Xx)) (g x3))))) as proof of ((and (((cS Xx) Xy)->((x0 (f Xx)) (g Xy)))) (((x0 (f Xx)) (g Xy))->((cS Xx) Xy)))
% Found (((conj0 (((x0 (f Xx)) (g Xy))->((cS Xx) Xy))) (((eq_ref b) Xy) (cS Xx))) (((eq_ref b) Xy) (fun (x3:b)=> ((x0 (f Xx)) (g x3))))) as proof of ((and (((cS Xx) Xy)->((x0 (f Xx)) (g Xy)))) (((x0 (f Xx)) (g Xy))->((cS Xx) Xy)))
% Found ((((conj (((cS Xx) Xy)->((x0 (f Xx)) (g Xy)))) (((x0 (f Xx)) (g Xy))->((cS Xx) Xy))) (((eq_ref b) Xy) (cS Xx))) (((eq_ref b) Xy) (fun (x3:b)=> ((x0 (f Xx)) (g x3))))) as proof of ((and (((cS Xx) Xy)->((x0 (f Xx)) (g Xy)))) (((x0 (f Xx)) (g Xy))->((cS Xx) Xy)))
% Found ((((conj (((cS Xx) Xy)->((x0 (f Xx)) (g Xy)))) (((x0 (f Xx)) (g Xy))->((cS Xx) Xy))) (((eq_ref b) Xy) (cS Xx))) (((eq_ref b) Xy) (fun (x3:b)=> ((x0 (f Xx)) (g x3))))) as proof of ((and (((cS Xx) Xy)->((x0 (f Xx)) (g Xy)))) (((x0 (f Xx)) (g Xy))->((cS Xx) Xy)))
% Found eq_ref00:=(eq_ref0 (f0 x2)):(((eq Prop) (f0 x2)) (f0 x2))
% Found (eq_ref0 (f0 x2)) as proof of (((eq Prop) (f0 x2)) (b0 x2))
% Found ((eq_ref Prop) (f0 x2)) as proof of (((eq Prop) (f0 x2)) (b0 x2))
% Found ((eq_ref Prop) (f0 x2)) as proof of (((eq Prop) (f0 x2)) (b0 x2))
% Found (fun (x2:(a->(b->Prop)))=> ((eq_ref Prop) (f0 x2))) as proof of (((eq Prop) (f0 x2)) (b0 x2))
% Found (fun (x2:(a->(b->Prop)))=> ((eq_ref Prop) (f0 x2))) as proof of (forall (x:(a->(b->Prop))), (((eq Prop) (f0 x)) (b0 x)))
% Found eq_ref00:=(eq_ref0 (f0 x2)):(((eq Prop) (f0 x2)) (f0 x2))
% Found (eq_ref0 (f0 x2)) as proof of (((eq Prop) (f0 x2)) (b0 x2))
% Found ((eq_ref Prop) (f0 x2)) as proof of (((eq Prop) (f0 x2)) (b0 x2))
% Found ((eq_ref Prop) (f0 x2)) as proof of (((eq Prop) (f0 x2)) (b0 x2))
% Found (fun (x2:(a->(b->Prop)))=> ((eq_ref Prop) (f0 x2))) as proof of (((eq Prop) (f0 x2)) (b0 x2))
% Found (fun (x2:(a->(b->Prop)))=> ((eq_ref Prop) (f0 x2))) as proof of (forall (x:(a->(b->Prop))), (((eq Prop) (f0 x)) (b0 x)))
% Found eq_ref000:=(eq_ref00 (fun (x3:b)=> ((x0 (f Xx)) (g x3)))):(((x0 (f Xx)) (g Xy))->((x0 (f Xx)) (g Xy)))
% Found (eq_ref00 (fun (x3:b)=> ((x0 (f Xx)) (g x3)))) as proof of (((x0 (f Xx)) (g Xy))->((cS Xx) Xy))
% Found ((eq_ref0 Xy) (fun (x3:b)=> ((x0 (f Xx)) (g x3)))) as proof of (((x0 (f Xx)) (g Xy))->((cS Xx) Xy))
% Found (((eq_ref b) Xy) (fun (x3:b)=> ((x0 (f Xx)) (g x3)))) as proof of (((x0 (f Xx)) (g Xy))->((cS Xx) Xy))
% Found (((eq_ref b) Xy) (fun (x3:b)=> ((x0 (f Xx)) (g x3)))) as proof of (((x0 (f Xx)) (g Xy))->((cS Xx) Xy))
% Found (((eq_ref b) Xy) (fun (x3:b)=> ((x0 (f Xx)) (g x3)))) as proof of (((x0 (f Xx)) (g Xy))->((cS Xx) Xy))
% Found eq_ref000:=(eq_ref00 (cS Xx)):(((cS Xx) Xy)->((cS Xx) Xy))
% Found (eq_ref00 (cS Xx)) as proof of (((cS Xx) Xy)->((x0 (f Xx)) (g Xy)))
% Found ((eq_ref0 Xy) (cS Xx)) as proof of (((cS Xx) Xy)->((x0 (f Xx)) (g Xy)))
% Found (((eq_ref b) Xy) (cS Xx)) as proof of (((cS Xx) Xy)->((x0 (f Xx)) (g Xy)))
% Found (((eq_ref b) Xy) (cS Xx)) as proof of (((cS Xx) Xy)->((x0 (f Xx)) (g Xy)))
% Found ((conj00 (((eq_ref b) Xy) (cS Xx))) (((eq_ref b) Xy) (fun (x3:b)=> ((x0 (f Xx)) (g x3))))) as proof of ((and (((cS Xx) Xy)->((x0 (f Xx)) (g Xy)))) (((x0 (f Xx)) (g Xy))->((cS Xx) Xy)))
% Found (((conj0 (((x0 (f Xx)) (g Xy))->((cS Xx) Xy))) (((eq_ref b) Xy) (cS Xx))) (((eq_ref b) Xy) (fun (x3:b)=> ((x0 (f Xx)) (g x3))))) as proof of ((and (((cS Xx) Xy)->((x0 (f Xx)) (g Xy)))) (((x0 (f Xx)) (g Xy))->((cS Xx) Xy)))
% Found ((((conj (((cS Xx) Xy)->((x0 (f Xx)) (g Xy)))) (((x0 (f Xx)) (g Xy))->((cS Xx) Xy))) (((eq_ref b) Xy) (cS Xx))) (((eq_ref b) Xy) (fun (x3:b)=> ((x0 (f Xx)) (g x3))))) as proof of ((and (((cS Xx) Xy)->((x0 (f Xx)) (g Xy)))) (((x0 (f Xx)) (g Xy))->((cS Xx) Xy)))
% Found (fun (x2:(forall (Xx0:b) (Xy0:b), ((((eq b) (g Xx0)) (g Xy0))->(((eq b) Xx0) Xy0))))=> ((((conj (((cS Xx) Xy)->((x0 (f Xx)) (g Xy)))) (((x0 (f Xx)) (g Xy))->((cS Xx) Xy))) (((eq_ref b) Xy) (cS Xx))) (((eq_ref b) Xy) (fun (x3:b)=> ((x0 (f Xx)) (g x3)))))) as proof of ((and (((cS Xx) Xy)->((x0 (f Xx)) (g Xy)))) (((x0 (f Xx)) (g Xy))->((cS Xx) Xy)))
% Found (fun (x1:(forall (Xx0:a) (Xy0:a), ((((eq a) (f Xx0)) (f Xy0))->(((eq a) Xx0) Xy0)))) (x2:(forall (Xx0:b) (Xy0:b), ((((eq b) (g Xx0)) (g Xy0))->(((eq b) Xx0) Xy0))))=> ((((conj (((cS Xx) Xy)->((x0 (f Xx)) (g Xy)))) (((x0 (f Xx)) (g Xy))->((cS Xx) Xy))) (((eq_ref b) Xy) (cS Xx))) (((eq_ref b) Xy) (fun (x3:b)=> ((x0 (f Xx)) (g x3)))))) as proof of ((forall (Xx0:b) (Xy0:b), ((((eq b) (g Xx0)) (g Xy0))->(((eq b) Xx0) Xy0)))->((and (((cS Xx) Xy)->((x0 (f Xx)) (g Xy)))) (((x0 (f Xx)) (g Xy))->((cS Xx) Xy))))
% Found (fun (x1:(forall (Xx0:a) (Xy0:a), ((((eq a) (f Xx0)) (f Xy0))->(((eq a) Xx0) Xy0)))) (x2:(forall (Xx0:b) (Xy0:b), ((((eq b) (g Xx0)) (g Xy0))->(((eq b) Xx0) Xy0))))=> ((((conj (((cS Xx) Xy)->((x0 (f Xx)) (g Xy)))) (((x0 (f Xx)) (g Xy))->((cS Xx) Xy))) (((eq_ref b) Xy) (cS Xx))) (((eq_ref b) Xy) (fun (x3:b)=> ((x0 (f Xx)) (g x3)))))) as proof of ((forall (Xx0:a) (Xy0:a), ((((eq a) (f Xx0)) (f Xy0))->(((eq a) Xx0) Xy0)))->((forall (Xx0:b) (Xy0:b), ((((eq b) (g Xx0)) (g Xy0))->(((eq b) Xx0) Xy0)))->((and (((cS Xx) Xy)->((x0 (f Xx)) (g Xy)))) (((x0 (f Xx)) (g Xy))->((cS Xx) Xy)))))
% Found (and_rect00 (fun (x1:(forall (Xx0:a) (Xy0:a), ((((eq a) (f Xx0)) (f Xy0))->(((eq a) Xx0) Xy0)))) (x2:(forall (Xx0:b) (Xy0:b), ((((eq b) (g Xx0)) (g Xy0))->(((eq b) Xx0) Xy0))))=> ((((conj (((cS Xx) Xy)->((x0 (f Xx)) (g Xy)))) (((x0 (f Xx)) (g Xy))->((cS Xx) Xy))) (((eq_ref b) Xy) (cS Xx))) (((eq_ref b) Xy) (fun (x3:b)=> ((x0 (f Xx)) (g x3))))))) as proof of ((and (((cS Xx) Xy)->((x0 (f Xx)) (g Xy)))) (((x0 (f Xx)) (g Xy))->((cS Xx) Xy)))
% Found ((and_rect0 ((and (((cS Xx) Xy)->((x0 (f Xx)) (g Xy)))) (((x0 (f Xx)) (g Xy))->((cS Xx) Xy)))) (fun (x1:(forall (Xx0:a) (Xy0:a), ((((eq a) (f Xx0)) (f Xy0))->(((eq a) Xx0) Xy0)))) (x2:(forall (Xx0:b) (Xy0:b), ((((eq b) (g Xx0)) (g Xy0))->(((eq b) Xx0) Xy0))))=> ((((conj (((cS Xx) Xy)->((x0 (f Xx)) (g Xy)))) (((x0 (f Xx)) (g Xy))->((cS Xx) Xy))) (((eq_ref b) Xy) (cS Xx))) (((eq_ref b) Xy) (fun (x3:b)=> ((x0 (f Xx)) (g x3))))))) as proof of ((and (((cS Xx) Xy)->((x0 (f Xx)) (g Xy)))) (((x0 (f Xx)) (g Xy))->((cS Xx) Xy)))
% Found (((fun (P0:Type) (x1:((forall (Xx:a) (Xy:a), ((((eq a) (f Xx)) (f Xy))->(((eq a) Xx) Xy)))->((forall (Xx:b) (Xy:b), ((((eq b) (g Xx)) (g Xy))->(((eq b) Xx) Xy)))->P0)))=> (((((and_rect (forall (Xx:a) (Xy:a), ((((eq a) (f Xx)) (f Xy))->(((eq a) Xx) Xy)))) (forall (Xx:b) (Xy:b), ((((eq b) (g Xx)) (g Xy))->(((eq b) Xx) Xy)))) P0) x1) x)) ((and (((cS Xx) Xy)->((x0 (f Xx)) (g Xy)))) (((x0 (f Xx)) (g Xy))->((cS Xx) Xy)))) (fun (x1:(forall (Xx0:a) (Xy0:a), ((((eq a) (f Xx0)) (f Xy0))->(((eq a) Xx0) Xy0)))) (x2:(forall (Xx0:b) (Xy0:b), ((((eq b) (g Xx0)) (g Xy0))->(((eq b) Xx0) Xy0))))=> ((((conj (((cS Xx) Xy)->((x0 (f Xx)) (g Xy)))) (((x0 (f Xx)) (g Xy))->((cS Xx) Xy))) (((eq_ref b) Xy) (cS Xx))) (((eq_ref b) Xy) (fun (x3:b)=> ((x0 (f Xx)) (g x3))))))) as proof of ((and (((cS Xx) Xy)->((x0 (f Xx)) (g Xy)))) (((x0 (f Xx)) (g Xy))->((cS Xx) Xy)))
% Found (((fun (P0:Type) (x1:((forall (Xx:a) (Xy:a), ((((eq a) (f Xx)) (f Xy))->(((eq a) Xx) Xy)))->((forall (Xx:b) (Xy:b), ((((eq b) (g Xx)) (g Xy))->(((eq b) Xx) Xy)))->P0)))=> (((((and_rect (forall (Xx:a) (Xy:a), ((((eq a) (f Xx)) (f Xy))->(((eq a) Xx) Xy)))) (forall (Xx:b) (Xy:b), ((((eq b) (g Xx)) (g Xy))->(((eq b) Xx) Xy)))) P0) x1) x)) ((and (((cS Xx) Xy)->((x0 (f Xx)) (g Xy)))) (((x0 (f Xx)) (g Xy))->((cS Xx) Xy)))) (fun (x1:(forall (Xx0:a) (Xy0:a), ((((eq a) (f Xx0)) (f Xy0))->(((eq a) Xx0) Xy0)))) (x2:(forall (Xx0:b) (Xy0:b), ((((eq b) (g Xx0)) (g Xy0))->(((eq b) Xx0) Xy0))))=> ((((conj (((cS Xx) Xy)->((x0 (f Xx)) (g Xy)))) (((x0 (f Xx)) (g Xy))->((cS Xx) Xy))) (((eq_ref b) Xy) (cS Xx))) (((eq_ref b) Xy) (fun (x3:b)=> ((x0 (f Xx)) (g x3))))))) as proof of ((and (((cS Xx) Xy)->((x0 (f Xx)) (g Xy)))) (((x0 (f Xx)) (g Xy))->((cS Xx) Xy)))
% Found eq_ref000:=(eq_ref00 (fun (x3:b)=> ((x0 (f Xx)) (g x3)))):(((x0 (f Xx)) (g Xy))->((x0 (f Xx)) (g Xy)))
% Found (eq_ref00 (fun (x3:b)=> ((x0 (f Xx)) (g x3)))) as proof of (((x0 (f Xx)) (g Xy))->((cS Xx) Xy))
% Found ((eq_ref0 Xy) (fun (x3:b)=> ((x0 (f Xx)) (g x3)))) as proof of (((x0 (f Xx)) (g Xy))->((cS Xx) Xy))
% Found (((eq_ref b) Xy) (fun (x3:b)=> ((x0 (f Xx)) (g x3)))) as proof of (((x0 (f Xx)) (g Xy))->((cS Xx) Xy))
% Found (((eq_ref b) Xy) (fun (x3:b)=> ((x0 (f Xx)) (g x3)))) as proof of (((x0 (f Xx)) (g Xy))->((cS Xx) Xy))
% Found (((eq_ref b) Xy) (fun (x3:b)=> ((x0 (f Xx)) (g x3)))) as proof of (((x0 (f Xx)) (g Xy))->((cS Xx) Xy))
% Found eq_ref000:=(eq_ref00 (cS Xx)):(((cS Xx) Xy)->((cS Xx) Xy))
% Found (eq_ref00 (cS Xx)) as proof of (((cS Xx) Xy)->((x0 (f Xx)) (g Xy)))
% Found ((eq_ref0 Xy) (cS Xx)) as proof of (((cS Xx) Xy)->((x0 (f Xx)) (g Xy)))
% Found (((eq_ref b) Xy) (cS Xx)) as proof of (((cS Xx) Xy)->((x0 (f Xx)) (g Xy)))
% Found (((eq_ref b) Xy) (cS Xx)) as proof of (((cS Xx) Xy)->((x0 (f Xx)) (g Xy)))
% Found ((conj00 (((eq_ref b) Xy) (cS Xx))) (((eq_ref b) Xy) (fun (x3:b)=> ((x0 (f Xx)) (g x3))))) as proof of ((and (((cS Xx) Xy)->((x0 (f Xx)) (g Xy)))) (((x0 (f Xx)) (g Xy))->((cS Xx) Xy)))
% Found (((conj0 (((x0 (f Xx)) (g Xy))->((cS Xx) Xy))) (((eq_ref b) Xy) (cS Xx))) (((eq_ref b) Xy) (fun (x3:b)=> ((x0 (f Xx)) (g x3))))) as proof of ((and (((cS Xx) Xy)->((x0 (f Xx)) (g Xy)))) (((x0 (f Xx)) (g Xy))->((cS Xx) Xy)))
% Found ((((conj (((cS Xx) Xy)->((x0 (f Xx)) (g Xy)))) (((x0 (f Xx)) (g Xy))->((cS Xx) Xy))) (((eq_ref b) Xy) (cS Xx))) (((eq_ref b) Xy) (fun (x3:b)=> ((x0 (f Xx)) (g x3))))) as proof of ((and (((cS Xx) Xy)->((x0 (f Xx)) (g Xy)))) (((x0 (f Xx)) (g Xy))->((cS Xx) Xy)))
% Found (fun (x2:(forall (Xx0:b) (Xy0:b), ((((eq b) (g Xx0)) (g Xy0))->(((eq b) Xx0) Xy0))))=> ((((conj (((cS Xx) Xy)->((x0 (f Xx)) (g Xy)))) (((x0 (f Xx)) (g Xy))->((cS Xx) Xy))) (((eq_ref b) Xy) (cS Xx))) (((eq_ref b) Xy) (fun (x3:b)=> ((x0 (f Xx)) (g x3)))))) as proof of ((and (((cS Xx) Xy)->((x0 (f Xx)) (g Xy)))) (((x0 (f Xx)) (g Xy))->((cS Xx) Xy)))
% Found (fun (x1:(forall (Xx0:a) (Xy0:a), ((((eq a) (f Xx0)) (f Xy0))->(((eq a) Xx0) Xy0)))) (x2:(forall (Xx0:b) (Xy0:b), ((((eq b) (g Xx0)) (g Xy0))->(((eq b) Xx0) Xy0))))=> ((((conj (((cS Xx) Xy)->((x0 (f Xx)) (g Xy)))) (((x0 (f Xx)) (g Xy))->((cS Xx) Xy))) (((eq_ref b) Xy) (cS Xx))) (((eq_ref b) Xy) (fun (x3:b)=> ((x0 (f Xx)) (g x3)))))) as proof of ((forall (Xx0:b) (Xy0:b), ((((eq b) (g Xx0)) (g Xy0))->(((eq b) Xx0) Xy0)))->((and (((cS Xx) Xy)->((x0 (f Xx)) (g Xy)))) (((x0 (f Xx)) (g Xy))->((cS Xx) Xy))))
% Found (fun (x1:(forall (Xx0:a) (Xy0:a), ((((eq a) (f Xx0)) (f Xy0))->(((eq a) Xx0) Xy0)))) (x2:(forall (Xx0:b) (Xy0:b), ((((eq b) (g Xx0)) (g Xy0))->(((eq b) Xx0) Xy0))))=> ((((conj (((cS Xx) Xy)->((x0 (f Xx)) (g Xy)))) (((x0 (f Xx)) (g Xy))->((cS Xx) Xy))) (((eq_ref b) Xy) (cS Xx))) (((eq_ref b) Xy) (fun (x3:b)=> ((x0 (f Xx)) (g x3)))))) as proof of ((forall (Xx0:a) (Xy0:a), ((((eq a) (f Xx0)) (f Xy0))->(((eq a) Xx0) Xy0)))->((forall (Xx0:b) (Xy0:b), ((((eq b) (g Xx0)) (g Xy0))->(((eq b) Xx0) Xy0)))->((and (((cS Xx) Xy)->((x0 (f Xx)) (g Xy)))) (((x0 (f Xx)) (g Xy))->((cS Xx) Xy)))))
% Found (and_rect00 (fun (x1:(forall (Xx0:a) (Xy0:a), ((((eq a) (f Xx0)) (f Xy0))->(((eq a) Xx0) Xy0)))) (x2:(forall (Xx0:b) (Xy0:b), ((((eq b) (g Xx0)) (g Xy0))->(((eq b) Xx0) Xy0))))=> ((((conj (((cS Xx) Xy)->((x0 (f Xx)) (g Xy)))) (((x0 (f Xx)) (g Xy))->((cS Xx) Xy))) (((eq_ref b) Xy) (cS Xx))) (((eq_ref b) Xy) (fun (x3:b)=> ((x0 (f Xx)) (g x3))))))) as proof of ((and (((cS Xx) Xy)->((x0 (f Xx)) (g Xy)))) (((x0 (f Xx)) (g Xy))->((cS Xx) Xy)))
% Found ((and_rect0 ((and (((cS Xx) Xy)->((x0 (f Xx)) (g Xy)))) (((x0 (f Xx)) (g Xy))->((cS Xx) Xy)))) (fun (x1:(forall (Xx0:a) (Xy0:a), ((((eq a) (f Xx0)) (f Xy0))->(((eq a) Xx0) Xy0)))) (x2:(forall (Xx0:b) (Xy0:b), ((((eq b) (g Xx0)) (g Xy0))->(((eq b) Xx0) Xy0))))=> ((((conj (((cS Xx) Xy)->((x0 (f Xx)) (g Xy)))) (((x0 (f Xx)) (g Xy))->((cS Xx) Xy))) (((eq_ref b) Xy) (cS Xx))) (((eq_ref b) Xy) (fun (x3:b)=> ((x0 (f Xx)) (g x3))))))) as proof of ((and (((cS Xx) Xy)->((x0 (f Xx)) (g Xy)))) (((x0 (f Xx)) (g Xy))->((cS Xx) Xy)))
% Found (((fun (P0:Type) (x1:((forall (Xx:a) (Xy:a), ((((eq a) (f Xx)) (f Xy))->(((eq a) Xx) Xy)))->((forall (Xx:b) (Xy:b), ((((eq b) (g Xx)) (g Xy))->(((eq b) Xx) Xy)))->P0)))=> (((((and_rect (forall (Xx:a) (Xy:a), ((((eq a) (f Xx)) (f Xy))->(((eq a) Xx) Xy)))) (forall (Xx:b) (Xy:b), ((((eq b) (g Xx)) (g Xy))->(((eq b) Xx) Xy)))) P0) x1) x)) ((and (((cS Xx) Xy)->((x0 (f Xx)) (g Xy)))) (((x0 (f Xx)) (g Xy))->((cS Xx) Xy)))) (fun (x1:(forall (Xx0:a) (Xy0:a), ((((eq a) (f Xx0)) (f Xy0))->(((eq a) Xx0) Xy0)))) (x2:(forall (Xx0:b) (Xy0:b), ((((eq b) (g Xx0)) (g Xy0))->(((eq b) Xx0) Xy0))))=> ((((conj (((cS Xx) Xy)->((x0 (f Xx)) (g Xy)))) (((x0 (f Xx)) (g Xy))->((cS Xx) Xy))) (((eq_ref b) Xy) (cS Xx))) (((eq_ref b) Xy) (fun (x3:b)=> ((x0 (f Xx)) (g x3))))))) as proof of ((and (((cS Xx) Xy)->((x0 (f Xx)) (g Xy)))) (((x0 (f Xx)) (g Xy))->((cS Xx) Xy)))
% Found (((fun (P0:Type) (x1:((forall (Xx:a) (Xy:a), ((((eq a) (f Xx)) (f Xy))->(((eq a) Xx) Xy)))->((forall (Xx:b) (Xy:b), ((((eq b) (g Xx)) (g Xy))->(((eq b) Xx) Xy)))->P0)))=> (((((and_rect (forall (Xx:a) (Xy:a), ((((eq a) (f Xx)) (f Xy))->(((eq a) Xx) Xy)))) (forall (Xx:b) (Xy:b), ((((eq b) (g Xx)) (g Xy))->(((eq b) Xx) Xy)))) P0) x1) x)) ((and (((cS Xx) Xy)->((x0 (f Xx)) (g Xy)))) (((x0 (f Xx)) (g Xy))->((cS Xx) Xy)))) (fun (x1:(forall (Xx0:a) (Xy0:a), ((((eq a) (f Xx0)) (f Xy0))->(((eq a) Xx0) Xy0)))) (x2:(forall (Xx0:b) (Xy0:b), ((((eq b) (g Xx0)) (g Xy0))->(((eq b) Xx0) Xy0))))=> ((((conj (((cS Xx) Xy)->((x0 (f Xx)) (g Xy)))) (((x0 (f Xx)) (g Xy))->((cS Xx) Xy))) (((eq_ref b) Xy) (cS Xx))) (((eq_ref b) Xy) (fun (x3:b)=> ((x0 (f Xx)) (g x3))))))) as proof of ((and (((cS Xx) Xy)->((x0 (f Xx)) (g Xy)))) (((x0 (f Xx)) (g Xy))->((cS Xx) Xy)))
% Found eq_ref00:=(eq_ref0 a0):(((eq Prop) a0) a0)
% Found (eq_ref0 a0) as proof of (((eq Prop) a0) b0)
% Found ((eq_ref Prop) a0) as proof of (((eq Prop) a0) b0)
% Found ((eq_ref Prop) a0) as proof of (((eq Prop) a0) b0)
% Found ((eq_ref Prop) a0) as proof of (((eq Prop) a0) b0)
% Found eq_ref00:=(eq_ref0 b0):(((eq Prop) b0) b0)
% Found (eq_ref0 b0) as proof of (((eq Prop) b0) (((x0 (f Xx)) (g Xy))->((cS Xx) Xy)))
% Found ((eq_ref Prop) b0) as proof of (((eq Prop) b0) (((x0 (f Xx)) (g Xy))->((cS Xx) Xy)))
% Found ((eq_ref Prop) b0) as proof of (((eq Prop) b0) (((x0 (f Xx)) (g Xy))->((cS Xx) Xy)))
% Found ((eq_ref Prop) b0) as proof of (((eq Prop) b0) (((x0 (f Xx)) (g Xy))->((cS Xx) Xy)))
% Found eq_ref00:=(eq_ref0 (f1 x2)):(((eq Prop) (f1 x2)) (f1 x2))
% Found (eq_ref0 (f1 x2)) as proof of (((eq Prop) (f1 x2)) (f0 x2))
% Found ((eq_ref Prop) (f1 x2)) as proof of (((eq Prop) (f1 x2)) (f0 x2))
% Found ((eq_ref Prop) (f1 x2)) as proof of (((eq Prop) (f1 x2)) (f0 x2))
% Found (fun (x2:(a->(b->Prop)))=> ((eq_ref Prop) (f1 x2))) as proof of (((eq Prop) (f1 x2)) (f0 x2))
% Found (fun (x2:(a->(b->Prop)))=> ((eq_ref Prop) (f1 x2))) as proof of (forall (x:(a->(b->Prop))), (((eq Prop) (f1 x)) (f0 x)))
% Found eq_ref00:=(eq_ref0 (f1 x2)):(((eq Prop) (f1 x2)) (f1 x2))
% Found (eq_ref0 (f1 x2)) as proof of (((eq Prop) (f1 x2)) (f0 x2))
% Found ((eq_ref Prop) (f1 x2)) as proof of (((eq Prop) (f1 x2)) (f0 x2))
% Found ((eq_ref Prop) (f1 x2)) as proof of (((eq Prop) (f1 x2)) (f0 x2))
% Found (fun (x2:(a->(b->Prop)))=> ((eq_ref Prop) (f1 x2))) as proof of (((eq Prop) (f1 x2)) (f0 x2))
% Found (fun (x2:(a->(b->Prop)))=> ((eq_ref Prop) (f1 x2))) as proof of (forall (x:(a->(b->Prop))), (((eq Prop) (f1 x)) (f0 x)))
% Found eq_ref00:=(eq_ref0 (f1 x2)):(((eq Prop) (f1 x2)) (f1 x2))
% Found (eq_ref0 (f1 x2)) as proof of (((eq Prop) (f1 x2)) (f0 x2))
% Found ((eq_ref Prop) (f1 x2)) as proof of (((eq Prop) (f1 x2)) (f0 x2))
% Found ((eq_ref Prop) (f1 x2)) as proof of (((eq Prop) (f1 x2)) (f0 x2))
% Found (fun (x2:(a->(b->Prop)))=> ((eq_ref Prop) (f1 x2))) as proof of (((eq Prop) (f1 x2)) (f0 x2))
% Found (fun (x2:(a->(b->Prop)))=> ((eq_ref Prop) (f1 x2))) as proof of (forall (x:(a->(b->Prop))), (((eq Prop) (f1 x)) (f0 x)))
% Found eq_ref00:=(eq_ref0 (f1 x2)):(((eq Prop) (f1 x2)) (f1 x2))
% Found (eq_ref0 (f1 x2)) as proof of (((eq Prop) (f1 x2)) (f0 x2))
% Found ((eq_ref Prop) (f1 x2)) as proof of (((eq Prop) (f1 x2)) (f0 x2))
% Found ((eq_ref Prop) (f1 x2)) as proof of (((eq Prop) (f1 x2)) (f0 x2))
% Found (fun (x2:(a->(b->Prop)))=> ((eq_ref Prop) (f1 x2))) as proof of (((eq Prop) (f1 x2)) (f0 x2))
% Found (fun (x2:(a->(b->Prop)))=> ((eq_ref Prop) (f1 x2))) as proof of (forall (x:(a->(b->Prop))), (((eq Prop) (f1 x)) (f0 x)))
% Found eq_ref000:=(eq_ref00 (fun (x3:b)=> ((x2 (f Xx)) (g x3)))):(((x2 (f Xx)) (g Xy))->((x2 (f Xx)) (g Xy)))
% Found (eq_ref00 (fun (x3:b)=> ((x2 (f Xx)) (g x3)))) as proof of (((x2 (f Xx)) (g Xy))->((cS Xx) Xy))
% Found ((eq_ref0 Xy) (fun (x3:b)=> ((x2 (f Xx)) (g x3)))) as proof of (((x2 (f Xx)) (g Xy))->((cS Xx) Xy))
% Found (((eq_ref b) Xy) (fun (x3:b)=> ((x2 (f Xx)) (g x3)))) as proof of (((x2 (f Xx)) (g Xy))->((cS Xx) Xy))
% Found (((eq_ref b) Xy) (fun (x3:b)=> ((x2 (f Xx)) (g x3)))) as proof of (((x2 (f Xx)) (g Xy))->((cS Xx) Xy))
% Found (((eq_ref b) Xy) (fun (x3:b)=> ((x2 (f Xx)) (g x3)))) as proof of (((x2 (f Xx)) (g Xy))->((cS Xx) Xy))
% Found eq_ref000:=(eq_ref00 (cS Xx)):(((cS Xx) Xy)->((cS Xx) Xy))
% Found (eq_ref00 (cS Xx)) as proof of (((cS Xx) Xy)->((x2 (f Xx)) (g Xy)))
% Found ((eq_ref0 Xy) (cS Xx)) as proof of (((cS Xx) Xy)->((x2 (f Xx)) (g Xy)))
% Found (((eq_ref b) Xy) (cS Xx)) as proof of (((cS Xx) Xy)->((x2 (f Xx)) (g Xy)))
% Found (((eq_ref b) Xy) (cS Xx)) as proof of (((cS Xx) Xy)->((x2 (f Xx)) (g Xy)))
% Found ((conj00 (((eq_ref b) Xy) (cS Xx))) (((eq_ref b) Xy) (fun (x3:b)=> ((x2 (f Xx)) (g x3))))) as proof of ((iff ((cS Xx) Xy)) ((x2 (f Xx)) (g Xy)))
% Found (((conj0 (((x2 (f Xx)) (g Xy))->((cS Xx) Xy))) (((eq_ref b) Xy) (cS Xx))) (((eq_ref b) Xy) (fun (x3:b)=> ((x2 (f Xx)) (g x3))))) as proof of ((iff ((cS Xx) Xy)) ((x2 (f Xx)) (g Xy)))
% Found ((((conj (((cS Xx) Xy)->((x2 (f Xx)) (g Xy)))) (((x2 (f Xx)) (g Xy))->((cS Xx) Xy))) (((eq_ref b) Xy) (cS Xx))) (((eq_ref b) Xy) (fun (x3:b)=> ((x2 (f Xx)) (g x3))))) as proof of ((iff ((cS Xx) Xy)) ((x2 (f Xx)) (g Xy)))
% Found classical_choice:=(fun (A:Type) (B:Type) (R:(A->(B->Prop))) (b:B)=> ((fun (C:((forall (x:A), ((ex B) (fun (y:B)=> (((fun (x0:A) (y0:B)=> (((ex B) (fun (z:B)=> ((R x0) z)))->((R x0) y0))) x) y))))->((ex (A->B)) (fun (f:(A->B))=> (forall (x:A), (((fun (x0:A) (y:B)=> (((ex B) (fun (z:B)=> ((R x0) z)))->((R x0) y))) x) (f x)))))))=> (C (fun (x:A)=> ((fun (C0:((or ((ex B) (fun (z:B)=> ((R x) z)))) (not ((ex B) (fun (z:B)=> ((R x) z))))))=> ((((((or_ind ((ex B) (fun (z:B)=> ((R x) z)))) (not ((ex B) (fun (z:B)=> ((R x) z))))) ((ex B) (fun (y:B)=> (((ex B) (fun (z:B)=> ((R x) z)))->((R x) y))))) ((((ex_ind B) (fun (z:B)=> ((R x) z))) ((ex B) (fun (y:B)=> (((ex B) (fun (z:B)=> ((R x) z)))->((R x) y))))) (fun (y:B) (H:((R x) y))=> ((((ex_intro B) (fun (y0:B)=> (((ex B) (fun (z:B)=> ((R x) z)))->((R x) y0)))) y) (fun (_:((ex B) (fun (z:B)=> ((R x) z))))=> H))))) (fun (N:(not ((ex B) (fun (z:B)=> ((R x) z)))))=> ((((ex_intro B) (fun (y:B)=> (((ex B) (fun (z:B)=> ((R x) z)))->((R x) y)))) b) (fun (H:((ex B) (fun (z:B)=> ((R x) z))))=> ((False_rect ((R x) b)) (N H)))))) C0)) (classic ((ex B) (fun (z:B)=> ((R x) z)))))))) (((choice A) B) (fun (x:A) (y:B)=> (((ex B) (fun (z:B)=> ((R x) z)))->((R x) y)))))):(forall (A:Type) (B:Type) (R:(A->(B->Prop))), (B->((ex (A->B)) (fun (f:(A->B))=> (forall (x:A), (((ex B) (fun (y:B)=> ((R x) y)))->((R x) (f x))))))))
% Instantiate: a0:=(forall (A:Type) (B:Type) (R:(A->(B->Prop))), (B->((ex (A->B)) (fun (f:(A->B))=> (forall (x:A), (((ex B) (fun (y:B)=> ((R x) y)))->((R x) (f x)))))))):Prop
% Found classical_choice as proof of a0
% Found iff_refl0:=(iff_refl ((x0 (f Xx)) (g Xy))):((iff ((x0 (f Xx)) (g Xy))) ((x0 (f Xx)) (g Xy)))
% Found (iff_refl ((x0 (f Xx)) (g Xy))) as proof of ((iff ((x0 (f Xx)) (g Xy))) ((cS Xx) Xy))
% Found (iff_refl ((x0 (f Xx)) (g Xy))) as proof of ((iff ((x0 (f Xx)) (g Xy))) ((cS Xx) Xy))
% Found (iff_refl ((x0 (f Xx)) (g Xy))) as proof of ((iff ((x0 (f Xx)) (g Xy))) ((cS Xx) Xy))
% Found (iff_sym00 (iff_refl ((x0 (f Xx)) (g Xy)))) as proof of ((iff ((cS Xx) Xy)) ((x0 (f Xx)) (g Xy)))
% Found ((iff_sym0 ((cS Xx) Xy)) (iff_refl ((x0 (f Xx)) (g Xy)))) as proof of ((iff ((cS Xx) Xy)) ((x0 (f Xx)) (g Xy)))
% Found (((iff_sym ((x0 (f Xx)) (g Xy))) ((cS Xx) Xy)) (iff_refl ((x0 (f Xx)) (g Xy)))) as proof of ((iff ((cS Xx) Xy)) ((x0 (f Xx)) (g Xy)))
% Found (fun (x2:(forall (Xx0:b) (Xy0:b), ((((eq b) (g Xx0)) (g Xy0))->(((eq b) Xx0) Xy0))))=> (((iff_sym ((x0 (f Xx)) (g Xy))) ((cS Xx) Xy)) (iff_refl ((x0 (f Xx)) (g Xy))))) as proof of ((iff ((cS Xx) Xy)) ((x0 (f Xx)) (g Xy)))
% Found (fun (x1:(forall (Xx0:a) (Xy0:a), ((((eq a) (f Xx0)) (f Xy0))->(((eq a) Xx0) Xy0)))) (x2:(forall (Xx0:b) (Xy0:b), ((((eq b) (g Xx0)) (g Xy0))->(((eq b) Xx0) Xy0))))=> (((iff_sym ((x0 (f Xx)) (g Xy))) ((cS Xx) Xy)) (iff_refl ((x0 (f Xx)) (g Xy))))) as proof of ((forall (Xx0:b) (Xy0:b), ((((eq b) (g Xx0)) (g Xy0))->(((eq b) Xx0) Xy0)))->((iff ((cS Xx) Xy)) ((x0 (f Xx)) (g Xy))))
% Found (fun (x1:(forall (Xx0:a) (Xy0:a), ((((eq a) (f Xx0)) (f Xy0))->(((eq a) Xx0) Xy0)))) (x2:(forall (Xx0:b) (Xy0:b), ((((eq b) (g Xx0)) (g Xy0))->(((eq b) Xx0) Xy0))))=> (((iff_sym ((x0 (f Xx)) (g Xy))) ((cS Xx) Xy)) (iff_refl ((x0 (f Xx)) (g Xy))))) as proof of ((forall (Xx0:a) (Xy0:a), ((((eq a) (f Xx0)) (f Xy0))->(((eq a) Xx0) Xy0)))->((forall (Xx0:b) (Xy0:b), ((((eq b) (g Xx0)) (g Xy0))->(((eq b) Xx0) Xy0)))->((iff ((cS Xx) Xy)) ((x0 (f Xx)) (g Xy)))))
% Found (and_rect00 (fun (x1:(forall (Xx0:a) (Xy0:a), ((((eq a) (f Xx0)) (f Xy0))->(((eq a) Xx0) Xy0)))) (x2:(forall (Xx0:b) (Xy0:b), ((((eq b) (g Xx0)) (g Xy0))->(((eq b) Xx0) Xy0))))=> (((iff_sym ((x0 (f Xx)) (g Xy))) ((cS Xx) Xy)) (iff_refl ((x0 (f Xx)) (g Xy)))))) as proof of ((iff ((cS Xx) Xy)) ((x0 (f Xx)) (g Xy)))
% Found ((and_rect0 ((iff ((cS Xx) Xy)) ((x0 (f Xx)) (g Xy)))) (fun (x1:(forall (Xx0:a) (Xy0:a), ((((eq a) (f Xx0)) (f Xy0))->(((eq a) Xx0) Xy0)))) (x2:(forall (Xx0:b) (Xy0:b), ((((eq b) (g Xx0)) (g Xy0))->(((eq b) Xx0) Xy0))))=> (((iff_sym ((x0 (f Xx)) (g Xy))) ((cS Xx) Xy)) (iff_refl ((x0 (f Xx)) (g Xy)))))) as proof of ((iff ((cS Xx) Xy)) ((x0 (f Xx)) (g Xy)))
% Found (((fun (P0:Type) (x1:((forall (Xx:a) (Xy:a), ((((eq a) (f Xx)) (f Xy))->(((eq a) Xx) Xy)))->((forall (Xx:b) (Xy:b), ((((eq b) (g Xx)) (g Xy))->(((eq b) Xx) Xy)))->P0)))=> (((((and_rect (forall (Xx:a) (Xy:a), ((((eq a) (f Xx)) (f Xy))->(((eq a) Xx) Xy)))) (forall (Xx:b) (Xy:b), ((((eq b) (g Xx)) (g Xy))->(((eq b) Xx) Xy)))) P0) x1) x)) ((iff ((cS Xx) Xy)) ((x0 (f Xx)) (g Xy)))) (fun (x1:(forall (Xx0:a) (Xy0:a), ((((eq a) (f Xx0)) (f Xy0))->(((eq a) Xx0) Xy0)))) (x2:(forall (Xx0:b) (Xy0:b), ((((eq b) (g Xx0)) (g Xy0))->(((eq b) Xx0) Xy0))))=> (((iff_sym ((x0 (f Xx)) (g Xy))) ((cS Xx) Xy)) (iff_refl ((x0 (f Xx)) (g Xy)))))) as proof of ((iff ((cS Xx) Xy)) ((x0 (f Xx)) (g Xy)))
% Found eq_ref000:=(eq_ref00 (fun (x1:b)=> ((x0 (f Xx)) (g x1)))):(((x0 (f Xx)) (g Xy))->((x0 (f Xx)) (g Xy)))
% Found (eq_ref00 (fun (x1:b)=> ((x0 (f Xx)) (g x1)))) as proof of a0
% Found ((eq_ref0 Xy) (fun (x1:b)=> ((x0 (f Xx)) (g x1)))) as proof of a0
% Found (((eq_ref b) Xy) (fun (x1:b)=> ((x0 (f Xx)) (g x1)))) as proof of a0
% Found (((eq_ref b) Xy) (fun (x1:b)=> ((x0 (f Xx)) (g x1)))) as proof of a0
% Found (((eq_ref b) Xy) (fun (x1:b)=> ((x0 (f Xx)) (g x1)))) as proof of a0
% Found eq_ref000:=(eq_ref00 (cS Xx)):(((cS Xx) Xy)->((cS Xx) Xy))
% Found (eq_ref00 (cS Xx)) as proof of (((cS Xx) Xy)->((x0 (f Xx)) (g Xy)))
% Found ((eq_ref0 Xy) (cS Xx)) as proof of (((cS Xx) Xy)->((x0 (f Xx)) (g Xy)))
% Found (((eq_ref b) Xy) (cS Xx)) as proof of (((cS Xx) Xy)->((x0 (f Xx)) (g Xy)))
% Found (((eq_ref b) Xy) (cS Xx)) as proof of (((cS Xx) Xy)->((x0 (f Xx)) (g Xy)))
% Found ((conj00 (((eq_ref b) Xy) (cS Xx))) (((eq_ref b) Xy) (fun (x1:b)=> ((x0 (f Xx)) (g x1))))) as proof of (P a0)
% Found (((conj0 a0) (((eq_ref b) Xy) (cS Xx))) (((eq_ref b) Xy) (fun (x1:b)=> ((x0 (f Xx)) (g x1))))) as proof of (P a0)
% Found ((((conj (((cS Xx) Xy)->((x0 (f Xx)) (g Xy)))) a0) (((eq_ref b) Xy) (cS Xx))) (((eq_ref b) Xy) (fun (x1:b)=> ((x0 (f Xx)) (g x1))))) as proof of (P a0)
% Found ((((conj (((cS Xx) Xy)->((x0 (f Xx)) (g Xy)))) a0) (((eq_ref b) Xy) (cS Xx))) (((eq_ref b) Xy) (fun (x1:b)=> ((x0 (f Xx)) (g x1))))) as proof of (P a0)
% Found (((eq_trans00000 ((eq_ref Prop) a0)) ((eq_ref Prop) b0)) ((((conj (((cS Xx) Xy)->((x0 (f Xx)) (g Xy)))) a0) (((eq_ref b) Xy) (cS Xx))) (((eq_ref b) Xy) (fun (x1:b)=> ((x0 (f Xx)) (g x1)))))) as proof of ((and (((cS Xx) Xy)->((x0 (f Xx)) (g Xy)))) (((x0 (f Xx)) (g Xy))->((cS Xx) Xy)))
% Found (((eq_trans00000 ((eq_ref Prop) a0)) ((eq_ref Prop) b0)) ((((conj (((cS Xx) Xy)->((x0 (f Xx)) (g Xy)))) a0) (((eq_ref b) Xy) (cS Xx))) (((eq_ref b) Xy) (fun (x1:b)=> ((x0 (f Xx)) (g x1)))))) as proof of ((and (((cS Xx) Xy)->((x0 (f Xx)) (g Xy)))) (((x0 (f Xx)) (g Xy))->((cS Xx) Xy)))
% Found ((((fun (x1:(((eq Prop) a0) b0)) (x2:(((eq Prop) b0) (((x0 (f Xx)) (g Xy))->((cS Xx) Xy))))=> (((eq_trans0000 x1) x2) (and (((cS Xx) Xy)->((x0 (f Xx)) (g Xy)))))) ((eq_ref Prop) a0)) ((eq_ref Prop) b0)) ((((conj (((cS Xx) Xy)->((x0 (f Xx)) (g Xy)))) a0) (((eq_ref b) Xy) (cS Xx))) (((eq_ref b) Xy) (fun (x1:b)=> ((x0 (f Xx)) (g x1)))))) as proof of ((and (((cS Xx) Xy)->((x0 (f Xx)) (g Xy)))) (((x0 (f Xx)) (g Xy))->((cS Xx) Xy)))
% Found ((((fun (x1:(((eq Prop) a0) b0)) (x2:(((eq Prop) b0) (((x0 (f Xx)) (g Xy))->((cS Xx) Xy))))=> ((((eq_trans000 (((x0 (f Xx)) (g Xy))->((cS Xx) Xy))) x1) x2) (and (((cS Xx) Xy)->((x0 (f Xx)) (g Xy)))))) ((eq_ref Prop) a0)) ((eq_ref Prop) b0)) ((((conj (((cS Xx) Xy)->((x0 (f Xx)) (g Xy)))) a0) (((eq_ref b) Xy) (cS Xx))) (((eq_ref b) Xy) (fun (x1:b)=> ((x0 (f Xx)) (g x1)))))) as proof of ((and (((cS Xx) Xy)->((x0 (f Xx)) (g Xy)))) (((x0 (f Xx)) (g Xy))->((cS Xx) Xy)))
% Found ((((fun (x1:(((eq Prop) a0) (((x0 (f Xx)) (g Xy))->((cS Xx) Xy)))) (x2:(((eq Prop) (((x0 (f Xx)) (g Xy))->((cS Xx) Xy))) (((x0 (f Xx)) (g Xy))->((cS Xx) Xy))))=> (((((eq_trans00 (((x0 (f Xx)) (g Xy))->((cS Xx) Xy))) (((x0 (f Xx)) (g Xy))->((cS Xx) Xy))) x1) x2) (and (((cS Xx) Xy)->((x0 (f Xx)) (g Xy)))))) ((eq_ref Prop) a0)) ((eq_ref Prop) (((x0 (f Xx)) (g Xy))->((cS Xx) Xy)))) ((((conj (((cS Xx) Xy)->((x0 (f Xx)) (g Xy)))) a0) (((eq_ref b) Xy) (cS Xx))) (((eq_ref b) Xy) (fun (x1:b)=> ((x0 (f Xx)) (g x1)))))) as proof of ((and (((cS Xx) Xy)->((x0 (f Xx)) (g Xy)))) (((x0 (f Xx)) (g Xy))->((cS Xx) Xy)))
% Found ((((fun (x1:(((eq Prop) (((x0 (f Xx)) (g Xy))->((cS Xx) Xy))) (((x0 (f Xx)) (g Xy))->((cS Xx) Xy)))) (x2:(((eq Prop) (((x0 (f Xx)) (g Xy))->((cS Xx) Xy))) (((x0 (f Xx)) (g Xy))->((cS Xx) Xy))))=> ((((((eq_trans0 (((x0 (f Xx)) (g Xy))->((cS Xx) Xy))) (((x0 (f Xx)) (g Xy))->((cS Xx) Xy))) (((x0 (f Xx)) (g Xy))->((cS Xx) Xy))) x1) x2) (and (((cS Xx) Xy)->((x0 (f Xx)) (g Xy)))))) ((eq_ref Prop) (((x0 (f Xx)) (g Xy))->((cS Xx) Xy)))) ((eq_ref Prop) (((x0 (f Xx)) (g Xy))->((cS Xx) Xy)))) ((((conj (((cS Xx) Xy)->((x0 (f Xx)) (g Xy)))) (((x0 (f Xx)) (g Xy))->((cS Xx) Xy))) (((eq_ref b) Xy) (cS Xx))) (((eq_ref b) Xy) (fun (x1:b)=> ((x0 (f Xx)) (g x1)))))) as proof of ((and (((cS Xx) Xy)->((x0 (f Xx)) (g Xy)))) (((x0 (f Xx)) (g Xy))->((cS Xx) Xy)))
% Found ((((fun (x1:(((eq Prop) (((x0 (f Xx)) (g Xy))->((cS Xx) Xy))) (((x0 (f Xx)) (g Xy))->((cS Xx) Xy)))) (x2:(((eq Prop) (((x0 (f Xx)) (g Xy))->((cS Xx) Xy))) (((x0 (f Xx)) (g Xy))->((cS Xx) Xy))))=> (((((((eq_trans Prop) (((x0 (f Xx)) (g Xy))->((cS Xx) Xy))) (((x0 (f Xx)) (g Xy))->((cS Xx) Xy))) (((x0 (f Xx)) (g Xy))->((cS Xx) Xy))) x1) x2) (and (((cS Xx) Xy)->((x0 (f Xx)) (g Xy)))))) ((eq_ref Prop) (((x0 (f Xx)) (g Xy))->((cS Xx) Xy)))) ((eq_ref Prop) (((x0 (f Xx)) (g Xy))->((cS Xx) Xy)))) ((((conj (((cS Xx) Xy)->((x0 (f Xx)) (g Xy)))) (((x0 (f Xx)) (g Xy))->((cS Xx) Xy))) (((eq_ref b) Xy) (cS Xx))) (((eq_ref b) Xy) (fun (x1:b)=> ((x0 (f Xx)) (g x1)))))) as proof of ((and (((cS Xx) Xy)->((x0 (f Xx)) (g Xy)))) (((x0 (f Xx)) (g Xy))->((cS Xx) Xy)))
% Found ((((fun (x1:(((eq Prop) (((x0 (f Xx)) (g Xy))->((cS Xx) Xy))) (((x0 (f Xx)) (g Xy))->((cS Xx) Xy)))) (x2:(((eq Prop) (((x0 (f Xx)) (g Xy))->((cS Xx) Xy))) (((x0 (f Xx)) (g Xy))->((cS Xx) Xy))))=> (((((((eq_trans Prop) (((x0 (f Xx)) (g Xy))->((cS Xx) Xy))) (((x0 (f Xx)) (g Xy))->((cS Xx) Xy))) (((x0 (f Xx)) (g Xy))->((cS Xx) Xy))) x1) x2) (and (((cS Xx) Xy)->((x0 (f Xx)) (g Xy)))))) ((eq_ref Prop) (((x0 (f Xx)) (g Xy))->((cS Xx) Xy)))) ((eq_ref Prop) (((x0 (f Xx)) (g Xy))->((cS Xx) Xy)))) ((((conj (((cS Xx) Xy)->((x0 (f Xx)) (g Xy)))) (((x0 (f Xx)) (g Xy))->((cS Xx) Xy))) (((eq_ref b) Xy) (cS Xx))) (((eq_ref b) Xy) (fun (x1:b)=> ((x0 (f Xx)) (g x1)))))) as proof of ((and (((cS Xx) Xy)->((x0 (f Xx)) (g Xy)))) (((x0 (f Xx)) (g Xy))->((cS Xx) Xy)))
% Found eq_ref000:=(eq_ref00 (fun (x3:b)=> ((x2 (f Xx)) (g x3)))):(((x2 (f Xx)) (g Xy))->((x2 (f Xx)) (g Xy)))
% Found (eq_ref00 (fun (x3:b)=> ((x2 (f Xx)) (g x3)))) as proof of (((x2 (f Xx)) (g Xy))->((cS Xx) Xy))
% Found ((eq_ref0 Xy) (fun (x3:b)=> ((x2 (f Xx)) (g x3)))) as proof of (((x2 (f Xx)) (g Xy))->((cS Xx) Xy))
% Found (((eq_ref b) Xy) (fun (x3:b)=> ((x2 (f Xx)) (g x3)))) as proof of (((x2 (f Xx)) (g Xy))->((cS Xx) Xy))
% Found (((eq_ref b) Xy) (fun (x3:b)=> ((x2 (f Xx)) (g x3)))) as proof of (((x2 (f Xx)) (g Xy))->((cS Xx) Xy))
% Found (((eq_ref b) Xy) (fun (x3:b)=> ((x2 (f Xx)) (g x3)))) as proof of (((x2 (f Xx)) (g Xy))->((cS Xx) Xy))
% Found eq_ref000:=(eq_ref00 (cS Xx)):(((cS Xx) Xy)->((cS Xx) Xy))
% Found (eq_ref00 (cS Xx)) as proof of (((cS Xx) Xy)->((x2 (f Xx)) (g Xy)))
% Found ((eq_ref0 Xy) (cS Xx)) as proof of (((cS Xx) Xy)->((x2 (f Xx)) (g Xy)))
% Found (((eq_ref b) Xy) (cS Xx)) as proof of (((cS Xx) Xy)->((x2 (f Xx)) (g Xy)))
% Found (((eq_ref b) Xy) (cS Xx)) as proof of (((cS Xx) Xy)->((x2 (f Xx)) (g Xy)))
% Found ((conj00 (((eq_ref b) Xy) (cS Xx))) (((eq_ref b) Xy) (fun (x3:b)=> ((x2 (f Xx)) (g x3))))) as proof of ((iff ((cS Xx) Xy)) ((x2 (f Xx)) (g Xy)))
% Found (((conj0 (((x2 (f Xx)) (g Xy))->((cS Xx) Xy))) (((eq_ref b) Xy) (cS Xx))) (((eq_ref b) Xy) (fun (x3:b)=> ((x2 (f Xx)) (g x3))))) as proof of ((iff ((cS Xx) Xy)) ((x2 (f Xx)) (g Xy)))
% Found ((((conj (((cS Xx) Xy)->((x2 (f Xx)) (g Xy)))) (((x2 (f Xx)) (g Xy))->((cS Xx) Xy))) (((eq_ref b) Xy) (cS Xx))) (((eq_ref b) Xy) (fun (x3:b)=> ((x2 (f Xx)) (g x3))))) as proof of ((iff ((cS Xx) Xy)) ((x2 (f Xx)) (g Xy)))
% Found eq_ref000:=(eq_ref00 (fun (x3:b)=> ((x2 (f Xx)) (g x3)))):(((x2 (f Xx)) (g Xy))->((x2 (f Xx)) (g Xy)))
% Found (eq_ref00 (fun (x3:b)=> ((x2 (f Xx)) (g x3)))) as proof of (((x2 (f Xx)) (g Xy))->((cS Xx) Xy))
% Found ((eq_ref0 Xy) (fun (x3:b)=> ((x2 (f Xx)) (g x3)))) as proof of (((x2 (f Xx)) (g Xy))->((cS Xx) Xy))
% Found (((eq_ref b) Xy) (fun (x3:b)=> ((x2 (f Xx)) (g x3)))) as proof of (((x2 (f Xx)) (g Xy))->((cS Xx) Xy))
% Found (((eq_ref b) Xy) (fun (x3:b)=> ((x2 (f Xx)) (g x3)))) as proof of (((x2 (f Xx)) (g Xy))->((cS Xx) Xy))
% Found (((eq_ref b) Xy) (fun (x3:b)=> ((x2 (f Xx)) (g x3)))) as proof of (((x2 (f Xx)) (g Xy))->((cS Xx) Xy))
% Found eq_ref000:=(eq_ref00 (cS Xx)):(((cS Xx) Xy)->((cS Xx) Xy))
% Found (eq_ref00 (cS Xx)) as proof of (((cS Xx) Xy)->((x2 (f Xx)) (g Xy)))
% Found ((eq_ref0 Xy) (cS Xx)) as proof of (((cS Xx) Xy)->((x2 (f Xx)) (g Xy)))
% Found (((eq_ref b) Xy) (cS Xx)) as proof of (((cS Xx) Xy)->((x2 (f Xx)) (g Xy)))
% Found (((eq_ref b) Xy) (cS Xx)) as proof of (((cS Xx) Xy)->((x2 (f Xx)) (g Xy)))
% Found ((conj00 (((eq_ref b) Xy) (cS Xx))) (((eq_ref b) Xy) (fun (x3:b)=> ((x2 (f Xx)) (g x3))))) as proof of ((iff ((cS Xx) Xy)) ((x2 (f Xx)) (g Xy)))
% Found (((conj0 (((x2 (f Xx)) (g Xy))->((cS Xx) Xy))) (((eq_ref b) Xy) (cS Xx))) (((eq_ref b) Xy) (fun (x3:b)=> ((x2 (f Xx)) (g x3))))) as proof of ((iff ((cS Xx) Xy)) ((x2 (f Xx)) (g Xy)))
% Found ((((conj (((cS Xx) Xy)->((x2 (f Xx)) (g Xy)))) (((x2 (f Xx)) (g Xy))->((cS Xx) Xy))) (((eq_ref b) Xy) (cS Xx))) (((eq_ref b) Xy) (fun (x3:b)=> ((x2 (f Xx)) (g x3))))) as proof of ((iff ((cS Xx) Xy)) ((x2 (f Xx)) (g Xy)))
% Found eq_ref00:=(eq_ref0 a0):(((eq Prop) a0) a0)
% Found (eq_ref0 a0) as proof of (((eq Prop) a0) b0)
% Found ((eq_ref Prop) a0) as proof of (((eq Prop) a0) b0)
% Found ((eq_ref Prop) a0) as proof of (((eq Prop) a0) b0)
% Found ((eq_ref Prop) a0) as proof of (((eq Prop) a0) b0)
% Found eq_ref00:=(eq_ref0 b0):(((eq Prop) b0) b0)
% Found (eq_ref0 b0) as proof of (((eq Prop) b0) (((x2 (f Xx)) (g Xy))->((cS Xx) Xy)))
% Found ((eq_ref Prop) b0) as proof of (((eq Prop) b0) (((x2 (f Xx)) (g Xy))->((cS Xx) Xy)))
% Found ((eq_ref Prop) b0) as proof of (((eq Prop) b0) (((x2 (f Xx)) (g Xy))->((cS Xx) Xy)))
% Found ((eq_ref Prop) b0) as proof of (((eq Prop) b0) (((x2 (f Xx)) (g Xy))->((cS Xx) Xy)))
% Found eq_ref000:=(eq_ref00 (fun (x3:b)=> ((x0 (f Xx)) (g x3)))):(((x0 (f Xx)) (g Xy))->((x0 (f Xx)) (g Xy)))
% Found (eq_ref00 (fun (x3:b)=> ((x0 (f Xx)) (g x3)))) as proof of (((x0 (f Xx)) (g Xy))->((cS Xx) Xy))
% Found ((eq_ref0 Xy) (fun (x3:b)=> ((x0 (f Xx)) (g x3)))) as proof of (((x0 (f Xx)) (g Xy))->((cS Xx) Xy))
% Found (((eq_ref b) Xy) (fun (x3:b)=> ((x0 (f Xx)) (g x3)))) as proof of (((x0 (f Xx)) (g Xy))->((cS Xx) Xy))
% Found (((eq_ref b) Xy) (fun (x3:b)=> ((x0 (f Xx)) (g x3)))) as proof of (((x0 (f Xx)) (g Xy))->((cS Xx) Xy))
% Found (((eq_ref b) Xy) (fun (x3:b)=> ((x0 (f Xx)) (g x3)))) as proof of (((x0 (f Xx)) (g Xy))->((cS Xx) Xy))
% Found eq_ref000:=(eq_ref00 (cS Xx)):(((cS Xx) Xy)->((cS Xx) Xy))
% Found (eq_ref00 (cS Xx)) as proof of (((cS Xx) Xy)->((x0 (f Xx)) (g Xy)))
% Found ((eq_ref0 Xy) (cS Xx)) as proof of (((cS Xx) Xy)->((x0 (f Xx)) (g Xy)))
% Found (((eq_ref b) Xy) (cS Xx)) as proof of (((cS Xx) Xy)->((x0 (f Xx)) (g Xy)))
% Found (((eq_ref b) Xy) (cS Xx)) as proof of (((cS Xx) Xy)->((x0 (f Xx)) (g Xy)))
% Found ((conj00 (((eq_ref b) Xy) (cS Xx))) (((eq_ref b) Xy) (fun (x3:b)=> ((x0 (f Xx)) (g x3))))) as proof of ((iff ((cS Xx) Xy)) ((x0 (f Xx)) (g Xy)))
% Found (((conj0 (((x0 (f Xx)) (g Xy))->((cS Xx) Xy))) (((eq_ref b) Xy) (cS Xx))) (((eq_ref b) Xy) (fun (x3:b)=> ((x0 (f Xx)) (g x3))))) as proof of ((iff ((cS Xx) Xy)) ((x0 (f Xx)) (g Xy)))
% Found ((((conj (((cS Xx) Xy)->((x0 (f Xx)) (g Xy)))) (((x0 (f Xx)) (g Xy))->((cS Xx) Xy))) (((eq_ref b) Xy) (cS Xx))) (((eq_ref b) Xy) (fun (x3:b)=> ((x0 (f Xx)) (g x3))))) as proof of ((iff ((cS Xx) Xy)) ((x0 (f Xx)) (g Xy)))
% Found iff_trans:=(fun (A:Prop) (B:Prop) (C:Prop) (AB:((iff A) B)) (BC:((iff B) C))=> ((((conj (A->C)) (C->A)) (fun (x:A)=> ((((proj1 (B->C)) (C->B)) BC) ((((proj1 (A->B)) (B->A)) AB) x)))) (fun (x:C)=> ((((proj2 (A->B)) (B->A)) AB) ((((proj2 (B->C)) (C->B)) BC) x))))):(forall (A:Prop) (B:Prop) (C:Prop), (((iff A) B)->(((iff B) C)->((iff A) C))))
% Instantiate: a0:=(forall (A:Prop) (B:Prop) (C:Prop), (((iff A) B)->(((iff B) C)->((iff A) C)))):Prop
% Found iff_trans as proof of a0
% Found eq_ref000:=(eq_ref00 (fun (x3:b)=> ((x2 (f Xx)) (g x3)))):(((x2 (f Xx)) (g Xy))->((x2 (f Xx)) (g Xy)))
% Found (eq_ref00 (fun (x3:b)=> ((x2 (f Xx)) (g x3)))) as proof of a0
% Found ((eq_ref0 Xy) (fun (x3:b)=> ((x2 (f Xx)) (g x3)))) as proof of a0
% Found (((eq_ref b) Xy) (fun (x3:b)=> ((x2 (f Xx)) (g x3)))) as proof of a0
% Found (((eq_ref b) Xy) (fun (x3:b)=> ((x2 (f Xx)) (g x3)))) as proof of a0
% Found (((eq_ref b) Xy) (fun (x3:b)=> ((x2 (f Xx)) (g x3)))) as proof of a0
% Found eq_ref000:=(eq_ref00 (cS Xx)):(((cS Xx) Xy)->((cS Xx) Xy))
% Found (eq_ref00 (cS Xx)) as proof of (((cS Xx) Xy)->((x2 (f Xx)) (g Xy)))
% Found ((eq_ref0 Xy) (cS Xx)) as proof of (((cS Xx) Xy)->((x2 (f Xx)) (g Xy)))
% Found (((eq_ref b) Xy) (cS Xx)) as proof of (((cS Xx) Xy)->((x2 (f Xx)) (g Xy)))
% Found (((eq_ref b) Xy) (cS Xx)) as proof of (((cS Xx) Xy)->((x2 (f Xx)) (g Xy)))
% Found ((conj00 (((eq_ref b) Xy) (cS Xx))) (((eq_ref b) Xy) (fun (x3:b)=> ((x2 (f Xx)) (g x3))))) as proof of (P a0)
% Found (((conj0 a0) (((eq_ref b) Xy) (cS Xx))) (((eq_ref b) Xy) (fun (x3:b)=> ((x2 (f Xx)) (g x3))))) as proof of (P a0)
% Found ((((conj (((cS Xx) Xy)->((x2 (f Xx)) (g Xy)))) a0) (((eq_ref b) Xy) (cS Xx))) (((eq_ref b) Xy) (fun (x3:b)=> ((x2 (f Xx)) (g x3))))) as proof of (P a0)
% Found ((((conj (((cS Xx) Xy)->((x2 (f Xx)) (g Xy)))) a0) (((eq_ref b) Xy) (cS Xx))) (((eq_ref b) Xy) (fun (x3:b)=> ((x2 (f Xx)) (g x3))))) as proof of (P a0)
% Found (((eq_trans00000 ((eq_ref Prop) a0)) ((eq_ref Prop) b0)) ((((conj (((cS Xx) Xy)->((x2 (f Xx)) (g Xy)))) a0) (((eq_ref b) Xy) (cS Xx))) (((eq_ref b) Xy) (fun (x3:b)=> ((x2 (f Xx)) (g x3)))))) as proof of ((and (((cS Xx) Xy)->((x2 (f Xx)) (g Xy)))) (((x2 (f Xx)) (g Xy))->((cS Xx) Xy)))
% Found (((eq_trans00000 ((eq_ref Prop) a0)) ((eq_ref Prop) b0)) ((((conj (((cS Xx) Xy)->((x2 (f Xx)) (g Xy)))) a0) (((eq_ref b) Xy) (cS Xx))) (((eq_ref b) Xy) (fun (x3:b)=> ((x2 (f Xx)) (g x3)))))) as proof of ((and (((cS Xx) Xy)->((x2 (f Xx)) (g Xy)))) (((x2 (f Xx)) (g Xy))->((cS Xx) Xy)))
% Found ((((fun (x3:(((eq Prop) a0) b0)) (x4:(((eq Prop) b0) (((x2 (f Xx)) (g Xy))->((cS Xx) Xy))))=> (((eq_trans0000 x3) x4) (and (((cS Xx) Xy)->((x2 (f Xx)) (g Xy)))))) ((eq_ref Prop) a0)) ((eq_ref Prop) b0)) ((((conj (((cS Xx) Xy)->((x2 (f Xx)) (g Xy)))) a0) (((eq_ref b) Xy) (cS Xx))) (((eq_ref b) Xy) (fun (x3:b)=> ((x2 (f Xx)) (g x3)))))) as proof of ((and (((cS Xx) Xy)->((x2 (f Xx)) (g Xy)))) (((x2 (f Xx)) (g Xy))->((cS Xx) Xy)))
% Found ((((fun (x3:(((eq Prop) a0) b0)) (x4:(((eq Prop) b0) (((x2 (f Xx)) (g Xy))->((cS Xx) Xy))))=> ((((eq_trans000 (((x2 (f Xx)) (g Xy))->((cS Xx) Xy))) x3) x4) (and (((cS Xx) Xy)->((x2 (f Xx)) (g Xy)))))) ((eq_ref Prop) a0)) ((eq_ref Prop) b0)) ((((conj (((cS Xx) Xy)->((x2 (f Xx)) (g Xy)))) a0) (((eq_ref b) Xy) (cS Xx))) (((eq_ref b) Xy) (fun (x3:b)=> ((x2 (f Xx)) (g x3)))))) as proof of ((and (((cS Xx) Xy)->((x2 (f Xx)) (g Xy)))) (((x2 (f Xx)) (g Xy))->((cS Xx) Xy)))
% Found ((((fun (x3:(((eq Prop) a0) (((x2 (f Xx)) (g Xy))->((cS Xx) Xy)))) (x4:(((eq Prop) (((x2 (f Xx)) (g Xy))->((cS Xx) Xy))) (((x2 (f Xx)) (g Xy))->((cS Xx) Xy))))=> (((((eq_trans00 (((x2 (f Xx)) (g Xy))->((cS Xx) Xy))) (((x2 (f Xx)) (g Xy))->((cS Xx) Xy))) x3) x4) (and (((cS Xx) Xy)->((x2 (f Xx)) (g Xy)))))) ((eq_ref Prop) a0)) ((eq_ref Prop) (((x2 (f Xx)) (g Xy))->((cS Xx) Xy)))) ((((conj (((cS Xx) Xy)->((x2 (f Xx)) (g Xy)))) a0) (((eq_ref b) Xy) (cS Xx))) (((eq_ref b) Xy) (fun (x3:b)=> ((x2 (f Xx)) (g x3)))))) as proof of ((and (((cS Xx) Xy)->((x2 (f Xx)) (g Xy)))) (((x2 (f Xx)) (g Xy))->((cS Xx) Xy)))
% Found ((((fun (x3:(((eq Prop) (((x2 (f Xx)) (g Xy))->((cS Xx) Xy))) (((x2 (f Xx)) (g Xy))->((cS Xx) Xy)))) (x4:(((eq Prop) (((x2 (f Xx)) (g Xy))->((cS Xx) Xy))) (((x2 (f Xx)) (g Xy))->((cS Xx) Xy))))=> ((((((eq_trans0 (((x2 (f Xx)) (g Xy))->((cS Xx) Xy))) (((x2 (f Xx)) (g Xy))->((cS Xx) Xy))) (((x2 (f Xx)) (g Xy))->((cS Xx) Xy))) x3) x4) (and (((cS Xx) Xy)->((x2 (f Xx)) (g Xy)))))) ((eq_ref Prop) (((x2 (f Xx)) (g Xy))->((cS Xx) Xy)))) ((eq_ref Prop) (((x2 (f Xx)) (g Xy))->((cS Xx) Xy)))) ((((conj (((cS Xx) Xy)->((x2 (f Xx)) (g Xy)))) (((x2 (f Xx)) (g Xy))->((cS Xx) Xy))) (((eq_ref b) Xy) (cS Xx))) (((eq_ref b) Xy) (fun (x3:b)=> ((x2 (f Xx)) (g x3)))))) as proof of ((and (((cS Xx) Xy)->((x2 (f Xx)) (g Xy)))) (((x2 (f Xx)) (g Xy))->((cS Xx) Xy)))
% Found ((((fun (x3:(((eq Prop) (((x2 (f Xx)) (g Xy))->((cS Xx) Xy))) (((x2 (f Xx)) (g Xy))->((cS Xx) Xy)))) (x4:(((eq Prop) (((x2 (f Xx)) (g Xy))->((cS Xx) Xy))) (((x2 (f Xx)) (g Xy))->((cS Xx) Xy))))=> (((((((eq_trans Prop) (((x2 (f Xx)) (g Xy))->((cS Xx) Xy))) (((x2 (f Xx)) (g Xy))->((cS Xx) Xy))) (((x2 (f Xx)) (g Xy))->((cS Xx) Xy))) x3) x4) (and (((cS Xx) Xy)->((x2 (f Xx)) (g Xy)))))) ((eq_ref Prop) (((x2 (f Xx)) (g Xy))->((cS Xx) Xy)))) ((eq_ref Prop) (((x2 (f Xx)) (g Xy))->((cS Xx) Xy)))) ((((conj (((cS Xx) Xy)->((x2 (f Xx)) (g Xy)))) (((x2 (f Xx)) (g Xy))->((cS Xx) Xy))) (((eq_ref b) Xy) (cS Xx))) (((eq_ref b) Xy) (fun (x3:b)=> ((x2 (f Xx)) (g x3)))))) as proof of ((and (((cS Xx) Xy)->((x2 (f Xx)) (g Xy)))) (((x2 (f Xx)) (g Xy))->((cS Xx) Xy)))
% Found ((((fun (x3:(((eq Prop) (((x2 (f Xx)) (g Xy))->((cS Xx) Xy))) (((x2 (f Xx)) (g Xy))->((cS Xx) Xy)))) (x4:(((eq Prop) (((x2 (f Xx)) (g Xy))->((cS Xx) Xy))) (((x2 (f Xx)) (g Xy))->((cS Xx) Xy))))=> (((((((eq_trans Prop) (((x2 (f Xx)) (g Xy))->((cS Xx) Xy))) (((x2 (f Xx)) (g Xy))->((cS Xx) Xy))) (((x2 (f Xx)) (g Xy))->((cS Xx) Xy))) x3) x4) (and (((cS Xx) Xy)->((x2 (f Xx)) (g Xy)))))) ((eq_ref Prop) (((x2 (f Xx)) (g Xy))->((cS Xx) Xy)))) ((eq_ref Prop) (((x2 (f Xx)) (g Xy))->((cS Xx) Xy)))) ((((conj (((cS Xx) Xy)->((x2 (f Xx)) (g Xy)))) (((x2 (f Xx)) (g Xy))->((cS Xx) Xy))) (((eq_ref b) Xy) (cS Xx))) (((eq_ref b) Xy) (fun (x3:b)=> ((x2 (f Xx)) (g x3)))))) as proof of ((and (((cS Xx) Xy)->((x2 (f Xx)) (g Xy)))) (((x2 (f Xx)) (g Xy))->((cS Xx) Xy)))
% Found eta_expansion_dep000:=(eta_expansion_dep00 (fun (Xu:(a->(b->Prop)))=> (forall (Xx:a) (Xy:b), ((iff ((cS Xx) Xy)) ((Xu (f Xx)) (g Xy)))))):(((eq ((a->(b->Prop))->Prop)) (fun (Xu:(a->(b->Prop)))=> (forall (Xx:a) (Xy:b), ((iff ((cS Xx) Xy)) ((Xu (f Xx)) (g Xy)))))) (fun (x:(a->(b->Prop)))=> (forall (Xx:a) (Xy:b), ((iff ((cS Xx) Xy)) ((x (f Xx)) (g Xy))))))
% Found (eta_expansion_dep00 (fun (Xu:(a->(b->Prop)))=> (forall (Xx:a) (Xy:b), ((iff ((cS Xx) Xy)) ((Xu (f Xx)) (g Xy)))))) as proof of (((eq ((a->(b->Prop))->Prop)) (fun (Xu:(a->(b->Prop)))=> (forall (Xx:a) (Xy:b), ((iff ((cS Xx) Xy)) ((Xu (f Xx)) (g Xy)))))) b00)
% Found ((eta_expansion_dep0 (fun (x1:(a->(b->Prop)))=> Prop)) (fun (Xu:(a->(b->Prop)))=> (forall (Xx:a) (Xy:b), ((iff ((cS Xx) Xy)) ((Xu (f Xx)) (g Xy)))))) as proof of (((eq ((a->(b->Prop))->Prop)) (fun (Xu:(a->(b->Prop)))=> (forall (Xx:a) (Xy:b), ((iff ((cS Xx) Xy)) ((Xu (f Xx)) (g Xy)))))) b00)
% Found (((eta_expansion_dep (a->(b->Prop))) (fun (x1:(a->(b->Prop)))=> Prop)) (fun (Xu:(a->(b->Prop)))=> (forall (Xx:a) (Xy:b), ((iff ((cS Xx) Xy)) ((Xu (f Xx)) (g Xy)))))) as proof of (((eq ((a->(b->Prop))->Prop)) (fun (Xu:(a->(b->Prop)))=> (forall (Xx:a) (Xy:b), ((iff ((cS Xx) Xy)) ((Xu (f Xx)) (g Xy)))))) b00)
% Found (((eta_expansion_dep (a->(b->Prop))) (fun (x1:(a->(b->Prop)))=> Prop)) (fun (Xu:(a->(b->Prop)))=> (forall (Xx:a) (Xy:b), ((iff ((cS Xx) Xy)) ((Xu (f Xx)) (g Xy)))))) as proof of (((eq ((a->(b->Prop))->Prop)) (fun (Xu:(a->(b->Prop)))=> (forall (Xx:a) (Xy:b), ((iff ((cS Xx) Xy)) ((Xu (f Xx)) (g Xy)))))) b00)
% Found (((eta_expansion_dep (a->(b->Prop))) (fun (x1:(a->(b->Prop)))=> Prop)) (fun (Xu:(a->(b->Prop)))=> (forall (Xx:a) (Xy:b), ((iff ((cS Xx) Xy)) ((Xu (f Xx)) (g Xy)))))) as proof of (((eq ((a->(b->Prop))->Prop)) (fun (Xu:(a->(b->Prop)))=> (forall (Xx:a) (Xy:b), ((iff ((cS Xx) Xy)) ((Xu (f Xx)) (g Xy)))))) b00)
% Found iff_refl0:=(iff_refl ((x0 (f Xx)) (g Xy))):((iff ((x0 (f Xx)) (g Xy))) ((x0 (f Xx)) (g Xy)))
% Found (iff_refl ((x0 (f Xx)) (g Xy))) as proof of ((iff ((x0 (f Xx)) (g Xy))) ((cS Xx) Xy))
% Found (iff_refl ((x0 (f Xx)) (g Xy))) as proof of ((iff ((x0 (f Xx)) (g Xy))) ((cS Xx) Xy))
% Found (iff_refl ((x0 (f Xx)) (g Xy))) as proof of ((iff ((x0 (f Xx)) (g Xy))) ((cS Xx) Xy))
% Found (iff_sym00 (iff_refl ((x0 (f Xx)) (g Xy)))) as proof of ((and (((cS Xx) Xy)->((x0 (f Xx)) (g Xy)))) (((x0 (f Xx)) (g Xy))->((cS Xx) Xy)))
% Found ((iff_sym0 ((cS Xx) Xy)) (iff_refl ((x0 (f Xx)) (g Xy)))) as proof of ((and (((cS Xx) Xy)->((x0 (f Xx)) (g Xy)))) (((x0 (f Xx)) (g Xy))->((cS Xx) Xy)))
% Found (((iff_sym ((x0 (f Xx)) (g Xy))) ((cS Xx) Xy)) (iff_refl ((x0 (f Xx)) (g Xy)))) as proof of ((and (((cS Xx) Xy)->((x0 (f Xx)) (g Xy)))) (((x0 (f Xx)) (g Xy))->((cS Xx) Xy)))
% Found (((iff_sym ((x0 (f Xx)) (g Xy))) ((cS Xx) Xy)) (iff_refl ((x0 (f Xx)) (g Xy)))) as proof of ((and (((cS Xx) Xy)->((x0 (f Xx)) (g Xy)))) (((x0 (f Xx)) (g Xy))->((cS Xx) Xy)))
% Found eq_ref00:=(eq_ref0 (fun (Xu:(a->(b->Prop)))=> (forall (Xx:a) (Xy:b), ((iff ((cS Xx) Xy)) ((Xu (f Xx)) (g Xy)))))):(((eq ((a->(b->Prop))->Prop)) (fun (Xu:(a->(b->Prop)))=> (forall (Xx:a) (Xy:b), ((iff ((cS Xx) Xy)) ((Xu (f Xx)) (g Xy)))))) (fun (Xu:(a->(b->Prop)))=> (forall (Xx:a) (Xy:b), ((iff ((cS Xx) Xy)) ((Xu (f Xx)) (g Xy))))))
% Found (eq_ref0 (fun (Xu:(a->(b->Prop)))=> (forall (Xx:a) (Xy:b), ((iff ((cS Xx) Xy)) ((Xu (f Xx)) (g Xy)))))) as proof of (((eq ((a->(b->Prop))->Prop)) (fun (Xu:(a->(b->Prop)))=> (forall (Xx:a) (Xy:b), ((iff ((cS Xx) Xy)) ((Xu (f Xx)) (g Xy)))))) b00)
% Found ((eq_ref ((a->(b->Prop))->Prop)) (fun (Xu:(a->(b->Prop)))=> (forall (Xx:a) (Xy:b), ((iff ((cS Xx) Xy)) ((Xu (f Xx)) (g Xy)))))) as proof of (((eq ((a->(b->Prop))->Prop)) (fun (Xu:(a->(b->Prop)))=> (forall (Xx:a) (Xy:b), ((iff ((cS Xx) Xy)) ((Xu (f Xx)) (g Xy)))))) b00)
% Found ((eq_ref ((a->(b->Prop))->Prop)) (fun (Xu:(a->(b->Prop)))=> (forall (Xx:a) (Xy:b), ((iff ((cS Xx) Xy)) ((Xu (f Xx)) (g Xy)))))) as proof of (((eq ((a->(b->Prop))->Prop)) (fun (Xu:(a->(b->Prop)))=> (forall (Xx:a) (Xy:b), ((iff ((cS Xx) Xy)) ((Xu (f Xx)) (g Xy)))))) b00)
% Found ((eq_ref ((a->(b->Prop))->Prop)) (fun (Xu:(a->(b->Prop)))=> (forall (Xx:a) (Xy:b), ((iff ((cS Xx) Xy)) ((Xu (f Xx)) (g Xy)))))) as proof of (((eq ((a->(b->Prop))->Prop)) (fun (Xu:(a->(b->Prop)))=> (forall (Xx:a) (Xy:b), ((iff ((cS Xx) Xy)) ((Xu (f Xx)) (g Xy)))))) b00)
% Found eta_expansion000:=(eta_expansion00 a0):(((eq ((a->(b->Prop))->Prop)) a0) (fun (x:(a->(b->Prop)))=> (a0 x)))
% Found (eta_expansion00 a0) as proof of (((eq ((a->(b->Prop))->Prop)) a0) b00)
% Found ((eta_expansion0 Prop) a0) as proof of (((eq ((a->(b->Prop))->Prop)) a0) b00)
% Found (((eta_expansion (a->(b->Prop))) Prop) a0) as proof of (((eq ((a->(b->Prop))->Prop)) a0) b00)
% Found (((eta_expansion (a->(b->Prop))) Prop) a0) as proof of (((eq ((a->(b->Prop))->Prop)) a0) b00)
% Found (((eta_expansion (a->(b->Prop))) Prop) a0) as proof of (((eq ((a->(b->Prop))->Prop)) a0) b00)
% Found iff_refl0:=(iff_refl ((x0 (f Xx)) (g Xy))):((iff ((x0 (f Xx)) (g Xy))) ((x0 (f Xx)) (g Xy)))
% Found (iff_refl ((x0 (f Xx)) (g Xy))) as proof of ((iff ((x0 (f Xx)) (g Xy))) ((cS Xx) Xy))
% Found (iff_refl ((x0 (f Xx)) (g Xy))) as proof of ((iff ((x0 (f Xx)) (g Xy))) ((cS Xx) Xy))
% Found (iff_refl ((x0 (f Xx)) (g Xy))) as proof of ((iff ((x0 (f Xx)) (g Xy))) ((cS Xx) Xy))
% Found (iff_sym00 (iff_refl ((x0 (f Xx)) (g Xy)))) as proof of ((and (((cS Xx) Xy)->((x0 (f Xx)) (g Xy)))) (((x0 (f Xx)) (g Xy))->((cS Xx) Xy)))
% Found ((iff_sym0 ((cS Xx) Xy)) (iff_refl ((x0 (f Xx)) (g Xy)))) as proof of ((and (((cS Xx) Xy)->((x0 (f Xx)) (g Xy)))) (((x0 (f Xx)) (g Xy))->((cS Xx) Xy)))
% Found (((iff_sym ((x0 (f Xx)) (g Xy))) ((cS Xx) Xy)) (iff_refl ((x0 (f Xx)) (g Xy)))) as proof of ((and (((cS Xx) Xy)->((x0 (f Xx)) (g Xy)))) (((x0 (f Xx)) (g Xy))->((cS Xx) Xy)))
% Found (((iff_sym ((x0 (f Xx)) (g Xy))) ((cS Xx) Xy)) (iff_refl ((x0 (f Xx)) (g Xy)))) as proof of ((and (((cS Xx) Xy)->((x0 (f Xx)) (g Xy)))) (((x0 (f Xx)) (g Xy))->((cS Xx) Xy)))
% Found iff_refl0:=(iff_refl ((x0 (f Xx)) (g Xy))):((iff ((x0 (f Xx)) (g Xy))) ((x0 (f Xx)) (g Xy)))
% Found (iff_refl ((x0 (f Xx)) (g Xy))) as proof of ((iff ((x0 (f Xx)) (g Xy))) ((cS Xx) Xy))
% Found (iff_refl ((x0 (f Xx)) (g Xy))) as proof of ((iff ((x0 (f Xx)) (g Xy))) ((cS Xx) Xy))
% Found (iff_refl ((x0 (f Xx)) (g Xy))) as proof of ((iff ((x0 (f Xx)) (g Xy))) ((cS Xx) Xy))
% Found (iff_sym00 (iff_refl ((x0 (f Xx)) (g Xy)))) as proof of ((and (((cS Xx) Xy)->((x0 (f Xx)) (g Xy)))) (((x0 (f Xx)) (g Xy))->((cS Xx) Xy)))
% Found ((iff_sym0 ((cS Xx) Xy)) (iff_refl ((x0 (f Xx)) (g Xy)))) as proof of ((and (((cS Xx) Xy)->((x0 (f Xx)) (g Xy)))) (((x0 (f Xx)) (g Xy))->((cS Xx) Xy)))
% Found (((iff_sym ((x0 (f Xx)) (g Xy))) ((cS Xx) Xy)) (iff_refl ((x0 (f Xx)) (g Xy)))) as proof of ((and (((cS Xx) Xy)->((x0 (f Xx)) (g Xy)))) (((x0 (f Xx)) (g Xy))->((cS Xx) Xy)))
% Found (((iff_sym ((x0 (f Xx)) (g Xy))) ((cS Xx) Xy)) (iff_refl ((x0 (f Xx)) (g Xy)))) as proof of ((and (((cS Xx) Xy)->((x0 (f Xx)) (g Xy)))) (((x0 (f Xx)) (g Xy))->((cS Xx) Xy)))
% Found eta_expansion000:=(eta_expansion00 a0):(((eq ((a->(b->Prop))->Prop)) a0) (fun (x:(a->(b->Prop)))=> (a0 x)))
% Found (eta_expansion00 a0) as proof of (((eq ((a->(b->Prop))->Prop)) a0) b00)
% Found ((eta_expansion0 Prop) a0) as proof of (((eq ((a->(b->Prop))->Prop)) a0) b00)
% Found (((eta_expansion (a->(b->Prop))) Prop) a0) as proof of (((eq ((a->(b->Prop))->Prop)) a0) b00)
% Found (((eta_expansion (a->(b->Prop))) Prop) a0) as proof of (((eq ((a->(b->Prop))->Prop)) a0) b00)
% Found (((eta_expansion (a->(b->Prop))) Prop) a0) as proof of (((eq ((a->(b->Prop))->Prop)) a0) b00)
% Found eta_expansion_dep000:=(eta_expansion_dep00 a0):(((eq ((a->(b->Prop))->Prop)) a0) (fun (x:(a->(b->Prop)))=> (a0 x)))
% Found (eta_expansion_dep00 a0) as proof of (((eq ((a->(b->Prop))->Prop)) a0) b00)
% Found ((eta_expansion_dep0 (fun (x1:(a->(b->Prop)))=> Prop)) a0) as proof of (((eq ((a->(b->Prop))->Prop)) a0) b00)
% Found (((eta_expansion_dep (a->(b->Prop))) (fun (x1:(a->(b->Prop)))=> Prop)) a0) as proof of (((eq ((a->(b->Prop))->Prop)) a0) b00)
% Found (((eta_expansion_dep (a->(b->Prop))) (fun (x1:(a->(b->Prop)))=> Prop)) a0) as proof of (((eq ((a->(b->Prop))->Prop)) a0) b00)
% Found (((eta_expansion_dep (a->(b->Prop))) (fun (x1:(a->(b->Prop)))=> Prop)) a0) as proof of (((eq ((a->(b->Prop))->Prop)) a0) b00)
% Found eta_expansion000:=(eta_expansion00 (fun (Xu:(a->(b->Prop)))=> (forall (Xx:a) (Xy:b), ((iff ((cS Xx) Xy)) ((Xu (f Xx)) (g Xy)))))):(((eq ((a->(b->Prop))->Prop)) (fun (Xu:(a->(b->Prop)))=> (forall (Xx:a) (Xy:b), ((iff ((cS Xx) Xy)) ((Xu (f Xx)) (g Xy)))))) (fun (x:(a->(b->Prop)))=> (forall (Xx:a) (Xy:b), ((iff ((cS Xx) Xy)) ((x (f Xx)) (g Xy))))))
% Found (eta_expansion00 (fun (Xu:(a->(b->Prop)))=> (forall (Xx:a) (Xy:b), ((iff ((cS Xx) Xy)) ((Xu (f Xx)) (g Xy)))))) as proof of (((eq ((a->(b->Prop))->Prop)) (fun (Xu:(a->(b->Prop)))=> (forall (Xx:a) (Xy:b), ((iff ((cS Xx) Xy)) ((Xu (f Xx)) (g Xy)))))) b00)
% Found ((eta_expansion0 Prop) (fun (Xu:(a->(b->Prop)))=> (forall (Xx:a) (Xy:b), ((iff ((cS Xx) Xy)) ((Xu (f Xx)) (g Xy)))))) as proof of (((eq ((a->(b->Prop))->Prop)) (fun (Xu:(a->(b->Prop)))=> (forall (Xx:a) (Xy:b), ((iff ((cS Xx) Xy)) ((Xu (f Xx)) (g Xy)))))) b00)
% Found (((eta_expansion (a->(b->Prop))) Prop) (fun (Xu:(a->(b->Prop)))=> (forall (Xx:a) (Xy:b), ((iff ((cS Xx) Xy)) ((Xu (f Xx)) (g Xy)))))) as proof of (((eq ((a->(b->Prop))->Prop)) (fun (Xu:(a->(b->Prop)))=> (forall (Xx:a) (Xy:b), ((iff ((cS Xx) Xy)) ((Xu (f Xx)) (g Xy)))))) b00)
% Found (((eta_expansion (a->(b->Prop))) Prop) (fun (Xu:(a->(b->Prop)))=> (forall (Xx:a) (Xy:b), ((iff ((cS Xx) Xy)) ((Xu (f Xx)) (g Xy)))))) as proof of (((eq ((a->(b->Prop))->Prop)) (fun (Xu:(a->(b->Prop)))=> (forall (Xx:a) (Xy:b), ((iff ((cS Xx) Xy)) ((Xu (f Xx)) (g Xy)))))) b00)
% Found (((eta_expansion (a->(b->Prop))) Prop) (fun (Xu:(a->(b->Prop)))=> (forall (Xx:a) (Xy:b), ((iff ((cS Xx) Xy)) ((Xu (f Xx)) (g Xy)))))) as proof of (((eq ((a->(b->Prop))->Prop)) (fun (Xu:(a->(b->Prop)))=> (forall (Xx:a) (Xy:b), ((iff ((cS Xx) Xy)) ((Xu (f Xx)) (g Xy)))))) b00)
% Found eq_ref000:=(eq_ref00 (fun (x1:b)=> ((x0 (f Xx)) (g x1)))):(((x0 (f Xx)) (g Xy))->((x0 (f Xx)) (g Xy)))
% Found (eq_ref00 (fun (x1:b)=> ((x0 (f Xx)) (g x1)))) as proof of (((x0 (f Xx)) (g Xy))->((cS Xx) Xy))
% Found ((eq_ref0 Xy) (fun (x1:b)=> ((x0 (f Xx)) (g x1)))) as proof of (((x0 (f Xx)) (g Xy))->((cS Xx) Xy))
% Found (((eq_ref b) Xy) (fun (x1:b)=> ((x0 (f Xx)) (g x1)))) as proof of (((x0 (f Xx)) (g Xy))->((cS Xx) Xy))
% Found (((eq_ref b) Xy) (fun (x1:b)=> ((x0 (f Xx)) (g x1)))) as proof of (((x0 (f Xx)) (g Xy))->((cS Xx) Xy))
% Found (((eq_ref b) Xy) (fun (x1:b)=> ((x0 (f Xx)) (g x1)))) as proof of (((x0 (f Xx)) (g Xy))->((cS Xx) Xy))
% Found eq_ref000:=(eq_ref00 (cS Xx)):(((cS Xx) Xy)->((cS Xx) Xy))
% Found (eq_ref00 (cS Xx)) as proof of (((cS Xx) Xy)->((x0 (f Xx)) (g Xy)))
% Found ((eq_ref0 Xy) (cS Xx)) as proof of (((cS Xx) Xy)->((x0 (f Xx)) (g Xy)))
% Found (((eq_ref b) Xy) (cS Xx)) as proof of (((cS Xx) Xy)->((x0 (f Xx)) (g Xy)))
% Found (((eq_ref b) Xy) (cS Xx)) as proof of (((cS Xx) Xy)->((x0 (f Xx)) (g Xy)))
% Found ((conj00 (((eq_ref b) Xy) (cS Xx))) (((eq_ref b) Xy) (fun (x1:b)=> ((x0 (f Xx)) (g x1))))) as proof of ((and (((cS Xx) Xy)->((x0 (f Xx)) (g Xy)))) (((x0 (f Xx)) (g Xy))->((cS Xx) Xy)))
% Found (((conj0 (((x0 (f Xx)) (g Xy))->((cS Xx) Xy))) (((eq_ref b) Xy) (cS Xx))) (((eq_ref b) Xy) (fun (x1:b)=> ((x0 (f Xx)) (g x1))))) as proof of ((and (((cS Xx) Xy)->((x0 (f Xx)) (g Xy)))) (((x0 (f Xx)) (g Xy))->((cS Xx) Xy)))
% Found ((((conj (((cS Xx) Xy)->((x0 (f Xx)) (g Xy)))) (((x0 (f Xx)) (g Xy))->((cS Xx) Xy))) (((eq_ref b) Xy) (cS Xx))) (((eq_ref b) Xy) (fun (x1:b)=> ((x0 (f Xx)) (g x1))))) as proof of ((and (((cS Xx) Xy)->((x0 (f Xx)) (g Xy)))) (((x0 (f Xx)) (g Xy))->((cS Xx) Xy)))
% Found ((((conj (((cS Xx) Xy)->((x0 (f Xx)) (g Xy)))) (((x0 (f Xx)) (g Xy))->((cS Xx) Xy))) (((eq_ref b) Xy) (cS Xx))) (((eq_ref b) Xy) (fun (x1:b)=> ((x0 (f Xx)) (g x1))))) as proof of ((and (((cS Xx) Xy)->((x0 (f Xx)) (g Xy)))) (((x0 (f Xx)) (g Xy))->((cS Xx) Xy)))
% 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)) (a0 x0))
% Found ((eq_ref Prop) (f0 x0)) as proof of (((eq Prop) (f0 x0)) (a0 x0))
% Found ((eq_ref Prop) (f0 x0)) as proof of (((eq Prop) (f0 x0)) (a0 x0))
% Found (fun (x0:(a->(b->Prop)))=> ((eq_ref Prop) (f0 x0))) as proof of (((eq Prop) (f0 x0)) (a0 x0))
% Found (fun (x0:(a->(b->Prop)))=> ((eq_ref Prop) (f0 x0))) as proof of (forall (x:(a->(b->Prop))), (((eq Prop) (f0 x)) (a0 x)))
% 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)) (a0 x0))
% Found ((eq_ref Prop) (f0 x0)) as proof of (((eq Prop) (f0 x0)) (a0 x0))
% Found ((eq_ref Prop) (f0 x0)) as proof of (((eq Prop) (f0 x0)) (a0 x0))
% Found (fun (x0:(a->(b->Prop)))=> ((eq_ref Prop) (f0 x0))) as proof of (((eq Prop) (f0 x0)) (a0 x0))
% Found (fun (x0:(a->(b->Prop)))=> ((eq_ref Prop) (f0 x0))) as proof of (forall (x:(a->(b->Prop))), (((eq Prop) (f0 x)) (a0 x)))
% Found eq_ref000:=(eq_ref00 (fun (x1:b)=> ((x0 (f Xx)) (g x1)))):(((x0 (f Xx)) (g Xy))->((x0 (f Xx)) (g Xy)))
% Found (eq_ref00 (fun (x1:b)=> ((x0 (f Xx)) (g x1)))) as proof of (((x0 (f Xx)) (g Xy))->((cS Xx) Xy))
% Found ((eq_ref0 Xy) (fun (x1:b)=> ((x0 (f Xx)) (g x1)))) as proof of (((x0 (f Xx)) (g Xy))->((cS Xx) Xy))
% Found (((eq_ref b) Xy) (fun (x1:b)=> ((x0 (f Xx)) (g x1)))) as proof of (((x0 (f Xx)) (g Xy))->((cS Xx) Xy))
% Found (((eq_ref b) Xy) (fun (x1:b)=> ((x0 (f Xx)) (g x1)))) as proof of (((x0 (f Xx)) (g Xy))->((cS Xx) Xy))
% Found (((eq_ref b) Xy) (fun (x1:b)=> ((x0 (f Xx)) (g x1)))) as proof of (((x0 (f Xx)) (g Xy))->((cS Xx) Xy))
% Found eq_ref000:=(eq_ref00 (cS Xx)):(((cS Xx) Xy)->((cS Xx) Xy))
% Found (eq_ref00 (cS Xx)) as proof of (((cS Xx) Xy)->((x0 (f Xx)) (g Xy)))
% Found ((eq_ref0 Xy) (cS Xx)) as proof of (((cS Xx) Xy)->((x0 (f Xx)) (g Xy)))
% Found (((eq_ref b) Xy) (cS Xx)) as proof of (((cS Xx) Xy)->((x0 (f Xx)) (g Xy)))
% Found (((eq_ref b) Xy) (cS Xx)) as proof of (((cS Xx) Xy)->((x0 (f Xx)) (g Xy)))
% Found ((conj00 (((eq_ref b) Xy) (cS Xx))) (((eq_ref b) Xy) (fun (x1:b)=> ((x0 (f Xx)) (g x1))))) as proof of ((and (((cS Xx) Xy)->((x0 (f Xx)) (g Xy)))) (((x0 (f Xx)) (g Xy))->((cS Xx) Xy)))
% Found (((conj0 (((x0 (f Xx)) (g Xy))->((cS Xx) Xy))) (((eq_ref b) Xy) (cS Xx))) (((eq_ref b) Xy) (fun (x1:b)=> ((x0 (f Xx)) (g x1))))) as proof of ((and (((cS Xx) Xy)->((x0 (f Xx)) (g Xy)))) (((x0 (f Xx)) (g Xy))->((cS Xx) Xy)))
% Found ((((conj (((cS Xx) Xy)->((x0 (f Xx)) (g Xy)))) (((x0 (f Xx)) (g Xy))->((cS Xx) Xy))) (((eq_ref b) Xy) (cS Xx))) (((eq_ref b) Xy) (fun (x1:b)=> ((x0 (f Xx)) (g x1))))) as proof of ((and (((cS Xx) Xy)->((x0 (f Xx)) (g Xy)))) (((x0 (f Xx)) (g Xy))->((cS Xx) Xy)))
% Found ((((conj (((cS Xx) Xy)->((x0 (f Xx)) (g Xy)))) (((x0 (f Xx)) (g Xy))->((cS Xx) Xy))) (((eq_ref b) Xy) (cS Xx))) (((eq_ref b) Xy) (fun (x1:b)=> ((x0 (f Xx)) (g x1))))) as proof of ((and (((cS Xx) Xy)->((x0 (f Xx)) (g Xy)))) (((x0 (f Xx)) (g Xy))->((cS Xx) Xy)))
% Found eq_ref000:=(eq_ref00 (fun (x1:b)=> ((x0 (f Xx)) (g x1)))):(((x0 (f Xx)) (g Xy))->((x0 (f Xx)) (g Xy)))
% Found (eq_ref00 (fun (x1:b)=> ((x0 (f Xx)) (g x1)))) as proof of (((x0 (f Xx)) (g Xy))->((cS Xx) Xy))
% Found ((eq_ref0 Xy) (fun (x1:b)=> ((x0 (f Xx)) (g x1)))) as proof of (((x0 (f Xx)) (g Xy))->((cS Xx) Xy))
% Found (((eq_ref b) Xy) (fun (x1:b)=> ((x0 (f Xx)) (g x1)))) as proof of (((x0 (f Xx)) (g Xy))->((cS Xx) Xy))
% Found (((eq_ref b) Xy) (fun (x1:b)=> ((x0 (f Xx)) (g x1)))) as proof of (((x0 (f Xx)) (g Xy))->((cS Xx) Xy))
% Found (((eq_ref b) Xy) (fun (x1:b)=> ((x0 (f Xx)) (g x1)))) as proof of (((x0 (f Xx)) (g Xy))->((cS Xx) Xy))
% Found eq_ref000:=(eq_ref00 (cS Xx)):(((cS Xx) Xy)->((cS Xx) Xy))
% Found (eq_ref00 (cS Xx)) as proof of (((cS Xx) Xy)->((x0 (f Xx)) (g Xy)))
% Found ((eq_ref0 Xy) (cS Xx)) as proof of (((cS Xx) Xy)->((x0 (f Xx)) (g Xy)))
% Found (((eq_ref b) Xy) (cS Xx)) as proof of (((cS Xx) Xy)->((x0 (f Xx)) (g Xy)))
% Found (((eq_ref b) Xy) (cS Xx)) as proof of (((cS Xx) Xy)->((x0 (f Xx)) (g Xy)))
% Found ((conj00 (((eq_ref b) Xy) (cS Xx))) (((eq_ref b) Xy) (fun (x1:b)=> ((x0 (f Xx)) (g x1))))) as proof of ((and (((cS Xx) Xy)->((x0 (f Xx)) (g Xy)))) (((x0 (f Xx)) (g Xy))->((cS Xx) Xy)))
% Found (((conj0 (((x0 (f Xx)) (g Xy))->((cS Xx) Xy))) (((eq_ref b) Xy) (cS Xx))) (((eq_ref b) Xy) (fun (x1:b)=> ((x0 (f Xx)) (g x1))))) as proof of ((and (((cS Xx) Xy)->((x0 (f Xx)) (g Xy)))) (((x0 (f Xx)) (g Xy))->((cS Xx) Xy)))
% Found ((((conj (((cS Xx) Xy)->((x0 (f Xx)) (g Xy)))) (((x0 (f Xx)) (g Xy))->((cS Xx) Xy))) (((eq_ref b) Xy) (cS Xx))) (((eq_ref b) Xy) (fun (x1:b)=> ((x0 (f Xx)) (g x1))))) as proof of ((and (((cS Xx) Xy)->((x0 (f Xx)) (g Xy)))) (((x0 (f Xx)) (g Xy))->((cS Xx) Xy)))
% Found ((((conj (((cS Xx) Xy)->((x0 (f Xx)) (g Xy)))) (((x0 (f Xx)) (g Xy))->((cS Xx) Xy))) (((eq_ref b) Xy) (cS Xx))) (((eq_ref b) Xy) (fun (x1:b)=> ((x0 (f Xx)) (g x1))))) as proof of ((and (((cS Xx) Xy)->((x0 (f Xx)) (g Xy)))) (((x0 (f Xx)) (g Xy))->((cS Xx) Xy)))
% Found eta_expansion_dep000:=(eta_expansion_dep00 b00):(((eq ((a->(b->Prop))->Prop)) b00) (fun (x:(a->(b->Prop)))=> (b00 x)))
% Found (eta_expansion_dep00 b00) as proof of (((eq ((a->(b->Prop))->Prop)) b00) b0)
% Found ((eta_expansion_dep0 (fun (x1:(a->(b->Prop)))=> Prop)) b00) as proof of (((eq ((a->(b->Prop))->Prop)) b00) b0)
% Found (((eta_expansion_dep (a->(b->Prop))) (fun (x1:(a->(b->Prop)))=> Prop)) b00) as proof of (((eq ((a->(b->Prop))->Prop)) b00) b0)
% Found (((eta_expansion_dep (a->(b->Prop))) (fun (x1:(a->(b->Prop)))=> Prop)) b00) as proof of (((eq ((a->(b->Prop))->Prop)) b00) b0)
% Found (((eta_expansion_dep (a->(b->Prop))) (fun (x1:(a->(b->Prop)))=> Prop)) b00) as proof of (((eq ((a->(b->Prop))->Prop)) b00) b0)
% Found eq_ref00:=(eq_ref0 a0):(((eq ((a->(b->Prop))->Prop)) a0) a0)
% Found (eq_ref0 a0) as proof of (((eq ((a->(b->Prop))->Prop)) a0) b00)
% Found ((eq_ref ((a->(b->Prop))->Prop)) a0) as proof of (((eq ((a->(b->Prop))->Prop)) a0) b00)
% Found ((eq_ref ((a->(b->Prop))->Prop)) a0) as proof of (((eq ((a->(b->Prop))->Prop)) a0) b00)
% Found ((eq_ref ((a->(b->Prop))->Prop)) a0) as proof of (((eq ((a->(b->Prop))->Prop)) a0) b00)
% 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)) (a0 x0))
% Found ((eq_ref Prop) (f0 x0)) as proof of (((eq Prop) (f0 x0)) (a0 x0))
% Found ((eq_ref Prop) (f0 x0)) as proof of (((eq Prop) (f0 x0)) (a0 x0))
% Found (fun (x0:(a->(b->Prop)))=> ((eq_ref Prop) (f0 x0))) as proof of (((eq Prop) (f0 x0)) (a0 x0))
% Found (fun (x0:(a->(b->Prop)))=> ((eq_ref Prop) (f0 x0))) as proof of (forall (x:(a->(b->Prop))), (((eq Prop) (f0 x)) (a0 x)))
% 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)) (a0 x0))
% Found ((eq_ref Prop) (f0 x0)) as proof of (((eq Prop) (f0 x0)) (a0 x0))
% Found ((eq_ref Prop) (f0 x0)) as proof of (((eq Prop) (f0 x0)) (a0 x0))
% Found (fun (x0:(a->(b->Prop)))=> ((eq_ref Prop) (f0 x0))) as proof of (((eq Prop) (f0 x0)) (a0 x0))
% Found (fun (x0:(a->(b->Prop)))=> ((eq_ref Prop) (f0 x0))) as proof of (forall (x:(a->(b->Prop))), (((eq Prop) (f0 x)) (a0 x)))
% 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)) (a0 x0))
% Found ((eq_ref Prop) (f0 x0)) as proof of (((eq Prop) (f0 x0)) (a0 x0))
% Found ((eq_ref Prop) (f0 x0)) as proof of (((eq Prop) (f0 x0)) (a0 x0))
% Found (fun (x0:(a->(b->Prop)))=> ((eq_ref Prop) (f0 x0))) as proof of (((eq Prop) (f0 x0)) (a0 x0))
% Found (fun (x0:(a->(b->Prop)))=> ((eq_ref Prop) (f0 x0))) as proof of (forall (x:(a->(b->Prop))), (((eq Prop) (f0 x)) (a0 x)))
% 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)) (a0 x0))
% Found ((eq_ref Prop) (f0 x0)) as proof of (((eq Prop) (f0 x0)) (a0 x0))
% Found ((eq_ref Prop) (f0 x0)) as proof of (((eq Prop) (f0 x0)) (a0 x0))
% Found (fun (x0:(a->(b->Prop)))=> ((eq_ref Prop) (f0 x0))) as proof of (((eq Prop) (f0 x0)) (a0 x0))
% Found (fun (x0:(a->(b->Prop)))=> ((eq_ref Prop) (f0 x0))) as proof of (forall (x:(a->(b->Prop))), (((eq Prop) (f0 x)) (a0 x)))
% Found eq_ref00:=(eq_ref0 b00):(((eq ((a->(b->Prop))->Prop)) b00) b00)
% Found (eq_ref0 b00) as proof of (((eq ((a->(b->Prop))->Prop)) b00) b0)
% Found ((eq_ref ((a->(b->Prop))->Prop)) b00) as proof of (((eq ((a->(b->Prop))->Prop)) b00) b0)
% Found ((eq_ref ((a->(b->Prop))->Prop)) b00) as proof of (((eq ((a->(b->Prop))->Prop)) b00) b0)
% Found ((eq_ref ((a->(b->Prop))->Prop)) b00) as proof of (((eq ((a->(b->Prop))->Prop)) b00) b0)
% Found eq_ref00:=(eq_ref0 a0):(((eq ((a->(b->Prop))->Prop)) a0) a0)
% Found (eq_ref0 a0) as proof of (((eq ((a->(b->Prop))->Prop)) a0) b00)
% Found ((eq_ref ((a->(b->Prop))->Prop)) a0) as proof of (((eq ((a->(b->Prop))->Prop)) a0) b00)
% Found ((eq_ref ((a->(b->Prop))->Prop)) a0) as proof of (((eq ((a->(b->Prop))->Prop)) a0) b00)
% Found ((eq_ref ((a->(b->Prop))->Prop)) a0) as proof of (((eq ((a->(b->Prop))->Prop)) a0) b00)
% Found eq_ref00:=(eq_ref0 b0):(((eq ((a->(b->Prop))->Prop)) b0) b0)
% Found (eq_ref0 b0) as proof of (((eq ((a->(b->Prop))->Prop)) b0) f0)
% Found ((eq_ref ((a->(b->Prop))->Prop)) b0) as proof of (((eq ((a->(b->Prop))->Prop)) b0) f0)
% Found ((eq_ref ((a->(b->Prop))->Prop)) b0) as proof of (((eq ((a->(b->Prop))->Prop)) b0) f0)
% Found ((eq_ref ((a->(b->Prop))->Prop)) b0) as proof of (((eq ((a->(b->Prop))->Prop)) b0) f0)
% Found eta_expansion_dep000:=(eta_expansion_dep00 a0):(((eq ((a->(b->Prop))->Prop)) a0) (fun (x:(a->(b->Prop)))=> (a0 x)))
% Found (eta_expansion_dep00 a0) as proof of (((eq ((a->(b->Prop))->Prop)) a0) b0)
% Found ((eta_expansion_dep0 (fun (x1:(a->(b->Prop)))=> Prop)) a0) as proof of (((eq ((a->(b->Prop))->Prop)) a0) b0)
% Found (((eta_expansion_dep (a->(b->Prop))) (fun (x1:(a->(b->Prop)))=> Prop)) a0) as proof of (((eq ((a->(b->Prop))->Prop)) a0) b0)
% Found (((eta_expansion_dep (a->(b->Prop))) (fun (x1:(a->(b->Prop)))=> Prop)) a0) as proof of (((eq ((a->(b->Prop))->Prop)) a0) b0)
% Found (((eta_expansion_dep (a->(b->Prop))) (fun (x1:(a->(b->Prop)))=> Prop)) a0) as proof of (((eq ((a->(b->Prop))->Prop)) a0) b0)
% Found eq_ref00:=(eq_ref0 a0):(((eq ((a->(b->Prop))->Prop)) a0) a0)
% Found (eq_ref0 a0) as proof of (((eq ((a->(b->Prop))->Prop)) a0) b0)
% Found ((eq_ref ((a->(b->Prop))->Prop)) a0) as proof of (((eq ((a->(b->Prop))->Prop)) a0) b0)
% Found ((eq_ref ((a->(b->Prop))->Prop)) a0) as proof of (((eq ((a->(b->Prop))->Prop)) a0) b0)
% Found ((eq_ref ((a->(b->Prop))->Prop)) a0) as proof of (((eq ((a->(b->Prop))->Prop)) a0) b0)
% Found eta_expansion000:=(eta_expansion00 b0):(((eq ((a->(b->Prop))->Prop)) b0) (fun (x:(a->(b->Prop)))=> (b0 x)))
% Found (eta_expansion00 b0) as proof of (((eq ((a->(b->Prop))->Prop)) b0) f0)
% Found ((eta_expansion0 Prop) b0) as proof of (((eq ((a->(b->Prop))->Prop)) b0) f0)
% Found (((eta_expansion (a->(b->Prop))) Prop) b0) as proof of (((eq ((a->(b->Prop))->Prop)) b0) f0)
% Found (((eta_expansion (a->(b->Prop))) Prop) b0) as proof of (((eq ((a->(b->Prop))->Prop)) b0) f0)
% Found (((eta_expansion (a->(b->Prop))) Prop) b0) as proof of (((eq ((a->(b->Prop))->Prop)) b0) f0)
% Found eta_expansion_dep000:=(eta_expansion_dep00 a0):(((eq ((a->(b->Prop))->Prop)) a0) (fun (x:(a->(b->Prop)))=> (a0 x)))
% Found (eta_expansion_dep00 a0) as proof of (((eq ((a->(b->Prop))->Prop)) a0) b0)
% Found ((eta_expansion_dep0 (fun (x1:(a->(b->Prop)))=> Prop)) a0) as proof of (((eq ((a->(b->Prop))->Prop)) a0) b0)
% Found (((eta_expansion_dep (a->(b->Prop))) (fun (x1:(a->(b->Prop)))=> Prop)) a0) as proof of (((eq ((a->(b->Prop))->Prop)) a0) b0)
% Found (((eta_expansion_dep (a->(b->Prop))) (fun (x1:(a->(b->Prop)))=> Prop)) a0) as proof of (((eq ((a->(b->Prop))->Prop)) a0) b0)
% Found (((eta_expansion_dep (a->(b->Prop))) (fun (x1:(a->(b->Prop)))=> Prop)) a0) as proof of (((eq ((a->(b->Prop))->Prop)) a0) b0)
% Found eta_expansion_dep000:=(eta_expansion_dep00 a0):(((eq ((a->(b->Prop))->Prop)) a0) (fun (x:(a->(b->Prop)))=> (a0 x)))
% Found (eta_expansion_dep00 a0) as proof of (((eq ((a->(b->Prop))->Prop)) a0) b0)
% Found ((eta_expansion_dep0 (fun (x1:(a->(b->Prop)))=> Prop)) a0) as proof of (((eq ((a->(b->Prop))->Prop)) a0) b0)
% Found (((eta_expansion_dep (a->(b->Prop))) (fun (x1:(a->(b->Prop)))=> Prop)) a0) as proof of (((eq ((a->(b->Prop))->Prop)) a0) b0)
% Found (((eta_expansion_dep (a->(b->Prop))) (fun (x1:(a->(b->Prop)))=> Prop)) a0) as proof of (((eq ((a->(b->Prop))->Prop)) a0) b0)
% Found (((eta_expansion_dep (a->(b->Prop))) (fun (x1:(a->(b->Prop)))=> Prop)) a0) as proof of (((eq ((a->(b->Prop))->Prop)) a0) b0)
% Found eq_ref00:=(eq_ref0 b0):(((eq ((a->(b->Prop))->Prop)) b0) b0)
% Found (eq_ref0 b0) as proof of (((eq ((a->(b->Prop))->Prop)) b0) f0)
% Found ((eq_ref ((a->(b->Prop))->Prop)) b0) as proof of (((eq ((a->(b->Prop))->Prop)) b0) f0)
% Found ((eq_ref ((a->(b->Prop))->Prop)) b0) as proof of (((eq ((a->(b->Prop))->Prop)) b0) f0)
% Found ((eq_ref ((a->(b->Prop))->Prop)) b0) as proof of (((eq ((a->(b->Prop))->Prop)) b0) f0)
% Found eq_ref00:=(eq_ref0 b0):(((eq ((a->(b->Prop))->Prop)) b0) b0)
% Found (eq_ref0 b0) as proof of (((eq ((a->(b->Prop))->Prop)) b0) f0)
% Found ((eq_ref ((a->(b->Prop))->Prop)) b0) as proof of (((eq ((a->(b->Prop))->Prop)) b0) f0)
% Found ((eq_ref ((a->(b->Prop))->Prop)) b0) as proof of (((eq ((a->(b->Prop))->Prop)) b0) f0)
% Found ((eq_ref ((a->(b->Prop))->Prop)) b0) as proof of (((eq ((a->(b->Prop))->Prop)) b0) f0)
% Found eta_expansion000:=(eta_expansion00 a0):(((eq ((a->(b->Prop))->Prop)) a0) (fun (x:(a->(b->Prop)))=> (a0 x)))
% Found (eta_expansion00 a0) as proof of (((eq ((a->(b->Prop))->Prop)) a0) b0)
% Found ((eta_expansion0 Prop) a0) as proof of (((eq ((a->(b->Prop))->Prop)) a0) b0)
% Found (((eta_expansion (a->(b->Prop))) Prop) a0) as proof of (((eq ((a->(b->Prop))->Prop)) a0) b0)
% Found (((eta_expansion (a->(b->Prop))) Prop) a0) as proof of (((eq ((a->(b->Prop))->Prop)) a0) b0)
% Found (((eta_expansion (a->(b->Prop))) Prop) a0) as proof of (((eq ((a->(b->Prop))->Prop)) a0) b0)
% Found eta_expansion000:=(eta_expansion00 b0):(((eq ((a->(b->Prop))->Prop)) b0) (fun (x:(a->(b->Prop)))=> (b0 x)))
% Found (eta_expansion00 b0) as proof of (((eq ((a->(b->Prop))->Prop)) b0) f0)
% Found ((eta_expansion0 Prop) b0) as proof of (((eq ((a->(b->Prop))->Prop)) b0) f0)
% Found (((eta_expansion (a->(b->Prop))) Prop) b0) as proof of (((eq ((a->(b->Prop))->Prop)) b0) f0)
% Found (((eta_expansion (a->(b->Prop))) Prop) b0) as proof of (((eq ((a->(b->Prop))->Prop)) b0) f0)
% Found (((eta_expansion (a->(b->Prop))) Prop) b0) as proof of (((eq ((a->(b->Prop))->Prop)) b0) f0)
% Found eq_ref00:=(eq_ref0 b0):(((eq ((a->(b->Prop))->Prop)) b0) b0)
% Found (eq_ref0 b0) as proof of (((eq ((a->(b->Prop))->Prop)) b0) f0)
% Found ((eq_ref ((a->(b->Prop))->Prop)) b0) as proof of (((eq ((a->(b->Prop))->Prop)) b0) f0)
% Found ((eq_ref ((a->(b->Prop))->Prop)) b0) as proof of (((eq ((a->(b->Prop))->Prop)) b0) f0)
% Found ((eq_ref ((a->(b->Prop))->Prop)) b0) as proof of (((eq ((a->(b->Prop))->Prop)) b0) f0)
% Found eta_expansion_dep000:=(eta_expansion_dep00 a0):(((eq ((a->(b->Prop))->Prop)) a0) (fun (x:(a->(b->Prop)))=> (a0 x)))
% Found (eta_expansion_dep00 a0) as proof of (((eq ((a->(b->Prop))->Prop)) a0) b00)
% Found ((eta_expansion_dep0 (fun (x3:(a->(b->Prop)))=> Prop)) a0) as proof of (((eq ((a->(b->Prop))->Prop)) a0) b00)
% Found (((eta_expansion_dep (a->(b->Prop))) (fun (x3:(a->(b->Prop)))=> Prop)) a0) as proof of (((eq ((a->(b->Prop))->Prop)) a0) b00)
% Found (((eta_expansion_dep (a->(b->Prop))) (fun (x3:(a->(b->Prop)))=> Prop)) a0) as proof of (((eq ((a->(b->Prop))->Prop)) a0) b00)
% Found (((eta_expansion_dep (a->(b->Prop))) (fun (x3:(a->(b->Prop)))=> Prop)) a0) as proof of (((eq ((a->(b->Prop))->Prop)) a0) b00)
% Found iff_refl0:=(iff_refl ((x2 (f Xx)) (g Xy))):((iff ((x2 (f Xx)) (g Xy))) ((x2 (f Xx)) (g Xy)))
% Found (iff_refl ((x2 (f Xx)) (g Xy))) as proof of ((iff ((x2 (f Xx)) (g Xy))) ((cS Xx) Xy))
% Found (iff_refl ((x2 (f Xx)) (g Xy))) as proof of ((iff ((x2 (f Xx)) (g Xy))) ((cS Xx) Xy))
% Found (iff_refl ((x2 (f Xx)) (g Xy))) as proof of ((iff ((x2 (f Xx)) (g Xy))) ((cS Xx) Xy))
% Found (iff_sym00 (iff_refl ((x2 (f Xx)) (g Xy)))) as proof of ((and (((cS Xx) Xy)->((x2 (f Xx)) (g Xy)))) (((x2 (f Xx)) (g Xy))->((cS Xx) Xy)))
% Found ((iff_sym0 ((cS Xx) Xy)) (iff_refl ((x2 (f Xx)) (g Xy)))) as proof of ((and (((cS Xx) Xy)->((x2 (f Xx)) (g Xy)))) (((x2 (f Xx)) (g Xy))->((cS Xx) Xy)))
% Found (((iff_sym ((x2 (f Xx)) (g Xy))) ((cS Xx) Xy)) (iff_refl ((x2 (f Xx)) (g Xy)))) as proof of ((and (((cS Xx) Xy)->((x2 (f Xx)) (g Xy)))) (((x2 (f Xx)) (g Xy))->((cS Xx) Xy)))
% Found (((iff_sym ((x2 (f Xx)) (g Xy))) ((cS Xx) Xy)) (iff_refl ((x2 (f Xx)) (g Xy)))) as proof of ((and (((cS Xx) Xy)->((x2 (f Xx)) (g Xy)))) (((x2 (f Xx)) (g Xy))->((cS Xx) Xy)))
% Found eta_expansion000:=(eta_expansion00 a0):(((eq ((a->(b->Prop))->Prop)) a0) (fun (x:(a->(b->Prop)))=> (a0 x)))
% Found (eta_expansion00 a0) as proof of (((eq ((a->(b->Prop))->Prop)) a0) b00)
% Found ((eta_expansion0 Prop) a0) as proof of (((eq ((a->(b->Prop))->Prop)) a0) b00)
% Found (((eta_expansion (a->(b->Prop))) Prop) a0) as proof of (((eq ((a->(b->Prop))->Prop)) a0) b00)
% Found (((eta_expansion (a->(b->Prop))) Prop) a0) as proof of (((eq ((a->(b->Prop))->Prop)) a0) b00)
% Found (((eta_expansion (a->(b->Prop))) Prop) a0) as proof of (((eq ((a->(b->Prop))->Prop)) a0) b00)
% Found eta_expansion_dep000:=(eta_expansion_dep00 a0):(((eq ((a->(b->Prop))->Prop)) a0) (fun (x:(a->(b->Prop)))=> (a0 x)))
% Found (eta_expansion_dep00 a0) as proof of (((eq ((a->(b->Prop))->Prop)) a0) b00)
% Found ((eta_expansion_dep0 (fun (x3:(a->(b->Prop)))=> Prop)) a0) as proof of (((eq ((a->(b->Prop))->Prop)) a0) b00)
% Found (((eta_expansion_dep (a->(b->Prop))) (fun (x3:(a->(b->Prop)))=> Prop)) a0) as proof of (((eq ((a->(b->Prop))->Prop)) a0) b00)
% Found (((eta_expansion_dep (a->(b->Prop))) (fun (x3:(a->(b->Prop)))=> Prop)) a0) as proof of (((eq ((a->(b->Prop))->Prop)) a0) b00)
% Found (((eta_expansion_dep (a->(b->Prop))) (fun (x3:(a->(b->Prop)))=> Prop)) a0) as proof of (((eq ((a->(b->Prop))->Prop)) a0) b00)
% Found iff_refl0:=(iff_refl ((x2 (f Xx)) (g Xy))):((iff ((x2 (f Xx)) (g Xy))) ((x2 (f Xx)) (g Xy)))
% Found (iff_refl ((x2 (f Xx)) (g Xy))) as proof of ((iff ((x2 (f Xx)) (g Xy))) ((cS Xx) Xy))
% Found (iff_refl ((x2 (f Xx)) (g Xy))) as proof of ((iff ((x2 (f Xx)) (g Xy))) ((cS Xx) Xy))
% Found (iff_refl ((x2 (f Xx)) (g Xy))) as proof of ((iff ((x2 (f Xx)) (g Xy))) ((cS Xx) Xy))
% Found (iff_sym00 (iff_refl ((x2 (f Xx)) (g Xy)))) as proof of ((and (((cS Xx) Xy)->((x2 (f Xx)) (g Xy)))) (((x2 (f Xx)) (g Xy))->((cS Xx) Xy)))
% Found ((iff_sym0 ((cS Xx) Xy)) (iff_refl ((x2 (f Xx)) (g Xy)))) as proof of ((and (((cS Xx) Xy)->((x2 (f Xx)) (g Xy)))) (((x2 (f Xx)) (g Xy))->((cS Xx) Xy)))
% Found (((iff_sym ((x2 (f Xx)) (g Xy))) ((cS Xx) Xy)) (iff_refl ((x2 (f Xx)) (g Xy)))) as proof of ((and (((cS Xx) Xy)->((x2 (f Xx)) (g Xy)))) (((x2 (f Xx)) (g Xy))->((cS Xx) Xy)))
% Found (((iff_sym ((x2 (f Xx)) (g Xy))) ((cS Xx) Xy)) (iff_refl ((x2 (f Xx)) (g Xy)))) as proof of ((and (((cS Xx) Xy)->((x2 (f Xx)) (g Xy)))) (((x2 (f Xx)) (g Xy))->((cS Xx) Xy)))
% Found iff_refl0:=(iff_refl ((x2 (f Xx)) (g Xy))):((iff ((x2 (f Xx)) (g Xy))) ((x2 (f Xx)) (g Xy)))
% Found (iff_refl ((x2 (f Xx)) (g Xy))) as proof of ((iff ((x2 (f Xx)) (g Xy))) ((cS Xx) Xy))
% Found (iff_refl ((x2 (f Xx)) (g Xy))) as proof of ((iff ((x2 (f Xx)) (g Xy))) ((cS Xx) Xy))
% Found (iff_refl ((x2 (f Xx)) (g Xy))) as proof of ((iff ((x2 (f Xx)) (g Xy))) ((cS Xx) Xy))
% Found (iff_sym00 (iff_refl ((x2 (f Xx)) (g Xy)))) as proof of ((and (((cS Xx) Xy)->((x2 (f Xx)) (g Xy)))) (((x2 (f Xx)) (g Xy))->((cS Xx) Xy)))
% Found ((iff_sym0 ((cS Xx) Xy)) (iff_refl ((x2 (f Xx)) (g Xy)))) as proof of ((and (((cS Xx) Xy)->((x2 (f Xx)) (g Xy)))) (((x2 (f Xx)) (g Xy))->((cS Xx) Xy)))
% Found (((iff_sym ((x2 (f Xx)) (g Xy))) ((cS Xx) Xy)) (iff_refl ((x2 (f Xx)) (g Xy)))) as proof of ((and (((cS Xx) Xy)->((x2 (f Xx)) (g Xy)))) (((x2 (f Xx)) (g Xy))->((cS Xx) Xy)))
% Found (((iff_sym ((x2 (f Xx)) (g Xy))) ((cS Xx) Xy)) (iff_refl ((x2 (f Xx)) (g Xy)))) as proof of ((and (((cS Xx) Xy)->((x2 (f Xx)) (g Xy)))) (((x2 (f Xx)) (g Xy))->((cS Xx) Xy)))
% Found iff_refl0:=(iff_refl ((x0 (f Xx)) (g Xy))):((iff ((x0 (f Xx)) (g Xy))) ((x0 (f Xx)) (g Xy)))
% Found (iff_refl ((x0 (f Xx)) (g Xy))) as proof of ((iff ((x0 (f Xx)) (g Xy))) ((cS Xx) Xy))
% Found (iff_refl ((x0 (f Xx)) (g Xy))) as proof of ((iff ((x0 (f Xx)) (g Xy))) ((cS Xx) Xy))
% Found (iff_refl ((x0 (f Xx)) (g Xy))) as proof of ((iff ((x0 (f Xx)) (g Xy))) ((cS Xx) Xy))
% Found (iff_sym00 (iff_refl ((x0 (f Xx)) (g Xy)))) as proof of ((iff ((cS Xx) Xy)) ((x0 (f Xx)) (g Xy)))
% Found ((iff_sym0 ((cS Xx) Xy)) (iff_refl ((x0 (f Xx)) (g Xy)))) as proof of ((iff ((cS Xx) Xy)) ((x0 (f Xx)) (g Xy)))
% Found (((iff_sym ((x0 (f Xx)) (g Xy))) ((cS Xx) Xy)) (iff_refl ((x0 (f Xx)) (g Xy)))) as proof of ((iff ((cS Xx) Xy)) ((x0 (f Xx)) (g Xy)))
% Found iff_refl0:=(iff_refl ((x2 (f Xx)) (g Xy))):((iff ((x2 (f Xx)) (g Xy))) ((x2 (f Xx)) (g Xy)))
% Found (iff_refl ((x2 (f Xx)) (g Xy))) as proof of ((iff ((x2 (f Xx)) (g Xy))) ((cS Xx) Xy))
% Found (iff_refl ((x2 (f Xx)) (g Xy))) as proof of ((iff ((x2 (f Xx)) (g Xy))) ((cS Xx) Xy))
% Found (iff_refl ((x2 (f Xx)) (g Xy))) as proof of ((iff ((x2 (f Xx)) (g Xy))) ((cS Xx) Xy))
% Found (iff_sym00 (iff_refl ((x2 (f Xx)) (g Xy)))) as proof of ((and (((cS Xx) Xy)->((x2 (f Xx)) (g Xy)))) (((x2 (f Xx)) (g Xy))->((cS Xx) Xy)))
% Found ((iff_sym0 ((cS Xx) Xy)) (iff_refl ((x2 (f Xx)) (g Xy)))) as proof of ((and (((cS Xx) Xy)->((x2 (f Xx)) (g Xy)))) (((x2 (f Xx)) (g Xy))->((cS Xx) Xy)))
% Found (((iff_sym ((x2 (f Xx)) (g Xy))) ((cS Xx) Xy)) (iff_refl ((x2 (f Xx)) (g Xy)))) as proof of ((and (((cS Xx) Xy)->((x2 (f Xx)) (g Xy)))) (((x2 (f Xx)) (g Xy))->((cS Xx) Xy)))
% Found (((iff_sym ((x2 (f Xx)) (g Xy))) ((cS Xx) Xy)) (iff_refl ((x2 (f Xx)) (g Xy)))) as proof of ((and (((cS Xx) Xy)->((x2 (f Xx)) (g Xy)))) (((x2 (f Xx)) (g Xy))->((cS Xx) Xy)))
% Found eq_ref00:=(eq_ref0 a0):(((eq ((a->(b->Prop))->Prop)) a0) a0)
% Found (eq_ref0 a0) as proof of (((eq ((a->(b->Prop))->Prop)) a0) b00)
% Found ((eq_ref ((a->(b->Prop))->Prop)) a0) as proof of (((eq ((a->(b->Prop))->Prop)) a0) b00)
% Found ((eq_ref ((a->(b->Prop))->Prop)) a0) as proof of (((eq ((a->(b->Prop))->Prop)) a0) b00)
% Found ((eq_ref ((a->(b->Prop))->Prop)) a0) as proof of (((eq ((a->(b->Prop))->Prop)) a0) b00)
% Found eq_ref00:=(eq_ref0 (f0 x2)):(((eq Prop) (f0 x2)) (f0 x2))
% Found (eq_ref0 (f0 x2)) as proof of (((eq Prop) (f0 x2)) (a0 x2))
% Found ((eq_ref Prop) (f0 x2)) as proof of (((eq Prop) (f0 x2)) (a0 x2))
% Found ((eq_ref Prop) (f0 x2)) as proof of (((eq Prop) (f0 x2)) (a0 x2))
% Found (fun (x2:(a->(b->Prop)))=> ((eq_ref Prop) (f0 x2))) as proof of (((eq Prop) (f0 x2)) (a0 x2))
% Found (fun (x2:(a->(b->Prop)))=> ((eq_ref Prop) (f0 x2))) as proof of (forall (x:(a->(b->Prop))), (((eq Prop) (f0 x)) (a0 x)))
% Found eq_ref00:=(eq_ref0 (f0 x2)):(((eq Prop) (f0 x2)) (f0 x2))
% Found (eq_ref0 (f0 x2)) as proof of (((eq Prop) (f0 x2)) (a0 x2))
% Found ((eq_ref Prop) (f0 x2)) as proof of (((eq Prop) (f0 x2)) (a0 x2))
% Found ((eq_ref Prop) (f0 x2)) as proof of (((eq Prop) (f0 x2)) (a0 x2))
% Found (fun (x2:(a->(b->Prop)))=> ((eq_ref Prop) (f0 x2))) as proof of (((eq Prop) (f0 x2)) (a0 x2))
% Found (fun (x2:(a->(b->Prop)))=> ((eq_ref Prop) (f0 x2))) as proof of (forall (x:(a->(b->Prop))), (((eq Prop) (f0 x)) (a0 x)))
% Found iff_refl0:=(iff_refl ((x2 (f Xx)) (g Xy))):((iff ((x2 (f Xx)) (g Xy))) ((x2 (f Xx)) (g Xy)))
% Found (iff_refl ((x2 (f Xx)) (g Xy))) as proof of ((iff ((x2 (f Xx)) (g Xy))) ((cS Xx) Xy))
% Found (iff_refl ((x2 (f Xx)) (g Xy))) as proof of ((iff ((x2 (f Xx)) (g Xy))) ((cS Xx) Xy))
% Found (iff_refl ((x2 (f Xx)) (g Xy))) as proof of ((iff ((x2 (f Xx)) (g Xy))) ((cS Xx) Xy))
% Found (iff_sym00 (iff_refl ((x2 (f Xx)) (g Xy)))) as proof of ((and (((cS Xx) Xy)->((x2 (f Xx)) (g Xy)))) (((x2 (f Xx)) (g Xy))->((cS Xx) Xy)))
% Found ((iff_sym0 ((cS Xx) Xy)) (iff_refl ((x2 (f Xx)) (g Xy)))) as proof of ((and (((cS Xx) Xy)->((x2 (f Xx)) (g Xy)))) (((x2 (f Xx)) (g Xy))->((cS Xx) Xy)))
% Found (((iff_sym ((x2 (f Xx)) (g Xy))) ((cS Xx) Xy)) (iff_refl ((x2 (f Xx)) (g Xy)))) as proof of ((and (((cS Xx) Xy)->((x2 (f Xx)) (g Xy)))) (((x2 (f Xx)) (g Xy))->((cS Xx) Xy)))
% Found (((iff_sym ((x2 (f Xx)) (g Xy))) ((cS Xx) Xy)) (iff_refl ((x2 (f Xx)) (g Xy)))) as proof of ((and (((cS Xx) Xy)->((x2 (f Xx)) (g Xy)))) (((x2 (f Xx)) (g Xy))->((cS Xx) Xy)))
% Found eq_ref00:=(eq_ref0 b00):(((eq ((a->(b->Prop))->Prop)) b00) b00)
% Found (eq_ref0 b00) as proof of (((eq ((a->(b->Prop))->Prop)) b00) b0)
% Found ((eq_ref ((a->(b->Prop))->Prop)) b00) as proof of (((eq ((a->(b->Prop))->Prop)) b00) b0)
% Found ((eq_ref ((a->(b->Prop))->Prop)) b00) as proof of (((eq ((a->(b->Prop))->Prop)) b00) b0)
% Found ((eq_ref ((a->(b->Prop))->Prop)) b00) as proof of (((eq ((a->(b->Prop))->Prop)) b00) b0)
% Found eta_expansion000:=(eta_expansion00 a0):(((eq ((a->(b->Prop))->Prop)) a0) (fun (x:(a->(b->Prop)))=> (a0 x)))
% Found (eta_expansion00 a0) as proof of (((eq ((a->(b->Prop))->Prop)) a0) b00)
% Found ((eta_expansion0 Prop) a0) as proof of (((eq ((a->(b->Prop))->Prop)) a0) b00)
% Found (((eta_expansion (a->(b->Prop))) Prop) a0) as proof of (((eq ((a->(b->Prop))->Prop)) a0) b00)
% Found (((eta_expansion (a->(b->Prop))) Prop) a0) as proof of (((eq ((a->(b->Prop))->Prop)) a0) b00)
% Found (((eta_expansion (a->(b->Prop))) Prop) a0) as proof of (((eq ((a->(b->Prop))->Prop)) a0) b00)
% Found eta_expansion_dep000:=(eta_expansion_dep00 a0):(((eq ((a->(b->Prop))->Prop)) a0) (fun (x:(a->(b->Prop)))=> (a0 x)))
% Found (eta_expansion_dep00 a0) as proof of (((eq ((a->(b->Prop))->Prop)) a0) b00)
% Found ((eta_expansion_dep0 (fun (x3:(a->(b->Prop)))=> Prop)) a0) as proof of (((eq ((a->(b->Prop))->Prop)) a0) b00)
% Found (((eta_expansion_dep (a->(b->Prop))) (fun (x3:(a->(b->Prop)))=> Prop)) a0) as proof of (((eq ((a->(b->Prop))->Prop)) a0) b00)
% Found (((eta_expansion_dep (a->(b->Prop))) (fun (x3:(a->(b->Prop)))=> Prop)) a0) as proof of (((eq ((a->(b->Prop))->Prop)) a0) b00)
% Found (((eta_expansion_dep (a->(b->Prop))) (fun (x3:(a->(b->Prop)))=> Prop)) a0) as proof of (((eq ((a->(b->Prop))->Prop)) a0) b00)
% Found eq_ref000:=(eq_ref00 (fun (x3:b)=> ((x2 (f Xx)) (g x3)))):(((x2 (f Xx)) (g Xy))->((x2 (f Xx)) (g Xy)))
% Found (eq_ref00 (fun (x3:b)=> ((x2 (f Xx)) (g x3)))) as proof of (((x2 (f Xx)) (g Xy))->((cS Xx) Xy))
% Found ((eq_ref0 Xy) (fun (x3:b)=> ((x2 (f Xx)) (g x3)))) as proof of (((x2 (f Xx)) (g Xy))->((cS Xx) Xy))
% Found (((eq_ref b) Xy) (fun (x3:b)=> ((x2 (f Xx)) (g x3)))) as proof of (((x2 (f Xx)) (g Xy))->((cS Xx) Xy))
% Found (((eq_ref b) Xy) (fun (x3:b)=> ((x2 (f Xx)) (g x3)))) as proof of (((x2 (f Xx)) (g Xy))->((cS Xx) Xy))
% Found (((eq_ref b) Xy) (fun (x3:b)=> ((x2 (f Xx)) (g x3)))) as proof of (((x2 (f Xx)) (g Xy))->((cS Xx) Xy))
% Found eq_ref000:=(eq_ref00 (cS Xx)):(((cS Xx) Xy)->((cS Xx) Xy))
% Found (eq_ref00 (cS Xx)) as proof of (((cS Xx) Xy)->((x2 (f Xx)) (g Xy)))
% Found ((eq_ref0 Xy) (cS Xx)) as proof of (((cS Xx) Xy)->((x2 (f Xx)) (g Xy)))
% Found (((eq_ref b) Xy) (cS Xx)) as proof of (((cS Xx) Xy)->((x2 (f Xx)) (g Xy)))
% Found (((eq_ref b) Xy) (cS Xx)) as proof of (((cS Xx) Xy)->((x2 (f Xx)) (g Xy)))
% Found ((conj00 (((eq_ref b) Xy) (cS Xx))) (((eq_ref b) Xy) (fun (x3:b)=> ((x2 (f Xx)) (g x3))))) as proof of ((and (((cS Xx) Xy)->((x2 (f Xx)) (g Xy)))) (((x2 (f Xx)) (g Xy))->((cS Xx) Xy)))
% Found (((conj0 (((x2 (f Xx)) (g Xy))->((cS Xx) Xy))) (((eq_ref b) Xy) (cS Xx))) (((eq_ref b) Xy) (fun (x3:b)=> ((x2 (f Xx)) (g x3))))) as proof of ((and (((cS Xx) Xy)->((x2 (f Xx)) (g Xy)))) (((x2 (f Xx)) (g Xy))->((cS Xx) Xy)))
% Found ((((conj (((cS Xx) Xy)->((x2 (f Xx)) (g Xy)))) (((x2 (f Xx)) (g Xy))->((cS Xx) Xy))) (((eq_ref b) Xy) (cS Xx))) (((eq_ref b) Xy) (fun (x3:b)=> ((x2 (f Xx)) (g x3))))) as proof of ((and (((cS Xx) Xy)->((x2 (f Xx)) (g Xy)))) (((x2 (f Xx)) (g Xy))->((cS Xx) Xy)))
% Found ((((conj (((cS Xx) Xy)->((x2 (f Xx)) (g Xy)))) (((x2 (f Xx)) (g Xy))->((cS Xx) Xy))) (((eq_ref b) Xy) (cS Xx))) (((eq_ref b) Xy) (fun (x3:b)=> ((x2 (f Xx)) (g x3))))) as proof of ((and (((cS Xx) Xy)->((x2 (f Xx)) (g Xy)))) (((x2 (f Xx)) (g Xy))->((cS Xx) Xy)))
% Found eq_ref00:=(eq_ref0 a0):(((eq ((a->(b->Prop))->Prop)) a0) a0)
% Found (eq_ref0 a0) as proof of (((eq ((a->(b->Prop))->Prop)) a0) b00)
% Found ((eq_ref ((a->(b->Prop))->Prop)) a0) as proof of (((eq ((a->(b->Prop))->Prop)) a0) b00)
% Found ((eq_ref ((a->(b->Prop))->Prop)) a0) as proof of (((eq ((a->(b->Prop))->Prop)) a0) b00)
% Found ((eq_ref ((a->(b->Prop))->Prop)) a0) as proof of (((eq ((a->(b->Prop))->Prop)) a0) b00)
% Found eq_ref00:=(eq_ref0 a0):(((eq ((a->(b->Prop))->Prop)) a0) a0)
% Found (eq_ref0 a0) as proof of (((eq ((a->(b->Prop))->Prop)) a0) b00)
% Found ((eq_ref ((a->(b->Prop))->Prop)) a0) as proof of (((eq ((a->(b->Prop))->Prop)) a0) b00)
% Found ((eq_ref ((a->(b->Prop))->Prop)) a0) as proof of (((eq ((a->(b->Prop))->Prop)) a0) b00)
% Found ((eq_ref ((a->(b->Prop))->Prop)) a0) as proof of (((eq ((a->(b->Prop))->Prop)) a0) b00)
% Found eq_ref00:=(eq_ref0 (f0 x2)):(((eq Prop) (f0 x2)) (f0 x2))
% Found (eq_ref0 (f0 x2)) as proof of (((eq Prop) (f0 x2)) (a0 x2))
% Found ((eq_ref Prop) (f0 x2)) as proof of (((eq Prop) (f0 x2)) (a0 x2))
% Found ((eq_ref Prop) (f0 x2)) as proof of (((eq Prop) (f0 x2)) (a0 x2))
% Found (fun (x2:(a->(b->Prop)))=> ((eq_ref Prop) (f0 x2))) as proof of (((eq Prop) (f0 x2)) (a0 x2))
% Found (fun (x2:(a->(b->Prop)))=> ((eq_ref Prop) (f0 x2))) as proof of (forall (x:(a->(b->Prop))), (((eq Prop) (f0 x)) (a0 x)))
% Found eq_ref00:=(eq_ref0 (f0 x2)):(((eq Prop) (f0 x2)) (f0 x2))
% Found (eq_ref0 (f0 x2)) as proof of (((eq Prop) (f0 x2)) (a0 x2))
% Found ((eq_ref Prop) (f0 x2)) as proof of (((eq Prop) (f0 x2)) (a0 x2))
% Found ((eq_ref Prop) (f0 x2)) as proof of (((eq Prop) (f0 x2)) (a0 x2))
% Found (fun (x2:(a->(b->Prop)))=> ((eq_ref Prop) (f0 x2))) as proof of (((eq Prop) (f0 x2)) (a0 x2))
% Found (fun (x2:(a->(b->Prop)))=> ((eq_ref Prop) (f0 x2))) as proof of (forall (x:(a->(b->Prop))), (((eq Prop) (f0 x)) (a0 x)))
% Found eq_ref00:=(eq_ref0 (f0 x2)):(((eq Prop) (f0 x2)) (f0 x2))
% Found (eq_ref0 (f0 x2)) as proof of (((eq Prop) (f0 x2)) (a0 x2))
% Found ((eq_ref Prop) (f0 x2)) as proof of (((eq Prop) (f0 x2)) (a0 x2))
% Found ((eq_ref Prop) (f0 x2)) as proof of (((eq Prop) (f0 x2)) (a0 x2))
% Found (fun (x2:(a->(b->Prop)))=> ((eq_ref Prop) (f0 x2))) as proof of (((eq Prop) (f0 x2)) (a0 x2))
% Found (fun (x2:(a->(b->Prop)))=> ((eq_ref Prop) (f0 x2))) as proof of (forall (x:(a->(b->Prop))), (((eq Prop) (f0 x)) (a0 x)))
% Found eq_ref00:=(eq_ref0 (f0 x2)):(((eq Prop) (f0 x2)) (f0 x2))
% Found (eq_ref0 (f0 x2)) as proof of (((eq Prop) (f0 x2)) (a0 x2))
% Found ((eq_ref Prop) (f0 x2)) as proof of (((eq Prop) (f0 x2)) (a0 x2))
% Found ((eq_ref Prop) (f0 x2)) as proof of (((eq Prop) (f0 x2)) (a0 x2))
% Found (fun (x2:(a->(b->Prop)))=> ((eq_ref Prop) (f0 x2))) as proof of (((eq Prop) (f0 x2)) (a0 x2))
% Found (fun (x2:(a->(b->Prop)))=> ((eq_ref Prop) (f0 x2))) as proof of (forall (x:(a->(b->Prop))), (((eq Prop) (f0 x)) (a0 x)))
% Found eta_expansion_dep000:=(eta_expansion_dep00 b00):(((eq ((a->(b->Prop))->Prop)) b00) (fun (x:(a->(b->Prop)))=> (b00 x)))
% Found (eta_expansion_dep00 b00) as proof of (((eq ((a->(b->Prop))->Prop)) b00) b0)
% Found ((eta_expansion_dep0 (fun (x3:(a->(b->Prop)))=> Prop)) b00) as proof of (((eq ((a->(b->Prop))->Prop)) b00) b0)
% Found (((eta_expansion_dep (a->(b->Prop))) (fun (x3:(a->(b->Prop)))=> Prop)) b00) as proof of (((eq ((a->(b->Prop))->Prop)) b00) b0)
% Found (((eta_expansion_dep (a->(b->Prop))) (fun (x3:(a->(b->Prop)))=> Prop)) b00) as proof of (((eq ((a->(b->Prop))->Prop)) b00) b0)
% Found (((eta_expansion_dep (a->(b->Prop))) (fun (x3:(a->(b->Prop)))=> Prop)) b00) as proof of (((eq ((a->(b->Prop))->Prop)) b00) b0)
% Found eta_expansion000:=(eta_expansion00 a0):(((eq ((a->(b->Prop))->Prop)) a0) (fun (x:(a->(b->Prop)))=> (a0 x)))
% Found (eta_expansion00 a0) as proof of (((eq ((a->(b->Prop))->Prop)) a0) b00)
% Found ((eta_expansion0 Prop) a0) as proof of (((eq ((a->(b->Prop))->Prop)) a0) b00)
% Found (((eta_expansion (a->(b->Prop))) Prop) a0) as proof of (((eq ((a->(b->Prop))->Prop)) a0) b00)
% Found (((eta_expansion (a->(b->Prop))) Prop) a0) as proof of (((eq ((a->(b->Prop))->Prop)) a0) b00)
% Found (((eta_expansion (a->(b->Prop))) Prop) a0) as proof of (((eq ((a->(b->Prop))->Prop)) a0) b00)
% Found eta_expansion_dep000:=(eta_expansion_dep00 a0):(((eq ((a->(b->Prop))->Prop)) a0) (fun (x:(a->(b->Prop)))=> (a0 x)))
% Found (eta_expansion_dep00 a0) as proof of (((eq ((a->(b->Prop))->Prop)) a0) b00)
% Found ((eta_expansion_dep0 (fun (x3:(a->(b->Prop)))=> Prop)) a0) as proof of (((eq ((a->(b->Prop))->Prop)) a0) b00)
% Found (((eta_expansion_dep (a->(b->Prop))) (fun (x3:(a->(b->Prop)))=> Prop)) a0) as proof of (((eq ((a->(b->Prop))->Prop)) a0) b00)
% Found (((eta_expansion_dep (a->(b->Prop))) (fun (x3:(a->(b->Prop)))=> Prop)) a0) as proof of (((eq ((a->(b->Prop))->Prop)) a0) b00)
% Found (((eta_expansion_dep (a->(b->Prop))) (fun (x3:(a->(b->Prop)))=> Prop)) a0) as proof of (((eq ((a->(b->Prop))->Prop)) a0) b00)
% 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)) (b0 x0))
% Found ((eq_ref Prop) (f0 x0)) as proof of (((eq Prop) (f0 x0)) (b0 x0))
% Found (fun (x0:(a->(b->Prop)))=> ((eq_ref Prop) (f0 x0))) as proof of (((eq Prop) (f0 x0)) (b0 x0))
% Found (fun (x0:(a->(b->Prop)))=> ((eq_ref Prop) (f0 x0))) as proof of (forall (x:(a->(b->Prop))), (((eq Prop) (f0 x)) (b0 x)))
% 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)) (b0 x0))
% Found ((eq_ref Prop) (f0 x0)) as proof of (((eq Prop) (f0 x0)) (b0 x0))
% Found (fun (x0:(a->(b->Prop)))=> ((eq_ref Prop) (f0 x0))) as proof of (((eq Prop) (f0 x0)) (b0 x0))
% Found (fun (x0:(a->(b->Prop)))=> ((eq_ref Prop) (f0 x0))) as proof of (forall (x:(a->(b->Prop))), (((eq Prop) (f0 x)) (b0 x)))
% Found iff_refl0:=(iff_refl ((x2 (f Xx)) (g Xy))):((iff ((x2 (f Xx)) (g Xy))) ((x2 (f Xx)) (g Xy)))
% Found (iff_refl ((x2 (f Xx)) (g Xy))) as proof of ((iff ((x2 (f Xx)) (g Xy))) ((cS Xx) Xy))
% Found (iff_refl ((x2 (f Xx)) (g Xy))) as proof of ((iff ((x2 (f Xx)) (g Xy))) ((cS Xx) Xy))
% Found (iff_refl ((x2 (f Xx)) (g Xy))) as proof of ((iff ((x2 (f Xx)) (g Xy))) ((cS Xx) Xy))
% Found (iff_sym00 (iff_refl ((x2 (f Xx)) (g Xy)))) as proof of ((and (((cS Xx) Xy)->((x2 (f Xx)) (g Xy)))) (((x2 (f Xx)) (g Xy))->((cS Xx) Xy)))
% Found ((iff_sym0 ((cS Xx) Xy)) (iff_refl ((x2 (f Xx)) (g Xy)))) as proof of ((and (((cS Xx) Xy)->((x2 (f Xx)) (g Xy)))) (((x2 (f Xx)) (g Xy))->((cS Xx) Xy)))
% Found (((iff_sym ((x2 (f Xx)) (g Xy))) ((cS Xx) Xy)) (iff_refl ((x2 (f Xx)) (g Xy)))) as proof of ((and (((cS Xx) Xy)->((x2 (f Xx)) (g Xy)))) (((x2 (f Xx)) (g Xy))->((cS Xx) Xy)))
% Found (((iff_sym ((x2 (f Xx)) (g Xy))) ((cS Xx) Xy)) (iff_refl ((x2 (f Xx)) (g Xy)))) as proof of ((and (((cS Xx) Xy)->((x2 (f Xx)) (g Xy)))) (((x2 (f Xx)) (g Xy))->((cS Xx) Xy)))
% Found iff_refl0:=(iff_refl ((x2 (f Xx)) (g Xy))):((iff ((x2 (f Xx)) (g Xy))) ((x2 (f Xx)) (g Xy)))
% Found (iff_refl ((x2 (f Xx)) (g Xy))) as proof of ((iff ((x2 (f Xx)) (g Xy))) ((cS Xx) Xy))
% Found (iff_refl ((x2 (f Xx)) (g Xy))) as proof of ((iff ((x2 (f Xx)) (g Xy))) ((cS Xx) Xy))
% Found (iff_refl ((x2 (f Xx)) (g Xy))) as proof of ((iff ((x2 (f Xx)) (g Xy))) ((cS Xx) Xy))
% Found (iff_sym00 (iff_refl ((x2 (f Xx)) (g Xy)))) as proof of ((and (((cS Xx) Xy)->((x2 (f Xx)) (g Xy)))) (((x2 (f Xx)) (g Xy))->((cS Xx) Xy)))
% Found ((iff_sym0 ((cS Xx) Xy)) (iff_refl ((x2 (f Xx)) (g Xy)))) as proof of ((and (((cS Xx) Xy)->((x2 (f Xx)) (g Xy)))) (((x2 (f Xx)) (g Xy))->((cS Xx) Xy)))
% Found (((iff_sym ((x2 (f Xx)) (g Xy))) ((cS Xx) Xy)) (iff_refl ((x2 (f Xx)) (g Xy)))) as proof of ((and (((cS Xx) Xy)->((x2 (f Xx)) (g Xy)))) (((x2 (f Xx)) (g Xy))->((cS Xx) Xy)))
% Found (((iff_sym ((x2 (f Xx)) (g Xy))) ((cS Xx) Xy)) (iff_refl ((x2 (f Xx)) (g Xy)))) as proof of ((and (((cS Xx) Xy)->((x2 (f Xx)) (g Xy)))) (((x2 (f Xx)) (g Xy))->((cS Xx) Xy)))
% Found eta_expansion000:=(eta_expansion00 b0):(((eq ((a->(b->Prop))->Prop)) b0) (fun (x:(a->(b->Prop)))=> (b0 x)))
% Found (eta_expansion00 b0) as proof of (((eq ((a->(b->Prop))->Prop)) b0) f0)
% Found ((eta_expansion0 Prop) b0) as proof of (((eq ((a->(b->Prop))->Prop)) b0) f0)
% Found (((eta_expansion (a->(b->Prop))) Prop) b0) as proof of (((eq ((a->(b->Prop))->Prop)) b0) f0)
% Found (((eta_expansion (a->(b->Prop))) Prop) b0) as proof of (((eq ((a->(b->Prop))->Prop)) b0) f0)
% Found (((eta_expansion (a->(b->Prop))) Prop) b0) as proof of (((eq ((a->(b->Prop))->Prop)) b0) f0)
% Found eq_ref00:=(eq_ref0 a0):(((eq ((a->(b->Prop))->Prop)) a0) a0)
% Found (eq_ref0 a0) as proof of (((eq ((a->(b->Prop))->Prop)) a0) b0)
% Found ((eq_ref ((a->(b->Prop))->Prop)) a0) as proof of (((eq ((a->(b->Prop))->Prop)) a0) b0)
% Found ((eq_ref ((a->(b->Prop))->Prop)) a0) as proof of (((eq ((a->(b->Prop))->Prop)) a0) b0)
% Found ((eq_ref ((a->(b->Prop))->Prop)) a0) as proof of (((eq ((a->(b->Prop))->Prop)) a0) b0)
% Found eta_expansion000:=(eta_expansion00 b0):(((eq ((a->(b->Prop))->Prop)) b0) (fun (x:(a->(b->Prop)))=> (b0 x)))
% Found (eta_expansion00 b0) as proof of (((eq ((a->(b->Prop))->Prop)) b0) f0)
% Found ((eta_expansion0 Prop) b0) as proof of (((eq ((a->(b->Prop))->Prop)) b0) f0)
% Found (((eta_expansion (a->(b->Prop))) Prop) b0) as proof of (((eq ((a->(b->Prop))->Prop)) b0) f0)
% Found (((eta_expansion (a->(b->Prop))) Prop) b0) as proof of (((eq ((a->(b->Prop))->Prop)) b0) f0)
% Found (((eta_expansion (a->(b->Prop))) Prop) b0) as proof of (((eq ((a->(b->Prop))->Prop)) b0) f0)
% Found eta_expansion000:=(eta_expansion00 a0):(((eq ((a->(b->Prop))->Prop)) a0) (fun (x:(a->(b->Prop)))=> (a0 x)))
% Found (eta_expansion00 a0) as proof of (((eq ((a->(b->Prop))->Prop)) a0) b0)
% Found ((eta_expansion0 Prop) a0) as proof of (((eq ((a->(b->Prop))->Prop)) a0) b0)
% Found (((eta_expansion (a->(b->Prop))) Prop) a0) as proof of (((eq ((a->(b->Prop))->Prop)) a0) b0)
% Found (((eta_expansion (a->(b->Prop))) Prop) a0) as proof of (((eq ((a->(b->Prop))->Prop)) a0) b0)
% Found (((eta_expansion (a->(b->Prop))) Prop) a0) as proof of (((eq ((a->(b->Prop))->Prop)) a0) b0)
% Found eq_ref000:=(eq_ref00 (fun (x3:b)=> ((x2 (f Xx)) (g x3)))):(((x2 (f Xx)) (g Xy))->((x2 (f Xx)) (g Xy)))
% Found (eq_ref00 (fun (x3:b)=> ((x2 (f Xx)) (g x3)))) as proof of (((x2 (f Xx)) (g Xy))->((cS Xx) Xy))
% Found ((eq_ref0 Xy) (fun (x3:b)=> ((x2 (f Xx)) (g x3)))) as proof of (((x2 (f Xx)) (g Xy))->((cS Xx) Xy))
% Found (((eq_ref b) Xy) (fun (x3:b)=> ((x2 (f Xx)) (g x3)))) as proof of (((x2 (f Xx)) (g Xy))->((cS Xx) Xy))
% Found (((eq_ref b) Xy) (fun (x3:b)=> ((x2 (f Xx)) (g x3)))) as proof of (((x2 (f Xx)) (g Xy))->((cS Xx) Xy))
% Found (((eq_ref b) Xy) (fun (x3:b)=> ((x2 (f Xx)) (g x3)))) as proof of (((x2 (f Xx)) (g Xy))->((cS Xx) Xy))
% Found eq_ref000:=(eq_ref00 (cS Xx)):(((cS Xx) Xy)->((cS Xx) Xy))
% Found (eq_ref00 (cS Xx)) as proof of (((cS Xx) Xy)->((x2 (f Xx)) (g Xy)))
% Found ((eq_ref0 Xy) (cS Xx)) as proof of (((cS Xx) Xy)->((x2 (f Xx)) (g Xy)))
% Found (((eq_ref b) Xy) (cS Xx)) as proof of (((cS Xx) Xy)->((x2 (f Xx)) (g Xy)))
% Found (((eq_ref b) Xy) (cS Xx)) as proof of (((cS Xx) Xy)->((x2 (f Xx)) (g Xy)))
% Found ((conj00 (((eq_ref b) Xy) (cS Xx))) (((eq_ref b) Xy) (fun (x3:b)=> ((x2 (f Xx)) (g x3))))) as proof of ((and (((cS Xx) Xy)->((x2 (f Xx)) (g Xy)))) (((x2 (f Xx)) (g Xy))->((cS Xx) Xy)))
% Found (((conj0 (((x2 (f Xx)) (g Xy))->((cS Xx) Xy))) (((eq_ref b) Xy) (cS Xx))) (((eq_ref b) Xy) (fun (x3:b)=> ((x2 (f Xx)) (g x3))))) as proof of ((and (((cS Xx) Xy)->((x2 (f Xx)) (g Xy)))) (((x2 (f Xx)) (g Xy))->((cS Xx) Xy)))
% Found ((((conj (((cS Xx) Xy)->((x2 (f Xx)) (g Xy)))) (((x2 (f Xx)) (g Xy))->((cS Xx) Xy))) (((eq_ref b) Xy) (cS Xx))) (((eq_ref b) Xy) (fun (x3:b)=> ((x2 (f Xx)) (g x3))))) as proof of ((and (((cS Xx) Xy)->((x2 (f Xx)) (g Xy)))) (((x2 (f Xx)) (g Xy))->((cS Xx) Xy)))
% Found ((((conj (((cS Xx) Xy)->((x2 (f Xx)) (g Xy)))) (((x2 (f Xx)) (g Xy))->((cS Xx) Xy))) (((eq_ref b) Xy) (cS Xx))) (((eq_ref b) Xy) (fun (x3:b)=> ((x2 (f Xx)) (g x3))))) as proof of ((and (((cS Xx) Xy)->((x2 (f Xx)) (g Xy)))) (((x2 (f Xx)) (g Xy))->((cS Xx) Xy)))
% Found eq_ref000:=(eq_ref00 (fun (x3:b)=> ((x2 (f Xx)) (g x3)))):(((x2 (f Xx)) (g Xy))->((x2 (f Xx)) (g Xy)))
% Found (eq_ref00 (fun (x3:b)=> ((x2 (f Xx)) (g x3)))) as proof of (((x2 (f Xx)) (g Xy))->((cS Xx) Xy))
% Found ((eq_ref0 Xy) (fun (x3:b)=> ((x2 (f Xx)) (g x3)))) as proof of (((x2 (f Xx)) (g Xy))->((cS Xx) Xy))
% Found (((eq_ref b) Xy) (fun (x3:b)=> ((x2 (f Xx)) (g x3)))) as proof of (((x2 (f Xx)) (g Xy))->((cS Xx) Xy))
% Found (((eq_ref b) Xy) (fun (x3:b)=> ((x2 (f Xx)) (g x3)))) as proof of (((x2 (f Xx)) (g Xy))->((cS Xx) Xy))
% Found (((eq_ref b) Xy) (fun (x3:b)=> ((x2 (f Xx)) (g x3)))) as proof of (((x2 (f Xx)) (g Xy))->((cS Xx) Xy))
% Found eq_ref000:=(eq_ref00 (cS Xx)):(((cS Xx) Xy)->((cS Xx) Xy))
% Found (eq_ref00 (cS Xx)) as proof of (((cS Xx) Xy)->((x2 (f Xx)) (g Xy)))
% Found ((eq_ref0 Xy) (cS Xx)) as proof of (((cS Xx) Xy)->((x2 (f Xx)) (g Xy)))
% Found (((eq_ref b) Xy) (cS Xx)) as proof of (((cS Xx) Xy)->((x2 (f Xx)) (g Xy)))
% Found (((eq_ref b) Xy) (cS Xx)) as proof of (((cS Xx) Xy)->((x2 (f Xx)) (g Xy)))
% Found ((conj00 (((eq_ref b) Xy) (cS Xx))) (((eq_ref b) Xy) (fun (x3:b)=> ((x2 (f Xx)) (g x3))))) as proof of ((and (((cS Xx) Xy)->((x2 (f Xx)) (g Xy)))) (((x2 (f Xx)) (g Xy))->((cS Xx) Xy)))
% Found (((conj0 (((x2 (f Xx)) (g Xy))->((cS Xx) Xy))) (((eq_ref b) Xy) (cS Xx))) (((eq_ref b) Xy) (fun (x3:b)=> ((x2 (f Xx)) (g x3))))) as proof of ((and (((cS Xx) Xy)->((x2 (f Xx)) (g Xy)))) (((x2 (f Xx)) (g Xy))->((cS Xx) Xy)))
% Found ((((conj (((cS Xx) Xy)->((x2 (f Xx)) (g Xy)))) (((x2 (f Xx)) (g Xy))->((cS Xx) Xy))) (((eq_ref b) Xy) (cS Xx))) (((eq_ref b) Xy) (fun (x3:b)=> ((x2 (f Xx)) (g x3))))) as proof of ((and (((cS Xx) Xy)->((x2 (f Xx)) (g Xy)))) (((x2 (f Xx)) (g Xy))->((cS Xx) Xy)))
% Found ((((conj (((cS Xx) Xy)->((x2 (f Xx)) (g Xy)))) (((x2 (f Xx)) (g Xy))->((cS Xx) Xy))) (((eq_ref b) Xy) (cS Xx))) (((eq_ref b) Xy) (fun (x3:b)=> ((x2 (f Xx)) (g x3))))) as proof of ((and (((cS Xx) Xy)->((x2 (f Xx)) (g Xy)))) (((x2 (f Xx)) (g Xy))->((cS Xx) Xy)))
% Found iff_refl0:=(iff_refl ((x2 (f Xx)) (g Xy))):((iff ((x2 (f Xx)) (g Xy))) ((x2 (f Xx)) (g Xy)))
% Found (iff_refl ((x2 (f Xx)) (g Xy))) as proof of ((iff ((x2 (f Xx)) (g Xy))) ((cS Xx) Xy))
% Found (iff_refl ((x2 (f Xx)) (g Xy))) as proof of ((iff ((x2 (f Xx)) (g Xy))) ((cS Xx) Xy))
% Found (iff_refl ((x2 (f Xx)) (g Xy))) as proof of ((iff ((x2 (f Xx)) (g Xy))) ((cS Xx) Xy))
% Found (iff_sym00 (iff_refl ((x2 (f Xx)) (g Xy)))) as proof of ((and (((cS Xx) Xy)->((x2 (f Xx)) (g Xy)))) (((x2 (f Xx)) (g Xy))->((cS Xx) Xy)))
% Found ((iff_sym0 ((cS Xx) Xy)) (iff_refl ((x2 (f Xx)) (g Xy)))) as proof of ((and (((cS Xx) Xy)->((x2 (f Xx)) (g Xy)))) (((x2 (f Xx)) (g Xy))->((cS Xx) Xy)))
% Found (((iff_sym ((x2 (f Xx)) (g Xy))) ((cS Xx) Xy)) (iff_refl ((x2 (f Xx)) (g Xy)))) as proof of ((and (((cS Xx) Xy)->((x2 (f Xx)) (g Xy)))) (((x2 (f Xx)) (g Xy))->((cS Xx) Xy)))
% Found (((iff_sym ((x2 (f Xx)) (g Xy))) ((cS Xx) Xy)) (iff_refl ((x2 (f Xx)) (g Xy)))) as proof of ((and (((cS Xx) Xy)->((x2 (f Xx)) (g Xy)))) (((x2 (f Xx)) (g Xy))->((cS Xx) Xy)))
% Found iff_refl0:=(iff_refl ((x2 (f Xx)) (g Xy))):((iff ((x2 (f Xx)) (g Xy))) ((x2 (f Xx)) (g Xy)))
% Found (iff_refl ((x2 (f Xx)) (g Xy))) as proof of ((iff ((x2 (f Xx)) (g Xy))) ((cS Xx) Xy))
% Found (iff_refl ((x2 (f Xx)) (g Xy))) as proof of ((iff ((x2 (f Xx)) (g Xy))) ((cS Xx) Xy))
% Found (iff_refl ((x2 (f Xx)) (g Xy))) as proof of ((iff ((x2 (f Xx)) (g Xy))) ((cS Xx) Xy))
% Found (iff_sym00 (iff_refl ((x2 (f Xx)) (g Xy)))) as proof of ((and (((cS Xx) Xy)->((x2 (f Xx)) (g Xy)))) (((x2 (f Xx)) (g Xy))->((cS Xx) Xy)))
% Found ((iff_sym0 ((cS Xx) Xy)) (iff_refl ((x2 (f Xx)) (g Xy)))) as proof of ((and (((cS Xx) Xy)->((x2 (f Xx)) (g Xy)))) (((x2 (f Xx)) (g Xy))->((cS Xx) Xy)))
% Found (((iff_sym ((x2 (f Xx)) (g Xy))) ((cS Xx) Xy)) (iff_refl ((x2 (f Xx)) (g Xy)))) as proof of ((and (((cS Xx) Xy)->((x2 (f Xx)) (g Xy)))) (((x2 (f Xx)) (g Xy))->((cS Xx) Xy)))
% Found (((iff_sym ((x2 (f Xx)) (g Xy))) ((cS Xx) Xy)) (iff_refl ((x2 (f Xx)) (g Xy)))) as proof of ((and (((cS Xx) Xy)->((x2 (f Xx)) (g Xy)))) (((x2 (f Xx)) (g Xy))->((cS Xx) Xy)))
% Found iff_refl0:=(iff_refl ((x0 (f Xx)) (g Xy))):((iff ((x0 (f Xx)) (g Xy))) ((x0 (f Xx)) (g Xy)))
% Found (iff_refl ((x0 (f Xx)) (g Xy))) as proof of ((iff ((x0 (f Xx)) (g Xy))) ((cS Xx) Xy))
% Found (iff_refl ((x0 (f Xx)) (g Xy))) as proof of ((iff ((x0 (f Xx)) (g Xy))) ((cS Xx) Xy))
% Found (iff_refl ((x0 (f Xx)) (g Xy))) as proof of ((iff ((x0 (f Xx)) (g Xy))) ((cS Xx) Xy))
% Found (iff_sym00 (iff_refl ((x0 (f Xx)) (g Xy)))) as proof of ((and (((cS Xx) Xy)->((x0 (f Xx)) (g Xy)))) (((x0 (f Xx)) (g Xy))->((cS Xx) Xy)))
% Found ((iff_sym0 ((cS Xx) Xy)) (iff_refl ((x0 (f Xx)) (g Xy)))) as proof of ((and (((cS Xx) Xy)->((x0 (f Xx)) (g Xy)))) (((x0 (f Xx)) (g Xy))->((cS Xx) Xy)))
% Found (((iff_sym ((x0 (f Xx)) (g Xy))) ((cS Xx) Xy)) (iff_refl ((x0 (f Xx)) (g Xy)))) as proof of ((and (((cS Xx) Xy)->((x0 (f Xx)) (g Xy)))) (((x0 (f Xx)) (g Xy))->((cS Xx) Xy)))
% Found (((iff_sym ((x0 (f Xx)) (g Xy))) ((cS Xx) Xy)) (iff_refl ((x0 (f Xx)) (g Xy)))) as proof of ((and (((cS Xx) Xy)->((x0 (f Xx)) (g Xy)))) (((x0 (f Xx)) (g Xy))->((cS Xx) Xy)))
% Found eq_ref000:=(eq_ref00 (fun (x1:b)=> ((x0 (f Xx)) (g x1)))):(((x0 (f Xx)) (g Xy))->((x0 (f Xx)) (g Xy)))
% Found (eq_ref00 (fun (x1:b)=> ((x0 (f Xx)) (g x1)))) as proof of (((x0 (f Xx)) (g Xy))->((cS Xx) Xy))
% Found ((eq_ref0 Xy) (fun (x1:b)=> ((x0 (f Xx)) (g x1)))) as proof of (((x0 (f Xx)) (g Xy))->((cS Xx) Xy))
% Found (((eq_ref b) Xy) (fun (x1:b)=> ((x0 (f Xx)) (g x1)))) as proof of (((x0 (f Xx)) (g Xy))->((cS Xx) Xy))
% Found (((eq_ref b) Xy) (fun (x1:b)=> ((x0 (f Xx)) (g x1)))) as proof of (((x0 (f Xx)) (g Xy))->((cS Xx) Xy))
% Found (((eq_ref b) Xy) (fun (x1:b)=> ((x0 (f Xx)) (g x1)))) as proof of (((x0 (f Xx)) (g Xy))->((cS Xx) Xy))
% Found eq_ref000:=(eq_ref00 (cS Xx)):(((cS Xx) Xy)->((cS Xx) Xy))
% Found (eq_ref00 (cS Xx)) as proof of (((cS Xx) Xy)->((x0 (f Xx)) (g Xy)))
% Found ((eq_ref0 Xy) (cS Xx)) as proof of (((cS Xx) Xy)->((x0 (f Xx)) (g Xy)))
% Found (((eq_ref b) Xy) (cS Xx)) as proof of (((cS Xx) Xy)->((x0 (f Xx)) (g Xy)))
% Found (((eq_ref b) Xy) (cS Xx)) as proof of (((cS Xx) Xy)->((x0 (f Xx)) (g Xy)))
% Found ((conj00 (((eq_ref b) Xy) (cS Xx))) (((eq_ref b) Xy) (fun (x1:b)=> ((x0 (f Xx)) (g x1))))) as proof of ((iff ((cS Xx) Xy)) ((x0 (f Xx)) (g Xy)))
% Found (((conj0 (((x0 (f Xx)) (g Xy))->((cS Xx) Xy))) (((eq_ref b) Xy) (cS Xx))) (((eq_ref b) Xy) (fun (x1:b)=> ((x0 (f Xx)) (g x1))))) as proof of ((iff ((cS Xx) Xy)) ((x0 (f Xx)) (g Xy)))
% Found ((((conj (((cS Xx) Xy)->((x0 (f Xx)) (g Xy)))) (((x0 (f Xx)) (g Xy))->((cS Xx) Xy))) (((eq_ref b) Xy) (cS Xx))) (((eq_ref b) Xy) (fun (x1:b)=> ((x0 (f Xx)) (g x1))))) as proof of ((iff ((cS Xx) Xy)) ((x0 (f Xx)) (g Xy)))
% Found eq_ref00:=(eq_ref0 b0):(((eq ((a->(b->Prop))->Prop)) b0) b0)
% Found (eq_ref0 b0) as proof of (((eq ((a->(b->Prop))->Prop)) b0) f0)
% Found ((eq_ref ((a->(b->Prop))->Prop)) b0) as proof of (((eq ((a->(b->Prop))->Prop)) b0) f0)
% Found ((eq_ref ((a->(b->Prop))->Prop)) b0) as proof of (((eq ((a->(b->Prop))->Prop)) b0) f0)
% Found ((eq_ref ((a->(b->Prop))->Prop)) b0) as proof of (((eq ((a->(b->Prop))->Prop)) b0) f0)
% Found eta_expansion000:=(eta_expansion00 a0):(((eq ((a->(b->Prop))->Prop)) a0) (fun (x:(a->(b->Prop)))=> (a0 x)))
% Found (eta_expansion00 a0) as proof of (((eq ((a->(b->Prop))->Prop)) a0) b0)
% Found ((eta_expansion0 Prop) a0) as proof of (((eq ((a->(b->Prop))->Prop)) a0) b0)
% Found (((eta_expansion (a->(b->Prop))) Prop) a0) as proof of (((eq ((a->(b->Prop))->Prop)) a0) b0)
% Found (((eta_expansion (a->(b->Prop))) Prop) a0) as proof of (((eq ((a->(b->Prop))->Prop)) a0) b0)
% Found (((eta_expansion (a->(b->Prop))) Prop) a0) as proof of (((eq ((a->(b->Prop))->Prop)) a0) b0)
% Found eq_ref00:=(eq_ref0 a0):(((eq ((a->(b->Prop))->Prop)) a0) a0)
% Found (eq_ref0 a0) as proof of (((eq ((a->(b->Prop))->Prop)) a0) b0)
% Found ((eq_ref ((a->(b->Prop))->Prop)) a0) as proof of (((eq ((a->(b->Prop))->Prop)) a0) b0)
% Found ((eq_ref ((a->(b->Prop))->Prop)) a0) as proof of (((eq ((a->(b->Prop))->Prop)) a0) b0)
% Found ((eq_ref ((a->(b->Prop))->Prop)) a0) as proof of (((eq ((a->(b->Prop))->Prop)) a0) b0)
% Found eta_expansion_dep000:=(eta_expansion_dep00 a0):(((eq ((a->(b->Prop))->Prop)) a0) (fun (x:(a->(b->Prop)))=> (a0 x)))
% Found (eta_expansion_dep00 a0) as proof of (((eq ((a->(b->Prop))->Prop)) a0) b0)
% Found ((eta_expansion_dep0 (fun (x3:(a->(b->Prop)))=> Prop)) a0) as proof of (((eq ((a->(b->Prop))->Prop)) a0) b0)
% Found (((eta_expansion_dep (a->(b->Prop))) (fun (x3:(a->(b->Prop)))=> Prop)) a0) as proof of (((eq ((a->(b->Prop))->Prop)) a0) b0)
% Found (((eta_expansion_dep (a->(b->Prop))) (fun (x3:(a->(b->Prop)))=> Prop)) a0) as proof of (((eq ((a->(b->Prop))->Prop)) a0) b0)
% Found (((eta_expansion_dep (a->(b->Prop))) (fun (x3:(a->(b->Prop)))=> Prop)) a0) as proof of (((eq ((a->(b->Prop))->Prop)) a0) b0)
% Found eta_expansion000:=(eta_expansion00 b0):(((eq ((a->(b->Prop))->Prop)) b0) (fun (x:(a->(b->Prop)))=> (b0 x)))
% Found (eta_expansion00 b0) as proof of (((eq ((a->(b->Prop))->Prop)) b0) f0)
% Found ((eta_expansion0 Prop) b0) as proof of (((eq ((a->(b->Prop))->Prop)) b0) f0)
% Found (((eta_expansion (a->(b->Prop))) Prop) b0) as proof of (((eq ((a->(b->Prop))->Prop)) b0) f0)
% Found (((eta_expansion (a->(b->Prop))) Prop) b0) as proof of (((eq ((a->(b->Prop))->Prop)) b0) f0)
% Found (((eta_expansion (a->(b->Prop))) Prop) b0) as proof of (((eq ((a->(b->Prop))->Prop)) b0) f0)
% Found eta_expansion000:=(eta_expansion00 b0):(((eq ((a->(b->Prop))->Prop)) b0) (fun (x:(a->(b->Prop)))=> (b0 x)))
% Found (eta_expansion00 b0) as proof of (((eq ((a->(b->Prop))->Prop)) b0) f0)
% Found ((eta_expansion0 Prop) b0) as proof of (((eq ((a->(b->Prop))->Prop)) b0) f0)
% Found (((eta_expansion (a->(b->Prop))) Prop) b0) as proof of (((eq ((a->(b->Prop))->Prop)) b0) f0)
% Found (((eta_expansion (a->(b->Prop))) Prop) b0) as proof of (((eq ((a->(b->Prop))->Prop)) b0) f0)
% Found (((eta_expansion (a->(b->Prop))) Prop) b0) as proof of (((eq ((a->(b->Prop))->Prop)) b0) f0)
% 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)) (b0 x0))
% Found ((eq_ref Prop) (f0 x0)) as proof of (((eq Prop) (f0 x0)) (b0 x0))
% Found ((eq_ref Prop) (f0 x0)) as proof of (((eq Prop) (f0 x0)) (b0 x0))
% Found (fun (x0:(a->(b->Prop)))=> ((eq_ref Prop) (f0 x0))) as proof of (((eq Prop) (f0 x0)) (b0 x0))
% Found (fun (x0:(a->(b->Prop)))=> ((eq_ref Prop) (f0 x0))) as proof of (forall (x:(a->(b->Prop))), (((eq Prop) (f0 x)) (b0 x)))
% 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)) (b0 x0))
% Found ((eq_ref Prop) (f0 x0)) as proof of (((eq Prop) (f0 x0)) (b0 x0))
% Found ((eq_ref Prop) (f0 x0)) as proof of (((eq Prop) (f0 x0)) (b0 x0))
% Found (fun (x0:(a->(b->Prop)))=> ((eq_ref Prop) (f0 x0))) as proof of (((eq Prop) (f0 x0)) (b0 x0))
% Found (fun (x0:(a->(b->Prop)))=> ((eq_ref Prop) (f0 x0))) as proof of (forall (x:(a->(b->Prop))), (((eq Prop) (f0 x)) (b0 x)))
% Found eta_expansion000:=(eta_expansion00 b00):(((eq ((a->(b->Prop))->Prop)) b00) (fun (x:(a->(b->Prop)))=> (b00 x)))
% Found (eta_expansion00 b00) as proof of (((eq ((a->(b->Prop))->Prop)) b00) b0)
% Found ((eta_expansion0 Prop) b00) as proof of (((eq ((a->(b->Prop))->Prop)) b00) b0)
% Found (((eta_expansion (a->(b->Prop))) Prop) b00) as proof of (((eq ((a->(b->Prop))->Prop)) b00) b0)
% Found (((eta_expansion (a->(b->Prop))) Prop) b00) as proof of (((eq ((a->(b->Prop))->Prop)) b00) b0)
% Found (((eta_expansion (a->(b->Prop))) Prop) b00) as proof of (((eq ((a->(b->Prop))->Prop)) b00) b0)
% Found eta_expansion000:=(eta_expansion00 a0):(((eq ((a->(b->Prop))->Prop)) a0) (fun (x:(a->(b->Prop)))=> (a0 x)))
% Found (eta_expansion00 a0) as proof of (((eq ((a->(b->Prop))->Prop)) a0) b00)
% Found ((eta_expansion0 Prop) a0) as proof of (((eq ((a->(b->Prop))->Prop)) a0) b00)
% Found (((eta_expansion (a->(b->Prop))) Prop) a0) as proof of (((eq ((a->(b->Prop))->Prop)) a0) b00)
% Found (((eta_expansion (a->(b->Prop))) Prop) a0) as proof of (((eq ((a->(b->Prop))->Prop)) a0) b00)
% Found (((eta_expansion (a->(b->Prop))) Prop) a0) as proof of (((eq ((a->(b->Prop))->Prop)) a0) b00)
% Found eq_ref000:=(eq_ref00 (fun (x3:b)=> ((x2 (f Xx)) (g x3)))):(((x2 (f Xx)) (g Xy))->((x2 (f Xx)) (g Xy)))
% Found (eq_ref00 (fun (x3:b)=> ((x2 (f Xx)) (g x3)))) as proof of (((x2 (f Xx)) (g Xy))->((cS Xx) Xy))
% Found ((eq_ref0 Xy) (fun (x3:b)=> ((x2 (f Xx)) (g x3)))) as proof of (((x2 (f Xx)) (g Xy))->((cS Xx) Xy))
% Found (((eq_ref b) Xy) (fun (x3:b)=> ((x2 (f Xx)) (g x3)))) as proof of (((x2 (f Xx)) (g Xy))->((cS Xx) Xy))
% Found (((eq_ref b) Xy) (fun (x3:b)=> ((x2 (f Xx)) (g x3)))) as proof of (((x2 (f Xx)) (g Xy))->((cS Xx) Xy))
% Found (((eq_ref b) Xy) (fun (x3:b)=> ((x2 (f Xx)) (g x3)))) as proof of (((x2 (f Xx)) (g Xy))->((cS Xx) Xy))
% Found eq_ref000:=(eq_ref00 (cS Xx)):(((cS Xx) Xy)->((cS Xx) Xy))
% Found (eq_ref00 (cS Xx)) as proof of (((cS Xx) Xy)->((x2 (f Xx)) (g Xy)))
% Found ((eq_ref0 Xy) (cS Xx)) as proof of (((cS Xx) Xy)->((x2 (f Xx)) (g Xy)))
% Found (((eq_ref b) Xy) (cS Xx)) as proof of (((cS Xx) Xy)->((x2 (f Xx)) (g Xy)))
% Found (((eq_ref b) Xy) (cS Xx)) as proof of (((cS Xx) Xy)->((x2 (f Xx)) (g Xy)))
% Found ((conj00 (((eq_ref b) Xy) (cS Xx))) (((eq_ref b) Xy) (fun (x3:b)=> ((x2 (f Xx)) (g x3))))) as proof of ((and (((cS Xx) Xy)->((x2 (f Xx)) (g Xy)))) (((x2 (f Xx)) (g Xy))->((cS Xx) Xy)))
% Found (((conj0 (((x2 (f Xx)) (g Xy))->((cS Xx) Xy))) (((eq_ref b) Xy) (cS Xx))) (((eq_ref b) Xy) (fun (x3:b)=> ((x2 (f Xx)) (g x3))))) as proof of ((and (((cS Xx) Xy)->((x2 (f Xx)) (g Xy)))) (((x2 (f Xx)) (g Xy))->((cS Xx) Xy)))
% Found ((((conj (((cS Xx) Xy)->((x2 (f Xx)) (g Xy)))) (((x2 (f Xx)) (g Xy))->((cS Xx) Xy))) (((eq_ref b) Xy) (cS Xx))) (((eq_ref b) Xy) (fun (x3:b)=> ((x2 (f Xx)) (g x3))))) as proof of ((and (((cS Xx) Xy)->((x2 (f Xx)) (g Xy)))) (((x2 (f Xx)) (g Xy))->((cS Xx) Xy)))
% Found ((((conj (((cS Xx) Xy)->((x2 (f Xx)) (g Xy)))) (((x2 (f Xx)) (g Xy))->((cS Xx) Xy))) (((eq_ref b) Xy) (cS Xx))) (((eq_ref b) Xy) (fun (x3:b)=> ((x2 (f Xx)) (g x3))))) as proof of ((and (((cS Xx) Xy)->((x2 (f Xx)) (g Xy)))) (((x2 (f Xx)) (g Xy))->((cS Xx) Xy)))
% Found eq_ref00:=(eq_ref0 (f0 x2)):(((eq Prop) (f0 x2)) (f0 x2))
% Found (eq_ref0 (f0 x2)) as proof of (((eq Prop) (f0 x2)) (a0 x2))
% Found ((eq_ref Prop) (f0 x2)) as proof of (((eq Prop) (f0 x2)) (a0 x2))
% Found ((eq_ref Prop) (f0 x2)) as proof of (((eq Prop) (f0 x2)) (a0 x2))
% Found (fun (x2:(a->(b->Prop)))=> ((eq_ref Prop) (f0 x2))) as proof of (((eq Prop) (f0 x2)) (a0 x2))
% Found (fun (x2:(a->(b->Prop)))=> ((eq_ref Prop) (f0 x2))) as proof of (forall (x:(a->(b->Prop))), (((eq Prop) (f0 x)) (a0 x)))
% Found eq_ref00:=(eq_ref0 (f0 x2)):(((eq Prop) (f0 x2)) (f0 x2))
% Found (eq_ref0 (f0 x2)) as proof of (((eq Prop) (f0 x2)) (a0 x2))
% Found ((eq_ref Prop) (f0 x2)) as proof of (((eq Prop) (f0 x2)) (a0 x2))
% Found ((eq_ref Prop) (f0 x2)) as proof of (((eq Prop) (f0 x2)) (a0 x2))
% Found (fun (x2:(a->(b->Prop)))=> ((eq_ref Prop) (f0 x2))) as proof of (((eq Prop) (f0 x2)) (a0 x2))
% Found (fun (x2:(a->(b->Prop)))=> ((eq_ref Prop) (f0 x2))) as proof of (forall (x:(a->(b->Prop))), (((eq Prop) (f0 x)) (a0 x)))
% Found eq_ref000:=(eq_ref00 (fun (x3:b)=> ((x2 (f Xx)) (g x3)))):(((x2 (f Xx)) (g Xy))->((x2 (f Xx)) (g Xy)))
% Found (eq_ref00 (fun (x3:b)=> ((x2 (f Xx)) (g x3)))) as proof of (((x2 (f Xx)) (g Xy))->((cS Xx) Xy))
% Found ((eq_ref0 Xy) (fun (x3:b)=> ((x2 (f Xx)) (g x3)))) as proof of (((x2 (f Xx)) (g Xy))->((cS Xx) Xy))
% Found (((eq_ref b) Xy) (fun (x3:b)=> ((x2 (f Xx)) (g x3)))) as proof of (((x2 (f Xx)) (g Xy))->((cS Xx) Xy))
% Found (((eq_ref b) Xy) (fun (x3:b)=> ((x2 (f Xx)) (g x3)))) as proof of (((x2 (f Xx)) (g Xy))->((cS Xx) Xy))
% Found (((eq_ref b) Xy) (fun (x3:b)=> ((x2 (f Xx)) (g x3)))) as proof of (((x2 (f Xx)) (g Xy))->((cS Xx) Xy))
% Found eq_ref000:=(eq_ref00 (cS Xx)):(((cS Xx) Xy)->((cS Xx) Xy))
% Found (eq_ref00 (cS Xx)) as proof of (((cS Xx) Xy)->((x2 (f Xx)) (g Xy)))
% Found ((eq_ref0 Xy) (cS Xx)) as proof of (((cS Xx) Xy)->((x2 (f Xx)) (g Xy)))
% Found (((eq_ref b) Xy) (cS Xx)) as proof of (((cS Xx) Xy)->((x2 (f Xx)) (g Xy)))
% Found (((eq_ref b) Xy) (cS Xx)) as proof of (((cS Xx) Xy)->((x2 (f Xx)) (g Xy)))
% Found ((conj00 (((eq_ref b) Xy) (cS Xx))) (((eq_ref b) Xy) (fun (x3:b)=> ((x2 (f Xx)) (g x3))))) as proof of ((and (((cS Xx) Xy)->((x2 (f Xx)) (g Xy)))) (((x2 (f Xx)) (g Xy))->((cS Xx) Xy)))
% Found (((conj0 (((x2 (f Xx)) (g Xy))->((cS Xx) Xy))) (((eq_ref b) Xy) (cS Xx))) (((eq_ref b) Xy) (fun (x3:b)=> ((x2 (f Xx)) (g x3))))) as proof of ((and (((cS Xx) Xy)->((x2 (f Xx)) (g Xy)))) (((x2 (f Xx)) (g Xy))->((cS Xx) Xy)))
% Found ((((conj (((cS Xx) Xy)->((x2 (f Xx)) (g Xy)))) (((x2 (f Xx)) (g Xy))->((cS Xx) Xy))) (((eq_ref b) Xy) (cS Xx))) (((eq_ref b) Xy) (fun (x3:b)=> ((x2 (f Xx)) (g x3))))) as proof of ((and (((cS Xx) Xy)->((x2 (f Xx)) (g Xy)))) (((x2 (f Xx)) (g Xy))->((cS Xx) Xy)))
% Found ((((conj (((cS Xx) Xy)->((x2 (f Xx)) (g Xy)))) (((x2 (f Xx)) (g Xy))->((cS Xx) Xy))) (((eq_ref b) Xy) (cS Xx))) (((eq_ref b) Xy) (fun (x3:b)=> ((x2 (f Xx)) (g x3))))) as proof of ((and (((cS Xx) Xy)->((x2 (f Xx)) (g Xy)))) (((x2 (f Xx)) (g Xy))->((cS Xx) Xy)))
% Found eq_ref00:=(eq_ref0 b00):(((eq ((a->(b->Prop))->Prop)) b00) b00)
% Found (eq_ref0 b00) as proof of (((eq ((a->(b->Prop))->Prop)) b00) b0)
% Found ((eq_ref ((a->(b->Prop))->Prop)) b00) as proof of (((eq ((a->(b->Prop))->Prop)) b00) b0)
% Found ((eq_ref ((a->(b->Prop))->Prop)) b00) as proof of (((eq ((a->(b->Prop))->Prop)) b00) b0)
% Found ((eq_ref ((a->(b->Prop))->Prop)) b00) as proof of (((eq ((a->(b->Prop))->Prop)) b00) b0)
% Found eta_expansion000:=(eta_expansion00 a0):(((eq ((a->(b->Prop))->Prop)) a0) (fun (x:(a->(b->Prop)))=> (a0 x)))
% Found (eta_expansion00 a0) as proof of (((eq ((a->(b->Prop))->Prop)) a0) b00)
% Found ((eta_expansion0 Prop) a0) as proof of (((eq ((a->(b->Prop))->Prop)) a0) b00)
% Found (((eta_expansion (a->(b->Prop))) Prop) a0) as proof of (((eq ((a->(b->Prop))->Prop)) a0) b00)
% Found (((eta_expansion (a->(b->Prop))) Prop) a0) as proof of (((eq ((a->(b->Prop))->Prop)) a0) b00)
% Found (((eta_expansion (a->(b->Prop))) Prop) a0) as proof of (((eq ((a->(b->Prop))->Prop)) a0) b00)
% Found eta_expansion_dep000:=(eta_expansion_dep00 a0):(((eq ((a->(b->Prop))->Prop)) a0) (fun (x:(a->(b->Prop)))=> (a0 x)))
% Found (eta_expansion_dep00 a0) as proof of (((eq ((a->(b->Prop))->Prop)) a0) b00)
% Found ((eta_expansion_dep0 (fun (x3:(a->(b->Prop)))=> Prop)) a0) as proof of (((eq ((a->(b->Prop))->Prop)) a0) b00)
% Found (((eta_expansion_dep (a->(b->Prop))) (fun (x3:(a->(b->Prop)))=> Prop)) a0) as proof of (((eq ((a->(b->Prop))->Prop)) a0) b00)
% Found (((eta_expansion_dep (a->(b->Prop))) (fun (x3:(a->(b->Prop)))=> Prop)) a0) as proof of (((eq ((a->(b->Prop))->Prop)) a0) b00)
% Found (((eta_expansion_dep (a->(b->Prop))) (fun (x3:(a->(b->Prop)))=> Prop)) a0) as proof of (((eq ((a->(b->Prop))->Prop)) a0) b00)
% Found eq_ref00:=(eq_ref0 (f0 x2)):(((eq Prop) (f0 x2)) (f0 x2))
% Found (eq_ref0 (f0 x2)) as proof of (((eq Prop) (f0 x2)) (a0 x2))
% Found ((eq_ref Prop) (f0 x2)) as proof of (((eq Prop) (f0 x2)) (a0 x2))
% Found ((eq_ref Prop) (f0 x2)) as proof of (((eq Prop) (f0 x2)) (a0 x2))
% Found (fun (x2:(a->(b->Prop)))=> ((eq_ref Prop) (f0 x2))) as proof of (((eq Prop) (f0 x2)) (a0 x2))
% Found (fun (x2:(a->(b->Prop)))=> ((eq_ref Prop) (f0 x2))) as proof of (forall (x:(a->(b->Prop))), (((eq Prop) (f0 x)) (a0 x)))
% Found eq_ref00:=(eq_ref0 (f0 x2)):(((eq Prop) (f0 x2)) (f0 x2))
% Found (eq_ref0 (f0 x2)) as proof of (((eq Prop) (f0 x2)) (a0 x2))
% Found ((eq_ref Prop) (f0 x2)) as proof of (((eq Prop) (f0 x2)) (a0 x2))
% Found ((eq_ref Prop) (f0 x2)) as proof of (((eq Prop) (f0 x2)) (a0 x2))
% Found (fun (x2:(a->(b->Prop)))=> ((eq_ref Prop) (f0 x2))) as proof of (((eq Prop) (f0 x2)) (a0 x2))
% Found (fun (x2:(a->(b->Prop)))=> ((eq_ref Prop) (f0 x2))) as proof of (forall (x:(a->(b->Prop))), (((eq Prop) (f0 x)) (a0 x)))
% Found iff_refl0:=(iff_refl ((x0 (f Xx)) (g Xy))):((iff ((x0 (f Xx)) (g Xy))) ((x0 (f Xx)) (g Xy)))
% Found (iff_refl ((x0 (f Xx)) (g Xy))) as proof of ((iff ((x0 (f Xx)) (g Xy))) ((cS Xx) Xy))
% Found (iff_refl ((x0 (f Xx)) (g Xy))) as proof of ((iff ((x0 (f Xx)) (g Xy))) ((cS Xx) Xy))
% Found (iff_refl ((x0 (f Xx)) (g Xy))) as proof of ((iff ((x0 (f Xx)) (g Xy))) ((cS Xx) Xy))
% Found (iff_sym00 (iff_refl ((x0 (f Xx)) (g Xy)))) as proof of ((and (((cS Xx) Xy)->((x0 (f Xx)) (g Xy)))) (((x0 (f Xx)) (g Xy))->((cS Xx) Xy)))
% Found ((iff_sym0 ((cS Xx) Xy)) (iff_refl ((x0 (f Xx)) (g Xy)))) as proof of ((and (((cS Xx) Xy)->((x0 (f Xx)) (g Xy)))) (((x0 (f Xx)) (g Xy))->((cS Xx) Xy)))
% Found (((iff_sym ((x0 (f Xx)) (g Xy))) ((cS Xx) Xy)) (iff_refl ((x0 (f Xx)) (g Xy)))) as proof of ((and (((cS Xx) Xy)->((x0 (f Xx)) (g Xy)))) (((x0 (f Xx)) (g Xy))->((cS Xx) Xy)))
% Found (((iff_sym ((x0 (f Xx)) (g Xy))) ((cS Xx) Xy)) (iff_refl ((x0 (f Xx)) (g Xy)))) as proof of ((and (((cS Xx) Xy)->((x0 (f Xx)) (g Xy)))) (((x0 (f Xx)) (g Xy))->((cS Xx) Xy)))
% Found eq_ref00:=(eq_ref0 (f0 x2)):(((eq Prop) (f0 x2)) (f0 x2))
% Found (eq_ref0 (f0 x2)) as proof of (((eq Prop) (f0 x2)) (a0 x2))
% Found ((eq_ref Prop) (f0 x2)) as proof of (((eq Prop) (f0 x2)) (a0 x2))
% Found ((eq_ref Prop) (f0 x2)) as proof of (((eq Prop) (f0 x2)) (a0 x2))
% Found (fun (x2:(a->(b->Prop)))=> ((eq_ref Prop) (f0 x2))) as proof of (((eq Prop) (f0 x2)) (a0 x2))
% Found (fun (x2:(a->(b->Prop)))=> ((eq_ref Prop) (f0 x2))) as proof of (forall (x:(a->(b->Prop))), (((eq Prop) (f0 x)) (a0 x)))
% Found eq_ref00:=(eq_ref0 (f0 x2)):(((eq Prop) (f0 x2)) (f0 x2))
% Found (eq_ref0 (f0 x2)) as proof of (((eq Prop) (f0 x2)) (a0 x2))
% Found ((eq_ref Prop) (f0 x2)) as proof of (((eq Prop) (f0 x2)) (a0 x2))
% Found ((eq_ref Prop) (f0 x2)) as proof of (((eq Prop) (f0 x2)) (a0 x2))
% Found (fun (x2:(a->(b->Prop)))=> ((eq_ref Prop) (f0 x2))) as proof of (((eq Prop) (f0 x2)) (a0 x2))
% Found (fun (x2:(a->(b->Prop)))=> ((eq_ref Prop) (f0 x2))) as proof of (forall (x:(a->(b->Prop))), (((eq Prop) (f0 x)) (a0 x)))
% Found iff_refl0:=(iff_refl ((x0 (f Xx)) (g Xy))):((iff ((x0 (f Xx)) (g Xy))) ((x0 (f Xx)) (g Xy)))
% Found (iff_refl ((x0 (f Xx)) (g Xy))) as proof of ((iff ((x0 (f Xx)) (g Xy))) ((cS Xx) Xy))
% Found (iff_refl ((x0 (f Xx)) (g Xy))) as proof of ((iff ((x0 (f Xx)) (g Xy))) ((cS Xx) Xy))
% Found (iff_refl ((x0 (f Xx)) (g Xy))) as proof of ((iff ((x0 (f Xx)) (g Xy))) ((cS Xx) Xy))
% Found (iff_sym00 (iff_refl ((x0 (f Xx)) (g Xy)))) as proof of ((and (((cS Xx) Xy)->((x0 (f Xx)) (g Xy)))) (((x0 (f Xx)) (g Xy))->((cS Xx) Xy)))
% Found ((iff_sym0 ((cS Xx) Xy)) (iff_refl ((x0 (f Xx)) (g Xy)))) as proof of ((and (((cS Xx) Xy)->((x0 (f Xx)) (g Xy)))) (((x0 (f Xx)) (g Xy))->((cS Xx) Xy)))
% Found (((iff_sym ((x0 (f Xx)) (g Xy))) ((cS Xx) Xy)) (iff_refl ((x0 (f Xx)) (g Xy)))) as proof of ((and (((cS Xx) Xy)->((x0 (f Xx)) (g Xy)))) (((x0 (f Xx)) (g Xy))->((cS Xx) Xy)))
% Found (((iff_sym ((x0 (f Xx)) (g Xy))) ((cS Xx) Xy)) (iff_refl ((x0 (f Xx)) (g Xy)))) as proof of ((and (((cS Xx) Xy)->((x0 (f Xx)) (g Xy)))) (((x0 (f Xx)) (g Xy))->((cS Xx) Xy)))
% Found eta_expansion_dep000:=(eta_expansion_dep00 b0):(((eq ((a->(b->Prop))->Prop)) b0) (fun (x:(a->(b->Prop)))=> (b0 x)))
% Found (eta_expansion_dep00 b0) as proof of (((eq ((a->(b->Prop))->Prop)) b0) f0)
% Found ((eta_expansion_dep0 (fun (x3:(a->(b->Prop)))=> Prop)) b0) as proof of (((eq ((a->(b->Prop))->Prop)) b0) f0)
% Found (((eta_expansion_dep (a->(b->Prop))) (fun (x3:(a->(b->Prop)))=> Prop)) b0) as proof of (((eq ((a->(b->Prop))->Prop)) b0) f0)
% Found (((eta_expansion_dep (a->(b->Prop))) (fun (x3:(a->(b->Prop)))=> Prop)) b0) as proof of (((eq ((a->(b->Prop))->Prop)) b0) f0)
% Found (((eta_expansion_dep (a->(b->Prop))) (fun (x3:(a->(b->Prop)))=> Prop)) b0) as proof of (((eq ((a->(b->Prop))->Prop)) b0) f0)
% Found eta_expansion000:=(eta_expansion00 a0):(((eq ((a->(b->Prop))->Prop)) a0) (fun (x:(a->(b->Prop)))=> (a0 x)))
% Found (eta_expansion00 a0) as proof of (((eq ((a->(b->Prop))->Prop)) a0) b0)
% Found ((eta_expansion0 Prop) a0) as proof of (((eq ((a->(b->Prop))->Prop)) a0) b0)
% Found (((eta_expansion (a->(b->Prop))) Prop) a0) as proof of (((eq ((a->(b->Prop))->Prop)) a0) b0)
% Found (((eta_expansion (a->(b->Prop))) Prop) a0) as proof of (((eq ((a->(b->Prop))->Prop)) a0) b0)
% Found (((eta_expansion (a->(b->Prop))) Prop) a0) as proof of (((eq ((a->(b->Prop))->Prop)) a0) b0)
% Found eta_expansion000:=(eta_expansion00 b0):(((eq ((a->(b->Prop))->Prop)) b0) (fun (x:(a->(b->Prop)))=> (b0 x)))
% Found (eta_expansion00 b0) as proof of (((eq ((a->(b->Prop))->Prop)) b0) f0)
% Found ((eta_expansion0 Prop) b0) as proof of (((eq ((a->(b->Prop))->Prop)) b0) f0)
% Found (((eta_expansion (a->(b->Prop))) Prop) b0) as proof of (((eq ((a->(b->Prop))->Prop)) b0) f0)
% Found (((eta_expansion (a->(b->Prop))) Prop) b0) as proof of (((eq ((a->(b->Prop))->Prop)) b0) f0)
% Found (((eta_expansion (a->(b->Prop))) Prop) b0) as proof of (((eq ((a->(b->Prop))->Prop)) b0) f0)
% Found eq_ref00:=(eq_ref0 a0):(((eq ((a->(b->Prop))->Prop)) a0) a0)
% Found (eq_ref0 a0) as proof of (((eq ((a->(b->Prop))->Prop)) a0) b0)
% Found ((eq_ref ((a->(b->Prop))->Prop)) a0) as proof of (((eq ((a->(b->Prop))->Prop)) a0) b0)
% Found ((eq_ref ((a->(b->Prop))->Prop)) a0) as proof of (((eq ((a->(b->Prop))->Prop)) a0) b0)
% Found ((eq_ref ((a->(b->Prop))->Prop)) a0) as proof of (((eq ((a->(b->Prop))->Prop)) a0) b0)
% Found eq_ref000:=(eq_ref00 (fun (x3:b)=> ((x2 (f Xx)) (g x3)))):(((x2 (f Xx)) (g Xy))->((x2 (f Xx)) (g Xy)))
% Found (eq_ref00 (fun (x3:b)=> ((x2 (f Xx)) (g x3)))) as proof of (((x2 (f Xx)) (g Xy))->((cS Xx) Xy))
% Found ((eq_ref0 Xy) (fun (x3:b)=> ((x2 (f Xx)) (g x3)))) as proof of (((x2 (f Xx)) (g Xy))->((cS Xx) Xy))
% Found (((eq_ref b) Xy) (fun (x3:b)=> ((x2 (f Xx)) (g x3)))) as proof of (((x2 (f Xx)) (g Xy))->((cS Xx) Xy))
% Found (((eq_ref b) Xy) (fun (x3:b)=> ((x2 (f Xx)) (g x3)))) as proof of (((x2 (f Xx)) (g Xy))->((cS Xx) Xy))
% Found (((eq_ref b) Xy) (fun (x3:b)=> ((x2 (f Xx)) (g x3)))) as proof of (((x2 (f Xx)) (g Xy))->((cS Xx) Xy))
% Found eq_ref000:=(eq_ref00 (cS Xx)):(((cS Xx) Xy)->((cS Xx) Xy))
% Found (eq_ref00 (cS Xx)) as proof of (((cS Xx) Xy)->((x2 (f Xx)) (g Xy)))
% Found ((eq_ref0 Xy) (cS Xx)) as proof of (((cS Xx) Xy)->((x2 (f Xx)) (g Xy)))
% Found (((eq_ref b) Xy) (cS Xx)) as proof of (((cS Xx) Xy)->((x2 (f Xx)) (g Xy)))
% Found (((eq_ref b) Xy) (cS Xx)) as proof of (((cS Xx) Xy)->((x2 (f Xx)) (g Xy)))
% Found ((conj00 (((eq_ref b) Xy) (cS Xx))) (((eq_ref b) Xy) (fun (x3:b)=> ((x2 (f Xx)) (g x3))))) as proof of ((and (((cS Xx) Xy)->((x2 (f Xx)) (g Xy)))) (((x2 (f Xx)) (g Xy))->((cS Xx) Xy)))
% Found (((conj0 (((x2 (f Xx)) (g Xy))->((cS Xx) Xy))) (((eq_ref b) Xy) (cS Xx))) (((eq_ref b) Xy) (fun (x3:b)=> ((x2 (f Xx)) (g x3))))) as proof of ((and (((cS Xx) Xy)->((x2 (f Xx)) (g Xy)))) (((x2 (f Xx)) (g Xy))->((cS Xx) Xy)))
% Found ((((conj (((cS Xx) Xy)->((x2 (f Xx)) (g Xy)))) (((x2 (f Xx)) (g Xy))->((cS Xx) Xy))) (((eq_ref b) Xy) (cS Xx))) (((eq_ref b) Xy) (fun (x3:b)=> ((x2 (f Xx)) (g x3))))) as proof of ((and (((cS Xx) Xy)->((x2 (f Xx)) (g Xy)))) (((x2 (f Xx)) (g Xy))->((cS Xx) Xy)))
% Found ((((conj (((cS Xx) Xy)->((x2 (f Xx)) (g Xy)))) (((x2 (f Xx)) (g Xy))->((cS Xx) Xy))) (((eq_ref b) Xy) (cS Xx))) (((eq_ref b) Xy) (fun (x3:b)=> ((x2 (f Xx)) (g x3))))) as proof of ((and (((cS Xx) Xy)->((x2 (f Xx)) (g Xy)))) (((x2 (f Xx)) (g Xy))->((cS Xx) Xy)))
% Found eq_ref000:=(eq_ref00 (fun (x3:b)=> ((x2 (f Xx)) (g x3)))):(((x2 (f Xx)) (g Xy))->((x2 (f Xx)) (g Xy)))
% Found (eq_ref00 (fun (x3:b)=> ((x2 (f Xx)) (g x3)))) as proof of (((x2 (f Xx)) (g Xy))->((cS Xx) Xy))
% Found ((eq_ref0 Xy) (fun (x3:b)=> ((x2 (f Xx)) (g x3)))) as proof of (((x2 (f Xx)) (g Xy))->((cS Xx) Xy))
% Found (((eq_ref b) Xy) (fun (x3:b)=> ((x2 (f Xx)) (g x3)))) as proof of (((x2 (f Xx)) (g Xy))->((cS Xx) Xy))
% Found (((eq_ref b) Xy) (fun (x3:b)=> ((x2 (f Xx)) (g x3)))) as proof of (((x2 (f Xx)) (g Xy))->((cS Xx) Xy))
% Found (((eq_ref b) Xy) (fun (x3:b)=> ((x2 (f Xx)) (g x3)))) as proof of (((x2 (f Xx)) (g Xy))->((cS Xx) Xy))
% Found eq_ref000:=(eq_ref00 (cS Xx)):(((cS Xx) Xy)->((cS Xx) Xy))
% Found (eq_ref00 (cS Xx)) as proof of (((cS Xx) Xy)->((x2 (f Xx)) (g Xy)))
% Found ((eq_ref0 Xy) (cS Xx)) as proof of (((cS Xx) Xy)->((x2 (f Xx)) (g Xy)))
% Found (((eq_ref b) Xy) (cS Xx)) as proof of (((cS Xx) Xy)->((x2 (f Xx)) (g Xy)))
% Found (((eq_ref b) Xy) (cS Xx)) as proof of (((cS Xx) Xy)->((x2 (f Xx)) (g Xy)))
% Found ((conj00 (((eq_ref b) Xy) (cS Xx))) (((eq_ref b) Xy) (fun (x3:b)=> ((x2 (f Xx)) (g x3))))) as proof of ((and (((cS Xx) Xy)->((x2 (f Xx)) (g Xy)))) (((x2 (f Xx)) (g Xy))->((cS Xx) Xy)))
% Found (((conj0 (((x2 (f Xx)) (g Xy))->((cS Xx) Xy))) (((eq_ref b) Xy) (cS Xx))) (((eq_ref b) Xy) (fun (x3:b)=> ((x2 (f Xx)) (g x3))))) as proof of ((and (((cS Xx) Xy)->((x2 (f Xx)) (g Xy)))) (((x2 (f Xx)) (g Xy))->((cS Xx) Xy)))
% Found ((((conj (((cS Xx) Xy)->((x2 (f Xx)) (g Xy)))) (((x2 (f Xx)) (g Xy))->((cS Xx) Xy))) (((eq_ref b) Xy) (cS Xx))) (((eq_ref b) Xy) (fun (x3:b)=> ((x2 (f Xx)) (g x3))))) as proof of ((and (((cS Xx) Xy)->((x2 (f Xx)) (g Xy)))) (((x2 (f Xx)) (g Xy))->((cS Xx) Xy)))
% Found ((((conj (((cS Xx) Xy)->((x2 (f Xx)) (g Xy)))) (((x2 (f Xx)) (g Xy))->((cS Xx) Xy))) (((eq_ref b) Xy) (cS Xx))) (((eq_ref b) Xy) (fun (x3:b)=> ((x2 (f Xx)) (g x3))))) as proof of ((and (((cS Xx) Xy)->((x2 (f Xx)) (g Xy)))) (((x2 (f Xx)) (g Xy))->((cS Xx) Xy)))
% Found eq_ref000:=(eq_ref00 (fun (x3:b)=> ((x2 (f Xx)) (g x3)))):(((x2 (f Xx)) (g Xy))->((x2 (f Xx)) (g Xy)))
% Found (eq_ref00 (fun (x3:b)=> ((x2 (f Xx)) (g x3)))) as proof of (((x2 (f Xx)) (g Xy))->((cS Xx) Xy))
% Found ((eq_ref0 Xy) (fun (x3:b)=> ((x2 (f Xx)) (g x3)))) as proof of (((x2 (f Xx)) (g Xy))->((cS Xx) Xy))
% Found (((eq_ref b) Xy) (fun (x3:b)=> ((x2 (f Xx)) (g x3)))) as proof of (((x2 (f Xx)) (g Xy))->((cS Xx) Xy))
% Found (((eq_ref b) Xy) (fun (x3:b)=> ((x2 (f Xx)) (g x3)))) as proof of (((x2 (f Xx)) (g Xy))->((cS Xx) Xy))
% Found (((eq_ref b) Xy) (fun (x3:b)=> ((x2 (f Xx)) (g x3)))) as proof of (((x2 (f Xx)) (g Xy))->((cS Xx) Xy))
% Found eq_ref000:=(eq_ref00 (cS Xx)):(((cS Xx) Xy)->((cS Xx) Xy))
% Found (eq_ref00 (cS Xx)) as proof of (((cS Xx) Xy)->((x2 (f Xx)) (g Xy)))
% Found ((eq_ref0 Xy) (cS Xx)) as proof of (((cS Xx) Xy)->((x2 (f Xx)) (g Xy)))
% Found (((eq_ref b) Xy) (cS Xx)) as proof of (((cS Xx) Xy)->((x2 (f Xx)) (g Xy)))
% Found (((eq_ref b) Xy) (cS Xx)) as proof of (((cS Xx) Xy)->((x2 (f Xx)) (g Xy)))
% Found ((conj00 (((eq_ref b) Xy) (cS Xx))) (((eq_ref b) Xy) (fun (x3:b)=> ((x2 (f Xx)) (g x3))))) as proof of ((and (((cS Xx) Xy)->((x2 (f Xx)) (g Xy)))) (((x2 (f Xx)) (g Xy))->((cS Xx) Xy)))
% Found (((conj0 (((x2 (f Xx)) (g Xy))->((cS Xx) Xy))) (((eq_ref b) Xy) (cS Xx))) (((eq_ref b) Xy) (fun (x3:b)=> ((x2 (f Xx)) (g x3))))) as proof of ((and (((cS Xx) Xy)->((x2 (f Xx)) (g Xy)))) (((x2 (f Xx)) (g Xy))->((cS Xx) Xy)))
% Found ((((conj (((cS Xx) Xy)->((x2 (f Xx)) (g Xy)))) (((x2 (f Xx)) (g Xy))->((cS Xx) Xy))) (((eq_ref b) Xy) (cS Xx))) (((eq_ref b) Xy) (fun (x3:b)=> ((x2 (f Xx)) (g x3))))) as proof of ((and (((cS Xx) Xy)->((x2 (f Xx)) (g Xy)))) (((x2 (f Xx)) (g Xy))->((cS Xx) Xy)))
% Found ((((conj (((cS Xx) Xy)->((x2 (f Xx)) (g Xy)))) (((x2 (f Xx)) (g Xy))->((cS Xx) Xy))) (((eq_ref b) Xy) (cS Xx))) (((eq_ref b) Xy) (fun (x3:b)=> ((x2 (f Xx)) (g x3))))) as proof of ((and (((cS Xx) Xy)->((x2 (f Xx)) (g Xy)))) (((x2 (f Xx)) (g Xy))->((cS Xx) Xy)))
% Found eq_ref000:=(eq_ref00 (fun (x3:b)=> ((x2 (f Xx)) (g x3)))):(((x2 (f Xx)) (g Xy))->((x2 (f Xx)) (g Xy)))
% Found (eq_ref00 (fun (x3:b)=> ((x2 (f Xx)) (g x3)))) as proof of (((x2 (f Xx)) (g Xy))->((cS Xx) Xy))
% Found ((eq_ref0 Xy) (fun (x3:b)=> ((x2 (f Xx)) (g x3)))) as proof of (((x2 (f Xx)) (g Xy))->((cS Xx) Xy))
% Found (((eq_ref b) Xy) (fun (x3:b)=> ((x2 (f Xx)) (g x3)))) as proof of (((x2 (f Xx)) (g Xy))->((cS Xx) Xy))
% Found (((eq_ref b) Xy) (fun (x3:b)=> ((x2 (f Xx)) (g x3)))) as proof of (((x2 (f Xx)) (g Xy))->((cS Xx) Xy))
% Found (((eq_ref b) Xy) (fun (x3:b)=> ((x2 (f Xx)) (g x3)))) as proof of (((x2 (f Xx)) (g Xy))->((cS Xx) Xy))
% Found eq_ref000:=(eq_ref00 (cS Xx)):(((cS Xx) Xy)->((cS Xx) Xy))
% Found (eq_ref00 (cS Xx)) as proof of (((cS Xx) Xy)->((x2 (f Xx)) (g Xy)))
% Found ((eq_ref0 Xy) (cS Xx)) as proof of (((cS Xx) Xy)->((x2 (f Xx)) (g Xy)))
% Found (((eq_ref b) Xy) (cS Xx)) as proof of (((cS Xx) Xy)->((x2 (f Xx)) (g Xy)))
% Found (((eq_ref b) Xy) (cS Xx)) as proof of (((cS Xx) Xy)->((x2 (f Xx)) (g Xy)))
% Found ((conj00 (((eq_ref b) Xy) (cS Xx))) (((eq_ref b) Xy) (fun (x3:b)=> ((x2 (f Xx)) (g x3))))) as proof of ((and (((cS Xx) Xy)->((x2 (f Xx)) (g Xy)))) (((x2 (f Xx)) (g Xy))->((cS Xx) Xy)))
% Found (((conj0 (((x2 (f Xx)) (g Xy))->((cS Xx) Xy))) (((eq_ref b) Xy) (cS Xx))) (((eq_ref b) Xy) (fun (x3:b)=> ((x2 (f Xx)) (g x3))))) as proof of ((and (((cS Xx) Xy)->((x2 (f Xx)) (g Xy)))) (((x2 (f Xx)) (g Xy))->((cS Xx) Xy)))
% Found ((((conj (((cS Xx) Xy)->((x2 (f Xx)) (g Xy)))) (((x2 (f Xx)) (g Xy))->((cS Xx) Xy))) (((eq_ref b) Xy) (cS Xx))) (((eq_ref b) Xy) (fun (x3:b)=> ((x2 (f Xx)) (g x3))))) as proof of ((and (((cS Xx) Xy)->((x2 (f Xx)) (g Xy)))) (((x2 (f Xx)) (g Xy))->((cS Xx) Xy)))
% Found ((((conj (((cS Xx) Xy)->((x2 (f Xx)) (g Xy)))) (((x2 (f Xx)) (g Xy))->((cS Xx) Xy))) (((eq_ref b) Xy) (cS Xx))) (((eq_ref b) Xy) (fun (x3:b)=> ((x2 (f Xx)) (g x3))))) as proof of ((and (((cS Xx) Xy)->((x2 (f Xx)) (g Xy)))) (((x2 (f Xx)) (g Xy))->((cS Xx) Xy)))
% Found eta_expansion000:=(eta_expansion00 a0):(((eq ((a->(b->Prop))->Prop)) a0) (fun (x:(a->(b->Prop)))=> (a0 x)))
% Found (eta_expansion00 a0) as proof of (((eq ((a->(b->Prop))->Prop)) a0) b0)
% Found ((eta_expansion0 Prop) a0) as proof of (((eq ((a->(b->Prop))->Prop)) a0) b0)
% Found (((eta_expansion (a->(b->Prop))) Prop) a0) as proof of (((eq ((a->(b->Prop))->Prop)) a0) b0)
% Found (((eta_expansion (a->(b->Prop))) Prop) a0) as proof of (((eq ((a->(b->Prop))->Prop)) a0) b0)
% Found (((eta_expansion (a->(b->Prop))) Prop) a0) as proof of (((eq ((a->(b->Prop))->Prop)) a0) b0)
% Found eta_expansion000:=(eta_expansion00 b0):(((eq ((a->(b->Prop))->Prop)) b0) (fun (x:(a->(b->Prop)))=> (b0 x)))
% Found (eta_expansion00 b0) as proof of (((eq ((a->(b->Prop))->Prop)) b0) f0)
% Found ((eta_expansion0 Prop) b0) as proof of (((eq ((a->(b->Prop))->Prop)) b0) f0)
% Found (((eta_expansion (a->(b->Prop))) Prop) b0) as proof of (((eq ((a->(b->Prop))->Prop)) b0) f0)
% Found (((eta_expansion (a->(b->Prop))) Prop) b0) as proof of (((eq ((a->(b->Prop))->Prop)) b0) f0)
% Found (((eta_expansion (a->(b->Prop))) Prop) b0) as proof of (((eq ((a->(b->Prop))->Prop)) b0) f0)
% Found eta_expansion000:=(eta_expansion00 b0):(((eq ((a->(b->Prop))->Prop)) b0) (fun (x:(a->(b->Prop)))=> (b0 x)))
% Found (eta_expansion00 b0) as proof of (((eq ((a->(b->Prop))->Prop)) b0) f0)
% Found ((eta_expansion0 Prop) b0) as proof of (((eq ((a->(b->Prop))->Prop)) b0) f0)
% Found (((eta_expansion (a->(b->Prop))) Prop) b0) as proof of (((eq ((a->(b->Prop))->Prop)) b0) f0)
% Found (((eta_expansion (a->(b->Prop))) Prop) b0) as proof of (((eq ((a->(b->Prop))->Prop)) b0) f0)
% Found (((eta_expansion (a->(b->Prop))) Prop) b0) as proof of (((eq ((a->(b->Prop))->Prop)) b0) f0)
% Found eta_expansion000:=(eta_expansion00 b0):(((eq ((a->(b->Prop))->Prop)) b0) (fun (x:(a->(b->Prop)))=> (b0 x)))
% Found (eta_expansion00 b0) as proof of (((eq ((a->(b->Prop))->Prop)) b0) f0)
% Found ((eta_expansion0 Prop) b0) as proof of (((eq ((a->(b->Prop))->Prop)) b0) f0)
% Found (((eta_expansion (a->(b->Prop))) Prop) b0) as proof of (((eq ((a->(b->Prop))->Prop)) b0) f0)
% Found (((eta_expansion (a->(b->Prop))) Prop) b0) as proof of (((eq ((a->(b->Prop))->Prop)) b0) f0)
% Found (((eta_expansion (a->(b->Prop))) Prop) b0) as proof of (((eq ((a->(b->Prop))->Prop)) b0) f0)
% Found eta_expansion000:=(eta_expansion00 a0):(((eq ((a->(b->Prop))->Prop)) a0) (fun (x:(a->(b->Prop)))=> (a0 x)))
% Found (eta_expansion00 a0) as proof of (((eq ((a->(b->Prop))->Prop)) a0) b0)
% Found ((eta_expansion0 Prop) a0) as proof of (((eq ((a->(b->Prop))->Prop)) a0) b0)
% Found (((eta_expansion (a->(b->Prop))) Prop) a0) as proof of (((eq ((a->(b->Prop))->Prop)) a0) b0)
% Found (((eta_expansion (a->(b->Prop))) Prop) a0) as proof of (((eq ((a->(b->Prop))->Prop)) a0) b0)
% Found (((eta_expansion (a->(b->Prop))) Prop) a0) as proof of (((eq ((a->(b->Prop))->Prop)) a0) b0)
% Found eq_ref00:=(eq_ref0 a0):(((eq ((a->(b->Prop))->Prop)) a0) a0)
% Found (eq_ref0 a0) as proof of (((eq ((a->(b->Prop))->Prop)) a0) b0)
% Found ((eq_ref ((a->(b->Prop))->Prop)) a0) as proof of (((eq ((a->(b->Prop))->Prop)) a0) b0)
% Found ((eq_ref ((a->(b->Prop))->Prop)) a0) as proof of (((eq ((a->(b->Prop))->Prop)) a0) b0)
% Found ((eq_ref ((a->(b->Prop))->Prop)) a0) as proof of (((eq ((a->(b->Prop))->Prop)) a0) b0)
% Found eq_ref000:=(eq_ref00 (fun (x3:b)=> ((x0 (f Xx)) (g x3)))):(((x0 (f Xx)) (g Xy))->((x0 (f Xx)) (g Xy)))
% Found (eq_ref00 (fun (x3:b)=> ((x0 (f Xx)) (g x3)))) as proof of (((x0 (f Xx)) (g Xy))->((cS Xx) Xy))
% Found ((eq_ref0 Xy) (fun (x3:b)=> ((x0 (f Xx)) (g x3)))) as proof of (((x0 (f Xx)) (g Xy))->((cS Xx) Xy))
% Found (((eq_ref b) Xy) (fun (x3:b)=> ((x0 (f Xx)) (g x3)))) as proof of (((x0 (f Xx)) (g Xy))->((cS Xx) Xy))
% Found (((eq_ref b) Xy) (fun (x3:b)=> ((x0 (f Xx)) (g x3)))) as proof of (((x0 (f Xx)) (g Xy))->((cS Xx) Xy))
% Found (((eq_ref b) Xy) (fun (x3:b)=> ((x0 (f Xx)) (g x3)))) as proof of (((x0 (f Xx)) (g Xy))->((cS Xx) Xy))
% Found eq_ref000:=(eq_ref00 (cS Xx)):(((cS Xx) Xy)->((cS Xx) Xy))
% Found (eq_ref00 (cS Xx)) as proof of (((cS Xx) Xy)->((x0 (f Xx)) (g Xy)))
% Found ((eq_ref0 Xy) (cS Xx)) as proof of (((cS Xx) Xy)->((x0 (f Xx)) (g Xy)))
% Found (((eq_ref b) Xy) (cS Xx)) as proof of (((cS Xx) Xy)->((x0 (f Xx)) (g Xy)))
% Found (((eq_ref b) Xy) (cS Xx)) as proof of (((cS Xx) Xy)->((x0 (f Xx)) (g Xy)))
% Found ((conj00 (((eq_ref b) Xy) (cS Xx))) (((eq_ref b) Xy) (fun (x3:b)=> ((x0 (f Xx)) (g x3))))) as proof of ((and (((cS Xx) Xy)->((x0 (f Xx)) (g Xy)))) (((x0 (f Xx)) (g Xy))->((cS Xx) Xy)))
% Found (((conj0 (((x0 (f Xx)) (g Xy))->((cS Xx) Xy))) (((eq_ref b) Xy) (cS Xx))) (((eq_ref b) Xy) (fun (x3:b)=> ((x0 (f Xx)) (g x3))))) as proof of ((and (((cS Xx) Xy)->((x0 (f Xx)) (g Xy)))) (((x0 (f Xx)) (g Xy))->((cS Xx) Xy)))
% Found ((((conj (((cS Xx) Xy)->((x0 (f Xx)) (g Xy)))) (((x0 (f Xx)) (g Xy))->((cS Xx) Xy))) (((eq_ref b) Xy) (cS Xx))) (((eq_ref b) Xy) (fun (x3:b)=> ((x0 (f Xx)) (g x3))))) as proof of ((and (((cS Xx) Xy)->((x0 (f Xx)) (g Xy)))) (((x0 (f Xx)) (g Xy))->((cS Xx) Xy)))
% Found ((((conj (((cS Xx) Xy)->((x0 (f Xx)) (g Xy)))) (((x0 (f Xx)) (g Xy))->((cS Xx) Xy))) (((eq_ref b) Xy) (cS Xx))) (((eq_ref b) Xy) (fun (x3:b)=> ((x0 (f Xx)) (g x3))))) as proof of ((and (((cS Xx) Xy)->((x0 (f Xx)) (g Xy)))) (((x0 (f Xx)) (g Xy))->((cS Xx) Xy)))
% Found x1:(P2 (f0 x0))
% Instantiate: b0:=f0:((a->(b->Prop))->Prop)
% Found (fun (x1:(P2 (f0 x0)))=> x1) as proof of (P2 (b0 x0))
% Found (fun (P2:(Prop->Prop)) (x1:(P2 (f0 x0)))=> x1) as proof of ((P2 (f0 x0))->(P2 (b0 x0)))
% Found (fun (x0:(a->(b->Prop))) (P2:(Prop->Prop)) (x1:(P2 (f0 x0)))=> x1) as proof of (((eq Prop) (f0 x0)) (b0 x0))
% Found (fun (x0:(a->(b->Prop))) (P2:(Prop->Prop)) (x1:(P2 (f0 x0)))=> x1) as proof of (forall (x:(a->(b->Prop))), (((eq Prop) (f0 x)) (b0 x)))
% Found x1:(P2 (f0 x0))
% Instantiate: b0:=f0:((a->(b->Prop))->Prop)
% Found (fun (x1:(P2 (f0 x0)))=> x1) as proof of (P2 (b0 x0))
% Found (fun (P2:(Prop->Prop)) (x1:(P2 (f0 x0)))=> x1) as proof of ((P2 (f0 x0))->(P2 (b0 x0)))
% Found (fun (x0:(a->(b->Prop))) (P2:(Prop->Prop)) (x1:(P2 (f0 x0)))=> x1) as proof of (((eq Prop) (f0 x0)) (b0 x0))
% Found (fun (x0:(a->(b->Prop))) (P2:(Prop->Prop)) (x1:(P2 (f0 x0)))=> x1) as proof of (forall (x:(a->(b->Prop))), (((eq Prop) (f0 x)) (b0 x)))
% Found iff_refl0:=(iff_refl ((x2 (f Xx)) (g Xy))):((iff ((x2 (f Xx)) (g Xy))) ((x2 (f Xx)) (g Xy)))
% Found (iff_refl ((x2 (f Xx)) (g Xy))) as proof of ((iff ((x2 (f Xx)) (g Xy))) ((cS Xx) Xy))
% Found (iff_refl ((x2 (f Xx)) (g Xy))) as proof of ((iff ((x2 (f Xx)) (g Xy))) ((cS Xx) Xy))
% Found (iff_refl ((x2 (f Xx)) (g Xy))) as proof of ((iff ((x2 (f Xx)) (g Xy))) ((cS Xx) Xy))
% Found (iff_sym00 (iff_refl ((x2 (f Xx)) (g Xy)))) as proof of ((iff ((cS Xx) Xy)) ((x2 (f Xx)) (g Xy)))
% Found ((iff_sym0 ((cS Xx) Xy)) (iff_refl ((x2 (f Xx)) (g Xy)))) as proof of ((iff ((cS Xx) Xy)) ((x2 (f Xx)) (g Xy)))
% Found (((iff_sym ((x2 (f Xx)) (g Xy))) ((cS Xx) Xy)) (iff_refl ((x2 (f Xx)) (g Xy)))) as proof of ((iff ((cS Xx) Xy)) ((x2 (f Xx)) (g Xy)))
% Found eq_ref000:=(eq_ref00 (fun (x3:b)=> ((x0 (f Xx)) (g x3)))):(((x0 (f Xx)) (g Xy))->((x0 (f Xx)) (g Xy)))
% Found (eq_ref00 (fun (x3:b)=> ((x0 (f Xx)) (g x3)))) as proof of (((x0 (f Xx)) (g Xy))->((cS Xx) Xy))
% Found ((eq_ref0 Xy) (fun (x3:b)=> ((x0 (f Xx)) (g x3)))) as proof of (((x0 (f Xx)) (g Xy))->((cS Xx) Xy))
% Found (((eq_ref b) Xy) (fun (x3:b)=> ((x0 (f Xx)) (g x3)))) as proof of (((x0 (f Xx)) (g Xy))->((cS Xx) Xy))
% Found (((eq_ref b) Xy) (fun (x3:b)=> ((x0 (f Xx)) (g x3)))) as proof of (((x0 (f Xx)) (g Xy))->((cS Xx) Xy))
% Found (((eq_ref b) Xy) (fun (x3:b)=> ((x0 (f Xx)) (g x3)))) as proof of (((x0 (f Xx)) (g Xy))->((cS Xx) Xy))
% Found eq_ref000:=(eq_ref00 (cS Xx)):(((cS Xx) Xy)->((cS Xx) Xy))
% Found (eq_ref00 (cS Xx)) as proof of (((cS Xx) Xy)->((x0 (f Xx)) (g Xy)))
% Found ((eq_ref0 Xy) (cS Xx)) as proof of (((cS Xx) Xy)->((x0 (f Xx)) (g Xy)))
% Found (((eq_ref b) Xy) (cS Xx)) as proof of (((cS Xx) Xy)->((x0 (f Xx)) (g Xy)))
% Found (((eq_ref b) Xy) (cS Xx)) as proof of (((cS Xx) Xy)->((x0 (f Xx)) (g Xy)))
% Found ((conj00 (((eq_ref b) Xy) (cS Xx))) (((eq_ref b) Xy) (fun (x3:b)=> ((x0 (f Xx)) (g x3))))) as proof of ((and (((cS Xx) Xy)->((x0 (f Xx)) (g Xy)))) (((x0 (f Xx)) (g Xy))->((cS Xx) Xy)))
% Found (((conj0 (((x0 (f Xx)) (g Xy))->((cS Xx) Xy))) (((eq_ref b) Xy) (cS Xx))) (((eq_ref b) Xy) (fun (x3:b)=> ((x0 (f Xx)) (g x3))))) as proof of ((and (((cS Xx) Xy)->((x0 (f Xx)) (g Xy)))) (((x0 (f Xx)) (g Xy))->((cS Xx) Xy)))
% Found ((((conj (((cS Xx) Xy)->((x0 (f Xx)) (g Xy)))) (((x0 (f Xx)) (g Xy))->((cS Xx) Xy))) (((eq_ref b) Xy) (cS Xx))) (((eq_ref b) Xy) (fun (x3:b)=> ((x0 (f Xx)) (g x3))))) as proof of ((and (((cS Xx) Xy)->((x0 (f Xx)) (g Xy)))) (((x0 (f Xx)) (g Xy))->((cS Xx) Xy)))
% Found (fun (x2:(forall (Xx0:b) (Xy0:b), ((((eq b) (g Xx0)) (g Xy0))->(((eq b) Xx0) Xy0))))=> ((((conj (((cS Xx) Xy)->((x0 (f Xx)) (g Xy)))) (((x0 (f Xx)) (g Xy))->((cS Xx) Xy))) (((eq_ref b) Xy) (cS Xx))) (((eq_ref b) Xy) (fun (x3:b)=> ((x0 (f Xx)) (g x3)))))) as proof of ((and (((cS Xx) Xy)->((x0 (f Xx)) (g Xy)))) (((x0 (f Xx)) (g Xy))->((cS Xx) Xy)))
% Found (fun (x1:(forall (Xx0:a) (Xy0:a), ((((eq a) (f Xx0)) (f Xy0))->(((eq a) Xx0) Xy0)))) (x2:(forall (Xx0:b) (Xy0:b), ((((eq b) (g Xx0)) (g Xy0))->(((eq b) Xx0) Xy0))))=> ((((conj (((cS Xx) Xy)->((x0 (f Xx)) (g Xy)))) (((x0 (f Xx)) (g Xy))->((cS Xx) Xy))) (((eq_ref b) Xy) (cS Xx))) (((eq_ref b) Xy) (fun (x3:b)=> ((x0 (f Xx)) (g x3)))))) as proof of ((forall (Xx0:b) (Xy0:b), ((((eq b) (g Xx0)) (g Xy0))->(((eq b) Xx0) Xy0)))->((and (((cS Xx) Xy)->((x0 (f Xx)) (g Xy)))) (((x0 (f Xx)) (g Xy))->((cS Xx) Xy))))
% Found (fun (x1:(forall (Xx0:a) (Xy0:a), ((((eq a) (f Xx0)) (f Xy0))->(((eq a) Xx0) Xy0)))) (x2:(forall (Xx0:b) (Xy0:b), ((((eq b) (g Xx0)) (g Xy0))->(((eq b) Xx0) Xy0))))=> ((((conj (((cS Xx) Xy)->((x0 (f Xx)) (g Xy)))) (((x0 (f Xx)) (g Xy))->((cS Xx) Xy))) (((eq_ref b) Xy) (cS Xx))) (((eq_ref b) Xy) (fun (x3:b)=> ((x0 (f Xx)) (g x3)))))) as proof of ((forall (Xx0:a) (Xy0:a), ((((eq a) (f Xx0)) (f Xy0))->(((eq a) Xx0) Xy0)))->((forall (Xx0:b) (Xy0:b), ((((eq b) (g Xx0)) (g Xy0))->(((eq b) Xx0) Xy0)))->((and (((cS Xx) Xy)->((x0 (f Xx)) (g Xy)))) (((x0 (f Xx)) (g Xy))->((cS Xx) Xy)))))
% Found (and_rect00 (fun (x1:(forall (Xx0:a) (Xy0:a), ((((eq a) (f Xx0)) (f Xy0))->(((eq a) Xx0) Xy0)))) (x2:(forall (Xx0:b) (Xy0:b), ((((eq b) (g Xx0)) (g Xy0))->(((eq b) Xx0) Xy0))))=> ((((conj (((cS Xx) Xy)->((x0 (f Xx)) (g Xy)))) (((x0 (f Xx)) (g Xy))->((cS Xx) Xy))) (((eq_ref b) Xy) (cS Xx))) (((eq_ref b) Xy) (fun (x3:b)=> ((x0 (f Xx)) (g x3))))))) as proof of ((and (((cS Xx) Xy)->((x0 (f Xx)) (g Xy)))) (((x0 (f Xx)) (g Xy))->((cS Xx) Xy)))
% Found ((and_rect0 ((and (((cS Xx) Xy)->((x0 (f Xx)) (g Xy)))) (((x0 (f Xx)) (g Xy))->((cS Xx) Xy)))) (fun (x1:(forall (Xx0:a) (Xy0:a), ((((eq a) (f Xx0)) (f Xy0))->(((eq a) Xx0) Xy0)))) (x2:(forall (Xx0:b) (Xy0:b), ((((eq b) (g Xx0)) (g Xy0))->(((eq b) Xx0) Xy0))))=> ((((conj (((cS Xx) Xy)->((x0 (f Xx)) (g Xy)))) (((x0 (f Xx)) (g Xy))->((cS Xx) Xy))) (((eq_ref b) Xy) (cS Xx))) (((eq_ref b) Xy) (fun (x3:b)=> ((x0 (f Xx)) (g x3))))))) as proof of ((and (((cS Xx) Xy)->((x0 (f Xx)) (g Xy)))) (((x0 (f Xx)) (g Xy))->((cS Xx) Xy)))
% Found (((fun (P0:Type) (x1:((forall (Xx:a) (Xy:a), ((((eq a) (f Xx)) (f Xy))->(((eq a) Xx) Xy)))->((forall (Xx:b) (Xy:b), ((((eq b) (g Xx)) (g Xy))->(((eq b) Xx) Xy)))->P0)))=> (((((and_rect (forall (Xx:a) (Xy:a), ((((eq a) (f Xx)) (f Xy))->(((eq a) Xx) Xy)))) (forall (Xx:b) (Xy:b), ((((eq b) (g Xx)) (g Xy))->(((eq b) Xx) Xy)))) P0) x1) x)) ((and (((cS Xx) Xy)->((x0 (f Xx)) (g Xy)))) (((x0 (f Xx)) (g Xy))->((cS Xx) Xy)))) (fun (x1:(forall (Xx0:a) (Xy0:a), ((((eq a) (f Xx0)) (f Xy0))->(((eq a) Xx0) Xy0)))) (x2:(forall (Xx0:b) (Xy0:b), ((((eq b) (g Xx0)) (g Xy0))->(((eq b) Xx0) Xy0))))=> ((((conj (((cS Xx) Xy)->((x0 (f Xx)) (g Xy)))) (((x0 (f Xx)) (g Xy))->((cS Xx) Xy))) (((eq_ref b) Xy) (cS Xx))) (((eq_ref b) Xy) (fun (x3:b)=> ((x0 (f Xx)) (g x3))))))) as proof of ((and (((cS Xx) Xy)->((x0 (f Xx)) (g Xy)))) (((x0 (f Xx)) (g Xy))->((cS Xx) Xy)))
% Found (((fun (P0:Type) (x1:((forall (Xx:a) (Xy:a), ((((eq a) (f Xx)) (f Xy))->(((eq a) Xx) Xy)))->((forall (Xx:b) (Xy:b), ((((eq b) (g Xx)) (g Xy))->(((eq b) Xx) Xy)))->P0)))=> (((((and_rect (forall (Xx:a) (Xy:a), ((((eq a) (f Xx)) (f Xy))->(((eq a) Xx) Xy)))) (forall (Xx:b) (Xy:b), ((((eq b) (g Xx)) (g Xy))->(((eq b) Xx) Xy)))) P0) x1) x)) ((and (((cS Xx) Xy)->((x0 (f Xx)) (g Xy)))) (((x0 (f Xx)) (g Xy))->((cS Xx) Xy)))) (fun (x1:(forall (Xx0:a) (Xy0:a), ((((eq a) (f Xx0)) (f Xy0))->(((eq a) Xx0) Xy0)))) (x2:(forall (Xx0:b) (Xy0:b), ((((eq b) (g Xx0)) (g Xy0))->(((eq b) Xx0) Xy0))))=> ((((conj (((cS Xx) Xy)->((x0 (f Xx)) (g Xy)))) (((x0 (f Xx)) (g Xy))->((cS Xx) Xy))) (((eq_ref b) Xy) (cS Xx))) (((eq_ref b) Xy) (fun (x3:b)=> ((x0 (f Xx)) (g x3))))))) as proof of ((and (((cS Xx) Xy)->((x0 (f Xx)) (g Xy)))) (((x0 (f Xx)) (g Xy))->((cS Xx) Xy)))
% Found eq_ref000:=(eq_ref00 (fun (x3:b)=> ((x0 (f Xx)) (g x3)))):(((x0 (f Xx)) (g Xy))->((x0 (f Xx)) (g Xy)))
% Found (eq_ref00 (fun (x3:b)=> ((x0 (f Xx)) (g x3)))) as proof of (((x0 (f Xx)) (g Xy))->((cS Xx) Xy))
% Found ((eq_ref0 Xy) (fun (x3:b)=> ((x0 (f Xx)) (g x3)))) as proof of (((x0 (f Xx)) (g Xy))->((cS Xx) Xy))
% Found (((eq_ref b) Xy) (fun (x3:b)=> ((x0 (f Xx)) (g x3)))) as proof of (((x0 (f Xx)) (g Xy))->((cS Xx) Xy))
% Found (((eq_ref b) Xy) (fun (x3:b)=> ((x0 (f Xx)) (g x3)))) as proof of (((x0 (f Xx)) (g Xy))->((cS Xx) Xy))
% Found (((eq_ref b) Xy) (fun (x3:b)=> ((x0 (f Xx)) (g x3)))) as proof of (((x0 (f Xx)) (g Xy))->((cS Xx) Xy))
% Found eq_ref000:=(eq_ref00 (cS Xx)):(((cS Xx) Xy)->((cS Xx) Xy))
% Found (eq_ref00 (cS Xx)) as proof of (((cS Xx) Xy)->((x0 (f Xx)) (g Xy)))
% Found ((eq_ref0 Xy) (cS Xx)) as proof of (((cS Xx) Xy)->((x0 (f Xx)) (g Xy)))
% Found (((eq_ref b) Xy) (cS Xx)) as proof of (((cS Xx) Xy)->((x0 (f Xx)) (g Xy)))
% Found (((eq_ref b) Xy) (cS Xx)) as proof of (((cS Xx) Xy)->((x0 (f Xx)) (g Xy)))
% Found ((conj00 (((eq_ref b) Xy) (cS Xx))) (((eq_ref b) Xy) (fun (x3:b)=> ((x0 (f Xx)) (g x3))))) as proof of ((and (((cS Xx) Xy)->((x0 (f Xx)) (g Xy)))) (((x0 (f Xx)) (g Xy))->((cS Xx) Xy)))
% Found (((conj0 (((x0 (f Xx)) (g Xy))->((cS Xx) Xy))) (((eq_ref b) Xy) (cS Xx))) (((eq_ref b) Xy) (fun (x3:b)=> ((x0 (f Xx)) (g x3))))) as proof of ((and (((cS Xx) Xy)->((x0 (f Xx)) (g Xy)))) (((x0 (f Xx)) (g Xy))->((cS Xx) Xy)))
% Found ((((conj (((cS Xx) Xy)->((x0 (f Xx)) (g Xy)))) (((x0 (f Xx)) (g Xy))->((cS Xx) Xy))) (((eq_ref b) Xy) (cS Xx))) (((eq_ref b) Xy) (fun (x3:b)=> ((x0 (f Xx)) (g x3))))) as proof of ((and (((cS Xx) Xy)->((x0 (f Xx)) (g Xy)))) (((x0 (f Xx)) (g Xy))->((cS Xx) Xy)))
% Found ((((conj (((cS Xx) Xy)->((x0 (f Xx)) (g Xy)))) (((x0 (f Xx)) (g Xy))->((cS Xx) Xy))) (((eq_ref b) Xy) (cS Xx))) (((eq_ref b) Xy) (fun (x3:b)=> ((x0 (f Xx)) (g x3))))) as proof of ((and (((cS Xx) Xy)->((x0 (f Xx)) (g Xy)))) (((x0 (f Xx)) (g Xy))->((cS Xx) Xy)))
% Found eq_ref000:=(eq_ref00 (fun (x3:b)=> ((x0 (f Xx)) (g x3)))):(((x0 (f Xx)) (g Xy))->((x0 (f Xx)) (g Xy)))
% Found (eq_ref00 (fun (x3:b)=> ((x0 (f Xx)) (g x3)))) as proof of (((x0 (f Xx)) (g Xy))->((cS Xx) Xy))
% Found ((eq_ref0 Xy) (fun (x3:b)=> ((x0 (f Xx)) (g x3)))) as proof of (((x0 (f Xx)) (g Xy))->((cS Xx) Xy))
% Found (((eq_ref b) Xy) (fun (x3:b)=> ((x0 (f Xx)) (g x3)))) as proof of (((x0 (f Xx)) (g Xy))->((cS Xx) Xy))
% Found (((eq_ref b) Xy) (fun (x3:b)=> ((x0 (f Xx)) (g x3)))) as proof of (((x0 (f Xx)) (g Xy))->((cS Xx) Xy))
% Found (((eq_ref b) Xy) (fun (x3:b)=> ((x0 (f Xx)) (g x3)))) as proof of (((x0 (f Xx)) (g Xy))->((cS Xx) Xy))
% Found eq_ref000:=(eq_ref00 (cS Xx)):(((cS Xx) Xy)->((cS Xx) Xy))
% Found (eq_ref00 (cS Xx)) as proof of (((cS Xx) Xy)->((x0 (f Xx)) (g Xy)))
% Found ((eq_ref0 Xy) (cS Xx)) as proof of (((cS Xx) Xy)->((x0 (f Xx)) (g Xy)))
% Found (((eq_ref b) Xy) (cS Xx)) as proof of (((cS Xx) Xy)->((x0 (f Xx)) (g Xy)))
% Found (((eq_ref b) Xy) (cS Xx)) as proof of (((cS Xx) Xy)->((x0 (f Xx)) (g Xy)))
% Found ((conj00 (((eq_ref b) Xy) (cS Xx))) (((eq_ref b) Xy) (fun (x3:b)=> ((x0 (f Xx)) (g x3))))) as proof of ((and (((cS Xx) Xy)->((x0 (f Xx)) (g Xy)))) (((x0 (f Xx)) (g Xy))->((cS Xx) Xy)))
% Found (((conj0 (((x0 (f Xx)) (g Xy))->((cS Xx) Xy))) (((eq_ref b) Xy) (cS Xx))) (((eq_ref b) Xy) (fun (x3:b)=> ((x0 (f Xx)) (g x3))))) as proof of ((and (((cS Xx) Xy)->((x0 (f Xx)) (g Xy)))) (((x0 (f Xx)) (g Xy))->((cS Xx) Xy)))
% Found ((((conj (((cS Xx) Xy)->((x0 (f Xx)) (g Xy)))) (((x0 (f Xx)) (g Xy))->((cS Xx) Xy))) (((eq_ref b) Xy) (cS Xx))) (((eq_ref b) Xy) (fun (x3:b)=> ((x0 (f Xx)) (g x3))))) as proof of ((and (((cS Xx) Xy)->((x0 (f Xx)) (g Xy)))) (((x0 (f Xx)) (g Xy))->((cS Xx) Xy)))
% Found ((((conj (((cS Xx) Xy)->((x0 (f Xx)) (g Xy)))) (((x0 (f Xx)) (g Xy))->((cS Xx) Xy))) (((eq_ref b) Xy) (cS Xx))) (((eq_ref b) Xy) (fun (x3:b)=> ((x0 (f Xx)) (g x3))))) as proof of ((and (((cS Xx) Xy)->((x0 (f Xx)) (g Xy)))) (((x0 (f Xx)) (g Xy))->((cS Xx) Xy)))
% Found eq_ref00:=(eq_ref0 (f0 x2)):(((eq Prop) (f0 x2)) (f0 x2))
% Found (eq_ref0 (f0 x2)) as proof of (((eq Prop) (f0 x2)) (f1 x2))
% Found ((eq_ref Prop) (f0 x2)) as proof of (((eq Prop) (f0 x2)) (f1 x2))
% Found ((eq_ref Prop) (f0 x2)) as proof of (((eq Prop) (f0 x2)) (f1 x2))
% Found (fun (x2:(a->(b->Prop)))=> ((eq_ref Prop) (f0 x2))) as proof of (((eq Prop) (f0 x2)) (f1 x2))
% Found (fun (x2:(a->(b->Prop)))=> ((eq_ref Prop) (f0 x2))) as proof of (forall (x:(a->(b->Prop))), (((eq Prop) (f0 x)) (f1 x)))
% Found eq_ref00:=(eq_ref0 (f0 x2)):(((eq Prop) (f0 x2)) (f0 x2))
% Found (eq_ref0 (f0 x2)) as proof of (((eq Prop) (f0 x2)) (f1 x2))
% Found ((eq_ref Prop) (f0 x2)) as proof of (((eq Prop) (f0 x2)) (f1 x2))
% Found ((eq_ref Prop) (f0 x2)) as proof of (((eq Prop) (f0 x2)) (f1 x2))
% Found (fun (x2:(a->(b->Prop)))=> ((eq_ref Prop) (f0 x2))) as proof of (((eq Prop) (f0 x2)) (f1 x2))
% Found (fun (x2:(a->(b->Prop)))=> ((eq_ref Prop) (f0 x2))) as proof of (forall (x:(a->(b->Prop))), (((eq Prop) (f0 x)) (f1 x)))
% Found eq_ref000:=(eq_ref00 (fun (x3:b)=> ((x0 (f Xx)) (g x3)))):(((x0 (f Xx)) (g Xy))->((x0 (f Xx)) (g Xy)))
% Found (eq_ref00 (fun (x3:b)=> ((x0 (f Xx)) (g x3)))) as proof of (((x0 (f Xx)) (g Xy))->((cS Xx) Xy))
% Found ((eq_ref0 Xy) (fun (x3:b)=> ((x0 (f Xx)) (g x3)))) as proof of (((x0 (f Xx)) (g Xy))->((cS Xx) Xy))
% Found (((eq_ref b) Xy) (fun (x3:b)=> ((x0 (f Xx)) (g x3)))) as proof of (((x0 (f Xx)) (g Xy))->((cS Xx) Xy))
% Found (((eq_ref b) Xy) (fun (x3:b)=> ((x0 (f Xx)) (g x3)))) as proof of (((x0 (f Xx)) (g Xy))->((cS Xx) Xy))
% Found (((eq_ref b) Xy) (fun (x3:b)=> ((x0 (f Xx)) (g x3)))) as proof of (((x0 (f Xx)) (g Xy))->((cS Xx) Xy))
% Found eq_ref000:=(eq_ref00 (cS Xx)):(((cS Xx) Xy)->((cS Xx) Xy))
% Found (eq_ref00 (cS Xx)) as proof of (((cS Xx) Xy)->((x0 (f Xx)) (g Xy)))
% Found ((eq_ref0 Xy) (cS Xx)) as proof of (((cS Xx) Xy)->((x0 (f Xx)) (g Xy)))
% Found (((eq_ref b) Xy) (cS Xx)) as proof of (((cS Xx) Xy)->((x0 (f Xx)) (g Xy)))
% Found (((eq_ref b) Xy) (cS Xx)) as proof of (((cS Xx) Xy)->((x0 (f Xx)) (g Xy)))
% Found ((conj00 (((eq_ref b) Xy) (cS Xx))) (((eq_ref b) Xy) (fun (x3:b)=> ((x0 (f Xx)) (g x3))))) as proof of ((and (((cS Xx) Xy)->((x0 (f Xx)) (g Xy)))) (((x0 (f Xx)) (g Xy))->((cS Xx) Xy)))
% Found (((conj0 (((x0 (f Xx)) (g Xy))->((cS Xx) Xy))) (((eq_ref b) Xy) (cS Xx))) (((eq_ref b) Xy) (fun (x3:b)=> ((x0 (f Xx)) (g x3))))) as proof of ((and (((cS Xx) Xy)->((x0 (f Xx)) (g Xy)))) (((x0 (f Xx)) (g Xy))->((cS Xx) Xy)))
% Found ((((conj (((cS Xx) Xy)->((x0 (f Xx)) (g Xy)))) (((x0 (f Xx)) (g Xy))->((cS Xx) Xy))) (((eq_ref b) Xy) (cS Xx))) (((eq_ref b) Xy) (fun (x3:b)=> ((x0 (f Xx)) (g x3))))) as proof of ((and (((cS Xx) Xy)->((x0 (f Xx)) (g Xy)))) (((x0 (f Xx)) (g Xy))->((cS Xx) Xy)))
% Found (fun (x2:(forall (Xx0:b) (Xy0:b), ((((eq b) (g Xx0)) (g Xy0))->(((eq b) Xx0) Xy0))))=> ((((conj (((cS Xx) Xy)->((x0 (f Xx)) (g Xy)))) (((x0 (f Xx)) (g Xy))->((cS Xx) Xy))) (((eq_ref b) Xy) (cS Xx))) (((eq_ref b) Xy) (fun (x3:b)=> ((x0 (f Xx)) (g x3)))))) as proof of ((and (((cS Xx) Xy)->((x0 (f Xx)) (g Xy)))) (((x0 (f Xx)) (g Xy))->((cS Xx) Xy)))
% Found (fun (x1:(forall (Xx0:a) (Xy0:a), ((((eq a) (f Xx0)) (f Xy0))->(((eq a) Xx0) Xy0)))) (x2:(forall (Xx0:b) (Xy0:b), ((((eq b) (g Xx0)) (g Xy0))->(((eq b) Xx0) Xy0))))=> ((((conj (((cS Xx) Xy)->((x0 (f Xx)) (g Xy)))) (((x0 (f Xx)) (g Xy))->((cS Xx) Xy))) (((eq_ref b) Xy) (cS Xx))) (((eq_ref b) Xy) (fun (x3:b)=> ((x0 (f Xx)) (g x3)))))) as proof of ((forall (Xx0:b) (Xy0:b), ((((eq b) (g Xx0)) (g Xy0))->(((eq b) Xx0) Xy0)))->((and (((cS Xx) Xy)->((x0 (f Xx)) (g Xy)))) (((x0 (f Xx)) (g Xy))->((cS Xx) Xy))))
% Found (fun (x1:(forall (Xx0:a) (Xy0:a), ((((eq a) (f Xx0)) (f Xy0))->(((eq a) Xx0) Xy0)))) (x2:(forall (Xx0:b) (Xy0:b), ((((eq b) (g Xx0)) (g Xy0))->(((eq b) Xx0) Xy0))))=> ((((conj (((cS Xx) Xy)->((x0 (f Xx)) (g Xy)))) (((x0 (f Xx)) (g Xy))->((cS Xx) Xy))) (((eq_ref b) Xy) (cS Xx))) (((eq_ref b) Xy) (fun (x3:b)=> ((x0 (f Xx)) (g x3)))))) as proof of ((forall (Xx0:a) (Xy0:a), ((((eq a) (f Xx0)) (f Xy0))->(((eq a) Xx0) Xy0)))->((forall (Xx0:b) (Xy0:b), ((((eq b) (g Xx0)) (g Xy0))->(((eq b) Xx0) Xy0)))->((and (((cS Xx) Xy)->((x0 (f Xx)) (g Xy)))) (((x0 (f Xx)) (g Xy))->((cS Xx) Xy)))))
% Found (and_rect00 (fun (x1:(forall (Xx0:a) (Xy0:a), ((((eq a) (f Xx0)) (f Xy0))->(((eq a) Xx0) Xy0)))) (x2:(forall (Xx0:b) (Xy0:b), ((((eq b) (g Xx0)) (g Xy0))->(((eq b) Xx0) Xy0))))=> ((((conj (((cS Xx) Xy)->((x0 (f Xx)) (g Xy)))) (((x0 (f Xx)) (g Xy))->((cS Xx) Xy))) (((eq_ref b) Xy) (cS Xx))) (((eq_ref b) Xy) (fun (x3:b)=> ((x0 (f Xx)) (g x3))))))) as proof of ((and (((cS Xx) Xy)->((x0 (f Xx)) (g Xy)))) (((x0 (f Xx)) (g Xy))->((cS Xx) Xy)))
% Found ((and_rect0 ((and (((cS Xx) Xy)->((x0 (f Xx)) (g Xy)))) (((x0 (f Xx)) (g Xy))->((cS Xx) Xy)))) (fun (x1:(forall (Xx0:a) (Xy0:a), ((((eq a) (f Xx0)) (f Xy0))->(((eq a) Xx0) Xy0)))) (x2:(forall (Xx0:b) (Xy0:b), ((((eq b) (g Xx0)) (g Xy0))->(((eq b) Xx0) Xy0))))=> ((((conj (((cS Xx) Xy)->((x0 (f Xx)) (g Xy)))) (((x0 (f Xx)) (g Xy))->((cS Xx) Xy))) (((eq_ref b) Xy) (cS Xx))) (((eq_ref b) Xy) (fun (x3:b)=> ((x0 (f Xx)) (g x3))))))) as proof of ((and (((cS Xx) Xy)->((x0 (f Xx)) (g Xy)))) (((x0 (f Xx)) (g Xy))->((cS Xx) Xy)))
% Found (((fun (P0:Type) (x1:((forall (Xx:a) (Xy:a), ((((eq a) (f Xx)) (f Xy))->(((eq a) Xx) Xy)))->((forall (Xx:b) (Xy:b), ((((eq b) (g Xx)) (g Xy))->(((eq b) Xx) Xy)))->P0)))=> (((((and_rect (forall (Xx:a) (Xy:a), ((((eq a) (f Xx)) (f Xy))->(((eq a) Xx) Xy)))) (forall (Xx:b) (Xy:b), ((((eq b) (g Xx)) (g Xy))->(((eq b) Xx) Xy)))) P0) x1) x)) ((and (((cS Xx) Xy)->((x0 (f Xx)) (g Xy)))) (((x0 (f Xx)) (g Xy))->((cS Xx) Xy)))) (fun (x1:(forall (Xx0:a) (Xy0:a), ((((eq a) (f Xx0)) (f Xy0))->(((eq a) Xx0) Xy0)))) (x2:(forall (Xx0:b) (Xy0:b), ((((eq b) (g Xx0)) (g Xy0))->(((eq b) Xx0) Xy0))))=> ((((conj (((cS Xx) Xy)->((x0 (f Xx)) (g Xy)))) (((x0 (f Xx)) (g Xy))->((cS Xx) Xy))) (((eq_ref b) Xy) (cS Xx))) (((eq_ref b) Xy) (fun (x3:b)=> ((x0 (f Xx)) (g x3))))))) as proof of ((and (((cS Xx) Xy)->((x0 (f Xx)) (g Xy)))) (((x0 (f Xx)) (g Xy))->((cS Xx) Xy)))
% Found (((fun (P0:Type) (x1:((forall (Xx:a) (Xy:a), ((((eq a) (f Xx)) (f Xy))->(((eq a) Xx) Xy)))->((forall (Xx:b) (Xy:b), ((((eq b) (g Xx)) (g Xy))->(((eq b) Xx) Xy)))->P0)))=> (((((and_rect (forall (Xx:a) (Xy:a), ((((eq a) (f Xx)) (f Xy))->(((eq a) Xx) Xy)))) (forall (Xx:b) (Xy:b), ((((eq b) (g Xx)) (g Xy))->(((eq b) Xx) Xy)))) P0) x1) x)) ((and (((cS Xx) Xy)->((x0 (f Xx)) (g Xy)))) (((x0 (f Xx)) (g Xy))->((cS Xx) Xy)))) (fun (x1:(forall (Xx0:a) (Xy0:a), ((((eq a) (f Xx0)) (f Xy0))->(((eq a) Xx0) Xy0)))) (x2:(forall (Xx0:b) (Xy0:b), ((((eq b) (g Xx0)) (g Xy0))->(((eq b) Xx0) Xy0))))=> ((((conj (((cS Xx) Xy)->((x0 (f Xx)) (g Xy)))) (((x0 (f Xx)) (g Xy))->((cS Xx) Xy))) (((eq_ref b) Xy) (cS Xx))) (((eq_ref b) Xy) (fun (x3:b)=> ((x0 (f Xx)) (g x3))))))) as proof of ((and (((cS Xx) Xy)->((x0 (f Xx)) (g Xy)))) (((x0 (f Xx)) (g Xy))->((cS Xx) Xy)))
% Found eq_ref000:=(eq_ref00 (fun (x3:b)=> ((x0 (f Xx)) (g x3)))):(((x0 (f Xx)) (g Xy))->((x0 (f Xx)) (g Xy)))
% Found (eq_ref00 (fun (x3:b)=> ((x0 (f Xx)) (g x3)))) as proof of (((x0 (f Xx)) (g Xy))->((cS Xx) Xy))
% Found ((eq_ref0 Xy) (fun (x3:b)=> ((x0 (f Xx)) (g x3)))) as proof of (((x0 (f Xx)) (g Xy))->((cS Xx) Xy))
% Found (((eq_ref b) Xy) (fun (x3:b)=> ((x0 (f Xx)) (g x3)))) as proof of (((x0 (f Xx)) (g Xy))->((cS Xx) Xy))
% Found (((eq_ref b) Xy) (fun (x3:b)=> ((x0 (f Xx)) (g x3)))) as proof of (((x0 (f Xx)) (g Xy))->((cS Xx) Xy))
% Found (((eq_ref b) Xy) (fun (x3:b)=> ((x0 (f Xx)) (g x3)))) as proof of (((x0 (f Xx)) (g Xy))->((cS Xx) Xy))
% Found eq_ref000:=(eq_ref00 (cS Xx)):(((cS Xx) Xy)->((cS Xx) Xy))
% Found (eq_ref00 (cS Xx)) as proof of (((cS Xx) Xy)->((x0 (f Xx)) (g Xy)))
% Found ((eq_ref0 Xy) (cS Xx)) as proof of (((cS Xx) Xy)->((x0 (f Xx)) (g Xy)))
% Found (((eq_ref b) Xy) (cS Xx)) as proof of (((cS Xx) Xy)->((x0 (f Xx)) (g Xy)))
% Found (((eq_ref b) Xy) (cS Xx)) as proof of (((cS Xx) Xy)->((x0 (f Xx)) (g Xy)))
% Found ((conj00 (((eq_ref b) Xy) (cS Xx))) (((eq_ref b) Xy) (fun (x3:b)=> ((x0 (f Xx)) (g x3))))) as proof of ((and (((cS Xx) Xy)->((x0 (f Xx)) (g Xy)))) (((x0 (f Xx)) (g Xy))->((cS Xx) Xy)))
% Found (((conj0 (((x0 (f Xx)) (g Xy))->((cS Xx) Xy))) (((eq_ref b) Xy) (cS Xx))) (((eq_ref b) Xy) (fun (x3:b)=> ((x0 (f Xx)) (g x3))))) as proof of ((and (((cS Xx) Xy)->((x0 (f Xx)) (g Xy)))) (((x0 (f Xx)) (g Xy))->((cS Xx) Xy)))
% Found ((((conj (((cS Xx) Xy)->((x0 (f Xx)) (g Xy)))) (((x0 (f Xx)) (g Xy))->((cS Xx) Xy))) (((eq_ref b) Xy) (cS Xx))) (((eq_ref b) Xy) (fun (x3:b)=> ((x0 (f Xx)) (g x3))))) as proof of ((and (((cS Xx) Xy)->((x0 (f Xx)) (g Xy)))) (((x0 (f Xx)) (g Xy))->((cS Xx) Xy)))
% Found (fun (x2:(forall (Xx0:b) (Xy0:b), ((((eq b) (g Xx0)) (g Xy0))->(((eq b) Xx0) Xy0))))=> ((((conj (((cS Xx) Xy)->((x0 (f Xx)) (g Xy)))) (((x0 (f Xx)) (g Xy))->((cS Xx) Xy))) (((eq_ref b) Xy) (cS Xx))) (((eq_ref b) Xy) (fun (x3:b)=> ((x0 (f Xx)) (g x3)))))) as proof of ((and (((cS Xx) Xy)->((x0 (f Xx)) (g Xy)))) (((x0 (f Xx)) (g Xy))->((cS Xx) Xy)))
% Found (fun (x1:(forall (Xx0:a) (Xy0:a), ((((eq a) (f Xx0)) (f Xy0))->(((eq a) Xx0) Xy0)))) (x2:(forall (Xx0:b) (Xy0:b), ((((eq b) (g Xx0)) (g Xy0))->(((eq b) Xx0) Xy0))))=> ((((conj (((cS Xx) Xy)->((x0 (f Xx)) (g Xy)))) (((x0 (f Xx)) (g Xy))->((cS Xx) Xy))) (((eq_ref b) Xy) (cS Xx))) (((eq_ref b) Xy) (fun (x3:b)=> ((x0 (f Xx)) (g x3)))))) as proof of ((forall (Xx0:b) (Xy0:b), ((((eq b) (g Xx0)) (g Xy0))->(((eq b) Xx0) Xy0)))->((and (((cS Xx) Xy)->((x0 (f Xx)) (g Xy)))) (((x0 (f Xx)) (g Xy))->((cS Xx) Xy))))
% Found (fun (x1:(forall (Xx0:a) (Xy0:a), ((((eq a) (f Xx0)) (f Xy0))->(((eq a) Xx0) Xy0)))) (x2:(forall (Xx0:b) (Xy0:b), ((((eq b) (g Xx0)) (g Xy0))->(((eq b) Xx0) Xy0))))=> ((((conj (((cS Xx) Xy)->((x0 (f Xx)) (g Xy)))) (((x0 (f Xx)) (g Xy))->((cS Xx) Xy))) (((eq_ref b) Xy) (cS Xx))) (((eq_ref b) Xy) (fun (x3:b)=> ((x0 (f Xx)) (g x3)))))) as proof of ((forall (Xx0:a) (Xy0:a), ((((eq a) (f Xx0)) (f Xy0))->(((eq a) Xx0) Xy0)))->((forall (Xx0:b) (Xy0:b), ((((eq b) (g Xx0)) (g Xy0))->(((eq b) Xx0) Xy0)))->((and (((cS Xx) Xy)->((x0 (f Xx)) (g Xy)))) (((x0 (f Xx)) (g Xy))->((cS Xx) Xy)))))
% Found (and_rect00 (fun (x1:(forall (Xx0:a) (Xy0:a), ((((eq a) (f Xx0)) (f Xy0))->(((eq a) Xx0) Xy0)))) (x2:(forall (Xx0:b) (Xy0:b), ((((eq b) (g Xx0)) (g Xy0))->(((eq b) Xx0) Xy0))))=> ((((conj (((cS Xx) Xy)->((x0 (f Xx)) (g Xy)))) (((x0 (f Xx)) (g Xy))->((cS Xx) Xy))) (((eq_ref b) Xy) (cS Xx))) (((eq_ref b) Xy) (fun (x3:b)=> ((x0 (f Xx)) (g x3))))))) as proof of ((and (((cS Xx) Xy)->((x0 (f Xx)) (g Xy)))) (((x0 (f Xx)) (g Xy))->((cS Xx) Xy)))
% Found ((and_rect0 ((and (((cS Xx) Xy)->((x0 (f Xx)) (g Xy)))) (((x0 (f Xx)) (g Xy))->((cS Xx) Xy)))) (fun (x1:(forall (Xx0:a) (Xy0:a), ((((eq a) (f Xx0)) (f Xy0))->(((eq a) Xx0) Xy0)))) (x2:(forall (Xx0:b) (Xy0:b), ((((eq b) (g Xx0)) (g Xy0))->(((eq b) Xx0) Xy0))))=> ((((conj (((cS Xx) Xy)->((x0 (f Xx)) (g Xy)))) (((x0 (f Xx)) (g Xy))->((cS Xx) Xy))) (((eq_ref b) Xy) (cS Xx))) (((eq_ref b) Xy) (fun (x3:b)=> ((x0 (f Xx)) (g x3))))))) as proof of ((and (((cS Xx) Xy)->((x0 (f Xx)) (g Xy)))) (((x0 (f Xx)) (g Xy))->((cS Xx) Xy)))
% Found (((fun (P0:Type) (x1:((forall (Xx:a) (Xy:a), ((((eq a) (f Xx)) (f Xy))->(((eq a) Xx) Xy)))->((forall (Xx:b) (Xy:b), ((((eq b) (g Xx)) (g Xy))->(((eq b) Xx) Xy)))->P0)))=> (((((and_rect (forall (Xx:a) (Xy:a), ((((eq a) (f Xx)) (f Xy))->(((eq a) Xx) Xy)))) (forall (Xx:b) (Xy:b), ((((eq b) (g Xx)) (g Xy))->(((eq b) Xx) Xy)))) P0) x1) x)) ((and (((cS Xx) Xy)->((x0 (f Xx)) (g Xy)))) (((x0 (f Xx)) (g Xy))->((cS Xx) Xy)))) (fun (x1:(forall (Xx0:a) (Xy0:a), ((((eq a) (f Xx0)) (f Xy0))->(((eq a) Xx0) Xy0)))) (x2:(forall (Xx0:b) (Xy0:b), ((((eq b) (g Xx0)) (g Xy0))->(((eq b) Xx0) Xy0))))=> ((((conj (((cS Xx) Xy)->((x0 (f Xx)) (g Xy)))) (((x0 (f Xx)) (g Xy))->((cS Xx) Xy))) (((eq_ref b) Xy) (cS Xx))) (((eq_ref b) Xy) (fun (x3:b)=> ((x0 (f Xx)) (g x3))))))) as proof of ((and (((cS Xx) Xy)->((x0 (f Xx)) (g Xy)))) (((x0 (f Xx)) (g Xy))->((cS Xx) Xy)))
% Found (((fun (P0:Type) (x1:((forall (Xx:a) (Xy:a), ((((eq a) (f Xx)) (f Xy))->(((eq a) Xx) Xy)))->((forall (Xx:b) (Xy:b), ((((eq b) (g Xx)) (g Xy))->(((eq b) Xx) Xy)))->P0)))=> (((((and_rect (forall (Xx:a) (Xy:a), ((((eq a) (f Xx)) (f Xy))->(((eq a) Xx) Xy)))) (forall (Xx:b) (Xy:b), ((((eq b) (g Xx)) (g Xy))->(((eq b) Xx) Xy)))) P0) x1) x)) ((and (((cS Xx) Xy)->((x0 (f Xx)) (g Xy)))) (((x0 (f Xx)) (g Xy))->((cS Xx) Xy)))) (fun (x1:(forall (Xx0:a) (Xy0:a), ((((eq a) (f Xx0)) (f Xy0))->(((eq a) Xx0) Xy0)))) (x2:(forall (Xx0:b) (Xy0:b), ((((eq b) (g Xx0)) (g Xy0))->(((eq b) Xx0) Xy0))))=> ((((conj (((cS Xx) Xy)->((x0 (f Xx)) (g Xy)))) (((x0 (f Xx)) (g Xy))->((cS Xx) Xy))) (((eq_ref b) Xy) (cS Xx))) (((eq_ref b) Xy) (fun (x3:b)=> ((x0 (f Xx)) (g x3))))))) as proof of ((and (((cS Xx) Xy)->((x0 (f Xx)) (g Xy)))) (((x0 (f Xx)) (g Xy))->((cS Xx) Xy)))
% Found iff_refl0:=(iff_refl ((x2 (f Xx)) (g Xy))):((iff ((x2 (f Xx)) (g Xy))) ((x2 (f Xx)) (g Xy)))
% Found (iff_refl ((x2 (f Xx)) (g Xy))) as proof of ((iff ((x2 (f Xx)) (g Xy))) ((cS Xx) Xy))
% Found (iff_refl ((x2 (f Xx)) (g Xy))) as proof of ((iff ((x2 (f Xx)) (g Xy))) ((cS Xx) Xy))
% Found (iff_refl ((x2 (f Xx)) (g Xy))) as proof of ((iff ((x2 (f Xx)) (g Xy))) ((cS Xx) Xy))
% Found (iff_sym00 (iff_refl ((x2 (f Xx)) (g Xy)))) as proof of ((iff ((cS Xx) Xy)) ((x2 (f Xx)) (g Xy)))
% Found ((iff_sym0 ((cS Xx) Xy)) (iff_refl ((x2 (f Xx)) (g Xy)))) as proof of ((iff ((cS Xx) Xy)) ((x2 (f Xx)) (g Xy)))
% Found (((iff_sym ((x2 (f Xx)) (g Xy))) ((cS Xx) Xy)) (iff_refl ((x2 (f Xx)) (g Xy)))) as proof of ((iff ((cS Xx) Xy)) ((x2 (f Xx)) (g Xy)))
% Found eq_ref000:=(eq_ref00 (fun (x3:b)=> ((x2 (f Xx)) (g x3)))):(((x2 (f Xx)) (g Xy))->((x2 (f Xx)) (g Xy)))
% Found (eq_ref00 (fun (x3:b)=> ((x2 (f Xx)) (g x3)))) as proof of (((x2 (f Xx)) (g Xy))->((cS Xx) Xy))
% Found ((eq_ref0 Xy) (fun (x3:b)=> ((x2 (f Xx)) (g x3)))) as proof of (((x2 (f Xx)) (g Xy))->((cS Xx) Xy))
% Found (((eq_ref b) Xy) (fun (x3:b)=> ((x2 (f Xx)) (g x3)))) as proof of (((x2 (f Xx)) (g Xy))->((cS Xx) Xy))
% Found (((eq_ref b) Xy) (fun (x3:b)=> ((x2 (f Xx)) (g x3)))) as proof of (((x2 (f Xx)) (g Xy))->((cS Xx) Xy))
% Found (((eq_ref b) Xy) (fun (x3:b)=> ((x2 (f Xx)) (g x3)))) as proof of (((x2 (f Xx)) (g Xy))->((cS Xx) Xy))
% Found eq_ref000:=(eq_ref00 (cS Xx)):(((cS Xx) Xy)->((cS Xx) Xy))
% Found (eq_ref00 (cS Xx)) as proof of (((cS Xx) Xy)->((x2 (f Xx)) (g Xy)))
% Found ((eq_ref0 Xy) (cS Xx)) as proof of (((cS Xx) Xy)->((x2 (f Xx)) (g Xy)))
% Found (((eq_ref b) Xy) (cS Xx)) as proof of (((cS Xx) Xy)->((x2 (f Xx)) (g Xy)))
% Found (((eq_ref b) Xy) (cS Xx)) as proof of (((cS Xx) Xy)->((x2 (f Xx)) (g Xy)))
% Found ((conj00 (((eq_ref b) Xy) (cS Xx))) (((eq_ref b) Xy) (fun (x3:b)=> ((x2 (f Xx)) (g x3))))) as proof of ((iff ((cS Xx) Xy)) ((x2 (f Xx)) (g Xy)))
% Found (((conj0 (((x2 (f Xx)) (g Xy))->((cS Xx) Xy))) (((eq_ref b) Xy) (cS Xx))) (((eq_ref b) Xy) (fun (x3:b)=> ((x2 (f Xx)) (g x3))))) as proof of ((iff ((cS Xx) Xy)) ((x2 (f Xx)) (g Xy)))
% Found ((((conj (((cS Xx) Xy)->((x2 (f Xx)) (g Xy)))) (((x2 (f Xx)) (g Xy))->((cS Xx) Xy))) (((eq_ref b) Xy) (cS Xx))) (((eq_ref b) Xy) (fun (x3:b)=> ((x2 (f Xx)) (g x3))))) as proof of ((iff ((cS Xx) Xy)) ((x2 (f Xx)) (g Xy)))
% Found iff_refl0:=(iff_refl ((x2 (f Xx)) (g Xy))):((iff ((x2 (f Xx)) (g Xy))) ((x2 (f Xx)) (g Xy)))
% Found (iff_refl ((x2 (f Xx)) (g Xy))) as proof of ((iff ((x2 (f Xx)) (g Xy))) ((cS Xx) Xy))
% Found (iff_refl ((x2 (f Xx)) (g Xy))) as proof of ((iff ((x2 (f Xx)) (g Xy))) ((cS Xx) Xy))
% Found (iff_refl ((x2 (f Xx)) (g Xy))) as proof of ((iff ((x2 (f Xx)) (g Xy))) ((cS Xx) Xy))
% Found (iff_sym00 (iff_refl ((x2 (f Xx)) (g Xy)))) as proof of ((iff ((cS Xx) Xy)) ((x2 (f Xx)) (g Xy)))
% Found ((iff_sym0 ((cS Xx) Xy)) (iff_refl ((x2 (f Xx)) (g Xy)))) as proof of ((iff ((cS Xx) Xy)) ((x2 (f Xx)) (g Xy)))
% Found (((iff_sym ((x2 (f Xx)) (g Xy))) ((cS Xx) Xy)) (iff_refl ((x2 (f Xx)) (g Xy)))) as proof of ((iff ((cS Xx) Xy)) ((x2 (f Xx)) (g Xy)))
% Found x3:(P2 (f0 x2))
% Instantiate: f1:=f0:((a->(b->Prop))->Prop)
% Found (fun (x3:(P2 (f0 x2)))=> x3) as proof of (P2 (f1 x2))
% Found (fun (P2:(Prop->Prop)) (x3:(P2 (f0 x2)))=> x3) as proof of ((P2 (f0 x2))->(P2 (f1 x2)))
% Found (fun (x2:(a->(b->Prop))) (P2:(Prop->Prop)) (x3:(P2 (f0 x2)))=> x3) as proof of (((eq Prop) (f0 x2)) (f1 x2))
% Found (fun (x2:(a->(b->Prop))) (P2:(Prop->Prop)) (x3:(P2 (f0 x2)))=> x3) as proof of (forall (x:(a->(b->Prop))), (((eq Prop) (f0 x)) (f1 x)))
% Found x3:(P2 (f0 x2))
% Instantiate: f1:=f0:((a->(b->Prop))->Prop)
% Found (fun (x3:(P2 (f0 x2)))=> x3) as proof of (P2 (f1 x2))
% Found (fun (P2:(Prop->Prop)) (x3:(P2 (f0 x2)))=> x3) as proof of ((P2 (f0 x2))->(P2 (f1 x2)))
% Found (fun (x2:(a->(b->Prop))) (P2:(Prop->Prop)) (x3:(P2 (f0 x2)))=> x3) as proof of (((eq Prop) (f0 x2)) (f1 x2))
% Found (fun (x2:(a->(b->Prop))) (P2:(Prop->Prop)) (x3:(P2 (f0 x2)))=> x3) as proof of (forall (x:(a->(b->Prop))), (((eq Prop) (f0 x)) (f1 x)))
% Found eq_ref00:=(eq_ref0 (f0 x2)):(((eq Prop) (f0 x2)) (f0 x2))
% Found (eq_ref0 (f0 x2)) as proof of (((eq Prop) (f0 x2)) (f1 x2))
% Found ((eq_ref Prop) (f0 x2)) as proof of (((eq Prop) (f0 x2)) (f1 x2))
% Found ((eq_ref Prop) (f0 x2)) as proof of (((eq Prop) (f0 x2)) (f1 x2))
% Found (fun (x2:(a->(b->Prop)))=> ((eq_ref Prop) (f0 x2))) as proof of (((eq Prop) (f0 x2)) (f1 x2))
% Found (fun (x2:(a->(b->Prop)))=> ((eq_ref Prop) (f0 x2))) as proof of (forall (x:(a->(b->Prop))), (((eq Prop) (f0 x)) (f1 x)))
% Found eq_ref00:=(eq_ref0 (f0 x2)):(((eq Prop) (f0 x2)) (f0 x2))
% Found (eq_ref0 (f0 x2)) as proof of (((eq Prop) (f0 x2)) (f1 x2))
% Found ((eq_ref Prop) (f0 x2)) as proof of (((eq Prop) (f0 x2)) (f1 x2))
% Found ((eq_ref Prop) (f0 x2)) as proof of (((eq Prop) (f0 x2)) (f1 x2))
% Found (fun (x2:(a->(b->Prop)))=> ((eq_ref Prop) (f0 x2))) as proof of (((eq Prop) (f0 x2)) (f1 x2))
% Found (fun (x2:(a->(b->Prop)))=> ((eq_ref Prop) (f0 x2))) as proof of (forall (x:(a->(b->Prop))), (((eq Prop) (f0 x)) (f1 x)))
% Found iff_refl0:=(iff_refl ((x0 (f Xx)) (g Xy))):((iff ((x0 (f Xx)) (g Xy))) ((x0 (f Xx)) (g Xy)))
% Found (iff_refl ((x0 (f Xx)) (g Xy))) as proof of ((iff ((x0 (f Xx)) (g Xy))) ((cS Xx) Xy))
% Found (iff_refl ((x0 (f Xx)) (g Xy))) as proof of ((iff ((x0 (f Xx)) (g Xy))) ((cS Xx) Xy))
% Found (iff_refl ((x0 (f Xx)) (g Xy))) as proof of ((iff ((x0 (f Xx)) (g Xy))) ((cS Xx) Xy))
% Found (iff_sym00 (iff_refl ((x0 (f Xx)) (g Xy)))) as proof of ((iff ((cS Xx) Xy)) ((x0 (f Xx)) (g Xy)))
% Found ((iff_sym0 ((cS Xx) Xy)) (iff_refl ((x0 (f Xx)) (g Xy)))) as proof of ((iff ((cS Xx) Xy)) ((x0 (f Xx)) (g Xy)))
% Found (((iff_sym ((x0 (f Xx)) (g Xy))) ((cS Xx) Xy)) (iff_refl ((x0 (f Xx)) (g Xy)))) as proof of ((iff ((cS Xx) Xy)) ((x0 (f Xx)) (g Xy)))
% Found eq_ref000:=(eq_ref00 (fun (x3:b)=> ((x2 (f Xx)) (g x3)))):(((x2 (f Xx)) (g Xy))->((x2 (f Xx)) (g Xy)))
% Found (eq_ref00 (fun (x3:b)=> ((x2 (f Xx)) (g x3)))) as proof of (((x2 (f Xx)) (g Xy))->((cS Xx) Xy))
% Found ((eq_ref0 Xy) (fun (x3:b)=> ((x2 (f Xx)) (g x3)))) as proof of (((x2 (f Xx)) (g Xy))->((cS Xx) Xy))
% Found (((eq_ref b) Xy) (fun (x3:b)=> ((x2 (f Xx)) (g x3)))) as proof of (((x2 (f Xx)) (g Xy))->((cS Xx) Xy))
% Found (((eq_ref b) Xy) (fun (x3:b)=> ((x2 (f Xx)) (g x3)))) as proof of (((x2 (f Xx)) (g Xy))->((cS Xx) Xy))
% Found (((eq_ref b) Xy) (fun (x3:b)=> ((x2 (f Xx)) (g x3)))) as proof of (((x2 (f Xx)) (g Xy))->((cS Xx) Xy))
% Found eq_ref000:=(eq_ref00 (cS Xx)):(((cS Xx) Xy)->((cS Xx) Xy))
% Found (eq_ref00 (cS Xx)) as proof of (((cS Xx) Xy)->((x2 (f Xx)) (g Xy)))
% Found ((eq_ref0 Xy) (cS Xx)) as proof of (((cS Xx) Xy)->((x2 (f Xx)) (g Xy)))
% Found (((eq_ref b) Xy) (cS Xx)) as proof of (((cS Xx) Xy)->((x2 (f Xx)) (g Xy)))
% Found (((eq_ref b) Xy) (cS Xx)) as proof of (((cS Xx) Xy)->((x2 (f Xx)) (g Xy)))
% Found ((conj00 (((eq_ref b) Xy) (cS Xx))) (((eq_ref b) Xy) (fun (x3:b)=> ((x2 (f Xx)) (g x3))))) as proof of ((iff ((cS Xx) Xy)) ((x2 (f Xx)) (g Xy)))
% Found (((conj0 (((x2 (f Xx)) (g Xy))->((cS Xx) Xy))) (((eq_ref b) Xy) (cS Xx))) (((eq_ref b) Xy) (fun (x3:b)=> ((x2 (f Xx)) (g x3))))) as proof of ((iff ((cS Xx) Xy)) ((x2 (f Xx)) (g Xy)))
% Found ((((conj (((cS Xx) Xy)->((x2 (f Xx)) (g Xy)))) (((x2 (f Xx)) (g Xy))->((cS Xx) Xy))) (((eq_ref b) Xy) (cS Xx))) (((eq_ref b) Xy) (fun (x3:b)=> ((x2 (f Xx)) (g x3))))) as proof of ((iff ((cS Xx) Xy)) ((x2 (f Xx)) (g Xy)))
% Found iff_refl0:=(iff_refl ((x0 (f Xx)) (g Xy))):((iff ((x0 (f Xx)) (g Xy))) ((x0 (f Xx)) (g Xy)))
% Found (iff_refl ((x0 (f Xx)) (g Xy))) as proof of ((iff ((x0 (f Xx)) (g Xy))) ((cS Xx) Xy))
% Found (iff_refl ((x0 (f Xx)) (g Xy))) as proof of ((iff ((x0 (f Xx)) (g Xy))) ((cS Xx) Xy))
% Found (iff_refl ((x0 (f Xx)) (g Xy))) as proof of ((iff ((x0 (f Xx)) (g Xy))) ((cS Xx) Xy))
% Found (iff_sym00 (iff_refl ((x0 (f Xx)) (g Xy)))) as proof of ((iff ((cS Xx) Xy)) ((x0 (f Xx)) (g Xy)))
% Found ((iff_sym0 ((cS Xx) Xy)) (iff_refl ((x0 (f Xx)) (g Xy)))) as proof of ((iff ((cS Xx) Xy)) ((x0 (f Xx)) (g Xy)))
% Found (((iff_sym ((x0 (f Xx)) (g Xy))) ((cS Xx) Xy)) (iff_refl ((x0 (f Xx)) (g Xy)))) as proof of ((iff ((cS Xx) Xy)) ((x0 (f Xx)) (g Xy)))
% Found (fun (x2:(forall (Xx0:b) (Xy0:b), ((((eq b) (g Xx0)) (g Xy0))->(((eq b) Xx0) Xy0))))=> (((iff_sym ((x0 (f Xx)) (g Xy))) ((cS Xx) Xy)) (iff_refl ((x0 (f Xx)) (g Xy))))) as proof of ((iff ((cS Xx) Xy)) ((x0 (f Xx)) (g Xy)))
% Found (fun (x1:(forall (Xx0:a) (Xy0:a), ((((eq a) (f Xx0)) (f Xy0))->(((eq a) Xx0) Xy0)))) (x2:(forall (Xx0:b) (Xy0:b), ((((eq b) (g Xx0)) (g Xy0))->(((eq b) Xx0) Xy0))))=> (((iff_sym ((x0 (f Xx)) (g Xy))) ((cS Xx) Xy)) (iff_refl ((x0 (f Xx)) (g Xy))))) as proof of ((forall (Xx0:b) (Xy0:b), ((((eq b) (g Xx0)) (g Xy0))->(((eq b) Xx0) Xy0)))->((iff ((cS Xx) Xy)) ((x0 (f Xx)) (g Xy))))
% Found (fun (x1:(forall (Xx0:a) (Xy0:a), ((((eq a) (f Xx0)) (f Xy0))->(((eq a) Xx0) Xy0)))) (x2:(forall (Xx0:b) (Xy0:b), ((((eq b) (g Xx0)) (g Xy0))->(((eq b) Xx0) Xy0))))=> (((iff_sym ((x0 (f Xx)) (g Xy))) ((cS Xx) Xy)) (iff_refl ((x0 (f Xx)) (g Xy))))) as proof of ((forall (Xx0:a) (Xy0:a), ((((eq a) (f Xx0)) (f Xy0))->(((eq a) Xx0) Xy0)))->((forall (Xx0:b) (Xy0:b), ((((eq b) (g Xx0)) (g Xy0))->(((eq b) Xx0) Xy0)))->((iff ((cS Xx) Xy)) ((x0 (f Xx)) (g Xy)))))
% Found (and_rect00 (fun (x1:(forall (Xx0:a) (Xy0:a), ((((eq a) (f Xx0)) (f Xy0))->(((eq a) Xx0) Xy0)))) (x2:(forall (Xx0:b) (Xy0:b), ((((eq b) (g Xx0)) (g Xy0))->(((eq b) Xx0) Xy0))))=> (((iff_sym ((x0 (f Xx)) (g Xy))) ((cS Xx) Xy)) (iff_refl ((x0 (f Xx)) (g Xy)))))) as proof of ((iff ((cS Xx) Xy)) ((x0 (f Xx)) (g Xy)))
% Found ((and_rect0 ((iff ((cS Xx) Xy)) ((x0 (f Xx)) (g Xy)))) (fun (x1:(forall (Xx0:a) (Xy0:a), ((((eq a) (f Xx0)) (f Xy0))->(((eq a) Xx0) Xy0)))) (x2:(forall (Xx0:b) (Xy0:b), ((((eq b) (g Xx0)) (g Xy0))->(((eq b) Xx0) Xy0))))=> (((iff_sym ((x0 (f Xx)) (g Xy))) ((cS Xx) Xy)) (iff_refl ((x0 (f Xx)) (g Xy)))))) as proof of ((iff ((cS Xx) Xy)) ((x0 (f Xx)) (g Xy)))
% Found (((fun (P0:Type) (x1:((forall (Xx:a) (Xy:a), ((((eq a) (f Xx)) (f Xy))->(((eq a) Xx) Xy)))->((forall (Xx:b) (Xy:b), ((((eq b) (g Xx)) (g Xy))->(((eq b) Xx) Xy)))->P0)))=> (((((and_rect (forall (Xx:a) (Xy:a), ((((eq a) (f Xx)) (f Xy))->(((eq a) Xx) Xy)))) (forall (Xx:b) (Xy:b), ((((eq b) (g Xx)) (g Xy))->(((eq b) Xx) Xy)))) P0) x1) x)) ((iff ((cS Xx) Xy)) ((x0 (f Xx)) (g Xy)))) (fun (x1:(forall (Xx0:a) (Xy0:a), ((((eq a) (f Xx0)) (f Xy0))->(((eq a) Xx0) Xy0)))) (x2:(forall (Xx0:b) (Xy0:b), ((((eq b) (g Xx0)) (g Xy0))->(((eq b) Xx0) Xy0))))=> (((iff_sym ((x0 (f Xx)) (g Xy))) ((cS Xx) Xy)) (iff_refl ((x0 (f Xx)) (g Xy)))))) as proof of ((iff ((cS Xx) Xy)) ((x0 (f Xx)) (g Xy)))
% Found eq_ref000:=(eq_ref00 (fun (x1:b)=> ((x0 (f Xx)) (g x1)))):(((x0 (f Xx)) (g Xy))->((x0 (f Xx)) (g Xy)))
% Found (eq_ref00 (fun (x1:b)=> ((x0 (f Xx)) (g x1)))) as proof of (((x0 (f Xx)) (g Xy))->((cS Xx) Xy))
% Found ((eq_ref0 Xy) (fun (x1:b)=> ((x0 (f Xx)) (g x1)))) as proof of (((x0 (f Xx)) (g Xy))->((cS Xx) Xy))
% Found (((eq_ref b) Xy) (fun (x1:b)=> ((x0 (f Xx)) (g x1)))) as proof of (((x0 (f Xx)) (g Xy))->((cS Xx) Xy))
% Found (((eq_ref b) Xy) (fun (x1:b)=> ((x0 (f Xx)) (g x1)))) as proof of (((x0 (f Xx)) (g Xy))->((cS Xx) Xy))
% Found (((eq_ref b) Xy) (fun (x1:b)=> ((x0 (f Xx)) (g x1)))) as proof of (((x0 (f Xx)) (g Xy))->((cS Xx) Xy))
% Found eq_ref000:=(eq_ref00 (cS Xx)):(((cS Xx) Xy)->((cS Xx) Xy))
% Found (eq_ref00 (cS Xx)) as proof of (((cS Xx) Xy)->((x0 (f Xx)) (g Xy)))
% Found ((eq_ref0 Xy) (cS Xx)) as proof of (((cS Xx) Xy)->((x0 (f Xx)) (g Xy)))
% Found (((eq_ref b) Xy) (cS Xx)) as proof of (((cS Xx) Xy)->((x0 (f Xx)) (g Xy)))
% Found (((eq_ref b) Xy) (cS Xx)) as proof of (((cS Xx) Xy)->((x0 (f Xx)) (g Xy)))
% Found ((conj00 (((eq_ref b) Xy) (cS Xx))) (((eq_ref b) Xy) (fun (x1:b)=> ((x0 (f Xx)) (g x1))))) as proof of ((and (((cS Xx) Xy)->((x0 (f Xx)) (g Xy)))) (((x0 (f Xx)) (g Xy))->((cS Xx) Xy)))
% Found (((conj0 (((x0 (f Xx)) (g Xy))->((cS Xx) Xy))) (((eq_ref b) Xy) (cS Xx))) (((eq_ref b) Xy) (fun (x1:b)=> ((x0 (f Xx)) (g x1))))) as proof of ((and (((cS Xx) Xy)->((x0 (f Xx)) (g Xy)))) (((x0 (f Xx)) (g Xy))->((cS Xx) Xy)))
% Found ((((conj (((cS Xx) Xy)->((x0 (f Xx)) (g Xy)))) (((x0 (f Xx)) (g Xy))->((cS Xx) Xy))) (((eq_ref b) Xy) (cS Xx))) (((eq_ref b) Xy) (fun (x1:b)=> ((x0 (f Xx)) (g x1))))) as proof of ((and (((cS Xx) Xy)->((x0 (f Xx)) (g Xy)))) (((x0 (f Xx)) (g Xy))->((cS Xx) Xy)))
% Found ((((conj (((cS Xx) Xy)->((x0 (f Xx)) (g Xy)))) (((x0 (f Xx)) (g Xy))->((cS Xx) Xy))) (((eq_ref b) Xy) (cS Xx))) (((eq_ref b) Xy) (fun (x1:b)=> ((x0 (f Xx)) (g x1))))) as proof of ((and (((cS Xx) Xy)->((x0 (f Xx)) (g Xy)))) (((x0 (f Xx)) (g Xy))->((cS Xx) Xy)))
% Found eq_ref000:=(eq_ref00 (fun (x3:b)=> ((x2 (f Xx)) (g x3)))):(((x2 (f Xx)) (g Xy))->((x2 (f Xx)) (g Xy)))
% Found (eq_ref00 (fun (x3:b)=> ((x2 (f Xx)) (g x3)))) as proof of (((x2 (f Xx)) (g Xy))->((cS Xx) Xy))
% Found ((eq_ref0 Xy) (fun (x3:b)=> ((x2 (f Xx)) (g x3)))) as proof of (((x2 (f Xx)) (g Xy))->((cS Xx) Xy))
% Found (((eq_ref b) Xy) (fun (x3:b)=> ((x2 (f Xx)) (g x3)))) as proof of (((x2 (f Xx)) (g Xy))->((cS Xx) Xy))
% Found (((eq_ref b) Xy) (fun (x3:b)=> ((x2 (f Xx)) (g x3)))) as proof of (((x2 (f Xx)) (g Xy))->((cS Xx) Xy))
% Found (((eq_ref b) Xy) (fun (x3:b)=> ((x2 (f Xx)) (g x3)))) as proof of (((x2 (f Xx)) (g Xy))->((cS Xx) Xy))
% Found eq_ref000:=(eq_ref00 (cS Xx)):(((cS Xx) Xy)->((cS Xx) Xy))
% Found (eq_ref00 (cS Xx)) as proof of (((cS Xx) Xy)->((x2 (f Xx)) (g Xy)))
% Found ((eq_ref0 Xy) (cS Xx)) as proof of (((cS Xx) Xy)->((x2 (f Xx)) (g Xy)))
% Found (((eq_ref b) Xy) (cS Xx)) as proof of (((cS Xx) Xy)->((x2 (f Xx)) (g Xy)))
% Found (((eq_ref b) Xy) (cS Xx)) as proof of (((cS Xx) Xy)->((x2 (f Xx)) (g Xy)))
% Found ((conj00 (((eq_ref b) Xy) (cS Xx))) (((eq_ref b) Xy) (fun (x3:b)=> ((x2 (f Xx)) (g x3))))) as proof of ((iff ((cS Xx) Xy)) ((x2 (f Xx)) (g Xy)))
% Found (((conj0 (((x2 (f Xx)) (g Xy))->((cS Xx) Xy))) (((eq_ref b) Xy) (cS Xx))) (((eq_ref b) Xy) (fun (x3:b)=> ((x2 (f Xx)) (g x3))))) as proof of ((iff ((cS Xx) Xy)) ((x2 (f Xx)) (g Xy)))
% Found ((((conj (((cS Xx) Xy)->((x2 (f Xx)) (g Xy)))) (((x2 (f Xx)) (g Xy))->((cS Xx) Xy))) (((eq_ref b) Xy) (cS Xx))) (((eq_ref b) Xy) (fun (x3:b)=> ((x2 (f Xx)) (g x3))))) as proof of ((iff ((cS Xx) Xy)) ((x2 (f Xx)) (g Xy)))
% Found eq_ref00:=(eq_ref0 (f0 x2)):(((eq Prop) (f0 x2)) (f0 x2))
% Found (eq_ref0 (f0 x2)) as proof of (((eq Prop) (f0 x2)) (b0 x2))
% Found ((eq_ref Prop) (f0 x2)) as proof of (((eq Prop) (f0 x2)) (b0 x2))
% Found (fun (x2:(a->(b->Prop)))=> ((eq_ref Prop) (f0 x2))) as proof of (((eq Prop) (f0 x2)) (b0 x2))
% Found (fun (x2:(a->(b->Prop)))=> ((eq_ref Prop) (f0 x2))) as proof of (forall (x:(a->(b->Prop))), (((eq Prop) (f0 x)) (b0 x)))
% Found eq_ref00:=(eq_ref0 (f0 x2)):(((eq Prop) (f0 x2)) (f0 x2))
% Found (eq_ref0 (f0 x2)) as proof of (((eq Prop) (f0 x2)) (b0 x2))
% Found ((eq_ref Prop) (f0 x2)) as proof of (((eq Prop) (f0 x2)) (b0 x2))
% Found (fun (x2:(a->(b->Prop)))=> ((eq_ref Prop) (f0 x2))) as proof of (((eq Prop) (f0 x2)) (b0 x2))
% Found (fun (x2:(a->(b->Prop)))=> ((eq_ref Prop) (f0 x2))) as proof of (forall (x:(a->(b->Prop))), (((eq Prop) (f0 x)) (b0 x)))
% Found x3:(P2 (f0 x2))
% Instantiate: f1:=f0:((a->(b->Prop))->Prop)
% Found (fun (x3:(P2 (f0 x2)))=> x3) as proof of (P2 (f1 x2))
% Found (fun (P2:(Prop->Prop)) (x3:(P2 (f0 x2)))=> x3) as proof of ((P2 (f0 x2))->(P2 (f1 x2)))
% Found (fun (x2:(a->(b->Prop))) (P2:(Prop->Prop)) (x3:(P2 (f0 x2)))=> x3) as proof of (((eq Prop) (f0 x2)) (f1 x2))
% Found (fun (x2:(a->(b->Prop))) (P2:(Prop->Prop)) (x3:(P2 (f0 x2)))=> x3) as proof of (forall (x:(a->(b->Prop))), (((eq Prop) (f0 x)) (f1 x)))
% Found x3:(P2 (f0 x2))
% Instantiate: f1:=f0:((a->(b->Prop))->Prop)
% Found (fun (x3:(P2 (f0 x2)))=> x3) as proof of (P2 (f1 x2))
% Found (fun (P2:(Prop->Prop)) (x3:(P2 (f0 x2)))=> x3) as proof of ((P2 (f0 x2))->(P2 (f1 x2)))
% Found (fun (x2:(a->(b->Prop))) (P2:(Prop->Prop)) (x3:(P2 (f0 x2)))=> x3) as proof of (((eq Prop) (f0 x2)) (f1 x2))
% Found (fun (x2:(a->(b->Prop))) (P2:(Prop->Prop)) (x3:(P2 (f0 x2)))=> x3) as proof of (forall (x:(a->(b->Prop))), (((eq Prop) (f0 x)) (f1 x)))
% Found eq_ref00:=(eq_ref0 (f0 x2)):(((eq Prop) (f0 x2)) (f0 x2))
% Found (eq_ref0 (f0 x2)) as proof of (((eq Prop) (f0 x2)) (b0 x2))
% Found ((eq_ref Prop) (f0 x2)) as proof of (((eq Prop) (f0 x2)) (b0 x2))
% Found (fun (x2:(a->(b->Prop)))=> ((eq_ref Prop) (f0 x2))) as proof of (((eq Prop) (f0 x2)) (b0 x2))
% Found (fun (x2:(a->(b->Prop)))=> ((eq_ref Prop) (f0 x2))) as proof of (forall (x:(a->(b->Prop))), (((eq Prop) (f0 x)) (b0 x)))
% Found eq_ref000:=(eq_ref00 (fun (x3:b)=> ((x0 (f Xx)) (g x3)))):(((x0 (f Xx)) (g Xy))->((x0 (f Xx)) (g Xy)))
% Found (eq_ref00 (fun (x3:b)=> ((x0 (f Xx)) (g x3)))) as proof of (((x0 (f Xx)) (g Xy))->((cS Xx) Xy))
% Found ((eq_ref0 Xy) (fun (x3:b)=> ((x0 (f Xx)) (g x3)))) as proof of (((x0 (f Xx)) (g Xy))->((cS Xx) Xy))
% Found (((eq_ref b) Xy) (fun (x3:b)=> ((x0 (f Xx)) (g x3)))) as proof of (((x0 (f Xx)) (g Xy))->((cS Xx) Xy))
% Found (((eq_ref b) Xy) (fun (x3:b)=> ((x0 (f Xx)) (g x3)))) as proof of (((x0 (f Xx)) (g Xy))->((cS Xx) Xy))
% Found (((eq_ref b) Xy) (fun (x3:b)=> ((x0 (f Xx)) (g x3)))) as proof of (((x0 (f Xx)) (g Xy))->((cS Xx) Xy))
% Found eq_ref000:=(eq_ref00 (cS Xx)):(((cS Xx) Xy)->((cS Xx) Xy))
% Found (eq_ref00 (cS Xx)) as proof of (((cS Xx) Xy)->((x0 (f Xx)) (g Xy)))
% Found ((eq_ref0 Xy) (cS Xx)) as proof of (((cS Xx) Xy)->((x0 (f Xx)) (g Xy)))
% Found (((eq_ref b) Xy) (cS Xx)) as proof of (((cS Xx) Xy)->((x0 (f Xx)) (g Xy)))
% Found (((eq_ref b) Xy) (cS Xx)) as proof of (((cS Xx) Xy)->((x0 (f Xx)) (g Xy)))
% Found ((conj00 (((eq_ref b) Xy) (cS Xx))) (((eq_ref b) Xy) (fun (x3:b)=> ((x0 (f Xx)) (g x3))))) as proof of ((iff ((cS Xx) Xy)) ((x0 (f Xx)) (g Xy)))
% Found (((conj0 (((x0 (f Xx)) (g Xy))->((cS Xx) Xy))) (((eq_ref b) Xy) (cS Xx))) (((eq_ref b) Xy) (fun (x3:b)=> ((x0 (f Xx)) (g x3))))) as proof of ((iff ((cS Xx) Xy)) ((x0 (f Xx)) (g Xy)))
% Found ((((conj (((cS Xx) Xy)->((x0 (f Xx)) (g Xy)))) (((x0 (f Xx)) (g Xy))->((cS Xx) Xy))) (((eq_ref b) Xy) (cS Xx))) (((eq_ref b) Xy) (fun (x3:b)=> ((x0 (f Xx)) (g x3))))) as proof of ((iff ((cS Xx) Xy)) ((x0 (f Xx)) (g Xy)))
% Found eq_ref00:=(eq_ref0 (f0 x2)):(((eq Prop) (f0 x2)) (f0 x2))
% Found (eq_ref0 (f0 x2)) as proof of (((eq Prop) (f0 x2)) (b0 x2))
% Found ((eq_ref Prop) (f0 x2)) as proof of (((eq Prop) (f0 x2)) (b0 x2))
% Found ((eq_ref Prop) (f0 x2)) as proof of (((eq Prop) (f0 x2)) (b0 x2))
% Found (fun (x2:(a->(b->Prop)))=> ((eq_ref Prop) (f0 x2))) as proof of (((eq Prop) (f0 x2)) (b0 x2))
% Found (fun (x2:(a->(b->Prop)))=> ((eq_ref Prop) (f0 x2))) as proof of (forall (x:(a->(b->Prop))), (((eq Prop) (f0 x)) (b0 x)))
% Found eq_ref00:=(eq_ref0 (f0 x2)):(((eq Prop) (f0 x2)) (f0 x2))
% Found (eq_ref0 (f0 x2)) as proof of (((eq Prop) (f0 x2)) (b0 x2))
% Found ((eq_ref Prop) (f0 x2)) as proof of (((eq Prop) (f0 x2)) (b0 x2))
% Found ((eq_ref Prop) (f0 x2)) as proof of (((eq Prop) (f0 x2)) (b0 x2))
% Found (fun (x2:(a->(b->Prop)))=> ((eq_ref Prop) (f0 x2))) as proof of (((eq Prop) (f0 x2)) (b0 x2))
% Found (fun (x2:(a->(b->Prop)))=> ((eq_ref Prop) (f0 x2))) as proof of (forall (x:(a->(b->Prop))), (((eq Prop) (f0 x)) (b0 x)))
% Found eq_ref00:=(eq_ref0 (f0 x2)):(((eq Prop) (f0 x2)) (f0 x2))
% Found (eq_ref0 (f0 x2)) as proof of (((eq Prop) (f0 x2)) (b0 x2))
% Found ((eq_ref Prop) (f0 x2)) as proof of (((eq Prop) (f0 x2)) (b0 x2))
% Found ((eq_ref Prop) (f0 x2)) as proof of (((eq Prop) (f0 x2)) (b0 x2))
% Found (fun (x2:(a->(b->Prop)))=> ((eq_ref Prop) (f0 x2))) as proof of (((eq Prop) (f0 x2)) (b0 x2))
% Found (fun (x2:(a->(b->Prop)))=> ((eq_ref Prop) (f0 x2))) as proof of (forall (x:(a->(b->Prop))), (((eq Prop) (f0 x)) (b0 x)))
% Found eq_ref00:=(eq_ref0 (f0 x2)):(((eq Prop) (f0 x2)) (f0 x2))
% Found (eq_ref0 (f0 x2)) as proof of (((eq Prop) (f0 x2)) (b0 x2))
% Found ((eq_ref Prop) (f0 x2)) as proof of (((eq Prop) (f0 x2)) (b0 x2))
% Found ((eq_ref Prop) (f0 x2)) as proof of (((eq Prop) (f0 x2)) (b0 x2))
% Found (fun (x2:(a->(b->Prop)))=> ((eq_ref Prop) (f0 x2))) as proof of (((eq Prop) (f0 x2)) (b0 x2))
% Found (fun (x2:(a->(b->Prop)))=> ((eq_ref Prop) (f0 x2))) as proof of (forall (x:(a->(b->Prop))), (((eq Prop) (f0 x)) (b0 x)))
% Found eq_ref00:=(eq_ref0 (f0 x2)):(((eq Prop) (f0 x2)) (f0 x2))
% Found (eq_ref0 (f0 x2)) as proof of (((eq Prop) (f0 x2)) (b0 x2))
% Found ((eq_ref Prop) (f0 x2)) as proof of (((eq Prop) (f0 x2)) (b0 x2))
% Found (fun (x2:(a->(b->Prop)))=> ((eq_ref Prop) (f0 x2))) as proof of (((eq Prop) (f0 x2)) (b0 x2))
% Found (fun (x2:(a->(b->Prop)))=> ((eq_ref Prop) (f0 x2))) as proof of (forall (x:(a->(b->Prop))), (((eq Prop) (f0 x)) (b0 x)))
% Found x3:(P2 (f0 x2))
% Instantiate: b0:=f0:((a->(b->Prop))->Prop)
% Found (fun (x3:(P2 (f0 x2)))=> x3) as proof of (P2 (b0 x2))
% Found (fun (P2:(Prop->Prop)) (x3:(P2 (f0 x2)))=> x3) as proof of ((P2 (f0 x2))->(P2 (b0 x2)))
% Found (fun (x2:(a->(b->Prop))) (P2:(Prop->Prop)) (x3:(P2 (f0 x2)))=> x3) as proof of (((eq Prop) (f0 x2)) (b0 x2))
% Found (fun (x2:(a->(b->Prop))) (P2:(Prop->Prop)) (x3:(P2 (f0 x2)))=> x3) as proof of (forall (x:(a->(b->Prop))), (((eq Prop) (f0 x)) (b0 x)))
% Found x3:(P2 (f0 x2))
% Instantiate: b0:=f0:((a->(b->Prop))->Prop)
% Found (fun (x3:(P2 (f0 x2)))=> x3) as proof of (P2 (b0 x2))
% Found (fun (P2:(Prop->Prop)) (x3:(P2 (f0 x2)))=> x3) as proof of ((P2 (f0 x2))->(P2 (b0 x2)))
% Found (fun (x2:(a->(b->Prop))) (P2:(Prop->Prop)) (x3:(P2 (f0 x2)))=> x3) as proof of (((eq Prop) (f0 x2)) (b0 x2))
% Found (fun (x2:(a->(b->Prop))) (P2:(Prop->Prop)) (x3:(P2 (f0 x2)))=> x3) as proof of (forall (x:(a->(b->Prop))), (((eq Prop) (f0 x)) (b0 x)))
% Found eq_ref00:=(eq_ref0 (f0 x2)):(((eq Prop) (f0 x2)) (f0 x2))
% Found (eq_ref0 (f0 x2)) as proof of (((eq Prop) (f0 x2)) (b0 x2))
% Found ((eq_ref Prop) (f0 x2)) as proof of (((eq Prop) (f0 x2)) (b0 x2))
% Found ((eq_ref Prop) (f0 x2)) as proof of (((eq Prop) (f0 x2)) (b0 x2))
% Found (fun (x2:(a->(b->Prop)))=> ((eq_ref Prop) (f0 x2))) as proof of (((eq Prop) (f0 x2)) (b0 x2))
% Found (fun (x2:(a->(b->Prop)))=> ((eq_ref Prop) (f0 x2))) as proof of (forall (x:(a->(b->Prop))), (((eq Prop) (f0 x)) (b0 x)))
% Found eq_ref00:=(eq_ref0 (f0 x2)):(((eq Prop) (f0 x2)) (f0 x2))
% Found (eq_ref0 (f0 x2)) as proof of (((eq Prop) (f0 x2)) (b0 x2))
% Found ((eq_ref Prop) (f0 x2)) as proof of (((eq Prop) (f0 x2)) (b0 x2))
% Found ((eq_ref Prop) (f0 x2)) as proof of (((eq Prop) (f0 x2)) (b0 x2))
% Found (fun (x2:(a->(b->Prop)))=> ((eq_ref Prop) (f0 x2))) as proof of (((eq Prop) (f0 x2)) (b0 x2))
% Found (fun (x2:(a->(b->Prop)))=> ((eq_ref Prop) (f0 x2))) as proof of (forall (x:(a->(b->Prop))), (((eq Prop) (f0 x)) (b0 x)))
% Found x3:(P2 (f0 x2))
% Instantiate: b0:=f0:((a->(b->Prop))->Prop)
% Found (fun (x3:(P2 (f0 x2)))=> x3) as proof of (P2 (b0 x2))
% Found (fun (P2:(Prop->Prop)) (x3:(P2 (f0 x2)))=> x3) as proof of ((P2 (f0 x2))->(P2 (b0 x2)))
% Found (fun (x2:(a->(b->Prop))) (P2:(Prop->Prop)) (x3:(P2 (f0 x2)))=> x3) as proof of (((eq Prop) (f0 x2)) (b0 x2))
% Found (fun (x2:(a->(b->Prop))) (P2:(Prop->Prop)) (x3:(P2 (f0 x2)))=> x3) as proof of (forall (x:(a->(b->Prop))), (((eq Prop) (f0 x)) (b0 x)))
% Found x3:(P2 (f0 x2))
% Instantiate: b0:=f0:((a->(b->Prop))->Prop)
% Found (fun (x3:(P2 (f0 x2)))=> x3) as proof of (P2 (b0 x2))
% Found (fun (P2:(Prop->Prop)) (x3:(P2 (f0 x2)))=> x3) as proof of ((P2 (f0 x2))->(P2 (b0 x2)))
% Found (fun (x2:(a->(b->Prop))) (P2:(Prop->Prop)) (x3:(P2 (f0 x2)))=> x3) as proof of (((eq Prop) (f0 x2)) (b0 x2))
% Found (fun (x2:(a->(b->Prop))) (P2:(Prop->Prop)) (x3:(P2 (f0 x2)))=> x3) as proof of (forall (x:(a->(b->Prop))), (((eq Prop) (f0 x)) (b0 x)))
% Found eq_ref000:=(eq_ref00 (fun (x3:b)=> ((x2 (f Xx)) (g x3)))):(((x2 (f Xx)) (g Xy))->((x2 (f Xx)) (g Xy)))
% Found (eq_ref00 (fun (x3:b)=> ((x2 (f Xx)) (g x3)))) as proof of (((x2 (f Xx)) (g Xy))->((cS Xx) Xy))
% Found ((eq_ref0 Xy) (fun (x3:b)=> ((x2 (f Xx)) (g x3)))) as proof of (((x2 (f Xx)) (g Xy))->((cS Xx) Xy))
% Found (((eq_ref b) Xy) (fun (x3:b)=> ((x2 (f Xx)) (g x3)))) as proof of (((x2 (f Xx)) (g Xy))->((cS Xx) Xy))
% Found (((eq_ref b) Xy) (fun (x3:b)=> ((x2 (f Xx)) (g x3)))) as proof of (((x2 (f Xx)) (g Xy))->((cS Xx) Xy))
% Found (((eq_ref b) Xy) (fun (x3:b)=> ((x2 (f Xx)) (g x3)))) as proof of (((x2 (f Xx)) (g Xy))->((cS Xx) Xy))
% Found eq_ref000:=(eq_ref00 (cS Xx)):(((cS Xx) Xy)->((cS Xx) Xy))
% Found (eq_ref00 (cS Xx)) as proof of (((cS Xx) Xy)->((x2 (f Xx)) (g Xy)))
% Found ((eq_ref0 Xy) (cS Xx)) as proof of (((cS Xx) Xy)->((x2 (f Xx)) (g Xy)))
% Found (((eq_ref b) Xy) (cS Xx)) as proof of (((cS Xx) Xy)->((x2 (f Xx)) (g Xy)))
% Found (((eq_ref b) Xy) (cS Xx)) as proof of (((cS Xx) Xy)->((x2 (f Xx)) (g Xy)))
% Found ((conj00 (((eq_ref b) Xy) (cS Xx))) (((eq_ref b) Xy) (fun (x3:b)=> ((x2 (f Xx)) (g x3))))) as proof of ((and (((cS Xx) Xy)->((x2 (f Xx)) (g Xy)))) (((x2 (f Xx)) (g Xy))->((cS Xx) Xy)))
% Found (((conj0 (((x2 (f Xx)) (g Xy))->((cS Xx) Xy))) (((eq_ref b) Xy) (cS Xx))) (((eq_ref b) Xy) (fun (x3:b)=> ((x2 (f Xx)) (g x3))))) as proof of ((and (((cS Xx) Xy)->((x2 (f Xx)) (g Xy)))) (((x2 (f Xx)) (g Xy))->((cS Xx) Xy)))
% Found ((((conj (((cS Xx) Xy)->((x2 (f Xx)) (g Xy)))) (((x2 (f Xx)) (g Xy))->((cS Xx) Xy))) (((eq_ref b) Xy) (cS Xx))) (((eq_ref b) Xy) (fun (x3:b)=> ((x2 (f Xx)) (g x3))))) as proof of ((and (((cS Xx) Xy)->((x2 (f Xx)) (g Xy)))) (((x2 (f Xx)) (g Xy))->((cS Xx) Xy)))
% Found ((((conj (((cS Xx) Xy)->((x2 (f Xx)) (g Xy)))) (((x2 (f Xx)) (g Xy))->((cS Xx) Xy))) (((eq_ref b) Xy) (cS Xx))) (((eq_ref b) Xy) (fun (x3:b)=> ((x2 (f Xx)) (g x3))))) as proof of ((and (((cS Xx) Xy)->((x2 (f Xx)) (g Xy)))) (((x2 (f Xx)) (g Xy))->((cS Xx) Xy)))
% Found x3:(P2 (f0 x2))
% Instantiate: b0:=f0:((a->(b->Prop))->Prop)
% Found (fun (x3:(P2 (f0 x2)))=> x3) as proof of (P2 (b0 x2))
% Found (fun (P2:(Prop->Prop)) (x3:(P2 (f0 x2)))=> x3) as proof of ((P2 (f0 x2))->(P2 (b0 x2)))
% Found (fun (x2:(a->(b->Prop))) (P2:(Prop->Prop)) (x3:(P2 (f0 x2)))=> x3) as proof of (((eq Prop) (f0 x2)) (b0 x2))
% Found (fun (x2:(a->(b->Prop))) (P2:(Prop->Prop)) (x3:(P2 (f0 x2)))=> x3) as proof of (forall (x:(a->(b->Prop))), (((eq Prop) (f0 x)) (b0 x)))
% Found x3:(P2 (f0 x2))
% Instantiate: b0:=f0:((a->(b->Prop))->Prop)
% Found (fun (x3:(P2 (f0 x2)))=> x3) as proof of (P2 (b0 x2))
% Found (fun (P2:(Prop->Prop)) (x3:(P2 (f0 x2)))=> x3) as proof of ((P2 (f0 x2))->(P2 (b0 x2)))
% Found (fun (x2:(a->(b->Prop))) (P2:(Prop->Prop)) (x3:(P2 (f0 x2)))=> x3) as proof of (((eq Prop) (f0 x2)) (b0 x2))
% Found (fun (x2:(a->(b->Prop))) (P2:(Prop->Prop)) (x3:(P2 (f0 x2)))=> x3) as proof of (forall (x:(a->(b->Prop))), (((eq Prop) (f0 x)) (b0 x)))
% Found eq_ref000:=(eq_ref00 (fun (x3:b)=> ((x2 (f Xx)) (g x3)))):(((x2 (f Xx)) (g Xy))->((x2 (f Xx)) (g Xy)))
% Found (eq_ref00 (fun (x3:b)=> ((x2 (f Xx)) (g x3)))) as proof of (((x2 (f Xx)) (g Xy))->((cS Xx) Xy))
% Found ((eq_ref0 Xy) (fun (x3:b)=> ((x2 (f Xx)) (g x3)))) as proof of (((x2 (f Xx)) (g Xy))->((cS Xx) Xy))
% Found (((eq_ref b) Xy) (fun (x3:b)=> ((x2 (f Xx)) (g x3)))) as proof of (((x2 (f Xx)) (g Xy))->((cS Xx) Xy))
% Found (((eq_ref b) Xy) (fun (x3:b)=> ((x2 (f Xx)) (g x3)))) as proof of (((x2 (f Xx)) (g Xy))->((cS Xx) Xy))
% Found (((eq_ref b) Xy) (fun (x3:b)=> ((x2 (f Xx)) (g x3)))) as proof of (((x2 (f Xx)) (g Xy))->((cS Xx) Xy))
% Found eq_ref000:=(eq_ref00 (cS Xx)):(((cS Xx) Xy)->((cS Xx) Xy))
% Found (eq_ref00 (cS Xx)) as proof of (((cS Xx) Xy)->((x2 (f Xx)) (g Xy)))
% Found ((eq_ref0 Xy) (cS Xx)) as proof of (((cS Xx) Xy)->((x2 (f Xx)) (g Xy)))
% Found (((eq_ref b) Xy) (cS Xx)) as proof of (((cS Xx) Xy)->((x2 (f Xx)) (g Xy)))
% Found (((eq_ref b) Xy) (cS Xx)) as proof of (((cS Xx) Xy)->((x2 (f Xx)) (g Xy)))
% Found ((conj00 (((eq_ref b) Xy) (cS Xx))) (((eq_ref b) Xy) (fun (x3:b)=> ((x2 (f Xx)) (g x3))))) as proof of ((and (((cS Xx) Xy)->((x2 (f Xx)) (g Xy)))) (((x2 (f Xx)) (g Xy))->((cS Xx) Xy)))
% Found (((conj0 (((x2 (f Xx)) (g Xy))->((cS Xx) Xy))) (((eq_ref b) Xy) (cS Xx))) (((eq_ref b) Xy) (fun (x3:b)=> ((x2 (f Xx)) (g x3))))) as proof of ((and (((cS Xx) Xy)->((x2 (f Xx)) (g Xy)))) (((x2 (f Xx)) (g Xy))->((cS Xx) Xy)))
% Found ((((conj (((cS Xx) Xy)->((x2 (f Xx)) (g Xy)))) (((x2 (f Xx)) (g Xy))->((cS Xx) Xy))) (((eq_ref b) Xy) (cS Xx))) (((eq_ref b) Xy) (fun (x3:b)=> ((x2 (f Xx)) (g x3))))) as proof of ((and (((cS Xx) Xy)->((x2 (f Xx)) (g Xy)))) (((x2 (f Xx)) (g Xy))->((cS Xx) Xy)))
% Found ((((conj (((cS Xx) Xy)->((x2 (f Xx)) (g Xy)))) (((x2 (f Xx)) (g Xy))->((cS Xx) Xy))) (((eq_ref b) Xy) (cS Xx))) (((eq_ref b) Xy) (fun (x3:b)=> ((x2 (f Xx)) (g x3))))) as proof of ((and (((cS Xx) Xy)->((x2 (f Xx)) (g Xy)))) (((x2 (f Xx)) (g Xy))->((cS Xx) Xy)))
% Found eq_ref000:=(eq_ref00 (fun (x3:b)=> ((x2 (f Xx)) (g x3)))):(((x2 (f Xx)) (g Xy))->((x2 (f Xx)) (g Xy)))
% Found (eq_ref00 (fun (x3:b)=> ((x2 (f Xx)) (g x3)))) as proof of (((x2 (f Xx)) (g Xy))->((cS Xx) Xy))
% Found ((eq_ref0 Xy) (fun (x3:b)=> ((x2 (f Xx)) (g x3)))) as proof of (((x2 (f Xx)) (g Xy))->((cS Xx) Xy))
% Found (((eq_ref b) Xy) (fun (x3:b)=> ((x2 (f Xx)) (g x3)))) as proof of (((x2 (f Xx)) (g Xy))->((cS Xx) Xy))
% Found (((eq_ref b) Xy) (fun (x3:b)=> ((x2 (f Xx)) (g x3)))) as proof of (((x2 (f Xx)) (g Xy))->((cS Xx) Xy))
% Found (((eq_ref b) Xy) (fun (x3:b)=> ((x2 (f Xx)) (g x3)))) as proof of (((x2 (f Xx)) (g Xy))->((cS Xx) Xy))
% Found eq_ref000:=(eq_ref00 (cS Xx)):(((cS Xx) Xy)->((cS Xx) Xy))
% Found (eq_ref00 (cS Xx)) as proof of (((cS Xx) Xy)->((x2 (f Xx)) (g Xy)))
% Found ((eq_ref0 Xy) (cS Xx)) as proof of (((cS Xx) Xy)->((x2 (f Xx)) (g Xy)))
% Found (((eq_ref b) Xy) (cS Xx)) as proof of (((cS Xx) Xy)->((x2 (f Xx)) (g Xy)))
% Found (((eq_ref b) Xy) (cS Xx)) as proof of (((cS Xx) Xy)->((x2 (f Xx)) (g Xy)))
% Found ((conj00 (((eq_ref b) Xy) (cS Xx))) (((eq_ref b) Xy) (fun (x3:b)=> ((x2 (f Xx)) (g x3))))) as proof of ((and (((cS Xx) Xy)->((x2 (f Xx)) (g Xy)))) (((x2 (f Xx)) (g Xy))->((cS Xx) Xy)))
% Found (((conj0 (((x2 (f Xx)) (g Xy))->((cS Xx) Xy))) (((eq_ref b) Xy) (cS Xx))) (((eq_ref b) Xy) (fun (x3:b)=> ((x2 (f Xx)) (g x3))))) as proof of ((and (((cS Xx) Xy)->((x2 (f Xx)) (g Xy)))) (((x2 (f Xx)) (g Xy))->((cS Xx) Xy)))
% Found ((((conj (((cS Xx) Xy)->((x2 (f Xx)) (g Xy)))) (((x2 (f Xx)) (g Xy))->((cS Xx) Xy))) (((eq_ref b) Xy) (cS Xx))) (((eq_ref b) Xy) (fun (x3:b)=> ((x2 (f Xx)) (g x3))))) as proof of ((and (((cS Xx) Xy)->((x2 (f Xx)) (g Xy)))) (((x2 (f Xx)) (g Xy))->((cS Xx) Xy)))
% Found ((((conj (((cS Xx) Xy)->((x2 (f Xx)) (g Xy)))) (((x2 (f Xx)) (g Xy))->((cS Xx) Xy))) (((eq_ref b) Xy) (cS Xx))) (((eq_ref b) Xy) (fun (x3:b)=> ((x2 (f Xx)) (g x3))))) as proof of ((and (((cS Xx) Xy)->((x2 (f Xx)) (g Xy)))) (((x2 (f Xx)) (g Xy))->((cS Xx) Xy)))
% 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)) (f1 x0))
% Found ((eq_ref Prop) (f0 x0)) as proof of (((eq Prop) (f0 x0)) (f1 x0))
% Found ((eq_ref Prop) (f0 x0)) as proof of (((eq Prop) (f0 x0)) (f1 x0))
% Found (fun (x0:(a->(b->Prop)))=> ((eq_ref Prop) (f0 x0))) as proof of (((eq Prop) (f0 x0)) (f1 x0))
% Found (fun (x0:(a->(b->Prop)))=> ((eq_ref Prop) (f0 x0))) as proof of (forall (x:(a->(b->Prop))), (((eq Prop) (f0 x)) (f1 x)))
% 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)) (f1 x0))
% Found ((eq_ref Prop) (f0 x0)) as proof of (((eq Prop) (f0 x0)) (f1 x0))
% Found ((eq_ref Prop) (f0 x0)) as proof of (((eq Prop) (f0 x0)) (f1 x0))
% Found (fun (x0:(a->(b->Prop)))=> ((eq_ref Prop) (f0 x0))) as proof of (((eq Prop) (f0 x0)) (f1 x0))
% Found (fun (x0:(a->(b->Prop)))=> ((eq_ref Prop) (f0 x0))) as proof of (forall (x:(a->(b->Prop))), (((eq Prop) (f0 x)) (f1 x)))
% Found eq_ref000:=(eq_ref00 (fun (x3:b)=> ((x0 (f Xx)) (g x3)))):(((x0 (f Xx)) (g Xy))->((x0 (f Xx)) (g Xy)))
% Found (eq_ref00 (fun (x3:b)=> ((x0 (f Xx)) (g x3)))) as proof of (((x0 (f Xx)) (g Xy))->((cS Xx) Xy))
% Found ((eq_ref0 Xy) (fun (x3:b)=> ((x0 (f Xx)) (g x3)))) as proof of (((x0 (f Xx)) (g Xy))->((cS Xx) Xy))
% Found (((eq_ref b) Xy) (fun (x3:b)=> ((x0 (f Xx)) (g x3)))) as proof of (((x0 (f Xx)) (g Xy))->((cS Xx) Xy))
% Found (((eq_ref b) Xy) (fun (x3:b)=> ((x0 (f Xx)) (g x3)))) as proof of (((x0 (f Xx)) (g Xy))->((cS Xx) Xy))
% Found (((eq_ref b) Xy) (fun (x3:b)=> ((x0 (f Xx)) (g x3)))) as proof of (((x0 (f Xx)) (g Xy))->((cS Xx) Xy))
% Found eq_ref000:=(eq_ref00 (cS Xx)):(((cS Xx) Xy)->((cS Xx) Xy))
% Found (eq_ref00 (cS Xx)) as proof of (((cS Xx) Xy)->((x0 (f Xx)) (g Xy)))
% Found ((eq_ref0 Xy) (cS Xx)) as proof of (((cS Xx) Xy)->((x0 (f Xx)) (g Xy)))
% Found (((eq_ref b) Xy) (cS Xx)) as proof of (((cS Xx) Xy)->((x0 (f Xx)) (g Xy)))
% Found (((eq_ref b) Xy) (cS Xx)) as proof of (((cS Xx) Xy)->((x0 (f Xx)) (g Xy)))
% Found ((conj00 (((eq_ref b) Xy) (cS Xx))) (((eq_ref b) Xy) (fun (x3:b)=> ((x0 (f Xx)) (g x3))))) as proof of ((and (((cS Xx) Xy)->((x0 (f Xx)) (g Xy)))) (((x0 (f Xx)) (g Xy))->((cS Xx) Xy)))
% Found (((conj0 (((x0 (f Xx)) (g Xy))->((cS Xx) Xy))) (((eq_ref b) Xy) (cS Xx))) (((eq_ref b) Xy) (fun (x3:b)=> ((x0 (f Xx)) (g x3))))) as proof of ((and (((cS Xx) Xy)->((x0 (f Xx)) (g Xy)))) (((x0 (f Xx)) (g Xy))->((cS Xx) Xy)))
% Found ((((conj (((cS Xx) Xy)->((x0 (f Xx)) (g Xy)))) (((x0 (f Xx)) (g Xy))->((cS Xx) Xy))) (((eq_ref b) Xy) (cS Xx))) (((eq_ref b) Xy) (fun (x3:b)=> ((x0 (f Xx)) (g x3))))) as proof of ((and (((cS Xx) Xy)->((x0 (f Xx)) (g Xy)))) (((x0 (f Xx)) (g Xy))->((cS Xx) Xy)))
% Found ((((conj (((cS Xx) Xy)->((x0 (f Xx)) (g Xy)))) (((x0 (f Xx)) (g Xy))->((cS Xx) Xy))) (((eq_ref b) Xy) (cS Xx))) (((eq_ref b) Xy) (fun (x3:b)=> ((x0 (f Xx)) (g x3))))) as proof of ((and (((cS Xx) Xy)->((x0 (f Xx)) (g Xy)))) (((x0 (f Xx)) (g Xy))->((cS Xx) Xy)))
% Found eq_ref000:=(eq_ref00 (fun (x3:b)=> ((x0 (f Xx)) (g x3)))):(((x0 (f Xx)) (g Xy))->((x0 (f Xx)) (g Xy)))
% Found (eq_ref00 (fun (x3:b)=> ((x0 (f Xx)) (g x3)))) as proof of (((x0 (f Xx)) (g Xy))->((cS Xx) Xy))
% Found ((eq_ref0 Xy) (fun (x3:b)=> ((x0 (f Xx)) (g x3)))) as proof of (((x0 (f Xx)) (g Xy))->((cS Xx) Xy))
% Found (((eq_ref b) Xy) (fun (x3:b)=> ((x0 (f Xx)) (g x3)))) as proof of (((x0 (f Xx)) (g Xy))->((cS Xx) Xy))
% Found (((eq_ref b) Xy) (fun (x3:b)=> ((x0 (f Xx)) (g x3)))) as proof of (((x0 (f Xx)) (g Xy))->((cS Xx) Xy))
% Found (((eq_ref b) Xy) (fun (x3:b)=> ((x0 (f Xx)) (g x3)))) as proof of (((x0 (f Xx)) (g Xy))->((cS Xx) Xy))
% Found eq_ref000:=(eq_ref00 (cS Xx)):(((cS Xx) Xy)->((cS Xx) Xy))
% Found (eq_ref00 (cS Xx)) as proof of (((cS Xx) Xy)->((x0 (f Xx)) (g Xy)))
% Found ((eq_ref0 Xy) (cS Xx)) as proof of (((cS Xx) Xy)->((x0 (f Xx)) (g Xy)))
% Found (((eq_ref b) Xy) (cS Xx)) as proof of (((cS Xx) Xy)->((x0 (f Xx)) (g Xy)))
% Found (((eq_ref b) Xy) (cS Xx)) as proof of (((cS Xx) Xy)->((x0 (f Xx)) (g Xy)))
% Found ((conj00 (((eq_ref b) Xy) (cS Xx))) (((eq_ref b) Xy) (fun (x3:b)=> ((x0 (f Xx)) (g x3))))) as proof of ((and (((cS Xx) Xy)->((x0 (f Xx)) (g Xy)))) (((x0 (f Xx)) (g Xy))->((cS Xx) Xy)))
% Found (((conj0 (((x0 (f Xx)) (g Xy))->((cS Xx) Xy))) (((eq_ref b) Xy) (cS Xx))) (((eq_ref b) Xy) (fun (x3:b)=> ((x0 (f Xx)) (g x3))))) as proof of ((and (((cS Xx) Xy)->((x0 (f Xx)) (g Xy)))) (((x0 (f Xx)) (g Xy))->((cS Xx) Xy)))
% Found ((((conj (((cS Xx) Xy)->((x0 (f Xx)) (g Xy)))) (((x0 (f Xx)) (g Xy))->((cS Xx) Xy))) (((eq_ref b) Xy) (cS Xx))) (((eq_ref b) Xy) (fun (x3:b)=> ((x0 (f Xx)) (g x3))))) as proof of ((and (((cS Xx) Xy)->((x0 (f Xx)) (g Xy)))) (((x0 (f Xx)) (g Xy))->((cS Xx) Xy)))
% Found (fun (x2:(forall (Xx0:b) (Xy0:b), ((((eq b) (g Xx0)) (g Xy0))->(((eq b) Xx0) Xy0))))=> ((((conj (((cS Xx) Xy)->((x0 (f Xx)) (g Xy)))) (((x0 (f Xx)) (g Xy))->((cS Xx) Xy))) (((eq_ref b) Xy) (cS Xx))) (((eq_ref b) Xy) (fun (x3:b)=> ((x0 (f Xx)) (g x3)))))) as proof of ((and (((cS Xx) Xy)->((x0 (f Xx)) (g Xy)))) (((x0 (f Xx)) (g Xy))->((cS Xx) Xy)))
% Found (fun (x1:(forall (Xx0:a) (Xy0:a), ((((eq a) (f Xx0)) (f Xy0))->(((eq a) Xx0) Xy0)))) (x2:(forall (Xx0:b) (Xy0:b), ((((eq b) (g Xx0)) (g Xy0))->(((eq b) Xx0) Xy0))))=> ((((conj (((cS Xx) Xy)->((x0 (f Xx)) (g Xy)))) (((x0 (f Xx)) (g Xy))->((cS Xx) Xy))) (((eq_ref b) Xy) (cS Xx))) (((eq_ref b) Xy) (fun (x3:b)=> ((x0 (f Xx)) (g x3)))))) as proof of ((forall (Xx0:b) (Xy0:b), ((((eq b) (g Xx0)) (g Xy0))->(((eq b) Xx0) Xy0)))->((and (((cS Xx) Xy)->((x0 (f Xx)) (g Xy)))) (((x0 (f Xx)) (g Xy))->((cS Xx) Xy))))
% Found (fun (x1:(forall (Xx0:a) (Xy0:a), ((((eq a) (f Xx0)) (f Xy0))->(((eq a) Xx0) Xy0)))) (x2:(forall (Xx0:b) (Xy0:b), ((((eq b) (g Xx0)) (g Xy0))->(((eq b) Xx0) Xy0))))=> ((((conj (((cS Xx) Xy)->((x0 (f Xx)) (g Xy)))) (((x0 (f Xx)) (g Xy))->((cS Xx) Xy))) (((eq_ref b) Xy) (cS Xx))) (((eq_ref b) Xy) (fun (x3:b)=> ((x0 (f Xx)) (g x3)))))) as proof of ((forall (Xx0:a) (Xy0:a), ((((eq a) (f Xx0)) (f Xy0))->(((eq a) Xx0) Xy0)))->((forall (Xx0:b) (Xy0:b), ((((eq b) (g Xx0)) (g Xy0))->(((eq b) Xx0) Xy0)))->((and (((cS Xx) Xy)->((x0 (f Xx)) (g Xy)))) (((x0 (f Xx)) (g Xy))->((cS Xx) Xy)))))
% Found (and_rect00 (fun (x1:(forall (Xx0:a) (Xy0:a), ((((eq a) (f Xx0)) (f Xy0))->(((eq a) Xx0) Xy0)))) (x2:(forall (Xx0:b) (Xy0:b), ((((eq b) (g Xx0)) (g Xy0))->(((eq b) Xx0) Xy0))))=> ((((conj (((cS Xx) Xy)->((x0 (f Xx)) (g Xy)))) (((x0 (f Xx)) (g Xy))->((cS Xx) Xy))) (((eq_ref b) Xy) (cS Xx))) (((eq_ref b) Xy) (fun (x3:b)=> ((x0 (f Xx)) (g x3))))))) as proof of ((and (((cS Xx) Xy)->((x0 (f Xx)) (g Xy)))) (((x0 (f Xx)) (g Xy))->((cS Xx) Xy)))
% Found ((and_rect0 ((and (((cS Xx) Xy)->((x0 (f Xx)) (g Xy)))) (((x0 (f Xx)) (g Xy))->((cS Xx) Xy)))) (fun (x1:(forall (Xx0:a) (Xy0:a), ((((eq a) (f Xx0)) (f Xy0))->(((eq a) Xx0) Xy0)))) (x2:(forall (Xx0:b) (Xy0:b), ((((eq b) (g Xx0)) (g Xy0))->(((eq b) Xx0) Xy0))))=> ((((conj (((cS Xx) Xy)->((x0 (f Xx)) (g Xy)))) (((x0 (f Xx)) (g Xy))->((cS Xx) Xy))) (((eq_ref b) Xy) (cS Xx))) (((eq_ref b) Xy) (fun (x3:b)=> ((x0 (f Xx)) (g x3))))))) as proof of ((and (((cS Xx) Xy)->((x0 (f Xx)) (g Xy)))) (((x0 (f Xx)) (g Xy))->((cS Xx) Xy)))
% Found (((fun (P0:Type) (x1:((forall (Xx:a) (Xy:a), ((((eq a) (f Xx)) (f Xy))->(((eq a) Xx) Xy)))->((forall (Xx:b) (Xy:b), ((((eq b) (g Xx)) (g Xy))->(((eq b) Xx) Xy)))->P0)))=> (((((and_rect (forall (Xx:a) (Xy:a), ((((eq a) (f Xx)) (f Xy))->(((eq a) Xx) Xy)))) (forall (Xx:b) (Xy:b), ((((eq b) (g Xx)) (g Xy))->(((eq b) Xx) Xy)))) P0) x1) x)) ((and (((cS Xx) Xy)->((x0 (f Xx)) (g Xy)))) (((x0 (f Xx)) (g Xy))->((cS Xx) Xy)))) (fun (x1:(forall (Xx0:a) (Xy0:a), ((((eq a) (f Xx0)) (f Xy0))->(((eq a) Xx0) Xy0)))) (x2:(forall (Xx0:b) (Xy0:b), ((((eq b) (g Xx0)) (g Xy0))->(((eq b) Xx0) Xy0))))=> ((((conj (((cS Xx) Xy)->((x0 (f Xx)) (g Xy)))) (((x0 (f Xx)) (g Xy))->((cS Xx) Xy))) (((eq_ref b) Xy) (cS Xx))) (((eq_ref b) Xy) (fun (x3:b)=> ((x0 (f Xx)) (g x3))))))) as proof of ((and (((cS Xx) Xy)->((x0 (f Xx)) (g Xy)))) (((x0 (f Xx)) (g Xy))->((cS Xx) Xy)))
% Found (((fun (P0:Type) (x1:((forall (Xx:a) (Xy:a), ((((eq a) (f Xx)) (f Xy))->(((eq a) Xx) Xy)))->((forall (Xx:b) (Xy:b), ((((eq b) (g Xx)) (g Xy))->(((eq b) Xx) Xy)))->P0)))=> (((((and_rect (forall (Xx:a) (Xy:a), ((((eq a) (f Xx)) (f Xy))->(((eq a) Xx) Xy)))) (forall (Xx:b) (Xy:b), ((((eq b) (g Xx)) (g Xy))->(((eq b) Xx) Xy)))) P0) x1) x)) ((and (((cS Xx) Xy)->((x0 (f Xx)) (g Xy)))) (((x0 (f Xx)) (g Xy))->((cS Xx) Xy)))) (fun (x1:(forall (Xx0:a) (Xy0:a), ((((eq a) (f Xx0)) (f Xy0))->(((eq a) Xx0) Xy0)))) (x2:(forall (Xx0:b) (Xy0:b), ((((eq b) (g Xx0)) (g Xy0))->(((eq b) Xx0) Xy0))))=> ((((conj (((cS Xx) Xy)->((x0 (f Xx)) (g Xy)))) (((x0 (f Xx)) (g Xy))->((cS Xx) Xy))) (((eq_ref b) Xy) (cS Xx))) (((eq_ref b) Xy) (fun (x3:b)=> ((x0 (f Xx)) (g x3))))))) as proof of ((and (((cS Xx) Xy)->((x0 (f Xx)) (g Xy)))) (((x0 (f Xx)) (g Xy))->((cS Xx) Xy)))
% Found x1:(P2 (f0 x0))
% Instantiate: f1:=f0:((a->(b->Prop))->Prop)
% Found (fun (x1:(P2 (f0 x0)))=> x1) as proof of (P2 (f1 x0))
% Found (fun (P2:(Prop->Prop)) (x1:(P2 (f0 x0)))=> x1) as proof of ((P2 (f0 x0))->(P2 (f1 x0)))
% Found (fun (x0:(a->(b->Prop))) (P2:(Prop->Prop)) (x1:(P2 (f0 x0)))=> x1) as proof of (((eq Prop) (f0 x0)) (f1 x0))
% Found (fun (x0:(a->(b->Prop))) (P2:(Prop->Prop)) (x1:(P2 (f0 x0)))=> x1) as proof of (forall (x:(a->(b->Prop))), (((eq Prop) (f0 x)) (f1 x)))
% Found x1:(P2 (f0 x0))
% Instantiate: f1:=f0:((a->(b->Prop))->Prop)
% Found (fun (x1:(P2 (f0 x0)))=> x1) as proof of (P2 (f1 x0))
% Found (fun (P2:(Prop->Prop)) (x1:(P2 (f0 x0)))=> x1) as proof of ((P2 (f0 x0))->(P2 (f1 x0)))
% Found (fun (x0:(a->(b->Prop))) (P2:(Prop->Prop)) (x1:(P2 (f0 x0)))=> x1) as proof of (((eq Prop) (f0 x0)) (f1 x0))
% Found (fun (x0:(a->(b->Prop))) (P2:(Prop->Prop)) (x1:(P2 (f0 x0)))=> x1) as proof of (forall (x:(a->(b->Prop))), (((eq Prop) (f0 x)) (f1 x)))
% Found eta_expansion_dep000:=(eta_expansion_dep00 a0):(((eq ((a->(b->Prop))->Prop)) a0) (fun (x:(a->(b->Prop)))=> (a0 x)))
% Found (eta_expansion_dep00 a0) as proof of (((eq ((a->(b->Prop))->Prop)) a0) b00)
% Found ((eta_expansion_dep0 (fun (x1:(a->(b->Prop)))=> Prop)) a0) as proof of (((eq ((a->(b->Prop))->Prop)) a0) b00)
% Found (((eta_expansion_dep (a->(b->Prop))) (fun (x1:(a->(b->Prop)))=> Prop)) a0) as proof of (((eq ((a->(b->Prop))->Prop)) a0) b00)
% Found (((eta_expansion_dep (a->(b->Prop))) (fun (x1:(a->(b->Prop)))=> Prop)) a0) as proof of (((eq ((a->(b->Prop))->Prop)) a0) b00)
% Found (((eta_expansion_dep (a->(b->Prop))) (fun (x1:(a->(b->Prop)))=> Prop)) a0) as proof of (((eq ((a->(b->Prop))->Prop)) a0) b00)
% Found eta_expansion_dep000:=(eta_expansion_dep00 a0):(((eq ((a->(b->Prop))->Prop)) a0) (fun (x:(a->(b->Prop)))=> (a0 x)))
% Found (eta_expansion_dep00 a0) as proof of (((eq ((a->(b->Prop))->Prop)) a0) b00)
% Found ((eta_expansion_dep0 (fun (x1:(a->(b->Prop)))=> Prop)) a0) as proof of (((eq ((a->(b->Prop))->Prop)) a0) b00)
% Found (((eta_expansion_dep (a->(b->Prop))) (fun (x1:(a->(b->Prop)))=> Prop)) a0) as proof of (((eq ((a->(b->Prop))->Prop)) a0) b00)
% Found (((eta_expansion_dep (a->(b->Prop))) (fun (x1:(a->(b->Prop)))=> Prop)) a0) as proof of (((eq ((a->(b->Prop))->Prop)) a0) b00)
% Found (((eta_expansion_dep (a->(b->Prop))) (fun (x1:(a->(b->Prop)))=> Prop)) a0) as proof of (((eq ((a->(b->Prop))->Prop)) a0) b00)
% Found eq_ref00:=(eq_ref0 a0):(((eq ((a->(b->Prop))->Prop)) a0) a0)
% Found (eq_ref0 a0) as proof of (((eq ((a->(b->Prop))->Prop)) a0) b00)
% Found ((eq_ref ((a->(b->Prop))->Prop)) a0) as proof of (((eq ((a->(b->Prop))->Prop)) a0) b00)
% Found ((eq_ref ((a->(b->Prop))->Prop)) a0) as proof of (((eq ((a->(b->Prop))->Prop)) a0) b00)
% Found ((eq_ref ((a->(b->Prop))->Prop)) a0) as proof of (((eq ((a->(b->Prop))->Prop)) a0) b00)
% 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)) (a0 x0))
% Found ((eq_ref Prop) (f0 x0)) as proof of (((eq Prop) (f0 x0)) (a0 x0))
% Found ((eq_ref Prop) (f0 x0)) as proof of (((eq Prop) (f0 x0)) (a0 x0))
% Found (fun (x0:(a->(b->Prop)))=> ((eq_ref Prop) (f0 x0))) as proof of (((eq Prop) (f0 x0)) (a0 x0))
% Found (fun (x0:(a->(b->Prop)))=> ((eq_ref Prop) (f0 x0))) as proof of (forall (x:(a->(b->Prop))), (((eq Prop) (f0 x)) (a0 x)))
% 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)) (a0 x0))
% Found ((eq_ref Prop) (f0 x0)) as proof of (((eq Prop) (f0 x0)) (a0 x0))
% Found ((eq_ref Prop) (f0 x0)) as proof of (((eq Prop) (f0 x0)) (a0 x0))
% Found (fun (x0:(a->(b->Prop)))=> ((eq_ref Prop) (f0 x0))) as proof of (((eq Prop) (f0 x0)) (a0 x0))
% Found (fun (x0:(a->(b->Prop)))=> ((eq_ref Prop) (f0 x0))) as proof of (forall (x:(a->(b->Prop))), (((eq Prop) (f0 x)) (a0 x)))
% Found eq_ref00:=(eq_ref0 b00):(((eq ((a->(b->Prop))->Prop)) b00) b00)
% Found (eq_ref0 b00) as proof of (((eq ((a->(b->Prop))->Prop)) b00) b0)
% Found ((eq_ref ((a->(b->Prop))->Prop)) b00) as proof of (((eq ((a->(b->Prop))->Prop)) b00) b0)
% Found ((eq_ref ((a->(b->Prop))->Prop)) b00) as proof of (((eq ((a->(b->Prop))->Prop)) b00) b0)
% Found ((eq_ref ((a->(b->Prop))->Prop)) b00) as proof of (((eq ((a->(b->Prop))->Prop)) b00) b0)
% Found eq_ref00:=(eq_ref0 a0):(((eq ((a->(b->Prop))->Prop)) a0) a0)
% Found (eq_ref0 a0) as proof of (((eq ((a->(b->Prop))->Prop)) a0) b00)
% Found ((eq_ref ((a->(b->Prop))->Prop)) a0) as proof of (((eq ((a->(b->Prop))->Prop)) a0) b00)
% Found ((eq_ref ((a->(b->Prop))->Prop)) a0) as proof of (((eq ((a->(b->Prop))->Prop)) a0) b00)
% Found ((eq_ref ((a->(b->Prop))->Prop)) a0) as proof of (((eq ((a->(b->Prop))->Prop)) a0) b00)
% 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)) (a0 x0))
% Found ((eq_ref Prop) (f0 x0)) as proof of (((eq Prop) (f0 x0)) (a0 x0))
% Found ((eq_ref Prop) (f0 x0)) as proof of (((eq Prop) (f0 x0)) (a0 x0))
% Found (fun (x0:(a->(b->Prop)))=> ((eq_ref Prop) (f0 x0))) as proof of (((eq Prop) (f0 x0)) (a0 x0))
% Found (fun (x0:(a->(b->Prop)))=> ((eq_ref Prop) (f0 x0))) as proof of (forall (x:(a->(b->Prop))), (((eq Prop) (f0 x)) (a0 x)))
% 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)) (a0 x0))
% Found ((eq_ref Prop) (f0 x0)) as proof of (((eq Prop) (f0 x0)) (a0 x0))
% Found ((eq_ref Prop) (f0 x0)) as proof of (((eq Prop) (f0 x0)) (a0 x0))
% Found (fun (x0:(a->(b->Prop)))=> ((eq_ref Prop) (f0 x0))) as proof of (((eq Prop) (f0 x0)) (a0 x0))
% Found (fun (x0:(a->(b->Prop)))=> ((eq_ref Prop) (f0 x0))) as proof of (forall (x:(a->(b->Prop))), (((eq Prop) (f0 x)) (a0 x)))
% 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)) (a0 x0))
% Found ((eq_ref Prop) (f0 x0)) as proof of (((eq Prop) (f0 x0)) (a0 x0))
% Found ((eq_ref Prop) (f0 x0)) as proof of (((eq Prop) (f0 x0)) (a0 x0))
% Found (fun (x0:(a->(b->Prop)))=> ((eq_ref Prop) (f0 x0))) as proof of (((eq Prop) (f0 x0)) (a0 x0))
% Found (fun (x0:(a->(b->Prop)))=> ((eq_ref Prop) (f0 x0))) as proof of (forall (x:(a->(b->Prop))), (((eq Prop) (f0 x)) (a0 x)))
% 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)) (a0 x0))
% Found ((eq_ref Prop) (f0 x0)) as proof of (((eq Prop) (f0 x0)) (a0 x0))
% Found ((eq_ref Prop) (f0 x0)) as proof of (((eq Prop) (f0 x0)) (a0 x0))
% Found (fun (x0:(a->(b->Prop)))=> ((eq_ref Prop) (f0 x0))) as proof of (((eq Prop) (f0 x0)) (a0 x0))
% Found (fun (x0:(a->(b->Prop)))=> ((eq_ref Prop) (f0 x0))) as proof of (forall (x:(a->(b->Prop))), (((eq Prop) (f0 x)) (a0 x)))
% Found eq_ref00:=(eq_ref0 b00):(((eq ((a->(b->Prop))->Prop)) b00) b00)
% Found (eq_ref0 b00) as proof of (((eq ((a->(b->Prop))->Prop)) b00) b0)
% Found ((eq_ref ((a->(b->Prop))->Prop)) b00) as proof of (((eq ((a->(b->Prop))->Prop)) b00) b0)
% Found ((eq_ref ((a->(b->Prop))->Prop)) b00) as proof of (((eq ((a->(b->Prop))->Prop)) b00) b0)
% Found ((eq_ref ((a->(b->Prop))->Prop)) b00) as proof of (((eq ((a->(b->Prop))->Prop)) b00) b0)
% Found eq_ref00:=(eq_ref0 a0):(((eq ((a->(b->Prop))->Prop)) a0) a0)
% Found (eq_ref0 a0) as proof of (((eq ((a->(b->Prop))->Prop)) a0) b00)
% Found ((eq_ref ((a->(b->Prop))->Prop)) a0) as proof of (((eq ((a->(b->Prop))->Prop)) a0) b00)
% Found ((eq_ref ((a->(b->Prop))->Prop)) a0) as proof of (((eq ((a->(b->Prop))->Prop)) a0) b00)
% Found ((eq_ref ((a->(b->Prop))->Prop)) a0) as proof of (((eq ((a->(b->Prop))->Prop)) a0) b00)
% Found eq_ref00:=(eq_ref0 b0):(((eq ((a->(b->Prop))->Prop)) b0) b0)
% Found (eq_ref0 b0) as proof of (((eq ((a->(b->Prop))->Prop)) b0) f0)
% Found ((eq_ref ((a->(b->Prop))->Prop)) b0) as proof of (((eq ((a->(b->Prop))->Prop)) b0) f0)
% Found ((eq_ref ((a->(b->Prop))->Prop)) b0) as proof of (((eq ((a->(b->Prop))->Prop)) b0) f0)
% Found ((eq_ref ((a->(b->Prop))->Prop)) b0) as proof of (((eq ((a->(b->Prop))->Prop)) b0) f0)
% Found eta_expansion_dep000:=(eta_expansion_dep00 a0):(((eq ((a->(b->Prop))->Prop)) a0) (fun (x:(a->(b->Prop)))=> (a0 x)))
% Found (eta_expansion_dep00 a0) as proof of (((eq ((a->(b->Prop))->Prop)) a0) b0)
% Found ((eta_expansion_dep0 (fun (x1:(a->(b->Prop)))=> Prop)) a0) as proof of (((eq ((a->(b->Prop))->Prop)) a0) b0)
% Found (((eta_expansion_dep (a->(b->Prop))) (fun (x1:(a->(b->Prop)))=> Prop)) a0) as proof of (((eq ((a->(b->Prop))->Prop)) a0) b0)
% Found (((eta_expansion_dep (a->(b->Prop))) (fun (x1:(a->(b->Prop)))=> Prop)) a0) as proof of (((eq ((a->(b->Prop))->Prop)) a0) b0)
% Found (((eta_expansion_dep (a->(b->Prop))) (fun (x1:(a->(b->Prop)))=> Prop)) a0) as proof of (((eq ((a->(b->Prop))->Prop)) a0) b0)
% Found eq_ref00:=(eq_ref0 a0):(((eq ((a->(b->Prop))->Prop)) a0) a0)
% Found (eq_ref0 a0) as proof of (((eq ((a->(b->Prop))->Prop)) a0) b0)
% Found ((eq_ref ((a->(b->Prop))->Prop)) a0) as proof of (((eq ((a->(b->Prop))->Prop)) a0) b0)
% Found ((eq_ref ((a->(b->Prop))->Prop)) a0) as proof of (((eq ((a->(b->Prop))->Prop)) a0) b0)
% Found ((eq_ref ((a->(b->Prop))->Prop)) a0) as proof of (((eq ((a->(b->Prop))->Prop)) a0) b0)
% Found eta_expansion000:=(eta_expansion00 b0):(((eq ((a->(b->Prop))->Prop)) b0) (fun (x:(a->(b->Prop)))=> (b0 x)))
% Found (eta_expansion00 b0) as proof of (((eq ((a->(b->Prop))->Prop)) b0) f0)
% Found ((eta_expansion0 Prop) b0) as proof of (((eq ((a->(b->Prop))->Prop)) b0) f0)
% Found (((eta_expansion (a->(b->Prop))) Prop) b0) as proof of (((eq ((a->(b->Prop))->Prop)) b0) f0)
% Found (((eta_expansion (a->(b->Prop))) Prop) b0) as proof of (((eq ((a->(b->Prop))->Prop)) b0) f0)
% Found (((eta_expansion (a->(b->Prop))) Prop) b0) as proof of (((eq ((a->(b->Prop))->Prop)) b0) f0)
% Found eta_expansion_dep000:=(eta_expansion_dep00 a0):(((eq ((a->(b->Prop))->Prop)) a0) (fun (x:(a->(b->Prop)))=> (a0 x)))
% Found (eta_expansion_dep00 a0) as proof of (((eq ((a->(b->Prop))->Prop)) a0) b0)
% Found ((eta_expansion_dep0 (fun (x1:(a->(b->Prop)))=> Prop)) a0) as proof of (((eq ((a->(b->Prop))->Prop)) a0) b0)
% Found (((eta_expansion_dep (a->(b->Prop))) (fun (x1:(a->(b->Prop)))=> Prop)) a0) as proof of (((eq ((a->(b->Prop))->Prop)) a0) b0)
% Found (((eta_expansion_dep (a->(b->Prop))) (fun (x1:(a->(b->Prop)))=> Prop)) a0) as proof of (((eq ((a->(b->Prop))->Prop)) a0) b0)
% Found (((eta_expansion_dep (a->(b->Prop))) (fun (x1:(a->(b->Prop)))=> Prop)) a0) as proof of (((eq ((a->(b->Prop))->Prop)) a0) b0)
% Found eq_ref00:=(eq_ref0 (f0 x2)):(((eq Prop) (f0 x2)) (f0 x2))
% Found (eq_ref0 (f0 x2)) as proof of (((eq Prop) (f0 x2)) (f1 x2))
% Found ((eq_ref Prop) (f0 x2)) as proof of (((eq Prop) (f0 x2)) (f1 x2))
% Found ((eq_ref Prop) (f0 x2)) as proof of (((eq Prop) (f0 x2)) (f1 x2))
% Found (fun (x2:(a->(b->Prop)))=> ((eq_ref Prop) (f0 x2))) as proof of (((eq Prop) (f0 x2)) (f1 x2))
% Found (fun (x2:(a->(b->Prop)))=> ((eq_ref Prop) (f0 x2))) as proof of (forall (x:(a->(b->Prop))), (((eq Prop) (f0 x)) (f1 x)))
% Found eq_ref00:=(eq_ref0 (f0 x2)):(((eq Prop) (f0 x2)) (f0 x2))
% Found (eq_ref0 (f0 x2)) as proof of (((eq Prop) (f0 x2)) (f1 x2))
% Found ((eq_ref Prop) (f0 x2)) as proof of (((eq Prop) (f0 x2)) (f1 x2))
% Found ((eq_ref Prop) (f0 x2)) as proof of (((eq Prop) (f0 x2)) (f1 x2))
% Found (fun (x2:(a->(b->Prop)))=> ((eq_ref Prop) (f0 x2))) as proof of (((eq Prop) (f0 x2)) (f1 x2))
% Found (fun (x2:(a->(b->Prop)))=> ((eq_ref Prop) (f0 x2))) as proof of (forall (x:(a->(b->Prop))), (((eq Prop) (f0 x)) (f1 x)))
% Found eta_expansion_dep000:=(eta_expansion_dep00 a0):(((eq ((a->(b->Prop))->Prop)) a0) (fun (x:(a->(b->Prop)))=> (a0 x)))
% Found (eta_expansion_dep00 a0) as proof of (((eq ((a->(b->Prop))->Prop)) a0) b0)
% Found ((eta_expansion_dep0 (fun (x1:(a->(b->Prop)))=> Prop)) a0) as proof of (((eq ((a->(b->Prop))->Prop)) a0) b0)
% Found (((eta_expansion_dep (a->(b->Prop))) (fun (x1:(a->(b->Prop)))=> Prop)) a0) as proof of (((eq ((a->(b->Prop))->Prop)) a0) b0)
% Found (((eta_expansion_dep (a->(b->Prop))) (fun (x1:(a->(b->Prop)))=> Prop)) a0) as proof of (((eq ((a->(b->Prop))->Prop)) a0) b0)
% Found (((eta_expansion_dep (a->(b->Prop))) (fun (x1:(a->(b->Prop)))=> Prop)) a0) as proof of (((eq ((a->(b->Prop))->Prop)) a0) b0)
% Found eta_expansion_dep000:=(eta_expansion_dep00 b0):(((eq ((a->(b->Prop))->Prop)) b0) (fun (x:(a->(b->Prop)))=> (b0 x)))
% Found (eta_expansion_dep00 b0) as proof of (((eq ((a->(b->Prop))->Prop)) b0) f0)
% Found ((eta_expansion_dep0 (fun (x1:(a->(b->Prop)))=> Prop)) b0) as proof of (((eq ((a->(b->Prop))->Prop)) b0) f0)
% Found (((eta_expansion_dep (a->(b->Prop))) (fun (x1:(a->(b->Prop)))=> Prop)) b0) as proof of (((eq ((a->(b->Prop))->Prop)) b0) f0)
% Found (((eta_expansion_dep (a->(b->Prop))) (fun (x1:(a->(b->Prop)))=> Prop)) b0) as proof of (((eq ((a->(b->Prop))->Prop)) b0) f0)
% Found (((eta_expansion_dep (a->(b->Prop))) (fun (x1:(a->(b->Prop)))=> Prop)) b0) as proof of (((eq ((a->(b->Prop))->Prop)) b0) f0)
% Found eq_ref00:=(eq_ref0 b0):(((eq ((a->(b->Prop))->Prop)) b0) b0)
% Found (eq_ref0 b0) as proof of (((eq ((a->(b->Prop))->Prop)) b0) f0)
% Found ((eq_ref ((a->(b->Prop))->Prop)) b0) as proof of (((eq ((a->(b->Prop))->Prop)) b0) f0)
% Found ((eq_ref ((a->(b->Prop))->Prop)) b0) as proof of (((eq ((a->(b->Prop))->Prop)) b0) f0)
% Found ((eq_ref ((a->(b->Prop))->Prop)) b0) as proof of (((eq ((a->(b->Prop))->Prop)) b0) f0)
% Found eta_expansion_dep000:=(eta_expansion_dep00 b0):(((eq ((a->(b->Prop))->Prop)) b0) (fun (x:(a->(b->Prop)))=> (b0 x)))
% Found (eta_expansion_dep00 b0) as proof of (((eq ((a->(b->Prop))->Prop)) b0) f0)
% Found ((eta_expansion_dep0 (fun (x1:(a->(b->Prop)))=> Prop)) b0) as proof of (((eq ((a->(b->Prop))->Prop)) b0) f0)
% Found (((eta_expansion_dep (a->(b->Prop))) (fun (x1:(a->(b->Prop)))=> Prop)) b0) as proof of (((eq ((a->(b->Prop))->Prop)) b0) f0)
% Found (((eta_expansion_dep (a->(b->Prop))) (fun (x1:(a->(b->Prop)))=> Prop)) b0) as proof of (((eq ((a->(b->Prop))->Prop)) b0) f0)
% Found (((eta_expansion_dep (a->(b->Prop))) (fun (x1:(a->(b->Prop)))=> Prop)) b0) as proof of (((eq ((a->(b->Prop))->Prop)) b0) f0)
% Found eta_expansion_dep000:=(eta_expansion_dep00 a0):(((eq ((a->(b->Prop))->Prop)) a0) (fun (x:(a->(b->Prop)))=> (a0 x)))
% Found (eta_expansion_dep00 a0) as proof of (((eq ((a->(b->Prop))->Prop)) a0) b0)
% Found ((eta_expansion_dep0 (fun (x1:(a->(b->Prop)))=> Prop)) a0) as proof of (((eq ((a->(b->Prop))->Prop)) a0) b0)
% Found (((eta_expansion_dep (a->(b->Prop))) (fun (x1:(a->(b->Prop)))=> Prop)) a0) as proof of (((eq ((a->(b->Prop))->Prop)) a0) b0)
% Found (((eta_expansion_dep (a->(b->Prop))) (fun (x1:(a->(b->Prop)))=> Prop)) a0) as proof of (((eq ((a->(b->Prop))->Prop)) a0) b0)
% Found (((eta_expansion_dep (a->(b->Prop))) (fun (x1:(a->(b->Prop)))=> Prop)) a0) as proof of (((eq ((a->(b->Prop))->Prop)) a0) b0)
% Found eq_ref00:=(eq_ref0 a0):(((eq ((a->(b->Prop))->Prop)) a0) a0)
% Found (eq_ref0 a0) as proof of (((eq ((a->(b->Prop))->Prop)) a0) b0)
% Found ((eq_ref ((a->(b->Prop))->Prop)) a0) as proof of (((eq ((a->(b->Prop))->Prop)) a0) b0)
% Found ((eq_ref ((a->(b->Prop))->Prop)) a0) as proof of (((eq ((a->(b->Prop))->Prop)) a0) b0)
% Found ((eq_ref ((a->(b->Prop))->Prop)) a0) as proof of (((eq ((a->(b->Prop))->Prop)) a0) b0)
% Found eta_expansion_dep000:=(eta_expansion_dep00 a0):(((eq ((a->(b->Prop))->Prop)) a0) (fun (x:(a->(b->Prop)))=> (a0 x)))
% Found (eta_expansion_dep00 a0) as proof of (((eq ((a->(b->Prop))->Prop)) a0) b00)
% Found ((eta_expansion_dep0 (fun (x3:(a->(b->Prop)))=> Prop)) a0) as proof of (((eq ((a->(b->Prop))->Prop)) a0) b00)
% Found (((eta_expansion_dep (a->(b->Prop))) (fun (x3:(a->(b->Prop)))=> Prop)) a0) as proof of (((eq ((a->(b->Prop))->Prop)) a0) b00)
% Found (((eta_expansion_dep (a->(b->Prop))) (fun (x3:(a->(b->Prop)))=> Prop)) a0) as proof of (((eq ((a->(b->Prop))->Prop)) a0) b00)
% Found (((eta_expansion_dep (a->(b->Prop))) (fun (x3:(a->(b->Prop)))=> Prop)) a0) as proof of (((eq ((a->(b->Prop))->Prop)) a0) b00)
% Found eq_ref00:=(eq_ref0 x0):(((eq (a->(b->Prop))) x0) x0)
% Found (eq_ref0 x0) as proof of (((eq (a->(b->Prop))) x0) b00)
% Found ((eq_ref (a->(b->Prop))) x0) as proof of (((eq (a->(b->Prop))) x0) b00)
% Found ((eq_ref (a->(b->Prop))) x0) as proof of (((eq (a->(b->Prop))) x0) b00)
% Found ((eq_ref (a->(b->Prop))) x0) as proof of (((eq (a->(b->Prop))) x0) b00)
% Found eta_expansion_dep000:=(eta_expansion_dep00 a0):(((eq ((a->(b->Prop))->Prop)) a0) (fun (x:(a->(b->Prop)))=> (a0 x)))
% Found (eta_expansion_dep00 a0) as proof of (((eq ((a->(b->Prop))->Prop)) a0) b00)
% Found ((eta_expansion_dep0 (fun (x3:(a->(b->Prop)))=> Prop)) a0) as proof of (((eq ((a->(b->Prop))->Prop)) a0) b00)
% Found (((eta_expansion_dep (a->(b->Prop))) (fun (x3:(a->(b->Prop)))=> Prop)) a0) as proof of (((eq ((a->(b->Prop))->Prop)) a0) b00)
% Found (((eta_expansion_dep (a->(b->Prop))) (fun (x3:(a->(b->Prop)))=> Prop)) a0) as proof of (((eq ((a->(b->Prop))->Prop)) a0) b00)
% Found (((eta_expansion_dep (a->(b->Prop))) (fun (x3:(a->(b->Prop)))=> Prop)) a0) as proof of (((eq ((a->(b->Prop))->Prop)) a0) b00)
% Found eq_ref00:=(eq_ref0 a0):(((eq ((a->(b->Prop))->Prop)) a0) a0)
% Found (eq_ref0 a0) as proof of (((eq ((a->(b->Prop))->Prop)) a0) b00)
% Found ((eq_ref ((a->(b->Prop))->Prop)) a0) as proof of (((eq ((a->(b->Prop))->Prop)) a0) b00)
% Found ((eq_ref ((a->(b->Prop))->Prop)) a0) as proof of (((eq ((a->(b->Prop))->Prop)) a0) b00)
% Found ((eq_ref ((a->(b->Prop))->Prop)) a0) as proof of (((eq ((a->(b->Prop))->Prop)) a0) b00)
% Found eta_expansion_dep000:=(eta_expansion_dep00 x0):(((eq (a->(b->Prop))) x0) (fun (x:a)=> (x0 x)))
% Found (eta_expansion_dep00 x0) as proof of (((eq (a->(b->Prop))) x0) b0)
% Found ((eta_expansion_dep0 (fun (x2:a)=> (b->Prop))) x0) as proof of (((eq (a->(b->Prop))) x0) b0)
% Found (((eta_expansion_dep a) (fun (x2:a)=> (b->Prop))) x0) as proof of (((eq (a->(b->Prop))) x0) b0)
% Found (((eta_expansion_dep a) (fun (x2:a)=> (b->Prop))) x0) as proof of (((eq (a->(b->Prop))) x0) b0)
% Found (((eta_expansion_dep a) (fun (x2:a)=> (b->Prop))) x0) as proof of (((eq (a->(b->Prop))) x0) b0)
% Found eq_ref00:=(eq_ref0 x0):(((eq (a->(b->Prop))) x0) x0)
% Found (eq_ref0 x0) as proof of (((eq (a->(b->Prop))) x0) b0)
% Found ((eq_ref (a->(b->Prop))) x0) as proof of (((eq (a->(b->Prop))) x0) b0)
% Found ((eq_ref (a->(b->Prop))) x0) as proof of (((eq (a->(b->Prop))) x0) b0)
% Found ((eq_ref (a->(b->Prop))) x0) as proof of (((eq (a->(b->Prop))) x0) b0)
% Found x3:(P2 (f0 x2))
% Instantiate: f1:=f0:((a->(b->Prop))->Prop)
% Found (fun (x3:(P2 (f0 x2)))=> x3) as proof of (P2 (f1 x2))
% Found (fun (P2:(Prop->Prop)) (x3:(P2 (f0 x2)))=> x3) as proof of ((P2 (f0 x2))->(P2 (f1 x2)))
% Found (fun (x2:(a->(b->Prop))) (P2:(Prop->Prop)) (x3:(P2 (f0 x2)))=> x3) as proof of (((eq Prop) (f0 x2)) (f1 x2))
% Found (fun (x2:(a->(b->Prop))) (P2:(Prop->Prop)) (x3:(P2 (f0 x2)))=> x3) as proof of (forall (x:(a->(b->Prop))), (((eq Prop) (f0 x)) (f1 x)))
% Found x3:(P2 (f0 x2))
% Instantiate: f1:=f0:((a->(b->Prop))->Prop)
% Found (fun (x3:(P2 (f0 x2)))=> x3) as proof of (P2 (f1 x2))
% Found (fun (P2:(Prop->Prop)) (x3:(P2 (f0 x2)))=> x3) as proof of ((P2 (f0 x2))->(P2 (f1 x2)))
% Found (fun (x2:(a->(b->Prop))) (P2:(Prop->Prop)) (x3:(P2 (f0 x2)))=> x3) as proof of (((eq Prop) (f0 x2)) (f1 x2))
% Found (fun (x2:(a->(b->Prop))) (P2:(Prop->Prop)) (x3:(P2 (f0 x2)))=> x3) as proof of (forall (x:(a->(b->Prop))), (((eq Prop) (f0 x)) (f1 x)))
% Found eq_ref00:=(eq_ref0 a0):(((eq ((a->(b->Prop))->Prop)) a0) a0)
% Found (eq_ref0 a0) as proof of (((eq ((a->(b->Prop))->Prop)) a0) b00)
% Found ((eq_ref ((a->(b->Prop))->Prop)) a0) as proof of (((eq ((a->(b->Prop))->Prop)) a0) b00)
% Found ((eq_ref ((a->(b->Prop))->Prop)) a0) as proof of (((eq ((a->(b->Prop))->Prop)) a0) b00)
% Found ((eq_ref ((a->(b->Prop))->Prop)) a0) as proof of (((eq ((a->(b->Prop))->Prop)) a0) b00)
% Found eq_ref00:=(eq_ref0 (f0 x2)):(((eq Prop) (f0 x2)) (f0 x2))
% Found (eq_ref0 (f0 x2)) as proof of (((eq Prop) (f0 x2)) (a0 x2))
% Found ((eq_ref Prop) (f0 x2)) as proof of (((eq Prop) (f0 x2)) (a0 x2))
% Found ((eq_ref Prop) (f0 x2)) as proof of (((eq Prop) (f0 x2)) (a0 x2))
% Found (fun (x2:(a->(b->Prop)))=> ((eq_ref Prop) (f0 x2))) as proof of (((eq Prop) (f0 x2)) (a0 x2))
% Found (fun (x2:(a->(b->Prop)))=> ((eq_ref Prop) (f0 x2))) as proof of (forall (x:(a->(b->Prop))), (((eq Prop) (f0 x)) (a0 x)))
% Found eq_ref00:=(eq_ref0 (f0 x2)):(((eq Prop) (f0 x2)) (f0 x2))
% Found (eq_ref0 (f0 x2)) as proof of (((eq Prop) (f0 x2)) (a0 x2))
% Found ((eq_ref Prop) (f0 x2)) as proof of (((eq Prop) (f0 x2)) (a0 x2))
% Found ((eq_ref Prop) (f0 x2)) as proof of (((eq Prop) (f0 x2)) (a0 x2))
% Found (fun (x2:(a->(b->Prop)))=> ((eq_ref Prop) (f0 x2))) as proof of (((eq Prop) (f0 x2)) (a0 x2))
% Found (fun (x2:(a->(b->Prop)))=> ((eq_ref Prop) (f0 x2))) as proof of (forall (x:(a->(b->Prop))), (((eq Prop) (f0 x)) (a0 x)))
% Found eta_expansion_dep000:=(eta_expansion_dep00 b00):(((eq ((a->(b->Prop))->Prop)) b00) (fun (x:(a->(b->Prop)))=> (b00 x)))
% Found (eta_expansion_dep00 b00) as proof of (((eq ((a->(b->Prop))->Prop)) b00) b0)
% Found ((eta_expansion_dep0 (fun (x3:(a->(b->Prop)))=> Prop)) b00) as proof of (((eq ((a->(b->Prop))->Prop)) b00) b0)
% Found (((eta_expansion_dep (a->(b->Prop))) (fun (x3:(a->(b->Prop)))=> Prop)) b00) as proof of (((eq ((a->(b->Prop))->Prop)) b00) b0)
% Found (((eta_expansion_dep (a->(b->Prop))) (fun (x3:(a->(b->Prop)))=> Prop)) b00) as proof of (((eq ((a->(b->Prop))->Prop)) b00) b0)
% Found (((eta_expansion_dep (a->(b->Prop))) (fun (x3:(a->(b->Prop)))=> Prop)) b00) as proof of (((eq ((a->(b->Prop))->Prop)) b00) b0)
% Found eta_expansion000:=(eta_expansion00 a0):(((eq ((a->(b->Prop))->Prop)) a0) (fun (x:(a->(b->Prop)))=> (a0 x)))
% Found (eta_expansion00 a0) as proof of (((eq ((a->(b->Prop))->Prop)) a0) b00)
% Found ((eta_expansion0 Prop) a0) as proof of (((eq ((a->(b->Prop))->Prop)) a0) b00)
% Found (((eta_expansion (a->(b->Prop))) Prop) a0) as proof of (((eq ((a->(b->Prop))->Prop)) a0) b00)
% Found (((eta_expansion (a->(b->Prop))) Prop) a0) as proof of (((eq ((a->(b->Prop))->Prop)) a0) b00)
% Found (((eta_expansion (a->(b->Prop))) Prop) a0) as proof of (((eq ((a->(b->Prop))->Prop)) a0) b00)
% Found eta_expansion_dep000:=(eta_expansion_dep00 a0):(((eq ((a->(b->Prop))->Prop)) a0) (fun (x:(a->(b->Prop)))=> (a0 x)))
% Found (eta_expansion_dep00 a0) as proof of (((eq ((a->(b->Prop))->Prop)) a0) b00)
% Found ((eta_expansion_dep0 (fun (x3:(a->(b->Prop)))=> Prop)) a0) as proof of (((eq ((a->(b->Prop))->Prop)) a0) b00)
% Found (((eta_expansion_dep (a->(b->Prop))) (fun (x3:(a->(b->Prop)))=> Prop)) a0) as proof of (((eq ((a->(b->Prop))->Prop)) a0) b00)
% Found (((eta_expansion_dep (a->(b->Prop))) (fun (x3:(a->(b->Prop)))=> Prop)) a0) as proof of (((eq ((a->(b->Prop))->Prop)) a0) b00)
% Found (((eta_expansion_dep (a->(b->Prop))) (fun (x3:(a->(b->Prop)))=> Prop)) a0) as proof of (((eq ((a->(b->Prop))->Prop)) a0) b00)
% Found eta_expansion_dep000:=(eta_expansion_dep00 a0):(((eq ((a->(b->Prop))->Prop)) a0) (fun (x:(a->(b->Prop)))=> (a0 x)))
% Found (eta_expansion_dep00 a0) as proof of (((eq ((a->(b->Prop))->Prop)) a0) b00)
% Found ((eta_expansion_dep0 (fun (x3:(a->(b->Prop)))=> Prop)) a0) as proof of (((eq ((a->(b->Prop))->Prop)) a0) b00)
% Found (((eta_expansion_dep (a->(b->Prop))) (fun (x3:(a->(b->Prop)))=> Prop)) a0) as proof of (((eq ((a->(b->Prop))->Prop)) a0) b00)
% Found (((eta_expansion_dep (a->(b->Prop))) (fun (x3:(a->(b->Prop)))=> Prop)) a0) as proof of (((eq ((a->(b->Prop))->Prop)) a0) b00)
% Found (((eta_expansion_dep (a->(b->Prop))) (fun (x3:(a->(b->Prop)))=> Prop)) a0) as proof of (((eq ((a->(b->Prop))->Prop)) a0) b00)
% Found eta_expansion_dep000:=(eta_expansion_dep00 a0):(((eq ((a->(b->Prop))->Prop)) a0) (fun (x:(a->(b->Prop)))=> (a0 x)))
% Found (eta_expansion_dep00 a0) as proof of (((eq ((a->(b->Prop))->Prop)) a0) b00)
% Found ((eta_expansion_dep0 (fun (x3:(a->(b->Prop)))=> Prop)) a0) as proof of (((eq ((a->(b->Prop))->Prop)) a0) b00)
% Found (((eta_expansion_dep (a->(b->Prop))) (fun (x3:(a->(b->Prop)))=> Prop)) a0) as proof of (((eq ((a->(b->Prop))->Prop)) a0) b00)
% Found (((eta_expansion_dep (a->(b->Prop))) (fun (x3:(a->(b->Prop)))=> Prop)) a0) as proof of (((eq ((a->(b->Prop))->Prop)) a0) b00)
% Found (((eta_expansion_dep (a->(b->Prop))) (fun (x3:(a->(b->Prop)))=> Prop)) a0) as proof of (((eq ((a->(b->Prop))->Prop)) a0) b00)
% Found eq_ref00:=(eq_ref0 (f0 x2)):(((eq Prop) (f0 x2)) (f0 x2))
% Found (eq_ref0 (f0 x2)) as proof of (((eq Prop) (f0 x2)) (a0 x2))
% Found ((eq_ref Prop) (f0 x2)) as proof of (((eq Prop) (f0 x2)) (a0 x2))
% Found ((eq_ref Prop) (f0 x2)) as proof of (((eq Prop) (f0 x2)) (a0 x2))
% Found (fun (x2:(a->(b->Prop)))=> ((eq_ref Prop) (f0 x2))) as proof of (((eq Prop) (f0 x2)) (a0 x2))
% Found (fun (x2:(a->(b->Prop)))=> ((eq_ref Prop) (f0 x2))) as proof of (forall (x:(a->(b->Prop))), (((eq Prop) (f0 x)) (a0 x)))
% Found eq_ref00:=(eq_ref0 (f0 x1)):(((eq (b->Prop)) (f0 x1)) (f0 x1))
% Found (eq_ref0 (f0 x1)) as proof of (((eq (b->Prop)) (f0 x1)) (x0 x1))
% Found ((eq_ref (b->Prop)) (f0 x1)) as proof of (((eq (b->Prop)) (f0 x1)) (x0 x1))
% Found ((eq_ref (b->Prop)) (f0 x1)) as proof of (((eq (b->Prop)) (f0 x1)) (x0 x1))
% Found (fun (x1:a)=> ((eq_ref (b->Prop)) (f0 x1))) as proof of (((eq (b->Prop)) (f0 x1)) (x0 x1))
% Found (fun (x1:a)=> ((eq_ref (b->Prop)) (f0 x1))) as proof of (forall (x:a), (((eq (b->Prop)) (f0 x)) (x0 x)))
% Found eq_ref00:=(eq_ref0 (f0 x2)):(((eq Prop) (f0 x2)) (f0 x2))
% Found (eq_ref0 (f0 x2)) as proof of (((eq Prop) (f0 x2)) (a0 x2))
% Found ((eq_ref Prop) (f0 x2)) as proof of (((eq Prop) (f0 x2)) (a0 x2))
% Found ((eq_ref Prop) (f0 x2)) as proof of (((eq Prop) (f0 x2)) (a0 x2))
% Found (fun (x2:(a->(b->Prop)))=> ((eq_ref Prop) (f0 x2))) as proof of (((eq Prop) (f0 x2)) (a0 x2))
% Found (fun (x2:(a->(b->Prop)))=> ((eq_ref Prop) (f0 x2))) as proof of (forall (x:(a->(b->Prop))), (((eq Prop) (f0 x)) (a0 x)))
% Found eq_ref00:=(eq_ref0 (f0 x1)):(((eq (b->Prop)) (f0 x1)) (f0 x1))
% Found (eq_ref0 (f0 x1)) as proof of (((eq (b->Prop)) (f0 x1)) (x0 x1))
% Found ((eq_ref (b->Prop)) (f0 x1)) as proof of (((eq (b->Prop)) (f0 x1)) (x0 x1))
% Found ((eq_ref (b->Prop)) (f0 x1)) as proof of (((eq (b->Prop)) (f0 x1)) (x0 x1))
% Found (fun (x1:a)=> ((eq_ref (b->Prop)) (f0 x1))) as proof of (((eq (b->Prop)) (f0 x1)) (x0 x1))
% Found (fun (x1:a)=> ((eq_ref (b->Prop)) (f0 x1))) as proof of (forall (x:a), (((eq (b->Prop)) (f0 x)) (x0 x)))
% Found eq_ref00:=(eq_ref0 (f0 x2)):(((eq Prop) (f0 x2)) (f0 x2))
% Found (eq_ref0 (f0 x2)) as proof of (((eq Prop) (f0 x2)) (a0 x2))
% Found ((eq_ref Prop) (f0 x2)) as proof of (((eq Prop) (f0 x2)) (a0 x2))
% Found ((eq_ref Prop) (f0 x2)) as proof of (((eq Prop) (f0 x2)) (a0 x2))
% Found (fun (x2:(a->(b->Prop)))=> ((eq_ref Prop) (f0 x2))) as proof of (((eq Prop) (f0 x2)) (a0 x2))
% Found (fun (x2:(a->(b->Prop)))=> ((eq_ref Prop) (f0 x2))) as proof of (forall (x:(a->(b->Prop))), (((eq Prop) (f0 x)) (a0 x)))
% Found eq_ref00:=(eq_ref0 (f0 x2)):(((eq Prop) (f0 x2)) (f0 x2))
% Found (eq_ref0 (f0 x2)) as proof of (((eq Prop) (f0 x2)) (a0 x2))
% Found ((eq_ref Prop) (f0 x2)) as proof of (((eq Prop) (f0 x2)) (a0 x2))
% Found ((eq_ref Prop) (f0 x2)) as proof of (((eq Prop) (f0 x2)) (a0 x2))
% Found (fun (x2:(a->(b->Prop)))=> ((eq_ref Prop) (f0 x2))) as proof of (((eq Prop) (f0 x2)) (a0 x2))
% Found (fun (x2:(a->(b->Prop)))=> ((eq_ref Prop) (f0 x2))) as proof of (forall (x:(a->(b->Prop))), (((eq Prop) (f0 x)) (a0 x)))
% Found eta_expansion000:=(eta_expansion00 b00):(((eq ((a->(b->Prop))->Prop)) b00) (fun (x:(a->(b->Prop)))=> (b00 x)))
% Found (eta_expansion00 b00) as proof of (((eq ((a->(b->Prop))->Prop)) b00) b0)
% Found ((eta_expansion0 Prop) b00) as proof of (((eq ((a->(b->Prop))->Prop)) b00) b0)
% Found (((eta_expansion (a->(b->Prop))) Prop) b00) as proof of (((eq ((a->(b->Prop))->Prop)) b00) b0)
% Found (((eta_expansion (a->(b->Prop))) Prop) b00) as proof of (((eq ((a->(b->Prop))->Prop)) b00) b0)
% Found (((eta_expansion (a->(b->Prop))) Prop) b00) as proof of (((eq ((a->(b->Prop))->Prop)) b00) b0)
% Found eta_expansion_dep000:=(eta_expansion_dep00 a0):(((eq ((a->(b->Prop))->Prop)) a0) (fun (x:(a->(b->Prop)))=> (a0 x)))
% Found (eta_expansion_dep00 a0) as proof of (((eq ((a->(b->Prop))->Prop)) a0) b00)
% Found ((eta_expansion_dep0 (fun (x3:(a->(b->Prop)))=> Prop)) a0) as proof of (((eq ((a->(b->Prop))->Prop)) a0) b00)
% Found (((eta_expansion_dep (a->(b->Prop))) (fun (x3:(a->(b->Prop)))=> Prop)) a0) as proof of (((eq ((a->(b->Prop))->Prop)) a0) b00)
% Found (((eta_expansion_dep (a->(b->Prop))) (fun (x3:(a->(b->Prop)))=> Prop)) a0) as proof of (((eq ((a->(b->Prop))->Prop)) a0) b00)
% Found (((eta_expansion_dep (a->(b->Prop))) (fun (x3:(a->(b->Prop)))=> Prop)) a0) as proof of (((eq ((a->(b->Prop))->Prop)) a0) b00)
% Found eta_expansion_dep000:=(eta_expansion_dep00 a0):(((eq ((a->(b->Prop))->Prop)) a0) (fun (x:(a->(b->Prop)))=> (a0 x)))
% Found (eta_expansion_dep00 a0) as proof of (((eq ((a->(b->Prop))->Prop)) a0) b00)
% Found ((eta_expansion_dep0 (fun (x3:(a->(b->Prop)))=> Prop)) a0) as proof of (((eq ((a->(b->Prop))->Prop)) a0) b00)
% Found (((eta_expansion_dep (a->(b->Prop))) (fun (x3:(a->(b->Prop)))=> Prop)) a0) as proof of (((eq ((a->(b->Prop))->Prop)) a0) b00)
% Found (((eta_expansion_dep (a->(b->Prop))) (fun (x3:(a->(b->Prop)))=> Prop)) a0) as proof of (((eq ((a->(b->Prop))->Prop)) a0) b00)
% Found (((eta_expansion_dep (a->(b->Prop))) (fun (x3:(a->(b->Prop)))=> Prop)) a0) as proof of (((eq ((a->(b->Prop))->Prop)) a0) b00)
% 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)) (b0 x0))
% Found ((eq_ref Prop) (f0 x0)) as proof of (((eq Prop) (f0 x0)) (b0 x0))
% Found (fun (x0:(a->(b->Prop)))=> ((eq_ref Prop) (f0 x0))) as proof of (((eq Prop) (f0 x0)) (b0 x0))
% Found (fun (x0:(a->(b->Prop)))=> ((eq_ref Prop) (f0 x0))) as proof of (forall (x:(a->(b->Prop))), (((eq Prop) (f0 x)) (b0 x)))
% Found eq_ref00:=(eq_ref0 a0):(((eq ((a->(b->Prop))->Prop)) a0) a0)
% Found (eq_ref0 a0) as proof of (((eq ((a->(b->Prop))->Prop)) a0) b00)
% Found ((eq_ref ((a->(b->Prop))->Prop)) a0) as proof of (((eq ((a->(b->Prop))->Prop)) a0) b00)
% Found ((eq_ref ((a->(b->Prop))->Prop)) a0) as proof of (((eq ((a->(b->Prop))->Prop)) a0) b00)
% Found ((eq_ref ((a->(b->Prop))->Prop)) a0) as proof of (((eq ((a->(b->Prop))->Prop)) a0) b00)
% Found eta_expansion000:=(eta_expansion00 a0):(((eq ((a->(b->Prop))->Prop)) a0) (fun (x:(a->(b->Prop)))=> (a0 x)))
% Found (eta_expansion00 a0) as proof of (((eq ((a->(b->Prop))->Prop)) a0) b00)
% Found ((eta_expansion0 Prop) a0) as proof of (((eq ((a->(b->Prop))->Prop)) a0) b00)
% Found (((eta_expansion (a->(b->Prop))) Prop) a0) as proof of (((eq ((a->(b->Prop))->Prop)) a0) b00)
% Found (((eta_expansion (a->(b->Prop))) Prop) a0) as proof of (((eq ((a->(b->Prop))->Prop)) a0) b00)
% Found (((eta_expansion (a->(b->Prop))) Prop) a0) as proof of (((eq ((a->(b->Prop))->Prop)) a0) b00)
% Found eta_expansion000:=(eta_expansion00 b0):(((eq ((a->(b->Prop))->Prop)) b0) (fun (x:(a->(b->Prop)))=> (b0 x)))
% Found (eta_expansion00 b0) as proof of (((eq ((a->(b->Prop))->Prop)) b0) f0)
% Found ((eta_expansion0 Prop) b0) as proof of (((eq ((a->(b->Prop))->Prop)) b0) f0)
% Found (((eta_expansion (a->(b->Prop))) Prop) b0) as proof of (((eq ((a->(b->Prop))->Prop)) b0) f0)
% Found (((eta_expansion (a->(b->Prop))) Prop) b0) as proof of (((eq ((a->(b->Prop))->Prop)) b0) f0)
% Found (((eta_expansion (a->(b->Prop))) Prop) b0) as proof of (((eq ((a->(b->Prop))->Prop)) b0) f0)
% Found eta_expansion000:=(eta_expansion00 a0):(((eq ((a->(b->Prop))->Prop)) a0) (fun (x:(a->(b->Prop)))=> (a0 x)))
% Found (eta_expansion00 a0) as proof of (((eq ((a->(b->Prop))->Prop)) a0) b0)
% Found ((eta_expansion0 Prop) a0) as proof of (((eq ((a->(b->Prop))->Prop)) a0) b0)
% Found (((eta_expansion (a->(b->Prop))) Prop) a0) as proof of (((eq ((a->(b->Prop))->Prop)) a0) b0)
% Found (((eta_expansion (a->(b->Prop))) Prop) a0) as proof of (((eq ((a->(b->Prop))->Prop)) a0) b0)
% Found (((eta_expansion (a->(b->Prop))) Prop) a0) as proof of (((eq ((a->(b->Prop))->Prop)) a0) b0)
% Found eq_ref00:=(eq_ref0 b0):(((eq ((a->(b->Prop))->Prop)) b0) b0)
% Found (eq_ref0 b0) as proof of (((eq ((a->(b->Prop))->Prop)) b0) f0)
% Found ((eq_ref ((a->(b->Prop))->Prop)) b0) as proof of (((eq ((a->(b->Prop))->Prop)) b0) f0)
% Found ((eq_ref ((a->(b->Prop))->Prop)) b0) as proof of (((eq ((a->(b->Prop))->Prop)) b0) f0)
% Found ((eq_ref ((a->(b->Prop))->Prop)) b0) as proof of (((eq ((a->(b->Prop))->Prop)) b0) f0)
% Found eq_ref00:=(eq_ref0 a0):(((eq ((a->(b->Prop))->Prop)) a0) a0)
% Found (eq_ref0 a0) as proof of (((eq ((a->(b->Prop))->Prop)) a0) b0)
% Found ((eq_ref ((a->(b->Prop))->Prop)) a0) as proof of (((eq ((a->(b->Prop))->Prop)) a0) b0)
% Found ((eq_ref ((a->(b->Prop))->Prop)) a0) as proof of (((eq ((a->(b->Prop))->Prop)) a0) b0)
% Found ((eq_ref ((a->(b->Prop))->Prop)) a0) as proof of (((eq ((a->(b->Prop))->Prop)) a0) b0)
% Found eq_ref00:=(eq_ref0 (f1 x1)):(((eq (b->Prop)) (f1 x1)) (f1 x1))
% Found (eq_ref0 (f1 x1)) as proof of (((eq (b->Prop)) (f1 x1)) (x0 x1))
% Found ((eq_ref (b->Prop)) (f1 x1)) as proof of (((eq (b->Prop)) (f1 x1)) (x0 x1))
% Found ((eq_ref (b->Prop)) (f1 x1)) as proof of (((eq (b->Prop)) (f1 x1)) (x0 x1))
% Found (fun (x1:a)=> ((eq_ref (b->Prop)) (f1 x1))) as proof of (((eq (b->Prop)) (f1 x1)) (x0 x1))
% Found (fun (x1:a)=> ((eq_ref (b->Prop)) (f1 x1))) as proof of (forall (x:a), (((eq (b->Prop)) (f1 x)) (x0 x)))
% Found eq_ref00:=(eq_ref0 (f1 x1)):(((eq (b->Prop)) (f1 x1)) (f1 x1))
% Found (eq_ref0 (f1 x1)) as proof of (((eq (b->Prop)) (f1 x1)) (x0 x1))
% Found ((eq_ref (b->Prop)) (f1 x1)) as proof of (((eq (b->Prop)) (f1 x1)) (x0 x1))
% Found ((eq_ref (b->Prop)) (f1 x1)) as proof of (((eq (b->Prop)) (f1 x1)) (x0 x1))
% Found (fun (x1:a)=> ((eq_ref (b->Prop)) (f1 x1))) as proof of (((eq (b->Prop)) (f1 x1)) (x0 x1))
% Found (fun (x1:a)=> ((eq_ref (b->Prop)) (f1 x1))) as proof of (forall (x:a), (((eq (b->Prop)) (f1 x)) (x0 x)))
% Found eq_ref00:=(eq_ref0 (f1 x1)):(((eq (b->Prop)) (f1 x1)) (f1 x1))
% Found (eq_ref0 (f1 x1)) as proof of (((eq (b->Prop)) (f1 x1)) (x0 x1))
% Found ((eq_ref (b->Prop)) (f1 x1)) as proof of (((eq (b->Prop)) (f1 x1)) (x0 x1))
% Found ((eq_ref (b->Prop)) (f1 x1)) as proof of (((eq (b->Prop)) (f1 x1)) (x0 x1))
% Found (fun (x1:a)=> ((eq_ref (b->Prop)) (f1 x1))) as proof of (((eq (b->Prop)) (f1 x1)) (x0 x1))
% Found (fun (x1:a)=> ((eq_ref (b->Prop)) (f1 x1))) as proof of (forall (x:a), (((eq (b->Prop)) (f1 x)) (x0 x)))
% Found eq_ref00:=(eq_ref0 (f1 x1)):(((eq (b->Prop)) (f1 x1)) (f1 x1))
% Found (eq_ref0 (f1 x1)) as proof of (((eq (b->Prop)) (f1 x1)) (x0 x1))
% Found ((eq_ref (b->Prop)) (f1 x1)) as proof of (((eq (b->Prop)) (f1 x1)) (x0 x1))
% Found ((eq_ref (b->Prop)) (f1 x1)) as proof of (((eq (b->Prop)) (f1 x1)) (x0 x1))
% Found (fun (x1:a)=> ((eq_ref (b->Prop)) (f1 x1))) as proof of (((eq (b->Prop)) (f1 x1)) (x0 x1))
% Found (fun (x1:a)=> ((eq_ref (b->Prop)) (f1 x1))) as proof of (forall (x:a), (((eq (b->Prop)) (f1 x)) (x0 x)))
% Found eta_expansion000:=(eta_expansion00 b0):(((eq ((a->(b->Prop))->Prop)) b0) (fun (x:(a->(b->Prop)))=> (b0 x)))
% Found (eta_expansion00 b0) as proof of (((eq ((a->(b->Prop))->Prop)) b0) f0)
% Found ((eta_expansion0 Prop) b0) as proof of (((eq ((a->(b->Prop))->Prop)) b0) f0)
% Found (((eta_expansion (a->(b->Prop))) Prop) b0) as proof of (((eq ((a->(b->Prop))->Prop)) b0) f0)
% Found (((eta_expansion (a->(b->Prop))) Prop) b0) as proof of (((eq ((a->(b->Prop))->Prop)) b0) f0)
% Found (((eta_expansion (a->(b->Prop))) Prop) 
% EOF
%------------------------------------------------------------------------------