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

View Problem - Process Solution

%------------------------------------------------------------------------------
% File     : cocATP---0.2.0
% Problem  : SEV117^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 : n101.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:45 EDT 2014

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

% Comments : 
%------------------------------------------------------------------------------
%----NO SOLUTION OUTPUT BY SYSTEM
%------------------------------------------------------------------------------
%----ORIGINAL SYSTEM OUTPUT
% % Problem  : SEV117^5 : TPTP v6.1.0. Released v4.0.0.
% % Command  : python CASC.py /export/starexec/sandbox/benchmark/theBenchmark.p
% % Computer : n101.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 08:08:11 CDT 2014
% % CPUTime  : 300.06 
% 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 0x1562cb0>, <kernel.Type object at 0x1562440>) of role type named a_type
% Using role type
% Declaring a:Type
% FOF formula (<kernel.Constant object at 0x15c2d88>, <kernel.Constant object at 0x15621b8>) of role type named y
% Using role type
% Declaring y:a
% FOF formula (<kernel.Constant object at 0x1562a28>, <kernel.DependentProduct object at 0x1564488>) of role type named r
% Using role type
% Declaring r:(a->(a->Prop))
% FOF formula (<kernel.Constant object at 0x1562ef0>, <kernel.Constant object at 0x1562830>) of role type named x
% Using role type
% Declaring x:a
% FOF formula ((forall (Xp:(a->(a->Prop))), (((and ((and (forall (Xx0:a) (Xy0:a), (((r Xx0) Xy0)->((Xp Xx0) Xy0)))) (forall (Xx0:a) (Xy0:a), (((Xp Xx0) Xy0)->((Xp Xy0) Xx0))))) (forall (Xx0:a) (Xy0:a) (Xz:a), (((and ((Xp Xx0) Xy0)) ((Xp Xy0) Xz))->((Xp Xx0) Xz))))->((Xp x) y)))->(forall (Xq:(a->Prop)), (((and (forall (Xw:a), (((or ((r x) Xw)) ((r Xw) x))->(Xq Xw)))) (forall (Xv:a) (Xw:a), (((and (Xq Xv)) ((or ((r Xv) Xw)) ((r Xw) Xv)))->(Xq Xw))))->(Xq y)))) of role conjecture named cTHM526_2_pme
% Conjecture to prove = ((forall (Xp:(a->(a->Prop))), (((and ((and (forall (Xx0:a) (Xy0:a), (((r Xx0) Xy0)->((Xp Xx0) Xy0)))) (forall (Xx0:a) (Xy0:a), (((Xp Xx0) Xy0)->((Xp Xy0) Xx0))))) (forall (Xx0:a) (Xy0:a) (Xz:a), (((and ((Xp Xx0) Xy0)) ((Xp Xy0) Xz))->((Xp Xx0) Xz))))->((Xp x) y)))->(forall (Xq:(a->Prop)), (((and (forall (Xw:a), (((or ((r x) Xw)) ((r Xw) x))->(Xq Xw)))) (forall (Xv:a) (Xw:a), (((and (Xq Xv)) ((or ((r Xv) Xw)) ((r Xw) Xv)))->(Xq Xw))))->(Xq y)))):Prop
% We need to prove ['((forall (Xp:(a->(a->Prop))), (((and ((and (forall (Xx0:a) (Xy0:a), (((r Xx0) Xy0)->((Xp Xx0) Xy0)))) (forall (Xx0:a) (Xy0:a), (((Xp Xx0) Xy0)->((Xp Xy0) Xx0))))) (forall (Xx0:a) (Xy0:a) (Xz:a), (((and ((Xp Xx0) Xy0)) ((Xp Xy0) Xz))->((Xp Xx0) Xz))))->((Xp x) y)))->(forall (Xq:(a->Prop)), (((and (forall (Xw:a), (((or ((r x) Xw)) ((r Xw) x))->(Xq Xw)))) (forall (Xv:a) (Xw:a), (((and (Xq Xv)) ((or ((r Xv) Xw)) ((r Xw) Xv)))->(Xq Xw))))->(Xq y))))']
% Parameter a:Type.
% Parameter y:a.
% Parameter r:(a->(a->Prop)).
% Parameter x:a.
% Trying to prove ((forall (Xp:(a->(a->Prop))), (((and ((and (forall (Xx0:a) (Xy0:a), (((r Xx0) Xy0)->((Xp Xx0) Xy0)))) (forall (Xx0:a) (Xy0:a), (((Xp Xx0) Xy0)->((Xp Xy0) Xx0))))) (forall (Xx0:a) (Xy0:a) (Xz:a), (((and ((Xp Xx0) Xy0)) ((Xp Xy0) Xz))->((Xp Xx0) Xz))))->((Xp x) y)))->(forall (Xq:(a->Prop)), (((and (forall (Xw:a), (((or ((r x) Xw)) ((r Xw) x))->(Xq Xw)))) (forall (Xv:a) (Xw:a), (((and (Xq Xv)) ((or ((r Xv) Xw)) ((r Xw) Xv)))->(Xq Xw))))->(Xq y))))
% Found x4:(Xq Xz)
% Found (fun (x4:(Xq Xz))=> x4) as proof of (Xq Xz)
% Found (fun (x3:(Xq Xy0)) (x4:(Xq Xz))=> x4) as proof of ((Xq Xz)->(Xq Xz))
% Found (fun (x3:(Xq Xy0)) (x4:(Xq Xz))=> x4) as proof of ((Xq Xy0)->((Xq Xz)->(Xq Xz)))
% Found (and_rect00 (fun (x3:(Xq Xy0)) (x4:(Xq Xz))=> x4)) as proof of (Xq Xz)
% Found ((and_rect0 (Xq Xz)) (fun (x3:(Xq Xy0)) (x4:(Xq Xz))=> x4)) as proof of (Xq Xz)
% Found (((fun (P:Type) (x3:((Xq Xy0)->((Xq Xz)->P)))=> (((((and_rect (Xq Xy0)) (Xq Xz)) P) x3) x2)) (Xq Xz)) (fun (x3:(Xq Xy0)) (x4:(Xq Xz))=> x4)) as proof of (Xq Xz)
% Found (fun (x2:((and (Xq Xy0)) (Xq Xz)))=> (((fun (P:Type) (x3:((Xq Xy0)->((Xq Xz)->P)))=> (((((and_rect (Xq Xy0)) (Xq Xz)) P) x3) x2)) (Xq Xz)) (fun (x3:(Xq Xy0)) (x4:(Xq Xz))=> x4))) as proof of (Xq Xz)
% Found (fun (Xz:a) (x2:((and (Xq Xy0)) (Xq Xz)))=> (((fun (P:Type) (x3:((Xq Xy0)->((Xq Xz)->P)))=> (((((and_rect (Xq Xy0)) (Xq Xz)) P) x3) x2)) (Xq Xz)) (fun (x3:(Xq Xy0)) (x4:(Xq Xz))=> x4))) as proof of (((and (Xq Xy0)) (Xq Xz))->(Xq Xz))
% Found (fun (Xy0:a) (Xz:a) (x2:((and (Xq Xy0)) (Xq Xz)))=> (((fun (P:Type) (x3:((Xq Xy0)->((Xq Xz)->P)))=> (((((and_rect (Xq Xy0)) (Xq Xz)) P) x3) x2)) (Xq Xz)) (fun (x3:(Xq Xy0)) (x4:(Xq Xz))=> x4))) as proof of (forall (Xz:a), (((and (Xq Xy0)) (Xq Xz))->(Xq Xz)))
% Found (fun (Xx0:a) (Xy0:a) (Xz:a) (x2:((and (Xq Xy0)) (Xq Xz)))=> (((fun (P:Type) (x3:((Xq Xy0)->((Xq Xz)->P)))=> (((((and_rect (Xq Xy0)) (Xq Xz)) P) x3) x2)) (Xq Xz)) (fun (x3:(Xq Xy0)) (x4:(Xq Xz))=> x4))) as proof of (forall (Xy0:a) (Xz:a), (((and (Xq Xy0)) (Xq Xz))->(Xq Xz)))
% Found (fun (Xx0:a) (Xy0:a) (Xz:a) (x2:((and (Xq Xy0)) (Xq Xz)))=> (((fun (P:Type) (x3:((Xq Xy0)->((Xq Xz)->P)))=> (((((and_rect (Xq Xy0)) (Xq Xz)) P) x3) x2)) (Xq Xz)) (fun (x3:(Xq Xy0)) (x4:(Xq Xz))=> x4))) as proof of (a->(forall (Xy0:a) (Xz:a), (((and (Xq Xy0)) (Xq Xz))->(Xq Xz))))
% Found x4:(Xq Xz)
% Found (fun (x4:(Xq Xz))=> x4) as proof of (Xq Xz)
% Found (fun (x3:(Xq Xy0)) (x4:(Xq Xz))=> x4) as proof of ((Xq Xz)->(Xq Xz))
% Found (fun (x3:(Xq Xy0)) (x4:(Xq Xz))=> x4) as proof of ((Xq Xy0)->((Xq Xz)->(Xq Xz)))
% Found (and_rect10 (fun (x3:(Xq Xy0)) (x4:(Xq Xz))=> x4)) as proof of (Xq Xz)
% Found ((and_rect1 (Xq Xz)) (fun (x3:(Xq Xy0)) (x4:(Xq Xz))=> x4)) as proof of (Xq Xz)
% Found (((fun (P:Type) (x3:((Xq Xy0)->((Xq Xz)->P)))=> (((((and_rect (Xq Xy0)) (Xq Xz)) P) x3) x2)) (Xq Xz)) (fun (x3:(Xq Xy0)) (x4:(Xq Xz))=> x4)) as proof of (Xq Xz)
% Found (fun (x2:((and (Xq Xy0)) (Xq Xz)))=> (((fun (P:Type) (x3:((Xq Xy0)->((Xq Xz)->P)))=> (((((and_rect (Xq Xy0)) (Xq Xz)) P) x3) x2)) (Xq Xz)) (fun (x3:(Xq Xy0)) (x4:(Xq Xz))=> x4))) as proof of (Xq Xz)
% Found (fun (Xz:a) (x2:((and (Xq Xy0)) (Xq Xz)))=> (((fun (P:Type) (x3:((Xq Xy0)->((Xq Xz)->P)))=> (((((and_rect (Xq Xy0)) (Xq Xz)) P) x3) x2)) (Xq Xz)) (fun (x3:(Xq Xy0)) (x4:(Xq Xz))=> x4))) as proof of (((and (Xq Xy0)) (Xq Xz))->(Xq Xz))
% Found (fun (Xy0:a) (Xz:a) (x2:((and (Xq Xy0)) (Xq Xz)))=> (((fun (P:Type) (x3:((Xq Xy0)->((Xq Xz)->P)))=> (((((and_rect (Xq Xy0)) (Xq Xz)) P) x3) x2)) (Xq Xz)) (fun (x3:(Xq Xy0)) (x4:(Xq Xz))=> x4))) as proof of (forall (Xz:a), (((and (Xq Xy0)) (Xq Xz))->(Xq Xz)))
% Found (fun (Xx0:a) (Xy0:a) (Xz:a) (x2:((and (Xq Xy0)) (Xq Xz)))=> (((fun (P:Type) (x3:((Xq Xy0)->((Xq Xz)->P)))=> (((((and_rect (Xq Xy0)) (Xq Xz)) P) x3) x2)) (Xq Xz)) (fun (x3:(Xq Xy0)) (x4:(Xq Xz))=> x4))) as proof of (forall (Xy0:a) (Xz:a), (((and (Xq Xy0)) (Xq Xz))->(Xq Xz)))
% Found (fun (Xx0:a) (Xy0:a) (Xz:a) (x2:((and (Xq Xy0)) (Xq Xz)))=> (((fun (P:Type) (x3:((Xq Xy0)->((Xq Xz)->P)))=> (((((and_rect (Xq Xy0)) (Xq Xz)) P) x3) x2)) (Xq Xz)) (fun (x3:(Xq Xy0)) (x4:(Xq Xz))=> x4))) as proof of (a->(forall (Xy0:a) (Xz:a), (((and (Xq Xy0)) (Xq Xz))->(Xq Xz))))
% Found x4:(Xq Xz)
% Found (fun (x4:(Xq Xz))=> x4) as proof of (Xq Xz)
% Found (fun (x3:(Xq Xy0)) (x4:(Xq Xz))=> x4) as proof of ((Xq Xz)->(Xq Xz))
% Found (fun (x3:(Xq Xy0)) (x4:(Xq Xz))=> x4) as proof of ((Xq Xy0)->((Xq Xz)->(Xq Xz)))
% Found (and_rect10 (fun (x3:(Xq Xy0)) (x4:(Xq Xz))=> x4)) as proof of (Xq Xz)
% Found ((and_rect1 (Xq Xz)) (fun (x3:(Xq Xy0)) (x4:(Xq Xz))=> x4)) as proof of (Xq Xz)
% Found (((fun (P:Type) (x3:((Xq Xy0)->((Xq Xz)->P)))=> (((((and_rect (Xq Xy0)) (Xq Xz)) P) x3) x2)) (Xq Xz)) (fun (x3:(Xq Xy0)) (x4:(Xq Xz))=> x4)) as proof of (Xq Xz)
% Found (fun (x2:((and (Xq Xy0)) (Xq Xz)))=> (((fun (P:Type) (x3:((Xq Xy0)->((Xq Xz)->P)))=> (((((and_rect (Xq Xy0)) (Xq Xz)) P) x3) x2)) (Xq Xz)) (fun (x3:(Xq Xy0)) (x4:(Xq Xz))=> x4))) as proof of (Xq Xz)
% Found (fun (Xz:a) (x2:((and (Xq Xy0)) (Xq Xz)))=> (((fun (P:Type) (x3:((Xq Xy0)->((Xq Xz)->P)))=> (((((and_rect (Xq Xy0)) (Xq Xz)) P) x3) x2)) (Xq Xz)) (fun (x3:(Xq Xy0)) (x4:(Xq Xz))=> x4))) as proof of (((and (Xq Xy0)) (Xq Xz))->(Xq Xz))
% Found (fun (Xy0:a) (Xz:a) (x2:((and (Xq Xy0)) (Xq Xz)))=> (((fun (P:Type) (x3:((Xq Xy0)->((Xq Xz)->P)))=> (((((and_rect (Xq Xy0)) (Xq Xz)) P) x3) x2)) (Xq Xz)) (fun (x3:(Xq Xy0)) (x4:(Xq Xz))=> x4))) as proof of (forall (Xz:a), (((and (Xq Xy0)) (Xq Xz))->(Xq Xz)))
% Found (fun (Xx0:a) (Xy0:a) (Xz:a) (x2:((and (Xq Xy0)) (Xq Xz)))=> (((fun (P:Type) (x3:((Xq Xy0)->((Xq Xz)->P)))=> (((((and_rect (Xq Xy0)) (Xq Xz)) P) x3) x2)) (Xq Xz)) (fun (x3:(Xq Xy0)) (x4:(Xq Xz))=> x4))) as proof of (forall (Xy0:a) (Xz:a), (((and (Xq Xy0)) (Xq Xz))->(Xq Xz)))
% Found (fun (Xx0:a) (Xy0:a) (Xz:a) (x2:((and (Xq Xy0)) (Xq Xz)))=> (((fun (P:Type) (x3:((Xq Xy0)->((Xq Xz)->P)))=> (((((and_rect (Xq Xy0)) (Xq Xz)) P) x3) x2)) (Xq Xz)) (fun (x3:(Xq Xy0)) (x4:(Xq Xz))=> x4))) as proof of (a->(forall (Xy0:a) (Xz:a), (((and (Xq Xy0)) (Xq Xz))->(Xq Xz))))
% Found or_introl00:=(or_introl0 ((r Xy0) Xx0)):(((r Xx0) Xy0)->((or ((r Xx0) Xy0)) ((r Xy0) Xx0)))
% Found (or_introl0 ((r Xy0) Xx0)) as proof of (((r Xx0) Xy0)->((or ((r Xx0) Xy0)) ((r Xy0) Xx0)))
% Found ((or_introl ((r Xx0) Xy0)) ((r Xy0) Xx0)) as proof of (((r Xx0) Xy0)->((or ((r Xx0) Xy0)) ((r Xy0) Xx0)))
% Found (fun (Xy0:a)=> ((or_introl ((r Xx0) Xy0)) ((r Xy0) Xx0))) as proof of (((r Xx0) Xy0)->((or ((r Xx0) Xy0)) ((r Xy0) Xx0)))
% Found (fun (Xx0:a) (Xy0:a)=> ((or_introl ((r Xx0) Xy0)) ((r Xy0) Xx0))) as proof of (forall (Xy0:a), (((r Xx0) Xy0)->((or ((r Xx0) Xy0)) ((r Xy0) Xx0))))
% Found (fun (Xx0:a) (Xy0:a)=> ((or_introl ((r Xx0) Xy0)) ((r Xy0) Xx0))) as proof of (forall (Xx0:a) (Xy0:a), (((r Xx0) Xy0)->((or ((r Xx0) Xy0)) ((r Xy0) Xx0))))
% Found or_comm_i00:=(or_comm_i0 ((r Xy0) Xx0)):(((or ((r Xx0) Xy0)) ((r Xy0) Xx0))->((or ((r Xy0) Xx0)) ((r Xx0) Xy0)))
% Found (or_comm_i0 ((r Xy0) Xx0)) as proof of (((or ((r Xx0) Xy0)) ((r Xy0) Xx0))->((or ((r Xy0) Xx0)) ((r Xx0) Xy0)))
% Found ((or_comm_i ((r Xx0) Xy0)) ((r Xy0) Xx0)) as proof of (((or ((r Xx0) Xy0)) ((r Xy0) Xx0))->((or ((r Xy0) Xx0)) ((r Xx0) Xy0)))
% Found (fun (Xy0:a)=> ((or_comm_i ((r Xx0) Xy0)) ((r Xy0) Xx0))) as proof of (((or ((r Xx0) Xy0)) ((r Xy0) Xx0))->((or ((r Xy0) Xx0)) ((r Xx0) Xy0)))
% Found (fun (Xx0:a) (Xy0:a)=> ((or_comm_i ((r Xx0) Xy0)) ((r Xy0) Xx0))) as proof of (forall (Xy0:a), (((or ((r Xx0) Xy0)) ((r Xy0) Xx0))->((or ((r Xy0) Xx0)) ((r Xx0) Xy0))))
% Found (fun (Xx0:a) (Xy0:a)=> ((or_comm_i ((r Xx0) Xy0)) ((r Xy0) Xx0))) as proof of (forall (Xx0:a) (Xy0:a), (((or ((r Xx0) Xy0)) ((r Xy0) Xx0))->((or ((r Xy0) Xx0)) ((r Xx0) Xy0))))
% Found ((conj10 (fun (Xx0:a) (Xy0:a)=> ((or_introl ((r Xx0) Xy0)) ((r Xy0) Xx0)))) (fun (Xx0:a) (Xy0:a)=> ((or_comm_i ((r Xx0) Xy0)) ((r Xy0) Xx0)))) as proof of ((and (forall (Xx0:a) (Xy0:a), (((r Xx0) Xy0)->((or ((r Xx0) Xy0)) ((r Xy0) Xx0))))) (forall (Xx0:a) (Xy0:a), (((or ((r Xx0) Xy0)) ((r Xy0) Xx0))->((or ((r Xy0) Xx0)) ((r Xx0) Xy0)))))
% Found (((conj1 (forall (Xx0:a) (Xy0:a), (((or ((r Xx0) Xy0)) ((r Xy0) Xx0))->((or ((r Xy0) Xx0)) ((r Xx0) Xy0))))) (fun (Xx0:a) (Xy0:a)=> ((or_introl ((r Xx0) Xy0)) ((r Xy0) Xx0)))) (fun (Xx0:a) (Xy0:a)=> ((or_comm_i ((r Xx0) Xy0)) ((r Xy0) Xx0)))) as proof of ((and (forall (Xx0:a) (Xy0:a), (((r Xx0) Xy0)->((or ((r Xx0) Xy0)) ((r Xy0) Xx0))))) (forall (Xx0:a) (Xy0:a), (((or ((r Xx0) Xy0)) ((r Xy0) Xx0))->((or ((r Xy0) Xx0)) ((r Xx0) Xy0)))))
% Found ((((conj (forall (Xx0:a) (Xy0:a), (((r Xx0) Xy0)->((or ((r Xx0) Xy0)) ((r Xy0) Xx0))))) (forall (Xx0:a) (Xy0:a), (((or ((r Xx0) Xy0)) ((r Xy0) Xx0))->((or ((r Xy0) Xx0)) ((r Xx0) Xy0))))) (fun (Xx0:a) (Xy0:a)=> ((or_introl ((r Xx0) Xy0)) ((r Xy0) Xx0)))) (fun (Xx0:a) (Xy0:a)=> ((or_comm_i ((r Xx0) Xy0)) ((r Xy0) Xx0)))) as proof of ((and (forall (Xx0:a) (Xy0:a), (((r Xx0) Xy0)->((or ((r Xx0) Xy0)) ((r Xy0) Xx0))))) (forall (Xx0:a) (Xy0:a), (((or ((r Xx0) Xy0)) ((r Xy0) Xx0))->((or ((r Xy0) Xx0)) ((r Xx0) Xy0)))))
% Found ((((conj (forall (Xx0:a) (Xy0:a), (((r Xx0) Xy0)->((or ((r Xx0) Xy0)) ((r Xy0) Xx0))))) (forall (Xx0:a) (Xy0:a), (((or ((r Xx0) Xy0)) ((r Xy0) Xx0))->((or ((r Xy0) Xx0)) ((r Xx0) Xy0))))) (fun (Xx0:a) (Xy0:a)=> ((or_introl ((r Xx0) Xy0)) ((r Xy0) Xx0)))) (fun (Xx0:a) (Xy0:a)=> ((or_comm_i ((r Xx0) Xy0)) ((r Xy0) Xx0)))) as proof of ((and (forall (Xx0:a) (Xy0:a), (((r Xx0) Xy0)->((or ((r Xx0) Xy0)) ((r Xy0) Xx0))))) (forall (Xx0:a) (Xy0:a), (((or ((r Xx0) Xy0)) ((r Xy0) Xx0))->((or ((r Xy0) Xx0)) ((r Xx0) Xy0)))))
% Found x40:=(x4 x010):(Xq Xz)
% Found (x4 x010) as proof of (Xq Xz)
% Found (fun (x4:((forall (Xv:a) (Xw:a), (((and (Xq Xv)) ((or ((r Xv) Xw)) ((r Xw) Xv)))->(Xq Xw)))->(Xq Xz)))=> (x4 x010)) as proof of (Xq Xz)
% Found (fun (x3:((forall (Xv:a) (Xw:a), (((and (Xq Xv)) ((or ((r Xv) Xw)) ((r Xw) Xv)))->(Xq Xw)))->(Xq Xy0))) (x4:((forall (Xv:a) (Xw:a), (((and (Xq Xv)) ((or ((r Xv) Xw)) ((r Xw) Xv)))->(Xq Xw)))->(Xq Xz)))=> (x4 x010)) as proof of (((forall (Xv:a) (Xw:a), (((and (Xq Xv)) ((or ((r Xv) Xw)) ((r Xw) Xv)))->(Xq Xw)))->(Xq Xz))->(Xq Xz))
% Found (fun (x3:((forall (Xv:a) (Xw:a), (((and (Xq Xv)) ((or ((r Xv) Xw)) ((r Xw) Xv)))->(Xq Xw)))->(Xq Xy0))) (x4:((forall (Xv:a) (Xw:a), (((and (Xq Xv)) ((or ((r Xv) Xw)) ((r Xw) Xv)))->(Xq Xw)))->(Xq Xz)))=> (x4 x010)) as proof of (((forall (Xv:a) (Xw:a), (((and (Xq Xv)) ((or ((r Xv) Xw)) ((r Xw) Xv)))->(Xq Xw)))->(Xq Xy0))->(((forall (Xv:a) (Xw:a), (((and (Xq Xv)) ((or ((r Xv) Xw)) ((r Xw) Xv)))->(Xq Xw)))->(Xq Xz))->(Xq Xz)))
% Found (and_rect10 (fun (x3:((forall (Xv:a) (Xw:a), (((and (Xq Xv)) ((or ((r Xv) Xw)) ((r Xw) Xv)))->(Xq Xw)))->(Xq Xy0))) (x4:((forall (Xv:a) (Xw:a), (((and (Xq Xv)) ((or ((r Xv) Xw)) ((r Xw) Xv)))->(Xq Xw)))->(Xq Xz)))=> (x4 x010))) as proof of (Xq Xz)
% Found ((and_rect1 (Xq Xz)) (fun (x3:((forall (Xv:a) (Xw:a), (((and (Xq Xv)) ((or ((r Xv) Xw)) ((r Xw) Xv)))->(Xq Xw)))->(Xq Xy0))) (x4:((forall (Xv:a) (Xw:a), (((and (Xq Xv)) ((or ((r Xv) Xw)) ((r Xw) Xv)))->(Xq Xw)))->(Xq Xz)))=> (x4 x010))) as proof of (Xq Xz)
% Found (((fun (P:Type) (x3:(((forall (Xv:a) (Xw:a), (((and (Xq Xv)) ((or ((r Xv) Xw)) ((r Xw) Xv)))->(Xq Xw)))->(Xq Xy0))->(((forall (Xv:a) (Xw:a), (((and (Xq Xv)) ((or ((r Xv) Xw)) ((r Xw) Xv)))->(Xq Xw)))->(Xq Xz))->P)))=> (((((and_rect ((forall (Xv:a) (Xw:a), (((and (Xq Xv)) ((or ((r Xv) Xw)) ((r Xw) Xv)))->(Xq Xw)))->(Xq Xy0))) ((forall (Xv:a) (Xw:a), (((and (Xq Xv)) ((or ((r Xv) Xw)) ((r Xw) Xv)))->(Xq Xw)))->(Xq Xz))) P) x3) x2)) (Xq Xz)) (fun (x3:((forall (Xv:a) (Xw:a), (((and (Xq Xv)) ((or ((r Xv) Xw)) ((r Xw) Xv)))->(Xq Xw)))->(Xq Xy0))) (x4:((forall (Xv:a) (Xw:a), (((and (Xq Xv)) ((or ((r Xv) Xw)) ((r Xw) Xv)))->(Xq Xw)))->(Xq Xz)))=> (x4 x010))) as proof of (Xq Xz)
% Found (fun (x010:(forall (Xv:a) (Xw:a), (((and (Xq Xv)) ((or ((r Xv) Xw)) ((r Xw) Xv)))->(Xq Xw))))=> (((fun (P:Type) (x3:(((forall (Xv:a) (Xw:a), (((and (Xq Xv)) ((or ((r Xv) Xw)) ((r Xw) Xv)))->(Xq Xw)))->(Xq Xy0))->(((forall (Xv:a) (Xw:a), (((and (Xq Xv)) ((or ((r Xv) Xw)) ((r Xw) Xv)))->(Xq Xw)))->(Xq Xz))->P)))=> (((((and_rect ((forall (Xv:a) (Xw:a), (((and (Xq Xv)) ((or ((r Xv) Xw)) ((r Xw) Xv)))->(Xq Xw)))->(Xq Xy0))) ((forall (Xv:a) (Xw:a), (((and (Xq Xv)) ((or ((r Xv) Xw)) ((r Xw) Xv)))->(Xq Xw)))->(Xq Xz))) P) x3) x2)) (Xq Xz)) (fun (x3:((forall (Xv:a) (Xw:a), (((and (Xq Xv)) ((or ((r Xv) Xw)) ((r Xw) Xv)))->(Xq Xw)))->(Xq Xy0))) (x4:((forall (Xv:a) (Xw:a), (((and (Xq Xv)) ((or ((r Xv) Xw)) ((r Xw) Xv)))->(Xq Xw)))->(Xq Xz)))=> (x4 x010)))) as proof of (Xq Xz)
% Found (fun (x2:((and ((forall (Xv:a) (Xw:a), (((and (Xq Xv)) ((or ((r Xv) Xw)) ((r Xw) Xv)))->(Xq Xw)))->(Xq Xy0))) ((forall (Xv:a) (Xw:a), (((and (Xq Xv)) ((or ((r Xv) Xw)) ((r Xw) Xv)))->(Xq Xw)))->(Xq Xz)))) (x010:(forall (Xv:a) (Xw:a), (((and (Xq Xv)) ((or ((r Xv) Xw)) ((r Xw) Xv)))->(Xq Xw))))=> (((fun (P:Type) (x3:(((forall (Xv:a) (Xw:a), (((and (Xq Xv)) ((or ((r Xv) Xw)) ((r Xw) Xv)))->(Xq Xw)))->(Xq Xy0))->(((forall (Xv:a) (Xw:a), (((and (Xq Xv)) ((or ((r Xv) Xw)) ((r Xw) Xv)))->(Xq Xw)))->(Xq Xz))->P)))=> (((((and_rect ((forall (Xv:a) (Xw:a), (((and (Xq Xv)) ((or ((r Xv) Xw)) ((r Xw) Xv)))->(Xq Xw)))->(Xq Xy0))) ((forall (Xv:a) (Xw:a), (((and (Xq Xv)) ((or ((r Xv) Xw)) ((r Xw) Xv)))->(Xq Xw)))->(Xq Xz))) P) x3) x2)) (Xq Xz)) (fun (x3:((forall (Xv:a) (Xw:a), (((and (Xq Xv)) ((or ((r Xv) Xw)) ((r Xw) Xv)))->(Xq Xw)))->(Xq Xy0))) (x4:((forall (Xv:a) (Xw:a), (((and (Xq Xv)) ((or ((r Xv) Xw)) ((r Xw) Xv)))->(Xq Xw)))->(Xq Xz)))=> (x4 x010)))) as proof of ((forall (Xv:a) (Xw:a), (((and (Xq Xv)) ((or ((r Xv) Xw)) ((r Xw) Xv)))->(Xq Xw)))->(Xq Xz))
% Found (fun (Xz:a) (x2:((and ((forall (Xv:a) (Xw:a), (((and (Xq Xv)) ((or ((r Xv) Xw)) ((r Xw) Xv)))->(Xq Xw)))->(Xq Xy0))) ((forall (Xv:a) (Xw:a), (((and (Xq Xv)) ((or ((r Xv) Xw)) ((r Xw) Xv)))->(Xq Xw)))->(Xq Xz)))) (x010:(forall (Xv:a) (Xw:a), (((and (Xq Xv)) ((or ((r Xv) Xw)) ((r Xw) Xv)))->(Xq Xw))))=> (((fun (P:Type) (x3:(((forall (Xv:a) (Xw:a), (((and (Xq Xv)) ((or ((r Xv) Xw)) ((r Xw) Xv)))->(Xq Xw)))->(Xq Xy0))->(((forall (Xv:a) (Xw:a), (((and (Xq Xv)) ((or ((r Xv) Xw)) ((r Xw) Xv)))->(Xq Xw)))->(Xq Xz))->P)))=> (((((and_rect ((forall (Xv:a) (Xw:a), (((and (Xq Xv)) ((or ((r Xv) Xw)) ((r Xw) Xv)))->(Xq Xw)))->(Xq Xy0))) ((forall (Xv:a) (Xw:a), (((and (Xq Xv)) ((or ((r Xv) Xw)) ((r Xw) Xv)))->(Xq Xw)))->(Xq Xz))) P) x3) x2)) (Xq Xz)) (fun (x3:((forall (Xv:a) (Xw:a), (((and (Xq Xv)) ((or ((r Xv) Xw)) ((r Xw) Xv)))->(Xq Xw)))->(Xq Xy0))) (x4:((forall (Xv:a) (Xw:a), (((and (Xq Xv)) ((or ((r Xv) Xw)) ((r Xw) Xv)))->(Xq Xw)))->(Xq Xz)))=> (x4 x010)))) as proof of (((and ((forall (Xv:a) (Xw:a), (((and (Xq Xv)) ((or ((r Xv) Xw)) ((r Xw) Xv)))->(Xq Xw)))->(Xq Xy0))) ((forall (Xv:a) (Xw:a), (((and (Xq Xv)) ((or ((r Xv) Xw)) ((r Xw) Xv)))->(Xq Xw)))->(Xq Xz)))->((forall (Xv:a) (Xw:a), (((and (Xq Xv)) ((or ((r Xv) Xw)) ((r Xw) Xv)))->(Xq Xw)))->(Xq Xz)))
% Found (fun (Xy0:a) (Xz:a) (x2:((and ((forall (Xv:a) (Xw:a), (((and (Xq Xv)) ((or ((r Xv) Xw)) ((r Xw) Xv)))->(Xq Xw)))->(Xq Xy0))) ((forall (Xv:a) (Xw:a), (((and (Xq Xv)) ((or ((r Xv) Xw)) ((r Xw) Xv)))->(Xq Xw)))->(Xq Xz)))) (x010:(forall (Xv:a) (Xw:a), (((and (Xq Xv)) ((or ((r Xv) Xw)) ((r Xw) Xv)))->(Xq Xw))))=> (((fun (P:Type) (x3:(((forall (Xv:a) (Xw:a), (((and (Xq Xv)) ((or ((r Xv) Xw)) ((r Xw) Xv)))->(Xq Xw)))->(Xq Xy0))->(((forall (Xv:a) (Xw:a), (((and (Xq Xv)) ((or ((r Xv) Xw)) ((r Xw) Xv)))->(Xq Xw)))->(Xq Xz))->P)))=> (((((and_rect ((forall (Xv:a) (Xw:a), (((and (Xq Xv)) ((or ((r Xv) Xw)) ((r Xw) Xv)))->(Xq Xw)))->(Xq Xy0))) ((forall (Xv:a) (Xw:a), (((and (Xq Xv)) ((or ((r Xv) Xw)) ((r Xw) Xv)))->(Xq Xw)))->(Xq Xz))) P) x3) x2)) (Xq Xz)) (fun (x3:((forall (Xv:a) (Xw:a), (((and (Xq Xv)) ((or ((r Xv) Xw)) ((r Xw) Xv)))->(Xq Xw)))->(Xq Xy0))) (x4:((forall (Xv:a) (Xw:a), (((and (Xq Xv)) ((or ((r Xv) Xw)) ((r Xw) Xv)))->(Xq Xw)))->(Xq Xz)))=> (x4 x010)))) as proof of (forall (Xz:a), (((and ((forall (Xv:a) (Xw:a), (((and (Xq Xv)) ((or ((r Xv) Xw)) ((r Xw) Xv)))->(Xq Xw)))->(Xq Xy0))) ((forall (Xv:a) (Xw:a), (((and (Xq Xv)) ((or ((r Xv) Xw)) ((r Xw) Xv)))->(Xq Xw)))->(Xq Xz)))->((forall (Xv:a) (Xw:a), (((and (Xq Xv)) ((or ((r Xv) Xw)) ((r Xw) Xv)))->(Xq Xw)))->(Xq Xz))))
% Found (fun (Xx0:a) (Xy0:a) (Xz:a) (x2:((and ((forall (Xv:a) (Xw:a), (((and (Xq Xv)) ((or ((r Xv) Xw)) ((r Xw) Xv)))->(Xq Xw)))->(Xq Xy0))) ((forall (Xv:a) (Xw:a), (((and (Xq Xv)) ((or ((r Xv) Xw)) ((r Xw) Xv)))->(Xq Xw)))->(Xq Xz)))) (x010:(forall (Xv:a) (Xw:a), (((and (Xq Xv)) ((or ((r Xv) Xw)) ((r Xw) Xv)))->(Xq Xw))))=> (((fun (P:Type) (x3:(((forall (Xv:a) (Xw:a), (((and (Xq Xv)) ((or ((r Xv) Xw)) ((r Xw) Xv)))->(Xq Xw)))->(Xq Xy0))->(((forall (Xv:a) (Xw:a), (((and (Xq Xv)) ((or ((r Xv) Xw)) ((r Xw) Xv)))->(Xq Xw)))->(Xq Xz))->P)))=> (((((and_rect ((forall (Xv:a) (Xw:a), (((and (Xq Xv)) ((or ((r Xv) Xw)) ((r Xw) Xv)))->(Xq Xw)))->(Xq Xy0))) ((forall (Xv:a) (Xw:a), (((and (Xq Xv)) ((or ((r Xv) Xw)) ((r Xw) Xv)))->(Xq Xw)))->(Xq Xz))) P) x3) x2)) (Xq Xz)) (fun (x3:((forall (Xv:a) (Xw:a), (((and (Xq Xv)) ((or ((r Xv) Xw)) ((r Xw) Xv)))->(Xq Xw)))->(Xq Xy0))) (x4:((forall (Xv:a) (Xw:a), (((and (Xq Xv)) ((or ((r Xv) Xw)) ((r Xw) Xv)))->(Xq Xw)))->(Xq Xz)))=> (x4 x010)))) as proof of (forall (Xy0:a) (Xz:a), (((and ((forall (Xv:a) (Xw:a), (((and (Xq Xv)) ((or ((r Xv) Xw)) ((r Xw) Xv)))->(Xq Xw)))->(Xq Xy0))) ((forall (Xv:a) (Xw:a), (((and (Xq Xv)) ((or ((r Xv) Xw)) ((r Xw) Xv)))->(Xq Xw)))->(Xq Xz)))->((forall (Xv:a) (Xw:a), (((and (Xq Xv)) ((or ((r Xv) Xw)) ((r Xw) Xv)))->(Xq Xw)))->(Xq Xz))))
% Found (fun (Xx0:a) (Xy0:a) (Xz:a) (x2:((and ((forall (Xv:a) (Xw:a), (((and (Xq Xv)) ((or ((r Xv) Xw)) ((r Xw) Xv)))->(Xq Xw)))->(Xq Xy0))) ((forall (Xv:a) (Xw:a), (((and (Xq Xv)) ((or ((r Xv) Xw)) ((r Xw) Xv)))->(Xq Xw)))->(Xq Xz)))) (x010:(forall (Xv:a) (Xw:a), (((and (Xq Xv)) ((or ((r Xv) Xw)) ((r Xw) Xv)))->(Xq Xw))))=> (((fun (P:Type) (x3:(((forall (Xv:a) (Xw:a), (((and (Xq Xv)) ((or ((r Xv) Xw)) ((r Xw) Xv)))->(Xq Xw)))->(Xq Xy0))->(((forall (Xv:a) (Xw:a), (((and (Xq Xv)) ((or ((r Xv) Xw)) ((r Xw) Xv)))->(Xq Xw)))->(Xq Xz))->P)))=> (((((and_rect ((forall (Xv:a) (Xw:a), (((and (Xq Xv)) ((or ((r Xv) Xw)) ((r Xw) Xv)))->(Xq Xw)))->(Xq Xy0))) ((forall (Xv:a) (Xw:a), (((and (Xq Xv)) ((or ((r Xv) Xw)) ((r Xw) Xv)))->(Xq Xw)))->(Xq Xz))) P) x3) x2)) (Xq Xz)) (fun (x3:((forall (Xv:a) (Xw:a), (((and (Xq Xv)) ((or ((r Xv) Xw)) ((r Xw) Xv)))->(Xq Xw)))->(Xq Xy0))) (x4:((forall (Xv:a) (Xw:a), (((and (Xq Xv)) ((or ((r Xv) Xw)) ((r Xw) Xv)))->(Xq Xw)))->(Xq Xz)))=> (x4 x010)))) as proof of (a->(forall (Xy0:a) (Xz:a), (((and ((forall (Xv:a) (Xw:a), (((and (Xq Xv)) ((or ((r Xv) Xw)) ((r Xw) Xv)))->(Xq Xw)))->(Xq Xy0))) ((forall (Xv:a) (Xw:a), (((and (Xq Xv)) ((or ((r Xv) Xw)) ((r Xw) Xv)))->(Xq Xw)))->(Xq Xz)))->((forall (Xv:a) (Xw:a), (((and (Xq Xv)) ((or ((r Xv) Xw)) ((r Xw) Xv)))->(Xq Xw)))->(Xq Xz)))))
% Found or_intror00:=(or_intror0 ((r Xx0) Xy0)):(((r Xx0) Xy0)->((or ((r Xy0) Xx0)) ((r Xx0) Xy0)))
% Found (or_intror0 ((r Xx0) Xy0)) as proof of (((r Xx0) Xy0)->((or ((r Xy0) Xx0)) ((r Xx0) Xy0)))
% Found ((or_intror ((r Xy0) Xx0)) ((r Xx0) Xy0)) as proof of (((r Xx0) Xy0)->((or ((r Xy0) Xx0)) ((r Xx0) Xy0)))
% Found (fun (Xy0:a)=> ((or_intror ((r Xy0) Xx0)) ((r Xx0) Xy0))) as proof of (((r Xx0) Xy0)->((or ((r Xy0) Xx0)) ((r Xx0) Xy0)))
% Found (fun (Xx0:a) (Xy0:a)=> ((or_intror ((r Xy0) Xx0)) ((r Xx0) Xy0))) as proof of (forall (Xy0:a), (((r Xx0) Xy0)->((or ((r Xy0) Xx0)) ((r Xx0) Xy0))))
% Found (fun (Xx0:a) (Xy0:a)=> ((or_intror ((r Xy0) Xx0)) ((r Xx0) Xy0))) as proof of (forall (Xx0:a) (Xy0:a), (((r Xx0) Xy0)->((or ((r Xy0) Xx0)) ((r Xx0) Xy0))))
% Found or_comm_i10:=(or_comm_i1 ((r Xx0) Xy0)):(((or ((r Xy0) Xx0)) ((r Xx0) Xy0))->((or ((r Xx0) Xy0)) ((r Xy0) Xx0)))
% Found (or_comm_i1 ((r Xx0) Xy0)) as proof of (((or ((r Xy0) Xx0)) ((r Xx0) Xy0))->((or ((r Xx0) Xy0)) ((r Xy0) Xx0)))
% Found ((or_comm_i ((r Xy0) Xx0)) ((r Xx0) Xy0)) as proof of (((or ((r Xy0) Xx0)) ((r Xx0) Xy0))->((or ((r Xx0) Xy0)) ((r Xy0) Xx0)))
% Found (fun (Xy0:a)=> ((or_comm_i ((r Xy0) Xx0)) ((r Xx0) Xy0))) as proof of (((or ((r Xy0) Xx0)) ((r Xx0) Xy0))->((or ((r Xx0) Xy0)) ((r Xy0) Xx0)))
% Found (fun (Xx0:a) (Xy0:a)=> ((or_comm_i ((r Xy0) Xx0)) ((r Xx0) Xy0))) as proof of (forall (Xy0:a), (((or ((r Xy0) Xx0)) ((r Xx0) Xy0))->((or ((r Xx0) Xy0)) ((r Xy0) Xx0))))
% Found (fun (Xx0:a) (Xy0:a)=> ((or_comm_i ((r Xy0) Xx0)) ((r Xx0) Xy0))) as proof of (forall (Xx0:a) (Xy0:a), (((or ((r Xy0) Xx0)) ((r Xx0) Xy0))->((or ((r Xx0) Xy0)) ((r Xy0) Xx0))))
% Found ((conj10 (fun (Xx0:a) (Xy0:a)=> ((or_intror ((r Xy0) Xx0)) ((r Xx0) Xy0)))) (fun (Xx0:a) (Xy0:a)=> ((or_comm_i ((r Xy0) Xx0)) ((r Xx0) Xy0)))) as proof of ((and (forall (Xx0:a) (Xy0:a), (((r Xx0) Xy0)->((or ((r Xy0) Xx0)) ((r Xx0) Xy0))))) (forall (Xx0:a) (Xy0:a), (((or ((r Xy0) Xx0)) ((r Xx0) Xy0))->((or ((r Xx0) Xy0)) ((r Xy0) Xx0)))))
% Found (((conj1 (forall (Xx0:a) (Xy0:a), (((or ((r Xy0) Xx0)) ((r Xx0) Xy0))->((or ((r Xx0) Xy0)) ((r Xy0) Xx0))))) (fun (Xx0:a) (Xy0:a)=> ((or_intror ((r Xy0) Xx0)) ((r Xx0) Xy0)))) (fun (Xx0:a) (Xy0:a)=> ((or_comm_i ((r Xy0) Xx0)) ((r Xx0) Xy0)))) as proof of ((and (forall (Xx0:a) (Xy0:a), (((r Xx0) Xy0)->((or ((r Xy0) Xx0)) ((r Xx0) Xy0))))) (forall (Xx0:a) (Xy0:a), (((or ((r Xy0) Xx0)) ((r Xx0) Xy0))->((or ((r Xx0) Xy0)) ((r Xy0) Xx0)))))
% Found ((((conj (forall (Xx0:a) (Xy0:a), (((r Xx0) Xy0)->((or ((r Xy0) Xx0)) ((r Xx0) Xy0))))) (forall (Xx0:a) (Xy0:a), (((or ((r Xy0) Xx0)) ((r Xx0) Xy0))->((or ((r Xx0) Xy0)) ((r Xy0) Xx0))))) (fun (Xx0:a) (Xy0:a)=> ((or_intror ((r Xy0) Xx0)) ((r Xx0) Xy0)))) (fun (Xx0:a) (Xy0:a)=> ((or_comm_i ((r Xy0) Xx0)) ((r Xx0) Xy0)))) as proof of ((and (forall (Xx0:a) (Xy0:a), (((r Xx0) Xy0)->((or ((r Xy0) Xx0)) ((r Xx0) Xy0))))) (forall (Xx0:a) (Xy0:a), (((or ((r Xy0) Xx0)) ((r Xx0) Xy0))->((or ((r Xx0) Xy0)) ((r Xy0) Xx0)))))
% Found ((((conj (forall (Xx0:a) (Xy0:a), (((r Xx0) Xy0)->((or ((r Xy0) Xx0)) ((r Xx0) Xy0))))) (forall (Xx0:a) (Xy0:a), (((or ((r Xy0) Xx0)) ((r Xx0) Xy0))->((or ((r Xx0) Xy0)) ((r Xy0) Xx0))))) (fun (Xx0:a) (Xy0:a)=> ((or_intror ((r Xy0) Xx0)) ((r Xx0) Xy0)))) (fun (Xx0:a) (Xy0:a)=> ((or_comm_i ((r Xy0) Xx0)) ((r Xx0) Xy0)))) as proof of ((and (forall (Xx0:a) (Xy0:a), (((r Xx0) Xy0)->((or ((r Xy0) Xx0)) ((r Xx0) Xy0))))) (forall (Xx0:a) (Xy0:a), (((or ((r Xy0) Xx0)) ((r Xx0) Xy0))->((or ((r Xx0) Xy0)) ((r Xy0) Xx0)))))
% Found x4:((and (Xq Xv)) ((or ((r Xv) Xz)) ((r Xz) Xv)))
% Found (fun (x4:((and (Xq Xv)) ((or ((r Xv) Xz)) ((r Xz) Xv))))=> x4) as proof of ((and (Xq Xv)) ((or ((r Xv) Xz)) ((r Xz) Xv)))
% Found (fun (x3:((and (Xq Xv)) ((or ((r Xv) Xy0)) ((r Xy0) Xv)))) (x4:((and (Xq Xv)) ((or ((r Xv) Xz)) ((r Xz) Xv))))=> x4) as proof of (((and (Xq Xv)) ((or ((r Xv) Xz)) ((r Xz) Xv)))->((and (Xq Xv)) ((or ((r Xv) Xz)) ((r Xz) Xv))))
% Found (fun (x3:((and (Xq Xv)) ((or ((r Xv) Xy0)) ((r Xy0) Xv)))) (x4:((and (Xq Xv)) ((or ((r Xv) Xz)) ((r Xz) Xv))))=> x4) as proof of (((and (Xq Xv)) ((or ((r Xv) Xy0)) ((r Xy0) Xv)))->(((and (Xq Xv)) ((or ((r Xv) Xz)) ((r Xz) Xv)))->((and (Xq Xv)) ((or ((r Xv) Xz)) ((r Xz) Xv)))))
% Found (and_rect10 (fun (x3:((and (Xq Xv)) ((or ((r Xv) Xy0)) ((r Xy0) Xv)))) (x4:((and (Xq Xv)) ((or ((r Xv) Xz)) ((r Xz) Xv))))=> x4)) as proof of ((and (Xq Xv)) ((or ((r Xv) Xz)) ((r Xz) Xv)))
% Found ((and_rect1 ((and (Xq Xv)) ((or ((r Xv) Xz)) ((r Xz) Xv)))) (fun (x3:((and (Xq Xv)) ((or ((r Xv) Xy0)) ((r Xy0) Xv)))) (x4:((and (Xq Xv)) ((or ((r Xv) Xz)) ((r Xz) Xv))))=> x4)) as proof of ((and (Xq Xv)) ((or ((r Xv) Xz)) ((r Xz) Xv)))
% Found (((fun (P:Type) (x3:(((and (Xq Xv)) ((or ((r Xv) Xy0)) ((r Xy0) Xv)))->(((and (Xq Xv)) ((or ((r Xv) Xz)) ((r Xz) Xv)))->P)))=> (((((and_rect ((and (Xq Xv)) ((or ((r Xv) Xy0)) ((r Xy0) Xv)))) ((and (Xq Xv)) ((or ((r Xv) Xz)) ((r Xz) Xv)))) P) x3) x2)) ((and (Xq Xv)) ((or ((r Xv) Xz)) ((r Xz) Xv)))) (fun (x3:((and (Xq Xv)) ((or ((r Xv) Xy0)) ((r Xy0) Xv)))) (x4:((and (Xq Xv)) ((or ((r Xv) Xz)) ((r Xz) Xv))))=> x4)) as proof of ((and (Xq Xv)) ((or ((r Xv) Xz)) ((r Xz) Xv)))
% Found (fun (x2:((and ((and (Xq Xv)) ((or ((r Xv) Xy0)) ((r Xy0) Xv)))) ((and (Xq Xv)) ((or ((r Xv) Xz)) ((r Xz) Xv)))))=> (((fun (P:Type) (x3:(((and (Xq Xv)) ((or ((r Xv) Xy0)) ((r Xy0) Xv)))->(((and (Xq Xv)) ((or ((r Xv) Xz)) ((r Xz) Xv)))->P)))=> (((((and_rect ((and (Xq Xv)) ((or ((r Xv) Xy0)) ((r Xy0) Xv)))) ((and (Xq Xv)) ((or ((r Xv) Xz)) ((r Xz) Xv)))) P) x3) x2)) ((and (Xq Xv)) ((or ((r Xv) Xz)) ((r Xz) Xv)))) (fun (x3:((and (Xq Xv)) ((or ((r Xv) Xy0)) ((r Xy0) Xv)))) (x4:((and (Xq Xv)) ((or ((r Xv) Xz)) ((r Xz) Xv))))=> x4))) as proof of ((and (Xq Xv)) ((or ((r Xv) Xz)) ((r Xz) Xv)))
% Found (fun (Xz:a) (x2:((and ((and (Xq Xv)) ((or ((r Xv) Xy0)) ((r Xy0) Xv)))) ((and (Xq Xv)) ((or ((r Xv) Xz)) ((r Xz) Xv)))))=> (((fun (P:Type) (x3:(((and (Xq Xv)) ((or ((r Xv) Xy0)) ((r Xy0) Xv)))->(((and (Xq Xv)) ((or ((r Xv) Xz)) ((r Xz) Xv)))->P)))=> (((((and_rect ((and (Xq Xv)) ((or ((r Xv) Xy0)) ((r Xy0) Xv)))) ((and (Xq Xv)) ((or ((r Xv) Xz)) ((r Xz) Xv)))) P) x3) x2)) ((and (Xq Xv)) ((or ((r Xv) Xz)) ((r Xz) Xv)))) (fun (x3:((and (Xq Xv)) ((or ((r Xv) Xy0)) ((r Xy0) Xv)))) (x4:((and (Xq Xv)) ((or ((r Xv) Xz)) ((r Xz) Xv))))=> x4))) as proof of (((and ((and (Xq Xv)) ((or ((r Xv) Xy0)) ((r Xy0) Xv)))) ((and (Xq Xv)) ((or ((r Xv) Xz)) ((r Xz) Xv))))->((and (Xq Xv)) ((or ((r Xv) Xz)) ((r Xz) Xv))))
% Found (fun (Xy0:a) (Xz:a) (x2:((and ((and (Xq Xv)) ((or ((r Xv) Xy0)) ((r Xy0) Xv)))) ((and (Xq Xv)) ((or ((r Xv) Xz)) ((r Xz) Xv)))))=> (((fun (P:Type) (x3:(((and (Xq Xv)) ((or ((r Xv) Xy0)) ((r Xy0) Xv)))->(((and (Xq Xv)) ((or ((r Xv) Xz)) ((r Xz) Xv)))->P)))=> (((((and_rect ((and (Xq Xv)) ((or ((r Xv) Xy0)) ((r Xy0) Xv)))) ((and (Xq Xv)) ((or ((r Xv) Xz)) ((r Xz) Xv)))) P) x3) x2)) ((and (Xq Xv)) ((or ((r Xv) Xz)) ((r Xz) Xv)))) (fun (x3:((and (Xq Xv)) ((or ((r Xv) Xy0)) ((r Xy0) Xv)))) (x4:((and (Xq Xv)) ((or ((r Xv) Xz)) ((r Xz) Xv))))=> x4))) as proof of (forall (Xz:a), (((and ((and (Xq Xv)) ((or ((r Xv) Xy0)) ((r Xy0) Xv)))) ((and (Xq Xv)) ((or ((r Xv) Xz)) ((r Xz) Xv))))->((and (Xq Xv)) ((or ((r Xv) Xz)) ((r Xz) Xv)))))
% Found (fun (Xx0:a) (Xy0:a) (Xz:a) (x2:((and ((and (Xq Xv)) ((or ((r Xv) Xy0)) ((r Xy0) Xv)))) ((and (Xq Xv)) ((or ((r Xv) Xz)) ((r Xz) Xv)))))=> (((fun (P:Type) (x3:(((and (Xq Xv)) ((or ((r Xv) Xy0)) ((r Xy0) Xv)))->(((and (Xq Xv)) ((or ((r Xv) Xz)) ((r Xz) Xv)))->P)))=> (((((and_rect ((and (Xq Xv)) ((or ((r Xv) Xy0)) ((r Xy0) Xv)))) ((and (Xq Xv)) ((or ((r Xv) Xz)) ((r Xz) Xv)))) P) x3) x2)) ((and (Xq Xv)) ((or ((r Xv) Xz)) ((r Xz) Xv)))) (fun (x3:((and (Xq Xv)) ((or ((r Xv) Xy0)) ((r Xy0) Xv)))) (x4:((and (Xq Xv)) ((or ((r Xv) Xz)) ((r Xz) Xv))))=> x4))) as proof of (forall (Xy0:a) (Xz:a), (((and ((and (Xq Xv)) ((or ((r Xv) Xy0)) ((r Xy0) Xv)))) ((and (Xq Xv)) ((or ((r Xv) Xz)) ((r Xz) Xv))))->((and (Xq Xv)) ((or ((r Xv) Xz)) ((r Xz) Xv)))))
% Found (fun (Xx0:a) (Xy0:a) (Xz:a) (x2:((and ((and (Xq Xv)) ((or ((r Xv) Xy0)) ((r Xy0) Xv)))) ((and (Xq Xv)) ((or ((r Xv) Xz)) ((r Xz) Xv)))))=> (((fun (P:Type) (x3:(((and (Xq Xv)) ((or ((r Xv) Xy0)) ((r Xy0) Xv)))->(((and (Xq Xv)) ((or ((r Xv) Xz)) ((r Xz) Xv)))->P)))=> (((((and_rect ((and (Xq Xv)) ((or ((r Xv) Xy0)) ((r Xy0) Xv)))) ((and (Xq Xv)) ((or ((r Xv) Xz)) ((r Xz) Xv)))) P) x3) x2)) ((and (Xq Xv)) ((or ((r Xv) Xz)) ((r Xz) Xv)))) (fun (x3:((and (Xq Xv)) ((or ((r Xv) Xy0)) ((r Xy0) Xv)))) (x4:((and (Xq Xv)) ((or ((r Xv) Xz)) ((r Xz) Xv))))=> x4))) as proof of (a->(forall (Xy0:a) (Xz:a), (((and ((and (Xq Xv)) ((or ((r Xv) Xy0)) ((r Xy0) Xv)))) ((and (Xq Xv)) ((or ((r Xv) Xz)) ((r Xz) Xv))))->((and (Xq Xv)) ((or ((r Xv) Xz)) ((r Xz) Xv))))))
% Found x2:((r Xx0) Xy0)
% Found (fun (x2:((r Xx0) Xy0))=> x2) as proof of ((r Xx0) Xy0)
% Found (fun (Xy0:a) (x2:((r Xx0) Xy0))=> x2) as proof of (((r Xx0) Xy0)->((r Xx0) Xy0))
% Found (fun (Xx0:a) (Xy0:a) (x2:((r Xx0) Xy0))=> x2) as proof of (forall (Xy0:a), (((r Xx0) Xy0)->((r Xx0) Xy0)))
% Found (fun (Xx0:a) (Xy0:a) (x2:((r Xx0) Xy0))=> x2) as proof of (forall (Xx0:a) (Xy0:a), (((r Xx0) Xy0)->((r Xx0) Xy0)))
% Found x2:((r Xx0) Xy0)
% Found (fun (x2:((r Xx0) Xy0))=> x2) as proof of ((r Xx0) Xy0)
% Found (fun (Xy0:a) (x2:((r Xx0) Xy0))=> x2) as proof of (((r Xx0) Xy0)->((r Xx0) Xy0))
% Found (fun (Xx0:a) (Xy0:a) (x2:((r Xx0) Xy0))=> x2) as proof of (forall (Xy0:a), (((r Xx0) Xy0)->((r Xx0) Xy0)))
% Found (fun (Xx0:a) (Xy0:a) (x2:((r Xx0) Xy0))=> x2) as proof of (forall (Xx0:a) (Xy0:a), (((r Xx0) Xy0)->((r Xx0) Xy0)))
% Found x2:(Xq Xy0)
% Instantiate: Xv:=Xy0:a
% Found x2 as proof of (Xq Xv)
% Found x2:(Xq Xy0)
% Instantiate: Xv:=Xy0:a
% Found x2 as proof of (Xq Xv)
% Found x2:(Xq Xy0)
% Instantiate: Xv:=Xy0:a
% Found x2 as proof of (Xq Xv)
% Found x20:=(x2 x010):(Xq Xy0)
% Instantiate: Xv:=Xy0:a
% Found (x2 x010) as proof of (Xq Xv)
% Found (x2 x010) as proof of (Xq Xv)
% Found x3:(Xq Xv)
% Found x3 as proof of (Xq Xv)
% Found x2:(Xq Xy0)
% Instantiate: Xv:=Xy0:a
% Found x2 as proof of (Xq Xv)
% Found x2:((r Xx0) Xy0)
% Instantiate: Xv:=Xx0:a
% Found x2 as proof of ((r Xv) Xy0)
% Found (or_introl00 x2) as proof of ((or ((r Xv) Xy0)) ((r Xy0) Xv))
% Found ((or_introl0 ((r Xy0) Xv)) x2) as proof of ((or ((r Xv) Xy0)) ((r Xy0) Xv))
% Found (((or_introl ((r Xv) Xy0)) ((r Xy0) Xv)) x2) as proof of ((or ((r Xv) Xy0)) ((r Xy0) Xv))
% Found (((or_introl ((r Xv) Xy0)) ((r Xy0) Xv)) x2) as proof of ((or ((r Xv) Xy0)) ((r Xy0) Xv))
% Found x2:(Xq Xv)
% Found (fun (x2:(Xq Xv))=> x2) as proof of (Xq Xv)
% Found (fun (Xy0:a) (x2:(Xq Xv))=> x2) as proof of ((Xq Xv)->(Xq Xv))
% Found (fun (Xx0:a) (Xy0:a) (x2:(Xq Xv))=> x2) as proof of (a->((Xq Xv)->(Xq Xv)))
% Found (fun (Xx0:a) (Xy0:a) (x2:(Xq Xv))=> x2) as proof of (a->(a->((Xq Xv)->(Xq Xv))))
% Found x2:((r Xx0) Xy0)
% Instantiate: Xv:=Xx0:a
% Found x2 as proof of ((r Xv) Xy0)
% Found (or_introl00 x2) as proof of ((or ((r Xv) Xy0)) ((r Xy0) Xv))
% Found ((or_introl0 ((r Xy0) Xv)) x2) as proof of ((or ((r Xv) Xy0)) ((r Xy0) Xv))
% Found (((or_introl ((r Xv) Xy0)) ((r Xy0) Xv)) x2) as proof of ((or ((r Xv) Xy0)) ((r Xy0) Xv))
% Found (((or_introl ((r Xv) Xy0)) ((r Xy0) Xv)) x2) as proof of ((or ((r Xv) Xy0)) ((r Xy0) Xv))
% Found x2:((r Xx0) Xy0)
% Instantiate: Xv:=Xx0:a
% Found x2 as proof of ((r Xv) Xy0)
% Found (or_introl00 x2) as proof of ((or ((r Xv) Xy0)) ((r Xy0) Xv))
% Found ((or_introl0 ((r Xy0) Xv)) x2) as proof of ((or ((r Xv) Xy0)) ((r Xy0) Xv))
% Found (((or_introl ((r Xv) Xy0)) ((r Xy0) Xv)) x2) as proof of ((or ((r Xv) Xy0)) ((r Xy0) Xv))
% Found (((or_introl ((r Xv) Xy0)) ((r Xy0) Xv)) x2) as proof of ((or ((r Xv) Xy0)) ((r Xy0) Xv))
% Found x2:((r Xx0) Xy0)
% Instantiate: Xv:=Xx0:a
% Found x2 as proof of ((r Xv) Xy0)
% Found (or_introl00 x2) as proof of ((or ((r Xv) Xy0)) ((r Xy0) Xv))
% Found ((or_introl0 ((r Xy0) Xv)) x2) as proof of ((or ((r Xv) Xy0)) ((r Xy0) Xv))
% Found (((or_introl ((r Xv) Xy0)) ((r Xy0) Xv)) x2) as proof of ((or ((r Xv) Xy0)) ((r Xy0) Xv))
% Found (((or_introl ((r Xv) Xy0)) ((r Xy0) Xv)) x2) as proof of ((or ((r Xv) Xy0)) ((r Xy0) Xv))
% Found or_introl00:=(or_introl0 ((r Xy0) Xv)):(((r Xx0) Xy0)->((or ((r Xx0) Xy0)) ((r Xy0) Xv)))
% Found (or_introl0 ((r Xy0) Xv)) as proof of (((r Xx0) Xy0)->((or ((r Xv) Xy0)) ((r Xy0) Xv)))
% Found ((or_introl ((r Xx0) Xy0)) ((r Xy0) Xv)) as proof of (((r Xx0) Xy0)->((or ((r Xv) Xy0)) ((r Xy0) Xv)))
% Found ((or_introl ((r Xx0) Xy0)) ((r Xy0) Xv)) as proof of (((r Xx0) Xy0)->((or ((r Xv) Xy0)) ((r Xy0) Xv)))
% Found (fun (Xy0:a)=> ((or_introl ((r Xx0) Xy0)) ((r Xy0) Xv))) as proof of (((r Xx0) Xy0)->((or ((r Xv) Xy0)) ((r Xy0) Xv)))
% Found x3:(Xq Xv)
% Found (fun (x4:((or ((r Xv) Xy0)) ((r Xy0) Xv)))=> x3) as proof of (Xq Xv)
% Found (fun (x3:(Xq Xv)) (x4:((or ((r Xv) Xy0)) ((r Xy0) Xv)))=> x3) as proof of (((or ((r Xv) Xy0)) ((r Xy0) Xv))->(Xq Xv))
% Found (fun (x3:(Xq Xv)) (x4:((or ((r Xv) Xy0)) ((r Xy0) Xv)))=> x3) as proof of ((Xq Xv)->(((or ((r Xv) Xy0)) ((r Xy0) Xv))->(Xq Xv)))
% Found (and_rect10 (fun (x3:(Xq Xv)) (x4:((or ((r Xv) Xy0)) ((r Xy0) Xv)))=> x3)) as proof of (Xq Xv)
% Found ((and_rect1 (Xq Xv)) (fun (x3:(Xq Xv)) (x4:((or ((r Xv) Xy0)) ((r Xy0) Xv)))=> x3)) as proof of (Xq Xv)
% Found (((fun (P:Type) (x3:((Xq Xv)->(((or ((r Xv) Xy0)) ((r Xy0) Xv))->P)))=> (((((and_rect (Xq Xv)) ((or ((r Xv) Xy0)) ((r Xy0) Xv))) P) x3) x2)) (Xq Xv)) (fun (x3:(Xq Xv)) (x4:((or ((r Xv) Xy0)) ((r Xy0) Xv)))=> x3)) as proof of (Xq Xv)
% Found (((fun (P:Type) (x3:((Xq Xv)->(((or ((r Xv) Xy0)) ((r Xy0) Xv))->P)))=> (((((and_rect (Xq Xv)) ((or ((r Xv) Xy0)) ((r Xy0) Xv))) P) x3) x2)) (Xq Xv)) (fun (x3:(Xq Xv)) (x4:((or ((r Xv) Xy0)) ((r Xy0) Xv)))=> x3)) as proof of (Xq Xv)
% Found x4:((or ((r Xv) Xz)) ((r Xz) Xv))
% Found (fun (x4:((or ((r Xv) Xz)) ((r Xz) Xv)))=> x4) as proof of ((or ((r Xv) Xz)) ((r Xz) Xv))
% Found (fun (x3:((or ((r Xv) Xy0)) ((r Xy0) Xv))) (x4:((or ((r Xv) Xz)) ((r Xz) Xv)))=> x4) as proof of (((or ((r Xv) Xz)) ((r Xz) Xv))->((or ((r Xv) Xz)) ((r Xz) Xv)))
% Found (fun (x3:((or ((r Xv) Xy0)) ((r Xy0) Xv))) (x4:((or ((r Xv) Xz)) ((r Xz) Xv)))=> x4) as proof of (((or ((r Xv) Xy0)) ((r Xy0) Xv))->(((or ((r Xv) Xz)) ((r Xz) Xv))->((or ((r Xv) Xz)) ((r Xz) Xv))))
% Found (and_rect10 (fun (x3:((or ((r Xv) Xy0)) ((r Xy0) Xv))) (x4:((or ((r Xv) Xz)) ((r Xz) Xv)))=> x4)) as proof of ((or ((r Xv) Xz)) ((r Xz) Xv))
% Found ((and_rect1 ((or ((r Xv) Xz)) ((r Xz) Xv))) (fun (x3:((or ((r Xv) Xy0)) ((r Xy0) Xv))) (x4:((or ((r Xv) Xz)) ((r Xz) Xv)))=> x4)) as proof of ((or ((r Xv) Xz)) ((r Xz) Xv))
% Found (((fun (P:Type) (x3:(((or ((r Xv) Xy0)) ((r Xy0) Xv))->(((or ((r Xv) Xz)) ((r Xz) Xv))->P)))=> (((((and_rect ((or ((r Xv) Xy0)) ((r Xy0) Xv))) ((or ((r Xv) Xz)) ((r Xz) Xv))) P) x3) x2)) ((or ((r Xv) Xz)) ((r Xz) Xv))) (fun (x3:((or ((r Xv) Xy0)) ((r Xy0) Xv))) (x4:((or ((r Xv) Xz)) ((r Xz) Xv)))=> x4)) as proof of ((or ((r Xv) Xz)) ((r Xz) Xv))
% Found (fun (x2:((and ((or ((r Xv) Xy0)) ((r Xy0) Xv))) ((or ((r Xv) Xz)) ((r Xz) Xv))))=> (((fun (P:Type) (x3:(((or ((r Xv) Xy0)) ((r Xy0) Xv))->(((or ((r Xv) Xz)) ((r Xz) Xv))->P)))=> (((((and_rect ((or ((r Xv) Xy0)) ((r Xy0) Xv))) ((or ((r Xv) Xz)) ((r Xz) Xv))) P) x3) x2)) ((or ((r Xv) Xz)) ((r Xz) Xv))) (fun (x3:((or ((r Xv) Xy0)) ((r Xy0) Xv))) (x4:((or ((r Xv) Xz)) ((r Xz) Xv)))=> x4))) as proof of ((or ((r Xv) Xz)) ((r Xz) Xv))
% Found (fun (Xz:a) (x2:((and ((or ((r Xv) Xy0)) ((r Xy0) Xv))) ((or ((r Xv) Xz)) ((r Xz) Xv))))=> (((fun (P:Type) (x3:(((or ((r Xv) Xy0)) ((r Xy0) Xv))->(((or ((r Xv) Xz)) ((r Xz) Xv))->P)))=> (((((and_rect ((or ((r Xv) Xy0)) ((r Xy0) Xv))) ((or ((r Xv) Xz)) ((r Xz) Xv))) P) x3) x2)) ((or ((r Xv) Xz)) ((r Xz) Xv))) (fun (x3:((or ((r Xv) Xy0)) ((r Xy0) Xv))) (x4:((or ((r Xv) Xz)) ((r Xz) Xv)))=> x4))) as proof of (((and ((or ((r Xv) Xy0)) ((r Xy0) Xv))) ((or ((r Xv) Xz)) ((r Xz) Xv)))->((or ((r Xv) Xz)) ((r Xz) Xv)))
% Found (fun (Xy0:a) (Xz:a) (x2:((and ((or ((r Xv) Xy0)) ((r Xy0) Xv))) ((or ((r Xv) Xz)) ((r Xz) Xv))))=> (((fun (P:Type) (x3:(((or ((r Xv) Xy0)) ((r Xy0) Xv))->(((or ((r Xv) Xz)) ((r Xz) Xv))->P)))=> (((((and_rect ((or ((r Xv) Xy0)) ((r Xy0) Xv))) ((or ((r Xv) Xz)) ((r Xz) Xv))) P) x3) x2)) ((or ((r Xv) Xz)) ((r Xz) Xv))) (fun (x3:((or ((r Xv) Xy0)) ((r Xy0) Xv))) (x4:((or ((r Xv) Xz)) ((r Xz) Xv)))=> x4))) as proof of (forall (Xz:a), (((and ((or ((r Xv) Xy0)) ((r Xy0) Xv))) ((or ((r Xv) Xz)) ((r Xz) Xv)))->((or ((r Xv) Xz)) ((r Xz) Xv))))
% Found (fun (Xx0:a) (Xy0:a) (Xz:a) (x2:((and ((or ((r Xv) Xy0)) ((r Xy0) Xv))) ((or ((r Xv) Xz)) ((r Xz) Xv))))=> (((fun (P:Type) (x3:(((or ((r Xv) Xy0)) ((r Xy0) Xv))->(((or ((r Xv) Xz)) ((r Xz) Xv))->P)))=> (((((and_rect ((or ((r Xv) Xy0)) ((r Xy0) Xv))) ((or ((r Xv) Xz)) ((r Xz) Xv))) P) x3) x2)) ((or ((r Xv) Xz)) ((r Xz) Xv))) (fun (x3:((or ((r Xv) Xy0)) ((r Xy0) Xv))) (x4:((or ((r Xv) Xz)) ((r Xz) Xv)))=> x4))) as proof of (forall (Xy0:a) (Xz:a), (((and ((or ((r Xv) Xy0)) ((r Xy0) Xv))) ((or ((r Xv) Xz)) ((r Xz) Xv)))->((or ((r Xv) Xz)) ((r Xz) Xv))))
% Found (fun (Xx0:a) (Xy0:a) (Xz:a) (x2:((and ((or ((r Xv) Xy0)) ((r Xy0) Xv))) ((or ((r Xv) Xz)) ((r Xz) Xv))))=> (((fun (P:Type) (x3:(((or ((r Xv) Xy0)) ((r Xy0) Xv))->(((or ((r Xv) Xz)) ((r Xz) Xv))->P)))=> (((((and_rect ((or ((r Xv) Xy0)) ((r Xy0) Xv))) ((or ((r Xv) Xz)) ((r Xz) Xv))) P) x3) x2)) ((or ((r Xv) Xz)) ((r Xz) Xv))) (fun (x3:((or ((r Xv) Xy0)) ((r Xy0) Xv))) (x4:((or ((r Xv) Xz)) ((r Xz) Xv)))=> x4))) as proof of (a->(forall (Xy0:a) (Xz:a), (((and ((or ((r Xv) Xy0)) ((r Xy0) Xv))) ((or ((r Xv) Xz)) ((r Xz) Xv)))->((or ((r Xv) Xz)) ((r Xz) Xv)))))
% Found x4:(Xq Xv)
% Found (fun (x4:(Xq Xv))=> x4) as proof of (Xq Xv)
% Found (fun (x3:(Xq Xv)) (x4:(Xq Xv))=> x4) as proof of ((Xq Xv)->(Xq Xv))
% Found (fun (x3:(Xq Xv)) (x4:(Xq Xv))=> x4) as proof of ((Xq Xv)->((Xq Xv)->(Xq Xv)))
% Found (and_rect10 (fun (x3:(Xq Xv)) (x4:(Xq Xv))=> x4)) as proof of (Xq Xv)
% Found ((and_rect1 (Xq Xv)) (fun (x3:(Xq Xv)) (x4:(Xq Xv))=> x4)) as proof of (Xq Xv)
% Found (((fun (P:Type) (x3:((Xq Xv)->((Xq Xv)->P)))=> (((((and_rect (Xq Xv)) (Xq Xv)) P) x3) x2)) (Xq Xv)) (fun (x3:(Xq Xv)) (x4:(Xq Xv))=> x4)) as proof of (Xq Xv)
% Found (fun (x2:((and (Xq Xv)) (Xq Xv)))=> (((fun (P:Type) (x3:((Xq Xv)->((Xq Xv)->P)))=> (((((and_rect (Xq Xv)) (Xq Xv)) P) x3) x2)) (Xq Xv)) (fun (x3:(Xq Xv)) (x4:(Xq Xv))=> x4))) as proof of (Xq Xv)
% Found (fun (Xz:a) (x2:((and (Xq Xv)) (Xq Xv)))=> (((fun (P:Type) (x3:((Xq Xv)->((Xq Xv)->P)))=> (((((and_rect (Xq Xv)) (Xq Xv)) P) x3) x2)) (Xq Xv)) (fun (x3:(Xq Xv)) (x4:(Xq Xv))=> x4))) as proof of (((and (Xq Xv)) (Xq Xv))->(Xq Xv))
% Found (fun (Xy0:a) (Xz:a) (x2:((and (Xq Xv)) (Xq Xv)))=> (((fun (P:Type) (x3:((Xq Xv)->((Xq Xv)->P)))=> (((((and_rect (Xq Xv)) (Xq Xv)) P) x3) x2)) (Xq Xv)) (fun (x3:(Xq Xv)) (x4:(Xq Xv))=> x4))) as proof of (a->(((and (Xq Xv)) (Xq Xv))->(Xq Xv)))
% Found (fun (Xx0:a) (Xy0:a) (Xz:a) (x2:((and (Xq Xv)) (Xq Xv)))=> (((fun (P:Type) (x3:((Xq Xv)->((Xq Xv)->P)))=> (((((and_rect (Xq Xv)) (Xq Xv)) P) x3) x2)) (Xq Xv)) (fun (x3:(Xq Xv)) (x4:(Xq Xv))=> x4))) as proof of (a->(a->(((and (Xq Xv)) (Xq Xv))->(Xq Xv))))
% Found (fun (Xx0:a) (Xy0:a) (Xz:a) (x2:((and (Xq Xv)) (Xq Xv)))=> (((fun (P:Type) (x3:((Xq Xv)->((Xq Xv)->P)))=> (((((and_rect (Xq Xv)) (Xq Xv)) P) x3) x2)) (Xq Xv)) (fun (x3:(Xq Xv)) (x4:(Xq Xv))=> x4))) as proof of (a->(a->(a->(((and (Xq Xv)) (Xq Xv))->(Xq Xv)))))
% Found x2:((r Xx0) Xy0)
% Instantiate: Xv:=Xx0:a
% Found x2 as proof of ((r Xv) Xy0)
% Found (or_introl00 x2) as proof of ((or ((r Xv) Xy0)) ((r Xy0) Xv))
% Found ((or_introl0 ((r Xy0) Xv)) x2) as proof of ((or ((r Xv) Xy0)) ((r Xy0) Xv))
% Found (((or_introl ((r Xv) Xy0)) ((r Xy0) Xv)) x2) as proof of ((or ((r Xv) Xy0)) ((r Xy0) Xv))
% Found (((or_introl ((r Xv) Xy0)) ((r Xy0) Xv)) x2) as proof of ((or ((r Xv) Xy0)) ((r Xy0) Xv))
% Found x010:(forall (Xv:a) (Xw:a), (((and (Xq Xv)) ((or ((r Xv) Xw)) ((r Xw) Xv)))->(Xq Xw)))
% Found x010 as proof of (forall (Xv:a) (Xw:a), (((and (Xq Xv)) ((or ((r Xv) Xw)) ((r Xw) Xv)))->(Xq Xw)))
% Found x2:((r Xx0) Xy0)
% Instantiate: Xv:=Xx0:a
% Found x2 as proof of ((r Xv) Xy0)
% Found (or_introl00 x2) as proof of ((or ((r Xv) Xy0)) ((r Xy0) Xv))
% Found ((or_introl0 ((r Xy0) Xv)) x2) as proof of ((or ((r Xv) Xy0)) ((r Xy0) Xv))
% Found (((or_introl ((r Xv) Xy0)) ((r Xy0) Xv)) x2) as proof of ((or ((r Xv) Xy0)) ((r Xy0) Xv))
% Found (fun (x2:((r Xx0) Xy0))=> (((or_introl ((r Xv) Xy0)) ((r Xy0) Xv)) x2)) as proof of ((or ((r Xv) Xy0)) ((r Xy0) Xv))
% Found (fun (Xy0:a) (x2:((r Xx0) Xy0))=> (((or_introl ((r Xv) Xy0)) ((r Xy0) Xv)) x2)) as proof of (((r Xx0) Xy0)->((or ((r Xv) Xy0)) ((r Xy0) Xv)))
% Found or_introl00:=(or_introl0 ((r Xv) Xx0)):(((r Xx0) Xy0)->((or ((r Xx0) Xy0)) ((r Xv) Xx0)))
% Found (or_introl0 ((r Xv) Xx0)) as proof of (((r Xx0) Xy0)->((or ((r Xx0) Xv)) ((r Xv) Xx0)))
% Found ((or_introl ((r Xx0) Xy0)) ((r Xv) Xx0)) as proof of (((r Xx0) Xy0)->((or ((r Xx0) Xv)) ((r Xv) Xx0)))
% Found ((or_introl ((r Xx0) Xy0)) ((r Xv) Xx0)) as proof of (((r Xx0) Xy0)->((or ((r Xx0) Xv)) ((r Xv) Xx0)))
% Found x3:((or ((r Xx0) Xv)) ((r Xv) Xx0))
% Found (fun (x4:((or ((r Xy0) Xv)) ((r Xv) Xy0)))=> x3) as proof of ((or ((r Xx0) Xv)) ((r Xv) Xx0))
% Found (fun (x3:((or ((r Xx0) Xv)) ((r Xv) Xx0))) (x4:((or ((r Xy0) Xv)) ((r Xv) Xy0)))=> x3) as proof of (((or ((r Xy0) Xv)) ((r Xv) Xy0))->((or ((r Xx0) Xv)) ((r Xv) Xx0)))
% Found (fun (x3:((or ((r Xx0) Xv)) ((r Xv) Xx0))) (x4:((or ((r Xy0) Xv)) ((r Xv) Xy0)))=> x3) as proof of (((or ((r Xx0) Xv)) ((r Xv) Xx0))->(((or ((r Xy0) Xv)) ((r Xv) Xy0))->((or ((r Xx0) Xv)) ((r Xv) Xx0))))
% Found (and_rect10 (fun (x3:((or ((r Xx0) Xv)) ((r Xv) Xx0))) (x4:((or ((r Xy0) Xv)) ((r Xv) Xy0)))=> x3)) as proof of ((or ((r Xx0) Xv)) ((r Xv) Xx0))
% Found ((and_rect1 ((or ((r Xx0) Xv)) ((r Xv) Xx0))) (fun (x3:((or ((r Xx0) Xv)) ((r Xv) Xx0))) (x4:((or ((r Xy0) Xv)) ((r Xv) Xy0)))=> x3)) as proof of ((or ((r Xx0) Xv)) ((r Xv) Xx0))
% Found (((fun (P:Type) (x3:(((or ((r Xx0) Xv)) ((r Xv) Xx0))->(((or ((r Xy0) Xv)) ((r Xv) Xy0))->P)))=> (((((and_rect ((or ((r Xx0) Xv)) ((r Xv) Xx0))) ((or ((r Xy0) Xv)) ((r Xv) Xy0))) P) x3) x2)) ((or ((r Xx0) Xv)) ((r Xv) Xx0))) (fun (x3:((or ((r Xx0) Xv)) ((r Xv) Xx0))) (x4:((or ((r Xy0) Xv)) ((r Xv) Xy0)))=> x3)) as proof of ((or ((r Xx0) Xv)) ((r Xv) Xx0))
% Found (fun (x2:((and ((or ((r Xx0) Xv)) ((r Xv) Xx0))) ((or ((r Xy0) Xv)) ((r Xv) Xy0))))=> (((fun (P:Type) (x3:(((or ((r Xx0) Xv)) ((r Xv) Xx0))->(((or ((r Xy0) Xv)) ((r Xv) Xy0))->P)))=> (((((and_rect ((or ((r Xx0) Xv)) ((r Xv) Xx0))) ((or ((r Xy0) Xv)) ((r Xv) Xy0))) P) x3) x2)) ((or ((r Xx0) Xv)) ((r Xv) Xx0))) (fun (x3:((or ((r Xx0) Xv)) ((r Xv) Xx0))) (x4:((or ((r Xy0) Xv)) ((r Xv) Xy0)))=> x3))) as proof of ((or ((r Xx0) Xv)) ((r Xv) Xx0))
% Found (fun (Xz:a) (x2:((and ((or ((r Xx0) Xv)) ((r Xv) Xx0))) ((or ((r Xy0) Xv)) ((r Xv) Xy0))))=> (((fun (P:Type) (x3:(((or ((r Xx0) Xv)) ((r Xv) Xx0))->(((or ((r Xy0) Xv)) ((r Xv) Xy0))->P)))=> (((((and_rect ((or ((r Xx0) Xv)) ((r Xv) Xx0))) ((or ((r Xy0) Xv)) ((r Xv) Xy0))) P) x3) x2)) ((or ((r Xx0) Xv)) ((r Xv) Xx0))) (fun (x3:((or ((r Xx0) Xv)) ((r Xv) Xx0))) (x4:((or ((r Xy0) Xv)) ((r Xv) Xy0)))=> x3))) as proof of (((and ((or ((r Xx0) Xv)) ((r Xv) Xx0))) ((or ((r Xy0) Xv)) ((r Xv) Xy0)))->((or ((r Xx0) Xv)) ((r Xv) Xx0)))
% Found (fun (Xy0:a) (Xz:a) (x2:((and ((or ((r Xx0) Xv)) ((r Xv) Xx0))) ((or ((r Xy0) Xv)) ((r Xv) Xy0))))=> (((fun (P:Type) (x3:(((or ((r Xx0) Xv)) ((r Xv) Xx0))->(((or ((r Xy0) Xv)) ((r Xv) Xy0))->P)))=> (((((and_rect ((or ((r Xx0) Xv)) ((r Xv) Xx0))) ((or ((r Xy0) Xv)) ((r Xv) Xy0))) P) x3) x2)) ((or ((r Xx0) Xv)) ((r Xv) Xx0))) (fun (x3:((or ((r Xx0) Xv)) ((r Xv) Xx0))) (x4:((or ((r Xy0) Xv)) ((r Xv) Xy0)))=> x3))) as proof of (a->(((and ((or ((r Xx0) Xv)) ((r Xv) Xx0))) ((or ((r Xy0) Xv)) ((r Xv) Xy0)))->((or ((r Xx0) Xv)) ((r Xv) Xx0))))
% Found (fun (Xx0:a) (Xy0:a) (Xz:a) (x2:((and ((or ((r Xx0) Xv)) ((r Xv) Xx0))) ((or ((r Xy0) Xv)) ((r Xv) Xy0))))=> (((fun (P:Type) (x3:(((or ((r Xx0) Xv)) ((r Xv) Xx0))->(((or ((r Xy0) Xv)) ((r Xv) Xy0))->P)))=> (((((and_rect ((or ((r Xx0) Xv)) ((r Xv) Xx0))) ((or ((r Xy0) Xv)) ((r Xv) Xy0))) P) x3) x2)) ((or ((r Xx0) Xv)) ((r Xv) Xx0))) (fun (x3:((or ((r Xx0) Xv)) ((r Xv) Xx0))) (x4:((or ((r Xy0) Xv)) ((r Xv) Xy0)))=> x3))) as proof of (forall (Xy0:a), (a->(((and ((or ((r Xx0) Xv)) ((r Xv) Xx0))) ((or ((r Xy0) Xv)) ((r Xv) Xy0)))->((or ((r Xx0) Xv)) ((r Xv) Xx0)))))
% Found (fun (Xx0:a) (Xy0:a) (Xz:a) (x2:((and ((or ((r Xx0) Xv)) ((r Xv) Xx0))) ((or ((r Xy0) Xv)) ((r Xv) Xy0))))=> (((fun (P:Type) (x3:(((or ((r Xx0) Xv)) ((r Xv) Xx0))->(((or ((r Xy0) Xv)) ((r Xv) Xy0))->P)))=> (((((and_rect ((or ((r Xx0) Xv)) ((r Xv) Xx0))) ((or ((r Xy0) Xv)) ((r Xv) Xy0))) P) x3) x2)) ((or ((r Xx0) Xv)) ((r Xv) Xx0))) (fun (x3:((or ((r Xx0) Xv)) ((r Xv) Xx0))) (x4:((or ((r Xy0) Xv)) ((r Xv) Xy0)))=> x3))) as proof of (forall (Xx0:a) (Xy0:a), (a->(((and ((or ((r Xx0) Xv)) ((r Xv) Xx0))) ((or ((r Xy0) Xv)) ((r Xv) Xy0)))->((or ((r Xx0) Xv)) ((r Xv) Xx0)))))
% Found x2:((r Xx0) Xy0)
% Instantiate: Xv:=Xx0:a
% Found x2 as proof of ((r Xv) Xy0)
% Found (or_introl00 x2) as proof of ((or ((r Xv) Xy0)) ((r Xy0) Xv))
% Found ((or_introl0 ((r Xy0) Xv)) x2) as proof of ((or ((r Xv) Xy0)) ((r Xy0) Xv))
% Found (((or_introl ((r Xv) Xy0)) ((r Xy0) Xv)) x2) as proof of ((or ((r Xv) Xy0)) ((r Xy0) Xv))
% Found (((or_introl ((r Xv) Xy0)) ((r Xy0) Xv)) x2) as proof of ((or ((r Xv) Xy0)) ((r Xy0) Xv))
% Found x2:((r Xx0) Xy0)
% Instantiate: Xv:=Xx0:a
% Found (fun (x2:((r Xx0) Xy0))=> x2) as proof of ((r Xv) Xy0)
% Found (fun (Xy0:a) (x2:((r Xx0) Xy0))=> x2) as proof of (((r Xx0) Xy0)->((r Xv) Xy0))
% Found x010:(forall (Xv:a) (Xw:a), (((and (Xq Xv)) ((or ((r Xv) Xw)) ((r Xw) Xv)))->(Xq Xw)))
% Found x010 as proof of (forall (Xv:a) (Xw:a), (((and (Xq Xv)) ((or ((r Xv) Xw)) ((r Xw) Xv)))->(Xq Xw)))
% Found or_intror00:=(or_intror0 ((r Xx0) Xy0)):(((r Xx0) Xy0)->((or ((r Xy0) Xv)) ((r Xx0) Xy0)))
% Found (or_intror0 ((r Xx0) Xy0)) as proof of (((r Xx0) Xy0)->((or ((r Xy0) Xv)) ((r Xv) Xy0)))
% Found ((or_intror ((r Xy0) Xv)) ((r Xx0) Xy0)) as proof of (((r Xx0) Xy0)->((or ((r Xy0) Xv)) ((r Xv) Xy0)))
% Found ((or_intror ((r Xy0) Xv)) ((r Xx0) Xy0)) as proof of (((r Xx0) Xy0)->((or ((r Xy0) Xv)) ((r Xv) Xy0)))
% Found (fun (Xy0:a)=> ((or_intror ((r Xy0) Xv)) ((r Xx0) Xy0))) as proof of (((r Xx0) Xy0)->((or ((r Xy0) Xv)) ((r Xv) Xy0)))
% Found x2:((r Xx0) Xy0)
% Instantiate: Xv:=Xy0:a
% Found x2 as proof of ((r Xx0) Xv)
% Found (or_introl00 x2) as proof of ((or ((r Xx0) Xv)) ((r Xv) Xx0))
% Found ((or_introl0 ((r Xv) Xx0)) x2) as proof of ((or ((r Xx0) Xv)) ((r Xv) Xx0))
% Found (((or_introl ((r Xx0) Xv)) ((r Xv) Xx0)) x2) as proof of ((or ((r Xx0) Xv)) ((r Xv) Xx0))
% Found (fun (x2:((r Xx0) Xy0))=> (((or_introl ((r Xx0) Xv)) ((r Xv) Xx0)) x2)) as proof of ((or ((r Xx0) Xv)) ((r Xv) Xx0))
% Found x4:((r Xz) Xv)
% Found (fun (x4:((r Xz) Xv))=> x4) as proof of ((r Xz) Xv)
% Found (fun (x3:((r Xy0) Xv)) (x4:((r Xz) Xv))=> x4) as proof of (((r Xz) Xv)->((r Xz) Xv))
% Found (fun (x3:((r Xy0) Xv)) (x4:((r Xz) Xv))=> x4) as proof of (((r Xy0) Xv)->(((r Xz) Xv)->((r Xz) Xv)))
% Found (and_rect10 (fun (x3:((r Xy0) Xv)) (x4:((r Xz) Xv))=> x4)) as proof of ((r Xz) Xv)
% Found ((and_rect1 ((r Xz) Xv)) (fun (x3:((r Xy0) Xv)) (x4:((r Xz) Xv))=> x4)) as proof of ((r Xz) Xv)
% Found (((fun (P:Type) (x3:(((r Xy0) Xv)->(((r Xz) Xv)->P)))=> (((((and_rect ((r Xy0) Xv)) ((r Xz) Xv)) P) x3) x2)) ((r Xz) Xv)) (fun (x3:((r Xy0) Xv)) (x4:((r Xz) Xv))=> x4)) as proof of ((r Xz) Xv)
% Found (fun (x2:((and ((r Xy0) Xv)) ((r Xz) Xv)))=> (((fun (P:Type) (x3:(((r Xy0) Xv)->(((r Xz) Xv)->P)))=> (((((and_rect ((r Xy0) Xv)) ((r Xz) Xv)) P) x3) x2)) ((r Xz) Xv)) (fun (x3:((r Xy0) Xv)) (x4:((r Xz) Xv))=> x4))) as proof of ((r Xz) Xv)
% Found (fun (Xz:a) (x2:((and ((r Xy0) Xv)) ((r Xz) Xv)))=> (((fun (P:Type) (x3:(((r Xy0) Xv)->(((r Xz) Xv)->P)))=> (((((and_rect ((r Xy0) Xv)) ((r Xz) Xv)) P) x3) x2)) ((r Xz) Xv)) (fun (x3:((r Xy0) Xv)) (x4:((r Xz) Xv))=> x4))) as proof of (((and ((r Xy0) Xv)) ((r Xz) Xv))->((r Xz) Xv))
% Found (fun (Xy0:a) (Xz:a) (x2:((and ((r Xy0) Xv)) ((r Xz) Xv)))=> (((fun (P:Type) (x3:(((r Xy0) Xv)->(((r Xz) Xv)->P)))=> (((((and_rect ((r Xy0) Xv)) ((r Xz) Xv)) P) x3) x2)) ((r Xz) Xv)) (fun (x3:((r Xy0) Xv)) (x4:((r Xz) Xv))=> x4))) as proof of (forall (Xz:a), (((and ((r Xy0) Xv)) ((r Xz) Xv))->((r Xz) Xv)))
% Found (fun (Xx0:a) (Xy0:a) (Xz:a) (x2:((and ((r Xy0) Xv)) ((r Xz) Xv)))=> (((fun (P:Type) (x3:(((r Xy0) Xv)->(((r Xz) Xv)->P)))=> (((((and_rect ((r Xy0) Xv)) ((r Xz) Xv)) P) x3) x2)) ((r Xz) Xv)) (fun (x3:((r Xy0) Xv)) (x4:((r Xz) Xv))=> x4))) as proof of (forall (Xy0:a) (Xz:a), (((and ((r Xy0) Xv)) ((r Xz) Xv))->((r Xz) Xv)))
% Found (fun (Xx0:a) (Xy0:a) (Xz:a) (x2:((and ((r Xy0) Xv)) ((r Xz) Xv)))=> (((fun (P:Type) (x3:(((r Xy0) Xv)->(((r Xz) Xv)->P)))=> (((((and_rect ((r Xy0) Xv)) ((r Xz) Xv)) P) x3) x2)) ((r Xz) Xv)) (fun (x3:((r Xy0) Xv)) (x4:((r Xz) Xv))=> x4))) as proof of (a->(forall (Xy0:a) (Xz:a), (((and ((r Xy0) Xv)) ((r Xz) Xv))->((r Xz) Xv))))
% Found x4:((r Xv) Xz)
% Found (fun (x4:((r Xv) Xz))=> x4) as proof of ((r Xv) Xz)
% Found (fun (x3:((r Xv) Xy0)) (x4:((r Xv) Xz))=> x4) as proof of (((r Xv) Xz)->((r Xv) Xz))
% Found (fun (x3:((r Xv) Xy0)) (x4:((r Xv) Xz))=> x4) as proof of (((r Xv) Xy0)->(((r Xv) Xz)->((r Xv) Xz)))
% Found (and_rect10 (fun (x3:((r Xv) Xy0)) (x4:((r Xv) Xz))=> x4)) as proof of ((r Xv) Xz)
% Found ((and_rect1 ((r Xv) Xz)) (fun (x3:((r Xv) Xy0)) (x4:((r Xv) Xz))=> x4)) as proof of ((r Xv) Xz)
% Found (((fun (P:Type) (x3:(((r Xv) Xy0)->(((r Xv) Xz)->P)))=> (((((and_rect ((r Xv) Xy0)) ((r Xv) Xz)) P) x3) x2)) ((r Xv) Xz)) (fun (x3:((r Xv) Xy0)) (x4:((r Xv) Xz))=> x4)) as proof of ((r Xv) Xz)
% Found (fun (x2:((and ((r Xv) Xy0)) ((r Xv) Xz)))=> (((fun (P:Type) (x3:(((r Xv) Xy0)->(((r Xv) Xz)->P)))=> (((((and_rect ((r Xv) Xy0)) ((r Xv) Xz)) P) x3) x2)) ((r Xv) Xz)) (fun (x3:((r Xv) Xy0)) (x4:((r Xv) Xz))=> x4))) as proof of ((r Xv) Xz)
% Found (fun (Xz:a) (x2:((and ((r Xv) Xy0)) ((r Xv) Xz)))=> (((fun (P:Type) (x3:(((r Xv) Xy0)->(((r Xv) Xz)->P)))=> (((((and_rect ((r Xv) Xy0)) ((r Xv) Xz)) P) x3) x2)) ((r Xv) Xz)) (fun (x3:((r Xv) Xy0)) (x4:((r Xv) Xz))=> x4))) as proof of (((and ((r Xv) Xy0)) ((r Xv) Xz))->((r Xv) Xz))
% Found (fun (Xy0:a) (Xz:a) (x2:((and ((r Xv) Xy0)) ((r Xv) Xz)))=> (((fun (P:Type) (x3:(((r Xv) Xy0)->(((r Xv) Xz)->P)))=> (((((and_rect ((r Xv) Xy0)) ((r Xv) Xz)) P) x3) x2)) ((r Xv) Xz)) (fun (x3:((r Xv) Xy0)) (x4:((r Xv) Xz))=> x4))) as proof of (forall (Xz:a), (((and ((r Xv) Xy0)) ((r Xv) Xz))->((r Xv) Xz)))
% Found (fun (Xx0:a) (Xy0:a) (Xz:a) (x2:((and ((r Xv) Xy0)) ((r Xv) Xz)))=> (((fun (P:Type) (x3:(((r Xv) Xy0)->(((r Xv) Xz)->P)))=> (((((and_rect ((r Xv) Xy0)) ((r Xv) Xz)) P) x3) x2)) ((r Xv) Xz)) (fun (x3:((r Xv) Xy0)) (x4:((r Xv) Xz))=> x4))) as proof of (forall (Xy0:a) (Xz:a), (((and ((r Xv) Xy0)) ((r Xv) Xz))->((r Xv) Xz)))
% Found (fun (Xx0:a) (Xy0:a) (Xz:a) (x2:((and ((r Xv) Xy0)) ((r Xv) Xz)))=> (((fun (P:Type) (x3:(((r Xv) Xy0)->(((r Xv) Xz)->P)))=> (((((and_rect ((r Xv) Xy0)) ((r Xv) Xz)) P) x3) x2)) ((r Xv) Xz)) (fun (x3:((r Xv) Xy0)) (x4:((r Xv) Xz))=> x4))) as proof of (a->(forall (Xy0:a) (Xz:a), (((and ((r Xv) Xy0)) ((r Xv) Xz))->((r Xv) Xz))))
% Found x4:((or ((r Xz) Xv)) ((r Xv) Xz))
% Found (fun (x4:((or ((r Xz) Xv)) ((r Xv) Xz)))=> x4) as proof of ((or ((r Xz) Xv)) ((r Xv) Xz))
% Found (fun (x3:((or ((r Xy0) Xv)) ((r Xv) Xy0))) (x4:((or ((r Xz) Xv)) ((r Xv) Xz)))=> x4) as proof of (((or ((r Xz) Xv)) ((r Xv) Xz))->((or ((r Xz) Xv)) ((r Xv) Xz)))
% Found (fun (x3:((or ((r Xy0) Xv)) ((r Xv) Xy0))) (x4:((or ((r Xz) Xv)) ((r Xv) Xz)))=> x4) as proof of (((or ((r Xy0) Xv)) ((r Xv) Xy0))->(((or ((r Xz) Xv)) ((r Xv) Xz))->((or ((r Xz) Xv)) ((r Xv) Xz))))
% Found (and_rect10 (fun (x3:((or ((r Xy0) Xv)) ((r Xv) Xy0))) (x4:((or ((r Xz) Xv)) ((r Xv) Xz)))=> x4)) as proof of ((or ((r Xz) Xv)) ((r Xv) Xz))
% Found ((and_rect1 ((or ((r Xz) Xv)) ((r Xv) Xz))) (fun (x3:((or ((r Xy0) Xv)) ((r Xv) Xy0))) (x4:((or ((r Xz) Xv)) ((r Xv) Xz)))=> x4)) as proof of ((or ((r Xz) Xv)) ((r Xv) Xz))
% Found (((fun (P:Type) (x3:(((or ((r Xy0) Xv)) ((r Xv) Xy0))->(((or ((r Xz) Xv)) ((r Xv) Xz))->P)))=> (((((and_rect ((or ((r Xy0) Xv)) ((r Xv) Xy0))) ((or ((r Xz) Xv)) ((r Xv) Xz))) P) x3) x2)) ((or ((r Xz) Xv)) ((r Xv) Xz))) (fun (x3:((or ((r Xy0) Xv)) ((r Xv) Xy0))) (x4:((or ((r Xz) Xv)) ((r Xv) Xz)))=> x4)) as proof of ((or ((r Xz) Xv)) ((r Xv) Xz))
% Found (fun (x2:((and ((or ((r Xy0) Xv)) ((r Xv) Xy0))) ((or ((r Xz) Xv)) ((r Xv) Xz))))=> (((fun (P:Type) (x3:(((or ((r Xy0) Xv)) ((r Xv) Xy0))->(((or ((r Xz) Xv)) ((r Xv) Xz))->P)))=> (((((and_rect ((or ((r Xy0) Xv)) ((r Xv) Xy0))) ((or ((r Xz) Xv)) ((r Xv) Xz))) P) x3) x2)) ((or ((r Xz) Xv)) ((r Xv) Xz))) (fun (x3:((or ((r Xy0) Xv)) ((r Xv) Xy0))) (x4:((or ((r Xz) Xv)) ((r Xv) Xz)))=> x4))) as proof of ((or ((r Xz) Xv)) ((r Xv) Xz))
% Found (fun (Xz:a) (x2:((and ((or ((r Xy0) Xv)) ((r Xv) Xy0))) ((or ((r Xz) Xv)) ((r Xv) Xz))))=> (((fun (P:Type) (x3:(((or ((r Xy0) Xv)) ((r Xv) Xy0))->(((or ((r Xz) Xv)) ((r Xv) Xz))->P)))=> (((((and_rect ((or ((r Xy0) Xv)) ((r Xv) Xy0))) ((or ((r Xz) Xv)) ((r Xv) Xz))) P) x3) x2)) ((or ((r Xz) Xv)) ((r Xv) Xz))) (fun (x3:((or ((r Xy0) Xv)) ((r Xv) Xy0))) (x4:((or ((r Xz) Xv)) ((r Xv) Xz)))=> x4))) as proof of (((and ((or ((r Xy0) Xv)) ((r Xv) Xy0))) ((or ((r Xz) Xv)) ((r Xv) Xz)))->((or ((r Xz) Xv)) ((r Xv) Xz)))
% Found (fun (Xy0:a) (Xz:a) (x2:((and ((or ((r Xy0) Xv)) ((r Xv) Xy0))) ((or ((r Xz) Xv)) ((r Xv) Xz))))=> (((fun (P:Type) (x3:(((or ((r Xy0) Xv)) ((r Xv) Xy0))->(((or ((r Xz) Xv)) ((r Xv) Xz))->P)))=> (((((and_rect ((or ((r Xy0) Xv)) ((r Xv) Xy0))) ((or ((r Xz) Xv)) ((r Xv) Xz))) P) x3) x2)) ((or ((r Xz) Xv)) ((r Xv) Xz))) (fun (x3:((or ((r Xy0) Xv)) ((r Xv) Xy0))) (x4:((or ((r Xz) Xv)) ((r Xv) Xz)))=> x4))) as proof of (forall (Xz:a), (((and ((or ((r Xy0) Xv)) ((r Xv) Xy0))) ((or ((r Xz) Xv)) ((r Xv) Xz)))->((or ((r Xz) Xv)) ((r Xv) Xz))))
% Found (fun (Xx0:a) (Xy0:a) (Xz:a) (x2:((and ((or ((r Xy0) Xv)) ((r Xv) Xy0))) ((or ((r Xz) Xv)) ((r Xv) Xz))))=> (((fun (P:Type) (x3:(((or ((r Xy0) Xv)) ((r Xv) Xy0))->(((or ((r Xz) Xv)) ((r Xv) Xz))->P)))=> (((((and_rect ((or ((r Xy0) Xv)) ((r Xv) Xy0))) ((or ((r Xz) Xv)) ((r Xv) Xz))) P) x3) x2)) ((or ((r Xz) Xv)) ((r Xv) Xz))) (fun (x3:((or ((r Xy0) Xv)) ((r Xv) Xy0))) (x4:((or ((r Xz) Xv)) ((r Xv) Xz)))=> x4))) as proof of (forall (Xy0:a) (Xz:a), (((and ((or ((r Xy0) Xv)) ((r Xv) Xy0))) ((or ((r Xz) Xv)) ((r Xv) Xz)))->((or ((r Xz) Xv)) ((r Xv) Xz))))
% Found (fun (Xx0:a) (Xy0:a) (Xz:a) (x2:((and ((or ((r Xy0) Xv)) ((r Xv) Xy0))) ((or ((r Xz) Xv)) ((r Xv) Xz))))=> (((fun (P:Type) (x3:(((or ((r Xy0) Xv)) ((r Xv) Xy0))->(((or ((r Xz) Xv)) ((r Xv) Xz))->P)))=> (((((and_rect ((or ((r Xy0) Xv)) ((r Xv) Xy0))) ((or ((r Xz) Xv)) ((r Xv) Xz))) P) x3) x2)) ((or ((r Xz) Xv)) ((r Xv) Xz))) (fun (x3:((or ((r Xy0) Xv)) ((r Xv) Xy0))) (x4:((or ((r Xz) Xv)) ((r Xv) Xz)))=> x4))) as proof of (a->(forall (Xy0:a) (Xz:a), (((and ((or ((r Xy0) Xv)) ((r Xv) Xy0))) ((or ((r Xz) Xv)) ((r Xv) Xz)))->((or ((r Xz) Xv)) ((r Xv) Xz)))))
% Found x3:(Xq Xv)
% Found x3 as proof of (Xq Xv)
% Found x3:(Xq Xv)
% Found x3 as proof of (Xq Xv)
% Found x20:(Xq Xy0)
% Instantiate: Xv:=Xy0:a
% Found x20 as proof of (Xq Xv)
% Found x2:((r Xx0) Xy0)
% Instantiate: Xv:=Xx0:a
% Found x2 as proof of ((r Xv) Xy0)
% Found (or_intror00 x2) as proof of ((or ((r Xy0) Xv)) ((r Xv) Xy0))
% Found ((or_intror0 ((r Xv) Xy0)) x2) as proof of ((or ((r Xy0) Xv)) ((r Xv) Xy0))
% Found (((or_intror ((r Xy0) Xv)) ((r Xv) Xy0)) x2) as proof of ((or ((r Xy0) Xv)) ((r Xv) Xy0))
% Found (fun (x2:((r Xx0) Xy0))=> (((or_intror ((r Xy0) Xv)) ((r Xv) Xy0)) x2)) as proof of ((or ((r Xy0) Xv)) ((r Xv) Xy0))
% Found (fun (Xy0:a) (x2:((r Xx0) Xy0))=> (((or_intror ((r Xy0) Xv)) ((r Xv) Xy0)) x2)) as proof of (((r Xx0) Xy0)->((or ((r Xy0) Xv)) ((r Xv) Xy0)))
% Found x2:((r Xx0) Xy0)
% Instantiate: Xv:=Xy0:a
% Found (fun (x2:((r Xx0) Xy0))=> x2) as proof of ((r Xx0) Xv)
% Found or_intror00:=(or_intror0 ((r Xx0) Xy0)):(((r Xx0) Xy0)->((or ((r Xv) Xx0)) ((r Xx0) Xy0)))
% Found (or_intror0 ((r Xx0) Xy0)) as proof of (((r Xx0) Xy0)->((or ((r Xv) Xx0)) ((r Xx0) Xv)))
% Found ((or_intror ((r Xv) Xx0)) ((r Xx0) Xy0)) as proof of (((r Xx0) Xy0)->((or ((r Xv) Xx0)) ((r Xx0) Xv)))
% Found ((or_intror ((r Xv) Xx0)) ((r Xx0) Xy0)) as proof of (((r Xx0) Xy0)->((or ((r Xv) Xx0)) ((r Xx0) Xv)))
% Found x3:((r Xv) Xx0)
% Found (fun (x4:((r Xv) Xy0))=> x3) as proof of ((r Xv) Xx0)
% Found (fun (x3:((r Xv) Xx0)) (x4:((r Xv) Xy0))=> x3) as proof of (((r Xv) Xy0)->((r Xv) Xx0))
% Found (fun (x3:((r Xv) Xx0)) (x4:((r Xv) Xy0))=> x3) as proof of (((r Xv) Xx0)->(((r Xv) Xy0)->((r Xv) Xx0)))
% Found (and_rect10 (fun (x3:((r Xv) Xx0)) (x4:((r Xv) Xy0))=> x3)) as proof of ((r Xv) Xx0)
% Found ((and_rect1 ((r Xv) Xx0)) (fun (x3:((r Xv) Xx0)) (x4:((r Xv) Xy0))=> x3)) as proof of ((r Xv) Xx0)
% Found (((fun (P:Type) (x3:(((r Xv) Xx0)->(((r Xv) Xy0)->P)))=> (((((and_rect ((r Xv) Xx0)) ((r Xv) Xy0)) P) x3) x2)) ((r Xv) Xx0)) (fun (x3:((r Xv) Xx0)) (x4:((r Xv) Xy0))=> x3)) as proof of ((r Xv) Xx0)
% Found (fun (x2:((and ((r Xv) Xx0)) ((r Xv) Xy0)))=> (((fun (P:Type) (x3:(((r Xv) Xx0)->(((r Xv) Xy0)->P)))=> (((((and_rect ((r Xv) Xx0)) ((r Xv) Xy0)) P) x3) x2)) ((r Xv) Xx0)) (fun (x3:((r Xv) Xx0)) (x4:((r Xv) Xy0))=> x3))) as proof of ((r Xv) Xx0)
% Found (fun (Xz:a) (x2:((and ((r Xv) Xx0)) ((r Xv) Xy0)))=> (((fun (P:Type) (x3:(((r Xv) Xx0)->(((r Xv) Xy0)->P)))=> (((((and_rect ((r Xv) Xx0)) ((r Xv) Xy0)) P) x3) x2)) ((r Xv) Xx0)) (fun (x3:((r Xv) Xx0)) (x4:((r Xv) Xy0))=> x3))) as proof of (((and ((r Xv) Xx0)) ((r Xv) Xy0))->((r Xv) Xx0))
% Found (fun (Xy0:a) (Xz:a) (x2:((and ((r Xv) Xx0)) ((r Xv) Xy0)))=> (((fun (P:Type) (x3:(((r Xv) Xx0)->(((r Xv) Xy0)->P)))=> (((((and_rect ((r Xv) Xx0)) ((r Xv) Xy0)) P) x3) x2)) ((r Xv) Xx0)) (fun (x3:((r Xv) Xx0)) (x4:((r Xv) Xy0))=> x3))) as proof of (a->(((and ((r Xv) Xx0)) ((r Xv) Xy0))->((r Xv) Xx0)))
% Found (fun (Xx0:a) (Xy0:a) (Xz:a) (x2:((and ((r Xv) Xx0)) ((r Xv) Xy0)))=> (((fun (P:Type) (x3:(((r Xv) Xx0)->(((r Xv) Xy0)->P)))=> (((((and_rect ((r Xv) Xx0)) ((r Xv) Xy0)) P) x3) x2)) ((r Xv) Xx0)) (fun (x3:((r Xv) Xx0)) (x4:((r Xv) Xy0))=> x3))) as proof of (forall (Xy0:a), (a->(((and ((r Xv) Xx0)) ((r Xv) Xy0))->((r Xv) Xx0))))
% Found (fun (Xx0:a) (Xy0:a) (Xz:a) (x2:((and ((r Xv) Xx0)) ((r Xv) Xy0)))=> (((fun (P:Type) (x3:(((r Xv) Xx0)->(((r Xv) Xy0)->P)))=> (((((and_rect ((r Xv) Xx0)) ((r Xv) Xy0)) P) x3) x2)) ((r Xv) Xx0)) (fun (x3:((r Xv) Xx0)) (x4:((r Xv) Xy0))=> x3))) as proof of (forall (Xx0:a) (Xy0:a), (a->(((and ((r Xv) Xx0)) ((r Xv) Xy0))->((r Xv) Xx0))))
% Found x3:((r Xx0) Xv)
% Found (fun (x4:((r Xy0) Xv))=> x3) as proof of ((r Xx0) Xv)
% Found (fun (x3:((r Xx0) Xv)) (x4:((r Xy0) Xv))=> x3) as proof of (((r Xy0) Xv)->((r Xx0) Xv))
% Found (fun (x3:((r Xx0) Xv)) (x4:((r Xy0) Xv))=> x3) as proof of (((r Xx0) Xv)->(((r Xy0) Xv)->((r Xx0) Xv)))
% Found (and_rect10 (fun (x3:((r Xx0) Xv)) (x4:((r Xy0) Xv))=> x3)) as proof of ((r Xx0) Xv)
% Found ((and_rect1 ((r Xx0) Xv)) (fun (x3:((r Xx0) Xv)) (x4:((r Xy0) Xv))=> x3)) as proof of ((r Xx0) Xv)
% Found (((fun (P:Type) (x3:(((r Xx0) Xv)->(((r Xy0) Xv)->P)))=> (((((and_rect ((r Xx0) Xv)) ((r Xy0) Xv)) P) x3) x2)) ((r Xx0) Xv)) (fun (x3:((r Xx0) Xv)) (x4:((r Xy0) Xv))=> x3)) as proof of ((r Xx0) Xv)
% Found (fun (x2:((and ((r Xx0) Xv)) ((r Xy0) Xv)))=> (((fun (P:Type) (x3:(((r Xx0) Xv)->(((r Xy0) Xv)->P)))=> (((((and_rect ((r Xx0) Xv)) ((r Xy0) Xv)) P) x3) x2)) ((r Xx0) Xv)) (fun (x3:((r Xx0) Xv)) (x4:((r Xy0) Xv))=> x3))) as proof of ((r Xx0) Xv)
% Found (fun (Xz:a) (x2:((and ((r Xx0) Xv)) ((r Xy0) Xv)))=> (((fun (P:Type) (x3:(((r Xx0) Xv)->(((r Xy0) Xv)->P)))=> (((((and_rect ((r Xx0) Xv)) ((r Xy0) Xv)) P) x3) x2)) ((r Xx0) Xv)) (fun (x3:((r Xx0) Xv)) (x4:((r Xy0) Xv))=> x3))) as proof of (((and ((r Xx0) Xv)) ((r Xy0) Xv))->((r Xx0) Xv))
% Found (fun (Xy0:a) (Xz:a) (x2:((and ((r Xx0) Xv)) ((r Xy0) Xv)))=> (((fun (P:Type) (x3:(((r Xx0) Xv)->(((r Xy0) Xv)->P)))=> (((((and_rect ((r Xx0) Xv)) ((r Xy0) Xv)) P) x3) x2)) ((r Xx0) Xv)) (fun (x3:((r Xx0) Xv)) (x4:((r Xy0) Xv))=> x3))) as proof of (a->(((and ((r Xx0) Xv)) ((r Xy0) Xv))->((r Xx0) Xv)))
% Found (fun (Xx0:a) (Xy0:a) (Xz:a) (x2:((and ((r Xx0) Xv)) ((r Xy0) Xv)))=> (((fun (P:Type) (x3:(((r Xx0) Xv)->(((r Xy0) Xv)->P)))=> (((((and_rect ((r Xx0) Xv)) ((r Xy0) Xv)) P) x3) x2)) ((r Xx0) Xv)) (fun (x3:((r Xx0) Xv)) (x4:((r Xy0) Xv))=> x3))) as proof of (forall (Xy0:a), (a->(((and ((r Xx0) Xv)) ((r Xy0) Xv))->((r Xx0) Xv))))
% Found (fun (Xx0:a) (Xy0:a) (Xz:a) (x2:((and ((r Xx0) Xv)) ((r Xy0) Xv)))=> (((fun (P:Type) (x3:(((r Xx0) Xv)->(((r Xy0) Xv)->P)))=> (((((and_rect ((r Xx0) Xv)) ((r Xy0) Xv)) P) x3) x2)) ((r Xx0) Xv)) (fun (x3:((r Xx0) Xv)) (x4:((r Xy0) Xv))=> x3))) as proof of (forall (Xx0:a) (Xy0:a), (a->(((and ((r Xx0) Xv)) ((r Xy0) Xv))->((r Xx0) Xv))))
% Found x3:((or ((r Xv) Xx0)) ((r Xx0) Xv))
% Found (fun (x4:((or ((r Xv) Xy0)) ((r Xy0) Xv)))=> x3) as proof of ((or ((r Xv) Xx0)) ((r Xx0) Xv))
% Found (fun (x3:((or ((r Xv) Xx0)) ((r Xx0) Xv))) (x4:((or ((r Xv) Xy0)) ((r Xy0) Xv)))=> x3) as proof of (((or ((r Xv) Xy0)) ((r Xy0) Xv))->((or ((r Xv) Xx0)) ((r Xx0) Xv)))
% Found (fun (x3:((or ((r Xv) Xx0)) ((r Xx0) Xv))) (x4:((or ((r Xv) Xy0)) ((r Xy0) Xv)))=> x3) as proof of (((or ((r Xv) Xx0)) ((r Xx0) Xv))->(((or ((r Xv) Xy0)) ((r Xy0) Xv))->((or ((r Xv) Xx0)) ((r Xx0) Xv))))
% Found (and_rect10 (fun (x3:((or ((r Xv) Xx0)) ((r Xx0) Xv))) (x4:((or ((r Xv) Xy0)) ((r Xy0) Xv)))=> x3)) as proof of ((or ((r Xv) Xx0)) ((r Xx0) Xv))
% Found ((and_rect1 ((or ((r Xv) Xx0)) ((r Xx0) Xv))) (fun (x3:((or ((r Xv) Xx0)) ((r Xx0) Xv))) (x4:((or ((r Xv) Xy0)) ((r Xy0) Xv)))=> x3)) as proof of ((or ((r Xv) Xx0)) ((r Xx0) Xv))
% Found (((fun (P:Type) (x3:(((or ((r Xv) Xx0)) ((r Xx0) Xv))->(((or ((r Xv) Xy0)) ((r Xy0) Xv))->P)))=> (((((and_rect ((or ((r Xv) Xx0)) ((r Xx0) Xv))) ((or ((r Xv) Xy0)) ((r Xy0) Xv))) P) x3) x2)) ((or ((r Xv) Xx0)) ((r Xx0) Xv))) (fun (x3:((or ((r Xv) Xx0)) ((r Xx0) Xv))) (x4:((or ((r Xv) Xy0)) ((r Xy0) Xv)))=> x3)) as proof of ((or ((r Xv) Xx0)) ((r Xx0) Xv))
% Found (fun (x2:((and ((or ((r Xv) Xx0)) ((r Xx0) Xv))) ((or ((r Xv) Xy0)) ((r Xy0) Xv))))=> (((fun (P:Type) (x3:(((or ((r Xv) Xx0)) ((r Xx0) Xv))->(((or ((r Xv) Xy0)) ((r Xy0) Xv))->P)))=> (((((and_rect ((or ((r Xv) Xx0)) ((r Xx0) Xv))) ((or ((r Xv) Xy0)) ((r Xy0) Xv))) P) x3) x2)) ((or ((r Xv) Xx0)) ((r Xx0) Xv))) (fun (x3:((or ((r Xv) Xx0)) ((r Xx0) Xv))) (x4:((or ((r Xv) Xy0)) ((r Xy0) Xv)))=> x3))) as proof of ((or ((r Xv) Xx0)) ((r Xx0) Xv))
% Found (fun (Xz:a) (x2:((and ((or ((r Xv) Xx0)) ((r Xx0) Xv))) ((or ((r Xv) Xy0)) ((r Xy0) Xv))))=> (((fun (P:Type) (x3:(((or ((r Xv) Xx0)) ((r Xx0) Xv))->(((or ((r Xv) Xy0)) ((r Xy0) Xv))->P)))=> (((((and_rect ((or ((r Xv) Xx0)) ((r Xx0) Xv))) ((or ((r Xv) Xy0)) ((r Xy0) Xv))) P) x3) x2)) ((or ((r Xv) Xx0)) ((r Xx0) Xv))) (fun (x3:((or ((r Xv) Xx0)) ((r Xx0) Xv))) (x4:((or ((r Xv) Xy0)) ((r Xy0) Xv)))=> x3))) as proof of (((and ((or ((r Xv) Xx0)) ((r Xx0) Xv))) ((or ((r Xv) Xy0)) ((r Xy0) Xv)))->((or ((r Xv) Xx0)) ((r Xx0) Xv)))
% Found (fun (Xy0:a) (Xz:a) (x2:((and ((or ((r Xv) Xx0)) ((r Xx0) Xv))) ((or ((r Xv) Xy0)) ((r Xy0) Xv))))=> (((fun (P:Type) (x3:(((or ((r Xv) Xx0)) ((r Xx0) Xv))->(((or ((r Xv) Xy0)) ((r Xy0) Xv))->P)))=> (((((and_rect ((or ((r Xv) Xx0)) ((r Xx0) Xv))) ((or ((r Xv) Xy0)) ((r Xy0) Xv))) P) x3) x2)) ((or ((r Xv) Xx0)) ((r Xx0) Xv))) (fun (x3:((or ((r Xv) Xx0)) ((r Xx0) Xv))) (x4:((or ((r Xv) Xy0)) ((r Xy0) Xv)))=> x3))) as proof of (a->(((and ((or ((r Xv) Xx0)) ((r Xx0) Xv))) ((or ((r Xv) Xy0)) ((r Xy0) Xv)))->((or ((r Xv) Xx0)) ((r Xx0) Xv))))
% Found (fun (Xx0:a) (Xy0:a) (Xz:a) (x2:((and ((or ((r Xv) Xx0)) ((r Xx0) Xv))) ((or ((r Xv) Xy0)) ((r Xy0) Xv))))=> (((fun (P:Type) (x3:(((or ((r Xv) Xx0)) ((r Xx0) Xv))->(((or ((r Xv) Xy0)) ((r Xy0) Xv))->P)))=> (((((and_rect ((or ((r Xv) Xx0)) ((r Xx0) Xv))) ((or ((r Xv) Xy0)) ((r Xy0) Xv))) P) x3) x2)) ((or ((r Xv) Xx0)) ((r Xx0) Xv))) (fun (x3:((or ((r Xv) Xx0)) ((r Xx0) Xv))) (x4:((or ((r Xv) Xy0)) ((r Xy0) Xv)))=> x3))) as proof of (forall (Xy0:a), (a->(((and ((or ((r Xv) Xx0)) ((r Xx0) Xv))) ((or ((r Xv) Xy0)) ((r Xy0) Xv)))->((or ((r Xv) Xx0)) ((r Xx0) Xv)))))
% Found (fun (Xx0:a) (Xy0:a) (Xz:a) (x2:((and ((or ((r Xv) Xx0)) ((r Xx0) Xv))) ((or ((r Xv) Xy0)) ((r Xy0) Xv))))=> (((fun (P:Type) (x3:(((or ((r Xv) Xx0)) ((r Xx0) Xv))->(((or ((r Xv) Xy0)) ((r Xy0) Xv))->P)))=> (((((and_rect ((or ((r Xv) Xx0)) ((r Xx0) Xv))) ((or ((r Xv) Xy0)) ((r Xy0) Xv))) P) x3) x2)) ((or ((r Xv) Xx0)) ((r Xx0) Xv))) (fun (x3:((or ((r Xv) Xx0)) ((r Xx0) Xv))) (x4:((or ((r Xv) Xy0)) ((r Xy0) Xv)))=> x3))) as proof of (forall (Xx0:a) (Xy0:a), (a->(((and ((or ((r Xv) Xx0)) ((r Xx0) Xv))) ((or ((r Xv) Xy0)) ((r Xy0) Xv)))->((or ((r Xv) Xx0)) ((r Xx0) Xv)))))
% Found x010:(forall (Xv:a) (Xw:a), (((and (Xq Xv)) ((or ((r Xv) Xw)) ((r Xw) Xv)))->(Xq Xw)))
% Found x010 as proof of (forall (Xv:a) (Xw:a), (((and (Xq Xv)) ((or ((r Xv) Xw)) ((r Xw) Xv)))->(Xq Xw)))
% Found x2:((r Xx0) Xy0)
% Instantiate: Xv:=Xx0:a
% Found x2 as proof of ((r Xv) Xy0)
% Found (or_intror00 x2) as proof of ((or ((r Xy0) Xv)) ((r Xv) Xy0))
% Found ((or_intror0 ((r Xv) Xy0)) x2) as proof of ((or ((r Xy0) Xv)) ((r Xv) Xy0))
% Found (((or_intror ((r Xy0) Xv)) ((r Xv) Xy0)) x2) as proof of ((or ((r Xy0) Xv)) ((r Xv) Xy0))
% Found (((or_intror ((r Xy0) Xv)) ((r Xv) Xy0)) x2) as proof of ((or ((r Xy0) Xv)) ((r Xv) Xy0))
% Found (or_comm_i00 (((or_intror ((r Xy0) Xv)) ((r Xv) Xy0)) x2)) as proof of ((or ((r Xv) Xy0)) ((r Xy0) Xv))
% Found ((or_comm_i0 ((r Xv) Xy0)) (((or_intror ((r Xy0) Xv)) ((r Xv) Xy0)) x2)) as proof of ((or ((r Xv) Xy0)) ((r Xy0) Xv))
% Found (((or_comm_i ((r Xy0) Xv)) ((r Xv) Xy0)) (((or_intror ((r Xy0) Xv)) ((r Xv) Xy0)) x2)) as proof of ((or ((r Xv) Xy0)) ((r Xy0) Xv))
% Found (fun (x2:((r Xx0) Xy0))=> (((or_comm_i ((r Xy0) Xv)) ((r Xv) Xy0)) (((or_intror ((r Xy0) Xv)) ((r Xv) Xy0)) x2))) as proof of ((or ((r Xv) Xy0)) ((r Xy0) Xv))
% Found (fun (Xy0:a) (x2:((r Xx0) Xy0))=> (((or_comm_i ((r Xy0) Xv)) ((r Xv) Xy0)) (((or_intror ((r Xy0) Xv)) ((r Xv) Xy0)) x2))) as proof of (((r Xx0) Xy0)->((or ((r Xv) Xy0)) ((r Xy0) Xv)))
% Found x2:((r Xx0) Xy0)
% Instantiate: Xv:=Xx0:a
% Found (fun (x2:((r Xx0) Xy0))=> x2) as proof of ((r Xv) Xy0)
% Found (fun (Xy0:a) (x2:((r Xx0) Xy0))=> x2) as proof of (((r Xx0) Xy0)->((r Xv) Xy0))
% Found x010:(forall (Xv:a) (Xw:a), (((and (Xq Xv)) ((or ((r Xv) Xw)) ((r Xw) Xv)))->(Xq Xw)))
% Found x010 as proof of (forall (Xv:a) (Xw:a), (((and (Xq Xv)) ((or ((r Xv) Xw)) ((r Xw) Xv)))->(Xq Xw)))
% Found x2:((r Xx0) Xy0)
% Instantiate: Xv:=Xy0:a
% Found x2 as proof of ((r Xx0) Xv)
% Found (or_intror00 x2) as proof of ((or ((r Xv) Xx0)) ((r Xx0) Xv))
% Found ((or_intror0 ((r Xx0) Xv)) x2) as proof of ((or ((r Xv) Xx0)) ((r Xx0) Xv))
% Found (((or_intror ((r Xv) Xx0)) ((r Xx0) Xv)) x2) as proof of ((or ((r Xv) Xx0)) ((r Xx0) Xv))
% Found (fun (x2:((r Xx0) Xy0))=> (((or_intror ((r Xv) Xx0)) ((r Xx0) Xv)) x2)) as proof of ((or ((r Xv) Xx0)) ((r Xx0) Xv))
% Found x4:((r Xz) Xv)
% Found (fun (x4:((r Xz) Xv))=> x4) as proof of ((r Xz) Xv)
% Found (fun (x3:((r Xy0) Xv)) (x4:((r Xz) Xv))=> x4) as proof of (((r Xz) Xv)->((r Xz) Xv))
% Found (fun (x3:((r Xy0) Xv)) (x4:((r Xz) Xv))=> x4) as proof of (((r Xy0) Xv)->(((r Xz) Xv)->((r Xz) Xv)))
% Found (and_rect10 (fun (x3:((r Xy0) Xv)) (x4:((r Xz) Xv))=> x4)) as proof of ((r Xz) Xv)
% Found ((and_rect1 ((r Xz) Xv)) (fun (x3:((r Xy0) Xv)) (x4:((r Xz) Xv))=> x4)) as proof of ((r Xz) Xv)
% Found (((fun (P:Type) (x3:(((r Xy0) Xv)->(((r Xz) Xv)->P)))=> (((((and_rect ((r Xy0) Xv)) ((r Xz) Xv)) P) x3) x2)) ((r Xz) Xv)) (fun (x3:((r Xy0) Xv)) (x4:((r Xz) Xv))=> x4)) as proof of ((r Xz) Xv)
% Found (fun (x2:((and ((r Xy0) Xv)) ((r Xz) Xv)))=> (((fun (P:Type) (x3:(((r Xy0) Xv)->(((r Xz) Xv)->P)))=> (((((and_rect ((r Xy0) Xv)) ((r Xz) Xv)) P) x3) x2)) ((r Xz) Xv)) (fun (x3:((r Xy0) Xv)) (x4:((r Xz) Xv))=> x4))) as proof of ((r Xz) Xv)
% Found (fun (Xz:a) (x2:((and ((r Xy0) Xv)) ((r Xz) Xv)))=> (((fun (P:Type) (x3:(((r Xy0) Xv)->(((r Xz) Xv)->P)))=> (((((and_rect ((r Xy0) Xv)) ((r Xz) Xv)) P) x3) x2)) ((r Xz) Xv)) (fun (x3:((r Xy0) Xv)) (x4:((r Xz) Xv))=> x4))) as proof of (((and ((r Xy0) Xv)) ((r Xz) Xv))->((r Xz) Xv))
% Found (fun (Xy0:a) (Xz:a) (x2:((and ((r Xy0) Xv)) ((r Xz) Xv)))=> (((fun (P:Type) (x3:(((r Xy0) Xv)->(((r Xz) Xv)->P)))=> (((((and_rect ((r Xy0) Xv)) ((r Xz) Xv)) P) x3) x2)) ((r Xz) Xv)) (fun (x3:((r Xy0) Xv)) (x4:((r Xz) Xv))=> x4))) as proof of (forall (Xz:a), (((and ((r Xy0) Xv)) ((r Xz) Xv))->((r Xz) Xv)))
% Found (fun (Xx0:a) (Xy0:a) (Xz:a) (x2:((and ((r Xy0) Xv)) ((r Xz) Xv)))=> (((fun (P:Type) (x3:(((r Xy0) Xv)->(((r Xz) Xv)->P)))=> (((((and_rect ((r Xy0) Xv)) ((r Xz) Xv)) P) x3) x2)) ((r Xz) Xv)) (fun (x3:((r Xy0) Xv)) (x4:((r Xz) Xv))=> x4))) as proof of (forall (Xy0:a) (Xz:a), (((and ((r Xy0) Xv)) ((r Xz) Xv))->((r Xz) Xv)))
% Found (fun (Xx0:a) (Xy0:a) (Xz:a) (x2:((and ((r Xy0) Xv)) ((r Xz) Xv)))=> (((fun (P:Type) (x3:(((r Xy0) Xv)->(((r Xz) Xv)->P)))=> (((((and_rect ((r Xy0) Xv)) ((r Xz) Xv)) P) x3) x2)) ((r Xz) Xv)) (fun (x3:((r Xy0) Xv)) (x4:((r Xz) Xv))=> x4))) as proof of (a->(forall (Xy0:a) (Xz:a), (((and ((r Xy0) Xv)) ((r Xz) Xv))->((r Xz) Xv))))
% Found x4:((r Xv) Xz)
% Found (fun (x4:((r Xv) Xz))=> x4) as proof of ((r Xv) Xz)
% Found (fun (x3:((r Xv) Xy0)) (x4:((r Xv) Xz))=> x4) as proof of (((r Xv) Xz)->((r Xv) Xz))
% Found (fun (x3:((r Xv) Xy0)) (x4:((r Xv) Xz))=> x4) as proof of (((r Xv) Xy0)->(((r Xv) Xz)->((r Xv) Xz)))
% Found (and_rect10 (fun (x3:((r Xv) Xy0)) (x4:((r Xv) Xz))=> x4)) as proof of ((r Xv) Xz)
% Found ((and_rect1 ((r Xv) Xz)) (fun (x3:((r Xv) Xy0)) (x4:((r Xv) Xz))=> x4)) as proof of ((r Xv) Xz)
% Found (((fun (P:Type) (x3:(((r Xv) Xy0)->(((r Xv) Xz)->P)))=> (((((and_rect ((r Xv) Xy0)) ((r Xv) Xz)) P) x3) x2)) ((r Xv) Xz)) (fun (x3:((r Xv) Xy0)) (x4:((r Xv) Xz))=> x4)) as proof of ((r Xv) Xz)
% Found (fun (x2:((and ((r Xv) Xy0)) ((r Xv) Xz)))=> (((fun (P:Type) (x3:(((r Xv) Xy0)->(((r Xv) Xz)->P)))=> (((((and_rect ((r Xv) Xy0)) ((r Xv) Xz)) P) x3) x2)) ((r Xv) Xz)) (fun (x3:((r Xv) Xy0)) (x4:((r Xv) Xz))=> x4))) as proof of ((r Xv) Xz)
% Found (fun (Xz:a) (x2:((and ((r Xv) Xy0)) ((r Xv) Xz)))=> (((fun (P:Type) (x3:(((r Xv) Xy0)->(((r Xv) Xz)->P)))=> (((((and_rect ((r Xv) Xy0)) ((r Xv) Xz)) P) x3) x2)) ((r Xv) Xz)) (fun (x3:((r Xv) Xy0)) (x4:((r Xv) Xz))=> x4))) as proof of (((and ((r Xv) Xy0)) ((r Xv) Xz))->((r Xv) Xz))
% Found (fun (Xy0:a) (Xz:a) (x2:((and ((r Xv) Xy0)) ((r Xv) Xz)))=> (((fun (P:Type) (x3:(((r Xv) Xy0)->(((r Xv) Xz)->P)))=> (((((and_rect ((r Xv) Xy0)) ((r Xv) Xz)) P) x3) x2)) ((r Xv) Xz)) (fun (x3:((r Xv) Xy0)) (x4:((r Xv) Xz))=> x4))) as proof of (forall (Xz:a), (((and ((r Xv) Xy0)) ((r Xv) Xz))->((r Xv) Xz)))
% Found (fun (Xx0:a) (Xy0:a) (Xz:a) (x2:((and ((r Xv) Xy0)) ((r Xv) Xz)))=> (((fun (P:Type) (x3:(((r Xv) Xy0)->(((r Xv) Xz)->P)))=> (((((and_rect ((r Xv) Xy0)) ((r Xv) Xz)) P) x3) x2)) ((r Xv) Xz)) (fun (x3:((r Xv) Xy0)) (x4:((r Xv) Xz))=> x4))) as proof of (forall (Xy0:a) (Xz:a), (((and ((r Xv) Xy0)) ((r Xv) Xz))->((r Xv) Xz)))
% Found (fun (Xx0:a) (Xy0:a) (Xz:a) (x2:((and ((r Xv) Xy0)) ((r Xv) Xz)))=> (((fun (P:Type) (x3:(((r Xv) Xy0)->(((r Xv) Xz)->P)))=> (((((and_rect ((r Xv) Xy0)) ((r Xv) Xz)) P) x3) x2)) ((r Xv) Xz)) (fun (x3:((r Xv) Xy0)) (x4:((r Xv) Xz))=> x4))) as proof of (a->(forall (Xy0:a) (Xz:a), (((and ((r Xv) Xy0)) ((r Xv) Xz))->((r Xv) Xz))))
% Found x010:(forall (Xv:a) (Xw:a), (((and (Xq Xv)) ((or ((r Xv) Xw)) ((r Xw) Xv)))->(Xq Xw)))
% Found x010 as proof of (forall (Xv:a) (Xw:a), (((and (Xq Xv)) ((or ((r Xv) Xw)) ((r Xw) Xv)))->(Xq Xw)))
% Found x010:(forall (Xv:a) (Xw:a), (((and (Xq Xv)) ((or ((r Xv) Xw)) ((r Xw) Xv)))->(Xq Xw)))
% Found x010 as proof of (forall (Xv:a) (Xw:a), (((and (Xq Xv)) ((or ((r Xv) Xw)) ((r Xw) Xv)))->(Xq Xw)))
% Found x010:(forall (Xv:a) (Xw:a), (((and (Xq Xv)) ((or ((r Xv) Xw)) ((r Xw) Xv)))->(Xq Xw)))
% Found x010 as proof of (forall (Xv:a) (Xw:a), (((and (Xq Xv)) ((or ((r Xv) Xw)) ((r Xw) Xv)))->(Xq Xw)))
% Found x010:(forall (Xv:a) (Xw:a), (((and (Xq Xv)) ((or ((r Xv) Xw)) ((r Xw) Xv)))->(Xq Xw)))
% Found x010 as proof of (forall (Xv:a) (Xw:a), (((and (Xq Xv)) ((or ((r Xv) Xw)) ((r Xw) Xv)))->(Xq Xw)))
% Found x2:((r Xx0) Xy0)
% Instantiate: Xv:=Xy0:a
% Found x2 as proof of ((r Xx0) Xv)
% Found (or_intror00 x2) as proof of ((or ((r Xv) Xx0)) ((r Xx0) Xv))
% Found ((or_intror0 ((r Xx0) Xv)) x2) as proof of ((or ((r Xv) Xx0)) ((r Xx0) Xv))
% Found (((or_intror ((r Xv) Xx0)) ((r Xx0) Xv)) x2) as proof of ((or ((r Xv) Xx0)) ((r Xx0) Xv))
% Found (((or_intror ((r Xv) Xx0)) ((r Xx0) Xv)) x2) as proof of ((or ((r Xv) Xx0)) ((r Xx0) Xv))
% Found (or_comm_i00 (((or_intror ((r Xv) Xx0)) ((r Xx0) Xv)) x2)) as proof of ((or ((r Xx0) Xv)) ((r Xv) Xx0))
% Found ((or_comm_i0 ((r Xx0) Xv)) (((or_intror ((r Xv) Xx0)) ((r Xx0) Xv)) x2)) as proof of ((or ((r Xx0) Xv)) ((r Xv) Xx0))
% Found (((or_comm_i ((r Xv) Xx0)) ((r Xx0) Xv)) (((or_intror ((r Xv) Xx0)) ((r Xx0) Xv)) x2)) as proof of ((or ((r Xx0) Xv)) ((r Xv) Xx0))
% Found (fun (x2:((r Xx0) Xy0))=> (((or_comm_i ((r Xv) Xx0)) ((r Xx0) Xv)) (((or_intror ((r Xv) Xx0)) ((r Xx0) Xv)) x2))) as proof of ((or ((r Xx0) Xv)) ((r Xv) Xx0))
% Found x2:((r Xx0) Xy0)
% Instantiate: Xv:=Xy0:a
% Found (fun (x2:((r Xx0) Xy0))=> x2) as proof of ((r Xx0) Xv)
% Found x2:((and (Xq Xv0)) ((or ((r Xv0) Xv)) ((r Xv) Xv0)))
% Found (fun (x2:((and (Xq Xv0)) ((or ((r Xv0) Xv)) ((r Xv) Xv0))))=> x2) as proof of ((and (Xq Xv0)) ((or ((r Xv0) Xv)) ((r Xv) Xv0)))
% Found (fun (Xy0:a) (x2:((and (Xq Xv0)) ((or ((r Xv0) Xv)) ((r Xv) Xv0))))=> x2) as proof of (((and (Xq Xv0)) ((or ((r Xv0) Xv)) ((r Xv) Xv0)))->((and (Xq Xv0)) ((or ((r Xv0) Xv)) ((r Xv) Xv0))))
% Found (fun (Xx0:a) (Xy0:a) (x2:((and (Xq Xv0)) ((or ((r Xv0) Xv)) ((r Xv) Xv0))))=> x2) as proof of (a->(((and (Xq Xv0)) ((or ((r Xv0) Xv)) ((r Xv) Xv0)))->((and (Xq Xv0)) ((or ((r Xv0) Xv)) ((r Xv) Xv0)))))
% Found (fun (Xx0:a) (Xy0:a) (x2:((and (Xq Xv0)) ((or ((r Xv0) Xv)) ((r Xv) Xv0))))=> x2) as proof of (a->(a->(((and (Xq Xv0)) ((or ((r Xv0) Xv)) ((r Xv) Xv0)))->((and (Xq Xv0)) ((or ((r Xv0) Xv)) ((r Xv) Xv0))))))
% Found x4:((and (Xq Xv0)) ((or ((r Xv0) Xv)) ((r Xv) Xv0)))
% Found (fun (x4:((and (Xq Xv0)) ((or ((r Xv0) Xv)) ((r Xv) Xv0))))=> x4) as proof of ((and (Xq Xv0)) ((or ((r Xv0) Xv)) ((r Xv) Xv0)))
% Found (fun (x3:((and (Xq Xv0)) ((or ((r Xv0) Xv)) ((r Xv) Xv0)))) (x4:((and (Xq Xv0)) ((or ((r Xv0) Xv)) ((r Xv) Xv0))))=> x4) as proof of (((and (Xq Xv0)) ((or ((r Xv0) Xv)) ((r Xv) Xv0)))->((and (Xq Xv0)) ((or ((r Xv0) Xv)) ((r Xv) Xv0))))
% Found (fun (x3:((and (Xq Xv0)) ((or ((r Xv0) Xv)) ((r Xv) Xv0)))) (x4:((and (Xq Xv0)) ((or ((r Xv0) Xv)) ((r Xv) Xv0))))=> x4) as proof of (((and (Xq Xv0)) ((or ((r Xv0) Xv)) ((r Xv) Xv0)))->(((and (Xq Xv0)) ((or ((r Xv0) Xv)) ((r Xv) Xv0)))->((and (Xq Xv0)) ((or ((r Xv0) Xv)) ((r Xv) Xv0)))))
% Found (and_rect10 (fun (x3:((and (Xq Xv0)) ((or ((r Xv0) Xv)) ((r Xv) Xv0)))) (x4:((and (Xq Xv0)) ((or ((r Xv0) Xv)) ((r Xv) Xv0))))=> x4)) as proof of ((and (Xq Xv0)) ((or ((r Xv0) Xv)) ((r Xv) Xv0)))
% Found ((and_rect1 ((and (Xq Xv0)) ((or ((r Xv0) Xv)) ((r Xv) Xv0)))) (fun (x3:((and (Xq Xv0)) ((or ((r Xv0) Xv)) ((r Xv) Xv0)))) (x4:((and (Xq Xv0)) ((or ((r Xv0) Xv)) ((r Xv) Xv0))))=> x4)) as proof of ((and (Xq Xv0)) ((or ((r Xv0) Xv)) ((r Xv) Xv0)))
% Found (((fun (P:Type) (x3:(((and (Xq Xv0)) ((or ((r Xv0) Xv)) ((r Xv) Xv0)))->(((and (Xq Xv0)) ((or ((r Xv0) Xv)) ((r Xv) Xv0)))->P)))=> (((((and_rect ((and (Xq Xv0)) ((or ((r Xv0) Xv)) ((r Xv) Xv0)))) ((and (Xq Xv0)) ((or ((r Xv0) Xv)) ((r Xv) Xv0)))) P) x3) x2)) ((and (Xq Xv0)) ((or ((r Xv0) Xv)) ((r Xv) Xv0)))) (fun (x3:((and (Xq Xv0)) ((or ((r Xv0) Xv)) ((r Xv) Xv0)))) (x4:((and (Xq Xv0)) ((or ((r Xv0) Xv)) ((r Xv) Xv0))))=> x4)) as proof of ((and (Xq Xv0)) ((or ((r Xv0) Xv)) ((r Xv) Xv0)))
% Found (fun (x2:((and ((and (Xq Xv0)) ((or ((r Xv0) Xv)) ((r Xv) Xv0)))) ((and (Xq Xv0)) ((or ((r Xv0) Xv)) ((r Xv) Xv0)))))=> (((fun (P:Type) (x3:(((and (Xq Xv0)) ((or ((r Xv0) Xv)) ((r Xv) Xv0)))->(((and (Xq Xv0)) ((or ((r Xv0) Xv)) ((r Xv) Xv0)))->P)))=> (((((and_rect ((and (Xq Xv0)) ((or ((r Xv0) Xv)) ((r Xv) Xv0)))) ((and (Xq Xv0)) ((or ((r Xv0) Xv)) ((r Xv) Xv0)))) P) x3) x2)) ((and (Xq Xv0)) ((or ((r Xv0) Xv)) ((r Xv) Xv0)))) (fun (x3:((and (Xq Xv0)) ((or ((r Xv0) Xv)) ((r Xv) Xv0)))) (x4:((and (Xq Xv0)) ((or ((r Xv0) Xv)) ((r Xv) Xv0))))=> x4))) as proof of ((and (Xq Xv0)) ((or ((r Xv0) Xv)) ((r Xv) Xv0)))
% Found (fun (Xz:a) (x2:((and ((and (Xq Xv0)) ((or ((r Xv0) Xv)) ((r Xv) Xv0)))) ((and (Xq Xv0)) ((or ((r Xv0) Xv)) ((r Xv) Xv0)))))=> (((fun (P:Type) (x3:(((and (Xq Xv0)) ((or ((r Xv0) Xv)) ((r Xv) Xv0)))->(((and (Xq Xv0)) ((or ((r Xv0) Xv)) ((r Xv) Xv0)))->P)))=> (((((and_rect ((and (Xq Xv0)) ((or ((r Xv0) Xv)) ((r Xv) Xv0)))) ((and (Xq Xv0)) ((or ((r Xv0) Xv)) ((r Xv) Xv0)))) P) x3) x2)) ((and (Xq Xv0)) ((or ((r Xv0) Xv)) ((r Xv) Xv0)))) (fun (x3:((and (Xq Xv0)) ((or ((r Xv0) Xv)) ((r Xv) Xv0)))) (x4:((and (Xq Xv0)) ((or ((r Xv0) Xv)) ((r Xv) Xv0))))=> x4))) as proof of (((and ((and (Xq Xv0)) ((or ((r Xv0) Xv)) ((r Xv) Xv0)))) ((and (Xq Xv0)) ((or ((r Xv0) Xv)) ((r Xv) Xv0))))->((and (Xq Xv0)) ((or ((r Xv0) Xv)) ((r Xv) Xv0))))
% Found (fun (Xy0:a) (Xz:a) (x2:((and ((and (Xq Xv0)) ((or ((r Xv0) Xv)) ((r Xv) Xv0)))) ((and (Xq Xv0)) ((or ((r Xv0) Xv)) ((r Xv) Xv0)))))=> (((fun (P:Type) (x3:(((and (Xq Xv0)) ((or ((r Xv0) Xv)) ((r Xv) Xv0)))->(((and (Xq Xv0)) ((or ((r Xv0) Xv)) ((r Xv) Xv0)))->P)))=> (((((and_rect ((and (Xq Xv0)) ((or ((r Xv0) Xv)) ((r Xv) Xv0)))) ((and (Xq Xv0)) ((or ((r Xv0) Xv)) ((r Xv) Xv0)))) P) x3) x2)) ((and (Xq Xv0)) ((or ((r Xv0) Xv)) ((r Xv) Xv0)))) (fun (x3:((and (Xq Xv0)) ((or ((r Xv0) Xv)) ((r Xv) Xv0)))) (x4:((and (Xq Xv0)) ((or ((r Xv0) Xv)) ((r Xv) Xv0))))=> x4))) as proof of (a->(((and ((and (Xq Xv0)) ((or ((r Xv0) Xv)) ((r Xv) Xv0)))) ((and (Xq Xv0)) ((or ((r Xv0) Xv)) ((r Xv) Xv0))))->((and (Xq Xv0)) ((or ((r Xv0) Xv)) ((r Xv) Xv0)))))
% Found (fun (Xx0:a) (Xy0:a) (Xz:a) (x2:((and ((and (Xq Xv0)) ((or ((r Xv0) Xv)) ((r Xv) Xv0)))) ((and (Xq Xv0)) ((or ((r Xv0) Xv)) ((r Xv) Xv0)))))=> (((fun (P:Type) (x3:(((and (Xq Xv0)) ((or ((r Xv0) Xv)) ((r Xv) Xv0)))->(((and (Xq Xv0)) ((or ((r Xv0) Xv)) ((r Xv) Xv0)))->P)))=> (((((and_rect ((and (Xq Xv0)) ((or ((r Xv0) Xv)) ((r Xv) Xv0)))) ((and (Xq Xv0)) ((or ((r Xv0) Xv)) ((r Xv) Xv0)))) P) x3) x2)) ((and (Xq Xv0)) ((or ((r Xv0) Xv)) ((r Xv) Xv0)))) (fun (x3:((and (Xq Xv0)) ((or ((r Xv0) Xv)) ((r Xv) Xv0)))) (x4:((and (Xq Xv0)) ((or ((r Xv0) Xv)) ((r Xv) Xv0))))=> x4))) as proof of (a->(a->(((and ((and (Xq Xv0)) ((or ((r Xv0) Xv)) ((r Xv) Xv0)))) ((and (Xq Xv0)) ((or ((r Xv0) Xv)) ((r Xv) Xv0))))->((and (Xq Xv0)) ((or ((r Xv0) Xv)) ((r Xv) Xv0))))))
% Found (fun (Xx0:a) (Xy0:a) (Xz:a) (x2:((and ((and (Xq Xv0)) ((or ((r Xv0) Xv)) ((r Xv) Xv0)))) ((and (Xq Xv0)) ((or ((r Xv0) Xv)) ((r Xv) Xv0)))))=> (((fun (P:Type) (x3:(((and (Xq Xv0)) ((or ((r Xv0) Xv)) ((r Xv) Xv0)))->(((and (Xq Xv0)) ((or ((r Xv0) Xv)) ((r Xv) Xv0)))->P)))=> (((((and_rect ((and (Xq Xv0)) ((or ((r Xv0) Xv)) ((r Xv) Xv0)))) ((and (Xq Xv0)) ((or ((r Xv0) Xv)) ((r Xv) Xv0)))) P) x3) x2)) ((and (Xq Xv0)) ((or ((r Xv0) Xv)) ((r Xv) Xv0)))) (fun (x3:((and (Xq Xv0)) ((or ((r Xv0) Xv)) ((r Xv) Xv0)))) (x4:((and (Xq Xv0)) ((or ((r Xv0) Xv)) ((r Xv) Xv0))))=> x4))) as proof of (a->(a->(a->(((and ((and (Xq Xv0)) ((or ((r Xv0) Xv)) ((r Xv) Xv0)))) ((and (Xq Xv0)) ((or ((r Xv0) Xv)) ((r Xv) Xv0))))->((and (Xq Xv0)) ((or ((r Xv0) Xv)) ((r Xv) Xv0)))))))
% Found x010:(forall (Xv:a) (Xw:a), (((and (Xq Xv)) ((or ((r Xv) Xw)) ((r Xw) Xv)))->(Xq Xw)))
% Found x010 as proof of (forall (Xv:a) (Xw:a), (((and (Xq Xv)) ((or ((r Xv) Xw)) ((r Xw) Xv)))->(Xq Xw)))
% Found x010:(forall (Xv:a) (Xw:a), (((and (Xq Xv)) ((or ((r Xv) Xw)) ((r Xw) Xv)))->(Xq Xw)))
% Found x010 as proof of (forall (Xv:a) (Xw:a), (((and (Xq Xv)) ((or ((r Xv) Xw)) ((r Xw) Xv)))->(Xq Xw)))
% Found x3:((r Xv) Xx0)
% Found (fun (x4:((r Xv) Xy0))=> x3) as proof of ((r Xv) Xx0)
% Found (fun (x3:((r Xv) Xx0)) (x4:((r Xv) Xy0))=> x3) as proof of (((r Xv) Xy0)->((r Xv) Xx0))
% Found (fun (x3:((r Xv) Xx0)) (x4:((r Xv) Xy0))=> x3) as proof of (((r Xv) Xx0)->(((r Xv) Xy0)->((r Xv) Xx0)))
% Found (and_rect10 (fun (x3:((r Xv) Xx0)) (x4:((r Xv) Xy0))=> x3)) as proof of ((r Xv) Xx0)
% Found ((and_rect1 ((r Xv) Xx0)) (fun (x3:((r Xv) Xx0)) (x4:((r Xv) Xy0))=> x3)) as proof of ((r Xv) Xx0)
% Found (((fun (P:Type) (x3:(((r Xv) Xx0)->(((r Xv) Xy0)->P)))=> (((((and_rect ((r Xv) Xx0)) ((r Xv) Xy0)) P) x3) x2)) ((r Xv) Xx0)) (fun (x3:((r Xv) Xx0)) (x4:((r Xv) Xy0))=> x3)) as proof of ((r Xv) Xx0)
% Found (fun (x2:((and ((r Xv) Xx0)) ((r Xv) Xy0)))=> (((fun (P:Type) (x3:(((r Xv) Xx0)->(((r Xv) Xy0)->P)))=> (((((and_rect ((r Xv) Xx0)) ((r Xv) Xy0)) P) x3) x2)) ((r Xv) Xx0)) (fun (x3:((r Xv) Xx0)) (x4:((r Xv) Xy0))=> x3))) as proof of ((r Xv) Xx0)
% Found (fun (Xz:a) (x2:((and ((r Xv) Xx0)) ((r Xv) Xy0)))=> (((fun (P:Type) (x3:(((r Xv) Xx0)->(((r Xv) Xy0)->P)))=> (((((and_rect ((r Xv) Xx0)) ((r Xv) Xy0)) P) x3) x2)) ((r Xv) Xx0)) (fun (x3:((r Xv) Xx0)) (x4:((r Xv) Xy0))=> x3))) as proof of (((and ((r Xv) Xx0)) ((r Xv) Xy0))->((r Xv) Xx0))
% Found (fun (Xy0:a) (Xz:a) (x2:((and ((r Xv) Xx0)) ((r Xv) Xy0)))=> (((fun (P:Type) (x3:(((r Xv) Xx0)->(((r Xv) Xy0)->P)))=> (((((and_rect ((r Xv) Xx0)) ((r Xv) Xy0)) P) x3) x2)) ((r Xv) Xx0)) (fun (x3:((r Xv) Xx0)) (x4:((r Xv) Xy0))=> x3))) as proof of (a->(((and ((r Xv) Xx0)) ((r Xv) Xy0))->((r Xv) Xx0)))
% Found (fun (Xx0:a) (Xy0:a) (Xz:a) (x2:((and ((r Xv) Xx0)) ((r Xv) Xy0)))=> (((fun (P:Type) (x3:(((r Xv) Xx0)->(((r Xv) Xy0)->P)))=> (((((and_rect ((r Xv) Xx0)) ((r Xv) Xy0)) P) x3) x2)) ((r Xv) Xx0)) (fun (x3:((r Xv) Xx0)) (x4:((r Xv) Xy0))=> x3))) as proof of (forall (Xy0:a), (a->(((and ((r Xv) Xx0)) ((r Xv) Xy0))->((r Xv) Xx0))))
% Found (fun (Xx0:a) (Xy0:a) (Xz:a) (x2:((and ((r Xv) Xx0)) ((r Xv) Xy0)))=> (((fun (P:Type) (x3:(((r Xv) Xx0)->(((r Xv) Xy0)->P)))=> (((((and_rect ((r Xv) Xx0)) ((r Xv) Xy0)) P) x3) x2)) ((r Xv) Xx0)) (fun (x3:((r Xv) Xx0)) (x4:((r Xv) Xy0))=> x3))) as proof of (forall (Xx0:a) (Xy0:a), (a->(((and ((r Xv) Xx0)) ((r Xv) Xy0))->((r Xv) Xx0))))
% Found x3:((r Xx0) Xv)
% Found (fun (x4:((r Xy0) Xv))=> x3) as proof of ((r Xx0) Xv)
% Found (fun (x3:((r Xx0) Xv)) (x4:((r Xy0) Xv))=> x3) as proof of (((r Xy0) Xv)->((r Xx0) Xv))
% Found (fun (x3:((r Xx0) Xv)) (x4:((r Xy0) Xv))=> x3) as proof of (((r Xx0) Xv)->(((r Xy0) Xv)->((r Xx0) Xv)))
% Found (and_rect10 (fun (x3:((r Xx0) Xv)) (x4:((r Xy0) Xv))=> x3)) as proof of ((r Xx0) Xv)
% Found ((and_rect1 ((r Xx0) Xv)) (fun (x3:((r Xx0) Xv)) (x4:((r Xy0) Xv))=> x3)) as proof of ((r Xx0) Xv)
% Found (((fun (P:Type) (x3:(((r Xx0) Xv)->(((r Xy0) Xv)->P)))=> (((((and_rect ((r Xx0) Xv)) ((r Xy0) Xv)) P) x3) x2)) ((r Xx0) Xv)) (fun (x3:((r Xx0) Xv)) (x4:((r Xy0) Xv))=> x3)) as proof of ((r Xx0) Xv)
% Found (fun (x2:((and ((r Xx0) Xv)) ((r Xy0) Xv)))=> (((fun (P:Type) (x3:(((r Xx0) Xv)->(((r Xy0) Xv)->P)))=> (((((and_rect ((r Xx0) Xv)) ((r Xy0) Xv)) P) x3) x2)) ((r Xx0) Xv)) (fun (x3:((r Xx0) Xv)) (x4:((r Xy0) Xv))=> x3))) as proof of ((r Xx0) Xv)
% Found (fun (Xz:a) (x2:((and ((r Xx0) Xv)) ((r Xy0) Xv)))=> (((fun (P:Type) (x3:(((r Xx0) Xv)->(((r Xy0) Xv)->P)))=> (((((and_rect ((r Xx0) Xv)) ((r Xy0) Xv)) P) x3) x2)) ((r Xx0) Xv)) (fun (x3:((r Xx0) Xv)) (x4:((r Xy0) Xv))=> x3))) as proof of (((and ((r Xx0) Xv)) ((r Xy0) Xv))->((r Xx0) Xv))
% Found (fun (Xy0:a) (Xz:a) (x2:((and ((r Xx0) Xv)) ((r Xy0) Xv)))=> (((fun (P:Type) (x3:(((r Xx0) Xv)->(((r Xy0) Xv)->P)))=> (((((and_rect ((r Xx0) Xv)) ((r Xy0) Xv)) P) x3) x2)) ((r Xx0) Xv)) (fun (x3:((r Xx0) Xv)) (x4:((r Xy0) Xv))=> x3))) as proof of (a->(((and ((r Xx0) Xv)) ((r Xy0) Xv))->((r Xx0) Xv)))
% Found (fun (Xx0:a) (Xy0:a) (Xz:a) (x2:((and ((r Xx0) Xv)) ((r Xy0) Xv)))=> (((fun (P:Type) (x3:(((r Xx0) Xv)->(((r Xy0) Xv)->P)))=> (((((and_rect ((r Xx0) Xv)) ((r Xy0) Xv)) P) x3) x2)) ((r Xx0) Xv)) (fun (x3:((r Xx0) Xv)) (x4:((r Xy0) Xv))=> x3))) as proof of (forall (Xy0:a), (a->(((and ((r Xx0) Xv)) ((r Xy0) Xv))->((r Xx0) Xv))))
% Found (fun (Xx0:a) (Xy0:a) (Xz:a) (x2:((and ((r Xx0) Xv)) ((r Xy0) Xv)))=> (((fun (P:Type) (x3:(((r Xx0) Xv)->(((r Xy0) Xv)->P)))=> (((((and_rect ((r Xx0) Xv)) ((r Xy0) Xv)) P) x3) x2)) ((r Xx0) Xv)) (fun (x3:((r Xx0) Xv)) (x4:((r Xy0) Xv))=> x3))) as proof of (forall (Xx0:a) (Xy0:a), (a->(((and ((r Xx0) Xv)) ((r Xy0) Xv))->((r Xx0) Xv))))
% Found x2:((r Xx0) Xy0)
% Instantiate: Xv:=Xx0:a
% Found x2 as proof of ((r Xv) Xy0)
% Found (or_introl00 x2) as proof of ((or ((r Xv) Xy0)) ((r Xy0) Xv))
% Found ((or_introl0 ((r Xy0) Xv)) x2) as proof of ((or ((r Xv) Xy0)) ((r Xy0) Xv))
% Found (((or_introl ((r Xv) Xy0)) ((r Xy0) Xv)) x2) as proof of ((or ((r Xv) Xy0)) ((r Xy0) Xv))
% Found (((or_introl ((r Xv) Xy0)) ((r Xy0) Xv)) x2) as proof of ((or ((r Xv) Xy0)) ((r Xy0) Xv))
% Found (or_comm_i10 (((or_introl ((r Xv) Xy0)) ((r Xy0) Xv)) x2)) as proof of ((or ((r Xy0) Xv)) ((r Xv) Xy0))
% Found ((or_comm_i1 ((r Xy0) Xv)) (((or_introl ((r Xv) Xy0)) ((r Xy0) Xv)) x2)) as proof of ((or ((r Xy0) Xv)) ((r Xv) Xy0))
% Found (((or_comm_i ((r Xv) Xy0)) ((r Xy0) Xv)) (((or_introl ((r Xv) Xy0)) ((r Xy0) Xv)) x2)) as proof of ((or ((r Xy0) Xv)) ((r Xv) Xy0))
% Found (fun (x2:((r Xx0) Xy0))=> (((or_comm_i ((r Xv) Xy0)) ((r Xy0) Xv)) (((or_introl ((r Xv) Xy0)) ((r Xy0) Xv)) x2))) as proof of ((or ((r Xy0) Xv)) ((r Xv) Xy0))
% Found (fun (Xy0:a) (x2:((r Xx0) Xy0))=> (((or_comm_i ((r Xv) Xy0)) ((r Xy0) Xv)) (((or_introl ((r Xv) Xy0)) ((r Xy0) Xv)) x2))) as proof of (((r Xx0) Xy0)->((or ((r Xy0) Xv)) ((r Xv) Xy0)))
% Found x21:(Xq Xy0)
% Instantiate: Xv:=Xy0:a
% Found x21 as proof of (Xq Xv)
% Found x21:(Xq Xy0)
% Instantiate: Xv:=Xy0:a
% Found x21 as proof of (Xq Xv)
% Found x010:(forall (Xv:a) (Xw:a), (((and (Xq Xv)) ((or ((r Xv) Xw)) ((r Xw) Xv)))->(Xq Xw)))
% Found x010 as proof of (forall (Xv:a) (Xw:a), (((and (Xq Xv)) ((or ((r Xv) Xw)) ((r Xw) Xv)))->(Xq Xw)))
% Found x010:(forall (Xv:a) (Xw:a), (((and (Xq Xv)) ((or ((r Xv) Xw)) ((r Xw) Xv)))->(Xq Xw)))
% Found x010 as proof of (forall (Xv:a) (Xw:a), (((and (Xq Xv)) ((or ((r Xv) Xw)) ((r Xw) Xv)))->(Xq Xw)))
% Found x2:((r Xx0) Xy0)
% Instantiate: Xv0:=Xx0:a;Xv:=Xy0:a
% Found x2 as proof of ((r Xv0) Xv)
% Found (or_introl00 x2) as proof of ((or ((r Xv0) Xv)) ((r Xv) Xv0))
% Found ((or_introl0 ((r Xv) Xv0)) x2) as proof of ((or ((r Xv0) Xv)) ((r Xv) Xv0))
% Found (((or_introl ((r Xv0) Xv)) ((r Xv) Xv0)) x2) as proof of ((or ((r Xv0) Xv)) ((r Xv) Xv0))
% Found (((or_introl ((r Xv0) Xv)) ((r Xv) Xv0)) x2) as proof of ((or ((r Xv0) Xv)) ((r Xv) Xv0))
% Found x2:((r Xx0) Xy0)
% Instantiate: Xv0:=Xy0:a
% Found x2 as proof of ((r Xv) Xv0)
% Found (or_intror00 x2) as proof of ((or ((r Xv0) Xv)) ((r Xv) Xv0))
% Found ((or_intror0 ((r Xv) Xv0)) x2) as proof of ((or ((r Xv0) Xv)) ((r Xv) Xv0))
% Found (((or_intror ((r Xv0) Xv)) ((r Xv) Xv0)) x2) as proof of ((or ((r Xv0) Xv)) ((r Xv) Xv0))
% Found (((or_intror ((r Xv0) Xv)) ((r Xv) Xv0)) x2) as proof of ((or ((r Xv0) Xv)) ((r Xv) Xv0))
% Found x010:(forall (Xv:a) (Xw:a), (((and (Xq Xv)) ((or ((r Xv) Xw)) ((r Xw) Xv)))->(Xq Xw)))
% Found x010 as proof of (forall (Xv:a) (Xw:a), (((and (Xq Xv)) ((or ((r Xv) Xw)) ((r Xw) Xv)))->(Xq Xw)))
% Found x2:((r Xx0) Xy0)
% Instantiate: Xv:=Xy0:a
% Found x2 as proof of ((r Xx0) Xv)
% Found (or_introl00 x2) as proof of ((or ((r Xx0) Xv)) ((r Xv) Xx0))
% Found ((or_introl0 ((r Xv) Xx0)) x2) as proof of ((or ((r Xx0) Xv)) ((r Xv) Xx0))
% Found (((or_introl ((r Xx0) Xv)) ((r Xv) Xx0)) x2) as proof of ((or ((r Xx0) Xv)) ((r Xv) Xx0))
% Found (((or_introl ((r Xx0) Xv)) ((r Xv) Xx0)) x2) as proof of ((or ((r Xx0) Xv)) ((r Xv) Xx0))
% Found (or_comm_i10 (((or_introl ((r Xx0) Xv)) ((r Xv) Xx0)) x2)) as proof of ((or ((r Xv) Xx0)) ((r Xx0) Xv))
% Found ((or_comm_i1 ((r Xv) Xx0)) (((or_introl ((r Xx0) Xv)) ((r Xv) Xx0)) x2)) as proof of ((or ((r Xv) Xx0)) ((r Xx0) Xv))
% Found (((or_comm_i ((r Xx0) Xv)) ((r Xv) Xx0)) (((or_introl ((r Xx0) Xv)) ((r Xv) Xx0)) x2)) as proof of ((or ((r Xv) Xx0)) ((r Xx0) Xv))
% Found (fun (x2:((r Xx0) Xy0))=> (((or_comm_i ((r Xx0) Xv)) ((r Xv) Xx0)) (((or_introl ((r Xx0) Xv)) ((r Xv) Xx0)) x2))) as proof of ((or ((r Xv) Xx0)) ((r Xx0) Xv))
% Found x010:(forall (Xv:a) (Xw:a), (((and (Xq Xv)) ((or ((r Xv) Xw)) ((r Xw) Xv)))->(Xq Xw)))
% Found x010 as proof of (forall (Xv:a) (Xw:a), (((and (Xq Xv)) ((or ((r Xv) Xw)) ((r Xw) Xv)))->(Xq Xw)))
% Found x010:(forall (Xv:a) (Xw:a), (((and (Xq Xv)) ((or ((r Xv) Xw)) ((r Xw) Xv)))->(Xq Xw)))
% Found x010 as proof of (forall (Xv:a) (Xw:a), (((and (Xq Xv)) ((or ((r Xv) Xw)) ((r Xw) Xv)))->(Xq Xw)))
% Found x010:(forall (Xv:a) (Xw:a), (((and (Xq Xv)) ((or ((r Xv) Xw)) ((r Xw) Xv)))->(Xq Xw)))
% Found x010 as proof of (forall (Xv:a) (Xw:a), (((and (Xq Xv)) ((or ((r Xv) Xw)) ((r Xw) Xv)))->(Xq Xw)))
% Found x010:(forall (Xv:a) (Xw:a), (((and (Xq Xv)) ((or ((r Xv) Xw)) ((r Xw) Xv)))->(Xq Xw)))
% Found x010 as proof of (forall (Xv:a) (Xw:a), (((and (Xq Xv)) ((or ((r Xv) Xw)) ((r Xw) Xv)))->(Xq Xw)))
% Found x2:((r Xx0) Xy0)
% Instantiate: Xv0:=Xy0:a;Xv:=Xx0:a
% Found x2 as proof of ((r Xv) Xv0)
% Found (or_intror00 x2) as proof of ((or ((r Xv0) Xv)) ((r Xv) Xv0))
% Found ((or_intror0 ((r Xv) Xv0)) x2) as proof of ((or ((r Xv0) Xv)) ((r Xv) Xv0))
% Found (((or_intror ((r Xv0) Xv)) ((r Xv) Xv0)) x2) as proof of ((or ((r Xv0) Xv)) ((r Xv) Xv0))
% Found (((or_intror ((r Xv0) Xv)) ((r Xv) Xv0)) x2) as proof of ((or ((r Xv0) Xv)) ((r Xv) Xv0))
% Found x2:((r Xx0) Xy0)
% Instantiate: Xv0:=Xy0:a
% Found x2 as proof of ((r Xv) Xv0)
% Found (or_intror00 x2) as proof of ((or ((r Xv0) Xv)) ((r Xv) Xv0))
% Found ((or_intror0 ((r Xv) Xv0)) x2) as proof of ((or ((r Xv0) Xv)) ((r Xv) Xv0))
% Found (((or_intror ((r Xv0) Xv)) ((r Xv) Xv0)) x2) as proof of ((or ((r Xv0) Xv)) ((r Xv) Xv0))
% Found (((or_intror ((r Xv0) Xv)) ((r Xv) Xv0)) x2) as proof of ((or ((r Xv0) Xv)) ((r Xv) Xv0))
% Found x010:(forall (Xv:a) (Xw:a), (((and (Xq Xv)) ((or ((r Xv) Xw)) ((r Xw) Xv)))->(Xq Xw)))
% Found x010 as proof of (forall (Xv:a) (Xw:a), (((and (Xq Xv)) ((or ((r Xv) Xw)) ((r Xw) Xv)))->(Xq Xw)))
% Found x2:((r Xx0) Xy0)
% Instantiate: Xv0:=Xx0:a;Xv:=Xy0:a
% Found x2 as proof of ((r Xv0) Xv)
% Found (or_introl00 x2) as proof of ((or ((r Xv0) Xv)) ((r Xv) Xv0))
% Found ((or_introl0 ((r Xv) Xv0)) x2) as proof of ((or ((r Xv0) Xv)) ((r Xv) Xv0))
% Found (((or_introl ((r Xv0) Xv)) ((r Xv) Xv0)) x2) as proof of ((or ((r Xv0) Xv)) ((r Xv) Xv0))
% Found (((or_introl ((r Xv0) Xv)) ((r Xv) Xv0)) x2) as proof of ((or ((r Xv0) Xv)) ((r Xv) Xv0))
% Found x2:((r Xx0) Xy0)
% Instantiate: Xv0:=Xy0:a;Xv:=Xx0:a
% Found x2 as proof of ((r Xv) Xv0)
% Found (or_intror00 x2) as proof of ((or ((r Xv0) Xv)) ((r Xv) Xv0))
% Found ((or_intror0 ((r Xv) Xv0)) x2) as proof of ((or ((r Xv0) Xv)) ((r Xv) Xv0))
% Found (((or_intror ((r Xv0) Xv)) ((r Xv) Xv0)) x2) as proof of ((or ((r Xv0) Xv)) ((r Xv) Xv0))
% Found (((or_intror ((r Xv0) Xv)) ((r Xv) Xv0)) x2) as proof of ((or ((r Xv0) Xv)) ((r Xv) Xv0))
% Found x2:((r Xx0) Xy0)
% Instantiate: Xv0:=Xy0:a
% Found x2 as proof of ((r Xv) Xv0)
% Found (or_intror00 x2) as proof of ((or ((r Xv0) Xv)) ((r Xv) Xv0))
% Found ((or_intror0 ((r Xv) Xv0)) x2) as proof of ((or ((r Xv0) Xv)) ((r Xv) Xv0))
% Found (((or_intror ((r Xv0) Xv)) ((r Xv) Xv0)) x2) as proof of ((or ((r Xv0) Xv)) ((r Xv) Xv0))
% Found (((or_intror ((r Xv0) Xv)) ((r Xv) Xv0)) x2) as proof of ((or ((r Xv0) Xv)) ((r Xv) Xv0))
% Found x2:((r Xx0) Xy0)
% Instantiate: Xv0:=Xy0:a
% Found x2 as proof of ((r Xv) Xv0)
% Found (or_intror00 x2) as proof of ((or ((r Xv0) Xv)) ((r Xv) Xv0))
% Found ((or_intror0 ((r Xv) Xv0)) x2) as proof of ((or ((r Xv0) Xv)) ((r Xv) Xv0))
% Found (((or_intror ((r Xv0) Xv)) ((r Xv) Xv0)) x2) as proof of ((or ((r Xv0) Xv)) ((r Xv) Xv0))
% Found (((or_intror ((r Xv0) Xv)) ((r Xv) Xv0)) x2) as proof of ((or ((r Xv0) Xv)) ((r Xv) Xv0))
% Found x2:((r Xx0) Xy0)
% Instantiate: Xv0:=Xy0:a;Xv:=Xx0:a
% Found x2 as proof of ((r Xv) Xv0)
% Found (or_intror00 x2) as proof of ((or ((r Xv0) Xv)) ((r Xv) Xv0))
% Found ((or_intror0 ((r Xv) Xv0)) x2) as proof of ((or ((r Xv0) Xv)) ((r Xv) Xv0))
% Found (((or_intror ((r Xv0) Xv)) ((r Xv) Xv0)) x2) as proof of ((or ((r Xv0) Xv)) ((r Xv) Xv0))
% Found (((or_intror ((r Xv0) Xv)) ((r Xv) Xv0)) x2) as proof of ((or ((r Xv0) Xv)) ((r Xv) Xv0))
% Found x2:((r Xx0) Xy0)
% Instantiate: Xv0:=Xy0:a
% Found x2 as proof of ((r Xv) Xv0)
% Found (or_intror00 x2) as proof of ((or ((r Xv0) Xv)) ((r Xv) Xv0))
% Found ((or_intror0 ((r Xv) Xv0)) x2) as proof of ((or ((r Xv0) Xv)) ((r Xv) Xv0))
% Found (((or_intror ((r Xv0) Xv)) ((r Xv) Xv0)) x2) as proof of ((or ((r Xv0) Xv)) ((r Xv) Xv0))
% Found (((or_intror ((r Xv0) Xv)) ((r Xv) Xv0)) x2) as proof of ((or ((r Xv0) Xv)) ((r Xv) Xv0))
% Found x2:((r Xx0) Xy0)
% Instantiate: Xv0:=Xx0:a;Xv:=Xy0:a
% Found x2 as proof of ((r Xv0) Xv)
% Found (or_introl00 x2) as proof of ((or ((r Xv0) Xv)) ((r Xv) Xv0))
% Found ((or_introl0 ((r Xv) Xv0)) x2) as proof of ((or ((r Xv0) Xv)) ((r Xv) Xv0))
% Found (((or_introl ((r Xv0) Xv)) ((r Xv) Xv0)) x2) as proof of ((or ((r Xv0) Xv)) ((r Xv) Xv0))
% Found (((or_introl ((r Xv0) Xv)) ((r Xv) Xv0)) x2) as proof of ((or ((r Xv0) Xv)) ((r Xv) Xv0))
% Found x2:((r Xx0) Xy0)
% Instantiate: Xv0:=Xx0:a;Xv:=Xy0:a
% Found x2 as proof of ((r Xv0) Xv)
% Found (or_introl00 x2) as proof of ((or ((r Xv0) Xv)) ((r Xv) Xv0))
% Found ((or_introl0 ((r Xv) Xv0)) x2) as proof of ((or ((r Xv0) Xv)) ((r Xv) Xv0))
% Found (((or_introl ((r Xv0) Xv)) ((r Xv) Xv0)) x2) as proof of ((or ((r Xv0) Xv)) ((r Xv) Xv0))
% Found (((or_introl ((r Xv0) Xv)) ((r Xv) Xv0)) x2) as proof of ((or ((r Xv0) Xv)) ((r Xv) Xv0))
% Found x21:(Xq Xy0)
% Instantiate: Xv:=Xy0:a
% Found x21 as proof of (Xq Xv)
% Found x010:(forall (Xv:a) (Xw:a), (((and (Xq Xv)) ((or ((r Xv) Xw)) ((r Xw) Xv)))->(Xq Xw)))
% Found x010 as proof of (forall (Xv:a) (Xw:a), (((and (Xq Xv)) ((or ((r Xv) Xw)) ((r Xw) Xv)))->(Xq Xw)))
% Found x010:(forall (Xv:a) (Xw:a), (((and (Xq Xv)) ((or ((r Xv) Xw)) ((r Xw) Xv)))->(Xq Xw)))
% Found x010 as proof of (forall (Xv:a) (Xw:a), (((and (Xq Xv)) ((or ((r Xv) Xw)) ((r Xw) Xv)))->(Xq Xw)))
% Found x010:(forall (Xv:a) (Xw:a), (((and (Xq Xv)) ((or ((r Xv) Xw)) ((r Xw) Xv)))->(Xq Xw)))
% Found x010 as proof of (forall (Xv:a) (Xw:a), (((and (Xq Xv)) ((or ((r Xv) Xw)) ((r Xw) Xv)))->(Xq Xw)))
% Found x010:(forall (Xv:a) (Xw:a), (((and (Xq Xv)) ((or ((r Xv) Xw)) ((r Xw) Xv)))->(Xq Xw)))
% Found x010 as proof of (forall (Xv:a) (Xw:a), (((and (Xq Xv)) ((or ((r Xv) Xw)) ((r Xw) Xv)))->(Xq Xw)))
% Found x010:(forall (Xv:a) (Xw:a), (((and (Xq Xv)) ((or ((r Xv) Xw)) ((r Xw) Xv)))->(Xq Xw)))
% Found x010 as proof of (forall (Xv:a) (Xw:a), (((and (Xq Xv)) ((or ((r Xv) Xw)) ((r Xw) Xv)))->(Xq Xw)))
% Found x010:(forall (Xv:a) (Xw:a), (((and (Xq Xv)) ((or ((r Xv) Xw)) ((r Xw) Xv)))->(Xq Xw)))
% Found x010 as proof of (forall (Xv:a) (Xw:a), (((and (Xq Xv)) ((or ((r Xv) Xw)) ((r Xw) Xv)))->(Xq Xw)))
% Found x010:(forall (Xv:a) (Xw:a), (((and (Xq Xv)) ((or ((r Xv) Xw)) ((r Xw) Xv)))->(Xq Xw)))
% Found x010 as proof of (forall (Xv:a) (Xw:a), (((and (Xq Xv)) ((or ((r Xv) Xw)) ((r Xw) Xv)))->(Xq Xw)))
% Found x010:(forall (Xv:a) (Xw:a), (((and (Xq Xv)) ((or ((r Xv) Xw)) ((r Xw) Xv)))->(Xq Xw)))
% Found x010 as proof of (forall (Xv:a) (Xw:a), (((and (Xq Xv)) ((or ((r Xv) Xw)) ((r Xw) Xv)))->(Xq Xw)))
% Found x010:(forall (Xv:a) (Xw:a), (((and (Xq Xv)) ((or ((r Xv) Xw)) ((r Xw) Xv)))->(Xq Xw)))
% Found x010 as proof of (forall (Xv:a) (Xw:a), (((and (Xq Xv)) ((or ((r Xv) Xw)) ((r Xw) Xv)))->(Xq Xw)))
% Found x010:(forall (Xv:a) (Xw:a), (((and (Xq Xv)) ((or ((r Xv) Xw)) ((r Xw) Xv)))->(Xq Xw)))
% Found x010 as proof of (forall (Xv:a) (Xw:a), (((and (Xq Xv)) ((or ((r Xv) Xw)) ((r Xw) Xv)))->(Xq Xw)))
% Found x010:(forall (Xv:a) (Xw:a), (((and (Xq Xv)) ((or ((r Xv) Xw)) ((r Xw) Xv)))->(Xq Xw)))
% Found x010 as proof of (forall (Xv:a) (Xw:a), (((and (Xq Xv)) ((or ((r Xv) Xw)) ((r Xw) Xv)))->(Xq Xw)))
% Found x010:(forall (Xv:a) (Xw:a), (((and (Xq Xv)) ((or ((r Xv) Xw)) ((r Xw) Xv)))->(Xq Xw)))
% Found x010 as proof of (forall (Xv:a) (Xw:a), (((and (Xq Xv)) ((or ((r Xv) Xw)) ((r Xw) Xv)))->(Xq Xw)))
% Found x010:(forall (Xv:a) (Xw:a), (((and (Xq Xv)) ((or ((r Xv) Xw)) ((r Xw) Xv)))->(Xq Xw)))
% Found x010 as proof of (forall (Xv:a) (Xw:a), (((and (Xq Xv)) ((or ((r Xv) Xw)) ((r Xw) Xv)))->(Xq Xw)))
% Found x010:(forall (Xv:a) (Xw:a), (((and (Xq Xv)) ((or ((r Xv) Xw)) ((r Xw) Xv)))->(Xq Xw)))
% Found x010 as proof of (forall (Xv:a) (Xw:a), (((and (Xq Xv)) ((or ((r Xv) Xw)) ((r Xw) Xv)))->(Xq Xw)))
% Found x010:(forall (Xv:a) (Xw:a), (((and (Xq Xv)) ((or ((r Xv) Xw)) ((r Xw) Xv)))->(Xq Xw)))
% Found x010 as proof of (forall (Xv:a) (Xw:a), (((and (Xq Xv)) ((or ((r Xv) Xw)) ((r Xw) Xv)))->(Xq Xw)))
% Found x010:(forall (Xv:a) (Xw:a), (((and (Xq Xv)) ((or ((r Xv) Xw)) ((r Xw) Xv)))->(Xq Xw)))
% Found x010 as proof of (forall (Xv:a) (Xw:a), (((and (Xq Xv)) ((or ((r Xv) Xw)) ((r Xw) Xv)))->(Xq Xw)))
% Found x010:(forall (Xv:a) (Xw:a), (((and (Xq Xv)) ((or ((r Xv) Xw)) ((r Xw) Xv)))->(Xq Xw)))
% Found x010 as proof of (forall (Xv:a) (Xw:a), (((and (Xq Xv)) ((or ((r Xv) Xw)) ((r Xw) Xv)))->(Xq Xw)))
% Found x2:((r Xx0) Xy0)
% Instantiate: Xv0:=Xx0:a;Xv:=Xy0:a
% Found x2 as proof of ((r Xv0) Xv)
% Found (or_introl00 x2) as proof of ((or ((r Xv0) Xv)) ((r Xv) Xv0))
% Found ((or_introl0 ((r Xv) Xv0)) x2) as proof of ((or ((r Xv0) Xv)) ((r Xv) Xv0))
% Found (((or_introl ((r Xv0) Xv)) ((r Xv) Xv0)) x2) as proof of ((or ((r Xv0) Xv)) ((r Xv) Xv0))
% Found (((or_introl ((r Xv0) Xv)) ((r Xv) Xv0)) x2) as proof of ((or ((r Xv0) Xv)) ((r Xv) Xv0))
% Found x010:(forall (Xv:a) (Xw:a), (((and (Xq Xv)) ((or ((r Xv) Xw)) ((r Xw) Xv)))->(Xq Xw)))
% Found x010 as proof of (forall (Xv:a) (Xw:a), (((and (Xq Xv)) ((or ((r Xv) Xw)) ((r Xw) Xv)))->(Xq Xw)))
% Found x010:(forall (Xv:a) (Xw:a), (((and (Xq Xv)) ((or ((r Xv) Xw)) ((r Xw) Xv)))->(Xq Xw)))
% Found x010 as proof of (forall (Xv:a) (Xw:a), (((and (Xq Xv)) ((or ((r Xv) Xw)) ((r Xw) Xv)))->(Xq Xw)))
% Found x010:(forall (Xv:a) (Xw:a), (((and (Xq Xv)) ((or ((r Xv) Xw)) ((r Xw) Xv)))->(Xq Xw)))
% Found x010 as proof of (forall (Xv:a) (Xw:a), (((and (Xq Xv)) ((or ((r Xv) Xw)) ((r Xw) Xv)))->(Xq Xw)))
% Found x2:((r Xx0) Xy0)
% Instantiate: Xv0:=Xy0:a
% Found x2 as proof of ((r Xv) Xv0)
% Found (or_intror00 x2) as proof of ((or ((r Xv0) Xv)) ((r Xv) Xv0))
% Found ((or_intror0 ((r Xv) Xv0)) x2) as proof of ((or ((r Xv0) Xv)) ((r Xv) Xv0))
% Found (((or_intror ((r Xv0) Xv)) ((r Xv) Xv0)) x2) as proof of ((or ((r Xv0) Xv)) ((r Xv) Xv0))
% Found (((or_intror ((r Xv0) Xv)) ((r Xv) Xv0)) x2) as proof of ((or ((r Xv0) Xv)) ((r Xv) Xv0))
% Found x010:(forall (Xv:a) (Xw:a), (((and (Xq Xv)) ((or ((r Xv) Xw)) ((r Xw) Xv)))->(Xq Xw)))
% Found x010 as proof of (forall (Xv:a) (Xw:a), (((and (Xq Xv)) ((or ((r Xv) Xw)) ((r Xw) Xv)))->(Xq Xw)))
% Found x21:(Xq Xy0)
% Instantiate: Xv:=Xy0:a
% Found x21 as proof of (Xq Xv)
% Found x21:(Xq Xy0)
% Instantiate: Xv:=Xy0:a
% Found x21 as proof of (Xq Xv)
% Found x010:(forall (Xv:a) (Xw:a), (((and (Xq Xv)) ((or ((r Xv) Xw)) ((r Xw) Xv)))->(Xq Xw)))
% Found x010 as proof of (forall (Xv:a) (Xw:a), (((and (Xq Xv)) ((or ((r Xv) Xw)) ((r Xw) Xv)))->(Xq Xw)))
% Found x21:(Xq Xy0)
% Instantiate: Xv:=Xy0:a
% Found x21 as proof of (Xq Xv)
% Found x010:(forall (Xv:a) (Xw:a), (((and (Xq Xv)) ((or ((r Xv) Xw)) ((r Xw) Xv)))->(Xq Xw)))
% Found x010 as proof of (forall (Xv:a) (Xw:a), (((and (Xq Xv)) ((or ((r Xv) Xw)) ((r Xw) Xv)))->(Xq Xw)))
% Found x010:(forall (Xv:a) (Xw:a), (((and (Xq Xv)) ((or ((r Xv) Xw)) ((r Xw) Xv)))->(Xq Xw)))
% Found x010 as proof of (forall (Xv:a) (Xw:a), (((and (Xq Xv)) ((or ((r Xv) Xw)) ((r Xw) Xv)))->(Xq Xw)))
% Found x2:((or ((r Xv0) Xv)) ((r Xv) Xv0))
% Found (fun (x2:((or ((r Xv0) Xv)) ((r Xv) Xv0)))=> x2) as proof of ((or ((r Xv0) Xv)) ((r Xv) Xv0))
% Found (fun (Xy0:a) (x2:((or ((r Xv0) Xv)) ((r Xv) Xv0)))=> x2) as proof of (((or ((r Xv0) Xv)) ((r Xv) Xv0))->((or ((r Xv0) Xv)) ((r Xv) Xv0)))
% Found (fun (Xx0:a) (Xy0:a) (x2:((or ((r Xv0) Xv)) ((r Xv) Xv0)))=> x2) as proof of (a->(((or ((r Xv0) Xv)) ((r Xv) Xv0))->((or ((r Xv0) Xv)) ((r Xv) Xv0))))
% Found (fun (Xx0:a) (Xy0:a) (x2:((or ((r Xv0) Xv)) ((r Xv) Xv0)))=> x2) as proof of (a->(a->(((or ((r Xv0) Xv)) ((r Xv) Xv0))->((or ((r Xv0) Xv)) ((r Xv) Xv0)))))
% Found x2:(Xq Xv0)
% Found (fun (x2:(Xq Xv0))=> x2) as proof of (Xq Xv0)
% Found (fun (Xy0:a) (x2:(Xq Xv0))=> x2) as proof of ((Xq Xv0)->(Xq Xv0))
% Found (fun (Xx0:a) (Xy0:a) (x2:(Xq Xv0))=> x2) as proof of (a->((Xq Xv0)->(Xq Xv0)))
% Found (fun (Xx0:a) (Xy0:a) (x2:(Xq Xv0))=> x2) as proof of (a->(a->((Xq Xv0)->(Xq Xv0))))
% Found x010:(forall (Xv:a) (Xw:a), (((and (Xq Xv)) ((or ((r Xv) Xw)) ((r Xw) Xv)))->(Xq Xw)))
% Found x010 as proof of (forall (Xv:a) (Xw:a), (((and (Xq Xv)) ((or ((r Xv) Xw)) ((r Xw) Xv)))->(Xq Xw)))
% Found x010:(forall (Xv:a) (Xw:a), (((and (Xq Xv)) ((or ((r Xv) Xw)) ((r Xw) Xv)))->(Xq Xw)))
% Found x010 as proof of (forall (Xv:a) (Xw:a), (((and (Xq Xv)) ((or ((r Xv) Xw)) ((r Xw) Xv)))->(Xq Xw)))
% Found x010:(forall (Xv:a) (Xw:a), (((and (Xq Xv)) ((or ((r Xv) Xw)) ((r Xw) Xv)))->(Xq Xw)))
% Found x010 as proof of (forall (Xv:a) (Xw:a), (((and (Xq Xv)) ((or ((r Xv) Xw)) ((r Xw) Xv)))->(Xq Xw)))
% Found or_intror00:=(or_intror0 ((r Xx0) Xy0)):(((r Xx0) Xy0)->((or ((r Xv0) Xv)) ((r Xx0) Xy0)))
% Found (or_intror0 ((r Xx0) Xy0)) as proof of (((r Xx0) Xy0)->((or ((r Xv0) Xv)) ((r Xv) Xv0)))
% Found ((or_intror ((r Xv0) Xv)) ((r Xx0) Xy0)) as proof of (((r Xx0) Xy0)->((or ((r Xv0) Xv)) ((r Xv) Xv0)))
% Found ((or_intror ((r Xv0) Xv)) ((r Xx0) Xy0)) as proof of (((r Xx0) Xy0)->((or ((r Xv0) Xv)) ((r Xv) Xv0)))
% Found ((or_intror ((r Xv0) Xv)) ((r Xx0) Xy0)) as proof of (((r Xx0) Xy0)->((or ((r Xv0) Xv)) ((r Xv) Xv0)))
% Found or_introl00:=(or_introl0 ((r Xv) Xv0)):(((r Xx0) Xy0)->((or ((r Xx0) Xy0)) ((r Xv) Xv0)))
% Found (or_introl0 ((r Xv) Xv0)) as proof of (((r Xx0) Xy0)->((or ((r Xv0) Xv)) ((r Xv) Xv0)))
% Found ((or_introl ((r Xx0) Xy0)) ((r Xv) Xv0)) as proof of (((r Xx0) Xy0)->((or ((r Xv0) Xv)) ((r Xv) Xv0)))
% Found ((or_introl ((r Xx0) Xy0)) ((r Xv) Xv0)) as proof of (((r Xx0) Xy0)->((or ((r Xv0) Xv)) ((r Xv) Xv0)))
% Found ((or_introl ((r Xx0) Xy0)) ((r Xv) Xv0)) as proof of (((r Xx0) Xy0)->((or ((r Xv0) Xv)) ((r Xv) Xv0)))
% Found or_introl00:=(or_introl0 ((r Xv) Xv0)):(((r Xx0) Xy0)->((or ((r Xx0) Xy0)) ((r Xv) Xv0)))
% Found (or_introl0 ((r Xv) Xv0)) as proof of (((r Xx0) Xy0)->((or ((r Xv0) Xv)) ((r Xv) Xv0)))
% Found ((or_introl ((r Xx0) Xy0)) ((r Xv) Xv0)) as proof of (((r Xx0) Xy0)->((or ((r Xv0) Xv)) ((r Xv) Xv0)))
% Found ((or_introl ((r Xx0) Xy0)) ((r Xv) Xv0)) as proof of (((r Xx0) Xy0)->((or ((r Xv0) Xv)) ((r Xv) Xv0)))
% Found ((or_introl ((r Xx0) Xy0)) ((r Xv) Xv0)) as proof of (((r Xx0) Xy0)->((or ((r Xv0) Xv)) ((r Xv) Xv0)))
% Found or_intror00:=(or_intror0 ((r Xx0) Xy0)):(((r Xx0) Xy0)->((or ((r Xv0) Xv)) ((r Xx0) Xy0)))
% Found (or_intror0 ((r Xx0) Xy0)) as proof of (((r Xx0) Xy0)->((or ((r Xv0) Xv)) ((r Xv) Xv0)))
% Found ((or_intror ((r Xv0) Xv)) ((r Xx0) Xy0)) as proof of (((r Xx0) Xy0)->((or ((r Xv0) Xv)) ((r Xv) Xv0)))
% Found ((or_intror ((r Xv0) Xv)) ((r Xx0) Xy0)) as proof of (((r Xx0) Xy0)->((or ((r Xv0) Xv)) ((r Xv) Xv0)))
% Found ((or_intror ((r Xv0) Xv)) ((r Xx0) Xy0)) as proof of (((r Xx0) Xy0)->((or ((r Xv0) Xv)) ((r Xv) Xv0)))
% Found x010:(forall (Xv:a) (Xw:a), (((and (Xq Xv)) ((or ((r Xv) Xw)) ((r Xw) Xv)))->(Xq Xw)))
% Found x010 as proof of (forall (Xv:a) (Xw:a), (((and (Xq Xv)) ((or ((r Xv) Xw)) ((r Xw) Xv)))->(Xq Xw)))
% Found x010:(forall (Xv:a) (Xw:a), (((and (Xq Xv)) ((or ((r Xv) Xw)) ((r Xw) Xv)))->(Xq Xw)))
% Found x010 as proof of (forall (Xv:a) (Xw:a), (((and (Xq Xv)) ((or ((r Xv) Xw)) ((r Xw) Xv)))->(Xq Xw)))
% Found x010:(forall (Xv:a) (Xw:a), (((and (Xq Xv)) ((or ((r Xv) Xw)) ((r Xw) Xv)))->(Xq Xw)))
% Found x010 as proof of (forall (Xv:a) (Xw:a), (((and (Xq Xv)) ((or ((r Xv) Xw)) ((r Xw) Xv)))->(Xq Xw)))
% Found x010:(forall (Xv:a) (Xw:a), (((and (Xq Xv)) ((or ((r Xv) Xw)) ((r Xw) Xv)))->(Xq Xw)))
% Found x010 as proof of (forall (Xv:a) (Xw:a), (((and (Xq Xv)) ((or ((r Xv) Xw)) ((r Xw) Xv)))->(Xq Xw)))
% Found x010:(forall (Xv:a) (Xw:a), (((and (Xq Xv)) ((or ((r Xv) Xw)) ((r Xw) Xv)))->(Xq Xw)))
% Found x010 as proof of (forall (Xv:a) (Xw:a), (((and (Xq Xv)) ((or ((r Xv) Xw)) ((r Xw) Xv)))->(Xq Xw)))
% Found x010:(forall (Xv:a) (Xw:a), (((and (Xq Xv)) ((or ((r Xv) Xw)) ((r Xw) Xv)))->(Xq Xw)))
% Found x010 as proof of (forall (Xv:a) (Xw:a), (((and (Xq Xv)) ((or ((r Xv) Xw)) ((r Xw) Xv)))->(Xq Xw)))
% Found x010:(forall (Xv:a) (Xw:a), (((and (Xq Xv)) ((or ((r Xv) Xw)) ((r Xw) Xv)))->(Xq Xw)))
% Found x010 as proof of (forall (Xv:a) (Xw:a), (((and (Xq Xv)) ((or ((r Xv) Xw)) ((r Xw) Xv)))->(Xq Xw)))
% Found x010:(forall (Xv:a) (Xw:a), (((and (Xq Xv)) ((or ((r Xv) Xw)) ((r Xw) Xv)))->(Xq Xw)))
% Found x010 as proof of (forall (Xv:a) (Xw:a), (((and (Xq Xv)) ((or ((r Xv) Xw)) ((r Xw) Xv)))->(Xq Xw)))
% Found x4:((or ((r Xv0) Xv)) ((r Xv) Xv0))
% Found (fun (x4:((or ((r Xv0) Xv)) ((r Xv) Xv0)))=> x4) as proof of ((or ((r Xv0) Xv)) ((r Xv) Xv0))
% Found (fun (x3:((or ((r Xv0) Xv)) ((r Xv) Xv0))) (x4:((or ((r Xv0) Xv)) ((r Xv) Xv0)))=> x4) as proof of (((or ((r Xv0) Xv)) ((r Xv) Xv0))->((or ((r Xv0) Xv)) ((r Xv) Xv0)))
% Found (fun (x3:((or ((r Xv0) Xv)) ((r Xv) Xv0))) (x4:((or ((r Xv0) Xv)) ((r Xv) Xv0)))=> x4) as proof of (((or ((r Xv0) Xv)) ((r Xv) Xv0))->(((or ((r Xv0) Xv)) ((r Xv) Xv0))->((or ((r Xv0) Xv)) ((r Xv) Xv0))))
% Found (and_rect10 (fun (x3:((or ((r Xv0) Xv)) ((r Xv) Xv0))) (x4:((or ((r Xv0) Xv)) ((r Xv) Xv0)))=> x4)) as proof of ((or ((r Xv0) Xv)) ((r Xv) Xv0))
% Found ((and_rect1 ((or ((r Xv0) Xv)) ((r Xv) Xv0))) (fun (x3:((or ((r Xv0) Xv)) ((r Xv) Xv0))) (x4:((or ((r Xv0) Xv)) ((r Xv) Xv0)))=> x4)) as proof of ((or ((r Xv0) Xv)) ((r Xv) Xv0))
% Found (((fun (P:Type) (x3:(((or ((r Xv0) Xv)) ((r Xv) Xv0))->(((or ((r Xv0) Xv)) ((r Xv) Xv0))->P)))=> (((((and_rect ((or ((r Xv0) Xv)) ((r Xv) Xv0))) ((or ((r Xv0) Xv)) ((r Xv) Xv0))) P) x3) x2)) ((or ((r Xv0) Xv)) ((r Xv) Xv0))) (fun (x3:((or ((r Xv0) Xv)) ((r Xv) Xv0))) (x4:((or ((r Xv0) Xv)) ((r Xv) Xv0)))=> x4)) as proof of ((or ((r Xv0) Xv)) ((r Xv) Xv0))
% Found (fun (x2:((and ((or ((r Xv0) Xv)) ((r Xv) Xv0))) ((or ((r Xv0) Xv)) ((r Xv) Xv0))))=> (((fun (P:Type) (x3:(((or ((r Xv0) Xv)) ((r Xv) Xv0))->(((or ((r Xv0) Xv)) ((r Xv) Xv0))->P)))=> (((((and_rect ((or ((r Xv0) Xv)) ((r Xv) Xv0))) ((or ((r Xv0) Xv)) ((r Xv) Xv0))) P) x3) x2)) ((or ((r Xv0) Xv)) ((r Xv) Xv0))) (fun (x3:((or ((r Xv0) Xv)) ((r Xv) Xv0))) (x4:((or ((r Xv0) Xv)) ((r Xv) Xv0)))=> x4))) as proof of ((or ((r Xv0) Xv)) ((r Xv) Xv0))
% Found (fun (Xz:a) (x2:((and ((or ((r Xv0) Xv)) ((r Xv) Xv0))) ((or ((r Xv0) Xv)) ((r Xv) Xv0))))=> (((fun (P:Type) (x3:(((or ((r Xv0) Xv)) ((r Xv) Xv0))->(((or ((r Xv0) Xv)) ((r Xv) Xv0))->P)))=> (((((and_rect ((or ((r Xv0) Xv)) ((r Xv) Xv0))) ((or ((r Xv0) Xv)) ((r Xv) Xv0))) P) x3) x2)) ((or ((r Xv0) Xv)) ((r Xv) Xv0))) (fun (x3:((or ((r Xv0) Xv)) ((r Xv) Xv0))) (x4:((or ((r Xv0) Xv)) ((r Xv) Xv0)))=> x4))) as proof of (((and ((or ((r Xv0) Xv)) ((r Xv) Xv0))) ((or ((r Xv0) Xv)) ((r Xv) Xv0)))->((or ((r Xv0) Xv)) ((r Xv) Xv0)))
% Found (fun (Xy0:a) (Xz:a) (x2:((and ((or ((r Xv0) Xv)) ((r Xv) Xv0))) ((or ((r Xv0) Xv)) ((r Xv) Xv0))))=> (((fun (P:Type) (x3:(((or ((r Xv0) Xv)) ((r Xv) Xv0))->(((or ((r Xv0) Xv)) ((r Xv) Xv0))->P)))=> (((((and_rect ((or ((r Xv0) Xv)) ((r Xv) Xv0))) ((or ((r Xv0) Xv)) ((r Xv) Xv0))) P) x3) x2)) ((or ((r Xv0) Xv)) ((r Xv) Xv0))) (fun (x3:((or ((r Xv0) Xv)) ((r Xv) Xv0))) (x4:((or ((r Xv0) Xv)) ((r Xv) Xv0)))=> x4))) as proof of (a->(((and ((or ((r Xv0) Xv)) ((r Xv) Xv0))) ((or ((r Xv0) Xv)) ((r Xv) Xv0)))->((or ((r Xv0) Xv)) ((r Xv) Xv0))))
% Found (fun (Xx0:a) (Xy0:a) (Xz:a) (x2:((and ((or ((r Xv0) Xv)) ((r Xv) Xv0))) ((or ((r Xv0) Xv)) ((r Xv) Xv0))))=> (((fun (P:Type) (x3:(((or ((r Xv0) Xv)) ((r Xv) Xv0))->(((or ((r Xv0) Xv)) ((r Xv) Xv0))->P)))=> (((((and_rect ((or ((r Xv0) Xv)) ((r Xv) Xv0))) ((or ((r Xv0) Xv)) ((r Xv) Xv0))) P) x3) x2)) ((or ((r Xv0) Xv)) ((r Xv) Xv0))) (fun (x3:((or ((r Xv0) Xv)) ((r Xv) Xv0))) (x4:((or ((r Xv0) Xv)) ((r Xv) Xv0)))=> x4))) as proof of (a->(a->(((and ((or ((r Xv0) Xv)) ((r Xv) Xv0))) ((or ((r Xv0) Xv)) ((r Xv) Xv0)))->((or ((r Xv0) Xv)) ((r Xv) Xv0)))))
% Found (fun (Xx0:a) (Xy0:a) (Xz:a) (x2:((and ((or ((r Xv0) Xv)) ((r Xv) Xv0))) ((or ((r Xv0) Xv)) ((r Xv) Xv0))))=> (((fun (P:Type) (x3:(((or ((r Xv0) Xv)) ((r Xv) Xv0))->(((or ((r Xv0) Xv)) ((r Xv) Xv0))->P)))=> (((((and_rect ((or ((r Xv0) Xv)) ((r Xv) Xv0))) ((or ((r Xv0) Xv)) ((r Xv) Xv0))) P) x3) x2)) ((or ((r Xv0) Xv)) ((r Xv) Xv0))) (fun (x3:((or ((r Xv0) Xv)) ((r Xv) Xv0))) (x4:((or ((r Xv0) Xv)) ((r Xv) Xv0)))=> x4))) as proof of (a->(a->(a->(((and ((or ((r Xv0) Xv)) ((r Xv) Xv0))) ((or ((r Xv0) Xv)) ((r Xv) Xv0)))->((or ((r Xv0) Xv)) ((r Xv) Xv0))))))
% Found x2:((r Xx0) Xy0)
% Instantiate: Xv0:=Xx0:a;Xv:=Xy0:a
% Found x2 as proof of ((r Xv0) Xv)
% Found (or_introl00 x2) as proof of ((or ((r Xv0) Xv)) ((r Xv) Xv0))
% Found ((or_introl0 ((r Xv) Xv0)) x2) as proof of ((or ((r Xv0) Xv)) ((r Xv) Xv0))
% Found (((or_introl ((r Xv0) Xv)) ((r Xv) Xv0)) x2) as proof of ((or ((r Xv0) Xv)) ((r Xv) Xv0))
% Found (fun (x2:((r Xx0) Xy0))=> (((or_introl ((r Xv0) Xv)) ((r Xv) Xv0)) x2)) as proof of ((or ((r Xv0) Xv)) ((r Xv) Xv0))
% Found x2:((r Xx0) Xy0)
% Instantiate: Xv0:=Xy0:a;Xv:=Xx0:a
% Found x2 as proof of ((r Xv) Xv0)
% Found (or_intror00 x2) as proof of ((or ((r Xv0) Xv)) ((r Xv) Xv0))
% Found ((or_intror0 ((r Xv) Xv0)) x2) as proof of ((or ((r Xv0) Xv)) ((r Xv) Xv0))
% Found (((or_intror ((r Xv0) Xv)) ((r Xv) Xv0)) x2) as proof of ((or ((r Xv0) Xv)) ((r Xv) Xv0))
% Found (fun (x2:((r Xx0) Xy0))=> (((or_intror ((r Xv0) Xv)) ((r Xv) Xv0)) x2)) as proof of ((or ((r Xv0) Xv)) ((r Xv) Xv0))
% Found x4:(Xq Xv0)
% Found (fun (x4:(Xq Xv0))=> x4) as proof of (Xq Xv0)
% Found (fun (x3:(Xq Xv0)) (x4:(Xq Xv0))=> x4) as proof of ((Xq Xv0)->(Xq Xv0))
% Found (fun (x3:(Xq Xv0)) (x4:(Xq Xv0))=> x4) as proof of ((Xq Xv0)->((Xq Xv0)->(Xq Xv0)))
% Found (and_rect10 (fun (x3:(Xq Xv0)) (x4:(Xq Xv0))=> x4)) as proof of (Xq Xv0)
% Found ((and_rect1 (Xq Xv0)) (fun (x3:(Xq Xv0)) (x4:(Xq Xv0))=> x4)) as proof of (Xq Xv0)
% Found (((fun (P:Type) (x3:((Xq Xv0)->((Xq Xv0)->P)))=> (((((and_rect (Xq Xv0)) (Xq Xv0)) P) x3) x2)) (Xq Xv0)) (fun (x3:(Xq Xv0)) (x4:(Xq Xv0))=> x4)) as proof of (Xq Xv0)
% Found (fun (x2:((and (Xq Xv0)) (Xq Xv0)))=> (((fun (P:Type) (x3:((Xq Xv0)->((Xq Xv0)->P)))=> (((((and_rect (Xq Xv0)) (Xq Xv0)) P) x3) x2)) (Xq Xv0)) (fun (x3:(Xq Xv0)) (x4:(Xq Xv0))=> x4))) as proof of (Xq Xv0)
% Found (fun (Xz:a) (x2:((and (Xq Xv0)) (Xq Xv0)))=> (((fun (P:Type) (x3:((Xq Xv0)->((Xq Xv0)->P)))=> (((((and_rect (Xq Xv0)) (Xq Xv0)) P) x3) x2)) (Xq Xv0)) (fun (x3:(Xq Xv0)) (x4:(Xq Xv0))=> x4))) as proof of (((and (Xq Xv0)) (Xq Xv0))->(Xq Xv0))
% Found (fun (Xy0:a) (Xz:a) (x2:((and (Xq Xv0)) (Xq Xv0)))=> (((fun (P:Type) (x3:((Xq Xv0)->((Xq Xv0)->P)))=> (((((and_rect (Xq Xv0)) (Xq Xv0)) P) x3) x2)) (Xq Xv0)) (fun (x3:(Xq Xv0)) (x4:(Xq Xv0))=> x4))) as proof of (a->(((and (Xq Xv0)) (Xq Xv0))->(Xq Xv0)))
% Found (fun (Xx0:a) (Xy0:a) (Xz:a) (x2:((and (Xq Xv0)) (Xq Xv0)))=> (((fun (P:Type) (x3:((Xq Xv0)->((Xq Xv0)->P)))=> (((((and_rect (Xq Xv0)) (Xq Xv0)) P) x3) x2)) (Xq Xv0)) (fun (x3:(Xq Xv0)) (x4:(Xq Xv0))=> x4))) as proof of (a->(a->(((and (Xq Xv0)) (Xq Xv0))->(Xq Xv0))))
% Found (fun (Xx0:a) (Xy0:a) (Xz:a) (x2:((and (Xq Xv0)) (Xq Xv0)))=> (((fun (P:Type) (x3:((Xq Xv0)->((Xq Xv0)->P)))=> (((((and_rect (Xq Xv0)) (Xq Xv0)) P) x3) x2)) (Xq Xv0)) (fun (x3:(Xq Xv0)) (x4:(Xq Xv0))=> x4))) as proof of (a->(a->(a->(((and (Xq Xv0)) (Xq Xv0))->(Xq Xv0)))))
% Found x010:(forall (Xv:a) (Xw:a), (((and (Xq Xv)) ((or ((r Xv) Xw)) ((r Xw) Xv)))->(Xq Xw)))
% Found x010 as proof of (forall (Xv:a) (Xw:a), (((and (Xq Xv)) ((or ((r Xv) Xw)) ((r Xw) Xv)))->(Xq Xw)))
% Found x010:(forall (Xv:a) (Xw:a), (((and (Xq Xv)) ((or ((r Xv) Xw)) ((r Xw) Xv)))->(Xq Xw)))
% Found x010 as proof of (forall (Xv:a) (Xw:a), (((and (Xq Xv)) ((or ((r Xv) Xw)) ((r Xw) Xv)))->(Xq Xw)))
% Found x010:(forall (Xv:a) (Xw:a), (((and (Xq Xv)) ((or ((r Xv) Xw)) ((r Xw) Xv)))->(Xq Xw)))
% Found x010 as proof of (forall (Xv:a) (Xw:a), (((and (Xq Xv)) ((or ((r Xv) Xw)) ((r Xw) Xv)))->(Xq Xw)))
% Found x010:(forall (Xv:a) (Xw:a), (((and (Xq Xv)) ((or ((r Xv) Xw)) ((r Xw) Xv)))->(Xq Xw)))
% Found x010 as proof of (forall (Xv:a) (Xw:a), (((and (Xq Xv)) ((or ((r Xv) Xw)) ((r Xw) Xv)))->(Xq Xw)))
% Found x010:(forall (Xv:a) (Xw:a), (((and (Xq Xv)) ((or ((r Xv) Xw)) ((r Xw) Xv)))->(Xq Xw)))
% Found x010 as proof of (forall (Xv:a) (Xw:a), (((and (Xq Xv)) ((or ((r Xv) Xw)) ((r Xw) Xv)))->(Xq Xw)))
% Found x010:(forall (Xv:a) (Xw:a), (((and (Xq Xv)) ((or ((r Xv) Xw)) ((r Xw) Xv)))->(Xq Xw)))
% Found x010 as proof of (forall (Xv:a) (Xw:a), (((and (Xq Xv)) ((or ((r Xv) Xw)) ((r Xw) Xv)))->(Xq Xw)))
% Found x010:(forall (Xv:a) (Xw:a), (((and (Xq Xv)) ((or ((r Xv) Xw)) ((r Xw) Xv)))->(Xq Xw)))
% Found x010 as proof of (forall (Xv:a) (Xw:a), (((and (Xq Xv)) ((or ((r Xv) Xw)) ((r Xw) Xv)))->(Xq Xw)))
% Found x010:(forall (Xv:a) (Xw:a), (((and (Xq Xv)) ((or ((r Xv) Xw)) ((r Xw) Xv)))->(Xq Xw)))
% Found x010 as proof of (forall (Xv:a) (Xw:a), (((and (Xq Xv)) ((or ((r Xv) Xw)) ((r Xw) Xv)))->(Xq Xw)))
% Found x010:(forall (Xv:a) (Xw:a), (((and (Xq Xv)) ((or ((r Xv) Xw)) ((r Xw) Xv)))->(Xq Xw)))
% Found x010 as proof of (forall (Xv:a) (Xw:a), (((and (Xq Xv)) ((or ((r Xv) Xw)) ((r Xw) Xv)))->(Xq Xw)))
% Found x010:(forall (Xv:a) (Xw:a), (((and (Xq Xv)) ((or ((r Xv) Xw)) ((r Xw) Xv)))->(Xq Xw)))
% Found x010 as proof of (forall (Xv:a) (Xw:a), (((and (Xq Xv)) ((or ((r Xv) Xw)) ((r Xw) Xv)))->(Xq Xw)))
% Found x010:(forall (Xv:a) (Xw:a), (((and (Xq Xv)) ((or ((r Xv) Xw)) ((r Xw) Xv)))->(Xq Xw)))
% Found x010 as proof of (forall (Xv:a) (Xw:a), (((and (Xq Xv)) ((or ((r Xv) Xw)) ((r Xw) Xv)))->(Xq Xw)))
% Found or_comm_i00:=(or_comm_i0 ((r Xv0) Xv)):(((or ((r Xv) Xv0)) ((r Xv0) Xv))->((or ((r Xv0) Xv)) ((r Xv) Xv0)))
% Instantiate: Xv:=Xv0:a
% Found (fun (Xy0:a)=> or_comm_i00) as proof of (((or ((r Xv) Xv0)) ((r Xv0) Xv))->((or ((r Xv) Xv0)) ((r Xv0) Xv)))
% Found (fun (Xx0:a) (Xy0:a)=> or_comm_i00) as proof of (a->(((or ((r Xv) Xv0)) ((r Xv0) Xv))->((or ((r Xv) Xv0)) ((r Xv0) Xv))))
% Found (fun (Xx0:a) (Xy0:a)=> or_comm_i00) as proof of (a->(a->(((or ((r Xv) Xv0)) ((r Xv0) Xv))->((or ((r Xv) Xv0)) ((r Xv0) Xv)))))
% Found x010:(forall (Xv:a) (Xw:a), (((and (Xq Xv)) ((or ((r Xv) Xw)) ((r Xw) Xv)))->(Xq Xw)))
% Found x010 as proof of (forall (Xv:a) (Xw:a), (((and (Xq Xv)) ((or ((r Xv) Xw)) ((r Xw) Xv)))->(Xq Xw)))
% Found x010:(forall (Xv:a) (Xw:a), (((and (Xq Xv)) ((or ((r Xv) Xw)) ((r Xw) Xv)))->(Xq Xw)))
% Found x010 as proof of (forall (Xv:a) (Xw:a), (((and (Xq Xv)) ((or ((r Xv) Xw)) ((r Xw) Xv)))->(Xq Xw)))
% Found x010:(forall (Xv:a) (Xw:a), (((and (Xq Xv)) ((or ((r Xv) Xw)) ((r Xw) Xv)))->(Xq Xw)))
% Found x010 as proof of (forall (Xv:a) (Xw:a), (((and (Xq Xv)) ((or ((r Xv) Xw)) ((r Xw) Xv)))->(Xq Xw)))
% Found x010:(forall (Xv:a) (Xw:a), (((and (Xq Xv)) ((or ((r Xv) Xw)) ((r Xw) Xv)))->(Xq Xw)))
% Found x010 as proof of (forall (Xv:a) (Xw:a), (((and (Xq Xv)) ((or ((r Xv) Xw)) ((r Xw) Xv)))->(Xq Xw)))
% Found x010:(forall (Xv:a) (Xw:a), (((and (Xq Xv)) ((or ((r Xv) Xw)) ((r Xw) Xv)))->(Xq Xw)))
% Found x010 as proof of (forall (Xv:a) (Xw:a), (((and (Xq Xv)) ((or ((r Xv) Xw)) ((r Xw) Xv)))->(Xq Xw)))
% Found x010:(forall (Xv:a) (Xw:a), (((and (Xq Xv)) ((or ((r Xv) Xw)) ((r Xw) Xv)))->(Xq Xw)))
% Found x010 as proof of (forall (Xv:a) (Xw:a), (((and (Xq Xv)) ((or ((r Xv) Xw)) ((r Xw) Xv)))->(Xq Xw)))
% Found x010:(forall (Xv:a) (Xw:a), (((and (Xq Xv)) ((or ((r Xv) Xw)) ((r Xw) Xv)))->(Xq Xw)))
% Found x010 as proof of (forall (Xv:a) (Xw:a), (((and (Xq Xv)) ((or ((r Xv) Xw)) ((r Xw) Xv)))->(Xq Xw)))
% Found x010:(forall (Xv:a) (Xw:a), (((and (Xq Xv)) ((or ((r Xv) Xw)) ((r Xw) Xv)))->(Xq Xw)))
% Found x010 as proof of (forall (Xv:a) (Xw:a), (((and (Xq Xv)) ((or ((r Xv) Xw)) ((r Xw) Xv)))->(Xq Xw)))
% Found x010:(forall (Xv:a) (Xw:a), (((and (Xq Xv)) ((or ((r Xv) Xw)) ((r Xw) Xv)))->(Xq Xw)))
% Found x010 as proof of (forall (Xv:a) (Xw:a), (((and (Xq Xv)) ((or ((r Xv) Xw)) ((r Xw) Xv)))->(Xq Xw)))
% Found x010:(forall (Xv:a) (Xw:a), (((and (Xq Xv)) ((or ((r Xv) Xw)) ((r Xw) Xv)))->(Xq Xw)))
% Found x010 as proof of (forall (Xv:a) (Xw:a), (((and (Xq Xv)) ((or ((r Xv) Xw)) ((r Xw) Xv)))->(Xq Xw)))
% Found x010:(forall (Xv:a) (Xw:a), (((and (Xq Xv)) ((or ((r Xv) Xw)) ((r Xw) Xv)))->(Xq Xw)))
% Found x010 as proof of (forall (Xv:a) (Xw:a), (((and (Xq Xv)) ((or ((r Xv) Xw)) ((r Xw) Xv)))->(Xq Xw)))
% Found x010:(forall (Xv:a) (Xw:a), (((and (Xq Xv)) ((or ((r Xv) Xw)) ((r Xw) Xv)))->(Xq Xw)))
% Found x010 as proof of (forall (Xv:a) (Xw:a), (((and (Xq Xv)) ((or ((r Xv) Xw)) ((r Xw) Xv)))->(Xq Xw)))
% Found x010:(forall (Xv:a) (Xw:a), (((and (Xq Xv)) ((or ((r Xv) Xw)) ((r Xw) Xv)))->(Xq Xw)))
% Found x010 as proof of (forall (Xv:a) (Xw:a), (((and (Xq Xv)) ((or ((r Xv) Xw)) ((r Xw) Xv)))->(Xq Xw)))
% Found x010:(forall (Xv:a) (Xw:a), (((and (Xq Xv)) ((or ((r Xv) Xw)) ((r Xw) Xv)))->(Xq Xw)))
% Found x010 as proof of (forall (Xv:a) (Xw:a), (((and (Xq Xv)) ((or ((r Xv) Xw)) ((r Xw) Xv)))->(Xq Xw)))
% Found x010:(forall (Xv:a) (Xw:a), (((and (Xq Xv)) ((or ((r Xv) Xw)) ((r Xw) Xv)))->(Xq Xw)))
% Found x010 as proof of (forall (Xv:a) (Xw:a), (((and (Xq Xv)) ((or ((r Xv) Xw)) ((r Xw) Xv)))->(Xq Xw)))
% Found x010:(forall (Xv:a) (Xw:a), (((and (Xq Xv)) ((or ((r Xv) Xw)) ((r Xw) Xv)))->(Xq Xw)))
% Found x010 as proof of (forall (Xv:a) (Xw:a), (((and (Xq Xv)) ((or ((r Xv) Xw)) ((r Xw) Xv)))->(Xq Xw)))
% Found x010:(forall (Xv:a) (Xw:a), (((and (Xq Xv)) ((or ((r Xv) Xw)) ((r Xw) Xv)))->(Xq Xw)))
% Found x010 as proof of (forall (Xv:a) (Xw:a), (((and (Xq Xv)) ((or ((r Xv) Xw)) ((r Xw) Xv)))->(Xq Xw)))
% Found x010:(forall (Xv:a) (Xw:a), (((and (Xq Xv)) ((or ((r Xv) Xw)) ((r Xw) Xv)))->(Xq Xw)))
% Found x010 as proof of (forall (Xv:a) (Xw:a), (((and (Xq Xv)) ((or ((r Xv) Xw)) ((r Xw) Xv)))->(Xq Xw)))
% Found x010:(forall (Xv:a) (Xw:a), (((and (Xq Xv)) ((or ((r Xv) Xw)) ((r Xw) Xv)))->(Xq Xw)))
% Found x010 as proof of (forall (Xv:a) (Xw:a), (((and (Xq Xv)) ((or ((r Xv) Xw)) ((r Xw) Xv)))->(Xq Xw)))
% Found x010:(forall (Xv:a) (Xw:a), (((and (Xq Xv)) ((or ((r Xv) Xw)) ((r Xw) Xv)))->(Xq Xw)))
% Found x010 as proof of (forall (Xv:a) (Xw:a), (((and (Xq Xv)) ((or ((r Xv) Xw)) ((r Xw) Xv)))->(Xq Xw)))
% Found x21:(Xq Xy0)
% Instantiate: Xv:=Xy0:a
% Found x21 as proof of (Xq Xv)
% Found x21:(Xq Xy0)
% Instantiate: Xv:=Xy0:a
% Found x21 as proof of (Xq Xv)
% Found x010:(forall (Xv:a) (Xw:a), (((and (Xq Xv)) ((or ((r Xv) Xw)) ((r Xw) Xv)))->(Xq Xw)))
% Found x010 as proof of (forall (Xv:a) (Xw:a), (((and (Xq Xv)) ((or ((r Xv) Xw)) ((r Xw) Xv)))->(Xq Xw)))
% Found x010:(forall (Xv:a) (Xw:a), (((and (Xq Xv)) ((or ((r Xv) Xw)) ((r Xw) Xv)))->(Xq Xw)))
% Found x010 as proof of (forall (Xv:a) (Xw:a), (((and (Xq Xv)) ((or ((r Xv) Xw)) ((r Xw) Xv)))->(Xq Xw)))
% Found x010:(forall (Xv:a) (Xw:a), (((and (Xq Xv)) ((or ((r Xv) Xw)) ((r Xw) Xv)))->(Xq Xw)))
% Found x010 as proof of (forall (Xv:a) (Xw:a), (((and (Xq Xv)) ((or ((r Xv) Xw)) ((r Xw) Xv)))->(Xq Xw)))
% Found or_introl00:=(or_introl0 ((r Xv0) Xx0)):(((r Xx0) Xy0)->((or ((r Xx0) Xy0)) ((r Xv0) Xx0)))
% Found (or_introl0 ((r Xv0) Xx0)) as proof of (((r Xx0) Xy0)->((or ((r Xx0) Xv0)) ((r Xv0) Xx0)))
% Found ((or_introl ((r Xx0) Xy0)) ((r Xv0) Xx0)) as proof of (((r Xx0) Xy0)->((or ((r Xx0) Xv0)) ((r Xv0) Xx0)))
% Found ((or_introl ((r Xx0) Xy0)) ((r Xv0) Xx0)) as proof of (((r Xx0) Xy0)->((or ((r Xx0) Xv0)) ((r Xv0) Xx0)))
% Found x010:(forall (Xv:a) (Xw:a), (((and (Xq Xv)) ((or ((r Xv) Xw)) ((r Xw) Xv)))->(Xq Xw)))
% Found x010 as proof of (forall (Xv:a) (Xw:a), (((and (Xq Xv)) ((or ((r Xv) Xw)) ((r Xw) Xv)))->(Xq Xw)))
% Found x010:(forall (Xv:a) (Xw:a), (((and (Xq Xv)) ((or ((r Xv) Xw)) ((r Xw) Xv)))->(Xq Xw)))
% Found x010 as proof of (forall (Xv:a) (Xw:a), (((and (Xq Xv)) ((or ((r Xv) Xw)) ((r Xw) Xv)))->(Xq Xw)))
% Found x010:(forall (Xv:a) (Xw:a), (((and (Xq Xv)) ((or ((r Xv) Xw)) ((r Xw) Xv)))->(Xq Xw)))
% Found x010 as proof of (forall (Xv:a) (Xw:a), (((and (Xq Xv)) ((or ((r Xv) Xw)) ((r Xw) Xv)))->(Xq Xw)))
% Found x010:(forall (Xv:a) (Xw:a), (((and (Xq Xv)) ((or ((r Xv) Xw)) ((r Xw) Xv)))->(Xq Xw)))
% Found x010 as proof of (forall (Xv:a) (Xw:a), (((and (Xq Xv)) ((or ((r Xv) Xw)) ((r Xw) Xv)))->(Xq Xw)))
% Found x010:(forall (Xv:a) (Xw:a), (((and (Xq Xv)) ((or ((r Xv) Xw)) ((r Xw) Xv)))->(Xq Xw)))
% Found x010 as proof of (forall (Xv:a) (Xw:a), (((and (Xq Xv)) ((or ((r Xv) Xw)) ((r Xw) Xv)))->(Xq Xw)))
% Found x010:(forall (Xv:a) (Xw:a), (((and (Xq Xv)) ((or ((r Xv) Xw)) ((r Xw) Xv)))->(Xq Xw)))
% Found x010 as proof of (forall (Xv:a) (Xw:a), (((and (Xq Xv)) ((or ((r Xv) Xw)) ((r Xw) Xv)))->(Xq Xw)))
% Found x010:(forall (Xv:a) (Xw:a), (((and (Xq Xv)) ((or ((r Xv) Xw)) ((r Xw) Xv)))->(Xq Xw)))
% Found x010 as proof of (forall (Xv:a) (Xw:a), (((and (Xq Xv)) ((or ((r Xv) Xw)) ((r Xw) Xv)))->(Xq Xw)))
% Found x010:(forall (Xv:a) (Xw:a), (((and (Xq Xv)) ((or ((r Xv) Xw)) ((r Xw) Xv)))->(Xq Xw)))
% Found x010 as proof of (forall (Xv:a) (Xw:a), (((and (Xq Xv)) ((or ((r Xv) Xw)) ((r Xw) Xv)))->(Xq Xw)))
% Found x010:(forall (Xv:a) (Xw:a), (((and (Xq Xv)) ((or ((r Xv) Xw)) ((r Xw) Xv)))->(Xq Xw)))
% Found x010 as proof of (forall (Xv:a) (Xw:a), (((and (Xq Xv)) ((or ((r Xv) Xw)) ((r Xw) Xv)))->(Xq Xw)))
% Found x010:(forall (Xv:a) (Xw:a), (((and (Xq Xv)) ((or ((r Xv) Xw)) ((r Xw) Xv)))->(Xq Xw)))
% Found x010 as proof of (forall (Xv:a) (Xw:a), (((and (Xq Xv)) ((or ((r Xv) Xw)) ((r Xw) Xv)))->(Xq Xw)))
% Found x010:(forall (Xv:a) (Xw:a), (((and (Xq Xv)) ((or ((r Xv) Xw)) ((r Xw) Xv)))->(Xq Xw)))
% Found x010 as proof of (forall (Xv:a) (Xw:a), (((and (Xq Xv)) ((or ((r Xv) Xw)) ((r Xw) Xv)))->(Xq Xw)))
% Found x010:(forall (Xv:a) (Xw:a), (((and (Xq Xv)) ((or ((r Xv) Xw)) ((r Xw) Xv)))->(Xq Xw)))
% Found x010 as proof of (forall (Xv:a) (Xw:a), (((and (Xq Xv)) ((or ((r Xv) Xw)) ((r Xw) Xv)))->(Xq Xw)))
% Found x010:(forall (Xv:a) (Xw:a), (((and (Xq Xv)) ((or ((r Xv) Xw)) ((r Xw) Xv)))->(Xq Xw)))
% Found x010 as proof of (forall (Xv:a) (Xw:a), (((and (Xq Xv)) ((or ((r Xv) Xw)) ((r Xw) Xv)))->(Xq Xw)))
% Found x010:(forall (Xv:a) (Xw:a), (((and (Xq Xv)) ((or ((r Xv) Xw)) ((r Xw) Xv)))->(Xq Xw)))
% Found x010 as proof of (forall (Xv:a) (Xw:a), (((and (Xq Xv)) ((or ((r Xv) Xw)) ((r Xw) Xv)))->(Xq Xw)))
% Found x010:(forall (Xv:a) (Xw:a), (((and (Xq Xv)) ((or ((r Xv) Xw)) ((r Xw) Xv)))->(Xq Xw)))
% Found x010 as proof of (forall (Xv:a) (Xw:a), (((and (Xq Xv)) ((or ((r Xv) Xw)) ((r Xw) Xv)))->(Xq Xw)))
% Found x010:(forall (Xv:a) (Xw:a), (((and (Xq Xv)) ((or ((r Xv) Xw)) ((r Xw) Xv)))->(Xq Xw)))
% Found x010 as proof of (forall (Xv:a) (Xw:a), (((and (Xq Xv)) ((or ((r Xv) Xw)) ((r Xw) Xv)))->(Xq Xw)))
% Found x010:(forall (Xv:a) (Xw:a), (((and (Xq Xv)) ((or ((r Xv) Xw)) ((r Xw) Xv)))->(Xq Xw)))
% Found x010 as proof of (forall (Xv:a) (Xw:a), (((and (Xq Xv)) ((or ((r Xv) Xw)) ((r Xw) Xv)))->(Xq Xw)))
% Found x010:(forall (Xv:a) (Xw:a), (((and (Xq Xv)) ((or ((r Xv) Xw)) ((r Xw) Xv)))->(Xq Xw)))
% Found x010 as proof of (forall (Xv:a) (Xw:a), (((and (Xq Xv)) ((or ((r Xv) Xw)) ((r Xw) Xv)))->(Xq Xw)))
% Found x010:(forall (Xv:a) (Xw:a), (((and (Xq Xv)) ((or ((r Xv) Xw)) ((r Xw) Xv)))->(Xq Xw)))
% Found x010 as proof of (forall (Xv:a) (Xw:a), (((and (Xq Xv)) ((or ((r Xv) Xw)) ((r Xw) Xv)))->(Xq Xw)))
% Found x010:(forall (Xv:a) (Xw:a), (((and (Xq Xv)) ((or ((r Xv) Xw)) ((r Xw) Xv)))->(Xq Xw)))
% Found x010 as proof of (forall (Xv:a) (Xw:a), (((and (Xq Xv)) ((or ((r Xv) Xw)) ((r Xw) Xv)))->(Xq Xw)))
% Found x010:(forall (Xv:a) (Xw:a), (((and (Xq Xv)) ((or ((r Xv) Xw)) ((r Xw) Xv)))->(Xq Xw)))
% Found x010 as proof of (forall (Xv:a) (Xw:a), (((and (Xq Xv)) ((or ((r Xv) Xw)) ((r Xw) Xv)))->(Xq Xw)))
% Found x010:(forall (Xv:a) (Xw:a), (((and (Xq Xv)) ((or ((r Xv) Xw)) ((r Xw) Xv)))->(Xq Xw)))
% Found x010 as proof of (forall (Xv:a) (Xw:a), (((and (Xq Xv)) ((or ((r Xv) Xw)) ((r Xw) Xv)))->(Xq Xw)))
% Found x010:(forall (Xv:a) (Xw:a), (((and (Xq Xv)) ((or ((r Xv) Xw)) ((r Xw) Xv)))->(Xq Xw)))
% Found x010 as proof of (forall (Xv:a) (Xw:a), (((and (Xq Xv)) ((or ((r Xv) Xw)) ((r Xw) Xv)))->(Xq Xw)))
% Found x010:(forall (Xv:a) (Xw:a), (((and (Xq Xv)) ((or ((r Xv) Xw)) ((r Xw) Xv)))->(Xq Xw)))
% Found x010 as proof of (forall (Xv:a) (Xw:a), (((and (Xq Xv)) ((or ((r Xv) Xw)) ((r Xw) Xv)))->(Xq Xw)))
% Found x2:((r Xx0) Xy0)
% Instantiate: Xv0:=Xy0:a;Xv:=Xx0:a
% Found (fun (x2:((r Xx0) Xy0))=> x2) as proof of ((r Xv) Xv0)
% Found x2:((r Xv) Xv0)
% Found (fun (x2:((r Xv) Xv0))=> x2) as proof of ((r Xv) Xv0)
% Found (fun (Xy0:a) (x2:((r Xv) Xv0))=> x2) as proof of (((r Xv) Xv0)->((r Xv) Xv0))
% Found (fun (Xx0:a) (Xy0:a) (x2:((r Xv) Xv0))=> x2) as proof of (a->(((r Xv) Xv0)->((r Xv) Xv0)))
% Found (fun (Xx0:a) (Xy0:a) (x2:((r Xv) Xv0))=> x2) as proof of (a->(a->(((r Xv) Xv0)->((r Xv) Xv0))))
% Found x010:(forall (Xv:a) (Xw:a), (((and (Xq Xv)) ((or ((r Xv) Xw)) ((r Xw) Xv)))->(Xq Xw)))
% Found x010 as proof of (forall (Xv:a) (Xw:a), (((and (Xq Xv)) ((or ((r Xv) Xw)) ((r Xw) Xv)))->(Xq Xw)))
% Found x2:((r Xx0) Xy0)
% Instantiate: Xv0:=Xx0:a;Xv:=Xy0:a
% Found (fun (x2:((r Xx0) Xy0))=> x2) as proof of ((r Xv0) Xv)
% Found x2:((r Xv0) Xv)
% Found (fun (x2:((r Xv0) Xv))=> x2) as proof of ((r Xv0) Xv)
% Found (fun (Xy0:a) (x2:((r Xv0) Xv))=> x2) as proof of (((r Xv0) Xv)->((r Xv0) Xv))
% Found (fun (Xx0:a) (Xy0:a) (x2:((r Xv0) Xv))=> x2) as proof of (a->(((r Xv0) Xv)->((r Xv0) Xv)))
% Found (fun (Xx0:a) (Xy0:a) (x2:((r Xv0) Xv))=> x2) as proof of (a->(a->(((r Xv0) Xv)->((r Xv0) Xv))))
% Found x010:(forall (Xv:a) (Xw:a), (((and (Xq Xv)) ((or ((r Xv) Xw)) ((r Xw) Xv)))->(Xq Xw)))
% Found x010 as proof of (forall (Xv:a) (Xw:a), (((and (Xq Xv)) ((or ((r Xv) Xw)) ((r Xw) Xv)))->(Xq Xw)))
% Found x010:(forall (Xv:a) (Xw:a), (((and (Xq Xv)) ((or ((r Xv) Xw)) ((r Xw) Xv)))->(Xq Xw)))
% Found x010 as proof of (forall (Xv:a) (Xw:a), (((and (Xq Xv)) ((or ((r Xv) Xw)) ((r Xw) Xv)))->(Xq Xw)))
% Found x3:((or ((r Xx0) Xv0)) ((r Xv0) Xx0))
% Found (fun (x4:((or ((r Xy0) Xv0)) ((r Xv0) Xy0)))=> x3) as proof of ((or ((r Xx0) Xv0)) ((r Xv0) Xx0))
% Found (fun (x3:((or ((r Xx0) Xv0)) ((r Xv0) Xx0))) (x4:((or ((r Xy0) Xv0)) ((r Xv0) Xy0)))=> x3) as proof of (((or ((r Xy0) Xv0)) ((r Xv0) Xy0))->((or ((r Xx0) Xv0)) ((r Xv0) Xx0)))
% Found (fun (x3:((or ((r Xx0) Xv0)) ((r Xv0) Xx0))) (x4:((or ((r Xy0) Xv0)) ((r Xv0) Xy0)))=> x3) as proof of (((or ((r Xx0) Xv0)) ((r Xv0) Xx0))->(((or ((r Xy0) Xv0)) ((r Xv0) Xy0))->((or ((r Xx0) Xv0)) ((r Xv0) Xx0))))
% Found (and_rect10 (fun (x3:((or ((r Xx0) Xv0)) ((r Xv0) Xx0))) (x4:((or ((r Xy0) Xv0)) ((r Xv0) Xy0)))=> x3)) as proof of ((or ((r Xx0) Xv0)) ((r Xv0) Xx0))
% Found ((and_rect1 ((or ((r Xx0) Xv0)) ((r Xv0) Xx0))) (fun (x3:((or ((r Xx0) Xv0)) ((r Xv0) Xx0))) (x4:((or ((r Xy0) Xv0)) ((r Xv0) Xy0)))=> x3)) as proof of ((or ((r Xx0) Xv0)) ((r Xv0) Xx0))
% Found (((fun (P:Type) (x3:(((or ((r Xx0) Xv0)) ((r Xv0) Xx0))->(((or ((r Xy0) Xv0)) ((r Xv0) Xy0))->P)))=> (((((and_rect ((or ((r Xx0) Xv0)) ((r Xv0) Xx0))) ((or ((r Xy0) Xv0)) ((r Xv0) Xy0))) P) x3) x2)) ((or ((r Xx0) Xv0)) ((r Xv0) Xx0))) (fun (x3:((or ((r Xx0) Xv0)) ((r Xv0) Xx0))) (x4:((or ((r Xy0) Xv0)) ((r Xv0) Xy0)))=> x3)) as proof of ((or ((r Xx0) Xv0)) ((r Xv0) Xx0))
% Found (fun (x2:((and ((or ((r Xx0) Xv0)) ((r Xv0) Xx0))) ((or ((r Xy0) Xv0)) ((r Xv0) Xy0))))=> (((fun (P:Type) (x3:(((or ((r Xx0) Xv0)) ((r Xv0) Xx0))->(((or ((r Xy0) Xv0)) ((r Xv0) Xy0))->P)))=> (((((and_rect ((or ((r Xx0) Xv0)) ((r Xv0) Xx0))) ((or ((r Xy0) Xv0)) ((r Xv0) Xy0))) P) x3) x2)) ((or ((r Xx0) Xv0)) ((r Xv0) Xx0))) (fun (x3:((or ((r Xx0) Xv0)) ((r Xv0) Xx0))) (x4:((or ((r Xy0) Xv0)) ((r Xv0) Xy0)))=> x3))) as proof of ((or ((r Xx0) Xv0)) ((r Xv0) Xx0))
% Found (fun (Xz:a) (x2:((and ((or ((r Xx0) Xv0)) ((r Xv0) Xx0))) ((or ((r Xy0) Xv0)) ((r Xv0) Xy0))))=> (((fun (P:Type) (x3:(((or ((r Xx0) Xv0)) ((r Xv0) Xx0))->(((or ((r Xy0) Xv0)) ((r Xv0) Xy0))->P)))=> (((((and_rect ((or ((r Xx0) Xv0)) ((r Xv0) Xx0))) ((or ((r Xy0) Xv0)) ((r Xv0) Xy0))) P) x3) x2)) ((or ((r Xx0) Xv0)) ((r Xv0) Xx0))) (fun (x3:((or ((r Xx0) Xv0)) ((r Xv0) Xx0))) (x4:((or ((r Xy0) Xv0)) ((r Xv0) Xy0)))=> x3))) as proof of (((and ((or ((r Xx0) Xv0)) ((r Xv0) Xx0))) ((or ((r Xy0) Xv0)) ((r Xv0) Xy0)))->((or ((r Xx0) Xv0)) ((r Xv0) Xx0)))
% Found (fun (Xy0:a) (Xz:a) (x2:((and ((or ((r Xx0) Xv0)) ((r Xv0) Xx0))) ((or ((r Xy0) Xv0)) ((r Xv0) Xy0))))=> (((fun (P:Type) (x3:(((or ((r Xx0) Xv0)) ((r Xv0) Xx0))->(((or ((r Xy0) Xv0)) ((r Xv0) Xy0))->P)))=> (((((and_rect ((or ((r Xx0) Xv0)) ((r Xv0) Xx0))) ((or ((r Xy0) Xv0)) ((r Xv0) Xy0))) P) x3) x2)) ((or ((r Xx0) Xv0)) ((r Xv0) Xx0))) (fun (x3:((or ((r Xx0) Xv0)) ((r Xv0) Xx0))) (x4:((or ((r Xy0) Xv0)) ((r Xv0) Xy0)))=> x3))) as proof of (a->(((and ((or ((r Xx0) Xv0)) ((r Xv0) Xx0))) ((or ((r Xy0) Xv0)) ((r Xv0) Xy0)))->((or ((r Xx0) Xv0)) ((r Xv0) Xx0))))
% Found (fun (Xx0:a) (Xy0:a) (Xz:a) (x2:((and ((or ((r Xx0) Xv0)) ((r Xv0) Xx0))) ((or ((r Xy0) Xv0)) ((r Xv0) Xy0))))=> (((fun (P:Type) (x3:(((or ((r Xx0) Xv0)) ((r Xv0) Xx0))->(((or ((r Xy0) Xv0)) ((r Xv0) Xy0))->P)))=> (((((and_rect ((or ((r Xx0) Xv0)) ((r Xv0) Xx0))) ((or ((r Xy0) Xv0)) ((r Xv0) Xy0))) P) x3) x2)) ((or ((r Xx0) Xv0)) ((r Xv0) Xx0))) (fun (x3:((or ((r Xx0) Xv0)) ((r Xv0) Xx0))) (x4:((or ((r Xy0) Xv0)) ((r Xv0) Xy0)))=> x3))) as proof of (forall (Xy0:a), (a->(((and ((or ((r Xx0) Xv0)) ((r Xv0) Xx0))) ((or ((r Xy0) Xv0)) ((r Xv0) Xy0)))->((or ((r Xx0) Xv0)) ((r Xv0) Xx0)))))
% Found (fun (Xx0:a) (Xy0:a) (Xz:a) (x2:((and ((or ((r Xx0) Xv0)) ((r Xv0) Xx0))) ((or ((r Xy0) Xv0)) ((r Xv0) Xy0))))=> (((fun (P:Type) (x3:(((or ((r Xx0) Xv0)) ((r Xv0) Xx0))->(((or ((r Xy0) Xv0)) ((r Xv0) Xy0))->P)))=> (((((and_rect ((or ((r Xx0) Xv0)) ((r Xv0) Xx0))) ((or ((r Xy0) Xv0)) ((r Xv0) Xy0))) P) x3) x2)) ((or ((r Xx0) Xv0)) ((r Xv0) Xx0))) (fun (x3:((or ((r Xx0) Xv0)) ((r Xv0) Xx0))) (x4:((or ((r Xy0) Xv0)) ((r Xv0) Xy0)))=> x3))) as proof of (forall (Xx0:a) (Xy0:a), (a->(((and ((or ((r Xx0) Xv0)) ((r Xv0) Xx0))) ((or ((r Xy0) Xv0)) ((r Xv0) Xy0)))->((or ((r Xx0) Xv0)) ((r Xv0) Xx0)))))
% Found x010:(forall (Xv:a) (Xw:a), (((and (Xq Xv)) ((or ((r Xv) Xw)) ((r Xw) Xv)))->(Xq Xw)))
% Found x010 as proof of (forall (Xv:a) (Xw:a), (((and (Xq Xv)) ((or ((r Xv) Xw)) ((r Xw) Xv)))->(Xq Xw)))
% Found x010:(forall (Xv:a) (Xw:a), (((and (Xq Xv)) ((or ((r Xv) Xw)) ((r Xw) Xv)))->(Xq Xw)))
% Found x010 as proof of (forall (Xv:a) (Xw:a), (((and (Xq Xv)) ((or ((r Xv) Xw)) ((r Xw) Xv)))->(Xq Xw)))
% Found x010:(forall (Xv:a) (Xw:a), (((and (Xq Xv)) ((or ((r Xv) Xw)) ((r Xw) Xv)))->(Xq Xw)))
% Found x010 as proof of (forall (Xv:a) (Xw:a), (((and (Xq Xv)) ((or ((r Xv) Xw)) ((r Xw) Xv)))->(Xq Xw)))
% Found x010:(forall (Xv:a) (Xw:a), (((and (Xq Xv)) ((or ((r Xv) Xw)) ((r Xw) Xv)))->(Xq Xw)))
% Found x010 as proof of (forall (Xv:a) (Xw:a), (((and (Xq Xv)) ((or ((r Xv) Xw)) ((r Xw) Xv)))->(Xq Xw)))
% Found or_comm_i00:=(or_comm_i0 ((r Xv0) Xv)):(((or ((r Xv) Xv0)) ((r Xv0) Xv))->((or ((r Xv0) Xv)) ((r Xv) Xv0)))
% Instantiate: Xv:=Xv0:a
% Found (fun (x3:((or ((r Xv) Xv0)) ((r Xv0) Xv)))=> or_comm_i00) as proof of (((or ((r Xv) Xv0)) ((r Xv0) Xv))->((or ((r Xv) Xv0)) ((r Xv0) Xv)))
% Found (fun (x3:((or ((r Xv) Xv0)) ((r Xv0) Xv)))=> or_comm_i00) as proof of (((or ((r Xv) Xv0)) ((r Xv0) Xv))->(((or ((r Xv) Xv0)) ((r Xv0) Xv))->((or ((r Xv) Xv0)) ((r Xv0) Xv))))
% Found (and_rect10 (fun (x3:((or ((r Xv) Xv0)) ((r Xv0) Xv)))=> or_comm_i00)) as proof of ((or ((r Xv) Xv0)) ((r Xv0) Xv))
% Found ((and_rect1 ((or ((r Xv) Xv0)) ((r Xv0) Xv))) (fun (x3:((or ((r Xv) Xv0)) ((r Xv0) Xv)))=> or_comm_i00)) as proof of ((or ((r Xv) Xv0)) ((r Xv0) Xv))
% Found (((fun (P:Type) (x3:(((or ((r Xv) Xv0)) ((r Xv0) Xv))->(((or ((r Xv) Xv0)) ((r Xv0) Xv))->P)))=> (((((and_rect ((or ((r Xv) Xv0)) ((r Xv0) Xv))) ((or ((r Xv) Xv0)) ((r Xv0) Xv))) P) x3) x2)) ((or ((r Xv) Xv0)) ((r Xv0) Xv))) (fun (x3:((or ((r Xv) Xv0)) ((r Xv0) Xv)))=> or_comm_i00)) as proof of ((or ((r Xv) Xv0)) ((r Xv0) Xv))
% Found (fun (x2:((and ((or ((r Xv) Xv0)) ((r Xv0) Xv))) ((or ((r Xv) Xv0)) ((r Xv0) Xv))))=> (((fun (P:Type) (x3:(((or ((r Xv) Xv0)) ((r Xv0) Xv))->(((or ((r Xv) Xv0)) ((r Xv0) Xv))->P)))=> (((((and_rect ((or ((r Xv) Xv0)) ((r Xv0) Xv))) ((or ((r Xv) Xv0)) ((r Xv0) Xv))) P) x3) x2)) ((or ((r Xv) Xv0)) ((r Xv0) Xv))) (fun (x3:((or ((r Xv) Xv0)) ((r Xv0) Xv)))=> or_comm_i00))) as proof of ((or ((r Xv) Xv0)) ((r Xv0) Xv))
% Found (fun (Xz:a) (x2:((and ((or ((r Xv) Xv0)) ((r Xv0) Xv))) ((or ((r Xv) Xv0)) ((r Xv0) Xv))))=> (((fun (P:Type) (x3:(((or ((r Xv) Xv0)) ((r Xv0) Xv))->(((or ((r Xv) Xv0)) ((r Xv0) Xv))->P)))=> (((((and_rect ((or ((r Xv) Xv0)) ((r Xv0) Xv))) ((or ((r Xv) Xv0)) ((r Xv0) Xv))) P) x3) x2)) ((or ((r Xv) Xv0)) ((r Xv0) Xv))) (fun (x3:((or ((r Xv) Xv0)) ((r Xv0) Xv)))=> or_comm_i00))) as proof of (((and ((or ((r Xv) Xv0)) ((r Xv0) Xv))) ((or ((r Xv) Xv0)) ((r Xv0) Xv)))->((or ((r Xv) Xv0)) ((r Xv0) Xv)))
% Found (fun (Xy0:a) (Xz:a) (x2:((and ((or ((r Xv) Xv0)) ((r Xv0) Xv))) ((or ((r Xv) Xv0)) ((r Xv0) Xv))))=> (((fun (P:Type) (x3:(((or ((r Xv) Xv0)) ((r Xv0) Xv))->(((or ((r Xv) Xv0)) ((r Xv0) Xv))->P)))=> (((((and_rect ((or ((r Xv) Xv0)) ((r Xv0) Xv))) ((or ((r Xv) Xv0)) ((r Xv0) Xv))) P) x3) x2)) ((or ((r Xv) Xv0)) ((r Xv0) Xv))) (fun (x3:((or ((r Xv) Xv0)) ((r Xv0) Xv)))=> or_comm_i00))) as proof of (a->(((and ((or ((r Xv) Xv0)) ((r Xv0) Xv))) ((or ((r Xv) Xv0)) ((r Xv0) Xv)))->((or ((r Xv) Xv0)) ((r Xv0) Xv))))
% Found (fun (Xx0:a) (Xy0:a) (Xz:a) (x2:((and ((or ((r Xv) Xv0)) ((r Xv0) Xv))) ((or ((r Xv) Xv0)) ((r Xv0) Xv))))=> (((fun (P:Type) (x3:(((or ((r Xv) Xv0)) ((r Xv0) Xv))->(((or ((r Xv) Xv0)) ((r Xv0) Xv))->P)))=> (((((and_rect ((or ((r Xv) Xv0)) ((r Xv0) Xv))) ((or ((r Xv) Xv0)) ((r Xv0) Xv))) P) x3) x2)) ((or ((r Xv) Xv0)) ((r Xv0) Xv))) (fun (x3:((or ((r Xv) Xv0)) ((r Xv0) Xv)))=> or_comm_i00))) as proof of (a->(a->(((and ((or ((r Xv) Xv0)) ((r Xv0) Xv))) ((or ((r Xv) Xv0)) ((r Xv0) Xv)))->((or ((r Xv) Xv0)) ((r Xv0) Xv)))))
% Found (fun (Xx0:a) (Xy0:a) (Xz:a) (x2:((and ((or ((r Xv) Xv0)) ((r Xv0) Xv))) ((or ((r Xv) Xv0)) ((r Xv0) Xv))))=> (((fun (P:Type) (x3:(((or ((r Xv) Xv0)) ((r Xv0) Xv))->(((or ((r Xv) Xv0)) ((r Xv0) Xv))->P)))=> (((((and_rect ((or ((r Xv) Xv0)) ((r Xv0) Xv))) ((or ((r Xv) Xv0)) ((r Xv0) Xv))) P) x3) x2)) ((or ((r Xv) Xv0)) ((r Xv0) Xv))) (fun (x3:((or ((r Xv) Xv0)) ((r Xv0) Xv)))=> or_comm_i00))) as proof of (a->(a->(a->(((and ((or ((r Xv) Xv0)) ((r Xv0) Xv))) ((or ((r Xv) Xv0)) ((r Xv0) Xv)))->((or ((r Xv) Xv0)) ((r Xv0) Xv))))))
% Found or_comm_i00:=(or_comm_i0 ((r Xv0) Xv)):(((or ((r Xv) Xv0)) ((r Xv0) Xv))->((or ((r Xv0) Xv)) ((r Xv) Xv0)))
% Found (fun (Xy0:a)=> or_comm_i00) as proof of (((or ((r Xv) Xv0)) ((r Xv0) Xv))->((or ((r Xv) Xv0)) ((r Xv0) Xv)))
% Found (fun (Xx0:a) (Xy0:a)=> or_comm_i00) as proof of (a->(((or ((r Xv) Xv0)) ((r Xv0) Xv))->((or ((r Xv) Xv0)) ((r Xv0) Xv))))
% Found (fun (Xx0:a) (Xy0:a)=> or_comm_i00) as proof of (a->(a->(((or ((r Xv) Xv0)) ((r Xv0) Xv))->((or ((r Xv) Xv0)) ((r Xv0) Xv)))))
% Found or_introl00:=(or_introl0 ((r Xv0) Xv)):(((r Xx0) Xy0)->((or ((r Xx0) Xy0)) ((r Xv0) Xv)))
% Found (or_introl0 ((r Xv0) Xv)) as proof of (((r Xx0) Xy0)->((or ((r Xv) Xv0)) ((r Xv0) Xv)))
% Found ((or_introl ((r Xx0) Xy0)) ((r Xv0) Xv)) as proof of (((r Xx0) Xy0)->((or ((r Xv) Xv0)) ((r Xv0) Xv)))
% Found ((or_introl ((r Xx0) Xy0)) ((r Xv0) Xv)) as proof of (((r Xx0) Xy0)->((or ((r Xv) Xv0)) ((r Xv0) Xv)))
% Found ((or_introl ((r Xx0) Xy0)) ((r Xv0) Xv)) as proof of (((r Xx0) Xy0)->((or ((r Xv) Xv0)) ((r Xv0) Xv)))
% Found or_intror00:=(or_intror0 ((r Xx0) Xy0)):(((r Xx0) Xy0)->((or ((r Xv) Xv0)) ((r Xx0) Xy0)))
% Found (or_intror0 ((r Xx0) Xy0)) as proof of (((r Xx0) Xy0)->((or ((r Xv) Xv0)) ((r Xv0) Xv)))
% Found ((or_intror ((r Xv) Xv0)) ((r Xx0) Xy0)) as proof of (((r Xx0) Xy0)->((or ((r Xv) Xv0)) ((r Xv0) Xv)))
% Found ((or_intror ((r Xv) Xv0)) ((r Xx0) Xy0)) as proof of (((r Xx0) Xy0)->((or ((r Xv) Xv0)) ((r Xv0) Xv)))
% Found ((or_intror ((r Xv) Xv0)) ((r Xx0) Xy0)) as proof of (((r Xx0) Xy0)->((or ((r Xv) Xv0)) ((r Xv0) Xv)))
% Found or_introl00:=(or_introl0 ((r Xv0) Xv)):(((r Xx0) Xy0)->((or ((r Xx0) Xy0)) ((r Xv0) Xv)))
% Found (or_introl0 ((r Xv0) Xv)) as proof of (((r Xx0) Xy0)->((or ((r Xv) Xv0)) ((r Xv0) Xv)))
% Found ((or_introl ((r Xx0) Xy0)) ((r Xv0) Xv)) as proof of (((r Xx0) Xy0)->((or ((r Xv) Xv0)) ((r Xv0) Xv)))
% Found ((or_introl ((r Xx0) Xy0)) ((r Xv0) Xv)) as proof of (((r Xx0) Xy0)->((or ((r Xv) Xv0)) ((r Xv0) Xv)))
% Found ((or_introl ((r Xx0) Xy0)) ((r Xv0) Xv)) as proof of (((r Xx0) Xy0)->((or ((r Xv) Xv0)) ((r Xv0) Xv)))
% Found or_intror00:=(or_intror0 ((r Xx0) Xy0)):(((r Xx0) Xy0)->((or ((r Xv) Xv0)) ((r Xx0) Xy0)))
% Found (or_intror0 ((r Xx0) Xy0)) as proof of (((r Xx0) Xy0)->((or ((r Xv) Xv0)) ((r Xv0) Xv)))
% Found ((or_intror ((r Xv) Xv0)) ((r Xx0) Xy0)) as proof of (((r Xx0) Xy0)->((or ((r Xv) Xv0)) ((r Xv0) Xv)))
% Found ((or_intror ((r Xv) Xv0)) ((r Xx0) Xy0)) as proof of (((r Xx0) Xy0)->((or ((r Xv) Xv0)) ((r Xv0) Xv)))
% Found ((or_intror ((r Xv) Xv0)) ((r Xx0) Xy0)) as proof of (((r Xx0) Xy0)->((or ((r Xv) Xv0)) ((r Xv0) Xv)))
% Found x2:((r Xx0) Xy0)
% Instantiate: Xv0:=Xx0:a;Xv:=Xy0:a
% Found x2 as proof of ((r Xv0) Xv)
% Found (or_intror00 x2) as proof of ((or ((r Xv) Xv0)) ((r Xv0) Xv))
% Found ((or_intror0 ((r Xv0) Xv)) x2) as proof of ((or ((r Xv) Xv0)) ((r Xv0) Xv))
% Found (((or_intror ((r Xv) Xv0)) ((r Xv0) Xv)) x2) as proof of ((or ((r Xv) Xv0)) ((r Xv0) Xv))
% Found (((or_intror ((r Xv) Xv0)) ((r Xv0) Xv)) x2) as proof of ((or ((r Xv) Xv0)) ((r Xv0) Xv))
% Found (or_comm_i00 (((or_intror ((r Xv) Xv0)) ((r Xv0) Xv)) x2)) as proof of ((or ((r Xv0) Xv)) ((r Xv) Xv0))
% Found ((or_comm_i0 ((r Xv0) Xv)) (((or_intror ((r Xv) Xv0)) ((r Xv0) Xv)) x2)) as proof of ((or ((r Xv0) Xv)) ((r Xv) Xv0))
% Found (((or_comm_i ((r Xv) Xv0)) ((r Xv0) Xv)) (((or_intror ((r Xv) Xv0)) ((r Xv0) Xv)) x2)) as proof of ((or ((r Xv0) Xv)) ((r Xv) Xv0))
% Found (fun (x2:((r Xx0) Xy0))=> (((or_comm_i ((r Xv) Xv0)) ((r Xv0) Xv)) (((or_intror ((r Xv) Xv0)) ((r Xv0) Xv)) x2))) as proof of ((or ((r Xv0) Xv)) ((r Xv) Xv0))
% Found x2:((r Xx0) Xy0)
% Instantiate: Xv0:=Xx0:a;Xv:=Xy0:a
% Found x2 as proof of ((r Xv0) Xv)
% Found (or_intror00 x2) as proof of ((or ((r Xv) Xv0)) ((r Xv0) Xv))
% Found ((or_intror0 ((r Xv0) Xv)) x2) as proof of ((or ((r Xv) Xv0)) ((r Xv0) Xv))
% Found (((or_intror ((r Xv) Xv0)) ((r Xv0) Xv)) x2) as proof of ((or ((r Xv) Xv0)) ((r Xv0) Xv))
% Found (fun (x2:((r Xx0) Xy0))=> (((or_intror ((r Xv) Xv0)) ((r Xv0) Xv)) x2)) as proof of ((or ((r Xv) Xv0)) ((r Xv0) Xv))
% Found x2:((r Xx0) Xy0)
% Instantiate: Xv0:=Xy0:a;Xv:=Xx0:a
% Found x2 as proof of ((r Xv) Xv0)
% Found (or_introl00 x2) as proof of ((or ((r Xv) Xv0)) ((r Xv0) Xv))
% Found ((or_introl0 ((r Xv0) Xv)) x2) as proof of ((or ((r Xv) Xv0)) ((r Xv0) Xv))
% Found (((or_introl ((r Xv) Xv0)) ((r Xv0) Xv)) x2) as proof of ((or ((r Xv) Xv0)) ((r Xv0) Xv))
% Found (fun (x2:((r Xx0) Xy0))=> (((or_introl ((r Xv) Xv0)) ((r Xv0) Xv)) x2)) as proof of ((or ((r Xv) Xv0)) ((r Xv0) Xv))
% Found x22:(Xq Xy0)
% Instantiate: Xv:=Xy0:a
% Found x22 as proof of (Xq Xv)
% Found x22:(Xq Xy0)
% Instantiate: Xv:=Xy0:a
% Found x22 as proof of (Xq Xv)
% Found x22:(Xq Xy0)
% Instantiate: Xv:=Xy0:a
% Found x22 as proof of (Xq Xv)
% Found x010:(forall (Xv:a) (Xw:a), (((and (Xq Xv)) ((or ((r Xv) Xw)) ((r Xw) Xv)))->(Xq Xw)))
% Found x010 as proof of (forall (Xv:a) (Xw:a), (((and (Xq Xv)) ((or ((r Xv) Xw)) ((r Xw) Xv)))->(Xq Xw)))
% Found x010:(forall (Xv:a) (Xw:a), (((and (Xq Xv)) ((or ((r Xv) Xw)) ((r Xw) Xv)))->(Xq Xw)))
% Found x010 as proof of (forall (Xv:a) (Xw:a), (((and (Xq Xv)) ((or ((r Xv) Xw)) ((r Xw) Xv)))->(Xq Xw)))
% Found x010:(forall (Xv:a) (Xw:a), (((and (Xq Xv)) ((or ((r Xv) Xw)) ((r Xw) Xv)))->(Xq Xw)))
% Found x010 as proof of (forall (Xv:a) (Xw:a), (((and (Xq Xv)) ((or ((r Xv) Xw)) ((r Xw) Xv)))->(Xq Xw)))
% Found x22:(Xq Xy0)
% Instantiate: Xv:=Xy0:a
% Found x22 as proof of (Xq Xv)
% Found x010:(forall (Xv:a) (Xw:a), (((and (Xq Xv)) ((or ((r Xv) Xw)) ((r Xw) Xv)))->(Xq Xw)))
% Found x010 as proof of (forall (Xv:a) (Xw:a), (((and (Xq Xv)) ((or ((r Xv) Xw)) ((r Xw) Xv)))->(Xq Xw)))
% Found x010:(forall (Xv:a) (Xw:a), (((and (Xq Xv)) ((or ((r Xv) Xw)) ((r Xw) Xv)))->(Xq Xw)))
% Found x010 as proof of (forall (Xv:a) (Xw:a), (((and (Xq Xv)) ((or ((r Xv) Xw)) ((r Xw) Xv)))->(Xq Xw)))
% Found x010:(forall (Xv:a) (Xw:a), (((and (Xq Xv)) ((or ((r Xv) Xw)) ((r Xw) Xv)))->(Xq Xw)))
% Found x010 as proof of (forall (Xv:a) (Xw:a), (((and (Xq Xv)) ((or ((r Xv) Xw)) ((r Xw) Xv)))->(Xq Xw)))
% Found x2:((r Xx0) Xy0)
% Instantiate: Xv0:=Xy0:a
% Found x2 as proof of ((r Xx0) Xv0)
% Found (or_introl00 x2) as proof of ((or ((r Xx0) Xv0)) ((r Xv0) Xx0))
% Found ((or_introl0 ((r Xv0) Xx0)) x2) as proof of ((or ((r Xx0) Xv0)) ((r Xv0) Xx0))
% Found (((or_introl ((r Xx0) Xv0)) ((r Xv0) Xx0)) x2) as proof of ((or ((r Xx0) Xv0)) ((r Xv0) Xx0))
% Found (fun (x2:((r Xx0) Xy0))=> (((or_introl ((r Xx0) Xv0)) ((r Xv0) Xx0)) x2)) as proof of ((or ((r Xx0) Xv0)) ((r Xv0) Xx0))
% Found x4:((r Xv) Xv0)
% Found (fun (x4:((r Xv) Xv0))=> x4) as proof of ((r Xv) Xv0)
% Found (fun (x3:((r Xv) Xv0)) (x4:((r Xv) Xv0))=> x4) as proof of (((r Xv) Xv0)->((r Xv) Xv0))
% Found (fun (x3:((r Xv) Xv0)) (x4:((r Xv) Xv0))=> x4) as proof of (((r Xv) Xv0)->(((r Xv) Xv0)->((r Xv) Xv0)))
% Found (and_rect10 (fun (x3:((r Xv) Xv0)) (x4:((r Xv) Xv0))=> x4)) as proof of ((r Xv) Xv0)
% Found ((and_rect1 ((r Xv) Xv0)) (fun (x3:((r Xv) Xv0)) (x4:((r Xv) Xv0))=> x4)) as proof of ((r Xv) Xv0)
% Found (((fun (P:Type) (x3:(((r Xv) Xv0)->(((r Xv) Xv0)->P)))=> (((((and_rect ((r Xv) Xv0)) ((r Xv) Xv0)) P) x3) x2)) ((r Xv) Xv0)) (fun (x3:((r Xv) Xv0)) (x4:((r Xv) Xv0))=> x4)) as proof of ((r Xv) Xv0)
% Found (fun (x2:((and ((r Xv) Xv0)) ((r Xv) Xv0)))=> (((fun (P:Type) (x3:(((r Xv) Xv0)->(((r Xv) Xv0)->P)))=> (((((and_rect ((r Xv) Xv0)) ((r Xv) Xv0)) P) x3) x2)) ((r Xv) Xv0)) (fun (x3:((r Xv) Xv0)) (x4:((r Xv) Xv0))=> x4))) as proof of ((r Xv) Xv0)
% Found (fun (Xz:a) (x2:((and ((r Xv) Xv0)) ((r Xv) Xv0)))=> (((fun (P:Type) (x3:(((r Xv) Xv0)->(((r Xv) Xv0)->P)))=> (((((and_rect ((r Xv) Xv0)) ((r Xv) Xv0)) P) x3) x2)) ((r Xv) Xv0)) (fun (x3:((r Xv) Xv0)) (x4:((r Xv) Xv0))=> x4))) as proof of (((and ((r Xv) Xv0)) ((r Xv) Xv0))->((r Xv) Xv0))
% Found (fun (Xy0:a) (Xz:a) (x2:((and ((r Xv) Xv0)) ((r Xv) Xv0)))=> (((fun (P:Type) (x3:(((r Xv) Xv0)->(((r Xv) Xv0)->P)))=> (((((and_rect ((r Xv) Xv0)) ((r Xv) Xv0)) P) x3) x2)) ((r Xv) Xv0)) (fun (x3:((r Xv) Xv0)) (x4:((r Xv) Xv0))=> x4))) as proof of (a->(((and ((r Xv) Xv0)) ((r Xv) Xv0))->((r Xv) Xv0)))
% Found (fun (Xx0:a) (Xy0:a) (Xz:a) (x2:((and ((r Xv) Xv0)) ((r Xv) Xv0)))=> (((fun (P:Type) (x3:(((r Xv) Xv0)->(((r Xv) Xv0)->P)))=> (((((and_rect ((r Xv) Xv0)) ((r Xv) Xv0)) P) x3) x2)) ((r Xv) Xv0)) (fun (x3:((r Xv) Xv0)) (x4:((r Xv) Xv0))=> x4))) as proof of (a->(a->(((and ((r Xv) Xv0)) ((r Xv) Xv0))->((r Xv) Xv0))))
% Found (fun (Xx0:a) (Xy0:a) (Xz:a) (x2:((and ((r Xv) Xv0)) ((r Xv) Xv0)))=> (((fun (P:Type) (x3:(((r Xv) Xv0)->(((r Xv) Xv0)->P)))=> (((((and_rect ((r Xv) Xv0)) ((r Xv) Xv0)) P) x3) x2)) ((r Xv) Xv0)) (fun (x3:((r Xv) Xv0)) (x4:((r Xv) Xv0))=> x4))) as proof of (a->(a->(a->(((and ((r Xv) Xv0)) ((r Xv) Xv0))->((r Xv) Xv0)))))
% Found x4:((r Xv0) Xv)
% Found (fun (x4:((r Xv0) Xv))=> x4) as proof of ((r Xv0) Xv)
% Found (fun (x3:((r Xv0) Xv)) (x4:((r Xv0) Xv))=> x4) as proof of (((r Xv0) Xv)->((r Xv0) Xv))
% Found (fun (x3:((r Xv0) Xv)) (x4:((r Xv0) Xv))=> x4) as proof of (((r Xv0) Xv)->(((r Xv0) Xv)->((r Xv0) Xv)))
% Found (and_rect10 (fun (x3:((r Xv0) Xv)) (x4:((r Xv0) Xv))=> x4)) as proof of ((r Xv0) Xv)
% Found ((and_rect1 ((r Xv0) Xv)) (fun (x3:((r Xv0) Xv)) (x4:((r Xv0) Xv))=> x4)) as proof of ((r Xv0) Xv)
% Found (((fun (P:Type) (x3:(((r Xv0) Xv)->(((r Xv0) Xv)->P)))=> (((((and_rect ((r Xv0) Xv)) ((r Xv0) Xv)) P) x3) x2)) ((r Xv0) Xv)) (fun (x3:((r Xv0) Xv)) (x4:((r Xv0) Xv))=> x4)) as proof of ((r Xv0) Xv)
% Found (fun (x2:((and ((r Xv0) Xv)) ((r Xv0) Xv)))=> (((fun (P:Type) (x3:(((r Xv0) Xv)->(((r Xv0) Xv)->P)))=> (((((and_rect ((r Xv0) Xv)) ((r Xv0) Xv)) P) x3) x2)) ((r Xv0) Xv)) (fun (x3:((r Xv0) Xv)) (x4:((r Xv0) Xv))=> x4))) as proof of ((r Xv0) Xv)
% Found (fun (Xz:a) (x2:((and ((r Xv0) Xv)) ((r Xv0) Xv)))=> (((fun (P:Type) (x3:(((r Xv0) Xv)->(((r Xv0) Xv)->P)))=> (((((and_rect ((r Xv0) Xv)) ((r Xv0) Xv)) P) x3) x2)) ((r Xv0) Xv)) (fun (x3:((r Xv0) Xv)) (x4:((r Xv0) Xv))=> x4))) as proof of (((and ((r Xv0) Xv)) ((r Xv0) Xv))->((r Xv0) Xv))
% Found (fun (Xy0:a) (Xz:a) (x2:((and ((r Xv0) Xv)) ((r Xv0) Xv)))=> (((fun (P:Type) (x3:(((r Xv0) Xv)->(((r Xv0) Xv)->P)))=> (((((and_rect ((r Xv0) Xv)) ((r Xv0) Xv)) P) x3) x2)) ((r Xv0) Xv)) (fun (x3:((r Xv0) Xv)) (x4:((r Xv0) Xv))=> x4))) as proof of (a->(((and ((r Xv0) Xv)) ((r Xv0) Xv))->((r Xv0) Xv)))
% Found (fun (Xx0:a) (Xy0:a) (Xz:a) (x2:((and ((r Xv0) Xv)) ((r Xv0) Xv)))=> (((fun (P:Type) (x3:(((r Xv0) Xv)->(((r Xv0) Xv)->P)))=> (((((and_rect ((r Xv0) Xv)) ((r Xv0) Xv)) P) x3) x2)) ((r Xv0) Xv)) (fun (x3:((r Xv0) Xv)) (x4:((r Xv0) Xv))=> x4))) as proof of (a->(a->(((and ((r Xv0) Xv)) ((r Xv0) Xv))->((r Xv0) Xv))))
% Found (fun (Xx0:a) (Xy0:a) (Xz:a) (x2:((and ((r Xv0) Xv)) ((r Xv0) Xv)))=> (((fun (P:Type) (x3:(((r Xv0) Xv)->(((r Xv0) Xv)->P)))=> (((((and_rect ((r Xv0) Xv)) ((r Xv0) Xv)) P) x3) x2)) ((r Xv0) Xv)) (fun (x3:((r Xv0) Xv)) (x4:((r Xv0) Xv))=> x4))) as proof of (a->(a->(a->(((and ((r Xv0) Xv)) ((r Xv0) Xv))->((r Xv0) Xv)))))
% Found x2:((r Xx0) Xy0)
% Instantiate: Xv0:=Xy0:a
% Found (fun (x2:((r Xx0) Xy0))=> x2) as proof of ((r Xx0) Xv0)
% Found or_intror00:=(or_intror0 ((r Xx0) Xy0)):(((r Xx0) Xy0)->((or ((r Xv0) Xx0)) ((r Xx0) Xy0)))
% Found (or_intror0 ((r Xx0) Xy0)) as proof of (((r Xx0) Xy0)->((or ((r Xv0) Xx0)) ((r Xx0) Xv0)))
% Found ((or_intror ((r Xv0) Xx0)) ((r Xx0) Xy0)) as proof of (((r Xx0) Xy0)->((or ((r Xv0) Xx0)) ((r Xx0) Xv0)))
% Found ((or_intror ((r Xv0) Xx0)) ((r Xx0) Xy0)) as proof of (((r Xx0) Xy0)->((or ((r Xv0) Xx0)) ((r Xx0) Xv0)))
% Found x2:((r Xv0) Xv)
% Found (fun (x2:((r Xv0) Xv))=> x2) as proof of ((r Xv0) Xv)
% Found (fun (Xy0:a) (x2:((r Xv0) Xv))=> x2) as proof of (((r Xv0) Xv)->((r Xv0) Xv))
% Found (fun (Xx0:a) (Xy0:a) (x2:((r Xv0) Xv))=> x2) as proof of (a->(((r Xv0) Xv)->((r Xv0) Xv)))
% Found (fun (Xx0:a) (Xy0:a) (x2:((r Xv0) Xv))=> x2) as proof of (a->(a->(((r Xv0) Xv)->((r Xv0) Xv))))
% Found x2:((r Xx0) Xy0)
% Instantiate: Xv0:=Xx0:a;Xv:=Xy0:a
% Found (fun (x2:((r Xx0) Xy0))=> x2) as proof of ((r Xv0) Xv)
% Found x2:((r Xx0) Xy0)
% Instantiate: Xv0:=Xy0:a;Xv:=Xx0:a
% Found (fun (x2:((r Xx0) Xy0))=> x2) as proof of ((r Xv) Xv0)
% Found x2:((r Xv) Xv0)
% Found (fun (x2:((r Xv) Xv0))=> x2) as proof of ((r Xv) Xv0)
% Found (fun (Xy0:a) (x2:((r Xv) Xv0))=> x2) as proof of (((r Xv) Xv0)->((r Xv) Xv0))
% Found (fun (Xx0:a) (Xy0:a) (x2:((r Xv) Xv0))=> x2) as proof of (a->(((r Xv) Xv0)->((r Xv) Xv0)))
% Found (fun (Xx0:a) (Xy0:a) (x2:((r Xv) Xv0))=> x2) as proof of (a->(a->(((r Xv) Xv0)->((r Xv) Xv0))))
% Found x3:((r Xv0) Xx0)
% Found (fun (x4:((r Xv0) Xy0))=> x3) as proof of ((r Xv0) Xx0)
% Found (fun (x3:((r Xv0) Xx0)) (x4:((r Xv0) Xy0))=> x3) as proof of (((r Xv0) Xy0)->((r Xv0) Xx0))
% Found (fun (x3:((r Xv0) Xx0)) (x4:((r Xv0) Xy0))=> x3) as proof of (((r Xv0) Xx0)->(((r Xv0) Xy0)->((r Xv0) Xx0)))
% Found (and_rect10 (fun (x3:((r Xv0) Xx0)) (x4:((r Xv0) Xy0))=> x3)) as proof of ((r Xv0) Xx0)
% Found ((and_rect1 ((r Xv0) Xx0)) (fun (x3:((r Xv0) Xx0)) (x4:((r Xv0) Xy0))=> x3)) as proof of ((r Xv0) Xx0)
% Found (((fun (P:Type) (x3:(((r Xv0) Xx0)->(((r Xv0) Xy0)->P)))=> (((((and_rect ((r Xv0) Xx0)) ((r Xv0) Xy0)) P) x3) x2)) ((r Xv0) Xx0)) (fun (x3:((r Xv0) Xx0)) (x4:((r Xv0) Xy0))=> x3)) as proof of ((r Xv0) Xx0)
% Found (fun (x2:((and ((r Xv0) Xx0)) ((r Xv0) Xy0)))=> (((fun (P:Type) (x3:(((r Xv0) Xx0)->(((r Xv0) Xy0)->P)))=> (((((and_rect ((r Xv0) Xx0)) ((r Xv0) Xy0)) P) x3) x2)) ((r Xv0) Xx0)) (fun (x3:((r Xv0) Xx0)) (x4:((r Xv0) Xy0))=> x3))) as proof of ((r Xv0) Xx0)
% Found (fun (Xz:a) (x2:((and ((r Xv0) Xx0)) ((r Xv0) Xy0)))=> (((fun (P:Type) (x3:(((r Xv0) Xx0)->(((r Xv0) Xy0)->P)))=> (((((and_rect ((r Xv0) Xx0)) ((r Xv0) Xy0)) P) x3) x2)) ((r Xv0) Xx0)) (fun (x3:((r Xv0) Xx0)) (x4:((r Xv0) Xy0))=> x3))) as proof of (((and ((r Xv0) Xx0)) ((r Xv0) Xy0))->((r Xv0) Xx0))
% Found (fun (Xy0:a) (Xz:a) (x2:((and ((r Xv0) Xx0)) ((r Xv0) Xy0)))=> (((fun (P:Type) (x3:(((r Xv0) Xx0)->(((r Xv0) Xy0)->P)))=> (((((and_rect ((r Xv0) Xx0)) ((r Xv0) Xy0)) P) x3) x2)) ((r Xv0) Xx0)) (fun (x3:((r Xv0) Xx0)) (x4:((r Xv0) Xy0))=> x3))) as proof of (a->(((and ((r Xv0) Xx0)) ((r Xv0) Xy0))->((r Xv0) Xx0)))
% Found (fun (Xx0:a) (Xy0:a) (Xz:a) (x2:((and ((r Xv0) Xx0)) ((r Xv0) Xy0)))=> (((fun (P:Type) (x3:(((r Xv0) Xx0)->(((r Xv0) Xy0)->P)))=> (((((and_rect ((r Xv0) Xx0)) ((r Xv0) Xy0)) P) x3) x2)) ((r Xv0) Xx0)) (fun (x3:((r Xv0) Xx0)) (x4:((r Xv0) Xy0))=> x3))) as proof of (forall (Xy0:a), (a->(((and ((r Xv0) Xx0)) ((r Xv0) Xy0))->((r Xv0) Xx0))))
% Found (fun (Xx0:a) (Xy0:a) (Xz:a) (x2:((and ((r Xv0) Xx0)) ((r Xv0) Xy0)))=> (((fun (P:Type) (x3:(((r Xv0) Xx0)->(((r Xv0) Xy0)->P)))=> (((((and_rect ((r Xv0) Xx0)) ((r Xv0) Xy0)) P) x3) x2)) ((r Xv0) Xx0)) (fun (x3:((r Xv0) Xx0)) (x4:((r Xv0) Xy0))=> x3))) as proof of (forall (Xx0:a) (Xy0:a), (a->(((and ((r Xv0) Xx0)) ((r Xv0) Xy0))->((r Xv0) Xx0))))
% Found x3:((r Xx0) Xv0)
% Found (fun (x4:((r Xy0) Xv0))=> x3) as proof of ((r Xx0) Xv0)
% Found (fun (x3:((r Xx0) Xv0)) (x4:((r Xy0) Xv0))=> x3) as proof of (((r Xy0) Xv0)->((r Xx0) Xv0))
% Found (fun (x3:((r Xx0) Xv0)) (x4:((r Xy0) Xv0))=> x3) as proof of (((r Xx0) Xv0)->(((r Xy0) Xv0)->((r Xx0) Xv0)))
% Found (and_rect10 (fun (x3:((r Xx0) Xv0)) (x4:((r Xy0) Xv0))=> x3)) as proof of ((r Xx0) Xv0)
% Found ((and_rect1 ((r Xx0) Xv0)) (fun (x3:((r Xx0) Xv0)) (x4:((r Xy0) Xv0))=> x3)) as proof of ((r Xx0) Xv0)
% Found (((fun (P:Type) (x3:(((r Xx0) Xv0)->(((r Xy0) Xv0)->P)))=> (((((and_rect ((r Xx0) Xv0)) ((r Xy0) Xv0)) P) x3) x2)) ((r Xx0) Xv0)) (fun (x3:((r Xx0) Xv0)) (x4:((r Xy0) Xv0))=> x3)) as proof of ((r Xx0) Xv0)
% Found (fun (x2:((and ((r Xx0) Xv0)) ((r Xy0) Xv0)))=> (((fun (P:Type) (x3:(((r Xx0) Xv0)->(((r Xy0) Xv0)->P)))=> (((((and_rect ((r Xx0) Xv0)) ((r Xy0) Xv0)) P) x3) x2)) ((r Xx0) Xv0)) (fun (x3:((r Xx0) Xv0)) (x4:((r Xy0) Xv0))=> x3))) as proof of ((r Xx0) Xv0)
% Found (fun (Xz:a) (x2:((and ((r Xx0) Xv0)) ((r Xy0) Xv0)))=> (((fun (P:Type) (x3:(((r Xx0) Xv0)->(((r Xy0) Xv0)->P)))=> (((((and_rect ((r Xx0) Xv0)) ((r Xy0) Xv0)) P) x3) x2)) ((r Xx0) Xv0)) (fun (x3:((r Xx0) Xv0)) (x4:((r Xy0) Xv0))=> x3))) as proof of (((and ((r Xx0) Xv0)) ((r Xy0) Xv0))->((r Xx0) Xv0))
% Found (fun (Xy0:a) (Xz:a) (x2:((and ((r Xx0) Xv0)) ((r Xy0) Xv0)))=> (((fun (P:Type) (x3:(((r Xx0) Xv0)->(((r Xy0) Xv0)->P)))=> (((((and_rect ((r Xx0) Xv0)) ((r Xy0) Xv0)) P) x3) x2)) ((r Xx0) Xv0)) (fun (x3:((r Xx0) Xv0)) (x4:((r Xy0) Xv0))=> x3))) as proof of (a->(((and ((r Xx0) Xv0)) ((r Xy0) Xv0))->((r Xx0) Xv0)))
% Found (fun (Xx0:a) (Xy0:a) (Xz:a) (x2:((and ((r Xx0) Xv0)) ((r Xy0) Xv0)))=> (((fun (P:Type) (x3:(((r Xx0) Xv0)->(((r Xy0) Xv0)->P)))=> (((((and_rect ((r Xx0) Xv0)) ((r Xy0) Xv0)) P) x3) x2)) ((r Xx0) Xv0)) (fun (x3:((r Xx0) Xv0)) (x4:((r Xy0) Xv0))=> x3))) as proof of (forall (Xy0:a), (a->(((and ((r Xx0) Xv0)) ((r Xy0) Xv0))->((r Xx0) Xv0))))
% Found (fun (Xx0:a) (Xy0:a) (Xz:a) (x2:((and ((r Xx0) Xv0)) ((r Xy0) Xv0)))=> (((fun (P:Type) (x3:(((r Xx0) Xv0)->(((r Xy0) Xv0)->P)))=> (((((and_rect ((r Xx0) Xv0)) ((r Xy0) Xv0)) P) x3) x2)) ((r Xx0) Xv0)) (fun (x3:((r Xx0) Xv0)) (x4:((r Xy0) Xv0))=> x3))) as proof of (forall (Xx0:a) (Xy0:a), (a->(((and ((r Xx0) Xv0)) ((r Xy0) Xv0))->((r Xx0) Xv0))))
% Found x3:((or ((r Xv0) Xx0)) ((r Xx0) Xv0))
% Found (fun (x4:((or ((r Xv0) Xy0)) ((r Xy0) Xv0)))=> x3) as proof of ((or ((r Xv0) Xx0)) ((r Xx0) Xv0))
% Found (fun (x3:((or ((r Xv0) Xx0)) ((r Xx0) Xv0))) (x4:((or ((r Xv0) Xy0)) ((r Xy0) Xv0)))=> x3) as proof of (((or ((r Xv0) Xy0)) ((r Xy0) Xv0))->((or ((r Xv0) Xx0)) ((r Xx0) Xv0)))
% Found (fun (x3:((or ((r Xv0) Xx0)) ((r Xx0) Xv0))) (x4:((or ((r Xv0) Xy0)) ((r Xy0) Xv0)))=> x3) as proof of (((or ((r Xv0) Xx0)) ((r Xx0) Xv0))->(((or ((r Xv0) Xy0)) ((r Xy0) Xv0))->((or ((r Xv0) Xx0)) ((r Xx0) Xv0))))
% Found (and_rect10 (fun (x3:((or ((r Xv0) Xx0)) ((r Xx0) Xv0))) (x4:((or ((r Xv0) Xy0)) ((r Xy0) Xv0)))=> x3)) as proof of ((or ((r Xv0) Xx0)) ((r Xx0) Xv0))
% Found ((and_rect1 ((or ((r Xv0) Xx0)) ((r Xx0) Xv0))) (fun (x3:((or ((r Xv0) Xx0)) ((r Xx0) Xv0))) (x4:((or ((r Xv0) Xy0)) ((r Xy0) Xv0)))=> x3)) as proof of ((or ((r Xv0) Xx0)) ((r Xx0) Xv0))
% Found (((fun (P:Type) (x3:(((or ((r Xv0) Xx0)) ((r Xx0) Xv0))->(((or ((r Xv0) Xy0)) ((r Xy0) Xv0))->P)))=> (((((and_rect ((or ((r Xv0) Xx0)) ((r Xx0) Xv0))) ((or ((r Xv0) Xy0)) ((r Xy0) Xv0))) P) x3) x2)) ((or ((r Xv0) Xx0)) ((r Xx0) Xv0))) (fun (x3:((or ((r Xv0) Xx0)) ((r Xx0) Xv0))) (x4:((or ((r Xv0) Xy0)) ((r Xy0) Xv0)))=> x3)) as proof of ((or ((r Xv0) Xx0)) ((r Xx0) Xv0))
% Found (fun (x2:((and ((or ((r Xv0) Xx0)) ((r Xx0) Xv0))) ((or ((r Xv0) Xy0)) ((r Xy0) Xv0))))=> (((fun (P:Type) (x3:(((or ((r Xv0) Xx0)) ((r Xx0) Xv0))->(((or ((r Xv0) Xy0)) ((r Xy0) Xv0))->P)))=> (((((and_rect ((or ((r Xv0) Xx0)) ((r Xx0) Xv0))) ((or ((r Xv0) Xy0)) ((r Xy0) Xv0))) P) x3) x2)) ((or ((r Xv0) Xx0)) ((r Xx0) Xv0))) (fun (x3:((or ((r Xv0) Xx0)) ((r Xx0) Xv0))) (x4:((or ((r Xv0) Xy0)) ((r Xy0) Xv0)))=> x3))) as proof of ((or ((r Xv0) Xx0)) ((r Xx0) Xv0))
% Found (fun (Xz:a) (x2:((and ((or ((r Xv0) Xx0)) ((r Xx0) Xv0))) ((or ((r Xv0) Xy0)) ((r Xy0) Xv0))))=> (((fun (P:Type) (x3:(((or ((r Xv0) Xx0)) ((r Xx0) Xv0))->(((or ((r Xv0) Xy0)) ((r Xy0) Xv0))->P)))=> (((((and_rect ((or ((r Xv0) Xx0)) ((r Xx0) Xv0))) ((or ((r Xv0) Xy0)) ((r Xy0) Xv0))) P) x3) x2)) ((or ((r Xv0) Xx0)) ((r Xx0) Xv0))) (fun (x3:((or ((r Xv0) Xx0)) ((r Xx0) Xv0))) (x4:((or ((r Xv0) Xy0)) ((r Xy0) Xv0)))=> x3))) as proof of (((and ((or ((r Xv0) Xx0)) ((r Xx0) Xv0))) ((or ((r Xv0) Xy0)) ((r Xy0) Xv0)))->((or ((r Xv0) Xx0)) ((r Xx0) Xv0)))
% Found (fun (Xy0:a) (Xz:a) (x2:((and ((or ((r Xv0) Xx0)) ((r Xx0) Xv0))) ((or ((r Xv0) Xy0)) ((r Xy0) Xv0))))=> (((fun (P:Type) (x3:(((or ((r Xv0) Xx0)) ((r Xx0) Xv0))->(((or ((r Xv0) Xy0)) ((r Xy0) Xv0))->P)))=> (((((and_rect ((or ((r Xv0) Xx0)) ((r Xx0) Xv0))) ((or ((r Xv0) Xy0)) ((r Xy0) Xv0))) P) x3) x2)) ((or ((r Xv0) Xx0)) ((r Xx0) Xv0))) (fun (x3:((or ((r Xv0) Xx0)) ((r Xx0) Xv0))) (x4:((or ((r Xv0) Xy0)) ((r Xy0) Xv0)))=> x3))) as proof of (a->(((and ((or ((r Xv0) Xx0)) ((r Xx0) Xv0))) ((or ((r Xv0) Xy0)) ((r Xy0) Xv0)))->((or ((r Xv0) Xx0)) ((r Xx0) Xv0))))
% Found (fun (Xx0:a) (Xy0:a) (Xz:a) (x2:((and ((or ((r Xv0) Xx0)) ((r Xx0) Xv0))) ((or ((r Xv0) Xy0)) ((r Xy0) Xv0))))=> (((fun (P:Type) (x3:(((or ((r Xv0) Xx0)) ((r Xx0) Xv0))->(((or ((r Xv0) Xy0)) ((r Xy0) Xv0))->P)))=> (((((and_rect ((or ((r Xv0) Xx0)) ((r Xx0) Xv0))) ((or ((r Xv0) Xy0)) ((r Xy0) Xv0))) P) x3) x2)) ((or ((r Xv0) Xx0)) ((r Xx0) Xv0))) (fun (x3:((or ((r Xv0) Xx0)) ((r Xx0) Xv0))) (x4:((or ((r Xv0) Xy0)) ((r Xy0) Xv0)))=> x3))) as proof of (forall (Xy0:a), (a->(((and ((or ((r Xv0) Xx0)) ((r Xx0) Xv0))) ((or ((r Xv0) Xy0)) ((r Xy0) Xv0)))->((or ((r Xv0) Xx0)) ((r Xx0) Xv0)))))
% Found (fun (Xx0:a) (Xy0:a) (Xz:a) (x2:((and ((or ((r Xv0) Xx0)) ((r Xx0) Xv0))) ((or ((r Xv0) Xy0)) ((r Xy0) Xv0))))=> (((fun (P:Type) (x3:(((or ((r Xv0) Xx0)) ((r Xx0) Xv0))->(((or ((r Xv0) Xy0)) ((r Xy0) Xv0))->P)))=> (((((and_rect ((or ((r Xv0) Xx0)) ((r Xx0) Xv0))) ((or ((r Xv0) Xy0)) ((r Xy0) Xv0))) P) x3) x2)) ((or ((r Xv0) Xx0)) ((r Xx0) Xv0))) (fun (x3:((or ((r Xv0) Xx0)) ((r Xx0) Xv0))) (x4:((or ((r Xv0) Xy0)) ((r Xy0) Xv0)))=> x3))) as proof of (forall (Xx0:a) (Xy0:a), (a->(((and ((or ((r Xv0) Xx0)) ((r Xx0) Xv0))) ((or ((r Xv0) Xy0)) ((r Xy0) Xv0)))->((or ((r Xv0) Xx0)) ((r Xx0) Xv0)))))
% Found x2:((r Xx0) Xy0)
% Instantiate: Xv0:=Xy0:a
% Found x2 as proof of ((r Xx0) Xv0)
% Found (or_intror00 x2) as proof of ((or ((r Xv0) Xx0)) ((r Xx0) Xv0))
% Found ((or_intror0 ((r Xx0) Xv0)) x2) as proof of ((or ((r Xv0) Xx0)) ((r Xx0) Xv0))
% Found (((or_intror ((r Xv0) Xx0)) ((r Xx0) Xv0)) x2) as proof of ((or ((r Xv0) Xx0)) ((r Xx0) Xv0))
% Found (fun (x2:((r Xx0) Xy0))=> (((or_intror ((r Xv0) Xx0)) ((r Xx0) Xv0)) x2)) as proof of ((or ((r Xv0) Xx0)) ((r Xx0) Xv0))
% Found x4:((r Xv0) Xv)
% Found (fun (x4:((r Xv0) Xv))=> x4) as proof of ((r Xv0) Xv)
% Found (fun (x3:((r Xv0) Xv)) (x4:((r Xv0) Xv))=> x4) as proof of (((r Xv0) Xv)->((r Xv0) Xv))
% Found (fun (x3:((r Xv0) Xv)) (x4:((r Xv0) Xv))=> x4) as proof of (((r Xv0) Xv)->(((r Xv0) Xv)->((r Xv0) Xv)))
% Found (and_rect10 (fun (x3:((r Xv0) Xv)) (x4:((r Xv0) Xv))=> x4)) as proof of ((r Xv0) Xv)
% Found ((and_rect1 ((r Xv0) Xv)) (fun (x3:((r Xv0) Xv)) (x4:((r Xv0) Xv))=> x4)) as proof of ((r Xv0) Xv)
% Found (((fun (P:Type) (x3:(((r Xv0) Xv)->(((r Xv0) Xv)->P)))=> (((((and_rect ((r Xv0) Xv)) ((r Xv0) Xv)) P) x3) x2)) ((r Xv0) Xv)) (fun (x3:((r Xv0) Xv)) (x4:((r Xv0) Xv))=> x4)) as proof of ((r Xv0) Xv)
% Found (fun (x2:((and ((r Xv0) Xv)) ((r Xv0) Xv)))=> (((fun (P:Type) (x3:(((r Xv0) Xv)->(((r Xv0) Xv)->P)))=> (((((and_rect ((r Xv0) Xv)) ((r Xv0) Xv)) P) x3) x2)) ((r Xv0) Xv)) (fun (x3:((r Xv0) Xv)) (x4:((r Xv0) Xv))=> x4))) as proof of ((r Xv0) Xv)
% Found (fun (Xz:a) (x2:((and ((r Xv0) Xv)) ((r Xv0) Xv)))=> (((fun (P:Type) (x3:(((r Xv0) Xv)->(((r Xv0) Xv)->P)))=> (((((and_rect ((r Xv0) Xv)) ((r Xv0) Xv)) P) x3) x2)) ((r Xv0) Xv)) (fun (x3:((r Xv0) Xv)) (x4:((r Xv0) Xv))=> x4))) as proof of (((and ((r Xv0) Xv)) ((r Xv0) Xv))->((r Xv0) Xv))
% Found (fun (Xy0:a) (Xz:a) (x2:((and ((r Xv0) Xv)) ((r Xv0) Xv)))=> (((fun (P:Type) (x3:(((r Xv0) Xv)->(((r Xv0) Xv)->P)))=> (((((and_rect ((r Xv0) Xv)) ((r Xv0) Xv)) P) x3) x2)) ((r Xv0) Xv)) (fun (x3:((r Xv0) Xv)) (x4:((r Xv0) Xv))=> x4))) as proof of (a->(((and ((r Xv0) Xv)) ((r Xv0) Xv))->((r Xv0) Xv)))
% Found (fun (Xx0:a) (Xy0:a) (Xz:a) (x2:((and ((r Xv0) Xv)) ((r Xv0) Xv)))=> (((fun (P:Type) (x3:(((r Xv0) Xv)->(((r Xv0) Xv)->P)))=> (((((and_rect ((r Xv0) Xv)) ((r Xv0) Xv)) P) x3) x2)) ((r Xv0) Xv)) (fun (x3:((r Xv0) Xv)) (x4:((r Xv0) Xv))=> x4))) as proof of (a->(a->(((and ((r Xv0) Xv)) ((r Xv0) Xv))->((r Xv0) Xv))))
% Found (fun (Xx0:a) (Xy0:a) (Xz:a) (x2:((and ((r Xv0) Xv)) ((r Xv0) Xv)))=> (((fun (P:Type) (x3:(((r Xv0) Xv)->(((r Xv0) Xv)->P)))=> (((((and_rect ((r Xv0) Xv)) ((r Xv0) Xv)) P) x3) x2)) ((r Xv0) Xv)) (fun (x3:((r Xv0) Xv)) (x4:((r Xv0) Xv))=> x4))) as proof of (a->(a->(a->(((and ((r Xv0) Xv)) ((r Xv0) Xv))->((r Xv0) Xv)))))
% Found x4:((r Xv) Xv0)
% Found (fun (x4:((r Xv) Xv0))=> x4) as proof of ((r Xv) Xv0)
% Found (fun (x3:((r Xv) Xv0)) (x4:((r Xv) Xv0))=> x4) as proof of (((r Xv) Xv0)->((r Xv) Xv0))
% Found (fun (x3:((r Xv) Xv0)) (x4:((r Xv) Xv0))=> x4) as proof of (((r Xv) Xv0)->(((r Xv) Xv0)->((r Xv) Xv0)))
% Found (and_rect10 (fun (x3:((r Xv) Xv0)) (x4:((r Xv) Xv0))=> x4)) as proof of ((r Xv) Xv0)
% Found ((and_rect1 ((r Xv) Xv0)) (fun (x3:((r Xv) Xv0)) (x4:((r Xv) Xv0))=> x4)) as proof of ((r Xv) Xv0)
% Found (((fun (P:Type) (x3:(((r Xv) Xv0)->(((r Xv) Xv0)->P)))=> (((((and_rect ((r Xv) Xv0)) ((r Xv) Xv0)) P) x3) x2)) ((r Xv) Xv0)) (fun (x3:((r Xv) Xv0)) (x4:((r Xv) Xv0))=> x4)) as proof of ((r Xv) Xv0)
% Found (fun (x2:((and ((r Xv) Xv0)) ((r Xv) Xv0)))=> (((fun (P:Type) (x3:(((r Xv) Xv0)->(((r Xv) Xv0)->P)))=> (((((and_rect ((r Xv) Xv0)) ((r Xv) Xv0)) P) x3) x2)) ((r Xv) Xv0)) (fun (x3:((r Xv) Xv0)) (x4:((r Xv) Xv0))=> x4))) as proof of ((r Xv) Xv0)
% Found (fun (Xz:a) (x2:((and ((r Xv) Xv0)) ((r Xv) Xv0)))=> (((fun (P:Type) (x3:(((r Xv) Xv0)->(((r Xv) Xv0)->P)))=> (((((and_rect ((r Xv) Xv0)) ((r Xv) Xv0)) P) x3) x2)) ((r Xv) Xv0)) (fun (x3:((r Xv) Xv0)) (x4:((r Xv) Xv0))=> x4))) as proof of (((and ((r Xv) Xv0)) ((r Xv) Xv0))->((r Xv) Xv0))
% Found (fun (Xy0:a) (Xz:a) (x2:((and ((r Xv) Xv0)) ((r Xv) Xv0)))=> (((fun (P:Type) (x3:(((r Xv) Xv0)->(((r Xv) Xv0)->P)))=> (((((and_rect ((r Xv) Xv0)) ((r Xv) Xv0)) P) x3) x2)) ((r Xv) Xv0)) (fun (x3:((r Xv) Xv0)) (x4:((r Xv) Xv0))=> x4))) as proof of (a->(((and ((r Xv) Xv0)) ((r Xv) Xv0))->((r Xv) Xv0)))
% Found (fun (Xx0:a) (Xy0:a) (Xz:a) (x2:((and ((r Xv) Xv0)) ((r Xv) Xv0)))=> (((fun (P:Type) (x3:(((r Xv) Xv0)->(((r Xv) Xv0)->P)))=> (((((and_rect ((r Xv) Xv0)) ((r Xv) Xv0)) P) x3) x2)) ((r Xv) Xv0)) (fun (x3:((r Xv) Xv0)) (x4:((r Xv) Xv0))=> x4))) as proof of (a->(a->(((and ((r Xv) Xv0)) ((r Xv) Xv0))->((r Xv) Xv0))))
% Found (fun (Xx0:a) (Xy0:a) (Xz:a) (x2:((and ((r Xv) Xv0)) ((r Xv) Xv0)))=> (((fun (P:Type) (x3:(((r Xv) Xv0)->(((r Xv) Xv0)->P)))=> (((((and_rect ((r Xv) Xv0)) ((r Xv) Xv0)) P) x3) x2)) ((r Xv) Xv0)) (fun (x3:((r Xv) Xv0)) (x4:((r Xv) Xv0))=> x4))) as proof of (a->(a->(a->(((and ((r Xv) Xv0)) ((r Xv) Xv0))->((r Xv) Xv0)))))
% Found x2:((r Xx0) Xy0)
% Instantiate: Xv0:=Xy0:a
% Found x2 as proof of ((r Xx0) Xv0)
% Found (or_intror00 x2) as proof of ((or ((r Xv0) Xx0)) ((r Xx0) Xv0))
% Found ((or_intror0 ((r Xx0) Xv0)) x2) as proof of ((or ((r Xv0) Xx0)) ((r Xx0) Xv0))
% Found (((or_intror ((r Xv0) Xx0)) ((r Xx0) Xv0)) x2) as proof of ((or ((r Xv0) Xx0)) ((r Xx0) Xv0))
% Found (((or_intror ((r Xv0) Xx0)) ((r Xx0) Xv0)) x2) as proof of ((or ((r Xv0) Xx0)) ((r Xx0) Xv0))
% Found (or_comm_i00 (((or_intror ((r Xv0) Xx0)) ((r Xx0) Xv0)) x2)) as proof of ((or ((r Xx0) Xv0)) ((r Xv0) Xx0))
% Found ((or_comm_i0 ((r Xx0) Xv0)) (((or_intror ((r Xv0) Xx0)) ((r Xx0) Xv0)) x2)) as proof of ((or ((r Xx0) Xv0)) ((r Xv0) Xx0))
% Found (((or_comm_i ((r Xv0) Xx0)) ((r Xx0) Xv0)) (((or_intror ((r Xv0) Xx0)) ((r Xx0) Xv0)) x2)) as proof of ((or ((r Xx0) Xv0)) ((r Xv0) Xx0))
% Found (fun (x2:((r Xx0) Xy0))=> (((or_comm_i ((r Xv0) Xx0)) ((r Xx0) Xv0)) (((or_intror ((r Xv0) Xx0)) ((r Xx0) Xv0)) x2))) as proof of ((or ((r Xx0) Xv0)) ((r Xv0) Xx0))
% Found x2:((r Xx0) Xy0)
% Instantiate: Xv1:=Xx0:a;Xv0:=Xy0:a
% Found x2 as proof of ((r Xv1) Xv0)
% Found (or_introl00 x2) as proof of ((or ((r Xv1) Xv0)) ((r Xv0) Xv1))
% Found ((or_introl0 ((r Xv0) Xv1)) x2) as proof of ((or ((r Xv1) Xv0)) ((r Xv0) Xv1))
% Found (((or_introl ((r Xv1) Xv0)) ((r Xv0) Xv1)) x2) as proof of ((or ((r Xv1) Xv0)) ((r Xv0) Xv1))
% Found (((or_introl ((r Xv1) Xv0)) ((r Xv0) Xv1)) x2) as proof of ((or ((r Xv1) Xv0)) ((r Xv0) Xv1))
% Found x2:((r Xx0) Xy0)
% Instantiate: Xv0:=Xy0:a
% Found (fun (x2:((r Xx0) Xy0))=> x2) as proof of ((r Xx0) Xv0)
% Found x2:((r Xx0) Xy0)
% Instantiate: Xv1:=Xy0:a
% Found x2 as proof of ((r Xv0) Xv1)
% Found (or_intror00 x2) as proof of ((or ((r Xv1) Xv0)) ((r Xv0) Xv1))
% Found ((or_intror0 ((r Xv0) Xv1)) x2) as proof of ((or ((r Xv1) Xv0)) ((r Xv0) Xv1))
% Found (((or_intror ((r Xv1) Xv0)) ((r Xv0) Xv1)) x2) as proof of ((or ((r Xv1) Xv0)) ((r Xv0) Xv1))
% Found (((or_intror ((r Xv1) Xv0)) ((r Xv0) Xv1)) x2) as proof of ((or ((r Xv1) Xv0)) ((r Xv0) Xv1))
% Found x2:((r Xx0) Xy0)
% Instantiate: Xv1:=Xx0:a;Xv0:=Xy0:a
% Found x2 as proof of ((r Xv1) Xv0)
% Found (or_introl00 x2) as proof of ((or ((r Xv1) Xv0)) ((r Xv0) Xv1))
% Found ((or_introl0 ((r Xv0) Xv1)) x2) as proof of ((or ((r Xv1) Xv0)) ((r Xv0) Xv1))
% Found (((or_introl ((r Xv1) Xv0)) ((r Xv0) Xv1)) x2) as proof of ((or ((r Xv1) Xv0)) ((r Xv0) Xv1))
% Found (((or_introl ((r Xv1) Xv0)) ((r Xv0) Xv1)) x2) as proof of ((or ((r Xv1) Xv0)) ((r Xv0) Xv1))
% Found x2:((r Xx0) Xy0)
% Instantiate: Xv1:=Xx0:a
% Found x2 as proof of ((r Xv1) Xv0)
% Found (or_introl00 x2) as proof of ((or ((r Xv1) Xv0)) ((r Xv0) Xv1))
% Found ((or_introl0 ((r Xv0) Xv1)) x2) as proof of ((or ((r Xv1) Xv0)) ((r Xv0) Xv1))
% Found (((or_introl ((r Xv1) Xv0)) ((r Xv0) Xv1)) x2) as proof of ((or ((r Xv1) Xv0)) ((r Xv0) Xv1))
% Found (((or_introl ((r Xv1) Xv0)) ((r Xv0) Xv1)) x2) as proof of ((or ((r Xv1) Xv0)) ((r Xv0) Xv1))
% Found x2:((r Xx0) Xy0)
% Instantiate: Xv1:=Xx0:a;Xv0:=Xy0:a
% Found x2 as proof of ((r Xv1) Xv0)
% Found (or_introl00 x2) as proof of ((or ((r Xv1) Xv0)) ((r Xv0) Xv1))
% Found ((or_introl0 ((r Xv0) Xv1)) x2) as proof of ((or ((r Xv1) Xv0)) ((r Xv0) Xv1))
% Found (((or_introl ((r Xv1) Xv0)) ((r Xv0) Xv1)) x2) as proof of ((or ((r Xv1) Xv0)) ((r Xv0) Xv1))
% Found (((or_introl ((r Xv1) Xv0)) ((r Xv0) Xv1)) x2) as proof of ((or ((r Xv1) Xv0)) ((r Xv0) Xv1))
% Found x2:((r Xx0) Xy0)
% Instantiate: Xv1:=Xy0:a;Xv0:=Xx0:a
% Found x2 as proof of ((r Xv0) Xv1)
% Found (or_intror00 x2) as proof of ((or ((r Xv1) Xv0)) ((r Xv0) Xv1))
% Found ((or_intror0 ((r Xv0) Xv1)) x2) as proof of ((or ((r Xv1) Xv0)) ((r Xv0) Xv1))
% Found (((or_intror ((r Xv1) Xv0)) ((r Xv0) Xv1)) x2) as proof of ((or ((r Xv1) Xv0)) ((r Xv0) Xv1))
% Found (((or_intror ((r Xv1) Xv0)) ((r Xv0) Xv1)) x2) as proof of ((or ((r Xv1) Xv0)) ((r Xv0) Xv1))
% Found x2:((r Xx0) Xy0)
% Instantiate: Xv1:=Xy0:a;Xv0:=Xx0:a
% Found x2 as proof of ((r Xv0) Xv1)
% Found (or_intror00 x2) as proof of ((or ((r Xv1) Xv0)) ((r Xv0) Xv1))
% Found ((or_intror0 ((r Xv0) Xv1)) x2) as proof of ((or ((r Xv1) Xv0)) ((r Xv0) Xv1))
% Found (((or_intror ((r Xv1) Xv0)) ((r Xv0) Xv1)) x2) as proof of ((or ((r Xv1) Xv0)) ((r Xv0) Xv1))
% Found (((or_intror ((r Xv1) Xv0)) ((r Xv0) Xv1)) x2) as proof of ((or ((r Xv1) Xv0)) ((r Xv0) Xv1))
% Found x2:((r Xx0) Xy0)
% Instantiate: Xv1:=Xy0:a;Xv0:=Xx0:a
% Found x2 as proof of ((r Xv0) Xv1)
% Found (or_intror00 x2) as proof of ((or ((r Xv1) Xv0)) ((r Xv0) Xv1))
% Found ((or_intror0 ((r Xv0) Xv1)) x2) as proof of ((or ((r Xv1) Xv0)) ((r Xv0) Xv1))
% Found (((or_intror ((r Xv1) Xv0)) ((r Xv0) Xv1)) x2) as proof of ((or ((r Xv1) Xv0)) ((r Xv0) Xv1))
% Found (((or_intror ((r Xv1) Xv0)) ((r Xv0) Xv1)) x2) as proof of ((or ((r Xv1) Xv0)) ((r Xv0) Xv1))
% Found x2:((r Xx0) Xy0)
% Instantiate: Xv1:=Xy0:a
% Found x2 as proof of ((r Xv0) Xv1)
% Found (or_intror00 x2) as proof of ((or ((r Xv1) Xv0)) ((r Xv0) Xv1))
% Found ((or_intror0 ((r Xv0) Xv1)) x2) as proof of ((or ((r Xv1) Xv0)) ((r Xv0) Xv1))
% Found (((or_intror ((r Xv1) Xv0)) ((r Xv0) Xv1)) x2) as proof of ((or ((r Xv1) Xv0)) ((r Xv0) Xv1))
% Found (((or_intror ((r Xv1) Xv0)) ((r Xv0) Xv1)) x2) as proof of ((or ((r Xv1) Xv0)) ((r Xv0) Xv1))
% Found x2:((r Xx0) Xy0)
% Instantiate: Xv1:=Xy0:a;Xv0:=Xx0:a
% Found x2 as proof of ((r Xv0) Xv1)
% Found (or_intror00 x2) as proof of ((or ((r Xv1) Xv0)) ((r Xv0) Xv1))
% Found ((or_intror0 ((r Xv0) Xv1)) x2) as proof of ((or ((r Xv1) Xv0)) ((r Xv0) Xv1))
% Found (((or_intror ((r Xv1) Xv0)) ((r Xv0) Xv1)) x2) as proof of ((or ((r Xv1) Xv0)) ((r Xv0) Xv1))
% Found (((or_intror ((r Xv1) Xv0)) ((r Xv0) Xv1)) x2) as proof of ((or ((r Xv1) Xv0)) ((r Xv0) Xv1))
% Found x2:((r Xx0) Xy0)
% Instantiate: Xv1:=Xx0:a;Xv0:=Xy0:a
% Found x2 as proof of ((r Xv1) Xv0)
% Found (or_introl00 x2) as proof of ((or ((r Xv1) Xv0)) ((r Xv0) Xv1))
% Found ((or_introl0 ((r Xv0) Xv1)) x2) as proof of ((or ((r Xv1) Xv0)) ((r Xv0) Xv1))
% Found (((or_introl ((r Xv1) Xv0)) ((r Xv0) Xv1)) x2) as proof of ((or ((r Xv1) Xv0)) ((r Xv0) Xv1))
% Found (((or_introl ((r Xv1) Xv0)) ((r Xv0) Xv1)) x2) as proof of ((or ((r Xv1) Xv0)) ((r Xv0) Xv1))
% Found x2:((r Xx0) Xy0)
% Instantiate: Xv1:=Xx0:a;Xv0:=Xy0:a
% Found x2 as proof of ((r Xv1) Xv0)
% Found (or_introl00 x2) as proof of ((or ((r Xv1) Xv0)) ((r Xv0) Xv1))
% Found ((or_introl0 ((r Xv0) Xv1)) x2) as proof of ((or ((r Xv1) Xv0)) ((r Xv0) Xv1))
% Found (((or_introl ((r Xv1) Xv0)) ((r Xv0) Xv1)) x2) as proof of ((or ((r Xv1) Xv0)) ((r Xv0) Xv1))
% Found (((or_introl ((r Xv1) Xv0)) ((r Xv0) Xv1)) x2) as proof of ((or ((r Xv1) Xv0)) ((r Xv0) Xv1))
% Found x2:((r Xx0) Xy0)
% Instantiate: Xv1:=Xy0:a;Xv0:=Xx0:a
% Found x2 as proof of ((r Xv0) Xv1)
% Found (or_intror00 x2) as proof of ((or ((r Xv1) Xv0)) ((r Xv0) Xv1))
% Found ((or_intror0 ((r Xv0) Xv1)) x2) as proof of ((or ((r Xv1) Xv0)) ((r Xv0) Xv1))
% Found (((or_intror ((r Xv1) Xv0)) ((r Xv0) Xv1)) x2) as proof of ((or ((r Xv1) Xv0)) ((r Xv0) Xv1))
% Found (((or_intror ((r Xv1) Xv0)) ((r Xv0) Xv1)) x2) as proof of ((or ((r Xv1) Xv0)) ((r Xv0) Xv1))
% Found x2:((r Xx0) Xy0)
% Instantiate: Xv1:=Xx0:a;Xv0:=Xy0:a
% Found x2 as proof of ((r Xv1) Xv0)
% Found (or_introl00 x2) as proof of ((or ((r Xv1) Xv0)) ((r Xv0) Xv1))
% Found ((or_introl0 ((r Xv0) Xv1)) x2) as proof of ((or ((r Xv1) Xv0)) ((r Xv0) Xv1))
% Found (((or_introl ((r Xv1) Xv0)) ((r Xv0) Xv1)) x2) as proof of ((or ((r Xv1) Xv0)) ((r Xv0) Xv1))
% Found (((or_introl ((r Xv1) Xv0)) ((r Xv0) Xv1)) x2) as proof of ((or ((r Xv1) Xv0)) ((r Xv0) Xv1))
% Found x2:((r Xx0) Xy0)
% Instantiate: Xv1:=Xy0:a;Xv0:=Xx0:a
% Found x2 as proof of ((r Xv0) Xv1)
% Found (or_intror00 x2) as proof of ((or ((r Xv1) Xv0)) ((r Xv0) Xv1))
% Found ((or_intror0 ((r Xv0) Xv1)) x2) as proof of ((or ((r Xv1) Xv0)) ((r Xv0) Xv1))
% Found (((or_intror ((r Xv1) Xv0)) ((r Xv0) Xv1)) x2) as proof of ((or ((r Xv1) Xv0)) ((r Xv0) Xv1))
% Found (((or_intror ((r Xv1) Xv0)) ((r Xv0) Xv1)) x2) as proof of ((or ((r Xv1) Xv0)) ((r Xv0) Xv1))
% Found x3:((r Xv0) Xx0)
% Found (fun (x4:((r Xv0) Xy0))=> x3) as proof of ((r Xv0) Xx0)
% Found (fun (x3:((r Xv0) Xx0)) (x4:((r Xv0) Xy0))=> x3) as proof of (((r Xv0) Xy0)->((r Xv0) Xx0))
% Found (fun (x3:((r Xv0) Xx0)) (x4:((r Xv0) Xy0))=> x3) as proof of (((r Xv0) Xx0)->(((r Xv0) Xy0)->((r Xv0) Xx0)))
% Found (and_rect10 (fun (x3:((r Xv0) Xx0)) (x4:((r Xv0) Xy0))=> x3)) as proof of ((r Xv0) Xx0)
% Found ((and_rect1 ((r Xv0) Xx0)) (fun (x3:((r Xv0) Xx0)) (x4:((r Xv0) Xy0))=> x3)) as proof of ((r Xv0) Xx0)
% Found (((fun (P:Type) (x3:(((r Xv0) Xx0)->(((r Xv0) Xy0)->P)))=> (((((and_rect ((r Xv0) Xx0)) ((r Xv0) Xy0)) P) x3) x2)) ((r Xv0) Xx0)) (fun (x3:((r Xv0) Xx0)) (x4:((r Xv0) Xy0))=> x3)) as proof of ((r Xv0) Xx0)
% Found (fun (x2:((and ((r Xv0) Xx0)) ((r Xv0) Xy0)))=> (((fun (P:Type) (x3:(((r Xv0) Xx0)->(((r Xv0) Xy0)->P)))=> (((((and_rect ((r Xv0) Xx0)) ((r Xv0) Xy0)) P) x3) x2)) ((r Xv0) Xx0)) (fun (x3:((r Xv0) Xx0)) (x4:((r Xv0) Xy0))=> x3))) as proof of ((r Xv0) Xx0)
% Found (fun (Xz:a) (x2:((and ((r Xv0) Xx0)) ((r Xv0) Xy0)))=> (((fun (P:Type) (x3:(((r Xv0) Xx0)->(((r Xv0) Xy0)->P)))=> (((((and_rect ((r Xv0) Xx0)) ((r Xv0) Xy0)) P) x3) x2)) ((r Xv0) Xx0)) (fun (x3:((r Xv0) Xx0)) (x4:((r Xv0) Xy0))=> x3))) as proof of (((and ((r Xv0) Xx0)) ((r Xv0) Xy0))->((r Xv0) Xx0))
% Found (fun (Xy0:a) (Xz:a) (x2:((and ((r Xv0) Xx0)) ((r Xv0) Xy0)))=> (((fun (P:Type) (x3:(((r Xv0) Xx0)->(((r Xv0) Xy0)->P)))=> (((((and_rect ((r Xv0) Xx0)) ((r Xv0) Xy0)) P) x3) x2)) ((r Xv0) Xx0)) (fun (x3:((r Xv0) Xx0)) (x4:((r Xv0) Xy0))=> x3))) as proof of (a->(((and ((r Xv0) Xx0)) ((r Xv0) Xy0))->((r Xv0) Xx0)))
% Found (fun (Xx0:a) (Xy0:a) (Xz:a) (x2:((and ((r Xv0) Xx0)) ((r Xv0) Xy0)))=> (((fun (P:Type) (x3:(((r Xv0) Xx0)->(((r Xv0) Xy0)->P)))=> (((((and_rect ((r Xv0) Xx0)) ((r Xv0) Xy0)) P) x3) x2)) ((r Xv0) Xx0)) (fun (x3:((r Xv0) Xx0)) (x4:((r Xv0) Xy0))=> x3))) as proof of (forall (Xy0:a), (a->(((and ((r Xv0) Xx0)) ((r Xv0) Xy0))->((r Xv0) Xx0))))
% Found (fun (Xx0:a) (Xy0:a) (Xz:a) (x2:((and ((r Xv0) Xx0)) ((r Xv0) Xy0)))=> (((fun (P:Type) (x3:(((r Xv0) Xx0)->(((r Xv0) Xy0)->P)))=> (((((and_rect ((r Xv0) Xx0)) ((r Xv0) Xy0)) P) x3) x2)) ((r Xv0) Xx0)) (fun (x3:((r Xv0) Xx0)) (x4:((r Xv0) Xy0))=> x3))) as proof of (forall (Xx0:a) (Xy0:a), (a->(((and ((r Xv0) Xx0)) ((r Xv0) Xy0))->((r Xv0) Xx0))))
% Found x3:((r Xx0) Xv0)
% Found (fun (x4:((r Xy0) Xv0))=> x3) as proof of ((r Xx0) Xv0)
% Found (fun (x3:((r Xx0) Xv0)) (x4:((r Xy0) Xv0))=> x3) as proof of (((r Xy0) Xv0)->((r Xx0) Xv0))
% Found (fun (x3:((r Xx0) Xv0)) (x4:((r Xy0) Xv0))=> x3) as proof of (((r Xx0) Xv0)->(((r Xy0) Xv0)->((r Xx0) Xv0)))
% Found (and_rect10 (fun (x3:((r Xx0) Xv0)) (x4:((r Xy0) Xv0))=> x3)) as proof of ((r Xx0) Xv0)
% Found ((and_rect1 ((r Xx0) Xv0)) (fun (x3:((r Xx0) Xv0)) (x4:((r Xy0) Xv0))=> x3)) as proof of ((r Xx0) Xv0)
% Found (((fun (P:Type) (x3:(((r Xx0) Xv0)->(((r Xy0) Xv0)->P)))=> (((((and_rect ((r Xx0) Xv0)) ((r Xy0) Xv0)) P) x3) x2)) ((r Xx0) Xv0)) (fun (x3:((r Xx0) Xv0)) (x4:((r Xy0) Xv0))=> x3)) as proof of ((r Xx0) Xv0)
% Found (fun (x2:((and ((r Xx0) Xv0)) ((r Xy0) Xv0)))=> (((fun (P:Type) (x3:(((r Xx0) Xv0)->(((r Xy0) Xv0)->P)))=> (((((and_rect ((r Xx0) Xv0)) ((r Xy0) Xv0)) P) x3) x2)) ((r Xx0) Xv0)) (fun (x3:((r Xx0) Xv0)) (x4:((r Xy0) Xv0))=> x3))) as proof of ((r Xx0) Xv0)
% Found (fun (Xz:a) (x2:((and ((r Xx0) Xv0)) ((r Xy0) Xv0)))=> (((fun (P:Type) (x3:(((r Xx0) Xv0)->(((r Xy0) Xv0)->P)))=> (((((and_rect ((r Xx0) Xv0)) ((r Xy0) Xv0)) P) x3) x2)) ((r Xx0) Xv0)) (fun (x3:((r Xx0) Xv0)) (x4:((r Xy0) Xv0))=> x3))) as proof of (((and ((r Xx0) Xv0)) ((r Xy0) Xv0))->((r Xx0) Xv0))
% Found (fun (Xy0:a) (Xz:a) (x2:((and ((r Xx0) Xv0)) ((r Xy0) Xv0)))=> (((fun (P:Type) (x3:(((r Xx0) Xv0)->(((r Xy0) Xv0)->P)))=> (((((and_rect ((r Xx0) Xv0)) ((r Xy0) Xv0)) P) x3) x2)) ((r Xx0) Xv0)) (fun (x3:((r Xx0) Xv0)) (x4:((r Xy0) Xv0))=> x3))) as proof of (a->(((and ((r Xx0) Xv0)) ((r Xy0) Xv0))->((r Xx0) Xv0)))
% Found (fun (Xx0:a) (Xy0:a) (Xz:a) (x2:((and ((r Xx0) Xv0)) ((r Xy0) Xv0)))=> (((fun (P:Type) (x3:(((r Xx0) Xv0)->(((r Xy0) Xv0)->P)))=> (((((and_rect ((r Xx0) Xv0)) ((r Xy0) Xv0)) P) x3) x2)) ((r Xx0) Xv0)) (fun (x3:((r Xx0) Xv0)) (x4:((r Xy0) Xv0))=> x3))) as proof of (forall (Xy0:a), (a->(((and ((r Xx0) Xv0)) ((r Xy0) Xv0))->((r Xx0) Xv0))))
% Found (fun (Xx0:a) (Xy0:a) (Xz:a) (x2:((and ((r Xx0) Xv0)) ((r Xy0) Xv0)))=> (((fun (P:Type) (x3:(((r Xx0) Xv0)->(((r Xy0) Xv0)->P)))=> (((((and_rect ((r Xx0) Xv0)) ((r Xy0) Xv0)) P) x3) x2)) ((r Xx0) Xv0)) (fun (x3:((r Xx0) Xv0)) (x4:((r Xy0) Xv0))=> x3))) as proof of (forall (Xx0:a) (Xy0:a), (a->(((and ((r Xx0) Xv0)) ((r Xy0) Xv0))->((r Xx0) Xv0))))
% Found x2:((r Xx0) Xy0)
% Instantiate: Xv1:=Xy0:a
% Found x2 as proof of ((r Xv0) Xv1)
% Found (or_intror00 x2) as proof of ((or ((r Xv1) Xv0)) ((r Xv0) Xv1))
% Found ((or_intror0 ((r Xv0) Xv1)) x2) as proof of ((or ((r Xv1) Xv0)) ((r Xv0) Xv1))
% Found (((or_intror ((r Xv1) Xv0)) ((r Xv0) Xv1)) x2) as proof of ((or ((r Xv1) Xv0)) ((r Xv0) Xv1))
% Found (((or_intror ((r Xv1) Xv0)) ((r Xv0) Xv1)) x2) as proof of ((or ((r Xv1) Xv0)) ((r Xv0) Xv1))
% Found x2:((r Xx0) Xy0)
% Instantiate: Xv1:=Xy0:a
% Found x2 as proof of ((r Xv0) Xv1)
% Found (or_intror00 x2) as proof of ((or ((r Xv1) Xv0)) ((r Xv0) Xv1))
% Found ((or_intror0 ((r Xv0) Xv1)) x2) as proof of ((or ((r Xv1) Xv0)) ((r Xv0) Xv1))
% Found (((or_intror ((r Xv1) Xv0)) ((r Xv0) Xv1)) x2) as proof of ((or ((r Xv1) Xv0)) ((r Xv0) Xv1))
% Found (((or_intror ((r Xv1) Xv0)) ((r Xv0) Xv1)) x2) as proof of ((or ((r Xv1) Xv0)) ((r Xv0) Xv1))
% Found x2:((and (Xq Xv1)) ((or ((r Xv1) Xv0)) ((r Xv0) Xv1)))
% Found (fun (x2:((and (Xq Xv1)) ((or ((r Xv1) Xv0)) ((r Xv0) Xv1))))=> x2) as proof of ((and (Xq Xv1)) ((or ((r Xv1) Xv0)) ((r Xv0) Xv1)))
% Found (fun (Xy0:a) (x2:((and (Xq Xv1)) ((or ((r Xv1) Xv0)) ((r Xv0) Xv1))))=> x2) as proof of (((and (Xq Xv1)) ((or ((r Xv1) Xv0)) ((r Xv0) Xv1)))->((and (Xq Xv1)) ((or ((r Xv1) Xv0)) ((r Xv0) Xv1))))
% Found (fun (Xx0:a) (Xy0:a) (x2:((and (Xq Xv1)) ((or ((r Xv1) Xv0)) ((r Xv0) Xv1))))=> x2) as proof of (a->(((and (Xq Xv1)) ((or ((r Xv1) Xv0)) ((r Xv0) Xv1)))->((and (Xq Xv1)) ((or ((r Xv1) Xv0)) ((r Xv0) Xv1)))))
% Found (fun (Xx0:a) (Xy0:a) (x2:((and (Xq Xv1)) ((or ((r Xv1) Xv0)) ((r Xv0) Xv1))))=> x2) as proof of (a->(a->(((and (Xq Xv1)) ((or ((r Xv1) Xv0)) ((r Xv0) Xv1)))->((and (Xq Xv1)) ((or ((r Xv1) Xv0)) ((r Xv0) Xv1))))))
% Found x2:((r Xx0) Xy0)
% Instantiate: Xv1:=Xy0:a;Xv0:=Xx0:a
% Found x2 as proof of ((r Xv0) Xv1)
% Found (or_intror00 x2) as proof of ((or ((r Xv1) Xv0)) ((r Xv0) Xv1))
% Found ((or_intror0 ((r Xv0) Xv1)) x2) as proof of ((or ((r Xv1) Xv0)) ((r Xv0) Xv1))
% Found (((or_intror ((r Xv1) Xv0)) ((r Xv0) Xv1)) x2) as proof of ((or ((r Xv1) Xv0)) ((r Xv0) Xv1))
% Found (((or_intror ((r Xv1) Xv0)) ((r Xv0) Xv1)) x2) as proof of ((or ((r Xv1) Xv0)) ((r Xv0) Xv1))
% Found x4:((and (Xq Xv1)) ((or ((r Xv1) Xv0)) ((r Xv0) Xv1)))
% Found (fun (x4:((and (Xq Xv1)) ((or ((r Xv1) Xv0)) ((r Xv0) Xv1))))=> x4) as proof of ((and (Xq Xv1)) ((or ((r Xv1) Xv0)) ((r Xv0) Xv1)))
% Found (fun (x3:((and (Xq Xv1)) ((or ((r Xv1) Xv0)) ((r Xv0) Xv1)))) (x4:((and (Xq Xv1)) ((or ((r Xv1) Xv0)) ((r Xv0) Xv1))))=> x4) as proof of (((and (Xq Xv1)) ((or ((r Xv1) Xv0)) ((r Xv0) Xv1)))->((and (Xq Xv1)) ((or ((r Xv1) Xv0)) ((r Xv0) Xv1))))
% Found (fun (x3:((and (Xq Xv1)) ((or ((r Xv1) Xv0)) ((r Xv0) Xv1)))) (x4:((and (Xq Xv1)) ((or ((r Xv1) Xv0)) ((r Xv0) Xv1))))=> x4) as proof of (((and (Xq Xv1)) ((or ((r Xv1) Xv0)) ((r Xv0) Xv1)))->(((and (Xq Xv1)) ((or ((r Xv1) Xv0)) ((r Xv0) Xv1)))->((and (Xq Xv1)) ((or ((r Xv1) Xv0)) ((r Xv0) Xv1)))))
% Found (and_rect10 (fun (x3:((and (Xq Xv1)) ((or ((r Xv1) Xv0)) ((r Xv0) Xv1)))) (x4:((and (Xq Xv1)) ((or ((r Xv1) Xv0)) ((r Xv0) Xv1))))=> x4)) as proof of ((and (Xq Xv1)) ((or ((r Xv1) Xv0)) ((r Xv0) Xv1)))
% Found ((and_rect1 ((and (Xq Xv1)) ((or ((r Xv1) Xv0)) ((r Xv0) Xv1)))) (fun (x3:((and (Xq Xv1)) ((or ((r Xv1) Xv0)) ((r Xv0) Xv1)))) (x4:((and (Xq Xv1)) ((or ((r Xv1) Xv0)) ((r Xv0) Xv1))))=> x4)) as proof of ((and (Xq Xv1)) ((or ((r Xv1) Xv0)) ((r Xv0) Xv1)))
% Found (((fun (P:Type) (x3:(((and (Xq Xv1)) ((or ((r Xv1) Xv0)) ((r Xv0) Xv1)))->(((and (Xq Xv1)) ((or ((r Xv1) Xv0)) ((r Xv0) Xv1)))->P)))=> (((((and_rect ((and (Xq Xv1)) ((or ((r Xv1) Xv0)) ((r Xv0) Xv1)))) ((and (Xq Xv1)) ((or ((r Xv1) Xv0)) ((r Xv0) Xv1)))) P) x3) x2)) ((and (Xq Xv1)) ((or ((r Xv1) Xv0)) ((r Xv0) Xv1)))) (fun (x3:((and (Xq Xv1)) ((or ((r Xv1) Xv0)) ((r Xv0) Xv1)))) (x4:((and (Xq Xv1)) ((or ((r Xv1) Xv0)) ((r Xv0) Xv1))))=> x4)) as proof of ((and (Xq Xv1)) ((or ((r Xv1) Xv0)) ((r Xv0) Xv1)))
% Found (fun (x2:((and ((and (Xq Xv1)) ((or ((r Xv1) Xv0)) ((r Xv0) Xv1)))) ((and (Xq Xv1)) ((or ((r Xv1) Xv0)) ((r Xv0) Xv1)))))=> (((fun (P:Type) (x3:(((and (Xq Xv1)) ((or ((r Xv1) Xv0)) ((r Xv0) Xv1)))->(((and (Xq Xv1)) ((or ((r Xv1) Xv0)) ((r Xv0) Xv1)))->P)))=> (((((and_rect ((and (Xq Xv1)) ((or ((r Xv1) Xv0)) ((r Xv0) Xv1)))) ((and (Xq Xv1)) ((or ((r Xv1) Xv0)) ((r Xv0) Xv1)))) P) x3) x2)) ((and (Xq Xv1)) ((or ((r Xv1) Xv0)) ((r Xv0) Xv1)))) (fun (x3:((and (Xq Xv1)) ((or ((r Xv1) Xv0)) ((r Xv0) Xv1)))) (x4:((and (Xq Xv1)) ((or ((r Xv1) Xv0)) ((r Xv0) Xv1))))=> x4))) as proof of ((and (Xq Xv1)) ((or ((r Xv1) Xv0)) ((r Xv0) Xv1)))
% Found (fun (Xz:a) (x2:((and ((and (Xq Xv1)) ((or ((r Xv1) Xv0)) ((r Xv0) Xv1)))) ((and (Xq Xv1)) ((or ((r Xv1) Xv0)) ((r Xv0) Xv1)))))=> (((fun (P:Type) (x3:(((and (Xq Xv1)) ((or ((r Xv1) Xv0)) ((r Xv0) Xv1)))->(((and (Xq Xv1)) ((or ((r Xv1) Xv0)) ((r Xv0) Xv1)))->P)))=> (((((and_rect ((and (Xq Xv1)) ((or ((r Xv1) Xv0)) ((r Xv0) Xv1)))) ((and (Xq Xv1)) ((or ((r Xv1) Xv0)) ((r Xv0) Xv1)))) P) x3) x2)) ((and (Xq Xv1)) ((or ((r Xv1) Xv0)) ((r Xv0) Xv1)))) (fun (x3:((and (Xq Xv1)) ((or ((r Xv1) Xv0)) ((r Xv0) Xv1)))) (x4:((and (Xq Xv1)) ((or ((r Xv1) Xv0)) ((r Xv0) Xv1))))=> x4))) as proof of (((and ((and (Xq Xv1)) ((or ((r Xv1) Xv0)) ((r Xv0) Xv1)))) ((and (Xq Xv1)) ((or ((r Xv1) Xv0)) ((r Xv0) Xv1))))->((and (Xq Xv1)) ((or ((r Xv1) Xv0)) ((r Xv0) Xv1))))
% Found (fun (Xy0:a) (Xz:a) (x2:((and ((and (Xq Xv1)) ((or ((r Xv1) Xv0)) ((r Xv0) Xv1)))) ((and (Xq Xv1)) ((or ((r Xv1) Xv0)) ((r Xv0) Xv1)))))=> (((fun (P:Type) (x3:(((and (Xq Xv1)) ((or ((r Xv1) Xv0)) ((r Xv0) Xv1)))->(((and (Xq Xv1)) ((or ((r Xv1) Xv0)) ((r Xv0) Xv1)))->P)))=> (((((and_rect ((and (Xq Xv1)) ((or ((r Xv1) Xv0)) ((r Xv0) Xv1)))) ((and (Xq Xv1)) ((or ((r Xv1) Xv0)) ((r Xv0) Xv1)))) P) x3) x2)) ((and (Xq Xv1)) ((or ((r Xv1) Xv0)) ((r Xv0) Xv1)))) (fun (x3:((and (Xq Xv1)) ((or ((r Xv1) Xv0)) ((r Xv0) Xv1)))) (x4:((and (Xq Xv1)) ((or ((r Xv1) Xv0)) ((r Xv0) Xv1))))=> x4))) as proof of (a->(((and ((and (Xq Xv1)) ((or ((r Xv1) Xv0)) ((r Xv0) Xv1)))) ((and (Xq Xv1)) ((or ((r Xv1) Xv0)) ((r Xv0) Xv1))))->((and (Xq Xv1)) ((or ((r Xv1) Xv0)) ((r Xv0) Xv1)))))
% Found (fun (Xx0:a) (Xy0:a) (Xz:a) (x2:((and ((and (Xq Xv1)) ((or ((r Xv1) Xv0)) ((r Xv0) Xv1)))) ((and (Xq Xv1)) ((or ((r Xv1) Xv0)) ((r Xv0) Xv1)))))=> (((fun (P:Type) (x3:(((and (Xq Xv1)) ((or ((r Xv1) Xv0)) ((r Xv0) Xv1)))->(((and (Xq Xv1)) ((or ((r Xv1) Xv0)) ((r Xv0) Xv1)))->P)))=> (((((and_rect ((and (Xq Xv1)) ((or ((r Xv1) Xv0)) ((r Xv0) Xv1)))) ((and (Xq Xv1)) ((or ((r Xv1) Xv0)) ((r Xv0) Xv1)))) P) x3) x2)) ((and (Xq Xv1)) ((or ((r Xv1) Xv0)) ((r Xv0) Xv1)))) (fun (x3:((and (Xq Xv1)) ((or ((r Xv1) Xv0)) ((r Xv0) Xv1)))) (x4:((and (Xq Xv1)) ((or ((r Xv1) Xv0)) ((r Xv0) Xv1))))=> x4))) as proof of (a->(a->(((and ((and (Xq Xv1)) ((or ((r Xv1) Xv0)) ((r Xv0) Xv1)))) ((and (Xq Xv1)) ((or ((r Xv1) Xv0)) ((r Xv0) Xv1))))->((and (Xq Xv1)) ((or ((r Xv1) Xv0)) ((r Xv0) Xv1))))))
% Found (fun (Xx0:a) (Xy0:a) (Xz:a) (x2:((and ((and (Xq Xv1)) ((or ((r Xv1) Xv0)) ((r Xv0) Xv1)))) ((and (Xq Xv1)) ((or ((r Xv1) Xv0)) ((r Xv0) Xv1)))))=> (((fun (P:Type) (x3:(((and (Xq Xv1)) ((or ((r Xv1) Xv0)) ((r Xv0) Xv1)))->(((and (Xq Xv1)) ((or ((r Xv1) Xv0)) ((r Xv0) Xv1)))->P)))=> (((((and_rect ((and (Xq Xv1)) ((or ((r Xv1) Xv0)) ((r Xv0) Xv1)))) ((and (Xq Xv1)) ((or ((r Xv1) Xv0)) ((r Xv0) Xv1)))) P) x3) x2)) ((and (Xq Xv1)) ((or ((r Xv1) Xv0)) ((r Xv0) Xv1)))) (fun (x3:((and (Xq Xv1)) ((or ((r Xv1) Xv0)) ((r Xv0) Xv1)))) (x4:((and (Xq Xv1)) ((or ((r Xv1) Xv0)) ((r Xv0) Xv1))))=> x4))) as proof of (a->(a->(a->(((and ((and (Xq Xv1)) ((or ((r Xv1) Xv0)) ((r Xv0) Xv1)))) ((and (Xq Xv1)) ((or ((r Xv1) Xv0)) ((r Xv0) Xv1))))->((and (Xq Xv1)) ((or ((r Xv1) Xv0)) ((r Xv0) Xv1)))))))
% Found x2:((r Xx0) Xy0)
% Instantiate: Xv1:=Xy0:a
% Found x2 as proof of ((r Xv0) Xv1)
% Found (or_intror00 x2) as proof of ((or ((r Xv1) Xv0)) ((r Xv0) Xv1))
% Found ((or_intror0 ((r Xv0) Xv1)) x2) as proof of ((or ((r Xv1) Xv0)) ((r Xv0) Xv1))
% Found (((or_intror ((r Xv1) Xv0)) ((r Xv0) Xv1)) x2) as proof of ((or ((r Xv1) Xv0)) ((r Xv0) Xv1))
% Found (((or_intror ((r Xv1) Xv0)) ((r Xv0) Xv1)) x2) as proof of ((or ((r Xv1) Xv0)) ((r Xv0) Xv1))
% Found x2:((r Xx0) Xy0)
% Instantiate: Xv1:=Xx0:a;Xv0:=Xy0:a
% Found x2 as proof of ((r Xv1) Xv0)
% Found (or_introl00 x2) as proof of ((or ((r Xv1) Xv0)) ((r Xv0) Xv1))
% Found ((or_introl0 ((r Xv0) Xv1)) x2) as proof of ((or ((r Xv1) Xv0)) ((r Xv0) Xv1))
% Found (((or_introl ((r Xv1) Xv0)) ((r Xv0) Xv1)) x2) as proof of ((or ((r Xv1) Xv0)) ((r Xv0) Xv1))
% Found (((or_introl ((r Xv1) Xv0)) ((r Xv0) Xv1)) x2) as proof of ((or ((r Xv1) Xv0)) ((r Xv0) Xv1))
% Found x2:((r Xx0) Xy0)
% Instantiate: Xv0:=Xy0:a
% Found x2 as proof of ((r Xx0) Xv0)
% Found (or_introl00 x2) as proof of ((or ((r Xx0) Xv0)) ((r Xv0) Xx0))
% Found ((or_introl0 ((r Xv0) Xx0)) x2) as proof of ((or ((r Xx0) Xv0)) ((r Xv0) Xx0))
% Found (((or_introl ((r Xx0) Xv0)) ((r Xv0) Xx0)) x2) as proof of ((or ((r Xx0) Xv0)) ((r Xv0) Xx0))
% Found (((or_introl ((r Xx0) Xv0)) ((r Xv0) Xx0)) x2) as proof of ((or ((r Xx0) Xv0)) ((r Xv0) Xx0))
% Found (or_comm_i10 (((or_introl ((r Xx0) Xv0)) ((r Xv0) Xx0)) x2)) as proof of ((or ((r Xv0) Xx0)) ((r Xx0) Xv0))
% Found ((or_comm_i1 ((r Xv0) Xx0)) (((or_introl ((r Xx0) Xv0)) ((r Xv0) Xx0)) x2)) as proof of ((or ((r Xv0) Xx0)) ((r Xx0) Xv0))
% Found (((or_comm_i ((r Xx0) Xv0)) ((r Xv0) Xx0)) (((or_introl ((r Xx0) Xv0)) ((r Xv0) Xx0)) x2)) as proof of ((or ((r Xv0) Xx0)) ((r Xx0) Xv0))
% Found (fun (x2:((r Xx0) Xy0))=> (((or_comm_i ((r Xx0) Xv0)) ((r Xv0) Xx0)) (((or_introl ((r Xx0) Xv0)) ((r Xv0) Xx0)) x2))) as proof of ((or ((r Xv0) Xx0)) ((r Xx0) Xv0))
% Found x4:((and (Xq Xv0)) ((or ((r Xv0) Xz)) ((r Xz) Xv0)))
% Found (fun (x4:((and (Xq Xv0)) ((or ((r Xv0) Xz)) ((r Xz) Xv0))))=> x4) as proof of ((and (Xq Xv0)) ((or ((r Xv0) Xz)) ((r Xz) Xv0)))
% Found (fun (x3:((and (Xq Xv0)) ((or ((r Xv0) Xy0)) ((r Xy0) Xv0)))) (x4:((and (Xq Xv0)) ((or ((r Xv0) Xz)) ((r Xz) Xv0))))=> x4) as proof of (((and (Xq Xv0)) ((or ((r Xv0) Xz)) ((r Xz) Xv0)))->((and (Xq Xv0)) ((or ((r Xv0) Xz)) ((r Xz) Xv0))))
% Found (fun (x3:((and (Xq Xv0)) ((or ((r Xv0) Xy0)) ((r Xy0) Xv0)))) (x4:((and (Xq Xv0)) ((or ((r Xv0) Xz)) ((r Xz) Xv0))))=> x4) as proof of (((and (Xq Xv0)) ((or ((r Xv0) Xy0)) ((r Xy0) Xv0)))->(((and (Xq Xv0)) ((or ((r Xv0) Xz)) ((r Xz) Xv0)))->((and (Xq Xv0)) ((or ((r Xv0) Xz)) ((r Xz) Xv0)))))
% Found (and_rect10 (fun (x3:((and (Xq Xv0)) ((or ((r Xv0) Xy0)) ((r Xy0) Xv0)))) (x4:((and (Xq Xv0)) ((or ((r Xv0) Xz)) ((r Xz) Xv0))))=> x4)) as proof of ((and (Xq Xv0)) ((or ((r Xv0) Xz)) ((r Xz) Xv0)))
% Found ((and_rect1 ((and (Xq Xv0)) ((or ((r Xv0) Xz)) ((r Xz) Xv0)))) (fun (x3:((and (Xq Xv0)) ((or ((r Xv0) Xy0)) ((r Xy0) Xv0)))) (x4:((and (Xq Xv0)) ((or ((r Xv0) Xz)) ((r Xz) Xv0))))=> x4)) as proof of ((and (Xq Xv0)) ((or ((r Xv0) Xz)) ((r Xz) Xv0)))
% Found (((fun (P:Type) (x3:(((and (Xq Xv0)) ((or ((r Xv0) Xy0)) ((r Xy0) Xv0)))->(((and (Xq Xv0)) ((or ((r Xv0) Xz)) ((r Xz) Xv0)))->P)))=> (((((and_rect ((and (Xq Xv0)) ((or ((r Xv0) Xy0)) ((r Xy0) Xv0)))) ((and (Xq Xv0)) ((or ((r Xv0) Xz)) ((r Xz) Xv0)))) P) x3) x2)) ((and (Xq Xv0)) ((or ((r Xv0) Xz)) ((r Xz) Xv0)))) (fun (x3:((and (Xq Xv0)) ((or ((r Xv0) Xy0)) ((r Xy0) Xv0)))) (x4:((and (Xq Xv0)) ((or ((r Xv0) Xz)) ((r Xz) Xv0))))=> x4)) as proof of ((and (Xq Xv0)) ((or ((r Xv0) Xz)) ((r Xz) Xv0)))
% Found (fun (x2:((and ((and (Xq Xv0)) ((or ((r Xv0) Xy0)) ((r Xy0) Xv0)))) ((and (Xq Xv0)) ((or ((r Xv0) Xz)) ((r Xz) Xv0)))))=> (((fun (P:Type) (x3:(((and (Xq Xv0)) ((or ((r Xv0) Xy0)) ((r Xy0) Xv0)))->(((and (Xq Xv0)) ((or ((r Xv0) Xz)) ((r Xz) Xv0)))->P)))=> (((((and_rect ((and (Xq Xv0)) ((or ((r Xv0) Xy0)) ((r Xy0) Xv0)))) ((and (Xq Xv0)) ((or ((r Xv0) Xz)) ((r Xz) Xv0)))) P) x3) x2)) ((and (Xq Xv0)) ((or ((r Xv0) Xz)) ((r Xz) Xv0)))) (fun (x3:((and (Xq Xv0)) ((or ((r Xv0) Xy0)) ((r Xy0) Xv0)))) (x4:((and (Xq Xv0)) ((or ((r Xv0) Xz)) ((r Xz) Xv0))))=> x4))) as proof of ((and (Xq Xv0)) ((or ((r Xv0) Xz)) ((r Xz) Xv0)))
% Found (fun (Xz:a) (x2:((and ((and (Xq Xv0)) ((or ((r Xv0) Xy0)) ((r Xy0) Xv0)))) ((and (Xq Xv0)) ((or ((r Xv0) Xz)) ((r Xz) Xv0)))))=> (((fun (P:Type) (x3:(((and (Xq Xv0)) ((or ((r Xv0) Xy0)) ((r Xy0) Xv0)))->(((and (Xq Xv0)) ((or ((r Xv0) Xz)) ((r Xz) Xv0)))->P)))=> (((((and_rect ((and (Xq Xv0)) ((or ((r Xv0) Xy0)) ((r Xy0) Xv0)))) ((and (Xq Xv0)) ((or ((r Xv0) Xz)) ((r Xz) Xv0)))) P) x3) x2)) ((and (Xq Xv0)) ((or ((r Xv0) Xz)) ((r Xz) Xv0)))) (fun (x3:((and (Xq Xv0)) ((or ((r Xv0) Xy0)) ((r Xy0) Xv0)))) (x4:((and (Xq Xv0)) ((or ((r Xv0) Xz)) ((r Xz) Xv0))))=> x4))) as proof of (((and ((and (Xq Xv0)) ((or ((r Xv0) Xy0)) ((r Xy0) Xv0)))) ((and (Xq Xv0)) ((or ((r Xv0) Xz)) ((r Xz) Xv0))))->((and (Xq Xv0)) ((or ((r Xv0) Xz)) ((r Xz) Xv0))))
% Found (fun (Xy0:a) (Xz:a) (x2:((and ((and (Xq Xv0)) ((or ((r Xv0) Xy0)) ((r Xy0) Xv0)))) ((and (Xq Xv0)) ((or ((r Xv0) Xz)) ((r Xz) Xv0)))))=> (((fun (P:Type) (x3:(((and (Xq Xv0)) ((or ((r Xv0) Xy0)) ((r Xy0) Xv0)))->(((and (Xq Xv0)) ((or ((r Xv0) Xz)) ((r Xz) Xv0)))->P)))=> (((((and_rect ((and (Xq Xv0)) ((or ((r Xv0) Xy0)) ((r Xy0) Xv0)))) ((and (Xq Xv0)) ((or ((r Xv0) Xz)) ((r Xz) Xv0)))) P) x3) x2)) ((and (Xq Xv0)) ((or ((r Xv0) Xz)) ((r Xz) Xv0)))) (fun (x3:((and (Xq Xv0)) ((or ((r Xv0) Xy0)) ((r Xy0) Xv0)))) (x4:((and (Xq Xv0)) ((or ((r Xv0) Xz)) ((r Xz) Xv0))))=> x4))) as proof of (forall (Xz:a), (((and ((and (Xq Xv0)) ((or ((r Xv0) Xy0)) ((r Xy0) Xv0)))) ((and (Xq Xv0)) ((or ((r Xv0) Xz)) ((r Xz) Xv0))))->((and (Xq Xv0)) ((or ((r Xv0) Xz)) ((r Xz) Xv0)))))
% Found (fun (Xx0:a) (Xy0:a) (Xz:a) (x2:((and ((and (Xq Xv0)) ((or ((r Xv0) Xy0)) ((r Xy0) Xv0)))) ((and (Xq Xv0)) ((or ((r Xv0) Xz)) ((r Xz) Xv0)))))=> (((fun (P:Type) (x3:(((and (Xq Xv0)) ((or ((r Xv0) Xy0)) ((r Xy0) Xv0)))->(((and (Xq Xv0)) ((or ((r Xv0) Xz)) ((r Xz) Xv0)))->P)))=> (((((and_rect ((and (Xq Xv0)) ((or ((r Xv0) Xy0)) ((r Xy0) Xv0)))) ((and (Xq Xv0)) ((or ((r Xv0) Xz)) ((r Xz) Xv0)))) P) x3) x2)) ((and (Xq Xv0)) ((or ((r Xv0) Xz)) ((r Xz) Xv0)))) (fun (x3:((and (Xq Xv0)) ((or ((r Xv0) Xy0)) ((r Xy0) Xv0)))) (x4:((and (Xq Xv0)) ((or ((r Xv0) Xz)) ((r Xz) Xv0))))=> x4))) as proof of (forall (Xy0:a) (Xz:a), (((and ((and (Xq Xv0)) ((or ((r Xv0) Xy0)) ((r Xy0) Xv0)))) ((and (Xq Xv0)) ((or ((r Xv0) Xz)) ((r Xz) Xv0))))->((and (Xq Xv0)) ((or ((r Xv0) Xz)) ((r Xz) Xv0)))))
% Found (fun (Xx0:a) (Xy0:a) (Xz:a) (x2:((and ((and (Xq Xv0)) ((or ((r Xv0) Xy0)) ((r Xy0) Xv0)))) ((and (Xq Xv0)) ((or ((r Xv0) Xz)) ((r Xz) Xv0)))))=> (((fun (P:Type) (x3:(((and (Xq Xv0)) ((or ((r Xv0) Xy0)) ((r Xy0) Xv0)))->(((and (Xq Xv0)) ((or ((r Xv0) Xz)) ((r Xz) Xv0)))->P)))=> (((((and_rect ((and (Xq Xv0)) ((or ((r Xv0) Xy0)) ((r Xy0) Xv0)))) ((and (Xq Xv0)) ((or ((r Xv0) Xz)) ((r Xz) Xv0)))) P) x3) x2)) ((and (Xq Xv0)) ((or ((r Xv0) Xz)) ((r Xz) Xv0)))) (fun (x3:((and (Xq Xv0)) ((or ((r Xv0) Xy0)) ((r Xy0) Xv0)))) (x4:((and (Xq Xv0)) ((or ((r Xv0) Xz)) ((r Xz) Xv0))))=> x4))) as proof of (a->(forall (Xy0:a) (Xz:a), (((and ((and (Xq Xv0)) ((or ((r Xv0) Xy0)) ((r Xy0) Xv0)))) ((and (Xq Xv0)) ((or ((r Xv0) Xz)) ((r Xz) Xv0))))->((and (Xq Xv0)) ((or ((r Xv0) Xz)) ((r Xz) Xv0))))))
% Found x2:((r Xx0) Xy0)
% Instantiate: Xv1:=Xx0:a;Xv0:=Xy0:a
% Found x2 as proof of ((r Xv1) Xv0)
% Found (or_introl00 x2) as proof of ((or ((r Xv1) Xv0)) ((r Xv0) Xv1))
% Found ((or_introl0 ((r Xv0) Xv1)) x2) as proof of ((or ((r Xv1) Xv0)) ((r Xv0) Xv1))
% Found (((or_introl ((r Xv1) Xv0)) ((r Xv0) Xv1)) x2) as proof of ((or ((r Xv1) Xv0)) ((r Xv0) Xv1))
% Found (((or_introl ((r Xv1) Xv0)) ((r Xv0) Xv1)) x2) as proof of ((or ((r Xv1) Xv0)) ((r Xv0) Xv1))
% Found x2:((r Xx0) Xy0)
% Instantiate: Xv0:=Xx0:a
% Found x2 as proof of ((r Xv0) Xy0)
% Found (or_introl00 x2) as proof of ((or ((r Xv0) Xy0)) ((r Xy0) Xv0))
% Found ((or_introl0 ((r Xy0) Xv0)) x2) as proof of ((or ((r Xv0) Xy0)) ((r Xy0) Xv0))
% Found (((or_introl ((r Xv0) Xy0)) ((r Xy0) Xv0)) x2) as proof of ((or ((r Xv0) Xy0)) ((r Xy0) Xv0))
% Found (((or_introl ((r Xv0) Xy0)) ((r Xy0) Xv0)) x2) as proof of ((or ((r Xv0) Xy0)) ((r Xy0) Xv0))
% Found x2:((r Xx0) Xy0)
% Instantiate: Xv0:=Xx0:a
% Found x2 as proof of ((r Xv0) Xy0)
% Found (or_introl00 x2) as proof of ((or ((r Xv0) Xy0)) ((r Xy0) Xv0))
% Found ((or_introl0 ((r Xy0) Xv0)) x2) as proof of ((or ((r Xv0) Xy0)) ((r Xy0) Xv0))
% Found (((or_introl ((r Xv0) Xy0)) ((r Xy0) Xv0)) x2) as proof of ((or ((r Xv0) Xy0)) ((r Xy0) Xv0))
% Found (((or_introl ((r Xv0) Xy0)) ((r Xy0) Xv0)) x2) as proof of ((or ((r Xv0) Xy0)) ((r Xy0) Xv0))
% Found x2:((r Xx0) Xy0)
% Instantiate: Xv0:=Xx0:a
% Found x2 as proof of ((r Xv0) Xy0)
% Found (or_introl00 x2) as proof of ((or ((r Xv0) Xy0)) ((r Xy0) Xv0))
% Found ((or_introl0 ((r Xy0) Xv0)) x2) as proof of ((or ((r Xv0) Xy0)) ((r Xy0) Xv0))
% Found (((or_introl ((r Xv0) Xy0)) ((r Xy0) Xv0)) x2) as proof of ((or ((r Xv0) Xy0)) ((r Xy0) Xv0))
% Found (((or_introl ((r Xv0) Xy0)) ((r Xy0) Xv0)) x2) as proof of ((or ((r Xv0) Xy0)) ((r Xy0) Xv0))
% Found x2:((r Xx0) Xy0)
% Instantiate: Xv0:=Xx0:a
% Found x2 as proof of ((r Xv0) Xy0)
% Found (or_introl00 x2) as proof of ((or ((r Xv0) Xy0)) ((r Xy0) Xv0))
% Found ((or_introl0 ((r Xy0) Xv0)) x2) as proof of ((or ((r Xv0) Xy0)) ((r Xy0) Xv0))
% Found (((or_introl ((r Xv0) Xy0)) ((r Xy0) Xv0)) x2) as proof of ((or ((r Xv0) Xy0)) ((r Xy0) Xv0))
% Found (((or_introl ((r Xv0) Xy0)) ((r Xy0) Xv0)) x2) as proof of ((or ((r Xv0) Xy0)) ((r Xy0) Xv0))
% Found x2:((r Xx0) Xy0)
% Instantiate: Xv1:=Xx0:a;Xv0:=Xy0:a
% Found x2 as proof of ((r Xv1) Xv0)
% Found (or_introl00 x2) as proof of ((or ((r Xv1) Xv0)) ((r Xv0) Xv1))
% Found ((or_introl0 ((r Xv0) Xv1)) x2) as proof of ((or ((r Xv1) Xv0)) ((r Xv0) Xv1))
% Found (((or_introl ((r Xv1) Xv0)) ((r Xv0) Xv1)) x2) as proof of ((or ((r Xv1) Xv0)) ((r Xv0) Xv1))
% Found (((or_introl ((r Xv1) Xv0)) ((r Xv0) Xv1)) x2) as proof of ((or ((r Xv1) Xv0)) ((r Xv0) Xv1))
% Found x2:((r Xx0) Xy0)
% Instantiate: Xv1:=Xx0:a;Xv0:=Xy0:a
% Found x2 as proof of ((r Xv1) Xv0)
% Found (or_introl00 x2) as proof of ((or ((r Xv1) Xv0)) ((r Xv0) Xv1))
% Found ((or_introl0 ((r Xv0) Xv1)) x2) as proof of ((or ((r Xv1) Xv0)) ((r Xv0) Xv1))
% Found (((or_introl ((r Xv1) Xv0)) ((r Xv0) Xv1)) x2) as proof of ((or ((r Xv1) Xv0)) ((r Xv0) Xv1))
% Found (((or_introl ((r Xv1) Xv0)) ((r Xv0) Xv1)) x2) as proof of ((or ((r Xv1) Xv0)) ((r Xv0) Xv1))
% Found x2:((or ((r Xv1) Xv0)) ((r Xv0) Xv1))
% Found (fun (x2:((or ((r Xv1) Xv0)) ((r Xv0) Xv1)))=> x2) as proof of ((or ((r Xv1) Xv0)) ((r Xv0) Xv1))
% Found (fun (Xy0:a) (x2:((or ((r Xv1) Xv0)) ((r Xv0) Xv1)))=> x2) as proof of (((or ((r Xv1) Xv0)) ((r Xv0) Xv1))->((or ((r Xv1) Xv0)) ((r Xv0) Xv1)))
% Found (fun (Xx0:a) (Xy0:a) (x2:((or ((r Xv1) Xv0)) ((r Xv0) Xv1)))=> x2) as proof of (a->(((or ((r Xv1) Xv0)) ((r Xv0) Xv1))->((or ((r Xv1) Xv0)) ((r Xv0) Xv1))))
% Found (fun (Xx0:a) (Xy0:a) (x2:((or ((r Xv1) Xv0)) ((r Xv0) Xv1)))=> x2) as proof of (a->(a->(((or ((r Xv1) Xv0)) ((r Xv0) Xv1))->((or ((r Xv1) Xv0)) ((r Xv0) Xv1)))))
% Found x2:(Xq Xv1)
% Found (fun (x2:(Xq Xv1))=> x2) as proof of (Xq Xv1)
% Found (fun (Xy0:a) (x2:(Xq Xv1))=> x2) as proof of ((Xq Xv1)->(Xq Xv1))
% Found (fun (Xx0:a) (Xy0:a) (x2:(Xq Xv1))=> x2) as proof of (a->((Xq Xv1)->(Xq Xv1)))
% Found (fun (Xx0:a) (Xy0:a) (x2:(Xq Xv1))=> x2) as proof of (a->(a->((Xq Xv1)->(Xq Xv1))))
% Found x2:((r Xx0) Xy0)
% Instantiate: Xv0:=Xx0:a
% Found x2 as proof of ((r Xv0) Xy0)
% Found (or_introl00 x2) as proof of ((or ((r Xv0) Xy0)) ((r Xy0) Xv0))
% Found ((or_introl0 ((r Xy0) Xv0)) x2) as proof of ((or ((r Xv0) Xy0)) ((r Xy0) Xv0))
% Found (((or_introl ((r Xv0) Xy0)) ((r Xy0) Xv0)) x2) as proof of ((or ((r Xv0) Xy0)) ((r Xy0) Xv0))
% Found (((or_introl ((r Xv0) Xy0)) ((r Xy0) Xv0)) x2) as proof of ((or ((r Xv0) Xy0)) ((r Xy0) Xv0))
% Found or_intror00:=(or_intror0 ((r Xx0) Xy0)):(((r Xx0) Xy0)->((or ((r Xv1) Xv0)) ((r Xx0) Xy0)))
% Found (or_intror0 ((r Xx0) Xy0)) as proof of (((r Xx0) Xy0)->((or ((r Xv1) Xv0)) ((r Xv0) Xv1)))
% Found ((or_intror ((r Xv1) Xv0)) ((r Xx0) Xy0)) as proof of (((r Xx0) Xy0)->((or ((r Xv1) Xv0)) ((r Xv0) Xv1)))
% Found ((or_intror ((r Xv1) Xv0)) ((r Xx0) Xy0)) as proof of (((r Xx0) Xy0)->((or ((r Xv1) Xv0)) ((r Xv0) Xv1)))
% Found ((or_intror ((r Xv1) Xv0)) ((r Xx0) Xy0)) as proof of (((r Xx0) Xy0)->((or ((r Xv1) Xv0)) ((r Xv0) Xv1)))
% Found or_introl00:=(or_introl0 ((r Xv0) Xv1)):(((r Xx0) Xy0)->((or ((r Xx0) Xy0)) ((r Xv0) Xv1)))
% Found (or_introl0 ((r Xv0) Xv1)) as proof of (((r Xx0) Xy0)->((or ((r Xv1) Xv0)) ((r Xv0) Xv1)))
% Found ((or_introl ((r Xx0) Xy0)) ((r Xv0) Xv1)) as proof of (((r Xx0) Xy0)->((or ((r Xv1) Xv0)) ((r Xv0) Xv1)))
% Found ((or_introl ((r Xx0) Xy0)) ((r Xv0) Xv1)) as proof of (((r Xx0) Xy0)->((or ((r Xv1) Xv0)) ((r Xv0) Xv1)))
% Found ((or_introl ((r Xx0) Xy0)) ((r Xv0) Xv1)) as proof of (((r Xx0) Xy0)->((or ((r Xv1) Xv0)) ((r Xv0) Xv1)))
% Found or_introl00:=(or_introl0 ((r Xv0) Xv1)):(((r Xx0) Xy0)->((or ((r Xx0) Xy0)) ((r Xv0) Xv1)))
% Found (or_introl0 ((r Xv0) Xv1)) as proof of (((r Xx0) Xy0)->((or ((r Xv1) Xv0)) ((r Xv0) Xv1)))
% Found ((or_introl ((r Xx0) Xy0)) ((r Xv0) Xv1)) as proof of (((r Xx0) Xy0)->((or ((r Xv1) Xv0)) ((r Xv0) Xv1)))
% Found ((or_introl ((r Xx0) Xy0)) ((r Xv0) Xv1)) as proof of (((r Xx0) Xy0)->((or ((r Xv1) Xv0)) ((r Xv0) Xv1)))
% Found ((or_introl ((r Xx0) Xy0)) ((r Xv0) Xv1)) as proof of (((r Xx0) Xy0)->((or ((r Xv1) Xv0)) ((r Xv0) Xv1)))
% Found or_intror00:=(or_intror0 ((r Xx0) Xy0)):(((r Xx0) Xy0)->((or ((r Xv1) Xv0)) ((r Xx0) Xy0)))
% Found (or_intror0 ((r Xx0) Xy0)) as proof of (((r Xx0) Xy0)->((or ((r Xv1) Xv0)) ((r Xv0) Xv1)))
% Found ((or_intror ((r Xv1) Xv0)) ((r Xx0) Xy0)) as proof of (((r Xx0) Xy0)->((or ((r Xv1) Xv0)) ((r Xv0) Xv1)))
% Found ((or_intror ((r Xv1) Xv0)) ((r Xx0) Xy0)) as proof of (((r Xx0) Xy0)->((or ((r Xv1) Xv0)) ((r Xv0) Xv1)))
% Found ((or_intror ((r Xv1) Xv0)) ((r Xx0) Xy0)) as proof of (((r Xx0) Xy0)->((or ((r Xv1) Xv0)) ((r Xv0) Xv1)))
% Found x2:(Xq Xv0)
% Found (fun (x2:(Xq Xv0))=> x2) as proof of (Xq Xv0)
% Found (fun (Xy0:a) (x2:(Xq Xv0))=> x2) as proof of ((Xq Xv0)->(Xq Xv0))
% Found (fun (Xx0:a) (Xy0:a) (x2:(Xq Xv0))=> x2) as proof of (a->((Xq Xv0)->(Xq Xv0)))
% Found (fun (Xx0:a) (Xy0:a) (x2:(Xq Xv0))=> x2) as proof of (a->(a->((Xq Xv0)->(Xq Xv0))))
% Found x2:((r Xx0) Xy0)
% Instantiate: Xv0:=Xx0:a
% Found x2 as proof of ((r Xv0) Xy0)
% Found (or_introl00 x2) as proof of ((or ((r Xv0) Xy0)) ((r Xy0) Xv0))
% Found ((or_introl0 ((r Xy0) Xv0)) x2) as proof of ((or ((r Xv0) Xy0)) ((r Xy0) Xv0))
% Found (((or_introl ((r Xv0) Xy0)) ((r Xy0) Xv0)) x2) as proof of ((or ((r Xv0) Xy0)) ((r Xy0) Xv0))
% Found (((or_introl ((r Xv0) Xy0)) ((r Xy0) Xv0)) x2) as proof of ((or ((r Xv0) Xy0)) ((r Xy0) Xv0))
% Found x3:(Xq Xv0)
% Found x3 as proof of (Xq Xv0)
% Found or_introl00:=(or_introl0 ((r Xy0) Xv0)):(((r Xx0) Xy0)->((or ((r Xx0) Xy0)) ((r Xy0) Xv0)))
% Found (or_introl0 ((r Xy0) Xv0)) as proof of (((r Xx0) Xy0)->((or ((r Xv0) Xy0)) ((r Xy0) Xv0)))
% Found ((or_introl ((r Xx0) Xy0)) ((r Xy0) Xv0)) as proof of (((r Xx0) Xy0)->((or ((r Xv0) Xy0)) ((r Xy0) Xv0)))
% Found ((or_introl ((r Xx0) Xy0)) ((r Xy0) Xv0)) as proof of (((r Xx0) Xy0)->((or ((r Xv0) Xy0)) ((r Xy0) Xv0)))
% Found (fun (Xy0:a)=> ((or_introl ((r Xx0) Xy0)) ((r Xy0) Xv0))) as proof of (((r Xx0) Xy0)->((or ((r Xv0) Xy0)) ((r Xy0) Xv0)))
% Found x4:((or ((r Xv1) Xv0)) ((r Xv0) Xv1))
% Found (fun (x4:((or ((r Xv1) Xv0)) ((r Xv0) Xv1)))=> x4) as proof of ((or ((r Xv1) Xv0)) ((r Xv0) Xv1))
% Found (fun (x3:((or ((r Xv1) Xv0)) ((r Xv0) Xv1))) (x4:((or ((r Xv1) Xv0)) ((r Xv0) Xv1)))=> x4) as proof of (((or ((r Xv1) Xv0)) ((r Xv0) Xv1))->((or ((r Xv1) Xv0)) ((r Xv0) Xv1)))
% Found (fun (x3:((or ((r Xv1) Xv0)) ((r Xv0) Xv1))) (x4:((or ((r Xv1) Xv0)) ((r Xv0) Xv1)))=> x4) as proof of (((or ((r Xv1) Xv0)) ((r Xv0) Xv1))->(((or ((r Xv1) Xv0)) ((r Xv0) Xv1))->((or ((r Xv1) Xv0)) ((r Xv0) Xv1))))
% Found (and_rect10 (fun (x3:((or ((r Xv1) Xv0)) ((r Xv0) Xv1))) (x4:((or ((r Xv1) Xv0)) ((r Xv0) Xv1)))=> x4)) as proof of ((or ((r Xv1) Xv0)) ((r Xv0) Xv1))
% Found ((and_rect1 ((or ((r Xv1) Xv0)) ((r Xv0) Xv1))) (fun (x3:((or ((r Xv1) Xv0)) ((r Xv0) Xv1))) (x4:((or ((r Xv1) Xv0)) ((r Xv0) Xv1)))=> x4)) as proof of ((or ((r Xv1) Xv0)) ((r Xv0) Xv1))
% Found (((fun (P:Type) (x3:(((or ((r Xv1) Xv0)) ((r Xv0) Xv1))->(((or ((r Xv1) Xv0)) ((r Xv0) Xv1))->P)))=> (((((and_rect ((or ((r Xv1) Xv0)) ((r Xv0) Xv1))) ((or ((r Xv1) Xv0)) ((r Xv0) Xv1))) P) x3) x2)) ((or ((r Xv1) Xv0)) ((r Xv0) Xv1))) (fun (x3:((or ((r Xv1) Xv0)) ((r Xv0) Xv1))) (x4:((or ((r Xv1) Xv0)) ((r Xv0) Xv1)))=> x4)) as proof of ((or ((r Xv1) Xv0)) ((r Xv0) Xv1))
% Found (fun (x2:((and ((or ((r Xv1) Xv0)) ((r Xv0) Xv1))) ((or ((r Xv1) Xv0)) ((r Xv0) Xv1))))=> (((fun (P:Type) (x3:(((or ((r Xv1) Xv0)) ((r Xv0) Xv1))->(((or ((r Xv1) Xv0)) ((r Xv0) Xv1))->P)))=> (((((and_rect ((or ((r Xv1) Xv0)) ((r Xv0) Xv1))) ((or ((r Xv1) Xv0)) ((r Xv0) Xv1))) P) x3) x2)) ((or ((r Xv1) Xv0)) ((r Xv0) Xv1))) (fun (x3:((or ((r Xv1) Xv0)) ((r Xv0) Xv1))) (x4:((or ((r Xv1) Xv0)) ((r Xv0) Xv1)))=> x4))) as proof of ((or ((r Xv1) Xv0)) ((r Xv0) Xv1))
% Found (fun (Xz:a) (x2:((and ((or ((r Xv1) Xv0)) ((r Xv0) Xv1))) ((or ((r Xv1) Xv0)) ((r Xv0) Xv1))))=> (((fun (P:Type) (x3:(((or ((r Xv1) Xv0)) ((r Xv0) Xv1))->(((or ((r Xv1) Xv0)) ((r Xv0) Xv1))->P)))=> (((((and_rect ((or ((r Xv1) Xv0)) ((r Xv0) Xv1))) ((or ((r Xv1) Xv0)) ((r Xv0) Xv1))) P) x3) x2)) ((or ((r Xv1) Xv0)) ((r Xv0) Xv1))) (fun (x3:((or ((r Xv1) Xv0)) ((r Xv0) Xv1))) (x4:((or ((r Xv1) Xv0)) ((r Xv0) Xv1)))=> x4))) as proof of (((and ((or ((r Xv1) Xv0)) ((r Xv0) Xv1))) ((or ((r Xv1) Xv0)) ((r Xv0) Xv1)))->((or ((r Xv1) Xv0)) ((r Xv0) Xv1)))
% Found (fun (Xy0:a) (Xz:a) (x2:((and ((or ((r Xv1) Xv0)) ((r Xv0) Xv1))) ((or ((r Xv1) Xv0)) ((r Xv0) Xv1))))=> (((fun (P:Type) (x3:(((or ((r Xv1) Xv0)) ((r Xv0) Xv1))->(((or ((r Xv1) Xv0)) ((r Xv0) Xv1))->P)))=> (((((and_rect ((or ((r Xv1) Xv0)) ((r Xv0) Xv1))) ((or ((r Xv1) Xv0)) ((r Xv0) Xv1))) P) x3) x2)) ((or ((r Xv1) Xv0)) ((r Xv0) Xv1))) (fun (x3:((or ((r Xv1) Xv0)) ((r Xv0) Xv1))) (x4:((or ((r Xv1) Xv0)) ((r Xv0) Xv1)))=> x4))) as proof of (a->(((and ((or ((r Xv1) Xv0)) ((r Xv0) Xv1))) ((or ((r Xv1) Xv0)) ((r Xv0) Xv1)))->((or ((r Xv1) Xv0)) ((r Xv0) Xv1))))
% Found (fun (Xx0:a) (Xy0:a) (Xz:a) (x2:((and ((or ((r Xv1) Xv0)) ((r Xv0) Xv1))) ((or ((r Xv1) Xv0)) ((r Xv0) Xv1))))=> (((fun (P:Type) (x3:(((or ((r Xv1) Xv0)) ((r Xv0) Xv1))->(((or ((r Xv1) Xv0)) ((r Xv0) Xv1))->P)))=> (((((and_rect ((or ((r Xv1) Xv0)) ((r Xv0) Xv1))) ((or ((r Xv1) Xv0)) ((r Xv0) Xv1))) P) x3) x2)) ((or ((r Xv1) Xv0)) ((r Xv0) Xv1))) (fun (x3:((or ((r Xv1) Xv0)) ((r Xv0) Xv1))) (x4:((or ((r Xv1) Xv0)) ((r Xv0) Xv1)))=> x4))) as proof of (a->(a->(((and ((or ((r Xv1) Xv0)) ((r Xv0) Xv1))) ((or ((r Xv1) Xv0)) ((r Xv0) Xv1)))->((or ((r Xv1) Xv0)) ((r Xv0) Xv1)))))
% Found (fun (Xx0:a) (Xy0:a) (Xz:a) (x2:((and ((or ((r Xv1) Xv0)) ((r Xv0) Xv1))) ((or ((r Xv1) Xv0)) ((r Xv0) Xv1))))=> (((fun (P:Type) (x3:(((or ((r Xv1) Xv0)) ((r Xv0) Xv1))->(((or ((r Xv1) Xv0)) ((r Xv0) Xv1))->P)))=> (((((and_rect ((or ((r Xv1) Xv0)) ((r Xv0) Xv1))) ((or ((r Xv1) Xv0)) ((r Xv0) Xv1))) P) x3) x2)) ((or ((r Xv1) Xv0)) ((r Xv0) Xv1))) (fun (x3:((or ((r Xv1) Xv0)) ((r Xv0) Xv1))) (x4:((or ((r Xv1) Xv0)) ((r Xv0) Xv1)))=> x4))) as proof of (a->(a->(a->(((and ((or ((r Xv1) Xv0)) ((r Xv0) Xv1))) ((or ((r Xv1) Xv0)) ((r Xv0) Xv1)))->((or ((r Xv1) Xv0)) ((r Xv0) Xv1))))))
% Found x2:((r Xx0) Xy0)
% Instantiate: Xv1:=Xx0:a;Xv0:=Xy0:a
% Found x2 as proof of ((r Xv1) Xv0)
% Found (or_introl00 x2) as proof of ((or ((r Xv1) Xv0)) ((r Xv0) Xv1))
% Found ((or_introl0 ((r Xv0) Xv1)) x2) as proof of ((or ((r Xv1) Xv0)) ((r Xv0) Xv1))
% Found (((or_introl ((r Xv1) Xv0)) ((r Xv0) Xv1)) x2) as proof of ((or ((r Xv1) Xv0)) ((r Xv0) Xv1))
% Found (fun (x2:((r Xx0) Xy0))=> (((or_introl ((r Xv1) Xv0)) ((r Xv0) Xv1)) x2)) as proof of ((or ((r Xv1) Xv0)) ((r Xv0) Xv1))
% Found x2:((r Xx0) Xy0)
% Instantiate: Xv1:=Xy0:a;Xv0:=Xx0:a
% Found x2 as proof of ((r Xv0) Xv1)
% Found (or_intror00 x2) as proof of ((or ((r Xv1) Xv0)) ((r Xv0) Xv1))
% Found ((or_intror0 ((r Xv0) Xv1)) x2) as proof of ((or ((r Xv1) Xv0)) ((r Xv0) Xv1))
% Found (((or_intror ((r Xv1) Xv0)) ((r Xv0) Xv1)) x2) as proof of ((or ((r Xv1) Xv0)) ((r Xv0) Xv1))
% Found (fun (x2:((r Xx0) Xy0))=> (((or_intror ((r Xv1) Xv0)) ((r Xv0) Xv1)) x2)) as proof of ((or ((r Xv1) Xv0)) ((r Xv0) Xv1))
% Found x4:(Xq Xv1)
% Found (fun (x4:(Xq Xv1))=> x4) as proof of (Xq Xv1)
% Found (fun (x3:(Xq Xv1)) (x4:(Xq Xv1))=> x4) as proof of ((Xq Xv1)->(Xq Xv1))
% Found (fun (x3:(Xq Xv1)) (x4:(Xq Xv1))=> x4) as proof of ((Xq Xv1)->((Xq Xv1)->(Xq Xv1)))
% Found (and_rect10 (fun (x3:(Xq Xv1)) (x4:(Xq Xv1))=> x4)) as proof of (Xq Xv1)
% Found ((and_rect1 (Xq Xv1)) (fun (x3:(Xq Xv1)) (x4:(Xq Xv1))=> x4)) as proof of (Xq Xv1)
% Found (((fun (P:Type) (x3:((Xq Xv1)->((Xq Xv1)->P)))=> (((((and_rect (Xq Xv1)) (Xq Xv1)) P) x3) x2)) (Xq Xv1)) (fun (x3:(Xq Xv1)) (x4:(Xq Xv1))=> x4)) as proof of (Xq Xv1)
% Found (fun (x2:((and (Xq Xv1)) (Xq Xv1)))=> (((fun (P:Type) (x3:((Xq Xv1)->((Xq Xv1)->P)))=> (((((and_rect (Xq Xv1)) (Xq Xv1)) P) x3) x2)) (Xq Xv1)) (fun (x3:(Xq Xv1)) (x4:(Xq Xv1))=> x4))) as proof of (Xq Xv1)
% Found (fun (Xz:a) (x2:((and (Xq Xv1)) (Xq Xv1)))=> (((fun (P:Type) (x3:((Xq Xv1)->((Xq Xv1)->P)))=> (((((and_rect (Xq Xv1)) (Xq Xv1)) P) x3) x2)) (Xq Xv1)) (fun (x3:(Xq Xv1)) (x4:(Xq Xv1))=> x4))) as proof of (((and (Xq Xv1)) (Xq Xv1))->(Xq Xv1))
% Found (fun (Xy0:a) (Xz:a) (x2:((and (Xq Xv1)) (Xq Xv1)))=> (((fun (P:Type) (x3:((Xq Xv1)->((Xq Xv1)->P)))=> (((((and_rect (Xq Xv1)) (Xq Xv1)) P) x3) x2)) (Xq Xv1)) (fun (x3:(Xq Xv1)) (x4:(Xq Xv1))=> x4))) as proof of (a->(((and (Xq Xv1)) (Xq Xv1))->(Xq Xv1)))
% Found (fun (Xx0:a) (Xy0:a) (Xz:a) (x2:((and (Xq Xv1)) (Xq Xv1)))=> (((fun (P:Type) (x3:((Xq Xv1)->((Xq Xv1)->P)))=> (((((and_rect (Xq Xv1)) (Xq Xv1)) P) x3) x2)) (Xq Xv1)) (fun (x3:(Xq Xv1)) (x4:(Xq Xv1))=> x4))) as proof of (a->(a->(((and (Xq Xv1)) (Xq Xv1))->(Xq Xv1))))
% Found (fun (Xx0:a) (Xy0:a) (Xz:a) (x2:((and (Xq Xv1)) (Xq Xv1)))=> (((fun (P:Type) (x3:((Xq Xv1)->((Xq Xv1)->P)))=> (((((and_rect (Xq Xv1)) (Xq Xv1)) P) x3) x2)) (Xq Xv1)) (fun (x3:(Xq Xv1)) (x4:(Xq Xv1))=> x4))) as proof of (a->(a->(a->(((and (Xq Xv1)) (Xq Xv1))->(Xq Xv1)))))
% Found x4:((or ((r Xv0) Xz)) ((r Xz) Xv0))
% Found (fun (x4:((or ((r Xv0) Xz)) ((r Xz) Xv0)))=> x4) as proof of ((or ((r Xv0) Xz)) ((r Xz) Xv0))
% Found (fun (x3:((or ((r Xv0) Xy0)) ((r Xy0) Xv0))) (x4:((or ((r Xv0) Xz)) ((r Xz) Xv0)))=> x4) as proof of (((or ((r Xv0) Xz)) ((r Xz) Xv0))->((or ((r Xv0) Xz)) ((r Xz) Xv0)))
% Found (fun (x3:((or ((r Xv0) Xy0)) ((r Xy0) Xv0))) (x4:((or ((r Xv0) Xz)) ((r Xz) Xv0)))=> x4) as proof of (((or ((r Xv0) Xy0)) ((r Xy0) Xv0))->(((or ((r Xv0) Xz)) ((r Xz) Xv0))->((or ((r Xv0) Xz)) ((r Xz) Xv0))))
% Found (and_rect10 (fun (x3:((or ((r Xv0) Xy0)) ((r Xy0) Xv0))) (x4:((or ((r Xv0) Xz)) ((r Xz) Xv0)))=> x4)) as proof of ((or ((r Xv0) Xz)) ((r Xz) Xv0))
% Found ((and_rect1 ((or ((r Xv0) Xz)) ((r Xz) Xv0))) (fun (x3:((or ((r Xv0) Xy0)) ((r Xy0) Xv0))) (x4:((or ((r Xv0) Xz)) ((r Xz) Xv0)))=> x4)) as proof of ((or ((r Xv0) Xz)) ((r Xz) Xv0))
% Found (((fun (P:Type) (x3:(((or ((r Xv0) Xy0)) ((r Xy0) Xv0))->(((or ((r Xv0) Xz)) ((r Xz) Xv0))->P)))=> (((((and_rect ((or ((r Xv0) Xy0)) ((r Xy0) Xv0))) ((or ((r Xv0) Xz)) ((r Xz) Xv0))) P) x3) x2)) ((or ((r Xv0) Xz)) ((r Xz) Xv0))) (fun (x3:((or ((r Xv0) Xy0)) ((r Xy0) Xv0))) (x4:((or ((r Xv0) Xz)) ((r Xz) Xv0)))=> x4)) as proof of ((or ((r Xv0) Xz)) ((r Xz) Xv0))
% Found (fun (x2:((and ((or ((r Xv0) Xy0)) ((r Xy0) Xv0))) ((or ((r Xv0) Xz)) ((r Xz) Xv0))))=> (((fun (P:Type) (x3:(((or ((r Xv0) Xy0)) ((r Xy0) Xv0))->(((or ((r Xv0) Xz)) ((r Xz) Xv0))->P)))=> (((((and_rect ((or ((r Xv0) Xy0)) ((r Xy0) Xv0))) ((or ((r Xv0) Xz)) ((r Xz) Xv0))) P) x3) x2)) ((or ((r Xv0) Xz)) ((r Xz) Xv0))) (fun (x3:((or ((r Xv0) Xy0)) ((r Xy0) Xv0))) (x4:((or ((r Xv0) Xz)) ((r Xz) Xv0)))=> x4))) as proof of ((or ((r Xv0) Xz)) ((r Xz) Xv0))
% Found (fun (Xz:a) (x2:((and ((or ((r Xv0) Xy0)) ((r Xy0) Xv0))) ((or ((r Xv0) Xz)) ((r Xz) Xv0))))=> (((fun (P:Type) (x3:(((or ((r Xv0) Xy0)) ((r Xy0) Xv0))->(((or ((r Xv0) Xz)) ((r Xz) Xv0))->P)))=> (((((and_rect ((or ((r Xv0) Xy0)) ((r Xy0) Xv0))) ((or ((r Xv0) Xz)) ((r Xz) Xv0))) P) x3) x2)) ((or ((r Xv0) Xz)) ((r Xz) Xv0))) (fun (x3:((or ((r Xv0) Xy0)) ((r Xy0) Xv0))) (x4:((or ((r Xv0) Xz)) ((r Xz) Xv0)))=> x4))) as proof of (((and ((or ((r Xv0) Xy0)) ((r Xy0) Xv0))) ((or ((r Xv0) Xz)) ((r Xz) Xv0)))->((or ((r Xv0) Xz)) ((r Xz) Xv0)))
% Found (fun (Xy0:a) (Xz:a) (x2:((and ((or ((r Xv0) Xy0)) ((r Xy0) Xv0))) ((or ((r Xv0) Xz)) ((r Xz) Xv0))))=> (((fun (P:Type) (x3:(((or ((r Xv0) Xy0)) ((r Xy0) Xv0))->(((or ((r Xv0) Xz)) ((r Xz) Xv0))->P)))=> (((((and_rect ((or ((r Xv0) Xy0)) ((r Xy0) Xv0))) ((or ((r Xv0) Xz)) ((r Xz) Xv0))) P) x3) x2)) ((or ((r Xv0) Xz)) ((r Xz) Xv0))) (fun (x3:((or ((r Xv0) Xy0)) ((r Xy0) Xv0))) (x4:((or ((r Xv0) Xz)) ((r Xz) Xv0)))=> x4))) as proof of (forall (Xz:a), (((and ((or ((r Xv0) Xy0)) ((r Xy0) Xv0))) ((or ((r Xv0) Xz)) ((r Xz) Xv0)))->((or ((r Xv0) Xz)) ((r Xz) Xv0))))
% Found (fun (Xx0:a) (Xy0:a) (Xz:a) (x2:((and ((or ((r Xv0) Xy0)) ((r Xy0) Xv0))) ((or ((r Xv0) Xz)) ((r Xz) Xv0))))=> (((fun (P:Type) (x3:(((or ((r Xv0) Xy0)) ((r Xy0) Xv0))->(((or ((r Xv0) Xz)) ((r Xz) Xv0))->P)))=> (((((and_rect ((or ((r Xv0) Xy0)) ((r Xy0) Xv0))) ((or ((r Xv0) Xz)) ((r Xz) Xv0))) P) x3) x2)) ((or ((r Xv0) Xz)) ((r Xz) Xv0))) (fun (x3:((or ((r Xv0) Xy0)) ((r Xy0) Xv0))) (x4:((or ((r Xv0) Xz)) ((r Xz) Xv0)))=> x4))) as proof of (forall (Xy0:a) (Xz:a), (((and ((or ((r Xv0) Xy0)) ((r Xy0) Xv0))) ((or ((r Xv0) Xz)) ((r Xz) Xv0)))->((or ((r Xv0) Xz)) ((r Xz) Xv0))))
% Found (fun (Xx0:a) (Xy0:a) (Xz:a) (x2:((and ((or ((r Xv0) Xy0)) ((r Xy0) Xv0))) ((or ((r Xv0) Xz)) ((r Xz) Xv0))))=> (((fun (P:Type) (x3:(((or ((r Xv0) Xy0)) ((r Xy0) Xv0))->(((or ((r Xv0) Xz)) ((r Xz) Xv0))->P)))=> (((((and_rect ((or ((r Xv0) Xy0)) ((r Xy0) Xv0))) ((or ((r Xv0) Xz)) ((r Xz) Xv0))) P) x3) x2)) ((or ((r Xv0) Xz)) ((r Xz) Xv0))) (fun (x3:((or ((r Xv0) Xy0)) ((r Xy0) Xv0))) (x4:((or ((r Xv0) Xz)) ((r Xz) Xv0)))=> x4))) as proof of (a->(forall (Xy0:a) (Xz:a), (((and ((or ((r Xv0) Xy0)) ((r Xy0) Xv0))) ((or ((r Xv0) Xz)) ((r Xz) Xv0)))->((or ((r Xv0) Xz)) ((r Xz) Xv0)))))
% Found x4:(Xq Xv0)
% Found (fun (x4:(Xq Xv0))=> x4) as proof of (Xq Xv0)
% Found (fun (x3:(Xq Xv0)) (x4:(Xq Xv0))=> x4) as proof of ((Xq Xv0)->(Xq Xv0))
% Found (fun (x3:(Xq Xv0)) (x4:(Xq Xv0))=> x4) as proof of ((Xq Xv0)->((Xq Xv0)->(Xq Xv0)))
% Found (and_rect10 (fun (x3:(Xq Xv0)) (x4:(Xq Xv0))=> x4)) as proof of (Xq Xv0)
% Found ((and_rect1 (Xq Xv0)) (fun (x3:(Xq Xv0)) (x4:(Xq Xv0))=> x4)) as proof of (Xq Xv0)
% Found (((fun (P:Type) (x3:((Xq Xv0)->((Xq Xv0)->P)))=> (((((and_rect (Xq Xv0)) (Xq Xv0)) P) x3) x2)) (Xq Xv0)) (fun (x3:(Xq Xv0)) (x4:(Xq Xv0))=> x4)) as proof of (Xq Xv0)
% Found (fun (x2:((and (Xq Xv0)) (Xq Xv0)))=> (((fun (P:Type) (x3:((Xq Xv0)->((Xq Xv0)->P)))=> (((((and_rect (Xq Xv0)) (Xq Xv0)) P) x3) x2)) (Xq Xv0)) (fun (x3:(Xq Xv0)) (x4:(Xq Xv0))=> x4))) as proof of (Xq Xv0)
% Found (fun (Xz:a) (x2:((and (Xq Xv0)) (Xq Xv0)))=> (((fun (P:Type) (x3:((Xq Xv0)->((Xq Xv0)->P)))=> (((((and_rect (Xq Xv0)) (Xq Xv0)) P) x3) x2)) (Xq Xv0)) (fun (x3:(Xq Xv0)) (x4:(Xq Xv0))=> x4))) as proof of (((and (Xq Xv0)) (Xq Xv0))->(Xq Xv0))
% Found (fun (Xy0:a) (Xz:a) (x2:((and (Xq Xv0)) (Xq Xv0)))=> (((fun (P:Type) (x3:((Xq Xv0)->((Xq Xv0)->P)))=> (((((and_rect (Xq Xv0)) (Xq Xv0)) P) x3) x2)) (Xq Xv0)) (fun (x3:(Xq Xv0)) (x4:(Xq Xv0))=> x4))) as proof of (a->(((and (Xq Xv0)) (Xq Xv0))->(Xq Xv0)))
% Found (fun (Xx0:a) (Xy0:a) (Xz:a) (x2:((and (Xq Xv0)) (Xq Xv0)))=> (((fun (P:Type) (x3:((Xq Xv0)->((Xq Xv0)->P)))=> (((((and_rect (Xq Xv0)) (Xq Xv0)) P) x3) x2)) (Xq Xv0)) (fun (x3:(Xq Xv0)) (x4:(Xq Xv0))=> x4))) as proof of (a->(a->(((and (Xq Xv0)) (Xq Xv0))->(Xq Xv0))))
% Found (fun (Xx0:a) (Xy0:a) (Xz:a) (x2:((and (Xq Xv0)) (Xq Xv0)))=> (((fun (P:Type) (x3:((Xq Xv0)->((Xq Xv0)->P)))=> (((((and_rect (Xq Xv0)) (Xq Xv0)) P) x3) x2)) (Xq Xv0)) (fun (x3:(Xq Xv0)) (x4:(Xq Xv0))=> x4))) as proof of (a->(a->(a->(((and (Xq Xv0)) (Xq Xv0))->(Xq Xv0)))))
% Found or_comm_i00:=(or_comm_i0 ((r Xv1) Xv0)):(((or ((r Xv0) Xv1)) ((r Xv1) Xv0))->((or ((r Xv1) Xv0)) ((r Xv0) Xv1)))
% Instantiate: Xv0:=Xv1:a
% Found (fun (Xy0:a)=> or_comm_i00) as proof of (((or ((r Xv0) Xv1)) ((r Xv1) Xv0))->((or ((r Xv0) Xv1)) ((r Xv1) Xv0)))
% Found (fun (Xx0:a) (Xy0:a)=> or_comm_i00) as proof of (a->(((or ((r Xv0) Xv1)) ((r Xv1) Xv0))->((or ((r Xv0) Xv1)) ((r Xv1) Xv0))))
% Found (fun (Xx0:a) (Xy0:a)=> or_comm_i00) as proof of (a->(a->(((or ((r Xv0) Xv1)) ((r Xv1) Xv0))->((or ((r Xv0) Xv1)) ((r Xv1) Xv0)))))
% Found x3:(Xq Xv0)
% Found (fun (x4:((or ((r Xv0) Xy0)) ((r Xy0) Xv0)))=> x3) as proof of (Xq Xv0)
% Found (fun (x3:(Xq Xv0)) (x4:((or ((r Xv0) Xy0)) ((r Xy0) Xv0)))=> x3) as proof of (((or ((r Xv0) Xy0)) ((r Xy0) Xv0))->(Xq Xv0))
% Found (fun (x3:(Xq Xv0)) (x4:((or ((r Xv0) Xy0)) ((r Xy0) Xv0)))=> x3) as proof of ((Xq Xv0)->(((or ((r Xv0) Xy0)) ((r Xy0) Xv0))->(Xq Xv0)))
% Found (and_rect10 (fun (x3:(Xq Xv0)) (x4:((or ((r Xv0) Xy0)) ((r Xy0) Xv0)))=> x3)) as proof of (Xq Xv0)
% Found ((and_rect1 (Xq Xv0)) (fun (x3:(Xq Xv0)) (x4:((or ((r Xv0) Xy0)) ((r Xy0) Xv0)))=> x3)) as proof of (Xq Xv0)
% Found (((fun (P:Type) (x3:((Xq Xv0)->(((or ((r Xv0) Xy0)) ((r Xy0) Xv0))->P)))=> (((((and_rect (Xq Xv0)) ((or ((r Xv0) Xy0)) ((r Xy0) Xv0))) P) x3) x2)) (Xq Xv0)) (fun (x3:(Xq Xv0)) (x4:((or ((r Xv0) Xy0)) ((r Xy0) Xv0)))=> x3)) as proof of (Xq Xv0)
% Found (((fun (P:Type) (x3:((Xq Xv0)->(((or ((r Xv0) Xy0)) ((r Xy0) Xv0))->P)))=> (((((and_rect (Xq Xv0)) ((or ((r Xv0) Xy0)) ((r Xy0) Xv0))) P) x3) x2)) (Xq Xv0)) (fun (x3:(Xq Xv0)) (x4:((or ((r Xv0) Xy0)) ((r Xy0) Xv0)))=> x3)) as proof of (Xq Xv0)
% Found x2:((r Xx0) Xy0)
% Instantiate: Xv0:=Xx0:a
% Found x2 as proof of ((r Xv0) Xy0)
% Found (or_introl00 x2) as proof of ((or ((r Xv0) Xy0)) ((r Xy0) Xv0))
% Found ((or_introl0 ((r Xy0) Xv0)) x2) as proof of ((or ((r Xv0) Xy0)) ((r Xy0) Xv0))
% Found (((or_introl ((r Xv0) Xy0)) ((r Xy0) Xv0)) x2) as proof of ((or ((r Xv0) Xy0)) ((r Xy0) Xv0))
% Found (fun (x2:((r Xx0) Xy0))=> (((or_introl ((r Xv0) Xy0)) ((r Xy0) Xv0)) x2)) as proof of ((or ((r Xv0) Xy0)) ((r Xy0) Xv0))
% Found (fun (Xy0:a) (x2:((r Xx0) Xy0))=> (((or_introl ((r Xv0) Xy0)) ((r Xy0) Xv0)) x2)) as proof of (((r Xx0) Xy0)->((or ((r Xv0) Xy0)) ((r Xy0) Xv0)))
% Found or_introl00:=(or_introl0 ((r Xv0) Xx0)):(((r Xx0) Xy0)->((or ((r Xx0) Xy0)) ((r Xv0) Xx0)))
% Found (or_introl0 ((r Xv0) Xx0)) as proof of (((r Xx0) Xy0)->((or ((r Xx0) Xv0)) ((r Xv0) Xx0)))
% Found ((or_introl ((r Xx0) Xy0)) ((r Xv0) Xx0)) as proof of (((r Xx0) Xy0)->((or ((r Xx0) Xv0)) ((r Xv0) Xx0)))
% Found ((or_introl ((r Xx0) Xy0)) ((r Xv0) Xx0)) as proof of (((r Xx0) Xy0)->((or ((r Xx0) Xv0)) ((r Xv0) Xx0)))
% Found or_introl00:=(or_introl0 ((r Xv1) Xx0)):(((r Xx0) Xy0)->((or ((r Xx0) Xy0)) ((r Xv1) Xx0)))
% Found (or_introl0 ((r Xv1) Xx0)) as proof of (((r Xx0) Xy0)->((or ((r Xx0) Xv1)) ((r Xv1) Xx0)))
% Found ((or_introl ((r Xx0) Xy0)) ((r Xv1) Xx0)) as proof of (((r Xx0) Xy0)->((or ((r Xx0) Xv1)) ((r Xv1) Xx0)))
% Found ((or_introl ((r Xx0) Xy0)) ((r Xv1) Xx0)) as proof of (((r Xx0) Xy0)->((or ((r Xx0) Xv1)) ((r Xv1) Xx0)))
% Found x2:((r Xx0) Xy0)
% Instantiate: Xv1:=Xy0:a;Xv0:=Xx0:a
% Found (fun (x2:((r Xx0) Xy0))=> x2) as proof of ((r Xv0) Xv1)
% Found x2:((r Xv1) Xv0)
% Found (fun (x2:((r Xv1) Xv0))=> x2) as proof of ((r Xv1) Xv0)
% Found (fun (Xy0:a) (x2:((r Xv1) Xv0))=> x2) as proof of (((r Xv1) Xv0)->((r Xv1) Xv0))
% Found (fun (Xx0:a) (Xy0:a) (x2:((r Xv1) Xv0))=> x2) as proof of (a->(((r Xv1) Xv0)->((r Xv1) Xv0)))
% Found (fun (Xx0:a) (Xy0:a) (x2:((r Xv1) Xv0))=> x2) as proof of (a->(a->(((r Xv1) Xv0)->((r Xv1) Xv0))))
% Found x2:((r Xx0) Xy0)
% Instantiate: Xv1:=Xx0:a;Xv0:=Xy0:a
% Found (fun (x2:((r Xx0) Xy0))=> x2) as proof of ((r Xv1) Xv0)
% Found x2:((r Xv0) Xv1)
% Found (fun (x2:((r Xv0) Xv1))=> x2) as proof of ((r Xv0) Xv1)
% Found (fun (Xy0:a) (x2:((r Xv0) Xv1))=> x2) as proof of (((r Xv0) Xv1)->((r Xv0) Xv1))
% Found (fun (Xx0:a) (Xy0:a) (x2:((r Xv0) Xv1))=> x2) as proof of (a->(((r Xv0) Xv1)->((r Xv0) Xv1)))
% Found (fun (Xx0:a) (Xy0:a) (x2:((r Xv0) Xv1))=> x2) as proof of (a->(a->(((r Xv0) Xv1)->((r Xv0) Xv1))))
% Found x2:((r Xx0) Xy0)
% Instantiate: Xv0:=Xx0:a
% Found (fun (x2:((r Xx0) Xy0))=> x2) as proof of ((r Xv0) Xy0)
% Found (fun (Xy0:a) (x2:((r Xx0) Xy0))=> x2) as proof of (((r Xx0) Xy0)->((r Xv0) Xy0))
% Found x3:((or ((r Xx0) Xv0)) ((r Xv0) Xx0))
% Found (fun (x4:((or ((r Xy0) Xv0)) ((r Xv0) Xy0)))=> x3) as proof of ((or ((r Xx0) Xv0)) ((r Xv0) Xx0))
% Found (fun (x3:((or ((r Xx0) Xv0)) ((r Xv0) Xx0))) (x4:((or ((r Xy0) Xv0)) ((r Xv0) Xy0)))=> x3) as proof of (((or ((r Xy0) Xv0)) ((r Xv0) Xy0))->((or ((r Xx0) Xv0)) ((r Xv0) Xx0)))
% Found (fun (x3:((or ((r Xx0) Xv0)) ((r Xv0) Xx0))) (x4:((or ((r Xy0) Xv0)) ((r Xv0) Xy0)))=> x3) as proof of (((or ((r Xx0) Xv0)) ((r Xv0) Xx0))->(((or ((r Xy0) Xv0)) ((r Xv0) Xy0))->((or ((r Xx0) Xv0)) ((r Xv0) Xx0))))
% Found (and_rect10 (fun (x3:((or ((r Xx0) Xv0)) ((r Xv0) Xx0))) (x4:((or ((r Xy0) Xv0)) ((r Xv0) Xy0)))=> x3)) as proof of ((or ((r Xx0) Xv0)) ((r Xv0) Xx0))
% Found ((and_rect1 ((or ((r Xx0) Xv0)) ((r Xv0) Xx0))) (fun (x3:((or ((r Xx0) Xv0)) ((r Xv0) Xx0))) (x4:((or ((r Xy0) Xv0)) ((r Xv0) Xy0)))=> x3)) as proof of ((or ((r Xx0) Xv0)) ((r Xv0) Xx0))
% Found (((fun (P:Type) (x3:(((or ((r Xx0) Xv0)) ((r Xv0) Xx0))->(((or ((r Xy0) Xv0)) ((r Xv0) Xy0))->P)))=> (((((and_rect ((or ((r Xx0) Xv0)) ((r Xv0) Xx0))) ((or ((r Xy0) Xv0)) ((r Xv0) Xy0))) P) x3) x2)) ((or ((r Xx0) Xv0)) ((r Xv0) Xx0))) (fun (x3:((or ((r Xx0) Xv0)) ((r Xv0) Xx0))) (x4:((or ((r Xy0) Xv0)) ((r Xv0) Xy0)))=> x3)) as proof of ((or ((r Xx0) Xv0)) ((r Xv0) Xx0))
% Found (fun (x2:((and ((or ((r Xx0) Xv0)) ((r Xv0) Xx0))) ((or ((r Xy0) Xv0)) ((r Xv0) Xy0))))=> (((fun (P:Type) (x3:(((or ((r Xx0) Xv0)) ((r Xv0) Xx0))->(((or ((r Xy0) Xv0)) ((r Xv0) Xy0))->P)))=> (((((and_rect ((or ((r Xx0) Xv0)) ((r Xv0) Xx0))) ((or ((r Xy0) Xv0)) ((r Xv0) Xy0))) P) x3) x2)) ((or ((r Xx0) Xv0)) ((r Xv0) Xx0))) (fun (x3:((or ((r Xx0) Xv0)) ((r Xv0) Xx0))) (x4:((or ((r Xy0) Xv0)) ((r Xv0) Xy0)))=> x3))) as proof of ((or ((r Xx0) Xv0)) ((r Xv0) Xx0))
% Found (fun (Xz:a) (x2:((and ((or ((r Xx0) Xv0)) ((r Xv0) Xx0))) ((or ((r Xy0) Xv0)) ((r Xv0) Xy0))))=> (((fun (P:Type) (x3:(((or ((r Xx0) Xv0)) ((r Xv0) Xx0))->(((or ((r Xy0) Xv0)) ((r Xv0) Xy0))->P)))=> (((((and_rect ((or ((r Xx0) Xv0)) ((r Xv0) Xx0))) ((or ((r Xy0) Xv0)) ((r Xv0) Xy0))) P) x3) x2)) ((or ((r Xx0) Xv0)) ((r Xv0) Xx0))) (fun (x3:((or ((r Xx0) Xv0)) ((r Xv0) Xx0))) (x4:((or ((r Xy0) Xv0)) ((r Xv0) Xy0)))=> x3))) as proof of (((and ((or ((r Xx0) Xv0)) ((r Xv0) Xx0))) ((or ((r Xy0) Xv0)) ((r Xv0) Xy0)))->((or ((r Xx0) Xv0)) ((r Xv0) Xx0)))
% Found (fun (Xy0:a) (Xz:a) (x2:((and ((or ((r Xx0) Xv0)) ((r Xv0) Xx0))) ((or ((r Xy0) Xv0)) ((r Xv0) Xy0))))=> (((fun (P:Type) (x3:(((or ((r Xx0) Xv0)) ((r Xv0) Xx0))->(((or ((r Xy0) Xv0)) ((r Xv0) Xy0))->P)))=> (((((and_rect ((or ((r Xx0) Xv0)) ((r Xv0) Xx0))) ((or ((r Xy0) Xv0)) ((r Xv0) Xy0))) P) x3) x2)) ((or ((r Xx0) Xv0)) ((r Xv0) Xx0))) (fun (x3:((or ((r Xx0) Xv0)) ((r Xv0) Xx0))) (x4:((or ((r Xy0) Xv0)) ((r Xv0) Xy0)))=> x3))) as proof of (a->(((and ((or ((r Xx0) Xv0)) ((r Xv0) Xx0))) ((or ((r Xy0) Xv0)) ((r Xv0) Xy0)))->((or ((r Xx0) Xv0)) ((r Xv0) Xx0))))
% Found (fun (Xx0:a) (Xy0:a) (Xz:a) (x2:((and ((or ((r Xx0) Xv0)) ((r Xv0) Xx0))) ((or ((r Xy0) Xv0)) ((r Xv0) Xy0))))=> (((fun (P:Type) (x3:(((or ((r Xx0) Xv0)) ((r Xv0) Xx0))->(((or ((r Xy0) Xv0)) ((r Xv0) Xy0))->P)))=> (((((and_rect ((or ((r Xx0) Xv0)) ((r Xv0) Xx0))) ((or ((r Xy0) Xv0)) ((r Xv0) Xy0))) P) x3) x2)) ((or ((r Xx0) Xv0)) ((r Xv0) Xx0))) (fun (x3:((or ((r Xx0) Xv0)) ((r Xv0) Xx0))) (x4:((or ((r Xy0) Xv0)) ((r Xv0) Xy0)))=> x3))) as proof of (forall (Xy0:a), (a->(((and ((or ((r Xx0) Xv0)) ((r Xv0) Xx0))) ((or ((r Xy0) Xv0)) ((r Xv0) Xy0)))->((or ((r Xx0) Xv0)) ((r Xv0) Xx0)))))
% Found (fun (Xx0:a) (Xy0:a) (Xz:a) (x2:((and ((or ((r Xx0) Xv0)) ((r Xv0) Xx0))) ((or ((r Xy0) Xv0)) ((r Xv0) Xy0))))=> (((fun (P:Type) (x3:(((or ((r Xx0) Xv0)) ((r Xv0) Xx0))->(((or ((r Xy0) Xv0)) ((r Xv0) Xy0))->P)))=> (((((and_rect ((or ((r Xx0) Xv0)) ((r Xv0) Xx0))) ((or ((r Xy0) Xv0)) ((r Xv0) Xy0))) P) x3) x2)) ((or ((r Xx0) Xv0)) ((r Xv0) Xx0))) (fun (x3:((or ((r Xx0) Xv0)) ((r Xv0) Xx0))) (x4:((or ((r Xy0) Xv0)) ((r Xv0) Xy0)))=> x3))) as proof of (forall (Xx0:a) (Xy0:a), (a->(((and ((or ((r Xx0) Xv0)) ((r Xv0) Xx0))) ((or ((r Xy0) Xv0)) ((r Xv0) Xy0)))->((or ((r Xx0) Xv0)) ((r Xv0) Xx0)))))
% Found x3:((or ((r Xx0) Xv1)) ((r Xv1) Xx0))
% Found (fun (x4:((or ((r Xy0) Xv1)) ((r Xv1) Xy0)))=> x3) as proof of ((or ((r Xx0) Xv1)) ((r Xv1) Xx0))
% Found (fun (x3:((or ((r Xx0) Xv1)) ((r Xv1) Xx0))) (x4:((or ((r Xy0) Xv1)) ((r Xv1) Xy0)))=> x3) as proof of (((or ((r Xy0) Xv1)) ((r Xv1) Xy0))->((or ((r Xx0) Xv1)) ((r Xv1) Xx0)))
% Found (fun (x3:((or ((r Xx0) Xv1)) ((r Xv1) Xx0))) (x4:((or ((r Xy0) Xv1)) ((r Xv1) Xy0)))=> x3) as proof of (((or ((r Xx0) Xv1)) ((r Xv1) Xx0))->(((or ((r Xy0) Xv1)) ((r Xv1) Xy0))->((or ((r Xx0) Xv1)) ((r Xv1) Xx0))))
% Found (and_rect10 (fun (x3:((or ((r Xx0) Xv1)) ((r Xv1) Xx0))) (x4:((or ((r Xy0) Xv1)) ((r Xv1) Xy0)))=> x3)) as proof of ((or ((r Xx0) Xv1)) ((r Xv1) Xx0))
% Found ((and_rect1 ((or ((r Xx0) Xv1)) ((r Xv1) Xx0))) (fun (x3:((or ((r Xx0) Xv1)) ((r Xv1) Xx0))) (x4:((or ((r Xy0) Xv1)) ((r Xv1) Xy0)))=> x3)) as proof of ((or ((r Xx0) Xv1)) ((r Xv1) Xx0))
% Found (((fun (P:Type) (x3:(((or ((r Xx0) Xv1)) ((r Xv1) Xx0))->(((or ((r Xy0) Xv1)) ((r Xv1) Xy0))->P)))=> (((((and_rect ((or ((r Xx0) Xv1)) ((r Xv1) Xx0))) ((or ((r Xy0) Xv1)) ((r Xv1) Xy0))) P) x3) x2)) ((or ((r Xx0) Xv1)) ((r Xv1) Xx0))) (fun (x3:((or ((r Xx0) Xv1)) ((r Xv1) Xx0))) (x4:((or ((r Xy0) Xv1)) ((r Xv1) Xy0)))=> x3)) as proof of ((or ((r Xx0) Xv1)) ((r Xv1) Xx0))
% Found (fun (x2:((and ((or ((r Xx0) Xv1)) ((r Xv1) Xx0))) ((or ((r Xy0) Xv1)) ((r Xv1) Xy0))))=> (((fun (P:Type) (x3:(((or ((r Xx0) Xv1)) ((r Xv1) Xx0))->(((or ((r Xy0) Xv1)) ((r Xv1) Xy0))->P)))=> (((((and_rect ((or ((r Xx0) Xv1)) ((r Xv1) Xx0))) ((or ((r Xy0) Xv1)) ((r Xv1) Xy0))) P) x3) x2)) ((or ((r Xx0) Xv1)) ((r Xv1) Xx0))) (fun (x3:((or ((r Xx0) Xv1)) ((r Xv1) Xx0))) (x4:((or ((r Xy0) Xv1)) ((r Xv1) Xy0)))=> x3))) as proof of ((or ((r Xx0) Xv1)) ((r Xv1) Xx0))
% Found (fun (Xz:a) (x2:((and ((or ((r Xx0) Xv1)) ((r Xv1) Xx0))) ((or ((r Xy0) Xv1)) ((r Xv1) Xy0))))=> (((fun (P:Type) (x3:(((or ((r Xx0) Xv1)) ((r Xv1) Xx0))->(((or ((r Xy0) Xv1)) ((r Xv1) Xy0))->P)))=> (((((and_rect ((or ((r Xx0) Xv1)) ((r Xv1) Xx0))) ((or ((r Xy0) Xv1)) ((r Xv1) Xy0))) P) x3) x2)) ((or ((r Xx0) Xv1)) ((r Xv1) Xx0))) (fun (x3:((or ((r Xx0) Xv1)) ((r Xv1) Xx0))) (x4:((or ((r Xy0) Xv1)) ((r Xv1) Xy0)))=> x3))) as proof of (((and ((or ((r Xx0) Xv1)) ((r Xv1) Xx0))) ((or ((r Xy0) Xv1)) ((r Xv1) Xy0)))->((or ((r Xx0) Xv1)) ((r Xv1) Xx0)))
% Found (fun (Xy0:a) (Xz:a) (x2:((and ((or ((r Xx0) Xv1)) ((r Xv1) Xx0))) ((or ((r Xy0) Xv1)) ((r Xv1) Xy0))))=> (((fun (P:Type) (x3:(((or ((r Xx0) Xv1)) ((r Xv1) Xx0))->(((or ((r Xy0) Xv1)) ((r Xv1) Xy0))->P)))=> (((((and_rect ((or ((r Xx0) Xv1)) ((r Xv1) Xx0))) ((or ((r Xy0) Xv1)) ((r Xv1) Xy0))) P) x3) x2)) ((or ((r Xx0) Xv1)) ((r Xv1) Xx0))) (fun (x3:((or ((r Xx0) Xv1)) ((r Xv1) Xx0))) (x4:((or ((r Xy0) Xv1)) ((r Xv1) Xy0)))=> x3))) as proof of (a->(((and ((or ((r Xx0) Xv1)) ((r Xv1) Xx0))) ((or ((r Xy0) Xv1)) ((r Xv1) Xy0)))->((or ((r Xx0) Xv1)) ((r Xv1) Xx0))))
% Found (fun (Xx0:a) (Xy0:a) (Xz:a) (x2:((and ((or ((r Xx0) Xv1)) ((r Xv1) Xx0))) ((or ((r Xy0) Xv1)) ((r Xv1) Xy0))))=> (((fun (P:Type) (x3:(((or ((r Xx0) Xv1)) ((r Xv1) Xx0))->(((or ((r Xy0) Xv1)) ((r Xv1) Xy0))->P)))=> (((((and_rect ((or ((r Xx0) Xv1)) ((r Xv1) Xx0))) ((or ((r Xy0) Xv1)) ((r Xv1) Xy0))) P) x3) x2)) ((or ((r Xx0) Xv1)) ((r Xv1) Xx0))) (fun (x3:((or ((r Xx0) Xv1)) ((r Xv1) Xx0))) (x4:((or ((r Xy0) Xv1)) ((r Xv1) Xy0)))=> x3))) as proof of (forall (Xy0:a), (a->(((and ((or ((r Xx0) Xv1)) ((r Xv1) Xx0))) ((or ((r Xy0) Xv1)) ((r Xv1) Xy0)))->((or ((r Xx0) Xv1)) ((r Xv1) Xx0)))))
% Found (fun (Xx0:a) (Xy0:a) (Xz:a) (x2:((and ((or ((r Xx0) Xv1)) ((r Xv1) Xx0))) ((or ((r Xy0) Xv1)) ((r Xv1) Xy0))))=> (((fun (P:Type) (x3:(((or ((r Xx0) Xv1)) ((r Xv1) Xx0))->(((or ((r Xy0) Xv1)) ((r Xv1) Xy0))->P)))=> (((((and_rect ((or ((r Xx0) Xv1)) ((r Xv1) Xx0))) ((or ((r Xy0) Xv1)) ((r Xv1) Xy0))) P) x3) x2)) ((or ((r Xx0) Xv1)) ((r Xv1) Xx0))) (fun (x3:((or ((r Xx0) Xv1)) ((r Xv1) Xx0))) (x4:((or ((r Xy0) Xv1)) ((r Xv1) Xy0)))=> x3))) as proof of (forall (Xx0:a) (Xy0:a), (a->(((and ((or ((r Xx0) Xv1)) ((r Xv1) Xx0))) ((or ((r Xy0) Xv1)) ((r Xv1) Xy0)))->((or ((r Xx0) Xv1)) ((r Xv1) Xx0)))))
% Found or_comm_i00:=(or_comm_i0 ((r Xv1) Xv0)):(((or ((r Xv0) Xv1)) ((r Xv1) Xv0))->((or ((r Xv1) Xv0)) ((r Xv0) Xv1)))
% Instantiate: Xv0:=Xv1:a
% Found (fun (x3:((or ((r Xv0) Xv1)) ((r Xv1) Xv0)))=> or_comm_i00) as proof of (((or ((r Xv0) Xv1)) ((r Xv1) Xv0))->((or ((r Xv0) Xv1)) ((r Xv1) Xv0)))
% Found (fun (x3:((or ((r Xv0) Xv1)) ((r Xv1) Xv0)))=> or_comm_i00) as proof of (((or ((r Xv0) Xv1)) ((r Xv1) Xv0))->(((or ((r Xv0) Xv1)) ((r Xv1) Xv0))->((or ((r Xv0) Xv1)) ((r Xv1) Xv0))))
% Found (and_rect10 (fun (x3:((or ((r Xv0) Xv1)) ((r Xv1) Xv0)))=> or_comm_i00)) as proof of ((or ((r Xv0) Xv1)) ((r Xv1) Xv0))
% Found ((and_rect1 ((or ((r Xv0) Xv1)) ((r Xv1) Xv0))) (fun (x3:((or ((r Xv0) Xv1)) ((r Xv1) Xv0)))=> or_comm_i00)) as proof of ((or ((r Xv0) Xv1)) ((r Xv1) Xv0))
% Found (((fun (P:Type) (x3:(((or ((r Xv0) Xv1)) ((r Xv1) Xv0))->(((or ((r Xv0) Xv1)) ((r Xv1) Xv0))->P)))=> (((((and_rect ((or ((r Xv0) Xv1)) ((r Xv1) Xv0))) ((or ((r Xv0) Xv1)) ((r Xv1) Xv0))) P) x3) x2)) ((or ((r Xv0) Xv1)) ((r Xv1) Xv0))) (fun (x3:((or ((r Xv0) Xv1)) ((r Xv1) Xv0)))=> or_comm_i00)) as proof of ((or ((r Xv0) Xv1)) ((r Xv1) Xv0))
% Found (fun (x2:((and ((or ((r Xv0) Xv1)) ((r Xv1) Xv0))) ((or ((r Xv0) Xv1)) ((r Xv1) Xv0))))=> (((fun (P:Type) (x3:(((or ((r Xv0) Xv1)) ((r Xv1) Xv0))->(((or ((r Xv0) Xv1)) ((r Xv1) Xv0))->P)))=> (((((and_rect ((or ((r Xv0) Xv1)) ((r Xv1) Xv0))) ((or ((r Xv0) Xv1)) ((r Xv1) Xv0))) P) x3) x2)) ((or ((r Xv0) Xv1)) ((r Xv1) Xv0))) (fun (x3:((or ((r Xv0) Xv1)) ((r Xv1) Xv0)))=> or_comm_i00))) as proof of ((or ((r Xv0) Xv1)) ((r Xv1) Xv0))
% Found (fun (Xz:a) (x2:((and ((or ((r Xv0) Xv1)) ((r Xv1) Xv0))) ((or ((r Xv0) Xv1)) ((r Xv1) Xv0))))=> (((fun (P:Type) (x3:(((or ((r Xv0) Xv1)) ((r Xv1) Xv0))->(((or ((r Xv0) Xv1)) ((r Xv1) Xv0))->P)))=> (((((and_rect ((or ((r Xv0) Xv1)) ((r Xv1) Xv0))) ((or ((r Xv0) Xv1)) ((r Xv1) Xv0))) P) x3) x2)) ((or ((r Xv0) Xv1)) ((r Xv1) Xv0))) (fun (x3:((or ((r Xv0) Xv1)) ((r Xv1) Xv0)))=> or_comm_i00))) as proof of (((and ((or ((r Xv0) Xv1)) ((r Xv1) Xv0))) ((or ((r Xv0) Xv1)) ((r Xv1) Xv0)))->((or ((r Xv0) Xv1)) ((r Xv1) Xv0)))
% Found (fun (Xy0:a) (Xz:a) (x2:((and ((or ((r Xv0) Xv1)) ((r Xv1) Xv0))) ((or ((r Xv0) Xv1)) ((r Xv1) Xv0))))=> (((fun (P:Type) (x3:(((or ((r Xv0) Xv1)) ((r Xv1) Xv0))->(((or ((r Xv0) Xv1)) ((r Xv1) Xv0))->P)))=> (((((and_rect ((or ((r Xv0) Xv1)) ((r Xv1) Xv0))) ((or ((r Xv0) Xv1)) ((r Xv1) Xv0))) P) x3) x2)) ((or ((r Xv0) Xv1)) ((r Xv1) Xv0))) (fun (x3:((or ((r Xv0) Xv1)) ((r Xv1) Xv0)))=> or_comm_i00))) as proof of (a->(((and ((or ((r Xv0) Xv1)) ((r Xv1) Xv0))) ((or ((r Xv0) Xv1)) ((r Xv1) Xv0)))->((or ((r Xv0) Xv1)) ((r Xv1) Xv0))))
% Found (fun (Xx0:a) (Xy0:a) (Xz:a) (x2:((and ((or ((r Xv0) Xv1)) ((r Xv1) Xv0))) ((or ((r Xv0) Xv1)) ((r Xv1) Xv0))))=> (((fun (P:Type) (x3:(((or ((r Xv0) Xv1)) ((r Xv1) Xv0))->(((or ((r Xv0) Xv1)) ((r Xv1) Xv0))->P)))=> (((((and_rect ((or ((r Xv0) Xv1)) ((r Xv1) Xv0))) ((or ((r Xv0) Xv1)) ((r Xv1) Xv0))) P) x3) x2)) ((or ((r Xv0) Xv1)) ((r Xv1) Xv0))) (fun (x3:((or ((r Xv0) Xv1)) ((r Xv1) Xv0)))=> or_comm_i00))) as proof of (a->(a->(((and ((or ((r Xv0) Xv1)) ((r Xv1) Xv0))) ((or ((r Xv0) Xv1)) ((r Xv1) Xv0)))->((or ((r Xv0) Xv1)) ((r Xv1) Xv0)))))
% Found (fun (Xx0:a) (Xy0:a) (Xz:a) (x2:((and ((or ((r Xv0) Xv1)) ((r Xv1) Xv0))) ((or ((r Xv0) Xv1)) ((r Xv1) Xv0))))=> (((fun (P:Type) (x3:(((or ((r Xv0) Xv1)) ((r Xv1) Xv0))->(((or ((r Xv0) Xv1)) ((r Xv1) Xv0))->P)))=> (((((and_rect ((or ((r Xv0) Xv1)) ((r Xv1) Xv0))) ((or ((r Xv0) Xv1)) ((r Xv1) Xv0))) P) x3) x2)) ((or ((r Xv0) Xv1)) ((r Xv1) Xv0))) (fun (x3:((or ((r Xv0) Xv1)) ((r Xv1) Xv0)))=> or_comm_i00))) as proof of (a->(a->(a->(((and ((or ((r Xv0) Xv1)) ((r Xv1) Xv0))) ((or ((r Xv0) Xv1)) ((r Xv1) Xv0)))->((or ((r Xv0) Xv1)) ((r Xv1) Xv0))))))
% Found or_comm_i00:=(or_comm_i0 ((r Xv1) Xv0)):(((or ((r Xv0) Xv1)) ((r Xv1) Xv0))->((or ((r Xv1) Xv0)) ((r Xv0) Xv1)))
% Found (fun (Xy0:a)=> or_comm_i00) as proof of (((or ((r Xv0) Xv1)) ((r Xv1) Xv0))->((or ((r Xv0) Xv1)) ((r Xv1) Xv0)))
% Found (fun (Xx0:a) (Xy0:a)=> or_comm_i00) as proof of (a->(((or ((r Xv0) Xv1)) ((r Xv1) Xv0))->((or ((r Xv0) Xv1)) ((r Xv1) Xv0))))
% Found (fun (Xx0:a) (Xy0:a)=> or_comm_i00) as proof of (a->(a->(((or ((r Xv0) Xv1)) ((r Xv1) Xv0))->((or ((r Xv0) Xv1)) ((r Xv1) Xv0)))))
% Found or_introl00:=(or_introl0 ((r Xv1) Xv0)):(((r Xx0) Xy0)->((or ((r Xx0) Xy0)) ((r Xv1) Xv0)))
% Found (or_introl0 ((r Xv1) Xv0)) as proof of (((r Xx0) Xy0)->((or ((r Xv0) Xv1)) ((r Xv1) Xv0)))
% Found ((or_introl ((r Xx0) Xy0)) ((r Xv1) Xv0)) as proof of (((r Xx0) Xy0)->((or ((r Xv0) Xv1)) ((r Xv1) Xv0)))
% Found ((or_introl ((r Xx0) Xy0)) ((r Xv1) Xv0)) as proof of (((r Xx0) Xy0)->((or ((r Xv0) Xv1)) ((r Xv1) Xv0)))
% Found ((or_introl ((r Xx0) Xy0)) ((r Xv1) Xv0)) as proof of (((r Xx0) Xy0)->((or ((r Xv0) Xv1)) ((r Xv1) Xv0)))
% Found or_introl00:=(or_introl0 ((r Xv1) Xv0)):(((r Xx0) Xy0)->((or ((r Xx0) Xy0)) ((r Xv1) Xv0)))
% Found (or_introl0 ((r Xv1) Xv0)) as proof of (((r Xx0) Xy0)->((or ((r Xv0) Xv1)) ((r Xv1) Xv0)))
% Found ((or_introl ((r Xx0) Xy0)) ((r Xv1) Xv0)) as proof of (((r Xx0) Xy0)->((or ((r Xv0) Xv1)) ((r Xv1) Xv0)))
% Found ((or_introl ((r Xx0) Xy0)) ((r Xv1) Xv0)) as proof of (((r Xx0) Xy0)->((or ((r Xv0) Xv1)) ((r Xv1) Xv0)))
% Found ((or_introl ((r Xx0) Xy0)) ((r Xv1) Xv0)) as proof of (((r Xx0) Xy0)->((or ((r Xv0) Xv1)) ((r Xv1) Xv0)))
% Found or_intror00:=(or_intror0 ((r Xx0) Xy0)):(((r Xx0) Xy0)->((or ((r Xv0) Xv1)) ((r Xx0) Xy0)))
% Found (or_intror0 ((r Xx0) Xy0)) as proof of (((r Xx0) Xy0)->((or ((r Xv0) Xv1)) ((r Xv1) Xv0)))
% Found ((or_intror ((r Xv0) Xv1)) ((r Xx0) Xy0)) as proof of (((r Xx0) Xy0)->((or ((r Xv0) Xv1)) ((r Xv1) Xv0)))
% Found ((or_intror ((r Xv0) Xv1)) ((r Xx0) Xy0)) as proof of (((r Xx0) Xy0)->((or ((r Xv0) Xv1)) ((r Xv1) Xv0)))
% Found ((or_intror ((r Xv0) Xv1)) ((r Xx0) Xy0)) as proof of (((r Xx0) Xy0)->((or ((r Xv0) Xv1)) ((r Xv1) Xv0)))
% Found or_intror00:=(or_intror0 ((r Xx0) Xy0)):(((r Xx0) Xy0)->((or ((r Xv0) Xv1)) ((r Xx0) Xy0)))
% Found (or_intror0 ((r Xx0) Xy0)) as proof of (((r Xx0) Xy0)->((or ((r Xv0) Xv1)) ((r Xv1) Xv0)))
% Found ((or_intror ((r Xv0) Xv1)) ((r Xx0) Xy0)) as proof of (((r Xx0) Xy0)->((or ((r Xv0) Xv1)) ((r Xv1) Xv0)))
% Found ((or_intror ((r Xv0) Xv1)) ((r Xx0) Xy0)) as proof of (((r Xx0) Xy0)->((or ((r Xv0) Xv1)) ((r Xv1) Xv0)))
% Found ((or_intror ((r Xv0) Xv1)) ((r Xx0) Xy0)) as proof of (((r Xx0) Xy0)->((or ((r Xv0) Xv1)) ((r Xv1) Xv0)))
% Found or_intror00:=(or_intror0 ((r Xx0) Xy0)):(((r Xx0) Xy0)->((or ((r Xy0) Xv0)) ((r Xx0) Xy0)))
% Found (or_intror0 ((r Xx0) Xy0)) as proof of (((r Xx0) Xy0)->((or ((r Xy0) Xv0)) ((r Xv0) Xy0)))
% Found ((or_intror ((r Xy0) Xv0)) ((r Xx0) Xy0)) as proof of (((r Xx0) Xy0)->((or ((r Xy0) Xv0)) ((r Xv0) Xy0)))
% Found ((or_intror ((r Xy0) Xv0)) ((r Xx0) Xy0)) as proof of (((r Xx0) Xy0)->((or ((r Xy0) Xv0)) ((r Xv0) Xy0)))
% Found (fun (Xy0:a)=> ((or_intror ((r Xy0) Xv0)) ((r Xx0) Xy0))) as proof of (((r Xx0) Xy0)->((or ((r Xy0) Xv0)) ((r Xv0) Xy0)))
% Found x2:((r Xx0) Xy0)
% Instantiate: Xv0:=Xy0:a
% Found x2 as proof of ((r Xx0) Xv0)
% Found (or_introl00 x2) as proof of ((or ((r Xx0) Xv0)) ((r Xv0) Xx0))
% Found ((or_introl0 ((r Xv0) Xx0)) x2) as proof of ((or ((r Xx0) Xv0)) ((r Xv0) Xx0))
% Found (((or_introl ((r Xx0) Xv0)) ((r Xv0) Xx0)) x2) as proof of ((or ((r Xx0) Xv0)) ((r Xv0) Xx0))
% Found (fun (x2:((r Xx0) Xy0))=> (((or_introl ((r Xx0) Xv0)) ((r Xv0) Xx0)) x2)) as proof of ((or ((r Xx0) Xv0)) ((r Xv0) Xx0))
% Found x4:((r Xz) Xv0)
% Found (fun (x4:((r Xz) Xv0))=> x4) as proof of ((r Xz) Xv0)
% Found (fun (x3:((r Xy0) Xv0)) (x4:((r Xz) Xv0))=> x4) as proof of (((r Xz) Xv0)->((r Xz) Xv0))
% Found (fun (x3:((r Xy0) Xv0)) (x4:((r Xz) Xv0))=> x4) as proof of (((r Xy0) Xv0)->(((r Xz) Xv0)->((r Xz) Xv0)))
% Found (and_rect10 (fun (x3:((r Xy0) Xv0)) (x4:((r Xz) Xv0))=> x4)) as proof of ((r Xz) Xv0)
% Found ((and_rect1 ((r Xz) Xv0)) (fun (x3:((r Xy0) Xv0)) (x4:((r Xz) Xv0))=> x4)) as proof of ((r Xz) Xv0)
% Found (((fun (P:Type) (x3:(((r Xy0) Xv0)->(((r Xz) Xv0)->P)))=> (((((and_rect ((r Xy0) Xv0)) ((r Xz) Xv0)) P) x3) x2)) ((r Xz) Xv0)) (fun (x3:((r Xy0) Xv0)) (x4:((r Xz) Xv0))=> x4)) as proof of ((r Xz) Xv0)
% Found (fun (x2:((and ((r Xy0) Xv0)) ((r Xz) Xv0)))=> (((fun (P:Type) (x3:(((r Xy0) Xv0)->(((r Xz) Xv0)->P)))=> (((((and_rect ((r Xy0) Xv0)) ((r Xz) Xv0)) P) x3) x2)) ((r Xz) Xv0)) (fun (x3:((r Xy0) Xv0)) (x4:((r Xz) Xv0))=> x4))) as proof of ((r Xz) Xv0)
% Found (fun (Xz:a) (x2:((and ((r Xy0) Xv0)) ((r Xz) Xv0)))=> (((fun (P:Type) (x3:(((r Xy0) Xv0)->(((r Xz) Xv0)->P)))=> (((((and_rect ((r Xy0) Xv0)) ((r Xz) Xv0)) P) x3) x2)) ((r Xz) Xv0)) (fun (x3:((r Xy0) Xv0)) (x4:((r Xz) Xv0))=> x4))) as proof of (((and ((r Xy0) Xv0)) ((r Xz) Xv0))->((r Xz) Xv0))
% Found (fun (Xy0:a) (Xz:a) (x2:((and ((r Xy0) Xv0)) ((r Xz) Xv0)))=> (((fun (P:Type) (x3:(((r Xy0) Xv0)->(((r Xz) Xv0)->P)))=> (((((and_rect ((r Xy0) Xv0)) ((r Xz) Xv0)) P) x3) x2)) ((r Xz) Xv0)) (fun (x3:((r Xy0) Xv0)) (x4:((r Xz) Xv0))=> x4))) as proof of (forall (Xz:a), (((and ((r Xy0) Xv0)) ((r Xz) Xv0))->((r Xz) Xv0)))
% Found (fun (Xx0:a) (Xy0:a) (Xz:a) (x2:((and ((r Xy0) Xv0)) ((r Xz) Xv0)))=> (((fun (P:Type) (x3:(((r Xy0) Xv0)->(((r Xz) Xv0)->P)))=> (((((and_rect ((r Xy0) Xv0)) ((r Xz) Xv0)) P) x3) x2)) ((r Xz) Xv0)) (fun (x3:((r Xy0) Xv0)) (x4:((r Xz) Xv0))=> x4))) as proof of (forall (Xy0:a) (Xz:a), (((and ((r Xy0) Xv0)) ((r Xz) Xv0))->((r Xz) Xv0)))
% Found (fun (Xx0:a) (Xy0:a) (Xz:a) (x2:((and ((r Xy0) Xv0)) ((r Xz) Xv0)))=> (((fun (P:Type) (x3:(((r Xy0) Xv0)->(((r Xz) Xv0)->P)))=> (((((and_rect ((r Xy0) Xv0)) ((r Xz) Xv0)) P) x3) x2)) ((r Xz) Xv0)) (fun (x3:((r Xy0) Xv0)) (x4:((r Xz) Xv0))=> x4))) as proof of (a->(forall (Xy0:a) (Xz:a), (((and ((r Xy0) Xv0)) ((r Xz) Xv0))->((r Xz) Xv0))))
% Found x4:((r Xv0) Xz)
% Found (fun (x4:((r Xv0) Xz))=> x4) as proof of ((r Xv0) Xz)
% Found (fun (x3:((r Xv0) Xy0)) (x4:((r Xv0) Xz))=> x4) as proof of (((r Xv0) Xz)->((r Xv0) Xz))
% Found (fun (x3:((r Xv0) Xy0)) (x4:((r Xv0) Xz))=> x4) as proof of (((r Xv0) Xy0)->(((r Xv0) Xz)->((r Xv0) Xz)))
% Found (and_rect10 (fun (x3:((r Xv0) Xy0)) (x4:((r Xv0) Xz))=> x4)) as proof of ((r Xv0) Xz)
% Found ((and_rect1 ((r Xv0) Xz)) (fun (x3:((r Xv0) Xy0)) (x4:((r Xv0) Xz))=> x4)) as proof of ((r Xv0) Xz)
% Found (((fun (P:Type) (x3:(((r Xv0) Xy0)->(((r Xv0) Xz)->P)))=> (((((and_rect ((r Xv0) Xy0)) ((r Xv0) Xz)) P) x3) x2)) ((r Xv0) Xz)) (fun (x3:((r Xv0) Xy0)) (x4:((r Xv0) Xz))=> x4)) as proof of ((r Xv0) Xz)
% Found (fun (x2:((and ((r Xv0) Xy0)) ((r Xv0) Xz)))=> (((fun (P:Type) (x3:(((r Xv0) Xy0)->(((r Xv0) Xz)->P)))=> (((((and_rect ((r Xv0) Xy0)) ((r Xv0) Xz)) P) x3) x2)) ((r Xv0) Xz)) (fun (x3:((r Xv0) Xy0)) (x4:((r Xv0) Xz))=> x4))) as proof of ((r Xv0) Xz)
% Found (fun (Xz:a) (x2:((and ((r Xv0) Xy0)) ((r Xv0) Xz)))=> (((fun (P:Type) (x3:(((r Xv0) Xy0)->(((r Xv0) Xz)->P)))=> (((((and_rect ((r Xv0) Xy0)) ((r Xv0) Xz)) P) x3) x2)) ((r Xv0) Xz)) (fun (x3:((r Xv0) Xy0)) (x4:((r Xv0) Xz))=> x4))) as proof of (((and ((r Xv0) Xy0)) ((r Xv0) Xz))->((r Xv0) Xz))
% Found (fun (Xy0:a) (Xz:a) (x2:((and ((r Xv0) Xy0)) ((r Xv0) Xz)))=> (((fun (P:Type) (x3:(((r Xv0) Xy0)->(((r Xv0) Xz)->P)))=> (((((and_rect ((r Xv0) Xy0)) ((r Xv0) Xz)) P) x3) x2)) ((r Xv0) Xz)) (fun (x3:((r Xv0) Xy0)) (x4:((r Xv0) Xz))=> x4))) as proof of (forall (Xz:a), (((and ((r Xv0) Xy0)) ((r Xv0) Xz))->((r Xv0) Xz)))
% Found (fun (Xx0:a) (Xy0:a) (Xz:a) (x2:((and ((r Xv0) Xy0)) ((r Xv0) Xz)))=> (((fun (P:Type) (x3:(((r Xv0) Xy0)->(((r Xv0) Xz)->P)))=> (((((and_rect ((r Xv0) Xy0)) ((r Xv0) Xz)) P) x3) x2)) ((r Xv0) Xz)) (fun (x3:((r Xv0) Xy0)) (x4:((r Xv0) Xz))=> x4))) as proof of (forall (Xy0:a) (Xz:a), (((and ((r Xv0) Xy0)) ((r Xv0) Xz))->((r Xv0) Xz)))
% Found (fun (Xx0:a) (Xy0:a) (Xz:a) (x2:((and ((r Xv0) Xy0)) ((r Xv0) Xz)))=> (((fun (P:Type) (x3:(((r Xv0) Xy0)->(((r Xv0) Xz)->P)))=> (((((and_rect ((r Xv0) Xy0)) ((r Xv0) Xz)) P) x3) x2)) ((r Xv0) Xz)) (fun (x3:((r Xv0) Xy0)) (x4:((r Xv0) Xz))=> x4))) as proof of (a->(forall (Xy0:a) (Xz:a), (((and ((r Xv0) Xy0)) ((r Xv0) Xz))->((r Xv0) Xz))))
% Found x4:((or ((r Xz) Xv0)) ((r Xv0) Xz))
% Found (fun (x4:((or ((r Xz) Xv0)) ((r Xv0) Xz)))=> x4) as proof of ((or ((r Xz) Xv0)) ((r Xv0) Xz))
% Found (fun (x3:((or ((r Xy0) Xv0)) ((r Xv0) Xy0))) (x4:((or ((r Xz) Xv0)) ((r Xv0) Xz)))=> x4) as proof of (((or ((r Xz) Xv0)) ((r Xv0) Xz))->((or ((r Xz) Xv0)) ((r Xv0) Xz)))
% Found (fun (x3:((or ((r Xy0) Xv0)) ((r Xv0) Xy0))) (x4:((or ((r Xz) Xv0)) ((r Xv0) Xz)))=> x4) as proof of (((or ((r Xy0) Xv0)) ((r Xv0) Xy0))->(((or ((r Xz) Xv0)) ((r Xv0) Xz))->((or ((r Xz) Xv0)) ((r Xv0) Xz))))
% Found (and_rect10 (fun (x3:((or ((r Xy0) Xv0)) ((r Xv0) Xy0))) (x4:((or ((r Xz) Xv0)) ((r Xv0) Xz)))=> x4)) as proof of ((or ((r Xz) Xv0)) ((r Xv0) Xz))
% Found ((and_rect1 ((or ((r Xz) Xv0)) ((r Xv0) Xz))) (fun (x3:((or ((r Xy0) Xv0)) ((r Xv0) Xy0))) (x4:((or ((r Xz) Xv0)) ((r Xv0) Xz)))=> x4)) as proof of ((or ((r Xz) Xv0)) ((r Xv0) Xz))
% Found (((fun (P:Type) (x3:(((or ((r Xy0) Xv0)) ((r Xv0) Xy0))->(((or ((r Xz) Xv0)) ((r Xv0) Xz))->P)))=> (((((and_rect ((or ((r Xy0) Xv0)) ((r Xv0) Xy0))) ((or ((r Xz) Xv0)) ((r Xv0) Xz))) P) x3) x2)) ((or ((r Xz) Xv0)) ((r Xv0) Xz))) (fun (x3:((or ((r Xy0) Xv0)) ((r Xv0) Xy0))) (x4:((or ((r Xz) Xv0)) ((r Xv0) Xz)))=> x4)) as proof of ((or ((r Xz) Xv0)) ((r Xv0) Xz))
% Found (fun (x2:((and ((or ((r Xy0) Xv0)) ((r Xv0) Xy0))) ((or ((r Xz) Xv0)) ((r Xv0) Xz))))=> (((fun (P:Type) (x3:(((or ((r Xy0) Xv0)) ((r Xv0) Xy0))->(((or ((r Xz) Xv0)) ((r Xv0) Xz))->P)))=> (((((and_rect ((or ((r Xy0) Xv0)) ((r Xv0) Xy0))) ((or ((r Xz) Xv0)) ((r Xv0) Xz))) P) x3) x2)) ((or ((r Xz) Xv0)) ((r Xv0) Xz))) (fun (x3:((or ((r Xy0) Xv0)) ((r Xv0) Xy0))) (x4:((or ((r Xz) Xv0)) ((r Xv0) Xz)))=> x4))) as proof of ((or ((r Xz) Xv0)) ((r Xv0) Xz))
% Found (fun (Xz:a) (x2:((and ((or ((r Xy0) Xv0)) ((r Xv0) Xy0))) ((or ((r Xz) Xv0)) ((r Xv0) Xz))))=> (((fun (P:Type) (x3:(((or ((r Xy0) Xv0)) ((r Xv0) Xy0))->(((or ((r Xz) Xv0)) ((r Xv0) Xz))->P)))=> (((((and_rect ((or ((r Xy0) Xv0)) ((r Xv0) Xy0))) ((or ((r Xz) Xv0)) ((r Xv0) Xz))) P) x3) x2)) ((or ((r Xz) Xv0)) ((r Xv0) Xz))) (fun (x3:((or ((r Xy0) Xv0)) ((r Xv0) Xy0))) (x4:((or ((r Xz) Xv0)) ((r Xv0) Xz)))=> x4))) as proof of (((and ((or ((r Xy0) Xv0)) ((r Xv0) Xy0))) ((or ((r Xz) Xv0)) ((r Xv0) Xz)))->((or ((r Xz) Xv0)) ((r Xv0) Xz)))
% Found (fun (Xy0:a) (Xz:a) (x2:((and ((or ((r Xy0) Xv0)) ((r Xv0) Xy0))) ((or ((r Xz) Xv0)) ((r Xv0) Xz))))=> (((fun (P:Type) (x3:(((or ((r Xy0) Xv0)) ((r Xv0) Xy0))->(((or ((r Xz) Xv0)) ((r Xv0) Xz))->P)))=> (((((and_rect ((or ((r Xy0) Xv0)) ((r Xv0) Xy0))) ((or ((r Xz) Xv0)) ((r Xv0) Xz))) P) x3) x2)) ((or ((r Xz) Xv0)) ((r Xv0) Xz))) (fun (x3:((or ((r Xy0) Xv0)) ((r Xv0) Xy0))) (x4:((or ((r Xz) Xv0)) ((r Xv0) Xz)))=> x4))) as proof of (forall (Xz:a), (((and ((or ((r Xy0) Xv0)) ((r Xv0) Xy0))) ((or ((r Xz) Xv0)) ((r Xv0) Xz)))->((or ((r Xz) Xv0)) ((r Xv0) Xz))))
% Found (fun (Xx0:a) (Xy0:a) (Xz:a) (x2:((and ((or ((r Xy0) Xv0)) ((r Xv0) Xy0))) ((or ((r Xz) Xv0)) ((r Xv0) Xz))))=> (((fun (P:Type) (x3:(((or ((r Xy0) Xv0)) ((r Xv0) Xy0))->(((or ((r Xz) Xv0)) ((r Xv0) Xz))->P)))=> (((((and_rect ((or ((r Xy0) Xv0)) ((r Xv0) Xy0))) ((or ((r Xz) Xv0)) ((r Xv0) Xz))) P) x3) x2)) ((or ((r Xz) Xv0)) ((r Xv0) Xz))) (fun (x3:((or ((r Xy0) Xv0)) ((r Xv0) Xy0))) (x4:((or ((r Xz) Xv0)) ((r Xv0) Xz)))=> x4))) as proof of (forall (Xy0:a) (Xz:a), (((and ((or ((r Xy0) Xv0)) ((r Xv0) Xy0))) ((or ((r Xz) Xv0)) ((r Xv0) Xz)))->((or ((r Xz) Xv0)) ((r Xv0) Xz))))
% Found (fun (Xx0:a) (Xy0:a) (Xz:a) (x2:((and ((or ((r Xy0) Xv0)) ((r Xv0) Xy0))) ((or ((r Xz) Xv0)) ((r Xv0) Xz))))=> (((fun (P:Type) (x3:(((or ((r Xy0) Xv0)) ((r Xv0) Xy0))->(((or ((r Xz) Xv0)) ((r Xv0) Xz))->P)))=> (((((and_rect ((or ((r Xy0) Xv0)) ((r Xv0) Xy0))) ((or ((r Xz) Xv0)) ((r Xv0) Xz))) P) x3) x2)) ((or ((r Xz) Xv0)) ((r Xv0) Xz))) (fun (x3:((or ((r Xy0) Xv0)) ((r Xv0) Xy0))) (x4:((or ((r Xz) Xv0)) ((r Xv0) Xz)))=> x4))) as proof of (a->(forall (Xy0:a) (Xz:a), (((and ((or ((r Xy0) Xv0)) ((r Xv0) Xy0))) ((or ((r Xz) Xv0)) ((r Xv0) Xz)))->((or ((r Xz) Xv0)) ((r Xv0) Xz)))))
% Found x2:((r Xx0) Xy0)
% Instantiate: Xv1:=Xx0:a;Xv0:=Xy0:a
% Found x2 as proof of ((r Xv1) Xv0)
% Found (or_intror00 x2) as proof of ((or ((r Xv0) Xv1)) ((r Xv1) Xv0))
% Found ((or_intror0 ((r Xv1) Xv0)) x2) as proof of ((or ((r Xv0) Xv1)) ((r Xv1) Xv0))
% Found (((or_intror ((r Xv0) Xv1)) ((r Xv1) Xv0)) x2) as proof of ((or ((r Xv0) Xv1)) ((r Xv1) Xv0))
% Found (((or_intror ((r Xv0) Xv1)) ((r Xv1) Xv0)) x2) as proof of ((or ((r Xv0) Xv1)) ((r Xv1) Xv0))
% Found (or_comm_i00 (((or_intror ((r Xv0) Xv1)) ((r Xv1) Xv0)) x2)) as proof of ((or ((r Xv1) Xv0)) ((r Xv0) Xv1))
% Found ((or_comm_i0 ((r Xv1) Xv0)) (((or_intror ((r Xv0) Xv1)) ((r Xv1) Xv0)) x2)) as proof of ((or ((r Xv1) Xv0)) ((r Xv0) Xv1))
% Found (((or_comm_i ((r Xv0) Xv1)) ((r Xv1) Xv0)) (((or_intror ((r Xv0) Xv1)) ((r Xv1) Xv0)) x2)) as proof of ((or ((r Xv1) Xv0)) ((r Xv0) Xv1))
% Found (fun (x2:((r Xx0) Xy0))=> (((or_comm_i ((r Xv0) Xv1)) ((r Xv1) Xv0)) (((or_intror ((r Xv0) Xv1)) ((r Xv1) Xv0)) x2))) as proof of ((or ((r Xv1) Xv0)) ((r Xv0) Xv1))
% Found x2:((r Xx0) Xy0)
% Instantiate: Xv1:=Xx0:a;Xv0:=Xy0:a
% Found x2 as proof of ((r Xv1) Xv0)
% Found (or_intror00 x2) as proof of ((or ((r Xv0) Xv1)) ((r Xv1) Xv0))
% Found ((or_intror0 ((r Xv1) Xv0)) x2) as proof of ((or ((r Xv0) Xv1)) ((r Xv1) Xv0))
% Found (((or_intror ((r Xv0) Xv1)) ((r Xv1) Xv0)) x2) as proof of ((or ((r Xv0) Xv1)) ((r Xv1) Xv0))
% Found (fun (x2:((r Xx0) Xy0))=> (((or_intror ((r Xv0) Xv1)) ((r Xv1) Xv0)) x2)) as proof of ((or ((r Xv0) Xv1)) ((r Xv1) Xv0))
% Found x2:((r Xx0) Xy0)
% Instantiate: Xv1:=Xy0:a;Xv0:=Xx0:a
% Found x2 as proof of ((r Xv0) Xv1)
% Found (or_introl00 x2) as proof of ((or ((r Xv0) Xv1)) ((r Xv1) Xv0))
% Found ((or_introl0 ((r Xv1) Xv0)) x2) as proof of ((or ((r Xv0) Xv1)) ((r Xv1) Xv0))
% Found (((or_introl ((r Xv0) Xv1)) ((r Xv1) Xv0)) x2) as proof of ((or ((r Xv0) Xv1)) ((r Xv1) Xv0))
% Found (fun (x2:((r Xx0) Xy0))=> (((or_introl ((r Xv0) Xv1)) ((r Xv1) Xv0)) x2)) as proof of ((or ((r Xv0) Xv1)) ((r Xv1) Xv0))
% Found x2:((r Xx0) Xy0)
% Instantiate: Xv1:=Xy0:a
% Found x2 as proof of ((r Xx0) Xv1)
% Found (or_introl00 x2) as proof of ((or ((r Xx0) Xv1)) ((r Xv1) Xx0))
% Found ((or_introl0 ((r Xv1) Xx0)) x2) as proof of ((or ((r Xx0) Xv1)) ((r Xv1) Xx0))
% Found (((or_introl ((r Xx0) Xv1)) ((r Xv1) Xx0)) x2) as proof of ((or ((r Xx0) Xv1)) ((r Xv1) Xx0))
% Found (fun (x2:((r Xx0) Xy0))=> (((or_introl ((r Xx0) Xv1)) ((r Xv1) Xx0)) x2)) as proof of ((or ((r Xx0) Xv1)) ((r Xv1) Xx0))
% Found x4:((r Xv0) Xv1)
% Found (fun (x4:((r Xv0) Xv1))=> x4) as proof of ((r Xv0) Xv1)
% Found (fun (x3:((r Xv0) Xv1)) (x4:((r Xv0) Xv1))=> x4) as proof of (((r Xv0) Xv1)->((r Xv0) Xv1))
% Found (fun (x3:((r Xv0) Xv1)) (x4:((r Xv0) Xv1))=> x4) as proof of (((r Xv0) Xv1)->(((r Xv0) Xv1)->((r Xv0) Xv1)))
% Found (and_rect10 (fun (x3:((r Xv0) Xv1)) (x4:((r Xv0) Xv1))=> x4)) as proof of ((r Xv0) Xv1)
% Found ((and_rect1 ((r Xv0) Xv1)) (fun (x3:((r Xv0) Xv1)) (x4:((r Xv0) Xv1))=> x4)) as proof of ((r Xv0) Xv1)
% Found (((fun (P:Type) (x3:(((r Xv0) Xv1)->(((r Xv0) Xv1)->P)))=> (((((and_rect ((r Xv0) Xv1)) ((r Xv0) Xv1)) P) x3) x2)) ((r Xv0) Xv1)) (fun (x3:((r Xv0) Xv1)) (x4:((r Xv0) Xv1))=> x4)) as proof of ((r Xv0) Xv1)
% Found (fun (x2:((and ((r Xv0) Xv1)) ((r Xv0) Xv1)))=> (((fun (P:Type) (x3:(((r Xv0) Xv1)->(((r Xv0) Xv1)->P)))=> (((((and_rect ((r Xv0) Xv1)) ((r Xv0) Xv1)) P) x3) x2)) ((r Xv0) Xv1)) (fun (x3:((r Xv0) Xv1)) (x4:((r Xv0) Xv1))=> x4))) as proof of ((r Xv0) Xv1)
% Found (fun (Xz:a) (x2:((and ((r Xv0) Xv1)) ((r Xv0) Xv1)))=> (((fun (P:Type) (x3:(((r Xv0) Xv1)->(((r Xv0) Xv1)->P)))=> (((((and_rect ((r Xv0) Xv1)) ((r Xv0) Xv1)) P) x3) x2)) ((r Xv0) Xv1)) (fun (x3:((r Xv0) Xv1)) (x4:((r Xv0) Xv1))=> x4))) as proof of (((and ((r Xv0) Xv1)) ((r Xv0) Xv1))->((r Xv0) Xv1))
% Found (fun (Xy0:a) (Xz:a) (x2:((and ((r Xv0) Xv1)) ((r Xv0) Xv1)))=> (((fun (P:Type) (x3:(((r Xv0) Xv1)->(((r Xv0) Xv1)->P)))=> (((((and_rect ((r Xv0) Xv1)) ((r Xv0) Xv1)) P) x3) x2)) ((r Xv0) Xv1)) (fun (x3:((r Xv0) Xv1)) (x4:((r Xv0) Xv1))=> x4))) as proof of (a->(((and ((r Xv0) Xv1)) ((r Xv0) Xv1))->((r Xv0) Xv1)))
% Found (fun (Xx0:a) (Xy0:a) (Xz:a) (x2:((and ((r Xv0) Xv1)) ((r Xv0) Xv1)))=> (((fun (P:Type) (x3:(((r Xv0) Xv1)->(((r Xv0) Xv1)->P)))=> (((((and_rect ((r Xv0) Xv1)) ((r Xv0) Xv1)) P) x3) x2)) ((r Xv0) Xv1)) (fun (x3:((r Xv0) Xv1)) (x4:((r Xv0) Xv1))=> x4))) as proof of (a->(a->(((and ((r Xv0) Xv1)) ((r Xv0) Xv1))->((r Xv0) Xv1))))
% Found (fun (Xx0:a) (Xy0:a) (Xz:a) (x2:((and ((r Xv0) Xv1)) ((r Xv0) Xv1)))=> (((fun (P:Type) (x3:(((r Xv0) Xv1)->(((r Xv0) Xv1)->P)))=> (((((and_rect ((r Xv0) Xv1)) ((r Xv0) Xv1)) P) x3) x2)) ((r Xv0) Xv1)) (fun (x3:((r Xv0) Xv1)) (x4:((r Xv0) Xv1))=> x4))) as proof of (a->(a->(a->(((and ((r Xv0) Xv1)) ((r Xv0) Xv1))->((r Xv0) Xv1)))))
% Found x4:((r Xv1) Xv0)
% Found (fun (x4:((r Xv1) Xv0))=> x4) as proof of ((r Xv1) Xv0)
% Found (fun (x3:((r Xv1) Xv0)) (x4:((r Xv1) Xv0))=> x4) as proof of (((r Xv1) Xv0)->((r Xv1) Xv0))
% Found (fun (x3:((r Xv1) Xv0)) (x4:((r Xv1) Xv0))=> x4) as proof of (((r Xv1) Xv0)->(((r Xv1) Xv0)->((r Xv1) Xv0)))
% Found (and_rect10 (fun (x3:((r Xv1) Xv0)) (x4:((r Xv1) Xv0))=> x4)) as proof of ((r Xv1) Xv0)
% Found ((and_rect1 ((r Xv1) Xv0)) (fun (x3:((r Xv1) Xv0)) (x4:((r Xv1) Xv0))=> x4)) as proof of ((r Xv1) Xv0)
% Found (((fun (P:Type) (x3:(((r Xv1) Xv0)->(((r Xv1) Xv0)->P)))=> (((((and_rect ((r Xv1) Xv0)) ((r Xv1) Xv0)) P) x3) x2)) ((r Xv1) Xv0)) (fun (x3:((r Xv1) Xv0)) (x4:((r Xv1) Xv0))=> x4)) as proof of ((r Xv1) Xv0)
% Found (fun (x2:((and ((r Xv1) Xv0)) ((r Xv1) Xv0)))=> (((fun (P:Type) (x3:(((r Xv1) Xv0)->(((r Xv1) Xv0)->P)))=> (((((and_rect ((r Xv1) Xv0)) ((r Xv1) Xv0)) P) x3) x2)) ((r Xv1) Xv0)) (fun (x3:((r Xv1) Xv0)) (x4:((r Xv1) Xv0))=> x4))) as proof of ((r Xv1) Xv0)
% Found (fun (Xz:a) (x2:((and ((r Xv1) Xv0)) ((r Xv1) Xv0)))=> (((fun (P:Type) (x3:(((r Xv1) Xv0)->(((r Xv1) Xv0)->P)))=> (((((and_rect ((r Xv1) Xv0)) ((r Xv1) Xv0)) P) x3) x2)) ((r Xv1) Xv0)) (fun (x3:((r Xv1) Xv0)) (x4:((r Xv1) Xv0))=> x4))) as proof of (((and ((r Xv1) Xv0)) ((r Xv1) Xv0))->((r Xv1) Xv0))
% Found (fun (Xy0:a) (Xz:a) (x2:((and ((r Xv1) Xv0)) ((r Xv1) Xv0)))=> (((fun (P:Type) (x3:(((r Xv1) Xv0)->(((r Xv1) Xv0)->P)))=> (((((and_rect ((r Xv1) Xv0)) ((r Xv1) Xv0)) P) x3) x2)) ((r Xv1) Xv0)) (fun (x3:((r Xv1) Xv0)) (x4:((r Xv1) Xv0))=> x4))) as proof of (a->(((and ((r Xv1) Xv0)) ((r Xv1) Xv0))->((r Xv1) Xv0)))
% Found (fun (Xx0:a) (Xy0:a) (Xz:a) (x2:((and ((r Xv1) Xv0)) ((r Xv1) Xv0)))=> (((fun (P:Type) (x3:(((r Xv1) Xv0)->(((r Xv1) Xv0)->P)))=> (((((and_rect ((r Xv1) Xv0)) ((r Xv1) Xv0)) P) x3) x2)) ((r Xv1) Xv0)) (fun (x3:((r Xv1) Xv0)) (x4:((r Xv1) Xv0))=> x4))) as proof of (a->(a->(((and ((r Xv1) Xv0)) ((r Xv1) Xv0))->((r Xv1) Xv0))))
% Found (fun (Xx0:a) (Xy0:a) (Xz:a) (x2:((and ((r Xv1) Xv0)) ((r Xv1) Xv0)))=> (((fun (P:Type) (x3:(((r Xv1) Xv0)->(((r Xv1) Xv0)->P)))=> (((((and_rect ((r Xv1) Xv0)) ((r Xv1) Xv0)) P) x3) x2)) ((r Xv1) Xv0)) (fun (x3:((r Xv1) Xv0)) (x4:((r Xv1) Xv0))=> x4))) as proof of (a->(a->(a->(((and ((r Xv1) Xv0)) ((r Xv1) Xv0))->((r Xv1) Xv0)))))
% Found x2:((r Xx0) Xy0)
% Instantiate: Xv0:=Xy0:a
% Found (fun (x2:((r Xx0) Xy0))=> x2) as proof of ((r Xx0) Xv0)
% Found x3:(Xq Xv0)
% Found x3 as proof of (Xq Xv0)
% Found x3:(Xq Xv0)
% Found x3 as proof of (Xq Xv0)
% Found x2:((r Xx0) Xy0)
% Instantiate: Xv0:=Xx0:a
% Found x2 as proof of ((r Xv0) Xy0)
% Found (or_intror00 x2) as proof of ((or ((r Xy0) Xv0)) ((r Xv0) Xy0))
% Found ((or_intror0 ((r Xv0) Xy0)) x2) as proof of ((or ((r Xy0) Xv0)) ((r Xv0) Xy0))
% Found (((or_intror ((r Xy0) Xv0)) ((r Xv0) Xy0)) x2) as proof of ((or ((r Xy0) Xv0)) ((r Xv0) Xy0))
% Found (fun (x2:((r Xx0) Xy0))=> (((or_intror ((r Xy0) Xv0)) ((r Xv0) Xy0)) x2)) as proof of ((or ((r Xy0) Xv0)) ((r Xv0) Xy0))
% Found (fun (Xy0:a) (x2:((r Xx0) Xy0))=> (((or_intror ((r Xy0) Xv0)) ((r Xv0) Xy0)) x2)) as proof of (((r Xx0) Xy0)->((or ((r Xy0) Xv0)) ((r Xv0) Xy0)))
% Found x2:((r Xx0) Xy0)
% Instantiate: Xv1:=Xy0:a
% Found (fun (x2:((r Xx0) Xy0))=> x2) as proof of ((r Xx0) Xv1)
% Found or_intror00:=(or_intror0 ((r Xx0) Xy0)):(((r Xx0) Xy0)->((or ((r Xv0) Xx0)) ((r Xx0) Xy0)))
% Found (or_intror0 ((r Xx0) Xy0)) as proof of (((r Xx0) Xy0)->((or ((r Xv0) Xx0)) ((r Xx0) Xv0)))
% Found ((or_intror ((r Xv0) Xx0)) ((r Xx0) Xy0)) as proof of (((r Xx0) Xy0)->((or ((r Xv0) Xx0)) ((r Xx0) Xv0)))
% Found ((or_intror ((r Xv0) Xx0)) ((r Xx0) Xy0)) as proof of (((r Xx0) Xy0)->((or ((r Xv0) Xx0)) ((r Xx0) Xv0)))
% Found x2:((r Xx0) Xy0)
% Instantiate: Xv0:=Xx0:a
% Found x2 as proof of ((r Xv0) Xy0)
% Found (or_intror00 x2) as proof of ((or ((r Xy0) Xv0)) ((r Xv0) Xy0))
% Found ((or_intror0 ((r Xv0) Xy0)) x2) as proof of ((or ((r Xy0) Xv0)) ((r Xv0) Xy0))
% Found (((or_intror ((r Xy0) Xv0)) ((r Xv0) Xy0)) x2) as proof of ((or ((r Xy0) Xv0)) ((r Xv0) Xy0))
% Found (((or_intror ((r Xy0) Xv0)) ((r Xv0) Xy0)) x2) as proof of ((or ((r Xy0) Xv0)) ((r Xv0) Xy0))
% Found (or_comm_i00 (((or_intror ((r Xy0) Xv0)) ((r Xv0) Xy0)) x2)) as proof of ((or ((r Xv0) Xy0)) ((r Xy0) Xv0))
% Found ((or_comm_i0 ((r Xv0) Xy0)) (((or_intror ((r Xy0) Xv0)) ((r Xv0) Xy0)) x2)) as proof of ((or ((r Xv0) Xy0)) ((r Xy0) Xv0))
% Found (((or_comm_i ((r Xy0) Xv0)) ((r Xv0) Xy0)) (((or_intror ((r Xy0) Xv0)) ((r Xv0) Xy0)) x2)) as proof of ((or ((r Xv0) Xy0)) ((r Xy0) Xv0))
% Found (fun (x2:((r Xx0) Xy0))=> (((or_comm_i ((r Xy0) Xv0)) ((r Xv0) Xy0)) (((or_intror ((r Xy0) Xv0)) ((r Xv0) Xy0)) x2))) as proof of ((or ((r Xv0) Xy0)) ((r Xy0) Xv0))
% Found (fun (Xy0:a) (x2:((r Xx0) Xy0))=> (((or_comm_i ((r Xy0) Xv0)) ((r Xv0) Xy0)) (((or_intror ((r Xy0) Xv0)) ((r Xv0) Xy0)) x2))) as proof of (((r Xx0) Xy0)->((or ((r Xv0) Xy0)) ((r Xy0) Xv0)))
% Found x2:((r Xx0) Xy0)
% Instantiate: Xv0:=Xx0:a
% Found (fun (x2:((r Xx0) Xy0))=> x2) as proof of ((r Xv0) Xy0)
% Found (fun (Xy0:a) (x2:((r Xx0) Xy0))=> x2) as proof of (((r Xx0) Xy0)->((r Xv0) Xy0))
% Found x3:((r Xv0) Xx0)
% Found (fun (x4:((r Xv0) Xy0))=> x3) as proof of ((r Xv0) Xx0)
% Found (fun (x3:((r Xv0) Xx0)) (x4:((r Xv0) Xy0))=> x3) as proof of (((r Xv0) Xy0)->((r Xv0) Xx0))
% Found (fun (x3:((r Xv0) Xx0)) (x4:((r Xv0) Xy0))=> x3) as proof of (((r Xv0) Xx0)->(((r Xv0) Xy0)->((r Xv0) Xx0)))
% Found (and_rect10 (fun (x3:((r Xv0) Xx0)) (x4:((r Xv0) Xy0))=> x3)) as proof of ((r Xv0) Xx0)
% Found ((and_rect1 ((r Xv0) Xx0)) (fun (x3:((r Xv0) Xx0)) (x4:((r Xv0) Xy0))=> x3)) as proof of ((r Xv0) Xx0)
% Found (((fun (P:Type) (x3:(((r Xv0) Xx0)->(((r Xv0) Xy0)->P)))=> (((((and_rect ((r Xv0) Xx0)) ((r Xv0) Xy0)) P) x3) x2)) ((r Xv0) Xx0)) (fun (x3:((r Xv0) Xx0)) (x4:((r Xv0) Xy0))=> x3)) as proof of ((r Xv0) Xx0)
% Found (fun (x2:((and ((r Xv0) Xx0)) ((r Xv0) Xy0)))=> (((fun (P:Type) (x3:(((r Xv0) Xx0)->(((r Xv0) Xy0)->P)))=> (((((and_rect ((r Xv0) Xx0)) ((r Xv0) Xy0)) P) x3) x2)) ((r Xv0) Xx0)) (fun (x3:((r Xv0) Xx0)) (x4:((r Xv0) Xy0))=> x3))) as proof of ((r Xv0) Xx0)
% Found (fun (Xz:a) (x2:((and ((r Xv0) Xx0)) ((r Xv0) Xy0)))=> (((fun (P:Type) (x3:(((r Xv0) Xx0)->(((r Xv0) Xy0)->P)))=> (((((and_rect ((r Xv0) Xx0)) ((r Xv0) Xy0)) P) x3) x2)) ((r Xv0) Xx0)) (fun (x3:((r Xv0) Xx0)) (x4:((r Xv0) Xy0))=> x3))) as proof of (((and ((r Xv0) Xx0)) ((r Xv0) Xy0))->((r Xv0) Xx0))
% Found (fun (Xy0:a) (Xz:a) (x2:((and ((r Xv0) Xx0)) ((r Xv0) Xy0)))=> (((fun (P:Type) (x3:(((r Xv0) Xx0)->(((r Xv0) Xy0)->P)))=> (((((and_rect ((r Xv0) Xx0)) ((r Xv0) Xy0)) P) x3) x2)) ((r Xv0) Xx0)) (fun (x3:((r Xv0) Xx0)) (x4:((r Xv0) Xy0))=> x3))) as proof of (a->(((and ((r Xv0) Xx0)) ((r Xv0) Xy0))->((r Xv0) Xx0)))
% Found (fun (Xx0:a) (Xy0:a) (Xz:a) (x2:((and ((r Xv0) Xx0)) ((r Xv0) Xy0)))=> (((fun (P:Type) (x3:(((r Xv0) Xx0)->(((r Xv0) Xy0)->P)))=> (((((and_rect ((r Xv0) Xx0)) ((r Xv0) Xy0)) P) x3) x2)) ((r Xv0) Xx0)) (fun (x3:((r Xv0) Xx0)) (x4:((r Xv0) Xy0))=> x3))) as proof of (forall (Xy0:a), (a->(((and ((r Xv0) Xx0)) ((r Xv0) Xy0))->((r Xv0) Xx0))))
% Found (fun (Xx0:a) (Xy0:a) (Xz:a) (x2:((and ((r Xv0) Xx0)) ((r Xv0) Xy0)))=> (((fun (P:Type) (x3:(((r Xv0) Xx0)->(((r Xv0) Xy0)->P)))=> (((((and_rect ((r Xv0) Xx0)) ((r Xv0) Xy0)) P) x3) x2)) ((r Xv0) Xx0)) (fun (x3:((r Xv0) Xx0)) (x4:((r Xv0) Xy0))=> x3))) as proof of (forall (Xx0:a) (Xy0:a), (a->(((and ((r Xv0) Xx0)) ((r Xv0) Xy0))->((r Xv0) Xx0))))
% Found x3:((r Xx0) Xv0)
% Found (fun (x4:((r Xy0) Xv0))=> x3) as proof of ((r Xx0) Xv0)
% Found (fun (x3:((r Xx0) Xv0)) (x4:((r Xy0) Xv0))=> x3) as proof of (((r Xy0) Xv0)->((r Xx0) Xv0))
% Found (fun (x3:((r Xx0) Xv0)) (x4:((r Xy0) Xv0))=> x3) as proof of (((r Xx0) Xv0)->(((r Xy0) Xv0)->((r Xx0) Xv0)))
% Found (and_rect10 (fun (x3:((r Xx0) Xv0)) (x4:((r Xy0) Xv0))=> x3)) as proof of ((r Xx0) Xv0)
% Found ((and_rect1 ((r Xx0) Xv0)) (fun (x3:((r Xx0) Xv0)) (x4:((r Xy0) Xv0))=> x3)) as proof of ((r Xx0) Xv0)
% Found (((fun (P:Type) (x3:(((r Xx0) Xv0)->(((r Xy0) Xv0)->P)))=> (((((and_rect ((r Xx0) Xv0)) ((r Xy0) Xv0)) P) x3) x2)) ((r Xx0) Xv0)) (fun (x3:((r Xx0) Xv0)) (x4:((r Xy0) Xv0))=> x3)) as proof of ((r Xx0) Xv0)
% Found (fun (x2:((and ((r Xx0) Xv0)) ((r Xy0) Xv0)))=> (((fun (P:Type) (x3:(((r Xx0) Xv0)->(((r Xy0) Xv0)->P)))=> (((((and_rect ((r Xx0) Xv0)) ((r Xy0) Xv0)) P) x3) x2)) ((r Xx0) Xv0)) (fun (x3:((r Xx0) Xv0)) (x4:((r Xy0) Xv0))=> x3))) as proof of ((r Xx0) Xv0)
% Found (fun (Xz:a) (x2:((and ((r Xx0) Xv0)) ((r Xy0) Xv0)))=> (((fun (P:Type) (x3:(((r Xx0) Xv0)->(((r Xy0) Xv0)->P)))=> (((((and_rect ((r Xx0) Xv0)) ((r Xy0) Xv0)) P) x3) x2)) ((r Xx0) Xv0)) (fun (x3:((r Xx0) Xv0)) (x4:((r Xy0) Xv0))=> x3))) as proof of (((and ((r Xx0) Xv0)) ((r Xy0) Xv0))->((r Xx0) Xv0))
% Found (fun (Xy0:a) (Xz:a) (x2:((and ((r Xx0) Xv0)) ((r Xy0) Xv0)))=> (((fun (P:Type) (x3:(((r Xx0) Xv0)->(((r Xy0) Xv0)->P)))=> (((((and_rect ((r Xx0) Xv0)) ((r Xy0) Xv0)) P) x3) x2)) ((r Xx0) Xv0)) (fun (x3:((r Xx0) Xv0)) (x4:((r Xy0) Xv0))=> x3))) as proof of (a->(((and ((r Xx0) Xv0)) ((r Xy0) Xv0))->((r Xx0) Xv0)))
% Found (fun (Xx0:a) (Xy0:a) (Xz:a) (x2:((and ((r Xx0) Xv0)) ((r Xy0) Xv0)))=> (((fun (P:Type) (x3:(((r Xx0) Xv0)->(((r Xy0) Xv0)->P)))=> (((((and_rect ((r Xx0) Xv0)) ((r Xy0) Xv0)) P) x3) x2)) ((r Xx0) Xv0)) (fun (x3:((r Xx0) Xv0)) (x4:((r Xy0) Xv0))=> x3))) as proof of (forall (Xy0:a), (a->(((and ((r Xx0) Xv0)) ((r Xy0) Xv0))->((r Xx0) Xv0))))
% Found (fun (Xx0:a) (Xy0:a) (Xz:a) (x2:((and ((r Xx0) Xv0)) ((r Xy0) Xv0)))=> (((fun (P:Type) (x3:(((r Xx0) Xv0)->(((r Xy0) Xv0)->P)))=> (((((and_rect ((r Xx0) Xv0)) ((r Xy0) Xv0)) P) x3) x2)) ((r Xx0) Xv0)) (fun (x3:((r Xx0) Xv0)) (x4:((r Xy0) Xv0))=> x3))) as proof of (forall (Xx0:a) (Xy0:a), (a->(((and ((r Xx0) Xv0)) ((r Xy0) Xv0))->((r Xx0) Xv0))))
% Found x3:((or ((r Xv0) Xx0)) ((r Xx0) Xv0))
% Found (fun (x4:((or ((r Xv0) Xy0)) ((r Xy0) Xv0)))=> x3) as proof of ((or ((r Xv0) Xx0)) ((r Xx0) Xv0))
% Found (fun (x3:((or ((r Xv0) Xx0)) ((r Xx0) Xv0))) (x4:((or ((r Xv0) Xy0)) ((r Xy0) Xv0)))=> x3) as proof of (((or ((r Xv0) Xy0)) ((r Xy0) Xv0))->((or ((r Xv0) Xx0)) ((r Xx0) Xv0)))
% Found (fun (x3:((or ((r Xv0) Xx0)) ((r Xx0) Xv0))) (x4:((or ((r Xv0) Xy0)) ((r Xy0) Xv0)))=> x3) as proof of (((or ((r Xv0) Xx0)) ((r Xx0) Xv0))->(((or ((r Xv0) Xy0)) ((r Xy0) Xv0))->((or ((r Xv0) Xx0)) ((r Xx0) Xv0))))
% Found (and_rect10 (fun (x3:((or ((r Xv0) Xx0)) ((r Xx0) Xv0))) (x4:((or ((r Xv0) Xy0)) ((r Xy0) Xv0)))=> x3)) as proof of ((or ((r Xv0) Xx0)) ((r Xx0) Xv0))
% Found ((and_rect1 ((or ((r Xv0) Xx0)) ((r Xx0) Xv0))) (fun (x3:((or ((r Xv0) Xx0)) ((r Xx0) Xv0))) (x4:((or ((r Xv0) Xy0)) ((r Xy0) Xv0)))=> x3)) as proof of ((or ((r Xv0) Xx0)) ((r Xx0) Xv0))
% Found (((fun (P:Type) (x3:(((or ((r Xv0) Xx0)) ((r Xx0) Xv0))->(((or ((r Xv0) Xy0)) ((r Xy0) Xv0))->P)))=> (((((and_rect ((or ((r Xv0) Xx0)) ((r Xx0) Xv0))) ((or ((r Xv0) Xy0)) ((r Xy0) Xv0))) P) x3) x2)) ((or ((r Xv0) Xx0)) ((r Xx0) Xv0))) (fun (x3:((or ((r Xv0) Xx0)) ((r Xx0) Xv0))) (x4:((or ((r Xv0) Xy0)) ((r Xy0) Xv0)))=> x3)) as proof of ((or ((r Xv0) Xx0)) ((r Xx0) Xv0))
% Found (fun (x2:((and ((or ((r Xv0) Xx0)) ((r Xx0) Xv0))) ((or ((r Xv0) Xy0)) ((r Xy0) Xv0))))=> (((fun (P:Type) (x3:(((or ((r Xv0) Xx0)) ((r Xx0) Xv0))->(((or ((r Xv0) Xy0)) ((r Xy0) Xv0))->P)))=> (((((and_rect ((or ((r Xv0) Xx0)) ((r Xx0) Xv0))) ((or ((r Xv0) Xy0)) ((r Xy0) Xv0))) P) x3) x2)) ((or ((r Xv0) Xx0)) ((r Xx0) Xv0))) (fun (x3:((or ((r Xv0) Xx0)) ((r Xx0) Xv0))) (x4:((or ((r Xv0) Xy0)) ((r Xy0) Xv0)))=> x3))) as proof of ((or ((r Xv0) Xx0)) ((r Xx0) Xv0))
% Found (fun (Xz:a) (x2:((and ((or ((r Xv0) Xx0)) ((r Xx0) Xv0))) ((or ((r Xv0) Xy0)) ((r Xy0) Xv0))))=> (((fun (P:Type) (x3:(((or ((r Xv0) Xx0)) ((r Xx0) Xv0))->(((or ((r Xv0) Xy0)) ((r Xy0) Xv0))->P)))=> (((((and_rect ((or ((r Xv0) Xx0)) ((r Xx0) Xv0))) ((or ((r Xv0) Xy0)) ((r Xy0) Xv0))) P) x3) x2)) ((or ((r Xv0) Xx0)) ((r Xx0) Xv0))) (fun (x3:((or ((r Xv0) Xx0)) ((r Xx0) Xv0))) (x4:((or ((r Xv0) Xy0)) ((r Xy0) Xv0)))=> x3))) as proof of (((and ((or ((r Xv0) Xx0)) ((r Xx0) Xv0))) ((or ((r Xv0) Xy0)) ((r Xy0) Xv0)))->((or ((r Xv0) Xx0)) ((r Xx0) Xv0)))
% Found (fun (Xy0:a) (Xz:a) (x2:((and ((or ((r Xv0) Xx0)) ((r Xx0) Xv0))) ((or ((r Xv0) Xy0)) ((r Xy0) Xv0))))=> (((fun (P:Type) (x3:(((or ((r Xv0) Xx0)) ((r Xx0) Xv0))->(((or ((r Xv0) Xy0)) ((r Xy0) Xv0))->P)))=> (((((and_rect ((or ((r Xv0) Xx0)) ((r Xx0) Xv0))) ((or ((r Xv0) Xy0)) ((r Xy0) Xv0))) P) x3) x2)) ((or ((r Xv0) Xx0)) ((r Xx0) Xv0))) (fun (x3:((or ((r Xv0) Xx0)) ((r Xx0) Xv0))) (x4:((or ((r Xv0) Xy0)) ((r Xy0) Xv0)))=> x3))) as proof of (a->(((and ((or ((r Xv0) Xx0)) ((r Xx0) Xv0))) ((or ((r Xv0) Xy0)) ((r Xy0) Xv0)))->((or ((r Xv0) Xx0)) ((r Xx0) Xv0))))
% Found (fun (Xx0:a) (Xy0:a) (Xz:a) (x2:((and ((or ((r Xv0) Xx0)) ((r Xx0) Xv0))) ((or ((r Xv0) Xy0)) ((r Xy0) Xv0))))=> (((fun (P:Type) (x3:(((or ((r Xv0) Xx0)) ((r Xx0) Xv0))->(((or ((r Xv0) Xy0)) ((r Xy0) Xv0))->P)))=> (((((and_rect ((or ((r Xv0) Xx0)) ((r Xx0) Xv0))) ((or ((r Xv0) Xy0)) ((r Xy0) Xv0))) P) x3) x2)) ((or ((r Xv0) Xx0)) ((r Xx0) Xv0))) (fun (x3:((or ((r Xv0) Xx0)) ((r Xx0) Xv0))) (x4:((or ((r Xv0) Xy0)) ((r Xy0) Xv0)))=> x3))) as proof of (forall (Xy0:a), (a->(((and ((or ((r Xv0) Xx0)) ((r Xx0) Xv0))) ((or ((r Xv0) Xy0)) ((r Xy0) Xv0)))->((or ((r Xv0) Xx0)) ((r Xx0) Xv0)))))
% Found (fun (Xx0:a) (Xy0:a) (Xz:a) (x2:((and ((or ((r Xv0) Xx0)) ((r Xx0) Xv0))) ((or ((r Xv0) Xy0)) ((r Xy0) Xv0))))=> (((fun (P:Type) (x3:(((or ((r Xv0) Xx0)) ((r Xx0) Xv0))->(((or ((r Xv0) Xy0)) ((r Xy0) Xv0))->P)))=> (((((and_rect ((or ((r Xv0) Xx0)) ((r Xx0) Xv0))) ((or ((r Xv0) Xy0)) ((r Xy0) Xv0))) P) x3) x2)) ((or ((r Xv0) Xx0)) ((r Xx0) Xv0))) (fun (x3:((or ((r Xv0) Xx0)) ((r Xx0) Xv0))) (x4:((or ((r Xv0) Xy0)) ((r Xy0) Xv0)))=> x3))) as proof of (forall (Xx0:a) (Xy0:a), (a->(((and ((or ((r Xv0) Xx0)) ((r Xx0) Xv0))) ((or ((r Xv0) Xy0)) ((r Xy0) Xv0)))->((or ((r Xv0) Xx0)) ((r Xx0) Xv0)))))
% Found x2:((r Xx0) Xy0)
% Instantiate: Xv1:=Xy0:a;Xv2:=Xx0:a
% Found x2 as proof of ((r Xv2) Xv1)
% Found (or_introl00 x2) as proof of ((or ((r Xv2) Xv1)) ((r Xv1) Xv2))
% Found ((or_introl0 ((r Xv1) Xv2)) x2) as proof of ((or ((r Xv2) Xv1)) ((r Xv1) Xv2))
% Found (((or_introl ((r Xv2) Xv1)) ((r Xv1) Xv2)) x2) as proof of ((or ((r Xv2) Xv1)) ((r Xv1) Xv2))
% Found (((or_introl ((r Xv2) Xv1)) ((r Xv1) Xv2)) x2) as proof of ((or ((r Xv2) Xv1)) ((r Xv1) Xv2))
% Found x2:((r Xx0) Xy0)
% Instantiate: Xv1:=Xy0:a;Xv2:=Xx0:a
% Found x2 as proof of ((r Xv2) Xv1)
% Found (or_introl00 x2) as proof of ((or ((r Xv2) Xv1)) ((r Xv1) Xv2))
% Found ((or_introl0 ((r Xv1) Xv2)) x2) as proof of ((or ((r Xv2) Xv1)) ((r Xv1) Xv2))
% Found (((or_introl ((r Xv2) Xv1)) ((r Xv1) Xv2)) x2) as proof of ((or ((r Xv2) Xv1)) ((r Xv1) Xv2))
% Found (((or_introl ((r Xv2) Xv1)) ((r Xv1) Xv2)) x2) as proof of ((or ((r Xv2) Xv1)) ((r Xv1) Xv2))
% Found x2:((r Xx0) Xy0)
% Instantiate: Xv2:=Xy0:a
% Found x2 as proof of ((r Xv1) Xv2)
% Found (or_intror00 x2) as proof of ((or ((r Xv2) Xv1)) ((r Xv1) Xv2))
% Found ((or_intror0 ((r Xv1) Xv2)) x2) as proof of ((or ((r Xv2) Xv1)) ((r Xv1) Xv2))
% Found (((or_intror ((r Xv2) Xv1)) ((r Xv1) Xv2)) x2) as proof of ((or ((r Xv2) Xv1)) ((r Xv1) Xv2))
% Found (((or_intror ((r Xv2) Xv1)) ((r Xv1) Xv2)) x2) as proof of ((or ((r Xv2) Xv1)) ((r Xv1) Xv2))
% Found x2:((r Xx0) Xy0)
% Instantiate: Xv1:=Xy0:a;Xv2:=Xx0:a
% Found x2 as proof of ((r Xv2) Xv1)
% Found (or_introl00 x2) as proof of ((or ((r Xv2) Xv1)) ((r Xv1) Xv2))
% Found ((or_introl0 ((r Xv1) Xv2)) x2) as proof of ((or ((r Xv2) Xv1)) ((r Xv1) Xv2))
% Found (((or_introl ((r Xv2) Xv1)) ((r Xv1) Xv2)) x2) as proof of ((or ((r Xv2) Xv1)) ((r Xv1) Xv2))
% Found (((or_introl ((r Xv2) Xv1)) ((r Xv1) Xv2)) x2) as proof of ((or ((r Xv2) Xv1)) ((r Xv1) Xv2))
% Found x2:((r Xx0) Xy0)
% Instantiate: Xv1:=Xy0:a;Xv2:=Xx0:a
% Found x2 as proof of ((r Xv2) Xv1)
% Found (or_introl00 x2) as proof of ((or ((r Xv2) Xv1)) ((r Xv1) Xv2))
% Found ((or_introl0 ((r Xv1) Xv2)) x2) as proof of ((or ((r Xv2) Xv1)) ((r Xv1) Xv2))
% Found (((or_introl ((r Xv2) Xv1)) ((r Xv1) Xv2)) x2) as proof of ((or ((r Xv2) Xv1)) ((r Xv1) Xv2))
% Found (((or_introl ((r Xv2) Xv1)) ((r Xv1) Xv2)) x2) as proof of ((or ((r Xv2) Xv1)) ((r Xv1) Xv2))
% Found x2:((r Xx0) Xy0)
% Instantiate: Xv1:=Xy0:a;Xv0:=Xx0:a
% Found (fun (x2:((r Xx0) Xy0))=> x2) as proof of ((r Xv0) Xv1)
% Found x2:((r Xv1) Xv0)
% Found (fun (x2:((r Xv1) Xv0))=> x2) as proof of ((r Xv1) Xv0)
% Found (fun (Xy0:a) (x2:((r Xv1) Xv0))=> x2) as proof of (((r Xv1) Xv0)->((r Xv1) Xv0))
% Found (fun (Xx0:a) (Xy0:a) (x2:((r Xv1) Xv0))=> x2) as proof of (a->(((r Xv1) Xv0)->((r Xv1) Xv0)))
% Found (fun (Xx0:a) (Xy0:a) (x2:((r Xv1) Xv0))=> x2) as proof of (a->(a->(((r Xv1) Xv0)->((r Xv1) Xv0))))
% Found x2:((r Xx0) Xy0)
% Instantiate: Xv1:=Xx0:a;Xv0:=Xy0:a
% Found (fun (x2:((r Xx0) Xy0))=> x2) as proof of ((r Xv1) Xv0)
% Found x2:((r Xv0) Xv1)
% Found (fun (x2:((r Xv0) Xv1))=> x2) as proof of ((r Xv0) Xv1)
% Found (fun (Xy0:a) (x2:((r Xv0) Xv1))=> x2) as proof of (((r Xv0) Xv1)->((r Xv0) Xv1))
% Found (fun (Xx0:a) (Xy0:a) (x2:((r Xv0) Xv1))=> x2) as proof of (a->(((r Xv0) Xv1)->((r Xv0) Xv1)))
% Found (fun (Xx0:a) (Xy0:a) (x2:((r Xv0) Xv1))=> x2) as proof of (a->(a->(((r Xv0) Xv1)->((r Xv0) Xv1))))
% Found or_intror00:=(or_intror0 ((r Xx0) Xy0)):(((r Xx0) Xy0)->((or ((r Xv1) Xx0)) ((r Xx0) Xy0)))
% Found (or_intror0 ((r Xx0) Xy0)) as proof of (((r Xx0) Xy0)->((or ((r Xv1) Xx0)) ((r Xx0) Xv1)))
% Found ((or_intror ((r Xv1) Xx0)) ((r Xx0) Xy0)) as proof of (((r Xx0) Xy0)->((or ((r Xv1) Xx0)) ((r Xx0) Xv1)))
% Found ((or_intror ((r Xv1) Xx0)) ((r Xx0) Xy0)) as proof of (((r Xx0) Xy0)->((or ((r Xv1) Xx0)) ((r Xx0) Xv1)))
% Found x2:((r Xx0) Xy0)
% Instantiate: Xv1:=Xy0:a;Xv2:=Xx0:a
% Found x2 as proof of ((r Xv2) Xv1)
% Found (or_introl00 x2) as proof of ((or ((r Xv2) Xv1)) ((r Xv1) Xv2))
% Found ((or_introl0 ((r Xv1) Xv2)) x2) as proof of ((or ((r Xv2) Xv1)) ((r Xv1) Xv2))
% Found (((or_introl ((r Xv2) Xv1)) ((r Xv1) Xv2)) x2) as proof of ((or ((r Xv2) Xv1)) ((r Xv1) Xv2))
% Found (((or_introl ((r Xv2) Xv1)) ((r Xv1) Xv2)) x2) as proof of ((or ((r Xv2) Xv1)) ((r Xv1) Xv2))
% Found x2:((r Xx0) Xy0)
% Instantiate: Xv2:=Xy0:a
% Found x2 as proof of ((r Xv1) Xv2)
% Found (or_intror00 x2) as proof of ((or ((r Xv2) Xv1)) ((r Xv1) Xv2))
% Found ((or_intror0 ((r Xv1) Xv2)) x2) as proof of ((or ((r Xv2) Xv1)) ((r Xv1) Xv2))
% Found (((or_intror ((r Xv2) Xv1)) ((r Xv1) Xv2)) x2) as proof of ((or ((r Xv2) Xv1)) ((r Xv1) Xv2))
% Found (((or_intror ((r Xv2) Xv1)) ((r Xv1) Xv2)) x2) as proof of ((or ((r Xv2) Xv1)) ((r Xv1) Xv2))
% Found x2:((r Xx0) Xy0)
% Instantiate: Xv1:=Xy0:a;Xv2:=Xx0:a
% Found x2 as proof of ((r Xv2) Xv1)
% Found (or_introl00 x2) as proof of ((or ((r Xv2) Xv1)) ((r Xv1) Xv2))
% Found ((or_introl0 ((r Xv1) Xv2)) x2) as proof of ((or ((r Xv2) Xv1)) ((r Xv1) Xv2))
% Found (((or_introl ((r Xv2) Xv1)) ((r Xv1) Xv2)) x2) as proof of ((or ((r Xv2) Xv1)) ((r Xv1) Xv2))
% Found (((or_introl ((r Xv2) Xv1)) ((r Xv1) Xv2)) x2) as proof of ((or ((r Xv2) Xv1)) ((r Xv1) Xv2))
% Found x2:((r Xx0) Xy0)
% Instantiate: Xv1:=Xx0:a;Xv2:=Xy0:a
% Found x2 as proof of ((r Xv1) Xv2)
% Found (or_intror00 x2) as proof of ((or ((r Xv2) Xv1)) ((r Xv1) Xv2))
% Found ((or_intror0 ((r Xv1) Xv2)) x2) as proof of ((or ((r Xv2) Xv1)) ((r Xv1) Xv2))
% Found (((or_intror ((r Xv2) Xv1)) ((r Xv1) Xv2)) x2) as proof of ((or ((r Xv2) Xv1)) ((r Xv1) Xv2))
% Found (((or_intror ((r Xv2) Xv1)) ((r Xv1) Xv2)) x2) as proof of ((or ((r Xv2) Xv1)) ((r Xv1) Xv2))
% Found x2:((r Xx0) Xy0)
% Instantiate: Xv1:=Xx0:a;Xv2:=Xy0:a
% Found x2 as proof of ((r Xv1) Xv2)
% Found (or_intror00 x2) as proof of ((or ((r Xv2) Xv1)) ((r Xv1) Xv2))
% Found ((or_intror0 ((r Xv1) Xv2)) x2) as proof of ((or ((r Xv2) Xv1)) ((r Xv1) Xv2))
% Found (((or_intror ((r Xv2) Xv1)) ((r Xv1) Xv2)) x2) as proof of ((or ((r Xv2) Xv1)) ((r Xv1) Xv2))
% Found (((or_intror ((r Xv2) Xv1)) ((r Xv1) Xv2)) x2) as proof of ((or ((r Xv2) Xv1)) ((r Xv1) Xv2))
% Found x2:((r Xx0) Xy0)
% Instantiate: Xv0:=Xy0:a
% Found x2 as proof of ((r Xx0) Xv0)
% Found (or_intror00 x2) as proof of ((or ((r Xv0) Xx0)) ((r Xx0) Xv0))
% Found ((or_intror0 ((r Xx0) Xv0)) x2) as proof of ((or ((r Xv0) Xx0)) ((r Xx0) Xv0))
% Found (((or_intror ((r Xv0) Xx0)) ((r Xx0) Xv0)) x2) as proof of ((or ((r Xv0) Xx0)) ((r Xx0) Xv0))
% Found (fun (x2:((r Xx0) Xy0))=> (((or_intror ((r Xv0) Xx0)) ((r Xx0) Xv0)) x2)) as proof of ((or ((r Xv0) Xx0)) ((r Xx0) Xv0))
% Found x4:((r Xz) Xv0)
% Found (fun (x4:((r Xz) Xv0))=> x4) as proof of ((r Xz) Xv0)
% Found (fun (x3:((r Xy0) Xv0)) (x4:((r Xz) Xv0))=> x4) as proof of (((r Xz) Xv0)->((r Xz) Xv0))
% Found (fun (x3:((r Xy0) Xv0)) (x4:((r Xz) Xv0))=> x4) as proof of (((r Xy0) Xv0)->(((r Xz) Xv0)->((r Xz) Xv0)))
% Found (and_rect10 (fun (x3:((r Xy0) Xv0)) (x4:((r Xz) Xv0))=> x4)) as proof of ((r Xz) Xv0)
% Found ((and_rect1 ((r Xz) Xv0)) (fun (x3:((r Xy0) Xv0)) (x4:((r Xz) Xv0))=> x4)) as proof of ((r Xz) Xv0)
% Found (((fun (P:Type) (x3:(((r Xy0) Xv0)->(((r Xz) Xv0)->P)))=> (((((and_rect ((r Xy0) Xv0)) ((r Xz) Xv0)) P) x3) x2)) ((r Xz) Xv0)) (fun (x3:((r Xy0) Xv0)) (x4:((r Xz) Xv0))=> x4)) as proof of ((r Xz) Xv0)
% Found (fun (x2:((and ((r Xy0) Xv0)) ((r Xz) Xv0)))=> (((fun (P:Type) (x3:(((r Xy0) Xv0)->(((r Xz) Xv0)->P)))=> (((((and_rect ((r Xy0) Xv0)) ((r Xz) Xv0)) P) x3) x2)) ((r Xz) Xv0)) (fun (x3:((r Xy0) Xv0)) (x4:((r Xz) Xv0))=> x4))) as proof of ((r Xz) Xv0)
% Found (fun (Xz:a) (x2:((and ((r Xy0) Xv0)) ((r Xz) Xv0)))=> (((fun (P:Type) (x3:(((r Xy0) Xv0)->(((r Xz) Xv0)->P)))=> (((((and_rect ((r Xy0) Xv0)) ((r Xz) Xv0)) P) x3) x2)) ((r Xz) Xv0)) (fun (x3:((r Xy0) Xv0)) (x4:((r Xz) Xv0))=> x4))) as proof of (((and ((r Xy0) Xv0)) ((r Xz) Xv0))->((r Xz) Xv0))
% Found (fun (Xy0:a) (Xz:a) (x2:((and ((r Xy0) Xv0)) ((r Xz) Xv0)))=> (((fun (P:Type) (x3:(((r Xy0) Xv0)->(((r Xz) Xv0)->P)))=> (((((and_rect ((r Xy0) Xv0)) ((r Xz) Xv0)) P) x3) x2)) ((r Xz) Xv0)) (fun (x3:((r Xy0) Xv0)) (x4:((r Xz) Xv0))=> x4))) as proof of (forall (Xz:a), (((and ((r Xy0) Xv0)) ((r Xz) Xv0))->((r Xz) Xv0)))
% Found (fun (Xx0:a) (Xy0:a) (Xz:a) (x2:((and ((r Xy0) Xv0)) ((r Xz) Xv0)))=> (((fun (P:Type) (x3:(((r Xy0) Xv0)->(((r Xz) Xv0)->P)))=> (((((and_rect ((r Xy0) Xv0)) ((r Xz) Xv0)) P) x3) x2)) ((r Xz) Xv0)) (fun (x3:((r Xy0) Xv0)) (x4:((r Xz) Xv0))=> x4))) as proof of (forall (Xy0:a) (Xz:a), (((and ((r Xy0) Xv0)) ((r Xz) Xv0))->((r Xz) Xv0)))
% Found (fun (Xx0:a) (Xy0:a) (Xz:a) (x2:((and ((r Xy0) Xv0)) ((r Xz) Xv0)))=> (((fun (P:Type) (x3:(((r Xy0) Xv0)->(((r Xz) Xv0)->P)))=> (((((and_rect ((r Xy0) Xv0)) ((r Xz) Xv0)) P) x3) x2)) ((r Xz) Xv0)) (fun (x3:((r Xy0) Xv0)) (x4:((r Xz) Xv0))=> x4))) as proof of (a->(forall (Xy0:a) (Xz:a), (((and ((r Xy0) Xv0)) ((r Xz) Xv0))->((r Xz) Xv0))))
% Found x4:((r Xv0) Xz)
% Found (fun (x4:((r Xv0) Xz))=> x4) as proof of ((r Xv0) Xz)
% Found (fun (x3:((r Xv0) Xy0)) (x4:((r Xv0) Xz))=> x4) as proof of (((r Xv0) Xz)->((r Xv0) Xz))
% Found (fun (x3:((r Xv0) Xy0)) (x4:((r Xv0) Xz))=> x4) as proof of (((r Xv0) Xy0)->(((r Xv0) Xz)->((r Xv0) Xz)))
% Found (and_rect10 (fun (x3:((r Xv0) Xy0)) (x4:((r Xv0) Xz))=> x4)) as proof of ((r Xv0) Xz)
% Found ((and_rect1 ((r Xv0) Xz)) (fun (x3:((r Xv0) Xy0)) (x4:((r Xv0) Xz))=> x4)) as proof of ((r Xv0) Xz)
% Found (((fun (P:Type) (x3:(((r Xv0) Xy0)->(((r Xv0) Xz)->P)))=> (((((and_rect ((r Xv0) Xy0)) ((r Xv0) Xz)) P) x3) x2)) ((r Xv0) Xz)) (fun (x3:((r Xv0) Xy0)) (x4:((r Xv0) Xz))=> x4)) as proof of ((r Xv0) Xz)
% Found (fun (x2:((and ((r Xv0) Xy0)) ((r Xv0) Xz)))=> (((fun (P:Type) (x3:(((r Xv0) Xy0)->(((r Xv0) Xz)->P)))=> (((((and_rect ((r Xv0) Xy0)) ((r Xv0) Xz)) P) x3) x2)) ((r Xv0) Xz)) (fun (x3:((r Xv0) Xy0)) (x4:((r Xv0) Xz))=> x4))) as proof of ((r Xv0) Xz)
% Found (fun (Xz:a) (x2:((and ((r Xv0) Xy0)) ((r Xv0) Xz)))=> (((fun (P:Type) (x3:(((r Xv0) Xy0)->(((r Xv0) Xz)->P)))=> (((((and_rect ((r Xv0) Xy0)) ((r Xv0) Xz)) P) x3) x2)) ((r Xv0) Xz)) (fun (x3:((r Xv0) Xy0)) (x4:((r Xv0) Xz))=> x4))) as proof of (((and ((r Xv0) Xy0)) ((r Xv0) Xz))->((r Xv0) Xz))
% Found (fun (Xy0:a) (Xz:a) (x2:((and ((r Xv0) Xy0)) ((r Xv0) Xz)))=> (((fun (P:Type) (x3:(((r Xv0) Xy0)->(((r Xv0) Xz)->P)))=> (((((and_rect ((r Xv0) Xy0)) ((r Xv0) Xz)) P) x3) x2)) ((r Xv0) Xz)) (fun (x3:((r Xv0) Xy0)) (x4:((r Xv0) Xz))=> x4))) as proof of (forall (Xz:a), (((and ((r Xv0) Xy0)) ((r Xv0) Xz))->((r Xv0) Xz)))
% Found (fun (Xx0:a) (Xy0:a) (Xz:a) (x2:((and ((r Xv0) Xy0)) ((r Xv0) Xz)))=> (((fun (P:Type) (x3:(((r Xv0) Xy0)->(((r Xv0) Xz)->P)))=> (((((and_rect ((r Xv0) Xy0)) ((r Xv0) Xz)) P) x3) x2)) ((r Xv0) Xz)) (fun (x3:((r Xv0) Xy0)) (x4:((r Xv0) Xz))=> x4))) as proof of (forall (Xy0:a) (Xz:a), (((and ((r Xv0) Xy0)) ((r Xv0) Xz))->((r Xv0) Xz)))
% Found (fun (Xx0:a) (Xy0:a) (Xz:a) (x2:((and ((r Xv0) Xy0)) ((r Xv0) Xz)))=> (((fun (P:Type) (x3:(((r Xv0) Xy0)->(((r Xv0) Xz)->P)))=> (((((and_rect ((r Xv0) Xy0)) ((r Xv0) Xz)) P) x3) x2)) ((r Xv0) Xz)) (fun (x3:((r Xv0) Xy0)) (x4:((r Xv0) Xz))=> x4))) as proof of (a->(forall (Xy0:a) (Xz:a), (((and ((r Xv0) Xy0)) ((r Xv0) Xz))->((r Xv0) Xz))))
% Found x2:((r Xx0) Xy0)
% Instantiate: Xv1:=Xx0:a;Xv2:=Xy0:a
% Found x2 as proof of ((r Xv1) Xv2)
% Found (or_intror00 x2) as proof of ((or ((r Xv2) Xv1)) ((r Xv1) Xv2))
% Found ((or_intror0 ((r Xv1) Xv2)) x2) as proof of ((or ((r Xv2) Xv1)) ((r Xv1) Xv2))
% Found (((or_intror ((r Xv2) Xv1)) ((r Xv1) Xv2)) x2) as proof of ((or ((r Xv2) Xv1)) ((r Xv1) Xv2))
% Found (((or_intror ((r Xv2) Xv1)) ((r Xv1) Xv2)) x2) as proof of ((or ((r Xv2) Xv1)) ((r Xv1) Xv2))
% Found x2:((r Xx0) Xy0)
% Instantiate: Xv1:=Xy0:a;Xv2:=Xx0:a
% Found x2 as proof of ((r Xv2) Xv1)
% Found (or_introl00 x2) as proof of ((or ((r Xv2) Xv1)) ((r Xv1) Xv2))
% Found ((or_introl0 ((r Xv1) Xv2)) x2) as proof of ((or ((r Xv2) Xv1)) ((r Xv1) Xv2))
% Found (((or_introl ((r Xv2) Xv1)) ((r Xv1) Xv2)) x2) as proof of ((or ((r Xv2) Xv1)) ((r Xv1) Xv2))
% Found (((or_introl ((r Xv2) Xv1)) ((r Xv1) Xv2)) x2) as proof of ((or ((r Xv2) Xv1)) ((r Xv1) Xv2))
% Found x2:((r Xx0) Xy0)
% Instantiate: Xv1:=Xy0:a;Xv2:=Xx0:a
% Found x2 as proof of ((r Xv2) Xv1)
% Found (or_introl00 x2) as proof of ((or ((r Xv2) Xv1)) ((r Xv1) Xv2))
% Found ((or_introl0 ((r Xv1) Xv2)) x2) as proof of ((or ((r Xv2) Xv1)) ((r Xv1) Xv2))
% Found (((or_introl ((r Xv2) Xv1)) ((r Xv1) Xv2)) x2) as proof of ((or ((r Xv2) Xv1)) ((r Xv1) Xv2))
% Found (((or_introl ((r Xv2) Xv1)) ((r Xv1) Xv2)) x2) as proof of ((or ((r Xv2) Xv1)) ((r Xv1) Xv2))
% Found x2:((r Xx0) Xy0)
% Instantiate: Xv1:=Xy0:a;Xv2:=Xx0:a
% Found x2 as proof of ((r Xv2) Xv1)
% Found (or_introl00 x2) as proof of ((or ((r Xv2) Xv1)) ((r Xv1) Xv2))
% Found ((or_introl0 ((r Xv1) Xv2)) x2) as proof of ((or ((r Xv2) Xv1)) ((r Xv1) Xv2))
% Found (((or_introl ((r Xv2) Xv1)) ((r Xv1) Xv2)) x2) as proof of ((or ((r Xv2) Xv1)) ((r Xv1) Xv2))
% Found (((or_introl ((r Xv2) Xv1)) ((r Xv1) Xv2)) x2) as proof of ((or ((r Xv2) Xv1)) ((r Xv1) Xv2))
% Found x3:((r Xv1) Xx0)
% Found (fun (x4:((r Xv1) Xy0))=> x3) as proof of ((r Xv1) Xx0)
% Found (fun (x3:((r Xv1) Xx0)) (x4:((r Xv1) Xy0))=> x3) as proof of (((r Xv1) Xy0)->((r Xv1) Xx0))
% Found (fun (x3:((r Xv1) Xx0)) (x4:((r Xv1) Xy0))=> x3) as proof of (((r Xv1) Xx0)->(((r Xv1) Xy0)->((r Xv1) Xx0)))
% Found (and_rect10 (fun (x3:((r Xv1) Xx0)) (x4:((r Xv1) Xy0))=> x3)) as proof of ((r Xv1) Xx0)
% Found ((and_rect1 ((r Xv1) Xx0)) (fun (x3:((r Xv1) Xx0)) (x4:((r Xv1) Xy0))=> x3)) as proof of ((r Xv1) Xx0)
% Found (((fun (P:Type) (x3:(((r Xv1) Xx0)->(((r Xv1) Xy0)->P)))=> (((((and_rect ((r Xv1) Xx0)) ((r Xv1) Xy0)) P) x3) x2)) ((r Xv1) Xx0)) (fun (x3:((r Xv1) Xx0)) (x4:((r Xv1) Xy0))=> x3)) as proof of ((r Xv1) Xx0)
% Found (fun (x2:((and ((r Xv1) Xx0)) ((r Xv1) Xy0)))=> (((fun (P:Type) (x3:(((r Xv1) Xx0)->(((r Xv1) Xy0)->P)))=> (((((and_rect ((r Xv1) Xx0)) ((r Xv1) Xy0)) P) x3) x2)) ((r Xv1) Xx0)) (fun (x3:((r Xv1) Xx0)) (x4:((r Xv1) Xy0))=> x3))) as proof of ((r Xv1) Xx0)
% Found (fun (Xz:a) (x2:((and ((r Xv1) Xx0)) ((r Xv1) Xy0)))=> (((fun (P:Type) (x3:(((r Xv1) Xx0)->(((r Xv1) Xy0)->P)))=> (((((and_rect ((r Xv1) Xx0)) ((r Xv1) Xy0)) P) x3) x2)) ((r Xv1) Xx0)) (fun (x3:((r Xv1) Xx0)) (x4:((r Xv1) Xy0))=> x3))) as proof of (((and ((r Xv1) Xx0)) ((r Xv1) Xy0))->((r Xv1) Xx0))
% Found (fun (Xy0:a) (Xz:a) (x2:((and ((r Xv1) Xx0)) ((r Xv1) Xy0)))=> (((fun (P:Type) (x3:(((r Xv1) Xx0)->(((r Xv1) Xy0)->P)))=> (((((and_rect ((r Xv1) Xx0)) ((r Xv1) Xy0)) P) x3) x2)) ((r Xv1) Xx0)) (fun (x3:((r Xv1) Xx0)) (x4:((r Xv1) Xy0))=> x3))) as proof of (a->(((and ((r Xv1) Xx0)) ((r Xv1) Xy0))->((r Xv1) Xx0)))
% Found (fun (Xx0:a) (Xy0:a) (Xz:a) (x2:((and ((r Xv1) Xx0)) ((r Xv1) Xy0)))=> (((fun (P:Type) (x3:(((r Xv1) Xx0)->(((r Xv1) Xy0)->P)))=> (((((and_rect ((r Xv1) Xx0)) ((r Xv1) Xy0)) P) x3) x2)) ((r Xv1) Xx0)) (fun (x3:((r Xv1) Xx0)) (x4:((r Xv1) Xy0))=> x3))) as proof of (forall (Xy0:a), (a->(((and ((r Xv1) Xx0)) ((r Xv1) Xy0))->((r Xv1) Xx0))))
% Found (fun (Xx0:a) (Xy0:a) (Xz:a) (x2:((and ((r Xv1) Xx0)) ((r Xv1) Xy0)))=> (((fun (P:Type) (x3:(((r Xv1) Xx0)->(((r Xv1) Xy0)->P)))=> (((((and_rect ((r Xv1) Xx0)) ((r Xv1) Xy0)) P) x3) x2)) ((r Xv1) Xx0)) (fun (x3:((r Xv1) Xx0)) (x4:((r Xv1) Xy0))=> x3))) as proof of (forall (Xx0:a) (Xy0:a), (a->(((and ((r Xv1) Xx0)) ((r Xv1) Xy0))->((r Xv1) Xx0))))
% Found x3:((r Xx0) Xv1)
% Found (fun (x4:((r Xy0) Xv1))=> x3) as proof of ((r Xx0) Xv1)
% Found (fun (x3:((r Xx0) Xv1)) (x4:((r Xy0) Xv1))=> x3) as proof of (((r Xy0) Xv1)->((r Xx0) Xv1))
% Found (fun (x3:((r Xx0) Xv1)) (x4:((r Xy0) Xv1))=> x3) as proof of (((r Xx0) Xv1)->(((r Xy0) Xv1)->((r Xx0) Xv1)))
% Found (and_rect10 (fun (x3:((r Xx0) Xv1)) (x4:((r Xy0) Xv1))=> x3)) as proof of ((r Xx0) Xv1)
% Found ((and_rect1 ((r Xx0) Xv1)) (fun (x3:((r Xx0) Xv1)) (x4:((r Xy0) Xv1))=> x3)) as proof of ((r Xx0) Xv1)
% Found (((fun (P:Type) (x3:(((r Xx0) Xv1)->(((r Xy0) Xv1)->P)))=> (((((and_rect ((r Xx0) Xv1)) ((r Xy0) Xv1)) P) x3) x2)) ((r Xx0) Xv1)) (fun (x3:((r Xx0) Xv1)) (x4:((r Xy0) Xv1))=> x3)) as proof of ((r Xx0) Xv1)
% Found (fun (x2:((and ((r Xx0) Xv1)) ((r Xy0) Xv1)))=> (((fun (P:Type) (x3:(((r Xx0) Xv1)->(((r Xy0) Xv1)->P)))=> (((((and_rect ((r Xx0) Xv1)) ((r Xy0) Xv1)) P) x3) x2)) ((r Xx0) Xv1)) (fun (x3:((r Xx0) Xv1)) (x4:((r Xy0) Xv1))=> x3))) as proof of ((r Xx0) Xv1)
% Found (fun (Xz:a) (x2:((and ((r Xx0) Xv1)) ((r Xy0) Xv1)))=> (((fun (P:Type) (x3:(((r Xx0) Xv1)->(((r Xy0) Xv1)->P)))=> (((((and_rect ((r Xx0) Xv1)) ((r Xy0) Xv1)) P) x3) x2)) ((r Xx0) Xv1)) (fun (x3:((r Xx0) Xv1)) (x4:((r Xy0) Xv1))=> x3))) as proof of (((and ((r Xx0) Xv1)) ((r Xy0) Xv1))->((r Xx0) Xv1))
% Found (fun (Xy0:a) (Xz:a) (x2:((and ((r Xx0) Xv1)) ((r Xy0) Xv1)))=> (((fun (P:Type) (x3:(((r Xx0) Xv1)->(((r Xy0) Xv1)->P)))=> (((((and_rect ((r Xx0) Xv1)) ((r Xy0) Xv1)) P) x3) x2)) ((r Xx0) Xv1)) (fun (x3:((r Xx0) Xv1)) (x4:((r Xy0) Xv1))=> x3))) as proof of (a->(((and ((r Xx0) Xv1)) ((r Xy0) Xv1))->((r Xx0) Xv1)))
% Found (fun (Xx0:a) (Xy0:a) (Xz:a) (x2:((and ((r Xx0) Xv1)) ((r Xy0) Xv1)))=> (((fun (P:Type) (x3:(((r Xx0) Xv1)->(((r Xy0) Xv1)->P)))=> (((((and_rect ((r Xx0) Xv1)) ((r Xy0) Xv1)) P) x3) x2)) ((r Xx0) Xv1)) (fun (x3:((r Xx0) Xv1)) (x4:((r Xy0) Xv1))=> x3))) as proof of (forall (Xy0:a), (a->(((and ((r Xx0) Xv1)) ((r Xy0) Xv1))->((r Xx0) Xv1))))
% Found (fun (Xx0:a) (Xy0:a) (Xz:a) (x2:((and ((r Xx0) Xv1)) ((r Xy0) Xv1)))=> (((fun (P:Type) (x3:(((r Xx0) Xv1)->(((r Xy0) Xv1)->P)))=> (((((and_rect ((r Xx0) Xv1)) ((r Xy0) Xv1)) P) x3) x2)) ((r Xx0) Xv1)) (fun (x3:((r Xx0) Xv1)) (x4:((r Xy0) Xv1))=> x3))) as proof of (forall (Xx0:a) (Xy0:a), (a->(((and ((r Xx0) Xv1)) ((r Xy0) Xv1))->((r Xx0) Xv1))))
% Found x3:((or ((r Xv1) Xx0)) ((r Xx0) Xv1))
% Found (fun (x4:((or ((r Xv1) Xy0)) ((r Xy0) Xv1)))=> x3) as proof of ((or ((r Xv1) Xx0)) ((r Xx0) Xv1))
% Found (fun (x3:((or ((r Xv1) Xx0)) ((r Xx0) Xv1))) (x4:((or ((r Xv1) Xy0)) ((r Xy0) Xv1)))=> x3) as proof of (((or ((r Xv1) Xy0)) ((r Xy0) Xv1))->((or ((r Xv1) Xx0)) ((r Xx0) Xv1)))
% Found (fun (x3:((or ((r Xv1) Xx0)) ((r Xx0) Xv1))) (x4:((or ((r Xv1) Xy0)) ((r Xy0) Xv1)))=> x3) as proof of (((or ((r Xv1) Xx0)) ((r Xx0) Xv1))->(((or ((r Xv1) Xy0)) ((r Xy0) Xv1))->((or ((r Xv1) Xx0)) ((r Xx0) Xv1))))
% Found (and_rect10 (fun (x3:((or ((r Xv1) Xx0)) ((r Xx0) Xv1))) (x4:((or ((r Xv1) Xy0)) ((r Xy0) Xv1)))=> x3)) as proof of ((or ((r Xv1) Xx0)) ((r Xx0) Xv1))
% Found ((and_rect1 ((or ((r Xv1) Xx0)) ((r Xx0) Xv1))) (fun (x3:((or ((r Xv1) Xx0)) ((r Xx0) Xv1))) (x4:((or ((r Xv1) Xy0)) ((r Xy0) Xv1)))=> x3)) as proof of ((or ((r Xv1) Xx0)) ((r Xx0) Xv1))
% Found (((fun (P:Type) (x3:(((or ((r Xv1) Xx0)) ((r Xx0) Xv1))->(((or ((r Xv1) Xy0)) ((r Xy0) Xv1))->P)))=> (((((and_rect ((or ((r Xv1) Xx0)) ((r Xx0) Xv1))) ((or ((r Xv1) Xy0)) ((r Xy0) Xv1))) P) x3) x2)) ((or ((r Xv1) Xx0)) ((r Xx0) Xv1))) (fun (x3:((or ((r Xv1) Xx0)) ((r Xx0) Xv1))) (x4:((or ((r Xv1) Xy0)) ((r Xy0) Xv1)))=> x3)) as proof of ((or ((r Xv1) Xx0)) ((r Xx0) Xv1))
% Found (fun (x2:((and ((or ((r Xv1) Xx0)) ((r Xx0) Xv1))) ((or ((r Xv1) Xy0)) ((r Xy0) Xv1))))=> (((fun (P:Type) (x3:(((or ((r Xv1) Xx0)) ((r Xx0) Xv1))->(((or ((r Xv1) Xy0)) ((r Xy0) Xv1))->P)))=> (((((and_rect ((or ((r Xv1) Xx0)) ((r Xx0) Xv1))) ((or ((r Xv1) Xy0)) ((r Xy0) Xv1))) P) x3) x2)) ((or ((r Xv1) Xx0)) ((r Xx0) Xv1))) (fun (x3:((or ((r Xv1) Xx0)) ((r Xx0) Xv1))) (x4:((or ((r Xv1) Xy0)) ((r Xy0) Xv1)))=> x3))) as proof of ((or ((r Xv1) Xx0)) ((r Xx0) Xv1))
% Found (fun (Xz:a) (x2:((and ((or ((r Xv1) Xx0)) ((r Xx0) Xv1))) ((or ((r Xv1) Xy0)) ((r Xy0) Xv1))))=> (((fun (P:Type) (x3:(((or ((r Xv1) Xx0)) ((r Xx0) Xv1))->(((or ((r Xv1) Xy0)) ((r Xy0) Xv1))->P)))=> (((((and_rect ((or ((r Xv1) Xx0)) ((r Xx0) Xv1))) ((or ((r Xv1) Xy0)) ((r Xy0) Xv1))) P) x3) x2)) ((or ((r Xv1) Xx0)) ((r Xx0) Xv1))) (fun (x3:((or ((r Xv1) Xx0)) ((r Xx0) Xv1))) (x4:((or ((r Xv1) Xy0)) ((r Xy0) Xv1)))=> x3))) as proof of (((and ((or ((r Xv1) Xx0)) ((r Xx0) Xv1))) ((or ((r Xv1) Xy0)) ((r Xy0) Xv1)))->((or ((r Xv1) Xx0)) ((r Xx0) Xv1)))
% Found (fun (Xy0:a) (Xz:a) (x2:((and ((or ((r Xv1) Xx0)) ((r Xx0) Xv1))) ((or ((r Xv1) Xy0)) ((r Xy0) Xv1))))=> (((fun (P:Type) (x3:(((or ((r Xv1) Xx0)) ((r Xx0) Xv1))->(((or ((r Xv1) Xy0)) ((r Xy0) Xv1))->P)))=> (((((and_rect ((or ((r Xv1) Xx0)) ((r Xx0) Xv1))) ((or ((r Xv1) Xy0)) ((r Xy0) Xv1))) P) x3) x2)) ((or ((r Xv1) Xx0)) ((r Xx0) Xv1))) (fun (x3:((or ((r Xv1) Xx0)) ((r Xx0) Xv1))) (x4:((or ((r Xv1) Xy0)) ((r Xy0) Xv1)))=> x3))) as proof of (a->(((and ((or ((r Xv1) Xx0)) ((r Xx0) Xv1))) ((or ((r Xv1) Xy0)) ((r Xy0) Xv1)))->((or ((r Xv1) Xx0)) ((r Xx0) Xv1))))
% Found (fun (Xx0:a) (Xy0:a) (Xz:a) (x2:((and ((or ((r Xv1) Xx0)) ((r Xx0) Xv1))) ((or ((r Xv1) Xy0)) ((r Xy0) Xv1))))=> (((fun (P:Type) (x3:(((or ((r Xv1) Xx0)) ((r Xx0) Xv1))->(((or ((r Xv1) Xy0)) ((r Xy0) Xv1))->P)))=> (((((and_rect ((or ((r Xv1) Xx0)) ((r Xx0) Xv1))) ((or ((r Xv1) Xy0)) ((r Xy0) Xv1))) P) x3) x2)) ((or ((r Xv1) Xx0)) ((r Xx0) Xv1))) (fun (x3:((or ((r Xv1) Xx0)) ((r Xx0) Xv1))) (x4:((or ((r Xv1) Xy0)) ((r Xy0) Xv1)))=> x3))) as proof of (forall (Xy0:a), (a->(((and ((or ((r Xv1) Xx0)) ((r Xx0) Xv1))) ((or ((r Xv1) Xy0)) ((r Xy0) Xv1)))->((or ((r Xv1) Xx0)) ((r Xx0) Xv1)))))
% Found (fun (Xx0:a) (Xy0:a) (Xz:a) (x2:((and ((or ((r Xv1) Xx0)) ((r Xx0) Xv1))) ((or ((r Xv1) Xy0)) ((r Xy0) Xv1))))=> (((fun (P:Type) (x3:(((or ((r Xv1) Xx0)) ((r Xx0) Xv1))->(((or ((r Xv1) Xy0)) ((r Xy0) Xv1))->P)))=> (((((and_rect ((or ((r Xv1) Xx0)) ((r Xx0) Xv1))) ((or ((r Xv1) Xy0)) ((r Xy0) Xv1))) P) x3) x2)) ((or ((r Xv1) Xx0)) ((r Xx0) Xv1))) (fun (x3:((or ((r Xv1) Xx0)) ((r Xx0) Xv1))) (x4:((or ((r Xv1) Xy0)) ((r Xy0) Xv1)))=> x3))) as proof of (forall (Xx0:a) (Xy0:a), (a->(((and ((or ((r Xv1) Xx0)) ((r Xx0) Xv1))) ((or ((r Xv1) Xy0)) ((r Xy0) Xv1)))->((or ((r Xv1) Xx0)) ((r Xx0) Xv1)))))
% Found x2:((r Xx0) Xy0)
% Instantiate: Xv2:=Xy0:a
% Found x2 as proof of ((r Xv1) Xv2)
% Found (or_intror00 x2) as proof of ((or ((r Xv2) Xv1)) ((r Xv1) Xv2))
% Found ((or_intror0 ((r Xv1) Xv2)) x2) as proof of ((or ((r Xv2) Xv1)) ((r Xv1) Xv2))
% Found (((or_intror ((r Xv2) Xv1)) ((r Xv1) Xv2)) x2) as proof of ((or ((r Xv2) Xv1)) ((r Xv1) Xv2))
% Found (((or_intror ((r Xv2) Xv1)) ((r Xv1) Xv2)) x2) as proof of ((or ((r Xv2) Xv1)) ((r Xv1) Xv2))
% Found x2:((r Xx0) Xy0)
% Instantiate: Xv1:=Xy0:a;Xv2:=Xx0:a
% Found x2 as proof of ((r Xv2) Xv1)
% Found (or_introl00 x2) as proof of ((or ((r Xv2) Xv1)) ((r Xv1) Xv2))
% Found ((or_introl0 ((r Xv1) Xv2)) x2) as proof of ((or ((r Xv2) Xv1)) ((r Xv1) Xv2))
% Found (((or_introl ((r Xv2) Xv1)) ((r Xv1) Xv2)) x2) as proof of ((or ((r Xv2) Xv1)) ((r Xv1) Xv2))
% Found (((or_introl ((r Xv2) Xv1)) ((r Xv1) Xv2)) x2) as proof of ((or ((r Xv2) Xv1)) ((r Xv1) Xv2))
% Found x2:((r Xx0) Xy0)
% Instantiate: Xv1:=Xx0:a;Xv2:=Xy0:a
% Found x2 as proof of ((r Xv1) Xv2)
% Found (or_intror00 x2) as proof of ((or ((r Xv2) Xv1)) ((r Xv1) Xv2))
% Found ((or_intror0 ((r Xv1) Xv2)) x2) as proof of ((or ((r Xv2) Xv1)) ((r Xv1) Xv2))
% Found (((or_intror ((r Xv2) Xv1)) ((r Xv1) Xv2)) x2) as proof of ((or ((r Xv2) Xv1)) ((r Xv1) Xv2))
% Found (((or_intror ((r Xv2) Xv1)) ((r Xv1) Xv2)) x2) as proof of ((or ((r Xv2) Xv1)) ((r Xv1) Xv2))
% Found x2:((r Xx0) Xy0)
% Instantiate: Xv1:=Xx0:a;Xv2:=Xy0:a
% Found x2 as proof of ((r Xv1) Xv2)
% Found (or_intror00 x2) as proof of ((or ((r Xv2) Xv1)) ((r Xv1) Xv2))
% Found ((or_intror0 ((r Xv1) Xv2)) x2) as proof of ((or ((r Xv2) Xv1)) ((r Xv1) Xv2))
% Found (((or_intror ((r Xv2) Xv1)) ((r Xv1) Xv2)) x2) as proof of ((or ((r Xv2) Xv1)) ((r Xv1) Xv2))
% Found (((or_intror ((r Xv2) Xv1)) ((r Xv1) Xv2)) x2) as proof of ((or ((r Xv2) Xv1)) ((r Xv1) Xv2))
% Found x2:((r Xx0) Xy0)
% Instantiate: Xv1:=Xy0:a;Xv2:=Xx0:a
% Found x2 as proof of ((r Xv2) Xv1)
% Found (or_introl00 x2) as proof of ((or ((r Xv2) Xv1)) ((r Xv1) Xv2))
% Found ((or_introl0 ((r Xv1) Xv2)) x2) as proof of ((or ((r Xv2) Xv1)) ((r Xv1) Xv2))
% Found (((or_introl ((r Xv2) Xv1)) ((r Xv1) Xv2)) x2) as proof of ((or ((r Xv2) Xv1)) ((r Xv1) Xv2))
% Found (((or_introl ((r Xv2) Xv1)) ((r Xv1) Xv2)) x2) as proof of ((or ((r Xv2) Xv1)) ((r Xv1) Xv2))
% Found x2:((r Xx0) Xy0)
% Instantiate: Xv2:=Xy0:a
% Found x2 as proof of ((r Xv1) Xv2)
% Found (or_intror00 x2) as proof of ((or ((r Xv2) Xv1)) ((r Xv1) Xv2))
% Found ((or_intror0 ((r Xv1) Xv2)) x2) as proof of ((or ((r Xv2) Xv1)) ((r Xv1) Xv2))
% Found (((or_intror ((r Xv2) Xv1)) ((r Xv1) Xv2)) x2) as proof of ((or ((r Xv2) Xv1)) ((r Xv1) Xv2))
% Found (((or_intror ((r Xv2) Xv1)) ((r Xv1) Xv2)) x2) as proof of ((or ((r Xv2) Xv1)) ((r Xv1) Xv2))
% Found x2:((r Xx0) Xy0)
% Instantiate: Xv1:=Xx0:a;Xv2:=Xy0:a
% Found x2 as proof of ((r Xv1) Xv2)
% Found (or_intror00 x2) as proof of ((or ((r Xv2) Xv1)) ((r Xv1) Xv2))
% Found ((or_intror0 ((r Xv1) Xv2)) x2) as proof of ((or ((r Xv2) Xv1)) ((r Xv1) Xv2))
% Found (((or_intror ((r Xv2) Xv1)) ((r Xv1) Xv2)) x2) as proof of ((or ((r Xv2) Xv1)) ((r Xv1) Xv2))
% Found (((or_intror ((r Xv2) Xv1)) ((r Xv1) Xv2)) x2) as proof of ((or ((r Xv2) Xv1)) ((r Xv1) Xv2))
% Found x2:((r Xx0) Xy0)
% Instantiate: Xv2:=Xx0:a
% Found x2 as proof of ((r Xv2) Xv1)
% Found (or_introl00 x2) as proof of ((or ((r Xv2) Xv1)) ((r Xv1) Xv2))
% Found ((or_introl0 ((r Xv1) Xv2)) x2) as proof of ((or ((r Xv2) Xv1)) ((r Xv1) Xv2))
% Found (((or_introl ((r Xv2) Xv1)) ((r Xv1) Xv2)) x2) as proof of ((or ((r Xv2) Xv1)) ((r Xv1) Xv2))
% Found (((or_introl ((r Xv2) Xv1)) ((r Xv1) Xv2)) x2) as proof of ((or ((r Xv2) Xv1)) ((r Xv1) Xv2))
% Found x2:((r Xx0) Xy0)
% Instantiate: Xv0:=Xy0:a
% Found x2 as proof of ((r Xx0) Xv0)
% Found (or_intror00 x2) as proof of ((or ((r Xv0) Xx0)) ((r Xx0) Xv0))
% Found ((or_intror0 ((r Xx0) Xv0)) x2) as proof of ((or ((r Xv0) Xx0)) ((r Xx0) Xv0))
% Found (((or_intror ((r Xv0) Xx0)) ((r Xx0) Xv0)) x2) as proof of ((or ((r Xv0) Xx0)) ((r Xx0) Xv0))
% Found (((or_intror ((r Xv0) Xx0)) ((r Xx0) Xv0)) x2) as proof of ((or ((r Xv0) Xx0)) ((r Xx0) Xv0))
% Found (or_comm_i00 (((or_intror ((r Xv0) Xx0)) ((r Xx0) Xv0)) x2)) as proof of ((or ((r Xx0) Xv0)) ((r Xv0) Xx0))
% Found ((or_comm_i0 ((r Xx0) Xv0)) (((or_intror ((r Xv0) Xx0)) ((r Xx0) Xv0)) x2)) as proof of ((or ((r Xx0) Xv0)) ((r Xv0) Xx0))
% Found (((or_comm_i ((r Xv0) Xx0)) ((r Xx0) Xv0)) (((or_intror ((r Xv0) Xx0)) ((r Xx0) Xv0)) x2)) as proof of ((or ((r Xx0) Xv0)) ((r Xv0) Xx0))
% Found (fun (x2:((r Xx0) Xy0))=> (((or_comm_i ((r Xv0) Xx0)) ((r Xx0) Xv0)) (((or_intror ((r Xv0) Xx0)) ((r Xx0) Xv0)) x2))) as proof of ((or ((r Xx0) Xv0)) ((r Xv0) Xx0))
% Found x2:((r Xx0) Xy0)
% Instantiate: Xv0:=Xy0:a
% Found (fun (x2:((r Xx0) Xy0))=> x2) as proof of ((r Xx0) Xv0)
% Found x2:((r Xx0) Xy0)
% Instantiate: Xv00:=Xy0:a
% Found x2 as proof of ((r Xv) Xv00)
% Found (or_intror00 x2) as proof of ((or ((r Xv00) Xv)) ((r Xv) Xv00))
% Found ((or_intror0 ((r Xv) Xv00)) x2) as proof of ((or ((r Xv00) Xv)) ((r Xv) Xv00))
% Found (((or_intror ((r Xv00) Xv)) ((r Xv) Xv00)) x2) as proof of ((or ((r Xv00) Xv)) ((r Xv) Xv00))
% Found (((or_intror ((r Xv00) Xv)) ((r Xv) Xv00)) x2) as proof of ((or ((r Xv00) Xv)) ((r Xv) Xv00))
% Found x2:((r Xx0) Xy0)
% Instantiate: Xv1:=Xx0:a
% Found x2 as proof of ((r Xv1) Xy0)
% Found (or_introl00 x2) as proof of ((or ((r Xv1) Xy0)) ((r Xy0) Xv1))
% Found ((or_introl0 ((r Xy0) Xv1)) x2) as proof of ((or ((r Xv1) Xy0)) ((r Xy0) Xv1))
% Found (((or_introl ((r Xv1) Xy0)) ((r Xy0) Xv1)) x2) as proof of ((or ((r Xv1) Xy0)) ((r Xy0) Xv1))
% Found (((or_introl ((r Xv1) Xy0)) ((r Xy0) Xv1)) x2) as proof of ((or ((r Xv1) Xy0)) ((r Xy0) Xv1))
% Found x2:((r Xx0) Xy0)
% Instantiate: Xv1:=Xx0:a
% Found x2 as proof of ((r Xv1) Xy0)
% Found (or_introl00 x2) as proof of ((or ((r Xv1) Xy0)) ((r Xy0) Xv1))
% Found ((or_introl0 ((r Xy0) Xv1)) x2) as proof of ((or ((r Xv1) Xy0)) ((r Xy0) Xv1))
% Found (((or_introl ((r Xv1) Xy0)) ((r Xy0) Xv1)) x2) as proof of ((or ((r Xv1) Xy0)) ((r Xy0) Xv1))
% Found (((or_introl ((r Xv1) Xy0)) ((r Xy0) Xv1)) x2) as proof of ((or ((r Xv1) Xy0)) ((r Xy0) Xv1))
% Found x2:((r Xx0) Xy0)
% Instantiate: Xv1:=Xx0:a
% Found x2 as proof of ((r Xv1) Xy0)
% Found (or_introl00 x2) as proof of ((or ((r Xv1) Xy0)) ((r Xy0) Xv1))
% Found ((or_introl0 ((r Xy0) Xv1)) x2) as proof of ((or ((r Xv1) Xy0)) ((r Xy0) Xv1))
% Found (((or_introl ((r Xv1) Xy0)) ((r Xy0) Xv1)) x2) as proof of ((or ((r Xv1) Xy0)) ((r Xy0) Xv1))
% Found (((or_introl ((r Xv1) Xy0)) ((r Xy0) Xv1)) x2) as proof of ((or ((r Xv1) Xy0)) ((r Xy0) Xv1))
% Found x2:((r Xx0) Xy0)
% Instantiate: Xv1:=Xx0:a
% Found x2 as proof of ((r Xv1) Xy0)
% Found (or_introl00 x2) as proof of ((or ((r Xv1) Xy0)) ((r Xy0) Xv1))
% Found ((or_introl0 ((r Xy0) Xv1)) x2) as proof of ((or ((r Xv1) Xy0)) ((r Xy0) Xv1))
% Found (((or_introl ((r Xv1) Xy0)) ((r Xy0) Xv1)) x2) as proof of ((or ((r Xv1) Xy0)) ((r Xy0) Xv1))
% Found (((or_introl ((r Xv1) Xy0)) ((r Xy0) Xv1)) x2) as proof of ((or ((r Xv1) Xy0)) ((r Xy0) Xv1))
% Found x2:((r Xx0) Xy0)
% Instantiate: Xv1:=Xx0:a
% Found x2 as proof of ((r Xv1) Xy0)
% Found (or_introl00 x2) as proof of ((or ((r Xv1) Xy0)) ((r Xy0) Xv1))
% Found ((or_introl0 ((r Xy0) Xv1)) x2) as proof of ((or ((r Xv1) Xy0)) ((r Xy0) Xv1))
% Found (((or_introl ((r Xv1) Xy0)) ((r Xy0) Xv1)) x2) as proof of ((or ((r Xv1) Xy0)) ((r Xy0) Xv1))
% Found (((or_introl ((r Xv1) Xy0)) ((r Xy0) Xv1)) x2) as proof of ((or ((r Xv1) Xy0)) ((r Xy0) Xv1))
% Found x2:((r Xx0) Xy0)
% Instantiate: Xv1:=Xy0:a
% Found x2 as proof of ((r Xx0) Xv1)
% Found (or_intror00 x2) as proof of ((or ((r Xv1) Xx0)) ((r Xx0) Xv1))
% Found ((or_intror0 ((r Xx0) Xv1)) x2) as proof of ((or ((r Xv1) Xx0)) ((r Xx0) Xv1))
% Found (((or_intror ((r Xv1) Xx0)) ((r Xx0) Xv1)) x2) as proof of ((or ((r Xv1) Xx0)) ((r Xx0) Xv1))
% Found (fun (x2:((r Xx0) Xy0))=> (((or_intror ((r Xv1) Xx0)) ((r Xx0) Xv1)) x2)) as proof of ((or ((r Xv1) Xx0)) ((r Xx0) Xv1))
% Found x4:((r Xv1) Xv0)
% Found (fun (x4:((r Xv1) Xv0))=> x4) as proof of ((r Xv1) Xv0)
% Found (fun (x3:((r Xv1) Xv0)) (x4:((r Xv1) Xv0))=> x4) as proof of (((r Xv1) Xv0)->((r Xv1) Xv0))
% Found (fun (x3:((r Xv1) Xv0)) (x4:((r Xv1) Xv0))=> x4) as proof of (((r Xv1) Xv0)->(((r Xv1) Xv0)->((r Xv1) Xv0)))
% Found (and_rect10 (fun (x3:((r Xv1) Xv0)) (x4:((r Xv1) Xv0))=> x4)) as proof of ((r Xv1) Xv0)
% Found ((and_rect1 ((r Xv1) Xv0)) (fun (x3:((r Xv1) Xv0)) (x4:((r Xv1) Xv0))=> x4)) as proof of ((r Xv1) Xv0)
% Found (((fun (P:Type) (x3:(((r Xv1) Xv0)->(((r Xv1) Xv0)->P)))=> (((((and_rect ((r Xv1) Xv0)) ((r Xv1) Xv0)) P) x3) x2)) ((r Xv1) Xv0)) (fun (x3:((r Xv1) Xv0)) (x4:((r Xv1) Xv0))=> x4)) as proof of ((r Xv1) Xv0)
% Found (fun (x2:((and ((r Xv1) Xv0)) ((r Xv1) Xv0)))=> (((fun (P:Type) (x3:(((r Xv1) Xv0)->(((r Xv1) Xv0)->P)))=> (((((and_rect ((r Xv1) Xv0)) ((r Xv1) Xv0)) P) x3) x2)) ((r Xv1) Xv0)) (fun (x3:((r Xv1) Xv0)) (x4:((r Xv1) Xv0))=> x4))) as proof of ((r Xv1) Xv0)
% Found (fun (Xz:a) (x2:((and ((r Xv1) Xv0)) ((r Xv1) Xv0)))=> (((fun (P:Type) (x3:(((r Xv1) Xv0)->(((r Xv1) Xv0)->P)))=> (((((and_rect ((r Xv1) Xv0)) ((r Xv1) Xv0)) P) x3) x2)) ((r Xv1) Xv0)) (fun (x3:((r Xv1) Xv0)) (x4:((r Xv1) Xv0))=> x4))) as proof of (((and ((r Xv1) Xv0)) ((r Xv1) Xv0))->((r Xv1) Xv0))
% Found (fun (Xy0:a) (Xz:a) (x2:((and ((r Xv1) Xv0)) ((r Xv1) Xv0)))=> (((fun (P:Type) (x3:(((r Xv1) Xv0)->(((r Xv1) Xv0)->P)))=> (((((and_rect ((r Xv1) Xv0)) ((r Xv1) Xv0)) P) x3) x2)) ((r Xv1) Xv0)) (fun (x3:((r Xv1) Xv0)) (x4:((r Xv1) Xv0))=> x4))) as proof of (a->(((and ((r Xv1) Xv0)) ((r Xv1) Xv0))->((r Xv1) Xv0)))
% Found (fun (Xx0:a) (Xy0:a) (Xz:a) (x2:((and ((r Xv1) Xv0)) ((r Xv1) Xv0)))=> (((fun (P:Type) (x3:(((r Xv1) Xv0)->(((r Xv1) Xv0)->P)))=> (((((and_rect ((r Xv1) Xv0)) ((r Xv1) Xv0)) P) x3) x2)) ((r Xv1) Xv0)) (fun (x3:((r Xv1) Xv0)) (x4:((r Xv1) Xv0))=> x4))) as proof of (a->(a->(((and ((r Xv1) Xv0)) ((r Xv1) Xv0))->((r Xv1) Xv0))))
% Found (fun (Xx0:a) (Xy0:a) (Xz:a) (x2:((and ((r Xv1) Xv0)) ((r Xv1) Xv0)))=> (((fun (P:Type) (x3:(((r Xv1) Xv0)->(((r Xv1) Xv0)->P)))=> (((((and_rect ((r Xv1) Xv0)) ((r Xv1) Xv0)) P) x3) x2)) ((r Xv1) Xv0)) (fun (x3:((r Xv1) Xv0)) (x4:((r Xv1) Xv0))=> x4))) as proof of (a->(a->(a->(((and ((r Xv1) Xv0)) ((r Xv1) Xv0))->((r Xv1) Xv0)))))
% Found x2:((r Xx0) Xy0)
% Instantiate: Xv1:=Xx0:a;Xv0:=Xy0:a
% Found x2 as proof of ((r Xv1) Xv0)
% Found (or_introl00 x2) as proof of ((or ((r Xv1) Xv0)) ((r Xv0) Xv1))
% Found ((or_introl0 ((r Xv0) Xv1)) x2) as proof of ((or ((r Xv1) Xv0)) ((r Xv0) Xv1))
% Found (((or_introl ((r Xv1) Xv0)) ((r Xv0) Xv1)) x2) as proof of ((or ((r Xv1) Xv0)) ((r Xv0) Xv1))
% Found (((or_introl ((r Xv1) Xv0)) ((r Xv0) Xv1)) x2) as proof of ((or ((r Xv1) Xv0)) ((r Xv0) Xv1))
% Found x4:((r Xv0) Xv1)
% Found (fun (x4:((r Xv0) Xv1))=> x4) as proof of ((r Xv0) Xv1)
% Found (fun (x3:((r Xv0) Xv1)) (x4:((r Xv0) Xv1))=> x4) as proof of (((r Xv0) Xv1)->((r Xv0) Xv1))
% Found (fun (x3:((r Xv0) Xv1)) (x4:((r Xv0) Xv1))=> x4) as proof of (((r Xv0) Xv1)->(((r Xv0) Xv1)->((r Xv0) Xv1)))
% Found (and_rect10 (fun (x3:((r Xv0) Xv1)) (x4:((r Xv0) Xv1))=> x4)) as proof of ((r Xv0) Xv1)
% Found ((and_rect1 ((r Xv0) Xv1)) (fun (x3:((r Xv0) Xv1)) (x4:((r Xv0) Xv1))=> x4)) as proof of ((r Xv0) Xv1)
% Found (((fun (P:Type) (x3:(((r Xv0) Xv1)->(((r Xv0) Xv1)->P)))=> (((((and_rect ((r Xv0) Xv1)) ((r Xv0) Xv1)) P) x3) x2)) ((r Xv0) Xv1)) (fun (x3:((r Xv0) Xv1)) (x4:((r Xv0) Xv1))=> x4)) as proof of ((r Xv0) Xv1)
% Found (fun (x2:((and ((r Xv0) Xv1)) ((r Xv0) Xv1)))=> (((fun (P:Type) (x3:(((r Xv0) Xv1)->(((r Xv0) Xv1)->P)))=> (((((and_rect ((r Xv0) Xv1)) ((r Xv0) Xv1)) P) x3) x2)) ((r Xv0) Xv1)) (fun (x3:((r Xv0) Xv1)) (x4:((r Xv0) Xv1))=> x4))) as proof of ((r Xv0) Xv1)
% Found (fun (Xz:a) (x2:((and ((r Xv0) Xv1)) ((r Xv0) Xv1)))=> (((fun (P:Type) (x3:(((r Xv0) Xv1)->(((r Xv0) Xv1)->P)))=> (((((and_rect ((r Xv0) Xv1)) ((r Xv0) Xv1)) P) x3) x2)) ((r Xv0) Xv1)) (fun (x3:((r Xv0) Xv1)) (x4:((r Xv0) Xv1))=> x4))) as proof of (((and ((r Xv0) Xv1)) ((r Xv0) Xv1))->((r Xv0) Xv1))
% Found (fun (Xy0:a) (Xz:a) (x2:((and ((r Xv0) Xv1)) ((r Xv0) Xv1)))=> (((fun (P:Type) (x3:(((r Xv0) Xv1)->(((r Xv0) Xv1)->P)))=> (((((and_rect ((r Xv0) Xv1)) ((r Xv0) Xv1)) P) x3) x2)) ((r Xv0) Xv1)) (fun (x3:((r Xv0) Xv1)) (x4:((r Xv0) Xv1))=> x4))) as proof of (a->(((and ((r Xv0) Xv1)) ((r Xv0) Xv1))->((r Xv0) Xv1)))
% Found (fun (Xx0:a) (Xy0:a) (Xz:a) (x2:((and ((r Xv0) Xv1)) ((r Xv0) Xv1)))=> (((fun (P:Type) (x3:(((r Xv0) Xv1)->(((r Xv0) Xv1)->P)))=> (((((and_rect ((r Xv0) Xv1)) ((r Xv0) Xv1)) P) x3) x2)) ((r Xv0) Xv1)) (fun (x3:((r Xv0) Xv1)) (x4:((r Xv0) Xv1))=> x4))) as proof of (a->(a->(((and ((r Xv0) Xv1)) ((r Xv0) Xv1))->((r Xv0) Xv1))))
% Found (fun (Xx0:a) (Xy0:a) (Xz:a) (x2:((and ((r Xv0) Xv1)) ((r Xv0) Xv1)))=> (((fun (P:Type) (x3:(((r Xv0) Xv1)->(((r Xv0) Xv1)->P)))=> (((((and_rect ((r Xv0) Xv1)) ((r Xv0) Xv1)) P) x3) x2)) ((r Xv0) Xv1)) (fun (x3:((r Xv0) Xv1)) (x4:((r Xv0) Xv1))=> x4))) as proof of (a->(a->(a->(((and ((r Xv0) Xv1)) ((r Xv0) Xv1))->((r Xv0) Xv1)))))
% Found x2:((r Xx0) Xy0)
% Instantiate: Xv1:=Xx0:a
% Found x2 as proof of ((r Xv1) Xy0)
% Found (or_introl00 x2) as proof of ((or ((r Xv1) Xy0)) ((r Xy0) Xv1))
% Found ((or_introl0 ((r Xy0) Xv1)) x2) as proof of ((or ((r Xv1) Xy0)) ((r Xy0) Xv1))
% Found (((or_introl ((r Xv1) Xy0)) ((r Xy0) Xv1)) x2) as proof of ((or ((r Xv1) Xy0)) ((r Xy0) Xv1))
% Found (((or_introl ((r Xv1) Xy0)) ((r Xy0) Xv1)) x2) as proof of ((or ((r Xv1) Xy0)) ((r Xy0) Xv1))
% Found x2:((r Xx0) Xy0)
% Instantiate: Xv1:=Xx0:a
% Found x2 as proof of ((r Xv1) Xy0)
% Found (or_introl00 x2) as proof of ((or ((r Xv1) Xy0)) ((r Xy0) Xv1))
% Found ((or_introl0 ((r Xy0) Xv1)) x2) as proof of ((or ((r Xv1) Xy0)) ((r Xy0) Xv1))
% Found (((or_introl ((r Xv1) Xy0)) ((r Xy0) Xv1)) x2) as proof of ((or ((r Xv1) Xy0)) ((r Xy0) Xv1))
% Found (((or_introl ((r Xv1) Xy0)) ((r Xy0) Xv1)) x2) as proof of ((or ((r Xv1) Xy0)) ((r Xy0) Xv1))
% Found x2:((r Xx0) Xy0)
% Instantiate: Xv1:=Xy0:a
% Found x2 as proof of ((r Xv0) Xv1)
% Found (or_intror00 x2) as proof of ((or ((r Xv1) Xv0)) ((r Xv0) Xv1))
% Found ((or_intror0 ((r Xv0) Xv1)) x2) as proof of ((or ((r Xv1) Xv0)) ((r Xv0) Xv1))
% Found (((or_intror ((r Xv1) Xv0)) ((r Xv0) Xv1)) x2) as proof of ((or ((r Xv1) Xv0)) ((r Xv0) Xv1))
% Found (((or_intror ((r Xv1) Xv0)) ((r Xv0) Xv1)) x2) as proof of ((or ((r Xv1) Xv0)) ((r Xv0) Xv1))
% Found x2:((r Xx0) Xy0)
% Instantiate: Xv1:=Xx0:a
% Found x2 as proof of ((r Xv1) Xy0)
% Found (or_introl00 x2) as proof of ((or ((r Xv1) Xy0)) ((r Xy0) Xv1))
% Found ((or_introl0 ((r Xy0) Xv1)) x2) as proof of ((or ((r Xv1) Xy0)) ((r Xy0) Xv1))
% Found (((or_introl ((r Xv1) Xy0)) ((r Xy0) Xv1)) x2) as proof of ((or ((r Xv1) Xy0)) ((r Xy0) Xv1))
% Found (((or_introl ((r Xv1) Xy0)) ((r Xy0) Xv1)) x2) as proof of ((or ((r Xv1) Xy0)) ((r Xy0) Xv1))
% Found x2:((r Xx0) Xy0)
% Instantiate: Xv00:=Xy0:a
% Found x2 as proof of ((r Xv) Xv00)
% Found (or_intror00 x2) as proof of ((or ((r Xv00) Xv)) ((r Xv) Xv00))
% Found ((or_intror0 ((r Xv) Xv00)) x2) as proof of ((or ((r Xv00) Xv)) ((r Xv) Xv00))
% Found (((or_intror ((r Xv00) Xv)) ((r Xv) Xv00)) x2) as proof of ((or ((r Xv00) Xv)) ((r Xv) Xv00))
% Found (((or_intror ((r Xv00) Xv)) ((r Xv) Xv00)) x2) as proof of ((or ((r Xv00) Xv)) ((r Xv) Xv00))
% Found x2:((r Xx0) Xy0)
% Instantiate: Xv1:=Xy0:a;Xv2:=Xx0:a
% Found x2 as proof of ((r Xv2) Xv1)
% Found (or_introl00 x2) as proof of ((or ((r Xv2) Xv1)) ((r Xv1) Xv2))
% Found ((or_introl0 ((r Xv1) Xv2)) x2) as proof of ((or ((r Xv2) Xv1)) ((r Xv1) Xv2))
% Found (((or_introl ((r Xv2) Xv1)) ((r Xv1) Xv2)) x2) as proof of ((or ((r Xv2) Xv1)) ((r Xv1) Xv2))
% Found (((or_introl ((r Xv2) Xv1)) ((r Xv1) Xv2)) x2) as proof of ((or ((r Xv2) Xv1)) ((r Xv1) Xv2))
% Found x2:((r Xx0) Xy0)
% Instantiate: Xv1:=Xx0:a
% Found x2 as proof of ((r Xv1) Xy0)
% Found (or_introl00 x2) as proof of ((or ((r Xv1) Xy0)) ((r Xy0) Xv1))
% Found ((or_introl0 ((r Xy0) Xv1)) x2) as proof of ((or ((r Xv1) Xy0)) ((r Xy0) Xv1))
% Found (((or_introl ((r Xv1) Xy0)) ((r Xy0) Xv1)) x2) as proof of ((or ((r Xv1) Xy0)) ((r Xy0) Xv1))
% Found (((or_introl ((r Xv1) Xy0)) ((r Xy0) Xv1)) x2) as proof of ((or ((r Xv1) Xy0)) ((r Xy0) Xv1))
% Found x2:((r Xx0) Xy0)
% Instantiate: Xv1:=Xy0:a;Xv0:=Xx0:a
% Found x2 as proof of ((r Xv0) Xv1)
% Found (or_intror00 x2) as proof of ((or ((r Xv1) Xv0)) ((r Xv0) Xv1))
% Found ((or_intror0 ((r Xv0) Xv1)) x2) as proof of ((or ((r Xv1) Xv0)) ((r Xv0) Xv1))
% Found (((or_intror ((r Xv1) Xv0)) ((r Xv0) Xv1)) x2) as proof of ((or ((r Xv1) Xv0)) ((r Xv0) Xv1))
% Found (((or_intror ((r Xv1) Xv0)) ((r Xv0) Xv1)) x2) as proof of ((or ((r Xv1) Xv0)) ((r Xv0) Xv1))
% Found x2:((r Xx0) Xy0)
% Instantiate: Xv1:=Xx0:a
% Found x2 as proof of ((r Xv1) Xy0)
% Found (or_introl00 x2) as proof of ((or ((r Xv1) Xy0)) ((r Xy0) Xv1))
% Found ((or_introl0 ((r Xy0) Xv1)) x2) as proof of ((or ((r Xv1) Xy0)) ((r Xy0) Xv1))
% Found (((or_introl ((r Xv1) Xy0)) ((r Xy0) Xv1)) x2) as proof of ((or ((r Xv1) Xy0)) ((r Xy0) Xv1))
% Found (((or_introl ((r Xv1) Xy0)) ((r Xy0) Xv1)) x2) as proof of ((or ((r Xv1) Xy0)) ((r Xy0) Xv1))
% Found x2:((r Xx0) Xy0)
% Instantiate: Xv1:=Xx0:a
% Found x2 as proof of ((r Xv1) Xy0)
% Found (or_introl00 x2) as proof of ((or ((r Xv1) Xy0)) ((r Xy0) Xv1))
% Found ((or_introl0 ((r Xy0) Xv1)) x2) as proof of ((or ((r Xv1) Xy0)) ((r Xy0) Xv1))
% Found (((or_introl ((r Xv1) Xy0)) ((r Xy0) Xv1)) x2) as proof of ((or ((r Xv1) Xy0)) ((r Xy0) Xv1))
% Found (((or_introl ((r Xv1) Xy0)) ((r Xy0) Xv1)) x2) as proof of ((or ((r Xv1) Xy0)) ((r Xy0) Xv1))
% Found x2:((r Xx0) Xy0)
% Instantiate: Xv1:=Xx0:a;Xv0:=Xy0:a
% Found x2 as proof of ((r Xv1) Xv0)
% Found (or_introl00 x2) as proof of ((or ((r Xv1) Xv0)) ((r Xv0) Xv1))
% Found ((or_introl0 ((r Xv0) Xv1)) x2) as proof of ((or ((r Xv1) Xv0)) ((r Xv0) Xv1))
% Found (((or_introl ((r Xv1) Xv0)) ((r Xv0) Xv1)) x2) as proof of ((or ((r Xv1) Xv0)) ((r Xv0) Xv1))
% Found (((or_introl ((r Xv1) Xv0)) ((r Xv0) Xv1)) x2) as proof of ((or ((r Xv1) Xv0)) ((r Xv0) Xv1))
% Found x2:((r Xx0) Xy0)
% Instantiate: Xv0:=Xx0:a
% Found x2 as proof of ((r Xv0) Xy0)
% Found (or_introl00 x2) as proof of ((or ((r Xv0) Xy0)) ((r Xy0) Xv0))
% Found ((or_introl0 ((r Xy0) Xv0)) x2) as proof of ((or ((r Xv0) Xy0)) ((r Xy0) Xv0))
% Found (((or_introl ((r Xv0) Xy0)) ((r Xy0) Xv0)) x2) as proof of ((or ((r Xv0) Xy0)) ((r Xy0) Xv0))
% Found (((or_introl ((r Xv0) Xy0)) ((r Xy0) Xv0)) x2) as proof of ((or ((r Xv0) Xy0)) ((r Xy0) Xv0))
% Found (or_comm_i10 (((or_introl ((r Xv0) Xy0)) ((r Xy0) Xv0)) x2)) as proof of ((or ((r Xy0) Xv0)) ((r Xv0) Xy0))
% Found ((or_comm_i1 ((r Xy0) Xv0)) (((or_introl ((r Xv0) Xy0)) ((r Xy0) Xv0)) x2)) as proof of ((or ((r Xy0) Xv0)) ((r Xv0) Xy0))
% Found (((or_comm_i ((r Xv0) Xy0)) ((r Xy0) Xv0)) (((or_introl ((r Xv0) Xy0)) ((r Xy0) Xv0)) x2)) as proof of ((or ((r Xy0) Xv0)) ((r Xv0) Xy0))
% Found (fun (x2:((r Xx0) Xy0))=> (((or_comm_i ((r Xv0) Xy0)) ((r Xy0) Xv0)) (((or_introl ((r Xv0) Xy0)) ((r Xy0) Xv0)) x2))) as proof of ((or ((r Xy0) Xv0)) ((r Xv0) Xy0))
% Found (fun (Xy0:a) (x2:((r Xx0) Xy0))=> (((or_comm_i ((r Xv0) Xy0)) ((r Xy0) Xv0)) (((or_introl ((r Xv0) Xy0)) ((r Xy0) Xv0)) x2))) as proof of (((r Xx0) Xy0)->((or ((r Xy0) Xv0)) ((r Xv0) Xy0)))
% Found x2:((r Xx0) Xy0)
% Instantiate: Xv1:=Xy0:a;Xv2:=Xx0:a
% Found x2 as proof of ((r Xv2) Xv1)
% Found (or_introl00 x2) as proof of ((or ((r Xv2) Xv1)) ((r Xv1) Xv2))
% Found ((or_introl0 ((r Xv1) Xv2)) x2) as proof of ((or ((r Xv2) Xv1)) ((r Xv1) Xv2))
% Found (((or_introl ((r Xv2) Xv1)) ((r Xv1) Xv2)) x2) as proof of ((or ((r Xv2) Xv1)) ((r Xv1) Xv2))
% Found (((or_introl ((r Xv2) Xv1)) ((r Xv1) Xv2)) x2) as proof of ((or ((r Xv2) Xv1)) ((r Xv1) Xv2))
% Found x2:((r Xx0) Xy0)
% Instantiate: Xv1:=Xy0:a;Xv2:=Xx0:a
% Found x2 as proof of ((r Xv2) Xv1)
% Found (or_introl00 x2) as proof of ((or ((r Xv2) Xv1)) ((r Xv1) Xv2))
% Found ((or_introl0 ((r Xv1) Xv2)) x2) as proof of ((or ((r Xv2) Xv1)) ((r Xv1) Xv2))
% Found (((or_introl ((r Xv2) Xv1)) ((r Xv1) Xv2)) x2) as proof of ((or ((r Xv2) Xv1)) ((r Xv1) Xv2))
% Found (((or_introl ((r Xv2) Xv1)) ((r Xv1) Xv2)) x2) as proof of ((or ((r Xv2) Xv1)) ((r Xv1) Xv2))
% Found x2:((r Xx0) Xy0)
% Instantiate: Xv1:=Xy0:a
% Found x2 as proof of ((r Xv0) Xv1)
% Found (or_intror00 x2) as proof of ((or ((r Xv1) Xv0)) ((r Xv0) Xv1))
% Found ((or_intror0 ((r Xv0) Xv1)) x2) as proof of ((or ((r Xv1) Xv0)) ((r Xv0) Xv1))
% Found (((or_intror ((r Xv1) Xv0)) ((r Xv0) Xv1)) x2) as proof of ((or ((r Xv1) Xv0)) ((r Xv0) Xv1))
% Found (((or_intror ((r Xv1) Xv0)) ((r Xv0) Xv1)) x2) as proof of ((or ((r Xv1) Xv0)) ((r Xv0) Xv1))
% Found x2:((r Xx0) Xy0)
% Instantiate: Xv1:=Xx0:a
% Found x2 as proof of ((r Xv1) Xy0)
% Found (or_introl00 x2) as proof of ((or ((r Xv1) Xy0)) ((r Xy0) Xv1))
% Found ((or_introl0 ((r Xy0) Xv1)) x2) as proof of ((or ((r Xv1) Xy0)) ((r Xy0) Xv1))
% Found (((or_introl ((r Xv1) Xy0)) ((r Xy0) Xv1)) x2) as proof of ((or ((r Xv1) Xy0)) ((r Xy0) Xv1))
% Found (((or_introl ((r Xv1) Xy0)) ((r Xy0) Xv1)) x2) as proof of ((or ((r Xv1) Xy0)) ((r Xy0) Xv1))
% Found x2:((r Xx0) Xy0)
% Instantiate: Xv00:=Xy0:a
% Found x2 as proof of ((r Xv) Xv00)
% Found (or_intror00 x2) as proof of ((or ((r Xv00) Xv)) ((r Xv) Xv00))
% Found ((or_intror0 ((r Xv) Xv00)) x2) as proof of ((or ((r Xv00) Xv)) ((r Xv) Xv00))
% Found (((or_intror ((r Xv00) Xv)) ((r Xv) Xv00)) x2) as proof of ((or ((r Xv00) Xv)) ((r Xv) Xv00))
% Found (((or_intror ((r Xv00) Xv)) ((r Xv) Xv00)) x2) as proof of ((or ((r Xv00) Xv)) ((r Xv) Xv00))
% Found x2:((r Xx0) Xy0)
% Instantiate: Xv1:=Xx0:a
% Found x2 as proof of ((r Xv1) Xy0)
% Found (or_introl00 x2) as proof of ((or ((r Xv1) Xy0)) ((r Xy0) Xv1))
% Found ((or_introl0 ((r Xy0) Xv1)) x2) as proof of ((or ((r Xv1) Xy0)) ((r Xy0) Xv1))
% Found (((or_introl ((r Xv1) Xy0)) ((r Xy0) Xv1)) x2) as proof of ((or ((r Xv1) Xy0)) ((r Xy0) Xv1))
% Found (((or_introl ((r Xv1) Xy0)) ((r Xy0) Xv1)) x2) as proof of ((or ((r Xv1) Xy0)) ((r Xy0) Xv1))
% Found x2:((r Xx0) Xy0)
% Instantiate: Xv00:=Xy0:a
% Found x2 as proof of ((r Xv) Xv00)
% Found (or_intror00 x2) as proof of ((or ((r Xv00) Xv)) ((r Xv) Xv00))
% Found ((or_intror0 ((r Xv) Xv00)) x2) as proof of ((or ((r Xv00) Xv)) ((r Xv) Xv00))
% Found (((or_intror ((r Xv00) Xv)) ((r Xv) Xv00)) x2) as proof of ((or ((r Xv00) Xv)) ((r Xv) Xv00))
% Found (((or_intror ((r Xv00) Xv)) ((r Xv) Xv00)) x2) as proof of ((or ((r Xv00) Xv)) ((r Xv) Xv00))
% Found x2:((r Xx0) Xy0)
% Instantiate: Xv1:=Xy0:a
% Found x2 as proof of ((r Xv0) Xv1)
% Found (or_intror00 x2) as proof of ((or ((r Xv1) Xv0)) ((r Xv0) Xv1))
% Found ((or_intror0 ((r Xv0) Xv1)) x2) as proof of ((or ((r Xv1) Xv0)) ((r Xv0) Xv1))
% Found (((or_intror ((r Xv1) Xv0)) ((r Xv0) Xv1)) x2) as proof of ((or ((r Xv1) Xv0)) ((r Xv0) Xv1))
% Found (((or_intror ((r Xv1) Xv0)) ((r Xv0) Xv1)) x2) as proof of ((or ((r Xv1) Xv0)) ((r Xv0) Xv1))
% Found x2:((r Xx0) Xy0)
% Instantiate: Xv1:=Xx0:a;Xv0:=Xy0:a
% Found x2 as proof of ((r Xv1) Xv0)
% Found (or_introl00 x2) as proof of ((or ((r Xv1) Xv0)) ((r Xv0) Xv1))
% Found ((or_introl0 ((r Xv0) Xv1)) x2) as proof of ((or ((r Xv1) Xv0)) ((r Xv0) Xv1))
% Found (((or_introl ((r Xv1) Xv0)) ((r Xv0) Xv1)) x2) as proof of ((or ((r Xv1) Xv0)) ((r Xv0) Xv1))
% Found (((or_introl ((r Xv1) Xv0)) ((r Xv0) Xv1)) x2) as proof of ((or ((r Xv1) Xv0)) ((r Xv0) Xv1))
% Found x2:((r Xx0) Xy0)
% Instantiate: Xv1:=Xx0:a
% Found x2 as proof of ((r Xv1) Xy0)
% Found (or_introl00 x2) as proof of ((or ((r Xv1) Xy0)) ((r Xy0) Xv1))
% Found ((or_introl0 ((r Xy0) Xv1)) x2) as proof of ((or ((r Xv1) Xy0)) ((r Xy0) Xv1))
% Found (((or_introl ((r Xv1) Xy0)) ((r Xy0) Xv1)) x2) as proof of ((or ((r Xv1) Xy0)) ((r Xy0) Xv1))
% Found (((or_introl ((r Xv1) Xy0)) ((r Xy0) Xv1)) x2) as proof of ((or ((r Xv1) Xy0)) ((r Xy0) Xv1))
% Found x2:((r Xx0) Xy0)
% Instantiate: Xv1:=Xy0:a
% Found x2 as proof of ((r Xv0) Xv1)
% Found (or_intror00 x2) as proof of ((or ((r Xv1) Xv0)) ((r Xv0) Xv1))
% Found ((or_intror0 ((r Xv0) Xv1)) x2) as proof of ((or ((r Xv1) Xv0)) ((r Xv0) Xv1))
% Found (((or_intror ((r Xv1) Xv0)) ((r Xv0) Xv1)) x2) as proof of ((or ((r Xv1) Xv0)) ((r Xv0) Xv1))
% Found (((or_intror ((r Xv1) Xv0)) ((r Xv0) Xv1)) x2) as proof of ((or ((r Xv1) Xv0)) ((r Xv0) Xv1))
% Found x2:((r Xx0) Xy0)
% Instantiate: Xv00:=Xy0:a
% Found x2 as proof of ((r Xv) Xv00)
% Found (or_intror00 x2) as proof of ((or ((r Xv00) Xv)) ((r Xv) Xv00))
% Found ((or_intror0 ((r Xv) Xv00)) x2) as proof of ((or ((r Xv00) Xv)) ((r Xv) Xv00))
% Found (((or_intror ((r Xv00) Xv)) ((r Xv) Xv00)) x2) as proof of ((or ((r Xv00) Xv)) ((r Xv) Xv00))
% Found (((or_intror ((r Xv00) Xv)) ((r Xv) Xv00)) x2) as proof of ((or ((r Xv00) Xv)) ((r Xv) Xv00))
% Found x2:((r Xx0) Xy0)
% Instantiate: Xv1:=Xx0:a
% Found x2 as proof of ((r Xv1) Xy0)
% Found (or_introl00 x2) as proof of ((or ((r Xv1) Xy0)) ((r Xy0) Xv1))
% Found ((or_introl0 ((r Xy0) Xv1)) x2) as proof of ((or ((r Xv1) Xy0)) ((r Xy0) Xv1))
% Found (((or_introl ((r Xv1) Xy0)) ((r Xy0) Xv1)) x2) as proof of ((or ((r Xv1) Xy0)) ((r Xy0) Xv1))
% Found (((or_introl ((r Xv1) Xy0)) ((r Xy0) Xv1)) x2) as proof of ((or ((r Xv1) Xy0)) ((r Xy0) Xv1))
% Found x3:((r Xv0) Xx0)
% Found (fun (x4:((r Xv0) Xy0))=> x3) as proof of ((r Xv0) Xx0)
% Found (fun (x3:((r Xv0) Xx0)) (x4:((r Xv0) Xy0))=> x3) as proof of (((r Xv0) Xy0)->((r Xv0) Xx0))
% Found (fun (x3:((r Xv0) Xx0)) (x4:((r Xv0) Xy0))=> x3) as proof of (((r Xv0) Xx0)->(((r Xv0) Xy0)->((r Xv0) Xx0)))
% Found (and_rect10 (fun (x3:((r Xv0) Xx0)) (x4:((r Xv0) Xy0))=> x3)) as proof of ((r Xv0) Xx0)
% Found ((and_rect1 ((r Xv0) Xx0)) (fun (x3:((r Xv0) Xx0)) (x4:((r Xv0) Xy0))=> x3)) as proof of ((r Xv0) Xx0)
% Found (((fun (P:Type) (x3:(((r Xv0) Xx0)->(((r Xv0) Xy0)->P)))=> (((((and_rect ((r Xv0) Xx0)) ((r Xv0) Xy0)) P) x3) x2)) ((r Xv0) Xx0)) (fun (x3:((r Xv0) Xx0)) (x4:((r Xv0) Xy0))=> x3)) as proof of ((r Xv0) Xx0)
% Found (fun (x2:((and ((r Xv0) Xx0)) ((r Xv0) Xy0)))=> (((fun (P:Type) (x3:(((r Xv0) Xx0)->(((r Xv0) Xy0)->P)))=> (((((and_rect ((r Xv0) Xx0)) ((r Xv0) Xy0)) P) x3) x2)) ((r Xv0) Xx0)) (fun (x3:((r Xv0) Xx0)) (x4:((r Xv0) Xy0))=> x3))) as proof of ((r Xv0) Xx0)
% Found (fun (Xz:a) (x2:((and ((r Xv0) Xx0)) ((r Xv0) Xy0)))=> (((fun (P:Type) (x3:(((r Xv0) Xx0)->(((r Xv0) Xy0)->P)))=> (((((and_rect ((r Xv0) Xx0)) ((r Xv0) Xy0)) P) x3) x2)) ((r Xv0) Xx0)) (fun (x3:((r Xv0) Xx0)) (x4:((r Xv0) Xy0))=> x3))) as proof of (((and ((r Xv0) Xx0)) ((r Xv0) Xy0))->((r Xv0) Xx0))
% Found (fun (Xy0:a) (Xz:a) (x2:((and ((r Xv0) Xx0)) ((r Xv0) Xy0)))=> (((fun (P:Type) (x3:(((r Xv0) Xx0)->(((r Xv0) Xy0)->P)))=> (((((and_rect ((r Xv0) Xx0)) ((r Xv0) Xy0)) P) x3) x2)) ((r Xv0) Xx0)) (fun (x3:((r Xv0) Xx0)) (x4:((r Xv0) Xy0))=> x3))) as proof of (a->(((and ((r Xv0) Xx0)) ((r Xv0) Xy0))->((r Xv0) Xx0)))
% Found (fun (Xx0:a) (Xy0:a) (Xz:a) (x2:((and ((r Xv0) Xx0)) ((r Xv0) Xy0)))=> (((fun (P:Type) (x3:(((r Xv0) Xx0)->(((r Xv0) Xy0)->P)))=> (((((and_rect ((r Xv0) Xx0)) ((r Xv0) Xy0)) P) x3) x2)) ((r Xv0) Xx0)) (fun (x3:((r Xv0) Xx0)) (x4:((r Xv0) Xy0))=> x3))) as proof of (forall (Xy0:a), (a->(((and ((r Xv0) Xx0)) ((r Xv0) Xy0))->((r Xv0) Xx0))))
% Found (fun (Xx0:a) (Xy0:a) (Xz:a) (x2:((and ((r Xv0) Xx0)) ((r Xv0) Xy0)))=> (((fun (P:Type) (x3:(((r Xv0) Xx0)->(((r Xv0) Xy0)->P)))=> (((((and_rect ((r Xv0) Xx0)) ((r Xv0) Xy0)) P) x3) x2)) ((r Xv0) Xx0)) (fun (x3:((r Xv0) Xx0)) (x4:((r Xv0) Xy0))=> x3))) as proof of (forall (Xx0:a) (Xy0:a), (a->(((and ((r Xv0) Xx0)) ((r Xv0) Xy0))->((r Xv0) Xx0))))
% Found x3:((r Xx0) Xv0)
% Found (fun (x4:((r Xy0) Xv0))=> x3) as proof of ((r Xx0) Xv0)
% Found (fun (x3:((r Xx0) Xv0)) (x4:((r Xy0) Xv0))=> x3) as proof of (((r Xy0) Xv0)->((r Xx0) Xv0))
% Found (fun (x3:((r Xx0) Xv0)) (x4:((r Xy0) Xv0))=> x3) as proof of (((r Xx0) Xv0)->(((r Xy0) Xv0)->((r Xx0) Xv0)))
% Found (and_rect10 (fun (x3:((r Xx0) Xv0)) (x4:((r Xy0) Xv0))=> x3)) as proof of ((r Xx0) Xv0)
% Found ((and_rect1 ((r Xx0) Xv0)) (fun (x3:((r Xx0) Xv0)) (x4:((r Xy0) Xv0))=> x3)) as proof of ((r Xx0) Xv0)
% Found (((fun (P:Type) (x3:(((r Xx0) Xv0)->(((r Xy0) Xv0)->P)))=> (((((and_rect ((r Xx0) Xv0)) ((r Xy0) Xv0)) P) x3) x2)) ((r Xx0) Xv0)) (fun (x3:((r Xx0) Xv0)) (x4:((r Xy0) Xv0))=> x3)) as proof of ((r Xx0) Xv0)
% Found (fun (x2:((and ((r Xx0) Xv0)) ((r Xy0) Xv0)))=> (((fun (P:Type) (x3:(((r Xx0) Xv0)->(((r Xy0) Xv0)->P)))=> (((((and_rect ((r Xx0) Xv0)) ((r Xy0) Xv0)) P) x3) x2)) ((r Xx0) Xv0)) (fun (x3:((r Xx0) Xv0)) (x4:((r Xy0) Xv0))=> x3))) as proof of ((r Xx0) Xv0)
% Found (fun (Xz:a) (x2:((and ((r Xx0) Xv0)) ((r Xy0) Xv0)))=> (((fun (P:Type) (x3:(((r Xx0) Xv0)->(((r Xy0) Xv0)->P)))=> (((((and_rect ((r Xx0) Xv0)) ((r Xy0) Xv0)) P) x3) x2)) ((r Xx0) Xv0)) (fun (x3:((r Xx0) Xv0)) (x4:((r Xy0) Xv0))=> x3))) as proof of (((and ((r Xx0) Xv0)) ((r Xy0) Xv0))->((r Xx0) Xv0))
% Found (fun (Xy0:a) (Xz:a) (x2:((and ((r Xx0) Xv0)) ((r Xy0) Xv0)))=> (((fun (P:Type) (x3:(((r Xx0) Xv0)->(((r Xy0) Xv0)->P)))=> (((((and_rect ((r Xx0) Xv0)) ((r Xy0) Xv0)) P) x3) x2)) ((r Xx0) Xv0)) (fun (x3:((r Xx0) Xv0)) (x4:((r Xy0) Xv0))=> x3))) as proof of (a->(((and ((r Xx0) Xv0)) ((r Xy0) Xv0))->((r Xx0) Xv0)))
% Found (fun (Xx0:a) (Xy0:a) (Xz:a) (x2:((and ((r Xx0) Xv0)) ((r Xy0) Xv0)))=> (((fun (P:Type) (x3:(((r Xx0) Xv0)->(((r Xy0) Xv0)->P)))=> (((((and_rect ((r Xx0) Xv0)) ((r Xy0) Xv0)) P) x3) x2)) ((r Xx0) Xv0)) (fun (x3:((r Xx0) Xv0)) (x4:((r Xy0) Xv0))=> x3))) as proof of (forall (Xy0:a), (a->(((and ((r Xx0) Xv0)) ((r Xy0) Xv0))->((r Xx0) Xv0))))
% Found (fun (Xx0:a) (Xy0:a) (Xz:a) (x2:((and ((r Xx0) Xv0)) ((r Xy0) Xv0)))=> (((fun (P:Type) (x3:(((r Xx0) Xv0)->(((r Xy0) Xv0)->P)))=> (((((and_rect ((r Xx0) Xv0)) ((r Xy0) Xv0)) P) x3) x2)) ((r Xx0) Xv0)) (fun (x3:((r Xx0) Xv0)) (x4:((r Xy0) Xv0))=> x3))) as proof of (forall (Xx0:a) (Xy0:a), (a->(((and ((r Xx0) Xv0)) ((r Xy0) Xv0))->((r Xx0) Xv0))))
% Found x2:((r Xx0) Xy0)
% Instantiate: Xv1:=Xy0:a
% Found x2 as proof of ((r Xx0) Xv1)
% Found (or_intror00 x2) as proof of ((or ((r Xv1) Xx0)) ((r Xx0) Xv1))
% Found ((or_intror0 ((r Xx0) Xv1)) x2) as proof of ((or ((r Xv1) Xx0)) ((r Xx0) Xv1))
% Found (((or_intror ((r Xv1) Xx0)) ((r Xx0) Xv1)) x2) as proof of ((or ((r Xv1) Xx0)) ((r Xx0) Xv1))
% Found (((or_intror ((r Xv1) Xx0)) ((r Xx0) Xv1)) x2) as proof of ((or ((r Xv1) Xx0)) ((r Xx0) Xv1))
% Found (or_comm_i00 (((or_intror ((r Xv1) Xx0)) ((r Xx0) Xv1)) x2)) as proof of ((or ((r Xx0) Xv1)) ((r Xv1) Xx0))
% Found ((or_comm_i0 ((r Xx0) Xv1)) (((or_intror ((r Xv1) Xx0)) ((r Xx0) Xv1)) x2)) as proof of ((or ((r Xx0) Xv1)) ((r Xv1) Xx0))
% Found (((or_comm_i ((r Xv1) Xx0)) ((r Xx0) Xv1)) (((or_intror ((r Xv1) Xx0)) ((r Xx0) Xv1)) x2)) as proof of ((or ((r Xx0) Xv1)) ((r Xv1) Xx0))
% Found (fun (x2:((r Xx0) Xy0))=> (((or_comm_i ((r Xv1) Xx0)) ((r Xx0) Xv1)) (((or_intror ((r Xv1) Xx0)) ((r Xx0) Xv1)) x2))) as proof of ((or ((r Xx0) Xv1)) ((r Xv1) Xx0))
% Found x2:((and (Xq Xv1)) ((or ((r Xv1) Xv0)) ((r Xv0) Xv1)))
% Found (fun (x2:((and (Xq Xv1)) ((or ((r Xv1) Xv0)) ((r Xv0) Xv1))))=> x2) as proof of ((and (Xq Xv1)) ((or ((r Xv1) Xv0)) ((r Xv0) Xv1)))
% Found (fun (Xy0:a) (x2:((and (Xq Xv1)) ((or ((r Xv1) Xv0)) ((r Xv0) Xv1))))=> x2) as proof of (((and (Xq Xv1)) ((or ((r Xv1) Xv0)) ((r Xv0) Xv1)))->((and (Xq Xv1)) ((or ((r Xv1) Xv0)) ((r Xv0) Xv1))))
% Found (fun (Xx0:a) (Xy0:a) (x2:((and (Xq Xv1)) ((or ((r Xv1) Xv0)) ((r Xv0) Xv1))))=> x2) as proof of (a->(((and (Xq Xv1)) ((or ((r Xv1) Xv0)) ((r Xv0) Xv1)))->((and (Xq Xv1)) ((or ((r Xv1) Xv0)) ((r Xv0) Xv1)))))
% Found (fun (Xx0:a) (Xy0:a) (x2:((and (Xq Xv1)) ((or ((r Xv1) Xv0)) ((r Xv0) Xv1))))=> x2) as proof of (a->(a->(((and (Xq Xv1)) ((or ((r Xv1) Xv0)) ((r Xv0) Xv1)))->((and (Xq Xv1)) ((or ((r Xv1) Xv0)) ((r Xv0) Xv1))))))
% Found x2:((and (Xq Xv00)) ((or ((r Xv00) Xv)) ((r Xv) Xv00)))
% Found (fun (x2:((and (Xq Xv00)) ((or ((r Xv00) Xv)) ((r Xv) Xv00))))=> x2) as proof of ((and (Xq Xv00)) ((or ((r Xv00) Xv)) ((r Xv) Xv00)))
% Found (fun (Xy0:a) (x2:((and (Xq Xv00)) ((or ((r Xv00) Xv)) ((r Xv) Xv00))))=> x2) as proof of (((and (Xq Xv00)) ((or ((r Xv00) Xv)) ((r Xv) Xv00)))->((and (Xq Xv00)) ((or ((r Xv00) Xv)) ((r Xv) Xv00))))
% Found (fun (Xx0:a) (Xy0:a) (x2:((and (Xq Xv00)) ((or ((r Xv00) Xv)) ((r Xv) Xv00))))=> x2) as proof of (a->(((and (Xq Xv00)) ((or ((r Xv00) Xv)) ((r Xv) Xv00)))->((and (Xq Xv00)) ((or ((r Xv00) Xv)) ((r Xv) Xv00)))))
% Found (fun (Xx0:a) (Xy0:a) (x2:((and (Xq Xv00)) ((or ((r Xv00) Xv)) ((r Xv) Xv00))))=> x2) as proof of (a->(a->(((and (Xq Xv00)) ((or ((r Xv00) Xv)) ((r Xv) Xv00)))->((and (Xq Xv00)) ((or ((r Xv00) Xv)) ((r Xv) Xv00))))))
% Found x2:((r Xx0) Xy0)
% Instantiate: Xv1:=Xy0:a
% Found (fun (x2:((r Xx0) Xy0))=> x2) as proof of ((r Xx0) Xv1)
% Found x2:((r Xx0) Xy0)
% Instantiate: Xv1:=Xx0:a
% Found x2 as proof of ((r Xv1) Xy0)
% Found (or_introl00 x2) as proof of ((or ((r Xv1) Xy0)) ((r Xy0) Xv1))
% Found ((or_introl0 ((r Xy0) Xv1)) x2) as proof of ((or ((r Xv1) Xy0)) ((r Xy0) Xv1))
% Found (((or_introl ((r Xv1) Xy0)) ((r Xy0) Xv1)) x2) as proof of ((or ((r Xv1) Xy0)) ((r Xy0) Xv1))
% Found (((or_introl ((r Xv1) Xy0)) ((r Xy0) Xv1)) x2) as proof of ((or ((r Xv1) Xy0)) ((r Xy0) Xv1))
% Found x2:((r Xx0) Xy0)
% Instantiate: Xv1:=Xy0:a;Xv0:=Xx0:a
% Found x2 as proof of ((r Xv0) Xv1)
% Found (or_intror00 x2) as proof of ((or ((r Xv1) Xv0)) ((r Xv0) Xv1))
% Found ((or_intror0 ((r Xv0) Xv1)) x2) as proof of ((or ((r Xv1) Xv0)) ((r Xv0) Xv1))
% Found (((or_intror ((r Xv1) Xv0)) ((r Xv0) Xv1)) x2) as proof of ((or ((r Xv1) Xv0)) ((r Xv0) Xv1))
% Found (((or_intror ((r Xv1) Xv0)) ((r Xv0) Xv1)) x2) as proof of ((or ((r Xv1) Xv0)) ((r Xv0) Xv1))
% Found x2:((r Xx0) Xy0)
% Instantiate: Xv1:=Xy0:a;Xv0:=Xx0:a
% Found x2 as proof of ((r Xv0) Xv1)
% Found (or_intror00 x2) as proof of ((or ((r Xv1) Xv0)) ((r Xv0) Xv1))
% Found ((or_intror0 ((r Xv0) Xv1)) x2) as proof of ((or ((r Xv1) Xv0)) ((r Xv0) Xv1))
% Found (((or_intror ((r Xv1) Xv0)) ((r Xv0) Xv1)) x2) as proof of ((or ((r Xv1) Xv0)) ((r Xv0) Xv1))
% Found (((or_intror ((r Xv1) Xv0)) ((r Xv0) Xv1)) x2) as proof of ((or ((r Xv1) Xv0)) ((r Xv0) Xv1))
% Found x2:((r Xx0) Xy0)
% Instantiate: Xv1:=Xx0:a
% Found x2 as proof of ((r Xv1) Xy0)
% Found (or_introl00 x2) as proof of ((or ((r Xv1) Xy0)) ((r Xy0) Xv1))
% Found ((or_introl0 ((r Xy0) Xv1)) x2) as proof of ((or ((r Xv1) Xy0)) ((r Xy0) Xv1))
% Found (((or_introl ((r Xv1) Xy0)) ((r Xy0) Xv1)) x2) as proof of ((or ((r Xv1) Xy0)) ((r Xy0) Xv1))
% Found (((or_introl ((r Xv1) Xy0)) ((r Xy0) Xv1)) x2) as proof of ((or ((r Xv1) Xy0)) ((r Xy0) Xv1))
% Found x4:((and (Xq Xv1)) ((or ((r Xv1) Xv0)) ((r Xv0) Xv1)))
% Found (fun (x4:((and (Xq Xv1)) ((or ((r Xv1) Xv0)) ((r Xv0) Xv1))))=> x4) as proof of ((and (Xq Xv1)) ((or ((r Xv1) Xv0)) ((r Xv0) Xv1)))
% Found (fun (x3:((and (Xq Xv1)) ((or ((r Xv1) Xv0)) ((r Xv0) Xv1)))) (x4:((and (Xq Xv1)) ((or ((r Xv1) Xv0)) ((r Xv0) Xv1))))=> x4) as proof of (((and (Xq Xv1)) ((or ((r Xv1) Xv0)) ((r Xv0) Xv1)))->((and (Xq Xv1)) ((or ((r Xv1) Xv0)) ((r Xv0) Xv1))))
% Found (fun (x3:((and (Xq Xv1)) ((or ((r Xv1) Xv0)) ((r Xv0) Xv1)))) (x4:((and (Xq Xv1)) ((or ((r Xv1) Xv0)) ((r Xv0) Xv1))))=> x4) as proof of (((and (Xq Xv1)) ((or ((r Xv1) Xv0)) ((r Xv0) Xv1)))->(((and (Xq Xv1)) ((or ((r Xv1) Xv0)) ((r Xv0) Xv1)))->((and (Xq Xv1)) ((or ((r Xv1) Xv0)) ((r Xv0) Xv1)))))
% Found (and_rect10 (fun (x3:((and (Xq Xv1)) ((or ((r Xv1) Xv0)) ((r Xv0) Xv1)))) (x4:((and (Xq Xv1)) ((or ((r Xv1) Xv0)) ((r Xv0) Xv1))))=> x4)) as proof of ((and (Xq Xv1)) ((or ((r Xv1) Xv0)) ((r Xv0) Xv1)))
% Found ((and_rect1 ((and (Xq Xv1)) ((or ((r Xv1) Xv0)) ((r Xv0) Xv1)))) (fun (x3:((and (Xq Xv1)) ((or ((r Xv1) Xv0)) ((r Xv0) Xv1)))) (x4:((and (Xq Xv1)) ((or ((r Xv1) Xv0)) ((r Xv0) Xv1))))=> x4)) as proof of ((and (Xq Xv1)) ((or ((r Xv1) Xv0)) ((r Xv0) Xv1)))
% Found (((fun (P:Type) (x3:(((and (Xq Xv1)) ((or ((r Xv1) Xv0)) ((r Xv0) Xv1)))->(((and (Xq Xv1)) ((or ((r Xv1) Xv0)) ((r Xv0) Xv1)))->P)))=> (((((and_rect ((and (Xq Xv1)) ((or ((r Xv1) Xv0)) ((r Xv0) Xv1)))) ((and (Xq Xv1)) ((or ((r Xv1) Xv0)) ((r Xv0) Xv1)))) P) x3) x2)) ((and (Xq Xv1)) ((or ((r Xv1) Xv0)) ((r Xv0) Xv1)))) (fun (x3:((and (Xq Xv1)) ((or ((r Xv1) Xv0)) ((r Xv0) Xv1)))) (x4:((and (Xq Xv1)) ((or ((r Xv1) Xv0)) ((r Xv0) Xv1))))=> x4)) as proof of ((and (Xq Xv1)) ((or ((r Xv1) Xv0)) ((r Xv0) Xv1)))
% Found (fun (x2:((and ((and (Xq Xv1)) ((or ((r Xv1) Xv0)) ((r Xv0) Xv1)))) ((and (Xq Xv1)) ((or ((r Xv1) Xv0)) ((r Xv0) Xv1)))))=> (((fun (P:Type) (x3:(((and (Xq Xv1)) ((or ((r Xv1) Xv0)) ((r Xv0) Xv1)))->(((and (Xq Xv1)) ((or ((r Xv1) Xv0)) ((r Xv0) Xv1)))->P)))=> (((((and_rect ((and (Xq Xv1)) ((or ((r Xv1) Xv0)) ((r Xv0) Xv1)))) ((and (Xq Xv1)) ((or ((r Xv1) Xv0)) ((r Xv0) Xv1)))) P) x3) x2)) ((and (Xq Xv1)) ((or ((r Xv1) Xv0)) ((r Xv0) Xv1)))) (fun (x3:((and (Xq Xv1)) ((or ((r Xv1) Xv0)) ((r Xv0) Xv1)))) (x4:((and (Xq Xv1)) ((or ((r Xv1) Xv0)) ((r Xv0) Xv1))))=> x4))) as proof of ((and (Xq Xv1)) ((or ((r Xv1) Xv0)) ((r Xv0) Xv1)))
% Found (fun (Xz:a) (x2:((and ((and (Xq Xv1)) ((or ((r Xv1) Xv0)) ((r Xv0) Xv1)))) ((and (Xq Xv1)) ((or ((r Xv1) Xv0)) ((r Xv0) Xv1)))))=> (((fun (P:Type) (x3:(((and (Xq Xv1)) ((or ((r Xv1) Xv0)) ((r Xv0) Xv1)))->(((and (Xq Xv1)) ((or ((r Xv1) Xv0)) ((r Xv0) Xv1)))->P)))=> (((((and_rect ((and (Xq Xv1)) ((or ((r Xv1) Xv0)) ((r Xv0) Xv1)))) ((and (Xq Xv1)) ((or ((r Xv1) Xv0)) ((r Xv0) Xv1)))) P) x3) x2)) ((and (Xq Xv1)) ((or ((r Xv1) Xv0)) ((r Xv0) Xv1)))) (fun (x3:((and (Xq Xv1)) ((or ((r Xv1) Xv0)) ((r Xv0) Xv1)))) (x4:((and (Xq Xv1)) ((or ((r Xv1) Xv0)) ((r Xv0) Xv1))))=> x4))) as proof of (((and ((and (Xq Xv1)) ((or ((r Xv1) Xv0)) ((r Xv0) Xv1)))) ((and (Xq Xv1)) ((or ((r Xv1) Xv0)) ((r Xv0) Xv1))))->((and (Xq Xv1)) ((or ((r Xv1) Xv0)) ((r Xv0) Xv1))))
% Found (fun (Xy0:a) (Xz:a) (x2:((and ((and (Xq Xv1)) ((or ((r Xv1) Xv0)) ((r Xv0) Xv1)))) ((and (Xq Xv1)) ((or ((r Xv1) Xv0)) ((r Xv0) Xv1)))))=> (((fun (P:Type) (x3:(((and (Xq Xv1)) ((or ((r Xv1) Xv0)) ((r Xv0) Xv1)))->(((and (Xq Xv1)) ((or ((r Xv1) Xv0)) ((r Xv0) Xv1)))->P)))=> (((((and_rect ((and (Xq Xv1)) ((or ((r Xv1) Xv0)) ((r Xv0) Xv1)))) ((and (Xq Xv1)) ((or ((r Xv1) Xv0)) ((r Xv0) Xv1)))) P) x3) x2)) ((and (Xq Xv1)) ((or ((r Xv1) Xv0)) ((r Xv0) Xv1)))) (fun (x3:((and (Xq Xv1)) ((or ((r Xv1) Xv0)) ((r Xv0) Xv1)))) (x4:((and (Xq Xv1)) ((or ((r Xv1) Xv0)) ((r Xv0) Xv1))))=> x4))) as proof of (a->(((and ((and (Xq Xv1)) ((or ((r Xv1) Xv0)) ((r Xv0) Xv1)))) ((and (Xq Xv1)) ((or ((r Xv1) Xv0)) ((r Xv0) Xv1))))->((and (Xq Xv1)) ((or ((r Xv1) Xv0)) ((r Xv0) Xv1)))))
% Found (fun (Xx0:a) (Xy0:a) (Xz:a) (x2:((and ((and (Xq Xv1)) ((or ((r Xv1) Xv0)) ((r Xv0) Xv1)))) ((and (Xq Xv1)) ((or ((r Xv1) Xv0)) ((r Xv0) Xv1)))))=> (((fun (P:Type) (x3:(((and (Xq Xv1)) ((or ((r Xv1) Xv0)) ((r Xv0) Xv1)))->(((and (Xq Xv1)) ((or ((r Xv1) Xv0)) ((r Xv0) Xv1)))->P)))=> (((((and_rect ((and (Xq Xv1)) ((or ((r Xv1) Xv0)) ((r Xv0) Xv1)))) ((and (Xq Xv1)) ((or ((r Xv1) Xv0)) ((r Xv0) Xv1)))) P) x3) x2)) ((and (Xq Xv1)) ((or ((r Xv1) Xv0)) ((r Xv0) Xv1)))) (fun (x3:((and (Xq Xv1)) ((or ((r Xv1) Xv0)) ((r Xv0) Xv1)))) (x4:((and (Xq Xv1)) ((or ((r Xv1) Xv0)) ((r Xv0) Xv1))))=> x4))) as proof of (a->(a->(((and ((and (Xq Xv1)) ((or ((r Xv1) Xv0)) ((r Xv0) Xv1)))) ((and (Xq Xv1)) ((or ((r Xv1) Xv0)) ((r Xv0) Xv1))))->((and (Xq Xv1)) ((or ((r Xv1) Xv0)) ((r Xv0) Xv1))))))
% Found (fun (Xx0:a) (Xy0:a) (Xz:a) (x2:((and ((and (Xq Xv1)) ((or ((r Xv1) Xv0)) ((r Xv0) Xv1)))) ((and (Xq Xv1)) ((or ((r Xv1) Xv0)) ((r Xv0) Xv1)))))=> (((fun (P:Type) (x3:(((and (Xq Xv1)) ((or ((r Xv1) Xv0)) ((r Xv0) Xv1)))->(((and (Xq Xv1)) ((or ((r Xv1) Xv0)) ((r Xv0) Xv1)))->P)))=> (((((and_rect ((and (Xq Xv1)) ((or ((r Xv1) Xv0)) ((r Xv0) Xv1)))) ((and (Xq Xv1)) ((or ((r Xv1) Xv0)) ((r Xv0) Xv1)))) P) x3) x2)) ((and (Xq Xv1)) ((or ((r Xv1) Xv0)) ((r Xv0) Xv1)))) (fun (x3:((and (Xq Xv1)) ((or ((r Xv1) Xv0)) ((r Xv0) Xv1)))) (x4:((and (Xq Xv1)) ((or ((r Xv1) Xv0)) ((r Xv0) Xv1))))=> x4))) as proof of (a->(a->(a->(((and ((and (Xq Xv1)) ((or ((r Xv1) Xv0)) ((r Xv0) Xv1)))) ((and (Xq Xv1)) ((or ((r Xv1) Xv0)) ((r Xv0) Xv1))))->((and (Xq Xv1)) ((or ((r Xv1) Xv0)) ((r Xv0) Xv1)))))))
% Found x4:((and (Xq Xv1)) ((or ((r Xv1) Xz)) ((r Xz) Xv1)))
% Found (fun (x4:((and (Xq Xv1)) ((or ((r Xv1) Xz)) ((r Xz) Xv1))))=> x4) as proof of ((and (Xq Xv1)) ((or ((r Xv1) Xz)) ((r Xz) Xv1)))
% Found (fun (x3:((and (Xq Xv1)) ((or ((r Xv1) Xy0)) ((r Xy0) Xv1)))) (x4:((and (Xq Xv1)) ((or ((r Xv1) Xz)) ((r Xz) Xv1))))=> x4) as proof of (((and (Xq Xv1)) ((or ((r Xv1) Xz)) ((r Xz) Xv1)))->((and (Xq Xv1)) ((or ((r Xv1) Xz)) ((r Xz) Xv1))))
% Found (fun (x3:((and (Xq Xv1)) ((or ((r Xv1) Xy0)) ((r Xy0) Xv1)))) (x4:((and (Xq Xv1)) ((or ((r Xv1) Xz)) ((r Xz) Xv1))))=> x4) as proof of (((and (Xq Xv1)) ((or ((r Xv1) Xy0)) ((r Xy0) Xv1)))->(((and (Xq Xv1)) ((or ((r Xv1) Xz)) ((r Xz) Xv1)))->((and (Xq Xv1)) ((or ((r Xv1) Xz)) ((r Xz) Xv1)))))
% Found (and_rect10 (fun (x3:((and (Xq Xv1)) ((or ((r Xv1) Xy0)) ((r Xy0) Xv1)))) (x4:((and (Xq Xv1)) ((or ((r Xv1) Xz)) ((r Xz) Xv1))))=> x4)) as proof of ((and (Xq Xv1)) ((or ((r Xv1) Xz)) ((r Xz) Xv1)))
% Found ((and_rect1 ((and (Xq Xv1)) ((or ((r Xv1) Xz)) ((r Xz) Xv1)))) (fun (x3:((and (Xq Xv1)) ((or ((r Xv1) Xy0)) ((r Xy0) Xv1)))) (x4:((and (Xq Xv1)) ((or ((r Xv1) Xz)) ((r Xz) Xv1))))=> x4)) as proof of ((and (Xq Xv1)) ((or ((r Xv1) Xz)) ((r Xz) Xv1)))
% Found (((fun (P:Type) (x3:(((and (Xq Xv1)) ((or ((r Xv1) Xy0)) ((r Xy0) Xv1)))->(((and (Xq Xv1)) ((or ((r Xv1) Xz)) ((r Xz) Xv1)))->P)))=> (((((and_rect ((and (Xq Xv1)) ((or ((r Xv1) Xy0)) ((r Xy0) Xv1)))) ((and (Xq Xv1)) ((or ((r Xv1) Xz)) ((r Xz) Xv1)))) P) x3) x2)) ((and (Xq Xv1)) ((or ((r Xv1) Xz)) ((r Xz) Xv1)))) (fun (x3:((and (Xq Xv1)) ((or ((r Xv1) Xy0)) ((r Xy0) Xv1)))) (x4:((and (Xq Xv1)) ((or ((r Xv1) Xz)) ((r Xz) Xv1))))=> x4)) as proof of ((and (Xq Xv1)) ((or ((r Xv1) Xz)) ((r Xz) Xv1)))
% Found (fun (x2:((and ((and (Xq Xv1)) ((or ((r Xv1) Xy0)) ((r Xy0) Xv1)))) ((and (Xq Xv1)) ((or ((r Xv1) Xz)) ((r Xz) Xv1)))))=> (((fun (P:Type) (x3:(((and (Xq Xv1)) ((or ((r Xv1) Xy0)) ((r Xy0) Xv1)))->(((and (Xq Xv1)) ((or ((r Xv1) Xz)) ((r Xz) Xv1)))->P)))=> (((((and_rect ((and (Xq Xv1)) ((or ((r Xv1) Xy0)) ((r Xy0) Xv1)))) ((and (Xq Xv1)) ((or ((r Xv1) Xz)) ((r Xz) Xv1)))) P) x3) x2)) ((and (Xq Xv1)) ((or ((r Xv1) Xz)) ((r Xz) Xv1)))) (fun (x3:((and (Xq Xv1)) ((or ((r Xv1) Xy0)) ((r Xy0) Xv1)))) (x4:((and (Xq Xv1)) ((or ((r Xv1) Xz)) ((r Xz) Xv1))))=> x4))) as proof of ((and (Xq Xv1)) ((or ((r Xv1) Xz)) ((r Xz) Xv1)))
% Found (fun (Xz:a) (x2:((and ((and (Xq Xv1)) ((or ((r Xv1) Xy0)) ((r Xy0) Xv1)))) ((and (Xq Xv1)) ((or ((r Xv1) Xz)) ((r Xz) Xv1)))))=> (((fun (P:Type) (x3:(((and (Xq Xv1)) ((or ((r Xv1) Xy0)) ((r Xy0) Xv1)))->(((and (Xq Xv1)) ((or ((r Xv1) Xz)) ((r Xz) Xv1)))->P)))=> (((((and_rect ((and (Xq Xv1)) ((or ((r Xv1) Xy0)) ((r Xy0) Xv1)))) ((and (Xq Xv1)) ((or ((r Xv1) Xz)) ((r Xz) Xv1)))) P) x3) x2)) ((and (Xq Xv1)) ((or ((r Xv1) Xz)) ((r Xz) Xv1)))) (fun (x3:((and (Xq Xv1)) ((or ((r Xv1) Xy0)) ((r Xy0) Xv1)))) (x4:((and (Xq Xv1)) ((or ((r Xv1) Xz)) ((r Xz) Xv1))))=> x4))) as proof of (((and ((and (Xq Xv1)) ((or ((r Xv1) Xy0)) ((r Xy0) Xv1)))) ((and (Xq Xv1)) ((or ((r Xv1) Xz)) ((r Xz) Xv1))))->((and (Xq Xv1)) ((or ((r Xv1) Xz)) ((r Xz) Xv1))))
% Found (fun (Xy0:a) (Xz:a) (x2:((and ((and (Xq Xv1)) ((or ((r Xv1) Xy0)) ((r Xy0) Xv1)))) ((and (Xq Xv1)) ((or ((r Xv1) Xz)) ((r Xz) Xv1)))))=> (((fun (P:Type) (x3:(((and (Xq Xv1)) ((or ((r Xv1) Xy0)) ((r Xy0) Xv1)))->(((and (Xq Xv1)) ((or ((r Xv1) Xz)) ((r Xz) Xv1)))->P)))=> (((((and_rect ((and (Xq Xv1)) ((or ((r Xv1) Xy0)) ((r Xy0) Xv1)))) ((and (Xq Xv1)) ((or ((r Xv1) Xz)) ((r Xz) Xv1)))) P) x3) x2)) ((and (Xq Xv1)) ((or ((r Xv1) Xz)) ((r Xz) Xv1)))) (fun (x3:((and (Xq Xv1)) ((or ((r Xv1) Xy0)) ((r Xy0) Xv1)))) (x4:((and (Xq Xv1)) ((or ((r Xv1) Xz)) ((r Xz) Xv1))))=> x4))) as proof of (forall (Xz:a), (((and ((and (Xq Xv1)) ((or ((r Xv1) Xy0)) ((r Xy0) Xv1)))) ((and (Xq Xv1)) ((or ((r Xv1) Xz)) ((r Xz) Xv1))))->((and (Xq Xv1)) ((or ((r Xv1) Xz)) ((r Xz) Xv1)))))
% Found (fun (Xx0:a) (Xy0:a) (Xz:a) (x2:((and ((and (Xq Xv1)) ((or ((r Xv1) Xy0)) ((r Xy0) Xv1)))) ((and (Xq Xv1)) ((or ((r Xv1) Xz)) ((r Xz) Xv1)))))=> (((fun (P:Type) (x3:(((and (Xq Xv1)) ((or ((r Xv1) Xy0)) ((r Xy0) Xv1)))->(((and (Xq Xv1)) ((or ((r Xv1) Xz)) ((r Xz) Xv1)))->P)))=> (((((and_rect ((and (Xq Xv1)) ((or ((r Xv1) Xy0)) ((r Xy0) Xv1)))) ((and (Xq Xv1)) ((or ((r Xv1) Xz)) ((r Xz) Xv1)))) P) x3) x2)) ((and (Xq Xv1)) ((or ((r Xv1) Xz)) ((r Xz) Xv1)))) (fun (x3:((and (Xq Xv1)) ((or ((r Xv1) Xy0)) ((r Xy0) Xv1)))) (x4:((and (Xq Xv1)) ((or ((r Xv1) Xz)) ((r Xz) Xv1))))=> x4))) as proof of (forall (Xy0:a) (Xz:a), (((and ((and (Xq Xv1)) ((or ((r Xv1) Xy0)) ((r Xy0) Xv1)))) ((and (Xq Xv1)) ((or ((r Xv1) Xz)) ((r Xz) Xv1))))->((and (Xq Xv1)) ((or ((r Xv1) Xz)) ((r Xz) Xv1)))))
% Found (fun (Xx0:a) (Xy0:a) (Xz:a) (x2:((and ((and (Xq Xv1)) ((or ((r Xv1) Xy0)) ((r Xy0) Xv1)))) ((and (Xq Xv1)) ((or ((r Xv1) Xz)) ((r Xz) Xv1)))))=> (((fun (P:Type) (x3:(((and (Xq Xv1)) ((or ((r Xv1) Xy0)) ((r Xy0) Xv1)))->(((and (Xq Xv1)) ((or ((r Xv1) Xz)) ((r Xz) Xv1)))->P)))=> (((((and_rect ((and (Xq Xv1)) ((or ((r Xv1) Xy0)) ((r Xy0) Xv1)))) ((and (Xq Xv1)) ((or ((r Xv1) Xz)) ((r Xz) Xv1)))) P) x3) x2)) ((and (Xq Xv1)) ((or ((r Xv1) Xz)) ((r Xz) Xv1)))) (fun (x3:((and (Xq Xv1)) ((or ((r Xv1) Xy0)) ((r Xy0) Xv1)))) (x4:((and (Xq Xv1)) ((or ((r Xv1) Xz)) ((r Xz) Xv1))))=> x4))) as proof of (a->(forall (Xy0:a) (Xz:a), (((and ((and (Xq Xv1)) ((or ((r Xv1) Xy0)) ((r Xy0) Xv1)))) ((and (Xq Xv1)) ((or ((r Xv1) Xz)) ((r Xz) Xv1))))->((and (Xq Xv1)) ((or ((r Xv1) Xz)) ((r Xz) Xv1))))))
% Found x4:((and (Xq Xv00)) ((or ((r Xv00) Xv)) ((r Xv) Xv00)))
% Found (fun (x4:((and (Xq Xv00)) ((or ((r Xv00) Xv)) ((r Xv) Xv00))))=> x4) as proof of ((and (Xq Xv00)) ((or ((r Xv00) Xv)) ((r Xv) Xv00)))
% Found (fun (x3:((and (Xq Xv00)) ((or ((r Xv00) Xv)) ((r Xv) Xv00)))) (x4:((and (Xq Xv00)) ((or ((r Xv00) Xv)) ((r Xv) Xv00))))=> x4) as proof of (((and (Xq Xv00)) ((or ((r Xv00) Xv)) ((r Xv) Xv00)))->((and (Xq Xv00)) ((or ((r Xv00) Xv)) ((r Xv) Xv00))))
% Found (fun (x3:((and (Xq Xv00)) ((or ((r Xv00) Xv)) ((r Xv) Xv00)))) (x4:((and (Xq Xv00)) ((or ((r Xv00) Xv)) ((r Xv) Xv00))))=> x4) as proof of (((and (Xq Xv00)) ((or ((r Xv00) Xv)) ((r Xv) Xv00)))->(((and (Xq Xv00)) ((or ((r Xv00) Xv)) ((r Xv) Xv00)))->((and (Xq Xv00)) ((or ((r Xv00) Xv)) ((r Xv) Xv00)))))
% Found (and_rect10 (fun (x3:((and (Xq Xv00)) ((or ((r Xv00) Xv)) ((r Xv) Xv00)))) (x4:((and (Xq Xv00)) ((or ((r Xv00) Xv)) ((r Xv) Xv00))))=> x4)) as proof of ((and (Xq Xv00)) ((or ((r Xv00) Xv)) ((r Xv) Xv00)))
% Found ((and_rect1 ((and (Xq Xv00)) ((or ((r Xv00) Xv)) ((r Xv) Xv00)))) (fun (x3:((and (Xq Xv00)) ((or ((r Xv00) Xv)) ((r Xv) Xv00)))) (x4:((and (Xq Xv00)) ((or ((r Xv00) Xv)) ((r Xv) Xv00))))=> x4)) as proof of ((and (Xq Xv00)) ((or ((r Xv00) Xv)) ((r Xv) Xv00)))
% Found (((fun (P:Type) (x3:(((and (Xq Xv00)) ((or ((r Xv00) Xv)) ((r Xv) Xv00)))->(((and (Xq Xv00)) ((or ((r Xv00) Xv)) ((r Xv) Xv00)))->P)))=> (((((and_rect ((and (Xq Xv00)) ((or ((r Xv00) Xv)) ((r Xv) Xv00)))) ((and (Xq Xv00)) ((or ((r Xv00) Xv)) ((r Xv) Xv00)))) P) x3) x2)) ((and (Xq Xv00)) ((or ((r Xv00) Xv)) ((r Xv) Xv00)))) (fun (x3:((and (Xq Xv00)) ((or ((r Xv00) Xv)) ((r Xv) Xv00)))) (x4:((and (Xq Xv00)) ((or ((r Xv00) Xv)) ((r Xv) Xv00))))=> x4)) as proof of ((and (Xq Xv00)) ((or ((r Xv00) Xv)) ((r Xv) Xv00)))
% Found (fun (x2:((and ((and (Xq Xv00)) ((or ((r Xv00) Xv)) ((r Xv) Xv00)))) ((and (Xq Xv00)) ((or ((r Xv00) Xv)) ((r Xv) Xv00)))))=> (((fun (P:Type) (x3:(((and (Xq Xv00)) ((or ((r Xv00) Xv)) ((r Xv) Xv00)))->(((and (Xq Xv00)) ((or ((r Xv00) Xv)) ((r Xv) Xv00)))->P)))=> (((((and_rect ((and (Xq Xv00)) ((or ((r Xv00) Xv)) ((r Xv) Xv00)))) ((and (Xq Xv00)) ((or ((r Xv00) Xv)) ((r Xv) Xv00)))) P) x3) x2)) ((and (Xq Xv00)) ((or ((r Xv00) Xv)) ((r Xv) Xv00)))) (fun (x3:((and (Xq Xv00)) ((or ((r Xv00) Xv)) ((r Xv) Xv00)))) (x4:((and (Xq Xv00)) ((or ((r Xv00) Xv)) ((r Xv) Xv00))))=> x4))) as proof of ((and (Xq Xv00)) ((or ((r Xv00) Xv)) ((r Xv) Xv00)))
% Found (fun (Xz:a) (x2:((and ((and (Xq Xv00)) ((or ((r Xv00) Xv)) ((r Xv) Xv00)))) ((and (Xq Xv00)) ((or ((r Xv00) Xv)) ((r Xv) Xv00)))))=> (((fun (P:Type) (x3:(((and (Xq Xv00)) ((or ((r Xv00) Xv)) ((r Xv) Xv00)))->(((and (Xq Xv00)) ((or ((r Xv00) Xv)) ((r Xv) Xv00)))->P)))=> (((((and_rect ((and (Xq Xv00)) ((or ((r Xv00) Xv)) ((r Xv) Xv00)))) ((and (Xq Xv00)) ((or ((r Xv00) Xv)) ((r Xv) Xv00)))) P) x3) x2)) ((and (Xq Xv00)) ((or ((r Xv00) Xv)) ((r Xv) Xv00)))) (fun (x3:((and (Xq Xv00)) ((or ((r Xv00) Xv)) ((r Xv) Xv00)))) (x4:((and (Xq Xv00)) ((or ((r Xv00) Xv)) ((r Xv) Xv00))))=> x4))) as proof of (((and ((and (Xq Xv00)) ((or ((r Xv00) Xv)) ((r Xv) Xv00)))) ((and (Xq Xv00)) ((or ((r Xv00) Xv)) ((r Xv) Xv00))))->((and (Xq Xv00)) ((or ((r Xv00) Xv)) ((r Xv) Xv00))))
% Found (fun (Xy0:a) (Xz:a) (x2:((and ((and (Xq Xv00)) ((or ((r Xv00) Xv)) ((r Xv) Xv00)))) ((and (Xq Xv00)) ((or ((r Xv00) Xv)) ((r Xv) Xv00)))))=> (((fun (P:Type) (x3:(((and (Xq Xv00)) ((or ((r Xv00) Xv)) ((r Xv) Xv00)))->(((and (Xq Xv00)) ((or ((r Xv00) Xv)) ((r Xv) Xv00)))->P)))=> (((((and_rect ((and (Xq Xv00)) ((or ((r Xv00) Xv)) ((r Xv) Xv00)))) ((and (Xq Xv00)) ((or ((r Xv00) Xv)) ((r Xv) Xv00)))) P) x3) x2)) ((and (Xq Xv00)) ((or ((r Xv00) Xv)) ((r Xv) Xv00)))) (fun (x3:((and (Xq Xv00)) ((or ((r Xv00) Xv)) ((r Xv) Xv00)))) (x4:((and (Xq Xv00)) ((or ((r Xv00) Xv)) ((r Xv) Xv00))))=> x4))) as proof of (a->(((and ((and (Xq Xv00)) ((or ((r Xv00) Xv)) ((r Xv) Xv00)))) ((and (Xq Xv00)) ((or ((r Xv00) Xv)) ((r Xv) Xv00))))->((and (Xq Xv00)) ((or ((r Xv00) Xv)) ((r Xv) Xv00)))))
% Found (fun (Xx0:a) (Xy0:a) (Xz:a) (x2:((and ((and (Xq Xv00)) ((or ((r Xv00) Xv)) ((r Xv) Xv00)))) ((and (Xq Xv00)) ((or ((r Xv00) Xv)) ((r Xv) Xv00)))))=> (((fun (P:Type) (x3:(((and (Xq Xv00)) ((or ((r Xv00) Xv)) ((r Xv) Xv00)))->(((and (Xq Xv00)) ((or ((r Xv00) Xv)) ((r Xv) Xv00)))->P)))=> (((((and_rect ((and (Xq Xv00)) ((or ((r Xv00) Xv)) ((r Xv) Xv00)))) ((and (Xq Xv00)) ((or ((r Xv00) Xv)) ((r Xv) Xv00)))) P) x3) x2)) ((and (Xq Xv00)) ((or ((r Xv00) Xv)) ((r Xv) Xv00)))) (fun (x3:((and (Xq Xv00)) ((or ((r Xv00) Xv)) ((r Xv) Xv00)))) (x4:((and (Xq Xv00)) ((or ((r Xv00) Xv)) ((r Xv) Xv00))))=> x4))) as proof of (a->(a->(((and ((and (Xq Xv00)) ((or ((r Xv00) Xv)) ((r Xv) Xv00)))) ((and (Xq Xv00)) ((or ((r Xv00) Xv)) ((r Xv) Xv00))))->((and (Xq Xv00)) ((or ((r Xv00) Xv)) ((r Xv) Xv00))))))
% Found (fun (Xx0:a) (Xy0:a) (Xz:a) (x2:((and ((and (Xq Xv00)) ((or ((r Xv00) Xv)) ((r Xv) Xv00)))) ((and (Xq Xv00)) ((or ((r Xv00) Xv)) ((r Xv) Xv00)))))=> (((fun (P:Type) (x3:(((and (Xq Xv00)) ((or ((r Xv00) Xv)) ((r Xv) Xv00)))->(((and (Xq Xv00)) ((or ((r Xv00) Xv)) ((r Xv) Xv00)))->P)))=> (((((and_rect ((and (Xq Xv00)) ((or ((r Xv00) Xv)) ((r Xv) Xv00)))) ((and (Xq Xv00)) ((or ((r Xv00) Xv)) ((r Xv) Xv00)))) P) x3) x2)) ((and (Xq Xv00)) ((or ((r Xv00) Xv)) ((r Xv) Xv00)))) (fun (x3:((and (Xq Xv00)) ((or ((r Xv00) Xv)) ((r Xv) Xv00)))) (x4:((and (Xq Xv00)) ((or ((r Xv00) Xv)) ((r Xv) Xv00))))=> x4))) as proof of (a->(a->(a->(((and ((and (Xq Xv00)) ((or ((r Xv00) Xv)) ((r Xv) Xv00)))) ((and (Xq Xv00)) ((or ((r Xv00) Xv)) ((r Xv) Xv00))))->((and (Xq Xv00)) ((or ((r Xv00) Xv)) ((r Xv) Xv00)))))))
% Found x2:((r Xx0) Xy0)
% Instantiate: Xv1:=Xy0:a
% Found x2 as proof of ((r Xv0) Xv1)
% Found (or_intror00 x2) as proof of ((or ((r Xv1) Xv0)) ((r Xv0) Xv1))
% Found ((or_intror0 ((r Xv0) Xv1)) x2) as proof of ((or ((r Xv1) Xv0)) ((r Xv0) Xv1))
% Found (((or_intror ((r Xv1) Xv0)) ((r Xv0) Xv1)) x2) as proof of ((or ((r Xv1) Xv0)) ((r Xv0) Xv1))
% Found (((or_intror ((r Xv1) Xv0)) ((r Xv0) Xv1)) x2) as proof of ((or ((r Xv1) Xv0)) ((r Xv0) Xv1))
% Found x2:((r Xx0) Xy0)
% Instantiate: Xv1:=Xx0:a
% Found x2 as proof of ((r Xv1) Xy0)
% Found (or_introl00 x2) as proof of ((or ((r Xv1) Xy0)) ((r Xy0) Xv1))
% Found ((or_introl0 ((r Xy0) Xv1)) x2) as proof of ((or ((r Xv1) Xy0)) ((r Xy0) Xv1))
% Found (((or_introl ((r Xv1) Xy0)) ((r Xy0) Xv1)) x2) as proof of ((or ((r Xv1) Xy0)) ((r Xy0) Xv1))
% Found (((or_introl ((r Xv1) Xy0)) ((r Xy0) Xv1)) x2) as proof of ((or ((r Xv1) Xy0)) ((r Xy0) Xv1))
% Found x2:((r Xx0) Xy0)
% Instantiate: Xv00:=Xy0:a
% Found x2 as proof of ((r Xv) Xv00)
% Found (or_intror00 x2) as proof of ((or ((r Xv00) Xv)) ((r Xv) Xv00))
% Found ((or_intror0 ((r Xv) Xv00)) x2) as proof of ((or ((r Xv00) Xv)) ((r Xv) Xv00))
% Found (((or_intror ((r Xv00) Xv)) ((r Xv) Xv00)) x2) as proof of ((or ((r Xv00) Xv)) ((r Xv) Xv00))
% Found (((or_intror ((r Xv00) Xv)) ((r Xv) Xv00)) x2) as proof of ((or ((r Xv00) Xv)) ((r Xv) Xv00))
% Found x2:((r Xx0) Xy0)
% Instantiate: Xv0:=Xy0:a
% Found x2 as proof of ((r Xx0) Xv0)
% Found (or_introl00 x2) as proof of ((or ((r Xx0) Xv0)) ((r Xv0) Xx0))
% Found ((or_introl0 ((r Xv0) Xx0)) x2) as proof of ((or ((r Xx0) Xv0)) ((r Xv0) Xx0))
% Found (((or_introl ((r Xx0) Xv0)) ((r Xv0) Xx0)) x2) as proof of ((or ((r Xx0) Xv0)) ((r Xv0) Xx0))
% Found (((or_introl ((r Xx0) Xv0)) ((r Xv0) Xx0)) x2) as proof of ((or ((r Xx0) Xv0)) ((r Xv0) Xx0))
% Found (or_comm_i10 (((or_introl ((r Xx0) Xv0)) ((r Xv0) Xx0)) x2)) as proof of ((or ((r Xv0) Xx0)) ((r Xx0) Xv0))
% Found ((or_comm_i1 ((r Xv0) Xx0)) (((or_introl ((r Xx0) Xv0)) ((r Xv0) Xx0)) x2)) as proof of ((or ((r Xv0) Xx0)) ((r Xx0) Xv0))
% Found (((or_comm_i ((r Xx0) Xv0)) ((r Xv0) Xx0)) (((or_introl ((r Xx0) Xv0)) ((r Xv0) Xx0)) x2)) as proof of ((or ((r Xv0) Xx0)) ((r Xx0) Xv0))
% Found (fun (x2:((r Xx0) Xy0))=> (((or_comm_i ((r Xx0) Xv0)) ((r Xv0) Xx0)) (((or_introl ((r Xx0) Xv0)) ((r Xv0) Xx0)) x2))) as proof of ((or ((r Xv0) Xx0)) ((r Xx0) Xv0))
% Found x3:((r Xv1) Xx0)
% Found (fun (x4:((r Xv1) Xy0))=> x3) as proof of ((r Xv1) Xx0)
% Found (fun (x3:((r Xv1) Xx0)) (x4:((r Xv1) Xy0))=> x3) as proof of (((r Xv1) Xy0)->((r Xv1) Xx0))
% Found (fun (x3:((r Xv1) Xx0)) (x4:((r Xv1) Xy0))=> x3) as proof of (((r Xv1) Xx0)->(((r Xv1) Xy0)->((r Xv1) Xx0)))
% Found (and_rect10 (fun (x3:((r Xv1) Xx0)) (x4:((r Xv1) Xy0))=> x3)) as proof of ((r Xv1) Xx0)
% Found ((and_rect1 ((r Xv1) Xx0)) (fun (x3:((r Xv1) Xx0)) (x4:((r Xv1) Xy0))=> x3)) as proof of ((r Xv1) Xx0)
% Found (((fun (P:Type) (x3:(((r Xv1) Xx0)->(((r Xv1) Xy0)->P)))=> (((((and_rect ((r Xv1) Xx0)) ((r Xv1) Xy0)) P) x3) x2)) ((r Xv1) Xx0)) (fun (x3:((r Xv1) Xx0)) (x4:((r Xv1) Xy0))=> x3)) as proof of ((r Xv1) Xx0)
% Found (fun (x2:((and ((r Xv1) Xx0)) ((r Xv1) Xy0)))=> (((fun (P:Type) (x3:(((r Xv1) Xx0)->(((r Xv1) Xy0)->P)))=> (((((and_rect ((r Xv1) Xx0)) ((r Xv1) Xy0)) P) x3) x2)) ((r Xv1) Xx0)) (fun (x3:((r Xv1) Xx0)) (x4:((r Xv1) Xy0))=> x3))) as proof of ((r Xv1) Xx0)
% Found (fun (Xz:a) (x2:((and ((r Xv1) Xx0)) ((r Xv1) Xy0)))=> (((fun (P:Type) (x3:(((r Xv1) Xx0)->(((r Xv1) Xy0)->P)))=> (((((and_rect ((r Xv1) Xx0)) ((r Xv1) Xy0)) P) x3) x2)) ((r Xv1) Xx0)) (fun (x3:((r Xv1) Xx0)) (x4:((r Xv1) Xy0))=> x3))) as proof of (((and ((r Xv1) Xx0)) ((r Xv1) Xy0))->((r Xv1) Xx0))
% Found (fun (Xy0:a) (Xz:a) (x2:((and ((r Xv1) Xx0)) ((r Xv1) Xy0)))=> (((fun (P:Type) (x3:(((r Xv1) Xx0)->(((r Xv1) Xy0)->P)))=> (((((and_rect ((r Xv1) Xx0)) ((r Xv1) Xy0)) P) x3) x2)) ((r Xv1) Xx0)) (fun (x3:((r Xv1) Xx0)) (x4:((r Xv1) Xy0))=> x3))) as proof of (a->(((and ((r Xv1) Xx0)) ((r Xv1) Xy0))->((r Xv1) Xx0)))
% Found (fun (Xx0:a) (Xy0:a) (Xz:a) (x2:((and ((r Xv1) Xx0)) ((r Xv1) Xy0)))=> (((fun (P:Type) (x3:(((r Xv1) Xx0)->(((r Xv1) Xy0)->P)))=> (((((and_rect ((r Xv1) Xx0)) ((r Xv1) Xy0)) P) x3) x2)) ((r Xv1) Xx0)) (fun (x3:((r Xv1) Xx0)) (x4:((r Xv1) Xy0))=> x3))) as proof of (forall (Xy0:a), (a->(((and ((r Xv1) Xx0)) ((r Xv1) Xy0))->((r Xv1) Xx0))))
% Found (fun (Xx0:a) (Xy0:a) (Xz:a) (x2:((and ((r Xv1) Xx0)) ((r Xv1) Xy0)))=> (((fun (P:Type) (x3:(((r Xv1) Xx0)->(((r Xv1) Xy0)->P)))=> (((((and_rect ((r Xv1) Xx0)) ((r Xv1) Xy0)) P) x3) x2)) ((r Xv1) Xx0)) (fun (x3:((r Xv1) Xx0)) (x4:((r Xv1) Xy0))=> x3))) as proof of (forall (Xx0:a) (Xy0:a), (a->(((and ((r Xv1) Xx0)) ((r Xv1) Xy0))->((r Xv1) Xx0))))
% Found x3:((r Xx0) Xv1)
% Found (fun (x4:((r Xy0) Xv1))=> x3) as proof of ((r Xx0) Xv1)
% Found (fun (x3:((r Xx0) Xv1)) (x4:((r Xy0) Xv1))=> x3) as proof of (((r Xy0) Xv1)->((r Xx0) Xv1))
% Found (fun (x3:((r Xx0) Xv1)) (x4:((r Xy0) Xv1))=> x3) as proof of (((r Xx0) Xv1)->(((r Xy0) Xv1)->((r Xx0) Xv1)))
% Found (and_rect10 (fun (x3:((r Xx0) Xv1)) (x4:((r Xy0) Xv1))=> x3)) as proof of ((r Xx0) Xv1)
% Found ((and_rect1 ((r Xx0) Xv1)) (fun (x3:((r Xx0) Xv1)) (x4:((r Xy0) Xv1))=> x3)) as proof of ((r Xx0) Xv1)
% Found (((fun (P:Type) (x3:(((r Xx0) Xv1)->(((r Xy0) Xv1)->P)))=> (((((and_rect ((r Xx0) Xv1)) ((r Xy0) Xv1)) P) x3) x2)) ((r Xx0) Xv1)) (fun (x3:((r Xx0) Xv1)) (x4:((r Xy0) Xv1))=> x3)) as proof of ((r Xx0) Xv1)
% Found (fun (x2:((and ((r Xx0) Xv1)) ((r Xy0) Xv1)))=> (((fun (P:Type) (x3:(((r Xx0) Xv1)->(((r Xy0) Xv1)->P)))=> (((((and_rect ((r Xx0) Xv1)) ((r Xy0) Xv1)) P) x3) x2)) ((r Xx0) Xv1)) (fun (x3:((r Xx0) Xv1)) (x4:((r Xy0) Xv1))=> x3))) as proof of ((r Xx0) Xv1)
% Found (fun (Xz:a) (x2:((and ((r Xx0) Xv1)) ((r Xy0) Xv1)))=> (((fun (P:Type) (x3:(((r Xx0) Xv1)->(((r Xy0) Xv1)->P)))=> (((((and_rect ((r Xx0) Xv1)) ((r Xy0) Xv1)) P) x3) x2)) ((r Xx0) Xv1)) (fun (x3:((r Xx0) Xv1)) (x4:((r Xy0) Xv1))=> x3))) as proof of (((and ((r Xx0) Xv1)) ((r Xy0) Xv1))->((r Xx0) Xv1))
% Found (fun (Xy0:a) (Xz:a) (x2:((and ((r Xx0) Xv1)) ((r Xy0) Xv1)))=> (((fun (P:Type) (x3:(((r Xx0) Xv1)->(((r Xy0) Xv1)->P)))=> (((((and_rect ((r Xx0) Xv1)) ((r Xy0) Xv1)) P) x3) x2)) ((r Xx0) Xv1)) (fun (x3:((r Xx0) Xv1)) (x4:((r Xy0) Xv1))=> x3))) as proof of (a->(((and ((r Xx0) Xv1)) ((r Xy0) Xv1))->((r Xx0) Xv1)))
% Found (fun (Xx0:a) (Xy0:a) (Xz:a) (x2:((and ((r Xx0) Xv1)) ((r Xy0) Xv1)))=> (((fun (P:Type) (x3:(((r Xx0) Xv1)->(((r Xy0) Xv1)->P)))=> (((((and_rect ((r Xx0) Xv1)) ((r Xy0) Xv1)) P) x3) x2)) ((r Xx0) Xv1)) (fun (x3:((r Xx0) Xv1)) (x4:((r Xy0) Xv1))=> x3))) as proof of (forall (Xy0:a), (a->(((and ((r Xx0) Xv1)) ((r Xy0) Xv1))->((r Xx0) Xv1))))
% Found (fun (Xx0:a) (Xy0:a) (Xz:a) (x2:((and ((r Xx0) Xv1)) ((r Xy0) Xv1)))=> (((fun (P:Type) (x3:(((r Xx0) Xv1)->(((r Xy0) Xv1)->P)))=> (((((and_rect ((r Xx0) Xv1)) ((r Xy0) Xv1)) P) x3) x2)) ((r Xx0) Xv1)) (fun (x3:((r Xx0) Xv1)) (x4:((r Xy0) Xv1))=> x3))) as proof of (forall (Xx0:a) (Xy0:a), (a->(((and ((r Xx0) Xv1)) ((r Xy0) Xv1))->((r Xx0) Xv1))))
% Found x2:((and (Xq Xv2)) ((or ((r Xv2) Xv1)) ((r Xv1) Xv2)))
% Found (fun (x2:((and (Xq Xv2)) ((or ((r Xv2) Xv1)) ((r Xv1) Xv2))))=> x2) as proof of ((and (Xq Xv2)) ((or ((r Xv2) Xv1)) ((r Xv1) Xv2)))
% Found (fun (Xy0:a) (x2:((and (Xq Xv2)) ((or ((r Xv2) Xv1)) ((r Xv1) Xv2))))=> x2) as proof of (((and (Xq Xv2)) ((or ((r Xv2) Xv1)) ((r Xv1) Xv2)))->((and (Xq Xv2)) ((or ((r Xv2) Xv1)) ((r Xv1) Xv2))))
% Found (fun (Xx0:a) (Xy0:a) (x2:((and (Xq Xv2)) ((or ((r Xv2) Xv1)) ((r Xv1) Xv2))))=> x2) as proof of (a->(((and (Xq Xv2)) ((or ((r Xv2) Xv1)) ((r Xv1) Xv2)))->((and (Xq Xv2)) ((or ((r Xv2) Xv1)) ((r Xv1) Xv2)))))
% Found (fun (Xx0:a) (Xy0:a) (x2:((and (Xq Xv2)) ((or ((r Xv2) Xv1)) ((r Xv1) Xv2))))=> x2) as proof of (a->(a->(((and (Xq Xv2)) ((or ((r Xv2) Xv1)) ((r Xv1) Xv2)))->((and (Xq Xv2)) ((or ((r Xv2) Xv1)) ((r Xv1) Xv2))))))
% Found x2:((r Xx0) Xy0)
% Instantiate: Xv1:=Xy0:a;Xv2:=Xx0:a
% Found x2 as proof of ((r Xv2) Xv1)
% Found (or_introl00 x2) as proof of ((or ((r Xv2) Xv1)) ((r Xv1) Xv2))
% Found ((or_introl0 ((r Xv1) Xv2)) x2) as proof of ((or ((r Xv2) Xv1)) ((r Xv1) Xv2))
% Found (((or_introl ((r Xv2) Xv1)) ((r Xv1) Xv2)) x2) as proof of ((or ((r Xv2) Xv1)) ((r Xv1) Xv2))
% Found (((or_introl ((r Xv2) Xv1)) ((r Xv1) Xv2)) x2) as proof of ((or ((r Xv2) Xv1)) ((r Xv1) Xv2))
% Found x2:((r Xx0) Xy0)
% Instantiate: Xv2:=Xy0:a
% Found x2 as proof of ((r Xv1) Xv2)
% Found (or_intror00 x2) as proof of ((or ((r Xv2) Xv1)) ((r Xv1) Xv2))
% Found ((or_intror0 ((r Xv1) Xv2)) x2) as proof of ((or ((r Xv2) Xv1)) ((r Xv1) Xv2))
% Found (((or_intror ((r Xv2) Xv1)) ((r Xv1) Xv2)) x2) as proof of ((or ((r Xv2) Xv1)) ((r Xv1) Xv2))
% Found (((or_intror ((r Xv2) Xv1)) ((r Xv1) Xv2)) x2) as proof of ((or ((r Xv2) Xv1)) ((r Xv1) Xv2))
% Found x2:((r Xx0) Xy0)
% Instantiate: Xv1:=Xy0:a;Xv0:=Xx0:a
% Found x2 as proof of ((r Xv0) Xv1)
% Found (or_intror00 x2) as proof of ((or ((r Xv1) Xv0)) ((r Xv0) Xv1))
% Found ((or_intror0 ((r Xv0) Xv1)) x2) as proof of ((or ((r Xv1) Xv0)) ((r Xv0) Xv1))
% Found (((or_intror ((r Xv1) Xv0)) ((r Xv0) Xv1)) x2) as proof of ((or ((r Xv1) Xv0)) ((r Xv0) Xv1))
% Found (((or_intror ((r Xv1) Xv0)) ((r Xv0) Xv1)) x2) as proof of ((or ((r Xv1) Xv0)) ((r Xv0) Xv1))
% Found x2:((r Xx0) Xy0)
% Instantiate: Xv1:=Xy0:a
% Found x2 as proof of ((r Xv0) Xv1)
% Found (or_intror00 x2) as proof of ((or ((r Xv1) Xv0)) ((r Xv0) Xv1))
% Found ((or_intror0 ((r Xv0) Xv1)) x2) as proof of ((or ((r Xv1) Xv0)) ((r Xv0) Xv1))
% Found (((or_intror ((r Xv1) Xv0)) ((r Xv0) Xv1)) x2) as proof of ((or ((r Xv1) Xv0)) ((r Xv0) Xv1))
% Found (((or_intror ((r Xv1) Xv0)) ((r Xv0) Xv1)) x2) as proof of ((or ((r Xv1) Xv0)) ((r Xv0) Xv1))
% Found x2:((r Xx0) Xy0)
% Instantiate: Xv1:=Xy0:a
% Found x2 as proof of ((r Xx0) Xv1)
% Found (or_introl00 x2) as proof of ((or ((r Xx0) Xv1)) ((r Xv1) Xx0))
% Found ((or_introl0 ((r Xv1) Xx0)) x2) as proof of ((or ((r Xx0) Xv1)) ((r Xv1) Xx0))
% Found (((or_introl ((r Xx0) Xv1)) ((r Xv1) Xx0)) x2) as proof of ((or ((r Xx0) Xv1)) ((r Xv1) Xx0))
% Found (((or_introl ((r Xx0) Xv1)) ((r Xv1) Xx0)) x2) as proof of ((or ((r Xx0) Xv1)) ((r Xv1) Xx0))
% Found (or_comm_i10 (((or_introl ((r Xx0) Xv1)) ((r Xv1) Xx0)) x2)) as proof of ((or ((r Xv1) Xx0)) ((r Xx0) Xv1))
% Found ((or_comm_i1 ((r Xv1) Xx0)) (((or_introl ((r Xx0) Xv1)) ((r Xv1) Xx0)) x2)) as proof of ((or ((r Xv1) Xx0)) ((r Xx0) Xv1))
% Found (((or_comm_i ((r Xx0) Xv1)) ((r Xv1) Xx0)) (((or_introl ((r Xx0) Xv1)) ((r Xv1) Xx0)) x2)) as proof of ((or ((r Xv1) Xx0)) ((r Xx0) Xv1))
% Found (fun (x2:((r Xx0) Xy0))=> (((or_comm_i ((r Xx0) Xv1)) ((r Xv1) Xx0)) (((or_introl ((r Xx0) Xv1)) ((r Xv1) Xx0)) x2))) as proof of ((or ((r Xv1) Xx0)) ((r Xx0) Xv1))
% Found x2:((r Xx0) Xy0)
% Instantiate: Xv1:=Xy0:a;Xv2:=Xx0:a
% Found x2 as proof of ((r Xv2) Xv1)
% Found (or_introl00 x2) as proof of ((or ((r Xv2) Xv1)) ((r Xv1) Xv2))
% Found ((or_introl0 ((r Xv1) Xv2)) x2) as proof of ((or ((r Xv2) Xv1)) ((r Xv1) Xv2))
% Found (((or_introl ((r Xv2) Xv1)) ((r Xv1) Xv2)) x2) as proof of ((or ((r Xv2) Xv1)) ((r Xv1) Xv2))
% Found (((or_introl ((r Xv2) Xv1)) ((r Xv1) Xv2)) x2) as proof of ((or ((r Xv2) Xv1)) ((r Xv1) Xv2))
% Found x2:((r Xx0) Xy0)
% Instantiate: Xv1:=Xx0:a;Xv2:=Xy0:a
% Found x2 as proof of ((r Xv1) Xv2)
% Found (or_intror00 x2) as proof of ((or ((r Xv2) Xv1)) ((r Xv1) Xv2))
% Found ((or_intror0 ((r Xv1) Xv2)) x2) as proof of ((or ((r Xv2) Xv1)) ((r Xv1) Xv2))
% Found (((or_intror ((r Xv2) Xv1)) ((r Xv1) Xv2)) x2) as proof of ((or ((r Xv2) Xv1)) ((r Xv1) Xv2))
% Found (((or_intror ((r Xv2) Xv1)) ((r Xv1) Xv2)) x2) as proof of ((or ((r Xv2) Xv1)) ((r Xv1) Xv2))
% Found x2:((r Xx0) Xy0)
% Instantiate: Xv2:=Xy0:a
% Found x2 as proof of ((r Xv1) Xv2)
% Found (or_intror00 x2) as proof of ((or ((r Xv2) Xv1)) ((r Xv1) Xv2))
% Found ((or_intror0 ((r Xv1) Xv2)) x2) as proof of ((or ((r Xv2) Xv1)) ((r Xv1) Xv2))
% Found (((or_intror ((r Xv2) Xv1)) ((r Xv1) Xv2)) x2) as proof of ((or ((r Xv2) Xv1)) ((r Xv1) Xv2))
% Found (((or_intror ((r Xv2) Xv1)) ((r Xv1) Xv2)) x2) as proof of ((or ((r Xv2) Xv1)) ((r Xv1) Xv2))
% Found x2:((r Xx0) Xy0)
% Instantiate: Xv2:=Xy0:a
% Found x2 as proof of ((r Xv1) Xv2)
% Found (or_intror00 x2) as proof of ((or ((r Xv2) Xv1)) ((r Xv1) Xv2))
% Found ((or_intror0 ((r Xv1) Xv2)) x2) as proof of ((or ((r Xv2) Xv1)) ((r Xv1) Xv2))
% Found (((or_intror ((r Xv2) Xv1)) ((r Xv1) Xv2)) x2) as proof of ((or ((r Xv2) Xv1)) ((r Xv1) Xv2))
% Found (((or_intror ((r Xv2) Xv1)) ((r Xv1) Xv2)) x2) as proof of ((or ((r Xv2) Xv1)) ((r Xv1) Xv2))
% Found x4:((and (Xq Xv2)) ((or ((r Xv2) Xv1)) ((r Xv1) Xv2)))
% Found (fun (x4:((and (Xq Xv2)) ((or ((r Xv2) Xv1)) ((r Xv1) Xv2))))=> x4) as proof of ((and (Xq Xv2)) ((or ((r Xv2) Xv1)) ((r Xv1) Xv2)))
% Found (fun (x3:((and (Xq Xv2)) ((or ((r Xv2) Xv1)) ((r Xv1) Xv2)))) (x4:((and (Xq Xv2)) ((or ((r Xv2) Xv1)) ((r Xv1) Xv2))))=> x4) as proof of (((and (Xq Xv2)) ((or ((r Xv2) Xv1)) ((r Xv1) Xv2)))->((and (Xq Xv2)) ((or ((r Xv2) Xv1)) ((r Xv1) Xv2))))
% Found (fun (x3:((and (Xq Xv2)) ((or ((r Xv2) Xv1)) ((r Xv1) Xv2)))) (x4:((and (Xq Xv2)) ((or ((r Xv2) Xv1)) ((r Xv1) Xv2))))=> x4) as proof of (((and (Xq Xv2)) ((or ((r Xv2) Xv1)) ((r Xv1) Xv2)))->(((and (Xq Xv2)) ((or ((r Xv2) Xv1)) ((r Xv1) Xv2)))->((and (Xq Xv2)) ((or ((r Xv2) Xv1)) ((r Xv1) Xv2)))))
% Found (and_rect10 (fun (x3:((and (Xq Xv2)) ((or ((r Xv2) Xv1)) ((r Xv1) Xv2)))) (x4:((and (Xq Xv2)) ((or ((r Xv2) Xv1)) ((r Xv1) Xv2))))=> x4)) as proof of ((and (Xq Xv2)) ((or ((r Xv2) Xv1)) ((r Xv1) Xv2)))
% Found ((and_rect1 ((and (Xq Xv2)) ((or ((r Xv2) Xv1)) ((r Xv1) Xv2)))) (fun (x3:((and (Xq Xv2)) ((or ((r Xv2) Xv1)) ((r Xv1) Xv2)))) (x4:((and (Xq Xv2)) ((or ((r Xv2) Xv1)) ((r Xv1) Xv2))))=> x4)) as proof of ((and (Xq Xv2)) ((or ((r Xv2) Xv1)) ((r Xv1) Xv2)))
% Found (((fun (P:Type) (x3:(((and (Xq Xv2)) ((or ((r Xv2) Xv1)) ((r Xv1) Xv2)))->(((and (Xq Xv2)) ((or ((r Xv2) Xv1)) ((r Xv1) Xv2)))->P)))=> (((((and_rect ((and (Xq Xv2)) ((or ((r Xv2) Xv1)) ((r Xv1) Xv2)))) ((and (Xq Xv2)) ((or ((r Xv2) Xv1)) ((r Xv1) Xv2)))) P) x3) x2)) ((and (Xq Xv2)) ((or ((r Xv2) Xv1)) ((r Xv1) Xv2)))) (fun (x3:((and (Xq Xv2)) ((or ((r Xv2) Xv1)) ((r Xv1) Xv2)))) (x4:((and (Xq Xv2)) ((or ((r Xv2) Xv1)) ((r Xv1) Xv2))))=> x4)) as proof of ((and (Xq Xv2)) ((or ((r Xv2) Xv1)) ((r Xv1) Xv2)))
% Found (fun (x2:((and ((and (Xq Xv2)) ((or ((r Xv2) Xv1)) ((r Xv1) Xv2)))) ((and (Xq Xv2)) ((or ((r Xv2) Xv1)) ((r Xv1) Xv2)))))=> (((fun (P:Type) (x3:(((and (Xq Xv2)) ((or ((r Xv2) Xv1)) ((r Xv1) Xv2)))->(((and (Xq Xv2)) ((or ((r Xv2) Xv1)) ((r Xv1) Xv2)))->P)))=> (((((and_rect ((and (Xq Xv2)) ((or ((r Xv2) Xv1)) ((r Xv1) Xv2)))) ((and (Xq Xv2)) ((or ((r Xv2) Xv1)) ((r Xv1) Xv2)))) P) x3) x2)) ((and (Xq Xv2)) ((or ((r Xv2) Xv1)) ((r Xv1) Xv2)))) (fun (x3:((and (Xq Xv2)) ((or ((r Xv2) Xv1)) ((r Xv1) Xv2)))) (x4:((and (Xq Xv2)) ((or ((r Xv2) Xv1)) ((r Xv1) Xv2))))=> x4))) as proof of ((and (Xq Xv2)) ((or ((r Xv2) Xv1)) ((r Xv1) Xv2)))
% Found (fun (Xz:a) (x2:((and ((and (Xq Xv2)) ((or ((r Xv2) Xv1)) ((r Xv1) Xv2)))) ((and (Xq Xv2)) ((or ((r Xv2) Xv1)) ((r Xv1) Xv2)))))=> (((fun (P:Type) (x3:(((and (Xq Xv2)) ((or ((r Xv2) Xv1)) ((r Xv1) Xv2)))->(((and (Xq Xv2)) ((or ((r Xv2) Xv1)) ((r Xv1) Xv2)))->P)))=> (((((and_rect ((and (Xq Xv2)) ((or ((r Xv2) Xv1)) ((r Xv1) Xv2)))) ((and (Xq Xv2)) ((or ((r Xv2) Xv1)) ((r Xv1) Xv2)))) P) x3) x2)) ((and (Xq Xv2)) ((or ((r Xv2) Xv1)) ((r Xv1) Xv2)))) (fun (x3:((and (Xq Xv2)) ((or ((r Xv2) Xv1)) ((r Xv1) Xv2)))) (x4:((and (Xq Xv2)) ((or ((r Xv2) Xv1)) ((r Xv1) Xv2))))=> x4))) as proof of (((and ((and (Xq Xv2)) ((or ((r Xv2) Xv1)) ((r Xv1) Xv2)))) ((and (Xq Xv2)) ((or ((r Xv2) Xv1)) ((r Xv1) Xv2))))->((and (Xq Xv2)) ((or ((r Xv2) Xv1)) ((r Xv1) Xv2))))
% Found (fun (Xy0:a) (Xz:a) (x2:((and ((and (Xq Xv2)) ((or ((r Xv2) Xv1)) ((r Xv1) Xv2)))) ((and (Xq Xv2)) ((or ((r Xv2) Xv1)) ((r Xv1) Xv2)))))=> (((fun (P:Type) (x3:(((and (Xq Xv2)) ((or ((r Xv2) Xv1)) ((r Xv1) Xv2)))->(((and (Xq Xv2)) ((or ((r Xv2) Xv1)) ((r Xv1) Xv2)))->P)))=> (((((and_rect ((and (Xq Xv2)) ((or ((r Xv2) Xv1)) ((r Xv1) Xv2)))) ((and (Xq Xv2)) ((or ((r Xv2) Xv1)) ((r Xv1) Xv2)))) P) x3) x2)) ((and (Xq Xv2)) ((or ((r Xv2) Xv1)) ((r Xv1) Xv2)))) (fun (x3:((and (Xq Xv2)) ((or ((r Xv2) Xv1)) ((r Xv1) Xv2)))) (x4:((and (Xq Xv2)) ((or ((r Xv2) Xv1)) ((r Xv1) Xv2))))=> x4))) as proof of (a->(((and ((and (Xq Xv2)) ((or ((r Xv2) Xv1)) ((r Xv1) Xv2)))) ((and (Xq Xv2)) ((or ((r Xv2) Xv1)) ((r Xv1) Xv2))))->((and (Xq Xv2)) ((or ((r Xv2) Xv1)) ((r Xv1) Xv2)))))
% Found (fun (Xx0:a) (Xy0:a) (Xz:a) (x2:((and ((and (Xq Xv2)) ((or ((r Xv2) Xv1)) ((r Xv1) Xv2)))) ((and (Xq Xv2)) ((or ((r Xv2) Xv1)) ((r Xv1) Xv2)))))=> (((fun (P:Type) (x3:(((and (Xq Xv2)) ((or ((r Xv2) Xv1)) ((r Xv1) Xv2)))->(((and (Xq Xv2)) ((or ((r Xv2) Xv1)) ((r Xv1) Xv2)))->P)))=> (((((and_rect ((and (Xq Xv2)) ((or ((r Xv2) Xv1)) ((r Xv1) Xv2)))) ((and (Xq Xv2)) ((or ((r Xv2) Xv1)) ((r Xv1) Xv2)))) P) x3) x2)) ((and (Xq Xv2)) ((or ((r Xv2) Xv1)) ((r Xv1) Xv2)))) (fun (x3:((and (Xq Xv2)) ((or ((r Xv2) Xv1)) ((r Xv1) Xv2)))) (x4:((and (Xq Xv2)) ((or ((r Xv2) Xv1)) ((r Xv1) Xv2))))=> x4))) as proof of (a->(a->(((and ((and (Xq Xv2)) ((or ((r Xv2) Xv1)) ((r Xv1) Xv2)))) ((and (Xq Xv2)) ((or ((r Xv2) Xv1)) ((r Xv1) Xv2))))->((and (Xq Xv2)) ((or ((r Xv2) Xv1)) ((r Xv1) Xv2))))))
% Found (fun (Xx0:a) (Xy0:a) (Xz:a) (x2:((and ((and (Xq Xv2)) ((or ((r Xv2) Xv1)) ((r Xv1) Xv2)))) ((and (Xq Xv2)) ((or ((r Xv2) Xv1)) ((r Xv1) Xv2)))))=> (((fun (P:Type) (x3:(((and (Xq Xv2)) ((or ((r Xv2) Xv1)) ((r Xv1) Xv2)))->(((and (Xq Xv2)) ((or ((r Xv2) Xv1)) ((r Xv1) Xv2)))->P)))=> (((((and_rect ((and (Xq Xv2)) ((or ((r Xv2) Xv1)) ((r Xv1) Xv2)))) ((and (Xq Xv2)) ((or ((r Xv2) Xv1)) ((r Xv1) Xv2)))) P) x3) x2)) ((and (Xq Xv2)) ((or ((r Xv2) Xv1)) ((r Xv1) Xv2)))) (fun (x3:((and (Xq Xv2)) ((or ((r Xv2) Xv1)) ((r Xv1) Xv2)))) (x4:((and (Xq Xv2)) ((or ((r Xv2) Xv1)) ((r Xv1) Xv2))))=> x4))) as proof of (a->(a->(a->(((and ((and (Xq Xv2)) ((or ((r Xv2) Xv1)) ((r Xv1) Xv2)))) ((and (Xq Xv2)) ((or ((r Xv2) Xv1)) ((r Xv1) Xv2))))->((and (Xq Xv2)) ((or ((r Xv2) Xv1)) ((r Xv1) Xv2)))))))
% Found x2:((r Xx0) Xy0)
% Instantiate: Xv1:=Xy0:a;Xv0:=Xx0:a
% Found x2 as proof of ((r Xv0) Xv1)
% Found (or_intror00 x2) as proof of ((or ((r Xv1) Xv0)) ((r Xv0) Xv1))
% Found ((or_intror0 ((r Xv0) Xv1)) x2) as proof of ((or ((r Xv1) Xv0)) ((r Xv0) Xv1))
% Found (((or_intror ((r Xv1) Xv0)) ((r Xv0) Xv1)) x2) as proof of ((or ((r Xv1) Xv0)) ((r Xv0) Xv1))
% Found (((or_intror ((r Xv1) Xv0)) ((r Xv0) Xv1)) x2) as proof of ((or ((r Xv1) Xv0)) ((r Xv0) Xv1))
% Found x2:((r Xx0) Xy0)
% Instantiate: Xv1:=Xy0:a;Xv0:=Xx0:a
% Found x2 as proof of ((r Xv0) Xv1)
% Found (or_intror00 x2) as proof of ((or ((r Xv1) Xv0)) ((r Xv0) Xv1))
% Found ((or_intror0 ((r Xv0) Xv1)) x2) as proof of ((or ((r Xv1) Xv0)) ((r Xv0) Xv1))
% Found (((or_intror ((r Xv1) Xv0)) ((r Xv0) Xv1)) x2) as proof of ((or ((r Xv1) Xv0)) ((r Xv0) Xv1))
% Found (((or_intror ((r Xv1) Xv0)) ((r Xv0) Xv1)) x2) as proof of ((or ((r Xv1) Xv0)) ((r Xv0) Xv1))
% Found x2:(Xq Xv1)
% Found (fun (x2:(Xq Xv1))=> x2) as proof of (Xq Xv1)
% Found (fun (Xy0:a) (x2:(Xq Xv1))=> x2) as proof of ((Xq Xv1)->(Xq Xv1))
% Found (fun (Xx0:a) (Xy0:a) (x2:(Xq Xv1))=> x2) as proof of (a->((Xq Xv1)->(Xq Xv1)))
% Found (fun (Xx0:a) (Xy0:a) (x2:(Xq Xv1))=> x2) as proof of (a->(a->((Xq Xv1)->(Xq Xv1))))
% Found x2:((or ((r Xv1) Xv0)) ((r Xv0) Xv1))
% Found (fun (x2:((or ((r Xv1) Xv0)) ((r Xv0) Xv1)))=> x2) as proof of ((or ((r Xv1) Xv0)) ((r Xv0) Xv1))
% Found (fun (Xy0:a) (x2:((or ((r Xv1) Xv0)) ((r Xv0) Xv1)))=> x2) as proof of (((or ((r Xv1) Xv0)) ((r Xv0) Xv1))->((or ((r Xv1) Xv0)) ((r Xv0) Xv1)))
% Found (fun (Xx0:a) (Xy0:a) (x2:((or ((r Xv1) Xv0)) ((r Xv0) Xv1)))=> x2) as proof of (a->(((or ((r Xv1) Xv0)) ((r Xv0) Xv1))->((or ((r Xv1) Xv0)) ((r Xv0) Xv1))))
% Found (fun (Xx0:a) (Xy0:a) (x2:((or ((r Xv1) Xv0)) ((r Xv0) Xv1)))=> x2) as proof of (a->(a->(((or ((r Xv1) Xv0)) ((r Xv0) Xv1))->((or ((r Xv1) Xv0)) ((r Xv0) Xv1)))))
% Found x2:(Xq Xv1)
% Found (fun (x2:(Xq Xv1))=> x2) as proof of (Xq Xv1)
% Found (fun (Xy0:a) (x2:(Xq Xv1))=> x2) as proof of ((Xq Xv1)->(Xq Xv1))
% Found (fun (Xx0:a) (Xy0:a) (x2:(Xq Xv1))=> x2) as proof of (a->((Xq Xv1)->(Xq Xv1)))
% Found (fun (Xx0:a) (Xy0:a) (x2:(Xq Xv1))=> x2) as proof of (a->(a->((Xq Xv1)->(Xq Xv1))))
% Found x2:(Xq Xv00)
% Found (fun (x2:(Xq Xv00))=> x2) as proof of (Xq Xv00)
% Found (fun (Xy0:a) (x2:(Xq Xv00))=> x2) as proof of ((Xq Xv00)->(Xq Xv00))
% Found (fun (Xx0:a) (Xy0:a) (x2:(Xq Xv00))=> x2) as proof of (a->((Xq Xv00)->(Xq Xv00)))
% Found (fun (Xx0:a) (Xy0:a) (x2:(Xq Xv00))=> x2) as proof of (a->(a->((Xq Xv00)->(Xq Xv00))))
% Found x2:((or ((r Xv00) Xv)) ((r Xv) Xv00))
% Found (fun (x2:((or ((r Xv00) Xv)) ((r Xv) Xv00)))=> x2) as proof of ((or ((r Xv00) Xv)) ((r Xv) Xv00))
% Found (fun (Xy0:a) (x2:((or ((r Xv00) Xv)) ((r Xv) Xv00)))=> x2) as proof of (((or ((r Xv00) Xv)) ((r Xv) Xv00))->((or ((r Xv00) Xv)) ((r Xv) Xv00)))
% Found (fun (Xx0:a) (Xy0:a) (x2:((or ((r Xv00) Xv)) ((r Xv) Xv00)))=> x2) as proof of (a->(((or ((r Xv00) Xv)) ((r Xv) Xv00))->((or ((r Xv00) Xv)) ((r Xv) Xv00))))
% Found (fun (Xx0:a) (Xy0:a) (x2:((or ((r Xv00) Xv)) ((r Xv) Xv00)))=> x2) as proof of (a->(a->(((or ((r Xv00) Xv)) ((r Xv) Xv00))->((or ((r Xv00) Xv)) ((r Xv) Xv00)))))
% Found or_introl00:=(or_introl0 ((r Xv0) Xv1)):(((r Xx0) Xy0)->((or ((r Xx0) Xy0)) ((r Xv0) Xv1)))
% Found (or_introl0 ((r Xv0) Xv1)) as proof of (((r Xx0) Xy0)->((or ((r Xv1) Xv0)) ((r Xv0) Xv1)))
% Found ((or_introl ((r Xx0) Xy0)) ((r Xv0) Xv1)) as proof of (((r Xx0) Xy0)->((or ((r Xv1) Xv0)) ((r Xv0) Xv1)))
% Found ((or_introl ((r Xx0) Xy0)) ((r Xv0) Xv1)) as proof of (((r Xx0) Xy0)->((or ((r Xv1) Xv0)) ((r Xv0) Xv1)))
% Found ((or_introl ((r Xx0) Xy0)) ((r Xv0) Xv1)) as proof of (((r Xx0) Xy0)->((or ((r Xv1) Xv0)) ((r Xv0) Xv1)))
% Found or_intror00:=(or_intror0 ((r Xx0) Xy0)):(((r Xx0) Xy0)->((or ((r Xv1) Xv0)) ((r Xx0) Xy0)))
% Found (or_intror0 ((r Xx0) Xy0)) as proof of (((r Xx0) Xy0)->((or ((r Xv1) Xv0)) ((r Xv0) Xv1)))
% Found ((or_intror ((r Xv1) Xv0)) ((r Xx0) Xy0)) as proof of (((r Xx0) Xy0)->((or ((r Xv1) Xv0)) ((r Xv0) Xv1)))
% Found ((or_intror ((r Xv1) Xv0)) ((r Xx0) Xy0)) as proof of (((r Xx0) Xy0)->((or ((r Xv1) Xv0)) ((r Xv0) Xv1)))
% Found ((or_intror ((r Xv1) Xv0)) ((r Xx0) Xy0)) as proof of (((r Xx0) Xy0)->((or ((r Xv1) Xv0)) ((r Xv0) Xv1)))
% Found or_intror00:=(or_intror0 ((r Xx0) Xy0)):(((r Xx0) Xy0)->((or ((r Xv1) Xv0)) ((r Xx0) Xy0)))
% Found (or_intror0 ((r Xx0) Xy0)) as proof of (((r Xx0) Xy0)->((or ((r Xv1) Xv0)) ((r Xv0) Xv1)))
% Found ((or_intror ((r Xv1) Xv0)) ((r Xx0) Xy0)) as proof of (((r Xx0) Xy0)->((or ((r Xv1) Xv0)) ((r Xv0) Xv1)))
% Found ((or_intror ((r Xv1) Xv0)) ((r Xx0) Xy0)) as proof of (((r Xx0) Xy0)->((or ((r Xv1) Xv0)) ((r Xv0) Xv1)))
% Found ((or_intror ((r Xv1) Xv0)) ((r Xx0) Xy0)) as proof of (((r Xx0) Xy0)->((or ((r Xv1) Xv0)) ((r Xv0) Xv1)))
% Found or_introl00:=(or_introl0 ((r Xv0) Xv1)):(((r Xx0) Xy0)->((or ((r Xx0) Xy0)) ((r Xv0) Xv1)))
% Found (or_introl0 ((r Xv0) Xv1)) as proof of (((r Xx0) Xy0)->((or ((r Xv1) Xv0)) ((r Xv0) Xv1)))
% Found ((or_introl ((r Xx0) Xy0)) ((r Xv0) Xv1)) as proof of (((r Xx0) Xy0)->((or ((r Xv1) Xv0)) ((r Xv0) Xv1)))
% Found ((or_introl ((r Xx0) Xy0)) ((r Xv0) Xv1)) as proof of (((r Xx0) Xy0)->((or ((r Xv1) Xv0)) ((r Xv0) Xv1)))
% Found ((or_introl ((r Xx0) Xy0)) ((r Xv0) Xv1)) as proof of (((r Xx0) Xy0)->((or ((r Xv1) Xv0)) ((r Xv0) Xv1)))
% Found or_intror00:=(or_intror0 ((r Xx0) Xy0)):(((r Xx0) Xy0)->((or ((r Xv00) Xv)) ((r Xx0) Xy0)))
% Found (or_intror0 ((r Xx0) Xy0)) as proof of (((r Xx0) Xy0)->((or ((r Xv00) Xv)) ((r Xv) Xv00)))
% Found ((or_intror ((r Xv00) Xv)) ((r Xx0) Xy0)) as proof of (((r Xx0) Xy0)->((or ((r Xv00) Xv)) ((r Xv) Xv00)))
% Found ((or_intror ((r Xv00) Xv)) ((r Xx0) Xy0)) as proof of (((r Xx0) Xy0)->((or ((r Xv00) Xv)) ((r Xv) Xv00)))
% Found ((or_intror ((r Xv00) Xv)) ((r Xx0) Xy0)) as proof of (((r Xx0) Xy0)->((or ((r Xv00) Xv)) ((r Xv) Xv00)))
% Found or_introl00:=(or_introl0 ((r Xv) Xv00)):(((r Xx0) Xy0)->((or ((r Xx0) Xy0)) ((r Xv) Xv00)))
% Found (or_introl0 ((r Xv) Xv00)) as proof of (((r Xx0) Xy0)->((or ((r Xv00) Xv)) ((r Xv) Xv00)))
% Found ((or_introl ((r Xx0) Xy0)) ((r Xv) Xv00)) as proof of (((r Xx0) Xy0)->((or ((r Xv00) Xv)) ((r Xv) Xv00)))
% Found ((or_introl ((r Xx0) Xy0)) ((r Xv) Xv00)) as proof of (((r Xx0) Xy0)->((or ((r Xv00) Xv)) ((r Xv) Xv00)))
% Found ((or_introl ((r Xx0) Xy0)) ((r Xv) Xv00)) as proof of (((r Xx0) Xy0)->((or ((r Xv00) Xv)) ((r Xv) Xv00)))
% Found or_introl00:=(or_introl0 ((r Xv) Xv00)):(((r Xx0) Xy0)->((or ((r Xx0) Xy0)) ((r Xv) Xv00)))
% Found (or_introl0 ((r Xv) Xv00)) as proof of (((r Xx0) Xy0)->((or ((r Xv00) Xv)) ((r Xv) Xv00)))
% Found ((or_introl ((r Xx0) Xy0)) ((r Xv) Xv00)) as proof of (((r Xx0) Xy0)->((or ((r Xv00) Xv)) ((r Xv) Xv00)))
% Found ((or_introl ((r Xx0) Xy0)) ((r Xv) Xv00)) as proof of (((r Xx0) Xy0)->((or ((r Xv00) Xv)) ((r Xv) Xv00)))
% Found ((or_introl ((r Xx0) Xy0)) ((r Xv) Xv00)) as proof of (((r Xx0) Xy0)->((or ((r Xv00) Xv)) ((r Xv) Xv00)))
% Found or_intror00:=(or_intror0 ((r Xx0) Xy0)):(((r Xx0) Xy0)->((or ((r Xv00) Xv)) ((r Xx0) Xy0)))
% Found (or_intror0 ((r Xx0) Xy0)) as proof of (((r Xx0) Xy0)->((or ((r Xv00) Xv)) ((r Xv) Xv00)))
% Found ((or_intror ((r Xv00) Xv)) ((r Xx0) Xy0)) as proof of (((r Xx0) Xy0)->((or ((r Xv00) Xv)) ((r Xv) Xv00)))
% Found ((or_intror ((r Xv00) Xv)) ((r Xx0) Xy0)) as proof of (((r Xx0) Xy0)->((or ((r Xv00) Xv)) ((r Xv) Xv00)))
% Found ((or_intror ((r Xv00) Xv)) ((r Xx0) Xy0)) as proof of (((r Xx0) Xy0)->((or ((r Xv00) Xv)) ((r Xv) Xv00)))
% Found x2:((r Xx0) Xy0)
% Instantiate: Xv1:=Xx0:a
% Found x2 as proof of ((r Xv1) Xy0)
% Found (or_introl00 x2) as proof of ((or ((r Xv1) Xy0)) ((r Xy0) Xv1))
% Found ((or_introl0 ((r Xy0) Xv1)) x2) as proof of ((or ((r Xv1) Xy0)) ((r Xy0) Xv1))
% Found (((or_introl ((r Xv1) Xy0)) ((r Xy0) Xv1)) x2) as proof of ((or ((r Xv1) Xy0)) ((r Xy0) Xv1))
% Found (((or_introl ((r Xv1) Xy0)) ((r Xy0) Xv1)) x2) as proof of ((or ((r Xv1) Xy0)) ((r Xy0) Xv1))
% Found or_introl00:=(or_introl0 ((r Xy0) Xv1)):(((r Xx0) Xy0)->((or ((r Xx0) Xy0)) ((r Xy0) Xv1)))
% Found (or_introl0 ((r Xy0) Xv1)) as proof of (((r Xx0) Xy0)->((or ((r Xv1) Xy0)) ((r Xy0) Xv1)))
% Found ((or_introl ((r Xx0) Xy0)) ((r Xy0) Xv1)) as proof of (((r Xx0) Xy0)->((or ((r Xv1) Xy0)) ((r Xy0) Xv1)))
% Found ((or_introl ((r Xx0) Xy0)) ((r Xy0) Xv1)) as proof of (((r Xx0) Xy0)->((or ((r Xv1) Xy0)) ((r Xy0) Xv1)))
% Found (fun (Xy0:a)=> ((or_introl ((r Xx0) Xy0)) ((r Xy0) Xv1))) as proof of (((r Xx0) Xy0)->((or ((r Xv1) Xy0)) ((r Xy0) Xv1)))
% Found x4:((or ((r Xv1) Xv0)) ((r Xv0) Xv1))
% Found (fun (x4:((or ((r Xv1) Xv0)) ((r Xv0) Xv1)))=> x4) as proof of ((or ((r Xv1) Xv0)) ((r Xv0) Xv1))
% Found (fun (x3:((or ((r Xv1) Xv0)) ((r Xv0) Xv1))) (x4:((or ((r Xv1) Xv0)) ((r Xv0) Xv1)))=> x4) as proof of (((or ((r Xv1) Xv0)) ((r Xv0) Xv1))->((or ((r Xv1) Xv0)) ((r Xv0) Xv1)))
% Found (fun (x3:((or ((r Xv1) Xv0)) ((r Xv0) Xv1))) (x4:((or ((r Xv1) Xv0)) ((r Xv0) Xv1)))=> x4) as proof of (((or ((r Xv1) Xv0)) ((r Xv0) Xv1))->(((or ((r Xv1) Xv0)) ((r Xv0) Xv1))->((or ((r Xv1) Xv0)) ((r Xv0) Xv1))))
% Found (and_rect10 (fun (x3:((or ((r Xv1) Xv0)) ((r Xv0) Xv1))) (x4:((or ((r Xv1) Xv0)) ((r Xv0) Xv1)))=> x4)) as proof of ((or ((r Xv1) Xv0)) ((r Xv0) Xv1))
% Found ((and_rect1 ((or ((r Xv1) Xv0)) ((r Xv0) Xv1))) (fun (x3:((or ((r Xv1) Xv0)) ((r Xv0) Xv1))) (x4:((or ((r Xv1) Xv0)) ((r Xv0) Xv1)))=> x4)) as proof of ((or ((r Xv1) Xv0)) ((r Xv0) Xv1))
% Found (((fun (P:Type) (x3:(((or ((r Xv1) Xv0)) ((r Xv0) Xv1))->(((or ((r Xv1) Xv0)) ((r Xv0) Xv1))->P)))=> (((((and_rect ((or ((r Xv1) Xv0)) ((r Xv0) Xv1))) ((or ((r Xv1) Xv0)) ((r Xv0) Xv1))) P) x3) x2)) ((or ((r Xv1) Xv0)) ((r Xv0) Xv1))) (fun (x3:((or ((r Xv1) Xv0)) ((r Xv0) Xv1))) (x4:((or ((r Xv1) Xv0)) ((r Xv0) Xv1)))=> x4)) as proof of ((or ((r Xv1) Xv0)) ((r Xv0) Xv1))
% Found (fun (x2:((and ((or ((r Xv1) Xv0)) ((r Xv0) Xv1))) ((or ((r Xv1) Xv0)) ((r Xv0) Xv1))))=> (((fun (P:Type) (x3:(((or ((r Xv1) Xv0)) ((r Xv0) Xv1))->(((or ((r Xv1) Xv0)) ((r Xv0) Xv1))->P)))=> (((((and_rect ((or ((r Xv1) Xv0)) ((r Xv0) Xv1))) ((or ((r Xv1) Xv0)) ((r Xv0) Xv1))) P) x3) x2)) ((or ((r Xv1) Xv0)) ((r Xv0) Xv1))) (fun (x3:((or ((r Xv1) Xv0)) ((r Xv0) Xv1))) (x4:((or ((r Xv1) Xv0)) ((r Xv0) Xv1)))=> x4))) as proof of ((or ((r Xv1) Xv0)) ((r Xv0) Xv1))
% Found (fun (Xz:a) (x2:((and ((or ((r Xv1) Xv0)) ((r Xv0) Xv1))) ((or ((r Xv1) Xv0)) ((r Xv0) Xv1))))=> (((fun (P:Type) (x3:(((or ((r Xv1) Xv0)) ((r Xv0) Xv1))->(((or ((r Xv1) Xv0)) ((r Xv0) Xv1))->P)))=> (((((and_rect ((or ((r Xv1) Xv0)) ((r Xv0) Xv1))) ((or ((r Xv1) Xv0)) ((r Xv0) Xv1))) P) x3) x2)) ((or ((r Xv1) Xv0)) ((r Xv0) Xv1))) (fun (x3:((or ((r Xv1) Xv0)) ((r Xv0) Xv1))) (x4:((or ((r Xv1) Xv0)) ((r Xv0) Xv1)))=> x4))) as proof of (((and ((or ((r Xv1) Xv0)) ((r Xv0) Xv1))) ((or ((r Xv1) Xv0)) ((r Xv0) Xv1)))->((or ((r Xv1) Xv0)) ((r Xv0) Xv1)))
% Found (fun (Xy0:a) (Xz:a) (x2:((and ((or ((r Xv1) Xv0)) ((r Xv0) Xv1))) ((or ((r Xv1) Xv0)) ((r Xv0) Xv1))))=> (((fun (P:Type) (x3:(((or ((r Xv1) Xv0)) ((r Xv0) Xv1))->(((or ((r Xv1) Xv0)) ((r Xv0) Xv1))->P)))=> (((((and_rect ((or ((r Xv1) Xv0)) ((r Xv0) Xv1))) ((or ((r Xv1) Xv0)) ((r Xv0) Xv1))) P) x3) x2)) ((or ((r Xv1) Xv0)) ((r Xv0) Xv1))) (fun (x3:((or ((r Xv1) Xv0)) ((r Xv0) Xv1))) (x4:((or ((r Xv1) Xv0)) ((r Xv0) Xv1)))=> x4))) as proof of (a->(((and ((or ((r Xv1) Xv0)) ((r Xv0) Xv1))) ((or ((r Xv1) Xv0)) ((r Xv0) Xv1)))->((or ((r Xv1) Xv0)) ((r Xv0) Xv1))))
% Found (fun (Xx0:a) (Xy0:a) (Xz:a) (x2:((and ((or ((r Xv1) Xv0)) ((r Xv0) Xv1))) ((or ((r Xv1) Xv0)) ((r Xv0) Xv1))))=> (((fun (P:Type) (x3:(((or ((r Xv1) Xv0)) ((r Xv0) Xv1))->(((or ((r Xv1) Xv0)) ((r Xv0) Xv1))->P)))=> (((((and_rect ((or ((r Xv1) Xv0)) ((r Xv0) Xv1))) ((or ((r Xv1) Xv0)) ((r Xv0) Xv1))) P) x3) x2)) ((or ((r Xv1) Xv0)) ((r Xv0) Xv1))) (fun (x3:((or ((r Xv1) Xv0)) ((r Xv0) Xv1))) (x4:((or ((r Xv1) Xv0)) ((r Xv0) Xv1)))=> x4))) as proof of (a->(a->(((and ((or ((r Xv1) Xv0)) ((r Xv0) Xv1))) ((or ((r Xv1) Xv0)) ((r Xv0) Xv1)))->((or ((r Xv1) Xv0)) ((r Xv0) Xv1)))))
% Found (fun (Xx0:a) (Xy0:a) (Xz:a) (x2:((and ((or ((r Xv1) Xv0)) ((r Xv0) Xv1))) ((or ((r Xv1) Xv0)) ((r Xv0) Xv1))))=> (((fun (P:Type) (x3:(((or ((r Xv1) Xv0)) ((r Xv0) Xv1))->(((or ((r Xv1) Xv0)) ((r Xv0) Xv1))->P)))=> (((((and_rect ((or ((r Xv1) Xv0)) ((r Xv0) Xv1))) ((or ((r Xv1) Xv0)) ((r Xv0) Xv1))) P) x3) x2)) ((or ((r Xv1) Xv0)) ((r Xv0) Xv1))) (fun (x3:((or ((r Xv1) Xv0)) ((r Xv0) Xv1))) (x4:((or ((r Xv1) Xv0)) ((r Xv0) Xv1)))=> x4))) as proof of (a->(a->(a->(((and ((or ((r Xv1) Xv0)) ((r Xv0) Xv1))) ((or ((r Xv1) Xv0)) ((r Xv0) Xv1)))->((or ((r Xv1) Xv0)) ((r Xv0) Xv1))))))
% Found x2:((r Xx0) Xy0)
% Instantiate: Xv1:=Xy0:a;Xv0:=Xx0:a
% Found x2 as proof of ((r Xv0) Xv1)
% Found (or_intror00 x2) as proof of ((or ((r Xv1) Xv0)) ((r Xv0) Xv1))
% Found ((or_intror0 ((r Xv0) Xv1)) x2) as proof of ((or ((r Xv1) Xv0)) ((r Xv0) Xv1))
% Found (((or_intror ((r Xv1) Xv0)) ((r Xv0) Xv1)) x2) as proof of ((or ((r Xv1) Xv0)) ((r Xv0) Xv1))
% Found (fun (x2:((r Xx0) Xy0))=> (((or_intror ((r Xv1) Xv0)) ((r Xv0) Xv1)) x2)) as proof of ((or ((r Xv1) Xv0)) ((r Xv0) Xv1))
% Found x2:((r Xx0) Xy0)
% Instantiate: Xv1:=Xx0:a;Xv0:=Xy0:a
% Found x2 as proof of ((r Xv1) Xv0)
% Found (or_introl00 x2) as proof of ((or ((r Xv1) Xv0)) ((r Xv0) Xv1))
% Found ((or_introl0 ((r Xv0) Xv1)) x2) as proof of ((or ((r Xv1) Xv0)) ((r Xv0) Xv1))
% Found (((or_introl ((r Xv1) Xv0)) ((r Xv0) Xv1)) x2) as proof of ((or ((r Xv1) Xv0)) ((r Xv0) Xv1))
% Found (fun (x2:((r Xx0) Xy0))=> (((or_introl ((r Xv1) Xv0)) ((r Xv0) Xv1)) x2)) as proof of ((or ((r Xv1) Xv0)) ((r Xv0) Xv1))
% Found x4:((or ((r Xv1) Xz)) ((r Xz) Xv1))
% Found (fun (x4:((or ((r Xv1) Xz)) ((r Xz) Xv1)))=> x4) as proof of ((or ((r Xv1) Xz)) ((r Xz) Xv1))
% Found (fun (x3:((or ((r Xv1) Xy0)) ((r Xy0) Xv1))) (x4:((or ((r Xv1) Xz)) ((r Xz) Xv1)))=> x4) as proof of (((or ((r Xv1) Xz)) ((r Xz) Xv1))->((or ((r Xv1) Xz)) ((r Xz) Xv1)))
% Found (fun (x3:((or ((r Xv1) Xy0)) ((r Xy0) Xv1))) (x4:((or ((r Xv1) Xz)) ((r Xz) Xv1)))=> x4) as proof of (((or ((r Xv1) Xy0)) ((r Xy0) Xv1))->(((or ((r Xv1) Xz)) ((r Xz) Xv1))->((or ((r Xv1) Xz)) ((r Xz) Xv1))))
% Found (and_rect10 (fun (x3:((or ((r Xv1) Xy0)) ((r Xy0) Xv1))) (x4:((or ((r Xv1) Xz)) ((r Xz) Xv1)))=> x4)) as proof of ((or ((r Xv1) Xz)) ((r Xz) Xv1))
% Found ((and_rect1 ((or ((r Xv1) Xz)) ((r Xz) Xv1))) (fun (x3:((or ((r Xv1) Xy0)) ((r Xy0) Xv1))) (x4:((or ((r Xv1) Xz)) ((r Xz) Xv1)))=> x4)) as proof of ((or ((r Xv1) Xz)) ((r Xz) Xv1))
% Found (((fun (P:Type) (x3:(((or ((r Xv1) Xy0)) ((r Xy0) Xv1))->(((or ((r Xv1) Xz)) ((r Xz) Xv1))->P)))=> (((((and_rect ((or ((r Xv1) Xy0)) ((r Xy0) Xv1))) ((or ((r Xv1) Xz)) ((r Xz) Xv1))) P) x3) x2)) ((or ((r Xv1) Xz)) ((r Xz) Xv1))) (fun (x3:((or ((r Xv1) Xy0)) ((r Xy0) Xv1))) (x4:((or ((r Xv1) Xz)) ((r Xz) Xv1)))=> x4)) as proof of ((or ((r Xv1) Xz)) ((r Xz) Xv1))
% Found (fun (x2:((and ((or ((r Xv1) Xy0)) ((r Xy0) Xv1))) ((or ((r Xv1) Xz)) ((r Xz) Xv1))))=> (((fun (P:Type) (x3:(((or ((r Xv1) Xy0)) ((r Xy0) Xv1))->(((or ((r Xv1) Xz)) ((r Xz) Xv1))->P)))=> (((((and_rect ((or ((r Xv1) Xy0)) ((r Xy0) Xv1))) ((or ((r Xv1) Xz)) ((r Xz) Xv1))) P) x3) x2)) ((or ((r Xv1) Xz)) ((r Xz) Xv1))) (fun (x3:((or ((r Xv1) Xy0)) ((r Xy0) Xv1))) (x4:((or ((r Xv1) Xz)) ((r Xz) Xv1)))=> x4))) as proof of ((or ((r Xv1) Xz)) ((r Xz) Xv1))
% Found (fun (Xz:a) (x2:((and ((or ((r Xv1) Xy0)) ((r Xy0) Xv1))) ((or ((r Xv1) Xz)) ((r Xz) Xv1))))=> (((fun (P:Type) (x3:(((or ((r Xv1) Xy0)) ((r Xy0) Xv1))->(((or ((r Xv1) Xz)) ((r Xz) Xv1))->P)))=> (((((and_rect ((or ((r Xv1) Xy0)) ((r Xy0) Xv1))) ((or ((r Xv1) Xz)) ((r Xz) Xv1))) P) x3) x2)) ((or ((r Xv1) Xz)) ((r Xz) Xv1))) (fun (x3:((or ((r Xv1) Xy0)) ((r Xy0) Xv1))) (x4:((or ((r Xv1) Xz)) ((r Xz) Xv1)))=> x4))) as proof of (((and ((or ((r Xv1) Xy0)) ((r Xy0) Xv1))) ((or ((r Xv1) Xz)) ((r Xz) Xv1)))->((or ((r Xv1) Xz)) ((r Xz) Xv1)))
% Found (fun (Xy0:a) (Xz:a) (x2:((and ((or ((r Xv1) Xy0)) ((r Xy0) Xv1))) ((or ((r Xv1) Xz)) ((r Xz) Xv1))))=> (((fun (P:Type) (x3:(((or ((r Xv1) Xy0)) ((r Xy0) Xv1))->(((or ((r Xv1) Xz)) ((r Xz) Xv1))->P)))=> (((((and_rect ((or ((r Xv1) Xy0)) ((r Xy0) Xv1))) ((or ((r Xv1) Xz)) ((r Xz) Xv1))) P) x3) x2)) ((or ((r Xv1) Xz)) ((r Xz) Xv1))) (fun (x3:((or ((r Xv1) Xy0)) ((r Xy0) Xv1))) (x4:((or ((r Xv1) Xz)) ((r Xz) Xv1)))=> x4))) as proof of (forall (Xz:a), (((and ((or ((r Xv1) Xy0)) ((r Xy0) Xv1))) ((or ((r Xv1) Xz)) ((r Xz) Xv1)))->((or ((r Xv1) Xz)) ((r Xz) Xv1))))
% Found (fun (Xx0:a) (Xy0:a) (Xz:a) (x2:((and ((or ((r Xv1) Xy0)) ((r Xy0) Xv1))) ((or ((r Xv1) Xz)) ((r Xz) Xv1))))=> (((fun (P:Type) (x3:(((or ((r Xv1) Xy0)) ((r Xy0) Xv1))->(((or ((r Xv1) Xz)) ((r Xz) Xv1))->P)))=> (((((and_rect ((or ((r Xv1) Xy0)) ((r Xy0) Xv1))) ((or ((r Xv1) Xz)) ((r Xz) Xv1))) P) x3) x2)) ((or ((r Xv1) Xz)) ((r Xz) Xv1))) (fun (x3:((or ((r Xv1) Xy0)) ((r Xy0) Xv1))) (x4:((or ((r Xv1) Xz)) ((r Xz) Xv1)))=> x4))) as proof of (forall (Xy0:a) (Xz:a), (((and ((or ((r Xv1) Xy0)) ((r Xy0) Xv1))) ((or ((r Xv1) Xz)) ((r Xz) Xv1)))->((or ((r Xv1) Xz)) ((r Xz) Xv1))))
% Found (fun (Xx0:a) (Xy0:a) (Xz:a) (x2:((and ((or ((r Xv1) Xy0)) ((r Xy0) Xv1))) ((or ((r Xv1) Xz)) ((r Xz) Xv1))))=> (((fun (P:Type) (x3:(((or ((r Xv1) Xy0)) ((r Xy0) Xv1))->(((or ((r Xv1) Xz)) ((r Xz) Xv1))->P)))=> (((((and_rect ((or ((r Xv1) Xy0)) ((r Xy0) Xv1))) ((or ((r Xv1) Xz)) ((r Xz) Xv1))) P) x3) x2)) ((or ((r Xv1) Xz)) ((r Xz) Xv1))) (fun (x3:((or ((r Xv1) Xy0)) ((r Xy0) Xv1))) (x4:((or ((r Xv1) Xz)) ((r Xz) Xv1)))=> x4))) as proof of (a->(forall (Xy0:a) (Xz:a), (((and ((or ((r Xv1) Xy0)) ((r Xy0) Xv1))) ((or ((r Xv1) Xz)) ((r Xz) Xv1)))->((or ((r Xv1) Xz)) ((r Xz) Xv1)))))
% Found x4:((or ((r Xv00) Xv)) ((r Xv) Xv00))
% Found (fun (x4:((or ((r Xv00) Xv)) ((r Xv) Xv00)))=> x4) as proof of ((or ((r Xv00) Xv)) ((r Xv) Xv00))
% Found (fun (x3:((or ((r Xv00) Xv)) ((r Xv) Xv00))) (x4:((or ((r Xv00) Xv)) ((r Xv) Xv00)))=> x4) as proof of (((or ((r Xv00) Xv)) ((r Xv) Xv00))->((or ((r Xv00) Xv)) ((r Xv) Xv00)))
% Found (fun (x3:((or ((r Xv00) Xv)) ((r Xv) Xv00))) (x4:((or ((r Xv00) Xv)) ((r Xv) Xv00)))=> x4) as proof of (((or ((r Xv00) Xv)) ((r Xv) Xv00))->(((or ((r Xv00) Xv)) ((r Xv) Xv00))->((or ((r Xv00) Xv)) ((r Xv) Xv00))))
% Found (and_rect10 (fun (x3:((or ((r Xv00) Xv)) ((r Xv) Xv00))) (x4:((or ((r Xv00) Xv)) ((r Xv) Xv00)))=> x4)) as proof of ((or ((r Xv00) Xv)) ((r Xv) Xv00))
% Found ((and_rect1 ((or ((r Xv00) Xv)) ((r Xv) Xv00))) (fun (x3:((or ((r Xv00) Xv)) ((r Xv) Xv00))) (x4:((or ((r Xv00) Xv)) ((r Xv) Xv00)))=> x4)) as proof of ((or ((r Xv00) Xv)) ((r Xv) Xv00))
% Found (((fun (P:Type) (x3:(((or ((r Xv00) Xv)) ((r Xv) Xv00))->(((or ((r Xv00) Xv)) ((r Xv) Xv00))->P)))=> (((((and_rect ((or ((r Xv00) Xv)) ((r Xv) Xv00))) ((or ((r Xv00) Xv)) ((r Xv) Xv00))) P) x3) x2)) ((or ((r Xv00) Xv)) ((r Xv) Xv00))) (fun (x3:((or ((r Xv00) Xv)) ((r Xv) Xv00))) (x4:((or ((r Xv00) Xv)) ((r Xv) Xv00)))=> x4)) as proof of ((or ((r Xv00) Xv)) ((r Xv) Xv00))
% Found (fun (x2:((and ((or ((r Xv00) Xv)) ((r Xv) Xv00))) ((or ((r Xv00) Xv)) ((r Xv) Xv00))))=> (((fun (P:Type) (x3:(((or ((r Xv00) Xv)) ((r Xv) Xv00))->(((or ((r Xv00) Xv)) ((r Xv) Xv00))->P)))=> (((((and_rect ((or ((r Xv00) Xv)) ((r Xv) Xv00))) ((or ((r Xv00) Xv)) ((r Xv) Xv00))) P) x3) x2)) ((or ((r Xv00) Xv)) ((r Xv) Xv00))) (fun (x3:((or ((r Xv00) Xv)) ((r Xv) Xv00))) (x4:((or ((r Xv00) Xv)) ((r Xv) Xv00)))=> x4))) as proof of ((or ((r Xv00) Xv)) ((r Xv) Xv00))
% Found (fun (Xz:a) (x2:((and ((or ((r Xv00) Xv)) ((r Xv) Xv00))) ((or ((r Xv00) Xv)) ((r Xv) Xv00))))=> (((fun (P:Type) (x3:(((or ((r Xv00) Xv)) ((r Xv) Xv00))->(((or ((r Xv00) Xv)) ((r Xv) Xv00))->P)))=> (((((and_rect ((or ((r Xv00) Xv)) ((r Xv) Xv00))) ((or ((r Xv00) Xv)) ((r Xv) Xv00))) P) x3) x2)) ((or ((r Xv00) Xv)) ((r Xv) Xv00))) (fun (x3:((or ((r Xv00) Xv)) ((r Xv) Xv00))) (x4:((or ((r Xv00) Xv)) ((r Xv) Xv00)))=> x4))) as proof of (((and ((or ((r Xv00) Xv)) ((r Xv) Xv00))) ((or ((r Xv00) Xv)) ((r Xv) Xv00)))->((or ((r Xv00) Xv)) ((r Xv) Xv00)))
% Found (fun (Xy0:a) (Xz:a) (x2:((and ((or ((r Xv00) Xv)) ((r Xv) Xv00))) ((or ((r Xv00) Xv)) ((r Xv) Xv00))))=> (((fun (P:Type) (x3:(((or ((r Xv00) Xv)) ((r Xv) Xv00))->(((or ((r Xv00) Xv)) ((r Xv) Xv00))->P)))=> (((((and_rect ((or ((r Xv00) Xv)) ((r Xv) Xv00))) ((or ((r Xv00) Xv)) ((r Xv) Xv00))) P) x3) x2)) ((or ((r Xv00) Xv)) ((r Xv) Xv00))) (fun (x3:((or ((r Xv00) Xv)) ((r Xv) Xv00))) (x4:((or ((r Xv00) Xv)) ((r Xv) Xv00)))=> x4))) as proof of (a->(((and ((or ((r Xv00) Xv)) ((r Xv) Xv00))) ((or ((r Xv00) Xv)) ((r Xv) Xv00)))->((or ((r Xv00) Xv)) ((r Xv) Xv00))))
% Found (fun (Xx0:a) (Xy0:a) (Xz:a) (x2:((and ((or ((r Xv00) Xv)) ((r Xv) Xv00))) ((or ((r Xv00) Xv)) ((r Xv) Xv00))))=> (((fun (P:Type) (x3:(((or ((r Xv00) Xv)) ((r Xv) Xv00))->(((or ((r Xv00) Xv)) ((r Xv) Xv00))->P)))=> (((((and_rect ((or ((r Xv00) Xv)) ((r Xv) Xv00))) ((or ((r Xv00) Xv)) ((r Xv) Xv00))) P) x3) x2)) ((or ((r Xv00) Xv)) ((r Xv) Xv00))) (fun (x3:((or ((r Xv00) Xv)) ((r Xv) Xv00))) (x4:((or ((r Xv00) Xv)) ((r Xv) Xv00)))=> x4))) as proof of (a->(a->(((and ((or ((r Xv00) Xv)) ((r Xv) Xv00))) ((or ((r Xv00) Xv)) ((r Xv) Xv00)))->((or ((r Xv00) Xv)) ((r Xv) Xv00)))))
% Found (fun (Xx0:a) (Xy0:a) (Xz:a) (x2:((and ((or ((r Xv00) Xv)) ((r Xv) Xv00))) ((or ((r Xv00) Xv)) ((r Xv) Xv00))))=> (((fun (P:Type) (x3:(((or ((r Xv00) Xv)) ((r Xv) Xv00))->(((or ((r Xv00) Xv)) ((r Xv) Xv00))->P)))=> (((((and_rect ((or ((r Xv00) Xv)) ((r Xv) Xv00))) ((or ((r Xv00) Xv)) ((r Xv) Xv00))) P) x3) x2)) ((or ((r Xv00) Xv)) ((r Xv) Xv00))) (fun (x3:((or ((r Xv00) Xv)) ((r Xv) Xv00))) (x4:((or ((r Xv00) Xv)) ((r Xv) Xv00)))=> x4))) as proof of (a->(a->(a->(((and ((or ((r Xv00) Xv)) ((r Xv) Xv00))) ((or ((r Xv00) Xv)) ((r Xv) Xv00)))->((or ((r Xv00) Xv)) ((r Xv) Xv00))))))
% Found x4:(Xq Xv1)
% Found (fun (x4:(Xq Xv1))=> x4) as proof of (Xq Xv1)
% Found (fun (x3:(Xq Xv1)) (x4:(Xq Xv1))=> x4) as proof of ((Xq Xv1)->(Xq Xv1))
% Found (fun (x3:(Xq Xv1)) (x4:(Xq Xv1))=> x4) as proof of ((Xq Xv1)->((Xq Xv1)->(Xq Xv1)))
% Found (and_rect10 (fun (x3:(Xq Xv1)) (x4:(Xq Xv1))=> x4)) as proof of (Xq Xv1)
% Found ((and_rect1 (Xq Xv1)) (fun (x3:(Xq Xv1)) (x4:(Xq Xv1))=> x4)) as proof of (Xq Xv1)
% Found (((fun (P:Type) (x3:((Xq Xv1)->((Xq Xv1)->P)))=> (((((and_rect (Xq Xv1)) (Xq Xv1)) P) x3) x2)) (Xq Xv1)) (fun (x3:(Xq Xv1)) (x4:(Xq Xv1))=> x4)) as proof of (Xq Xv1)
% Found (fun (x2:((and (Xq Xv1)) (Xq Xv1)))=> (((fun (P:Type) (x3:((Xq Xv1)->((Xq Xv1)->P)))=> (((((and_rect (Xq Xv1)) (Xq Xv1)) P) x3) x2)) (Xq Xv1)) (fun (x3:(Xq Xv1)) (x4:(Xq Xv1))=> x4))) as proof of (Xq Xv1)
% Found (fun (Xz:a) (x2:((and (Xq Xv1)) (Xq Xv1)))=> (((fun (P:Type) (x3:((Xq Xv1)->((Xq Xv1)->P)))=> (((((and_rect (Xq Xv1)) (Xq Xv1)) P) x3) x2)) (Xq Xv1)) (fun (x3:(Xq Xv1)) (x4:(Xq Xv1))=> x4))) as proof of (((and (Xq Xv1)) (Xq Xv1))->(Xq Xv1))
% Found (fun (Xy0:a) (Xz:a) (x2:((and (Xq Xv1)) (Xq Xv1)))=> (((fun (P:Type) (x3:((Xq Xv1)->((Xq Xv1)->P)))=> (((((and_rect (Xq Xv1)) (Xq Xv1)) P) x3) x2)) (Xq Xv1)) (fun (x3:(Xq Xv1)) (x4:(Xq Xv1))=> x4))) as proof of (a->(((and (Xq Xv1)) (Xq Xv1))->(Xq Xv1)))
% Found (fun (Xx0:a) (Xy0:a) (Xz:a) (x2:((and (Xq Xv1)) (Xq Xv1)))=> (((fun (P:Type) (x3:((Xq Xv1)->((Xq Xv1)->P)))=> (((((and_rect (Xq Xv1)) (Xq Xv1)) P) x3) x2)) (Xq Xv1)) (fun (x3:(Xq Xv1)) (x4:(Xq Xv1))=> x4))) as proof of (a->(a->(((and (Xq Xv1)) (Xq Xv1))->(Xq Xv1))))
% Found (fun (Xx0:a) (Xy0:a) (Xz:a) (x2:((and (Xq Xv1)) (Xq Xv1)))=> (((fun (P:Type) (x3:((Xq Xv1)->((Xq Xv1)->P)))=> (((((and_rect (Xq Xv1)) (Xq Xv1)) P) x3) x2)) (Xq Xv1)) (fun (x3:(Xq Xv1)) (x4:(Xq Xv1))=> x4))) as proof of (a->(a->(a->(((and (Xq Xv1)) (Xq Xv1))->(Xq Xv1)))))
% Found x4:(Xq Xv1)
% Found (fun (x4:(Xq Xv1))=> x4) as proof of (Xq Xv1)
% Found (fun (x3:(Xq Xv1)) (x4:(Xq Xv1))=> x4) as proof of ((Xq Xv1)->(Xq Xv1))
% Found (fun (x3:(Xq Xv1)) (x4:(Xq Xv1))=> x4) as proof of ((Xq Xv1)->((Xq Xv1)->(Xq Xv1)))
% Found (and_rect10 (fun (x3:(Xq Xv1)) (x4:(Xq Xv1))=> x4)) as proof of (Xq Xv1)
% Found ((and_rect1 (Xq Xv1)) (fun (x3:(Xq Xv1)) (x4:(Xq Xv1))=> x4)) as proof of (Xq Xv1)
% Found (((fun (P:Type) (x3:((Xq Xv1)->((Xq Xv1)->P)))=> (((((and_rect (Xq Xv1)) (Xq Xv1)) P) x3) x2)) (Xq Xv1)) (fun (x3:(Xq Xv1)) (x4:(Xq Xv1))=> x4)) as proof of (Xq Xv1)
% Found (fun (x2:((and (Xq Xv1)) (Xq Xv1)))=> (((fun (P:Type) (x3:((Xq Xv1)->((Xq Xv1)->P)))=> (((((and_rect (Xq Xv1)) (Xq Xv1)) P) x3) x2)) (Xq Xv1)) (fun (x3:(Xq Xv1)) (x4:(Xq Xv1))=> x4))) as proof of (Xq Xv1)
% Found (fun (Xz:a) (x2:((and (Xq Xv1)) (Xq Xv1)))=> (((fun (P:Type) (x3:((Xq Xv1)->((Xq Xv1)->P)))=> (((((and_rect (Xq Xv1)) (Xq Xv1)) P) x3) x2)) (Xq Xv1)) (fun (x3:(Xq Xv1)) (x4:(Xq Xv1))=> x4))) as proof of (((and (Xq Xv1)) (Xq Xv1))->(Xq Xv1))
% Found (fun (Xy0:a) (Xz:a) (x2:((and (Xq Xv1)) (Xq Xv1)))=> (((fun (P:Type) (x3:((Xq Xv1)->((Xq Xv1)->P)))=> (((((and_rect (Xq Xv1)) (Xq Xv1)) P) x3) x2)) (Xq Xv1)) (fun (x3:(Xq Xv1)) (x4:(Xq Xv1))=> x4))) as proof of (a->(((and (Xq Xv1)) (Xq Xv1))->(Xq Xv1)))
% Found (fun (Xx0:a) (Xy0:a) (Xz:a) (x2:((and (Xq Xv1)) (Xq Xv1)))=> (((fun (P:Type) (x3:((Xq Xv1)->((Xq Xv1)->P)))=> (((((and_rect (Xq Xv1)) (Xq Xv1)) P) x3) x2)) (Xq Xv1)) (fun (x3:(Xq Xv1)) (x4:(Xq Xv1))=> x4))) as proof of (a->(a->(((and (Xq Xv1)) (Xq Xv1))->(Xq Xv1))))
% Found (fun (Xx0:a) (Xy0:a) (Xz:a) (x2:((and (Xq Xv1)) (Xq Xv1)))=> (((fun (P:Type) (x3:((Xq Xv1)->((Xq Xv1)->P)))=> (((((and_rect (Xq Xv1)) (Xq Xv1)) P) x3) x2)) (Xq Xv1)) (fun (x3:(Xq Xv1)) (x4:(Xq Xv1))=> x4))) as proof of (a->(a->(a->(((and (Xq Xv1)) (Xq Xv1))->(Xq Xv1)))))
% Found x4:(Xq Xv00)
% Found (fun (x4:(Xq Xv00))=> x4) as proof of (Xq Xv00)
% Found (fun (x3:(Xq Xv00)) (x4:(Xq Xv00))=> x4) as proof of ((Xq Xv00)->(Xq Xv00))
% Found (fun (x3:(Xq Xv00)) (x4:(Xq Xv00))=> x4) as proof of ((Xq Xv00)->((Xq Xv00)->(Xq Xv00)))
% Found (and_rect10 (fun (x3:(Xq Xv00)) (x4:(Xq Xv00))=> x4)) as proof of (Xq Xv00)
% Found ((and_rect1 (Xq Xv00)) (fun (x3:(Xq Xv00)) (x4:(Xq Xv00))=> x4)) as proof of (Xq Xv00)
% Found (((fun (P:Type) (x3:((Xq Xv00)->((Xq Xv00)->P)))=> (((((and_rect (Xq Xv00)) (Xq Xv00)) P) x3) x2)) (Xq Xv00)) (fun (x3:(Xq Xv00)) (x4:(Xq Xv00))=> x4)) as proof of (Xq Xv00)
% Found (fun (x2:((and (Xq Xv00)) (Xq Xv00)))=> (((fun (P:Type) (x3:((Xq Xv00)->((Xq Xv00)->P)))=> (((((and_rect (Xq Xv00)) (Xq Xv00)) P) x3) x2)) (Xq Xv00)) (fun (x3:(Xq Xv00)) (x4:(Xq Xv00))=> x4))) as proof of (Xq Xv00)
% Found (fun (Xz:a) (x2:((and (Xq Xv00)) (Xq Xv00)))=> (((fun (P:Type) (x3:((Xq Xv00)->((Xq Xv00)->P)))=> (((((and_rect (Xq Xv00)) (Xq Xv00)) P) x3) x2)) (Xq Xv00)) (fun (x3:(Xq Xv00)) (x4:(Xq Xv00))=> x4))) as proof of (((and (Xq Xv00)) (Xq Xv00))->(Xq Xv00))
% Found (fun (Xy0:a) (Xz:a) (x2:((and (Xq Xv00)) (Xq Xv00)))=> (((fun (P:Type) (x3:((Xq Xv00)->((Xq Xv00)->P)))=> (((((and_rect (Xq Xv00)) (Xq Xv00)) P) x3) x2)) (Xq Xv00)) (fun (x3:(Xq Xv00)) (x4:(Xq Xv00))=> x4))) as proof of (a->(((and (Xq Xv00)) (Xq Xv00))->(Xq Xv00)))
% Found (fun (Xx0:a) (Xy0:a) (Xz:a) (x2:((and (Xq Xv00)) (Xq Xv00)))=> (((fun (P:Type) (x3:((Xq Xv00)->((Xq Xv00)->P)))=> (((((and_rect (Xq Xv00)) (Xq Xv00)) P) x3) x2)) (Xq Xv00)) (fun (x3:(Xq Xv00)) (x4:(Xq Xv00))=> x4))) as proof of (a->(a->(((and (Xq Xv00)) (Xq Xv00))->(Xq Xv00))))
% Found (fun (Xx0:a) (Xy0:a) (Xz:a) (x2:((and (Xq Xv00)) (Xq Xv00)))=> (((fun (P:Type) (x3:((Xq Xv00)->((Xq Xv00)->P)))=> (((((and_rect (Xq Xv00)) (Xq Xv00)) P) x3) x2)) (Xq Xv00)) (fun (x3:(Xq Xv00)) (x4:(Xq Xv00))=> x4))) as proof of (a->(a->(a->(((and (Xq Xv00)) (Xq Xv00))->(Xq Xv00)))))
% Found x3:(Xq Xv1)
% Found x3 as proof of (Xq Xv1)
% Found x2:((r Xx0) Xy0)
% Instantiate: Xv1:=Xx0:a;Xv00:=Xy0:a
% Found x2 as proof of ((r Xv1) Xv00)
% Found (or_introl00 x2) as proof of ((or ((r Xv1) Xv00)) ((r Xv00) Xv1))
% Found ((or_introl0 ((r Xv00) Xv1)) x2) as proof of ((or ((r Xv1) Xv00)) ((r Xv00) Xv1))
% Found (((or_introl ((r Xv1) Xv00)) ((r Xv00) Xv1)) x2) as proof of ((or ((r Xv1) Xv00)) ((r Xv00) Xv1))
% Found (((or_introl ((r Xv1) Xv00)) ((r Xv00) Xv1)) x2) as proof of ((or ((r Xv1) Xv00)) ((r Xv00) Xv1))
% Found x2:((r Xx0) Xy0)
% Instantiate: Xv1:=Xx0:a;Xv2:=Xy0:a
% Found x2 as proof of ((r Xv1) Xv2)
% Found (or_intror00 x2) as proof of ((or ((r Xv2) Xv1)) ((r Xv1) Xv2))
% Found ((or_intror0 ((r Xv1) Xv2)) x2) as proof of ((or ((r Xv2) Xv1)) ((r Xv1) Xv2))
% Found (((or_intror ((r Xv2) Xv1)) ((r Xv1) Xv2)) x2) as proof of ((or ((r Xv2) Xv1)) ((r Xv1) Xv2))
% Found (((or_intror ((r Xv2) Xv1)) ((r Xv1) Xv2)) x2) as proof of ((or ((r Xv2) Xv1)) ((r Xv1) Xv2))
% Found or_comm_i00:=(or_comm_i0 ((r Xv1) Xv0)):(((or ((r Xv0) Xv1)) ((r Xv1) Xv0))->((or ((r Xv1) Xv0)) ((r Xv0) Xv1)))
% Instantiate: Xv0:=Xv1:a
% Found (fun (Xy0:a)=> or_comm_i00) as proof of (((or ((r Xv0) Xv1)) ((r Xv1) Xv0))->((or ((r Xv0) Xv1)) ((r Xv1) Xv0)))
% Found (fun (Xx0:a) (Xy0:a)=> or_comm_i00) as proof of (a->(((or ((r Xv0) Xv1)) ((r Xv1) Xv0))->((or ((r Xv0) Xv1)) ((r Xv1) Xv0))))
% Found (fun (Xx0:a) (Xy0:a)=> or_comm_i00) as proof of (a->(a->(((or ((r Xv0) Xv1)) ((r Xv1) Xv0))->((or ((r Xv0) Xv1)) ((r Xv1) Xv0)))))
% Found or_comm_i00:=(or_comm_i0 ((r Xv00) Xv)):(((or ((r Xv) Xv00)) ((r Xv00) Xv))->((or ((r Xv00) Xv)) ((r Xv) Xv00)))
% Instantiate: Xv00:=Xv0:a
% Found (fun (Xy0:a)=> or_comm_i00) as proof of (((or ((r Xv) Xv00)) ((r Xv00) Xv))->((or ((r Xv) Xv00)) ((r Xv00) Xv)))
% Found (fun (Xx0:a) (Xy0:a)=> or_comm_i00) as proof of (a->(((or ((r Xv) Xv00)) ((r Xv00) Xv))->((or ((r Xv) Xv00)) ((r Xv00) Xv))))
% Found (fun (Xx0:a) (Xy0:a)=> or_comm_i00) as proof of (a->(a->(((or ((r Xv) Xv00)) ((r Xv00) Xv))->((or ((r Xv) Xv00)) ((r Xv00) Xv)))))
% Found x2:((r Xx0) Xy0)
% Instantiate: Xv1:=Xx0:a
% Found x2 as proof of ((r Xv1) Xy0)
% Found (or_introl00 x2) as proof of ((or ((r Xv1) Xy0)) ((r Xy0) Xv1))
% Found ((or_introl0 ((r Xy0) Xv1)) x2) as proof of ((or ((r Xv1) Xy0)) ((r Xy0) Xv1))
% Found (((or_introl ((r Xv1) Xy0)) ((r Xy0) Xv1)) x2) as proof of ((or ((r Xv1) Xy0)) ((r Xy0) Xv1))
% Found (fun (x2:((r Xx0) Xy0))=> (((or_introl ((r Xv1) Xy0)) ((r Xy0) Xv1)) x2)) as proof of ((or ((r Xv1) Xy0)) ((r Xy0) Xv1))
% Found (fun (Xy0:a) (x2:((r Xx0) Xy0))=> (((or_introl ((r Xv1) Xy0)) ((r Xy0) Xv1)) x2)) as proof of (((r Xx0) Xy0)->((or ((r Xv1) Xy0)) ((r Xy0) Xv1)))
% Found x3:(Xq Xv1)
% Found (fun (x4:((or ((r Xv1) Xy0)) ((r Xy0) Xv1)))=> x3) as proof of (Xq Xv1)
% Found (fun (x3:(Xq Xv1)) (x4:((or ((r Xv1) Xy0)) ((r Xy0) Xv1)))=> x3) as proof of (((or ((r Xv1) Xy0)) ((r Xy0) Xv1))->(Xq Xv1))
% Found (fun (x3:(Xq Xv1)) (x4:((or ((r Xv1) Xy0)) ((r Xy0) Xv1)))=> x3) as proof of ((Xq Xv1)->(((or ((r Xv1) Xy0)) ((r Xy0) Xv1))->(Xq Xv1)))
% Found (and_rect10 (fun (x3:(Xq Xv1)) (x4:((or ((r Xv1) Xy0)) ((r Xy0) Xv1)))=> x3)) as proof of (Xq Xv1)
% Found ((and_rect1 (Xq Xv1)) (fun (x3:(Xq Xv1)) (x4:((or ((r Xv1) Xy0)) ((r Xy0) Xv1)))=> x3)) as proof of (Xq Xv1)
% Found (((fun (P:Type) (x3:((Xq Xv1)->(((or ((r Xv1) Xy0)) ((r Xy0) Xv1))->P)))=> (((((and_rect (Xq Xv1)) ((or ((r Xv1) Xy0)) ((r Xy0) Xv1))) P) x3) x2)) (Xq Xv1)) (fun (x3:(Xq Xv1)) (x4:((or ((r Xv1) Xy0)) ((r Xy0) Xv1)))=> x3)) as proof of (Xq Xv1)
% Found (((fun (P:Type) (x3:((Xq Xv1)->(((or ((r Xv1) Xy0)) ((r Xy0) Xv1))->P)))=> (((((and_rect (Xq Xv1)) ((or ((r Xv1) Xy0)) ((r Xy0) Xv1))) P) x3) x2)) (Xq Xv1)) (fun (x3:(Xq Xv1)) (x4:((or ((r Xv1) Xy0)) ((r Xy0) Xv1)))=> x3)) as proof of (Xq Xv1)
% Found x2:((r Xx0) Xy0)
% Instantiate: Xv1:=Xx0:a;Xv2:=Xy0:a
% Found x2 as proof of ((r Xv1) Xv2)
% Found (or_intror00 x2) as proof of ((or ((r Xv2) Xv1)) ((r Xv1) Xv2))
% Found ((or_intror0 ((r Xv1) Xv2)) x2) as proof of ((or ((r Xv2) Xv1)) ((r Xv1) Xv2))
% Found (((or_intror ((r Xv2) Xv1)) ((r Xv1) Xv2)) x2) as proof of ((or ((r Xv2) Xv1)) ((r Xv1) Xv2))
% Found (((or_intror ((r Xv2) Xv1)) ((r Xv1) Xv2)) x2) as proof of ((or ((r Xv2) Xv1)) ((r Xv1) Xv2))
% Found x2:((r Xx0) Xy0)
% Instantiate: Xv1:=Xx0:a;Xv2:=Xy0:a
% Found x2 as proof of ((r Xv1) Xv2)
% Found (or_intror00 x2) as proof of ((or ((r Xv2) Xv1)) ((r Xv1) Xv2))
% Found ((or_intror0 ((r Xv1) Xv2)) x2) as proof of ((or ((r Xv2) Xv1)) ((r Xv1) Xv2))
% Found (((or_intror ((r Xv2) Xv1)) ((r Xv1) Xv2)) x2) as proof of ((or ((r Xv2) Xv1)) ((r Xv1) Xv2))
% Found (((or_intror ((r Xv2) Xv1)) ((r Xv1) Xv2)) x2) as proof of ((or ((r Xv2) Xv1)) ((r Xv1) Xv2))
% Found x2:((or ((r Xv2) Xv1)) ((r Xv1) Xv2))
% Found (fun (x2:((or ((r Xv2) Xv1)) ((r Xv1) Xv2)))=> x2) as proof of ((or ((r Xv2) Xv1)) ((r Xv1) Xv2))
% Found (fun (Xy0:a) (x2:((or ((r Xv2) Xv1)) ((r Xv1) Xv2)))=> x2) as proof of (((or ((r Xv2) Xv1)) ((r Xv1) Xv2))->((or ((r Xv2) Xv1)) ((r Xv1) Xv2)))
% Found (fun (Xx0:a) (Xy0:a) (x2:((or ((r Xv2) Xv1)) ((r Xv1) Xv2)))=> x2) as proof of (a->(((or ((r Xv2) Xv1)) ((r Xv1) Xv2))->((or ((r Xv2) Xv1)) ((r Xv1) Xv2))))
% Found (fun (Xx0:a) (Xy0:a) (x2:((or ((r Xv2) Xv1)) ((r Xv1) Xv2)))=> x2) as proof of (a->(a->(((or ((r Xv2) Xv1)) ((r Xv1) Xv2))->((or ((r Xv2) Xv1)) ((r Xv1) Xv2)))))
% Found x2:(Xq Xv2)
% Found (fun (x2:(Xq Xv2))=> x2) as proof of (Xq Xv2)
% Found (fun (Xy0:a) (x2:(Xq Xv2))=> x2) as proof of ((Xq Xv2)->(Xq Xv2))
% Found (fun (Xx0:a) (Xy0:a) (x2:(Xq Xv2))=> x2) as proof of (a->((Xq Xv2)->(Xq Xv2)))
% Found (fun (Xx0:a) (Xy0:a) (x2:(Xq Xv2))=> x2) as proof of (a->(a->((Xq Xv2)->(Xq Xv2))))
% Found or_introl00:=(or_introl0 ((r Xv1) Xx0)):(((r Xx0) Xy0)->((or ((r Xx0) Xy0)) ((r Xv1) Xx0)))
% Found (or_introl0 ((r Xv1) Xx0)) as proof of (((r Xx0) Xy0)->((or ((r Xx0) Xv1)) ((r Xv1) Xx0)))
% Found ((or_introl ((r Xx0) Xy0)) ((r Xv1) Xx0)) as proof of (((r Xx0) Xy0)->((or ((r Xx0) Xv1)) ((r Xv1) Xx0)))
% Found ((or_introl ((r Xx0) Xy0)) ((r Xv1) Xx0)) as proof of (((r Xx0) Xy0)->((or ((r Xx0) Xv1)) ((r Xv1) Xx0)))
% Found or_introl00:=(or_introl0 ((r Xv00) Xx0)):(((r Xx0) Xy0)->((or ((r Xx0) Xy0)) ((r Xv00) Xx0)))
% Found (or_introl0 ((r Xv00) Xx0)) as proof of (((r Xx0) Xy0)->((or ((r Xx0) Xv00)) ((r Xv00) Xx0)))
% Found ((or_introl ((r Xx0) Xy0)) ((r Xv00) Xx0)) as proof of (((r Xx0) Xy0)->((or ((r Xx0) Xv00)) ((r Xv00) Xx0)))
% Found ((or_introl ((r Xx0) Xy0)) ((r Xv00) Xx0)) as proof of (((r Xx0) Xy0)->((or ((r Xx0) Xv00)) ((r Xv00) Xx0)))
% Found or_introl00:=(or_introl0 ((r Xv1) Xx0)):(((r Xx0) Xy0)->((or ((r Xx0) Xy0)) ((r Xv1) Xx0)))
% Found (or_introl0 ((r Xv1) Xx0)) as proof of (((r Xx0) Xy0)->((or ((r Xx0) Xv1)) ((r Xv1) Xx0)))
% Found ((or_introl ((r Xx0) Xy0)) ((r Xv1) Xx0)) as proof of (((r Xx0) Xy0)->((or ((r Xx0) Xv1)) ((r Xv1) Xx0)))
% Found ((or_introl ((r Xx0) Xy0)) ((r Xv1) Xx0)) as proof of (((r Xx0) Xy0)->((or ((r Xx0) Xv1)) ((r Xv1) Xx0)))
% Found x2:((r Xv1) Xv0)
% Found (fun (x2:((r Xv1) Xv0))=> x2) as proof of ((r Xv1) Xv0)
% Found (fun (Xy0:a) (x2:((r Xv1) Xv0))=> x2) as proof of (((r Xv1) Xv0)->((r Xv1) Xv0))
% Found (fun (Xx0:a) (Xy0:a) (x2:((r Xv1) Xv0))=> x2) as proof of (a->(((r Xv1) Xv0)->((r Xv1) Xv0)))
% Found (fun (Xx0:a) (Xy0:a) (x2:((r Xv1) Xv0))=> x2) as proof of (a->(a->(((r Xv1) Xv0)->((r Xv1) Xv0))))
% Found x2:((r Xx0) Xy0)
% Instantiate: Xv1:=Xx0:a;Xv0:=Xy0:a
% Found (fun (x2:((r Xx0) Xy0))=> x2) as proof of ((r Xv1) Xv0)
% Found x2:((r Xx0) Xy0)
% Instantiate: Xv1:=Xy0:a;Xv0:=Xx0:a
% Found (fun (x2:((r Xx0) Xy0))=> x2) as proof of ((r Xv0) Xv1)
% Found x2:((r Xv0) Xv1)
% Found (fun (x2:((r Xv0) Xv1))=> x2) as proof of ((r Xv0) Xv1)
% Found (fun (Xy0:a) (x2:((r Xv0) Xv1))=> x2) as proof of (((r Xv0) Xv1)->((r Xv0) Xv1))
% Found (fun (Xx0:a) (Xy0:a) (x2:((r Xv0) Xv1))=> x2) as proof of (a->(((r Xv0) Xv1)->((r Xv0) Xv1)))
% Found (fun (Xx0:a) (Xy0:a) (x2:((r Xv0) Xv1))=> x2) as proof of (a->(a->(((r Xv0) Xv1)->((r Xv0) Xv1))))
% Found x2:((r Xv00) Xv)
% Found (fun (x2:((r Xv00) Xv))=> x2) as proof of ((r Xv00) Xv)
% Found (fun (Xy0:a) (x2:((r Xv00) Xv))=> x2) as proof of (((r Xv00) Xv)->((r Xv00) Xv))
% Found (fun (Xx0:a) (Xy0:a) (x2:((r Xv00) Xv))=> x2) as proof of (a->(((r Xv00) Xv)->((r Xv00) Xv)))
% Found (fun (Xx0:a) (Xy0:a) (x2:((r Xv00) Xv))=> x2) as proof of (a->(a->(((r Xv00) Xv)->((r Xv00) Xv))))
% Found x2:((r Xv) Xv00)
% Found (fun (x2:((r Xv) Xv00))=> x2) as proof of ((r Xv) Xv00)
% Found (fun (Xy0:a) (x2:((r Xv) Xv00))=> x2) as proof of (((r Xv) Xv00)->((r Xv) Xv00))
% Found (fun (Xx0:a) (Xy0:a) (x2:((r Xv) Xv00))=> x2) as proof of (a->(((r Xv) Xv00)->((r Xv) Xv00)))
% Found (fun (Xx0:a) (Xy0:a) (x2:((r Xv) Xv00))=> x2) as proof of (a->(a->(((r Xv) Xv00)->((r Xv) Xv00))))
% Found x2:((r Xx0) Xy0)
% Instantiate: Xv1:=Xx0:a
% Found (fun (x2:((r Xx0) Xy0))=> x2) as proof of ((r Xv1) Xy0)
% Found (fun (Xy0:a) (x2:((r Xx0) Xy0))=> x2) as proof of (((r Xx0) Xy0)->((r Xv1) Xy0))
% Found x3:((or ((r Xx0) Xv1)) ((r Xv1) Xx0))
% Found (fun (x4:((or ((r Xy0) Xv1)) ((r Xv1) Xy0)))=> x3) as proof of ((or ((r Xx0) Xv1)) ((r Xv1) Xx0))
% Found (fun (x3:((or ((r Xx0) Xv1)) ((r Xv1) Xx0))) (x4:((or ((r Xy0) Xv1)) ((r Xv1) Xy0)))=> x3) as proof of (((or ((r Xy0) Xv1)) ((r Xv1) Xy0))->((or ((r Xx0) Xv1)) ((r Xv1) Xx0)))
% Found (fun (x3:((or ((r Xx0) Xv1)) ((r Xv1) Xx0))) (x4:((or ((r Xy0) Xv1)) ((r Xv1) Xy0)))=> x3) as proof of (((or ((r Xx0) Xv1)) ((r Xv1) Xx0))->(((or ((r Xy0) Xv1)) ((r Xv1) Xy0))->((or ((r Xx0) Xv1)) ((r Xv1) Xx0))))
% Found (and_rect10 (fun (x3:((or ((r Xx0) Xv1)) ((r Xv1) Xx0))) (x4:((or ((r Xy0) Xv1)) ((r Xv1) Xy0)))=> x3)) as proof of ((or ((r Xx0) Xv1)) ((r Xv1) Xx0))
% Found ((and_rect1 ((or ((r Xx0) Xv1)) ((r Xv1) Xx0))) (fun (x3:((or ((r Xx0) Xv1)) ((r Xv1) Xx0))) (x4:((or ((r Xy0) Xv1)) ((r Xv1) Xy0)))=> x3)) as proof of ((or ((r Xx0) Xv1)) ((r Xv1) Xx0))
% Found (((fun (P:Type) (x3:(((or ((r Xx0) Xv1)) ((r Xv1) Xx0))->(((or ((r Xy0) Xv1)) ((r Xv1) Xy0))->P)))=> (((((and_rect ((or ((r Xx0) Xv1)) ((r Xv1) Xx0))) ((or ((r Xy0) Xv1)) ((r Xv1) Xy0))) P) x3) x2)) ((or ((r Xx0) Xv1)) ((r Xv1) Xx0))) (fun (x3:((or ((r Xx0) Xv1)) ((r Xv1) Xx0))) (x4:((or ((r Xy0) Xv1)) ((r Xv1) Xy0)))=> x3)) as proof of ((or ((r Xx0) Xv1)) ((r Xv1) Xx0))
% Found (fun (x2:((and ((or ((r Xx0) Xv1)) ((r Xv1) Xx0))) ((or ((r Xy0) Xv1)) ((r Xv1) Xy0))))=> (((fun (P:Type) (x3:(((or ((r Xx0) Xv1)) ((r Xv1) Xx0))->(((or ((r Xy0) Xv1)) ((r Xv1) Xy0))->P)))=> (((((and_rect ((or ((r Xx0) Xv1)) ((r Xv1) Xx0))) ((or ((r Xy0) Xv1)) ((r Xv1) Xy0))) P) x3) x2)) ((or ((r Xx0) Xv1)) ((r Xv1) Xx0))) (fun (x3:((or ((r Xx0) Xv1)) ((r Xv1) Xx0))) (x4:((or ((r Xy0) Xv1)) ((r Xv1) Xy0)))=> x3))) as proof of ((or ((r Xx0) Xv1)) ((r Xv1) Xx0))
% Found (fun (Xz:a) (x2:((and ((or ((r Xx0) Xv1)) ((r Xv1) Xx0))) ((or ((r Xy0) Xv1)) ((r Xv1) Xy0))))=> (((fun (P:Type) (x3:(((or ((r Xx0) Xv1)) ((r Xv1) Xx0))->(((or ((r Xy0) Xv1)) ((r Xv1) Xy0))->P)))=> (((((and_rect ((or ((r Xx0) Xv1)) ((r Xv1) Xx0))) ((or ((r Xy0) Xv1)) ((r Xv1) Xy0))) P) x3) x2)) ((or ((r Xx0) Xv1)) ((r Xv1) Xx0))) (fun (x3:((or ((r Xx0) Xv1)) ((r Xv1) Xx0))) (x4:((or ((r Xy0) Xv1)) ((r Xv1) Xy0)))=> x3))) as proof of (((and ((or ((r Xx0) Xv1)) ((r Xv1) Xx0))) ((or ((r Xy0) Xv1)) ((r Xv1) Xy0)))->((or ((r Xx0) Xv1)) ((r Xv1) Xx0)))
% Found (fun (Xy0:a) (Xz:a) (x2:((and ((or ((r Xx0) Xv1)) ((r Xv1) Xx0))) ((or ((r Xy0) Xv1)) ((r Xv1) Xy0))))=> (((fun (P:Type) (x3:(((or ((r Xx0) Xv1)) ((r Xv1) Xx0))->(((or ((r Xy0) Xv1)) ((r Xv1) Xy0))->P)))=> (((((and_rect ((or ((r Xx0) Xv1)) ((r Xv1) Xx0))) ((or ((r Xy0) Xv1)) ((r Xv1) Xy0))) P) x3) x2)) ((or ((r Xx0) Xv1)) ((r Xv1) Xx0))) (fun (x3:((or ((r Xx0) Xv1)) ((r Xv1) Xx0))) (x4:((or ((r Xy0) Xv1)) ((r Xv1) Xy0)))=> x3))) as proof of (a->(((and ((or ((r Xx0) Xv1)) ((r Xv1) Xx0))) ((or ((r Xy0) Xv1)) ((r Xv1) Xy0)))->((or ((r Xx0) Xv1)) ((r Xv1) Xx0))))
% Found (fun (Xx0:a) (Xy0:a) (Xz:a) (x2:((and ((or ((r Xx0) Xv1)) ((r Xv1) Xx0))) ((or ((r Xy0) Xv1)) ((r Xv1) Xy0))))=> (((fun (P:Type) (x3:(((or ((r Xx0) Xv1)) ((r Xv1) Xx0))->(((or ((r Xy0) Xv1)) ((r Xv1) Xy0))->P)))=> (((((and_rect ((or ((r Xx0) Xv1)) ((r Xv1) Xx0))) ((or ((r Xy0) Xv1)) ((r Xv1) Xy0))) P) x3) x2)) ((or ((r Xx0) Xv1)) ((r Xv1) Xx0))) (fun (x3:((or ((r Xx0) Xv1)) ((r Xv1) Xx0))) (x4:((or ((r Xy0) Xv1)) ((r Xv1) Xy0)))=> x3))) as proof of (forall (Xy0:a), (a->(((and ((or ((r Xx0) Xv1)) ((r Xv1) Xx0))) ((or ((r Xy0) Xv1)) ((r Xv1) Xy0)))->((or ((r Xx0) Xv1)) ((r Xv1) Xx0)))))
% Found (fun (Xx0:a) (Xy0:a) (Xz:a) (x2:((and ((or ((r Xx0) Xv1)) ((r Xv1) Xx0))) ((or ((r Xy0) Xv1)) ((r Xv1) Xy0))))=> (((fun (P:Type) (x3:(((or ((r Xx0) Xv1)) ((r Xv1) Xx0))->(((or ((r Xy0) Xv1)) ((r Xv1) Xy0))->P)))=> (((((and_rect ((or ((r Xx0) Xv1)) ((r Xv1) Xx0))) ((or ((r Xy0) Xv1)) ((r Xv1) Xy0))) P) x3) x2)) ((or ((r Xx0) Xv1)) ((r Xv1) Xx0))) (fun (x3:((or ((r Xx0) Xv1)) ((r Xv1) Xx0))) (x4:((or ((r Xy0) Xv1)) ((r Xv1) Xy0)))=> x3))) as proof of (forall (Xx0:a) (Xy0:a), (a->(((and ((or ((r Xx0) Xv1)) ((r Xv1) Xx0))) ((or ((r Xy0) Xv1)) ((r Xv1) Xy0)))->((or ((r Xx0) Xv1)) ((r Xv1) Xx0)))))
% Found x3:((or ((r Xx0) Xv00)) ((r Xv00) Xx0))
% Found (fun (x4:((or ((r Xy0) Xv00)) ((r Xv00) Xy0)))=> x3) as proof of ((or ((r Xx0) Xv00)) ((r Xv00) Xx0))
% Found (fun (x3:((or ((r Xx0) Xv00)) ((r Xv00) Xx0))) (x4:((or ((r Xy0) Xv00)) ((r Xv00) Xy0)))=> x3) as proof of (((or ((r Xy0) Xv00)) ((r Xv00) Xy0))->((or ((r Xx0) Xv00)) ((r Xv00) Xx0)))
% Found (fun (x3:((or ((r Xx0) Xv00)) ((r Xv00) Xx0))) (x4:((or ((r Xy0) Xv00)) ((r Xv00) Xy0)))=> x3) as proof of (((or ((r Xx0) Xv00)) ((r Xv00) Xx0))->(((or ((r Xy0) Xv00)) ((r Xv00) Xy0))->((or ((r Xx0) Xv00)) ((r Xv00) Xx0))))
% Found (and_rect10 (fun (x3:((or ((r Xx0) Xv00)) ((r Xv00) Xx0))) (x4:((or ((r Xy0) Xv00)) ((r Xv00) Xy0)))=> x3)) as proof of ((or ((r Xx0) Xv00)) ((r Xv00) Xx0))
% Found ((and_rect1 ((or ((r Xx0) Xv00)) ((r Xv00) Xx0))) (fun (x3:((or ((r Xx0) Xv00)) ((r Xv00) Xx0))) (x4:((or ((r Xy0) Xv00)) ((r Xv00) Xy0)))=> x3)) as proof of ((or ((r Xx0) Xv00)) ((r Xv00) Xx0))
% Found (((fun (P:Type) (x3:(((or ((r Xx0) Xv00)) ((r Xv00) Xx0))->(((or ((r Xy0) Xv00)) ((r Xv00) Xy0))->P)))=> (((((and_rect ((or ((r Xx0) Xv00)) ((r Xv00) Xx0))) ((or ((r Xy0) Xv00)) ((r Xv00) Xy0))) P) x3) x2)) ((or ((r Xx0) Xv00)) ((r Xv00) Xx0))) (fun (x3:((or ((r Xx0) Xv00)) ((r Xv00) Xx0))) (x4:((or ((r Xy0) Xv00)) ((r Xv00) Xy0)))=> x3)) as proof of ((or ((r Xx0) Xv00)) ((r Xv00) Xx0))
% Found (fun (x2:((and ((or ((r Xx0) Xv00)) ((r Xv00) Xx0))) ((or ((r Xy0) Xv00)) ((r Xv00) Xy0))))=> (((fun (P:Type) (x3:(((or ((r Xx0) Xv00)) ((r Xv00) Xx0))->(((or ((r Xy0) Xv00)) ((r Xv00) Xy0))->P)))=> (((((and_rect ((or ((r Xx0) Xv00)) ((r Xv00) Xx0))) ((or ((r Xy0) Xv00)) ((r Xv00) Xy0))) P) x3) x2)) ((or ((r Xx0) Xv00)) ((r Xv00) Xx0))) (fun (x3:((or ((r Xx0) Xv00)) ((r Xv00) Xx0))) (x4:((or ((r Xy0) Xv00)) ((r Xv00) Xy0)))=> x3))) as proof of ((or ((r Xx0) Xv00)) ((r Xv00) Xx0))
% Found (fun (Xz:a) (x2:((and ((or ((r Xx0) Xv00)) ((r Xv00) Xx0))) ((or ((r Xy0) Xv00)) ((r Xv00) Xy0))))=> (((fun (P:Type) (x3:(((or ((r Xx0) Xv00)) ((r Xv00) Xx0))->(((or ((r Xy0) Xv00)) ((r Xv00) Xy0))->P)))=> (((((and_rect ((or ((r Xx0) Xv00)) ((r Xv00) Xx0))) ((or ((r Xy0) Xv00)) ((r Xv00) Xy0))) P) x3) x2)) ((or ((r Xx0) Xv00)) ((r Xv00) Xx0))) (fun (x3:((or ((r Xx0) Xv00)) ((r Xv00) Xx0))) (x4:((or ((r Xy0) Xv00)) ((r Xv00) Xy0)))=> x3))) as proof of (((and ((or ((r Xx0) Xv00)) ((r Xv00) Xx0))) ((or ((r Xy0) Xv00)) ((r Xv00) Xy0)))->((or ((r Xx0) Xv00)) ((r Xv00) Xx0)))
% Found (fun (Xy0:a) (Xz:a) (x2:((and ((or ((r Xx0) Xv00)) ((r Xv00) Xx0))) ((or ((r Xy0) Xv00)) ((r Xv00) Xy0))))=> (((fun (P:Type) (x3:(((or ((r Xx0) Xv00)) ((r Xv00) Xx0))->(((or ((r Xy0) Xv00)) ((r Xv00) Xy0))->P)))=> (((((and_rect ((or ((r Xx0) Xv00)) ((r Xv00) Xx0))) ((or ((r Xy0) Xv00)) ((r Xv00) Xy0))) P) x3) x2)) ((or ((r Xx0) Xv00)) ((r Xv00) Xx0))) (fun (x3:((or ((r Xx0) Xv00)) ((r Xv00) Xx0))) (x4:((or ((r Xy0) Xv00)) ((r Xv00) Xy0)))=> x3))) as proof of (a->(((and ((or ((r Xx0) Xv00)) ((r Xv00) Xx0))) ((or ((r Xy0) Xv00)) ((r Xv00) Xy0)))->((or ((r Xx0) Xv00)) ((r Xv00) Xx0))))
% Found (fun (Xx0:a) (Xy0:a) (Xz:a) (x2:((and ((or ((r Xx0) Xv00)) ((r Xv00) Xx0))) ((or ((r Xy0) Xv00)) ((r Xv00) Xy0))))=> (((fun (P:Type) (x3:(((or ((r Xx0) Xv00)) ((r Xv00) Xx0))->(((or ((r Xy0) Xv00)) ((r Xv00) Xy0))->P)))=> (((((and_rect ((or ((r Xx0) Xv00)) ((r Xv00) Xx0))) ((or ((r Xy0) Xv00)) ((r Xv00) Xy0))) P) x3) x2)) ((or ((r Xx0) Xv00)) ((r Xv00) Xx0))) (fun (x3:((or ((r Xx0) Xv00)) ((r Xv00) Xx0))) (x4:((or ((r Xy0) Xv00)) ((r Xv00) Xy0)))=> x3))) as proof of (forall (Xy0:a), (a->(((and ((or ((r Xx0) Xv00)) ((r Xv00) Xx0))) ((or ((r Xy0) Xv00)) ((r Xv00) Xy0)))->((or ((r Xx0) Xv00)) ((r Xv00) Xx0)))))
% Found (fun (Xx0:a) (Xy0:a) (Xz:a) (x2:((and ((or ((r Xx0) Xv00)) ((r Xv00) Xx0))) ((or ((r Xy0) Xv00)) ((r Xv00) Xy0))))=> (((fun (P:Type) (x3:(((or ((r Xx0) Xv00)) ((r Xv00) Xx0))->(((or ((r Xy0) Xv00)) ((r Xv00) Xy0))->P)))=> (((((and_rect ((or ((r Xx0) Xv00)) ((r Xv00) Xx0))) ((or ((r Xy0) Xv00)) ((r Xv00) Xy0))) P) x3) x2)) ((or ((r Xx0) Xv00)) ((r Xv00) Xx0))) (fun (x3:((or ((r Xx0) Xv00)) ((r Xv00) Xx0))) (x4:((or ((r Xy0) Xv00)) ((r Xv00) Xy0)))=> x3))) as proof of (forall (Xx0:a) (Xy0:a), (a->(((and ((or ((r Xx0) Xv00)) ((r Xv00) Xx0))) ((or ((r Xy0) Xv00)) ((r Xv00) Xy0)))->((or ((r Xx0) Xv00)) ((r Xv00) Xx0)))))
% Found x3:((or ((r Xx0) Xv1)) ((r Xv1) Xx0))
% Found (fun (x4:((or ((r Xy0) Xv1)) ((r Xv1) Xy0)))=> x3) as proof of ((or ((r Xx0) Xv1)) ((r Xv1) Xx0))
% Found (fun (x3:((or ((r Xx0) Xv1)) ((r Xv1) Xx0))) (x4:((or ((r Xy0) Xv1)) ((r Xv1) Xy0)))=> x3) as proof of (((or ((r Xy0) Xv1)) ((r Xv1) Xy0))->((or ((r Xx0) Xv1)) ((r Xv1) Xx0)))
% Found (fun (x3:((or ((r Xx0) Xv1)) ((r Xv1) Xx0))) (x4:((or ((r Xy0) Xv1)) ((r Xv1) Xy0)))=> x3) as proof of (((or ((r Xx0) Xv1)) ((r Xv1) Xx0))->(((or ((r Xy0) Xv1)) ((r Xv1) Xy0))->((or ((r Xx0) Xv1)) ((r Xv1) Xx0))))
% Found (and_rect10 (fun (x3:((or ((r Xx0) Xv1)) ((r Xv1) Xx0))) (x4:((or ((r Xy0) Xv1)) ((r Xv1) Xy0)))=> x3)) as proof of ((or ((r Xx0) Xv1)) ((r Xv1) Xx0))
% Found ((and_rect1 ((or ((r Xx0) Xv1)) ((r Xv1) Xx0))) (fun (x3:((or ((r Xx0) Xv1)) ((r Xv1) Xx0))) (x4:((or ((r Xy0) Xv1)) ((r Xv1) Xy0)))=> x3)) as proof of ((or ((r Xx0) Xv1)) ((r Xv1) Xx0))
% Found (((fun (P:Type) (x3:(((or ((r Xx0) Xv1)) ((r Xv1) Xx0))->(((or ((r Xy0) Xv1)) ((r Xv1) Xy0))->P)))=> (((((and_rect ((or ((r Xx0) Xv1)) ((r Xv1) Xx0))) ((or ((r Xy0) Xv1)) ((r Xv1) Xy0))) P) x3) x2)) ((or ((r Xx0) Xv1)) ((r Xv1) Xx0))) (fun (x3:((or ((r Xx0) Xv1)) ((r Xv1) Xx0))) (x4:((or ((r Xy0) Xv1)) ((r Xv1) Xy0)))=> x3)) as proof of ((or ((r Xx0) Xv1)) ((r Xv1) Xx0))
% Found (fun (x2:((and ((or ((r Xx0) Xv1)) ((r Xv1) Xx0))) ((or ((r Xy0) Xv1)) ((r Xv1) Xy0))))=> (((fun (P:Type) (x3:(((or ((r Xx0) Xv1)) ((r Xv1) Xx0))->(((or ((r Xy0) Xv1)) ((r Xv1) Xy0))->P)))=> (((((and_rect ((or ((r Xx0) Xv1)) ((r Xv1) Xx0))) ((or ((r Xy0) Xv1)) ((r Xv1) Xy0))) P) x3) x2)) ((or ((r Xx0) Xv1)) ((r Xv1) Xx0))) (fun (x3:((or ((r Xx0) Xv1)) ((r Xv1) Xx0))) (x4:((or ((r Xy0) Xv1)) ((r Xv1) Xy0)))=> x3))) as proof of ((or ((r Xx0) Xv1)) ((r Xv1) Xx0))
% Found (fun (Xz:a) (x2:((and ((or ((r Xx0) Xv1)) ((r Xv1) Xx0))) ((or ((r Xy0) Xv1)) ((r Xv1) Xy0))))=> (((fun (P:Type) (x3:(((or ((r Xx0) Xv1)) ((r Xv1) Xx0))->(((or ((r Xy0) Xv1)) ((r Xv1) Xy0))->P)))=> (((((and_rect ((or ((r Xx0) Xv1)) ((r Xv1) Xx0))) ((or ((r Xy0) Xv1)) ((r Xv1) Xy0))) P) x3) x2)) ((or ((r Xx0) Xv1)) ((r Xv1) Xx0))) (fun (x3:((or ((r Xx0) Xv1)) ((r Xv1) Xx0))) (x4:((or ((r Xy0) Xv1)) ((r Xv1) Xy0)))=> x3))) as proof of (((and ((or ((r Xx0) Xv1)) ((r Xv1) Xx0))) ((or ((r Xy0) Xv1)) ((r Xv1) Xy0)))->((or ((r Xx0) Xv1)) ((r Xv1) Xx0)))
% Found (fun (Xy0:a) (Xz:a) (x2:((and ((or ((r Xx0) Xv1)) ((r Xv1) Xx0))) ((or ((r Xy0) Xv1)) ((r Xv1) Xy0))))=> (((fun (P:Type) (x3:(((or ((r Xx0) Xv1)) ((r Xv1) Xx0))->(((or ((r Xy0) Xv1)) ((r Xv1) Xy0))->P)))=> (((((and_rect ((or ((r Xx0) Xv1)) ((r Xv1) Xx0))) ((or ((r Xy0) Xv1)) ((r Xv1) Xy0))) P) x3) x2)) ((or ((r Xx0) Xv1)) ((r Xv1) Xx0))) (fun (x3:((or ((r Xx0) Xv1)) ((r Xv1) Xx0))) (x4:((or ((r Xy0) Xv1)) ((r Xv1) Xy0)))=> x3))) as proof of (a->(((and ((or ((r Xx0) Xv1)) ((r Xv1) Xx0))) ((or ((r Xy0) Xv1)) ((r Xv1) Xy0)))->((or ((r Xx0) Xv1)) ((r Xv1) Xx0))))
% Found (fun (Xx0:a) (Xy0:a) (Xz:a) (x2:((and ((or ((r Xx0) Xv1)) ((r Xv1) Xx0))) ((or ((r Xy0) Xv1)) ((r Xv1) Xy0))))=> (((fun (P:Type) (x3:(((or ((r Xx0) Xv1)) ((r Xv1) Xx0))->(((or ((r Xy0) Xv1)) ((r Xv1) Xy0))->P)))=> (((((and_rect ((or ((r Xx0) Xv1)) ((r Xv1) Xx0))) ((or ((r Xy0) Xv1)) ((r Xv1) Xy0))) P) x3) x2)) ((or ((r Xx0) Xv1)) ((r Xv1) Xx0))) (fun (x3:((or ((r Xx0) Xv1)) ((r Xv1) Xx0))) (x4:((or ((r Xy0) Xv1)) ((r Xv1) Xy0)))=> x3))) as proof of (forall (Xy0:a), (a->(((and ((or ((r Xx0) Xv1)) ((r Xv1) Xx0))) ((or ((r Xy0) Xv1)) ((r Xv1) Xy0)))->((or ((r Xx0) Xv1)) ((r Xv1) Xx0)))))
% Found (fun (Xx0:a) (Xy0:a) (Xz:a) (x2:((and ((or ((r Xx0) Xv1)) ((r Xv1) Xx0))) ((or ((r Xy0) Xv1)) ((r Xv1) Xy0))))=> (((fun (P:Type) (x3:(((or ((r Xx0) Xv1)) ((r Xv1) Xx0))->(((or ((r Xy0) Xv1)) ((r Xv1) Xy0))->P)))=> (((((and_rect ((or ((r Xx0) Xv1)) ((r Xv1) Xx0))) ((or ((r Xy0) Xv1)) ((r Xv1) Xy0))) P) x3) x2)) ((or ((r Xx0) Xv1)) ((r Xv1) Xx0))) (fun (x3:((or ((r Xx0) Xv1)) ((r Xv1) Xx0))) (x4:((or ((r Xy0) Xv1)) ((r Xv1) Xy0)))=> x3))) as proof of (forall (Xx0:a) (Xy0:a), (a->(((and ((or ((r Xx0) Xv1)) ((r Xv1) Xx0))) ((or ((r Xy0) Xv1)) ((r Xv1) Xy0)))->((or ((r Xx0) Xv1)) ((r Xv1) Xx0)))))
% Found or_comm_i00:=(or_comm_i0 ((r Xv1) Xv0)):(((or ((r Xv0) Xv1)) ((r Xv1) Xv0))->((or ((r Xv1) Xv0)) ((r Xv0) Xv1)))
% Instantiate: Xv0:=Xv1:a
% Found (fun (x3:((or ((r Xv0) Xv1)) ((r Xv1) Xv0)))=> or_comm_i00) as proof of (((or ((r Xv0) Xv1)) ((r Xv1) Xv0))->((or ((r Xv0) Xv1)) ((r Xv1) Xv0)))
% Found (fun (x3:((or ((r Xv0) Xv1)) ((r Xv1) Xv0)))=> or_comm_i00) as proof of (((or ((r Xv0) Xv1)) ((r Xv1) Xv0))->(((or ((r Xv0) Xv1)) ((r Xv1) Xv0))->((or ((r Xv0) Xv1)) ((r Xv1) Xv0))))
% Found (and_rect10 (fun (x3:((or ((r Xv0) Xv1)) ((r Xv1) Xv0)))=> or_comm_i00)) as proof of ((or ((r Xv0) Xv1)) ((r Xv1) Xv0))
% Found ((and_rect1 ((or ((r Xv0) Xv1)) ((r Xv1) Xv0))) (fun (x3:((or ((r Xv0) Xv1)) ((r Xv1) Xv0)))=> or_comm_i00)) as proof of ((or ((r Xv0) Xv1)) ((r Xv1) Xv0))
% Found (((fun (P:Type) (x3:(((or ((r Xv0) Xv1)) ((r Xv1) Xv0))->(((or ((r Xv0) Xv1)) ((r Xv1) Xv0))->P)))=> (((((and_rect ((or ((r Xv0) Xv1)) ((r Xv1) Xv0))) ((or ((r Xv0) Xv1)) ((r Xv1) Xv0))) P) x3) x2)) ((or ((r Xv0) Xv1)) ((r Xv1) Xv0))) (fun (x3:((or ((r Xv0) Xv1)) ((r Xv1) Xv0)))=> or_comm_i00)) as proof of ((or ((r Xv0) Xv1)) ((r Xv1) Xv0))
% Found (fun (x2:((and ((or ((r Xv0) Xv1)) ((r Xv1) Xv0))) ((or ((r Xv0) Xv1)) ((r Xv1) Xv0))))=> (((fun (P:Type) (x3:(((or ((r Xv0) Xv1)) ((r Xv1) Xv0))->(((or ((r Xv0) Xv1)) ((r Xv1) Xv0))->P)))=> (((((and_rect ((or ((r Xv0) Xv1)) ((r Xv1) Xv0))) ((or ((r Xv0) Xv1)) ((r Xv1) Xv0))) P) x3) x2)) ((or ((r Xv0) Xv1)) ((r Xv1) Xv0))) (fun (x3:((or ((r Xv0) Xv1)) ((r Xv1) Xv0)))=> or_comm_i00))) as proof of ((or ((r Xv0) Xv1)) ((r Xv1) Xv0))
% Found (fun (Xz:a) (x2:((and ((or ((r Xv0) Xv1)) ((r Xv1) Xv0))) ((or ((r Xv0) Xv1)) ((r Xv1) Xv0))))=> (((fun (P:Type) (x3:(((or ((r Xv0) Xv1)) ((r Xv1) Xv0))->(((or ((r Xv0) Xv1)) ((r Xv1) Xv0))->P)))=> (((((and_rect ((or ((r Xv0) Xv1)) ((r Xv1) Xv0))) ((or ((r Xv0) Xv1)) ((r Xv1) Xv0))) P) x3) x2)) ((or ((r Xv0) Xv1)) ((r Xv1) Xv0))) (fun (x3:((or ((r Xv0) Xv1)) ((r Xv1) Xv0)))=> or_comm_i00))) as proof of (((and ((or ((r Xv0) Xv1)) ((r Xv1) Xv0))) ((or ((r Xv0) Xv1)) ((r Xv1) Xv0)))->((or ((r Xv0) Xv1)) ((r Xv1) Xv0)))
% Found (fun (Xy0:a) (Xz:a) (x2:((and ((or ((r Xv0) Xv1)) ((r Xv1) Xv0))) ((or ((r Xv0) Xv1)) ((r Xv1) Xv0))))=> (((fun (P:Type) (x3:(((or ((r Xv0) Xv1)) ((r Xv1) Xv0))->(((or ((r Xv0) Xv1)) ((r Xv1) Xv0))->P)))=> (((((and_rect ((or ((r Xv0) Xv1)) ((r Xv1) Xv0))) ((or ((r Xv0) Xv1)) ((r Xv1) Xv0))) P) x3) x2)) ((or ((r Xv0) Xv1)) ((r Xv1) Xv0))) (fun (x3:((or ((r Xv0) Xv1)) ((r Xv1) Xv0)))=> or_comm_i00))) as proof of (a->(((and ((or ((r Xv0) Xv1)) ((r Xv1) Xv0))) ((or ((r Xv0) Xv1)) ((r Xv1) Xv0)))->((or ((r Xv0) Xv1)) ((r Xv1) Xv0))))
% Found (fun (Xx0:a) (Xy0:a) (Xz:a) (x2:((and ((or ((r Xv0) Xv1)) ((r Xv1) Xv0))) ((or ((r Xv0) Xv1)) ((r Xv1) Xv0))))=> (((fun (P:Type) (x3:(((or ((r Xv0) Xv1)) ((r Xv1) Xv0))->(((or ((r Xv0) Xv1)) ((r Xv1) Xv0))->P)))=> (((((and_rect ((or ((r Xv0) Xv1)) ((r Xv1) Xv0))) ((or ((r Xv0) Xv1)) ((r Xv1) Xv0))) P) x3) x2)) ((or ((r Xv0) Xv1)) ((r Xv1) Xv0))) (fun (x3:((or ((r Xv0) Xv1)) ((r Xv1) Xv0)))=> or_comm_i00))) as proof of (a->(a->(((and ((or ((r Xv0) Xv1)) ((r Xv1) Xv0))) ((or ((r Xv0) Xv1)) ((r Xv1) Xv0)))->((or ((r Xv0) Xv1)) ((r Xv1) Xv0)))))
% Found (fun (Xx0:a) (Xy0:a) (Xz:a) (x2:((and ((or ((r Xv0) Xv1)) ((r Xv1) Xv0))) ((or ((r Xv0) Xv1)) ((r Xv1) Xv0))))=> (((fun (P:Type) (x3:(((or ((r Xv0) Xv1)) ((r Xv1) Xv0))->(((or ((r Xv0) Xv1)) ((r Xv1) Xv0))->P)))=> (((((and_rect ((or ((r Xv0) Xv1)) ((r Xv1) Xv0))) ((or ((r Xv0) Xv1)) ((r Xv1) Xv0))) P) x3) x2)) ((or ((r Xv0) Xv1)) ((r Xv1) Xv0))) (fun (x3:((or ((r Xv0) Xv1)) ((r Xv1) Xv0)))=> or_comm_i00))) as proof of (a->(a->(a->(((and ((or ((r Xv0) Xv1)) ((r Xv1) Xv0))) ((or ((r Xv0) Xv1)) ((r Xv1) Xv0)))->((or ((r Xv0) Xv1)) ((r Xv1) Xv0))))))
% Found or_comm_i00:=(or_comm_i0 ((r Xv1) Xv0)):(((or ((r Xv0) Xv1)) ((r Xv1) Xv0))->((or ((r Xv1) Xv0)) ((r Xv0) Xv1)))
% Found (fun (Xy0:a)=> or_comm_i00) as proof of (((or ((r Xv0) Xv1)) ((r Xv1) Xv0))->((or ((r Xv0) Xv1)) ((r Xv1) Xv0)))
% Found (fun (Xx0:a) (Xy0:a)=> or_comm_i00) as proof of (a->(((or ((r Xv0) Xv1)) ((r Xv1) Xv0))->((or ((r Xv0) Xv1)) ((r Xv1) Xv0))))
% Found (fun (Xx0:a) (Xy0:a)=> or_comm_i00) as proof of (a->(a->(((or ((r Xv0) Xv1)) ((r Xv1) Xv0))->((or ((r Xv0) Xv1)) ((r Xv1) Xv0)))))
% Found or_intror00:=(or_intror0 ((r Xx0) Xy0)):(((r Xx0) Xy0)->((or ((r Xv0) Xv1)) ((r Xx0) Xy0)))
% Found (or_intror0 ((r Xx0) Xy0)) as proof of (((r Xx0) Xy0)->((or ((r Xv0) Xv1)) ((r Xv1) Xv0)))
% Found ((or_intror ((r Xv0) Xv1)) ((r Xx0) Xy0)) as proof of (((r Xx0) Xy0)->((or ((r Xv0) Xv1)) ((r Xv1) Xv0)))
% Found ((or_intror ((r Xv0) Xv1)) ((r Xx0) Xy0)) as proof of (((r Xx0) Xy0)->((or ((r Xv0) Xv1)) ((r Xv1) Xv0)))
% Found ((or_intror ((r Xv0) Xv1)) ((r Xx0) Xy0)) as proof of (((r Xx0) Xy0)->((or ((r Xv0) Xv1)) ((r Xv1) Xv0)))
% Found or_introl00:=(or_introl0 ((r Xv1) Xv0)):(((r Xx0) Xy0)->((or ((r Xx0) Xy0)) ((r Xv1) Xv0)))
% Found (or_introl0 ((r Xv1) Xv0)) as proof of (((r Xx0) Xy0)->((or ((r Xv0) Xv1)) ((r Xv1) Xv0)))
% Found ((or_introl ((r Xx0) Xy0)) ((r Xv1) Xv0)) as proof of (((r Xx0) Xy0)->((or ((r Xv0) Xv1)) ((r Xv1) Xv0)))
% Found ((or_introl ((r Xx0) Xy0)) ((r Xv1) Xv0)) as proof of (((r Xx0) Xy0)->((or ((r Xv0) Xv1)) ((r Xv1) Xv0)))
% Found ((or_introl ((r Xx0) Xy0)) ((r Xv1) Xv0)) as proof of (((r Xx0) Xy0)->((or ((r Xv0) Xv1)) ((r Xv1) Xv0)))
% Found or_intror00:=(or_intror0 ((r Xx0) Xy0)):(((r Xx0) Xy0)->((or ((r Xv0) Xv1)) ((r Xx0) Xy0)))
% Found (or_intror0 ((r Xx0) Xy0)) as proof of (((r Xx0) Xy0)->((or ((r Xv0) Xv1)) ((r Xv1) Xv0)))
% Found ((or_intror ((r Xv0) Xv1)) ((r Xx0) Xy0)) as proof of (((r Xx0) Xy0)->((or ((r Xv0) Xv1)) ((r Xv1) Xv0)))
% Found ((or_intror ((r Xv0) Xv1)) ((r Xx0) Xy0)) as proof of (((r Xx0) Xy0)->((or ((r Xv0) Xv1)) ((r Xv1) Xv0)))
% Found ((or_intror ((r Xv0) Xv1)) ((r Xx0) Xy0)) as proof of (((r Xx0) Xy0)->((or ((r Xv0) Xv1)) ((r Xv1) Xv0)))
% Found or_introl00:=(or_introl0 ((r Xv1) Xv0)):(((r Xx0) Xy0)->((or ((r Xx0) Xy0)) ((r Xv1) Xv0)))
% Found (or_introl0 ((r Xv1) Xv0)) as proof of (((r Xx0) Xy0)->((or ((r Xv0) Xv1)) ((r Xv1) Xv0)))
% Found ((or_introl ((r Xx0) Xy0)) ((r Xv1) Xv0)) as proof of (((r Xx0) Xy0)->((or ((r Xv0) Xv1)) ((r Xv1) Xv0)))
% Found ((or_introl ((r Xx0) Xy0)) ((r Xv1) Xv0)) as proof of (((r Xx0) Xy0)->((or ((r Xv0) Xv1)) ((r Xv1) Xv0)))
% Found ((or_introl ((r Xx0) Xy0)) ((r Xv1) Xv0)) as proof of (((r Xx0) Xy0)->((or ((r Xv0) Xv1)) ((r Xv1) Xv0)))
% Found or_comm_i00:=(or_comm_i0 ((r Xv00) Xv)):(((or ((r Xv) Xv00)) ((r Xv00) Xv))->((or ((r Xv00) Xv)) ((r Xv) Xv00)))
% Instantiate: Xv00:=Xv0:a
% Found (fun (x3:((or ((r Xv) Xv00)) ((r Xv00) Xv)))=> or_comm_i00) as proof of (((or ((r Xv) Xv00)) ((r Xv00) Xv))->((or ((r Xv) Xv00)) ((r Xv00) Xv)))
% Found (fun (x3:((or ((r Xv) Xv00)) ((r Xv00) Xv)))=> or_comm_i00) as proof of (((or ((r Xv) Xv00)) ((r Xv00) Xv))->(((or ((r Xv) Xv00)) ((r Xv00) Xv))->((or ((r Xv) Xv00)) ((r Xv00) Xv))))
% Found (and_rect10 (fun (x3:((or ((r Xv) Xv00)) ((r Xv00) Xv)))=> or_comm_i00)) as proof of ((or ((r Xv) Xv00)) ((r Xv00) Xv))
% Found ((and_rect1 ((or ((r Xv) Xv00)) ((r Xv00) Xv))) (fun (x3:((or ((r Xv) Xv00)) ((r Xv00) Xv)))=> or_comm_i00)) as proof of ((or ((r Xv) Xv00)) ((r Xv00) Xv))
% Found (((fun (P:Type) (x3:(((or ((r Xv) Xv00)) ((r Xv00) Xv))->(((or ((r Xv) Xv00)) ((r Xv00) Xv))->P)))=> (((((and_rect ((or ((r Xv) Xv00)) ((r Xv00) Xv))) ((or ((r Xv) Xv00)) ((r Xv00) Xv))) P) x3) x2)) ((or ((r Xv) Xv00)) ((r Xv00) Xv))) (fun (x3:((or ((r Xv) Xv00)) ((r Xv00) Xv)))=> or_comm_i00)) as proof of ((or ((r Xv) Xv00)) ((r Xv00) Xv))
% Found (fun (x2:((and ((or ((r Xv) Xv00)) ((r Xv00) Xv))) ((or ((r Xv) Xv00)) ((r Xv00) Xv))))=> (((fun (P:Type) (x3:(((or ((r Xv) Xv00)) ((r Xv00) Xv))->(((or ((r Xv) Xv00)) ((r Xv00) Xv))->P)))=> (((((and_rect ((or ((r Xv) Xv00)) ((r Xv00) Xv))) ((or ((r Xv) Xv00)) ((r Xv00) Xv))) P) x3) x2)) ((or ((r Xv) Xv00)) ((r Xv00) Xv))) (fun (x3:((or ((r Xv) Xv00)) ((r Xv00) Xv)))=> or_comm_i00))) as proof of ((or ((r Xv) Xv00)) ((r Xv00) Xv))
% Found (fun (Xz:a) (x2:((and ((or ((r Xv) Xv00)) ((r Xv00) Xv))) ((or ((r Xv) Xv00)) ((r Xv00) Xv))))=> (((fun (P:Type) (x3:(((or ((r Xv) Xv00)) ((r Xv00) Xv))->(((or ((r Xv) Xv00)) ((r Xv00) Xv))->P)))=> (((((and_rect ((or ((r Xv) Xv00)) ((r Xv00) Xv))) ((or ((r Xv) Xv00)) ((r Xv00) Xv))) P) x3) x2)) ((or ((r Xv) Xv00)) ((r Xv00) Xv))) (fun (x3:((or ((r Xv) Xv00)) ((r Xv00) Xv)))=> or_comm_i00))) as proof of (((and ((or ((r Xv) Xv00)) ((r Xv00) Xv))) ((or ((r Xv) Xv00)) ((r Xv00) Xv)))->((or ((r Xv) Xv00)) ((r Xv00) Xv)))
% Found (fun (Xy0:a) (Xz:a) (x2:((and ((or ((r Xv) Xv00)) ((r Xv00) Xv))) ((or ((r Xv) Xv00)) ((r Xv00) Xv))))=> (((fun (P:Type) (x3:(((or ((r Xv) Xv00)) ((r Xv00) Xv))->(((or ((r Xv) Xv00)) ((r Xv00) Xv))->P)))=> (((((and_rect ((or ((r Xv) Xv00)) ((r Xv00) Xv))) ((or ((r Xv) Xv00)) ((r Xv00) Xv))) P) x3) x2)) ((or ((r Xv) Xv00)) ((r Xv00) Xv))) (fun (x3:((or ((r Xv) Xv00)) ((r Xv00) Xv)))=> or_comm_i00))) as proof of (a->(((and ((or ((r Xv) Xv00)) ((r Xv00) Xv))) ((or ((r Xv) Xv00)) ((r Xv00) Xv)))->((or ((r Xv) Xv00)) ((r Xv00) Xv))))
% Found (fun (Xx0:a) (Xy0:a) (Xz:a) (x2:((and ((or ((r Xv) Xv00)) ((r Xv00) Xv))) ((or ((r Xv) Xv00)) ((r Xv00) Xv))))=> (((fun (P:Type) (x3:(((or ((r Xv) Xv00)) ((r Xv00) Xv))->(((or ((r Xv) Xv00)) ((r Xv00) Xv))->P)))=> (((((and_rect ((or ((r Xv) Xv00)) ((r Xv00) Xv))) ((or ((r Xv) Xv00)) ((r Xv00) Xv))) P) x3) x2)) ((or ((r Xv) Xv00)) ((r Xv00) Xv))) (fun (x3:((or ((r Xv) Xv00)) ((r Xv00) Xv)))=> or_comm_i00))) as proof of (a->(a->(((and ((or ((r Xv) Xv00)) ((r Xv00) Xv))) ((or ((r Xv) Xv00)) ((r Xv00) Xv)))->((or ((r Xv) Xv00)) ((r Xv00) Xv)))))
% Found (fun (Xx0:a) (Xy0:a) (Xz:a) (x2:((and ((or ((r Xv) Xv00)) ((r Xv00) Xv))) ((or ((r Xv) Xv00)) ((r Xv00) Xv))))=> (((fun (P:Type) (x3:(((or ((r Xv) Xv00)) ((r Xv00) Xv))->(((or ((r Xv) Xv00)) ((r Xv00) Xv))->P)))=> (((((and_rect ((or ((r Xv) Xv00)) ((r Xv00) Xv))) ((or ((r Xv) Xv00)) ((r Xv00) Xv))) P) x3) x2)) ((or ((r Xv) Xv00)) ((r Xv00) Xv))) (fun (x3:((or ((r Xv) Xv00)) ((r Xv00) Xv)))=> or_comm_i00))) as proof of (a->(a->(a->(((and ((or ((r Xv) Xv00)) ((r Xv00) Xv))) ((or ((r Xv) Xv00)) ((r Xv00) Xv)))->((or ((r Xv) Xv00)) ((r Xv00) Xv))))))
% Found or_comm_i00:=(or_comm_i0 ((r Xv00) Xv)):(((or ((r Xv) Xv00)) ((r Xv00) Xv))->((or ((r Xv00) Xv)) ((r Xv) Xv00)))
% Found (fun (Xy0:a)=> or_comm_i00) as proof of (((or ((r Xv) Xv00)) ((r Xv00) Xv))->((or ((r Xv) Xv00)) ((r Xv00) Xv)))
% Found (fun (Xx0:a) (Xy0:a)=> or_comm_i00) as proof of (a->(((or ((r Xv) Xv00)) ((r Xv00) Xv))->((or ((r Xv) Xv00)) ((r Xv00) Xv))))
% Found (fun (Xx0:a) (Xy0:a)=> or_comm_i00) as proof of (a->(a->(((or ((r Xv) Xv00)) ((r Xv00) Xv))->((or ((r Xv) Xv00)) ((r Xv00) Xv)))))
% Found or_intror00:=(or_intror0 ((r Xx0) Xy0)):(((r Xx0) Xy0)->((or ((r Xv) Xv00)) ((r Xx0) Xy0)))
% Found (or_intror0 ((r Xx0) Xy0)) as proof of (((r Xx0) Xy0)->((or ((r Xv) Xv00)) ((r Xv00) Xv)))
% Found ((or_intror ((r Xv) Xv00)) ((r Xx0) Xy0)) as proof of (((r Xx0) Xy0)->((or ((r Xv) Xv00)) ((r Xv00) Xv)))
% Found ((or_intror ((r Xv) Xv00)) ((r Xx0) Xy0)) as proof of (((r Xx0) Xy0)->((or ((r Xv) Xv00)) ((r Xv00) Xv)))
% Found ((or_intror ((r Xv) Xv00)) ((r Xx0) Xy0)) as proof of (((r Xx0) Xy0)->((or ((r Xv) Xv00)) ((r Xv00) Xv)))
% Found or_intror00:=(or_intror0 ((r Xx0) Xy0)):(((r Xx0) Xy0)->((or ((r Xv) Xv00)) ((r Xx0) Xy0)))
% Found (or_intror0 ((r Xx0) Xy0)) as proof of (((r Xx0) Xy0)->((or ((r Xv) Xv00)) ((r Xv00) Xv)))
% Found ((or_intror ((r Xv) Xv00)) ((r Xx0) Xy0)) as proof of (((r Xx0) Xy0)->((or ((r Xv) Xv00)) ((r Xv00) Xv)))
% Found ((or_intror ((r Xv) Xv00)) ((r Xx0) Xy0)) as proof of (((r Xx0) Xy0)->((or ((r Xv) Xv00)) ((r Xv00) Xv)))
% Found ((or_intror ((r Xv) Xv00)) ((r Xx0) Xy0)) as proof of (((r Xx0) Xy0)->((or ((r Xv) Xv00)) ((r Xv00) Xv)))
% Found or_introl00:=(or_introl0 ((r Xv00) Xv)):(((r Xx0) Xy0)->((or ((r Xx0) Xy0)) ((r Xv00) Xv)))
% Found (or_introl0 ((r Xv00) Xv)) as proof of (((r Xx0) Xy0)->((or ((r Xv) Xv00)) ((r Xv00) Xv)))
% Found ((or_introl ((r Xx0) Xy0)) ((r Xv00) Xv)) as proof of (((r Xx0) Xy0)->((or ((r Xv) Xv00)) ((r Xv00) Xv)))
% Found ((or_introl ((r Xx0) Xy0)) ((r Xv00) Xv)) as proof of (((r Xx0) Xy0)->((or ((r Xv) Xv00)) ((r Xv00) Xv)))
% Found ((or_introl ((r Xx0) Xy0)) ((r Xv00) Xv)) as proof of (((r Xx0) Xy0)->((or ((r Xv) Xv00)) ((r Xv00) Xv)))
% Found or_introl00:=(or_introl0 ((r Xv00) Xv)):(((r Xx0) Xy0)->((or ((r Xx0) Xy0)) ((r Xv00) Xv)))
% Found (or_introl0 ((r Xv00) Xv)) as proof of (((r Xx0) Xy0)->((or ((r Xv) Xv00)) ((r Xv00) Xv)))
% Found ((or_introl ((r Xx0) Xy0)) ((r Xv00) Xv)) as proof of (((r Xx0) Xy0)->((or ((r Xv) Xv00)) ((r Xv00) Xv)))
% Found ((or_introl ((r Xx0) Xy0)) ((r Xv00) Xv)) as proof of (((r Xx0) Xy0)->((or ((r Xv) Xv00)) ((r Xv00) Xv)))
% Found ((or_introl ((r Xx0) Xy0)) ((r Xv00) Xv)) as proof of (((r Xx0) Xy0)->((or ((r Xv) Xv00)) ((r Xv00) Xv)))
% Found or_intror00:=(or_intror0 ((r Xx0) Xy0)):(((r Xx0) Xy0)->((or ((r Xy0) Xv1)) ((r Xx0) Xy0)))
% Found (or_intror0 ((r Xx0) Xy0)) as proof of (((r Xx0) Xy0)->((or ((r Xy0) Xv1)) ((r Xv1) Xy0)))
% Found ((or_intror ((r Xy0) Xv1)) ((r Xx0) Xy0)) as proof of (((r Xx0) Xy0)->((or ((r Xy0) Xv1)) ((r Xv1) Xy0)))
% Found ((or_intror ((r Xy0) Xv1)) ((r Xx0) Xy0)) as proof of (((r Xx0) Xy0)->((or ((r Xy0) Xv1)) ((r Xv1) Xy0)))
% Found (fun (Xy0:a)=> ((or_intror ((r Xy0) Xv1)) ((r Xx0) Xy0))) as proof of (((r Xx0) Xy0)->((or ((r Xy0) Xv1)) ((r Xv1) Xy0)))
% Found x2:((r Xx0) Xy0)
% Instantiate: Xv1:=Xy0:a;Xv0:=Xx0:a
% Found x2 as proof of ((r Xv0) Xv1)
% Found (or_introl00 x2) as proof of ((or ((r Xv0) Xv1)) ((r Xv1) Xv0))
% Found ((or_introl0 ((r Xv1) Xv0)) x2) as proof of ((or ((r Xv0) Xv1)) ((r Xv1) Xv0))
% Found (((or_introl ((r Xv0) Xv1)) ((r Xv1) Xv0)) x2) as proof of ((or ((r Xv0) Xv1)) ((r Xv1) Xv0))
% Found (((or_introl ((r Xv0) Xv1)) ((r Xv1) Xv0)) x2) as proof of ((or ((r Xv0) Xv1)) ((r Xv1) Xv0))
% Found (or_comm_i00 (((or_introl ((r Xv0) Xv1)) ((r Xv1) Xv0)) x2)) as proof of ((or ((r Xv1) Xv0)) ((r Xv0) Xv1))
% Found ((or_comm_i0 ((r Xv1) Xv0)) (((or_introl ((r Xv0) Xv1)) ((r Xv1) Xv0)) x2)) as proof of ((or ((r Xv1) Xv0)) ((r Xv0) Xv1))
% Found (((or_comm_i ((r Xv0) Xv1)) ((r Xv1) Xv0)) (((or_introl ((r Xv0) Xv1)) ((r Xv1) Xv0)) x2)) as proof of ((or ((r Xv1) Xv0)) ((r Xv0) Xv1))
% Found (fun (x2:((r Xx0) Xy0))=> (((or_comm_i ((r Xv0) Xv1)) ((r Xv1) Xv0)) (((or_introl ((r Xv0) Xv1)) ((r Xv1) Xv0)) x2))) as proof of ((or ((r Xv1) Xv0)) ((r Xv0) Xv1))
% Found x2:((r Xx0) Xy0)
% Instantiate: Xv1:=Xy0:a;Xv0:=Xx0:a
% Found x2 as proof of ((r Xv0) Xv1)
% Found (or_introl00 x2) as proof of ((or ((r Xv0) Xv1)) ((r Xv1) Xv0))
% Found ((or_introl0 ((r Xv1) Xv0)) x2) as proof of ((or ((r Xv0) Xv1)) ((r Xv1) Xv0))
% Found (((or_introl ((r Xv0) Xv1)) ((r Xv1) Xv0)) x2) as proof of ((or ((r Xv0) Xv1)) ((r Xv1) Xv0))
% Found (fun (x2:((r Xx0) Xy0))=> (((or_introl ((r Xv0) Xv1)) ((r Xv1) Xv0)) x2)) as proof of ((or ((r Xv0) Xv1)) ((r Xv1) Xv0))
% Found x2:((r Xx0) Xy0)
% Instantiate: Xv1:=Xx0:a;Xv0:=Xy0:a
% Found x2 as proof of ((r Xv1) Xv0)
% Found (or_intror00 x2) as proof of ((or ((r Xv0) Xv1)) ((r Xv1) Xv0))
% Found ((or_intror0 ((r Xv1) Xv0)) x2) as proof of ((or ((r Xv0) Xv1)) ((r Xv1) Xv0))
% Found (((or_intror ((r Xv0) Xv1)) ((r Xv1) Xv0)) x2) as proof of ((or ((r Xv0) Xv1)) ((r Xv1) Xv0))
% Found (fun (x2:((r Xx0) Xy0))=> (((or_intror ((r Xv0) Xv1)) ((r Xv1) Xv0)) x2)) as proof of ((or ((r Xv0) Xv1)) ((r Xv1) Xv0))
% Found or_introl00:=(or_introl0 ((r Xv1) Xv2)):(((r Xx0) Xy0)->((or ((r Xx0) Xy0)) ((r Xv1) Xv2)))
% Found (or_introl0 ((r Xv1) Xv2)) as proof of (((r Xx0) Xy0)->((or ((r Xv2) Xv1)) ((r Xv1) Xv2)))
% Found ((or_introl ((r Xx0) Xy0)) ((r Xv1) Xv2)) as proof of (((r Xx0) Xy0)->((or ((r Xv2) Xv1)) ((r Xv1) Xv2)))
% Found ((or_introl ((r Xx0) Xy0)) ((r Xv1) Xv2)) as proof of (((r Xx0) Xy0)->((or ((r Xv2) Xv1)) ((r Xv1) Xv2)))
% Found ((or_introl ((r Xx0) Xy0)) ((r Xv1) Xv2)) as proof of (((r Xx0) Xy0)->((or ((r Xv2) Xv1)) ((r Xv1) Xv2)))
% Found or_intror00:=(or_intror0 ((r Xx0) Xy0)):(((r Xx0) Xy0)->((or ((r Xv2) Xv1)) ((r Xx0) Xy0)))
% Found (or_intror0 ((r Xx0) Xy0)) as proof of (((r Xx0) Xy0)->((or ((r Xv2) Xv1)) ((r Xv1) Xv2)))
% Found ((or_intror ((r Xv2) Xv1)) ((r Xx0) Xy0)) as proof of (((r Xx0) Xy0)->((or ((r Xv2) Xv1)) ((r Xv1) Xv2)))
% Found ((or_intror ((r Xv2) Xv1)) ((r Xx0) Xy0)) as proof of (((r Xx0) Xy0)->((or ((r Xv2) Xv1)) ((r Xv1) Xv2)))
% Found ((or_intror ((r Xv2) Xv1)) ((r Xx0) Xy0)) as proof of (((r Xx0) Xy0)->((or ((r Xv2) Xv1)) ((r Xv1) Xv2)))
% Found or_intror00:=(or_intror0 ((r Xx0) Xy0)):(((r Xx0) Xy0)->((or ((r Xv2) Xv1)) ((r Xx0) Xy0)))
% Found (or_intror0 ((r Xx0) Xy0)) as proof of (((r Xx0) Xy0)->((or ((r Xv2) Xv1)) ((r Xv1) Xv2)))
% Found ((or_intror ((r Xv2) Xv1)) ((r Xx0) Xy0)) as proof of (((r Xx0) Xy0)->((or ((r Xv2) Xv1)) ((r Xv1) Xv2)))
% Found ((or_intror ((r Xv2) Xv1)) ((r Xx0) Xy0)) as proof of (((r Xx0) Xy0)->((or ((r Xv2) Xv1)) ((r Xv1) Xv2)))
% Found ((or_intror ((r Xv2) Xv1)) ((r Xx0) Xy0)) as proof of (((r Xx0) Xy0)->((or ((r Xv2) Xv1)) ((r Xv1) Xv2)))
% Found or_introl00:=(or_introl0 ((r Xv1) Xv2)):(((r Xx0) Xy0)->((or ((r Xx0) Xy0)) ((r Xv1) Xv2)))
% Found (or_introl0 ((r Xv1) Xv2)) as proof of (((r Xx0) Xy0)->((or ((r Xv2) Xv1)) ((r Xv1) Xv2)))
% Found ((or_introl ((r Xx0) Xy0)) ((r Xv1) Xv2)) as proof of (((r Xx0) Xy0)->((or ((r Xv2) Xv1)) ((r Xv1) Xv2)))
% Found ((or_introl ((r Xx0) Xy0)) ((r Xv1) Xv2)) as proof of (((r Xx0) Xy0)->((or ((r Xv2) Xv1)) ((r Xv1) Xv2)))
% Found ((or_introl ((r Xx0) Xy0)) ((r Xv1) Xv2)) as proof of (((r Xx0) Xy0)->((or ((r Xv2) Xv1)) ((r Xv1) Xv2)))
% Found x2:((r Xx0) Xy0)
% Instantiate: Xv1:=Xy0:a
% Found x2 as proof of ((r Xx0) Xv1)
% Found (or_introl00 x2) as proof of ((or ((r Xx0) Xv1)) ((r Xv1) Xx0))
% Found ((or_introl0 ((r Xv1) Xx0)) x2) as proof of ((or ((r Xx0) Xv1)) ((r Xv1) Xx0))
% Found (((or_introl ((r Xx0) Xv1)) ((r Xv1) Xx0)) x2) as proof of ((or ((r Xx0) Xv1)) ((r Xv1) Xx0))
% Found (fun (x2:((r Xx0) Xy0))=> (((or_introl ((r Xx0) Xv1)) ((r Xv1) Xx0)) x2)) as proof of ((or ((r Xx0) Xv1)) ((r Xv1) Xx0))
% Found x2:((r Xx0) Xy0)
% Instantiate: Xv00:=Xy0:a
% Found x2 as proof of ((r Xx0) Xv00)
% Found (or_introl00 x2) as proof of ((or ((r Xx0) Xv00)) ((r Xv00) Xx0))
% Found ((or_introl0 ((r Xv00) Xx0)) x2) as proof of ((or ((r Xx0) Xv00)) ((r Xv00) Xx0))
% Found (((or_introl ((r Xx0) Xv00)) ((r Xv00) Xx0)) x2) as proof of ((or ((r Xx0) Xv00)) ((r Xv00) Xx0))
% Found (fun (x2:((r Xx0) Xy0))=> (((or_introl ((r Xx0) Xv00)) ((r Xv00) Xx0)) x2)) as proof of ((or ((r Xx0) Xv00)) ((r Xv00) Xx0))
% Found x2:((r Xx0) Xy0)
% Instantiate: Xv1:=Xy0:a
% Found x2 as proof of ((r Xx0) Xv1)
% Found (or_introl00 x2) as proof of ((or ((r Xx0) Xv1)) ((r Xv1) Xx0))
% Found ((or_introl0 ((r Xv1) Xx0)) x2) as proof of ((or ((r Xx0) Xv1)) ((r Xv1) Xx0))
% Found (((or_introl ((r Xx0) Xv1)) ((r Xv1) Xx0)) x2) as proof of ((or ((r Xx0) Xv1)) ((r Xv1) Xx0))
% Found (fun (x2:((r Xx0) Xy0))=> (((or_introl ((r Xx0) Xv1)) ((r Xv1) Xx0)) x2)) as proof of ((or ((r Xx0) Xv1)) ((r Xv1) Xx0))
% Found x4:((r Xz) Xv1)
% Found (fun (x4:((r Xz) Xv1))=> x4) as proof of ((r Xz) Xv1)
% Found (fun (x3:((r Xy0) Xv1)) (x4:((r Xz) Xv1))=> x4) as proof of (((r Xz) Xv1)->((r Xz) Xv1))
% Found (fun (x3:((r Xy0) Xv1)) (x4:((r Xz) Xv1))=> x4) as proof of (((r Xy0) Xv1)->(((r Xz) Xv1)->((r Xz) Xv1)))
% Found (and_rect10 (fun (x3:((r Xy0) Xv1)) (x4:((r Xz) Xv1))=> x4)) as proof of ((r Xz) Xv1)
% Found ((and_rect1 ((r Xz) Xv1)) (fun (x3:((r Xy0) Xv1)) (x4:((r Xz) Xv1))=> x4)) as proof of ((r Xz) Xv1)
% Found (((fun (P:Type) (x3:(((r Xy0) Xv1)->(((r Xz) Xv1)->P)))=> (((((and_rect ((r Xy0) Xv1)) ((r Xz) Xv1)) P) x3) x2)) ((r Xz) Xv1)) (fun (x3:((r Xy0) Xv1)) (x4:((r Xz) Xv1))=> x4)) as proof of ((r Xz) Xv1)
% Found (fun (x2:((and ((r Xy0) Xv1)) ((r Xz) Xv1)))=> (((fun (P:Type) (x3:(((r Xy0) Xv1)->(((r Xz) Xv1)->P)))=> (((((and_rect ((r Xy0) Xv1)) ((r Xz) Xv1)) P) x3) x2)) ((r Xz) Xv1)) (fun (x3:((r Xy0) Xv1)) (x4:((r Xz) Xv1))=> x4))) as proof of ((r Xz) Xv1)
% Found (fun (Xz:a) (x2:((and ((r Xy0) Xv1)) ((r Xz) Xv1)))=> (((fun (P:Type) (x3:(((r Xy0) Xv1)->(((r Xz) Xv1)->P)))=> (((((and_rect ((r Xy0) Xv1)) ((r Xz) Xv1)) P) x3) x2)) ((r Xz) Xv1)) (fun (x3:((r Xy0) Xv1)) (x4:((r Xz) Xv1))=> x4))) as proof of (((and ((r Xy0) Xv1)) ((r Xz) Xv1))->((r Xz) Xv1))
% Found (fun (Xy0:a) (Xz:a) (x2:((and ((r Xy0) Xv1)) ((r Xz) Xv1)))=> (((fun (P:Type) (x3:(((r Xy0) Xv1)->(((r Xz) Xv1)->P)))=> (((((and_rect ((r Xy0) Xv1)) ((r Xz) Xv1)) P) x3) x2)) ((r Xz) Xv1)) (fun (x3:((r Xy0) Xv1)) (x4:((r Xz) Xv1))=> x4))) as proof of (forall (Xz:a), (((and ((r Xy0) Xv1)) ((r Xz) Xv1))->((r Xz) Xv1)))
% Found (fun (Xx0:a) (Xy0:a) (Xz:a) (x2:((and ((r Xy0) Xv1)) ((r Xz) Xv1)))=> (((fun (P:Type) (x3:(((r Xy0) Xv1)->(((r Xz) Xv1)->P)))=> (((((and_rect ((r Xy0) Xv1)) ((r Xz) Xv1)) P) x3) x2)) ((r Xz) Xv1)) (fun (x3:((r Xy0) Xv1)) (x4:((r Xz) Xv1))=> x4))) as proof of (forall (Xy0:a) (Xz:a), (((and ((r Xy0) Xv1)) ((r Xz) Xv1))->((r Xz) Xv1)))
% Found (fun (Xx0:a) (Xy0:a) (Xz:a) (x2:((and ((r Xy0) Xv1)) ((r Xz) Xv1)))=> (((fun (P:Type) (x3:(((r Xy0) Xv1)->(((r Xz) Xv1)->P)))=> (((((and_rect ((r Xy0) Xv1)) ((r Xz) Xv1)) P) x3) x2)) ((r Xz) Xv1)) (fun (x3:((r Xy0) Xv1)) (x4:((r Xz) Xv1))=> x4))) as proof of (a->(forall (Xy0:a) (Xz:a), (((and ((r Xy0) Xv1)) ((r Xz) Xv1))->((r Xz) Xv1))))
% Found x4:((r Xv1) Xz)
% Found (fun (x4:((r Xv1) Xz))=> x4) as proof of ((r Xv1) Xz)
% Found (fun (x3:((r Xv1) Xy0)) (x4:((r Xv1) Xz))=> x4) as proof of (((r Xv1) Xz)->((r Xv1) Xz))
% Found (fun (x3:((r Xv1) Xy0)) (x4:((r Xv1) Xz))=> x4) as proof of (((r Xv1) Xy0)->(((r Xv1) Xz)->((r Xv1) Xz)))
% Found (and_rect10 (fun (x3:((r Xv1) Xy0)) (x4:((r Xv1) Xz))=> x4)) as proof of ((r Xv1) Xz)
% Found ((and_rect1 ((r Xv1) Xz)) (fun (x3:((r Xv1) Xy0)) (x4:((r Xv1) Xz))=> x4)) as proof of ((r Xv1) Xz)
% Found (((fun (P:Type) (x3:(((r Xv1) Xy0)->(((r Xv1) Xz)->P)))=> (((((and_rect ((r Xv1) Xy0)) ((r Xv1) Xz)) P) x3) x2)) ((r Xv1) Xz)) (fun (x3:((r Xv1) Xy0)) (x4:((r Xv1) Xz))=> x4)) as proof of ((r Xv1) Xz)
% Found (fun (x2:((and ((r Xv1) Xy0)) ((r Xv1) Xz)))=> (((fun (P:Type) (x3:(((r Xv1) Xy0)->(((r Xv1) Xz)->P)))=> (((((and_rect ((r Xv1) Xy0)) ((r Xv1) Xz)) P) x3) x2)) ((r Xv1) Xz)) (fun (x3:((r Xv1) Xy0)) (x4:((r Xv1) Xz))=> x4))) as proof of ((r Xv1) Xz)
% Found (fun (Xz:a) (x2:((and ((r Xv1) Xy0)) ((r Xv1) Xz)))=> (((fun (P:Type) (x3:(((r Xv1) Xy0)->(((r Xv1) Xz)->P)))=> (((((and_rect ((r Xv1) Xy0)) ((r Xv1) Xz)) P) x3) x2)) ((r Xv1) Xz)) (fun (x3:((r Xv1) Xy0)) (x4:((r Xv1) Xz))=> x4))) as proof of (((and ((r Xv1) Xy0)) ((r Xv1) Xz))->((r Xv1) Xz))
% Found (fun (Xy0:a) (Xz:a) (x2:((and ((r Xv1) Xy0)) ((r Xv1) Xz)))=> (((fun (P:Type) (x3:(((r Xv1) Xy0)->(((r Xv1) Xz)->P)))=> (((((and_rect ((r Xv1) Xy0)) ((r Xv1) Xz)) P) x3) x2)) ((r Xv1) Xz)) (fun (x3:((r Xv1) Xy0)) (x4:((r Xv1) Xz))=> x4))) as proof of (forall (Xz:a), (((and ((r Xv1) Xy0)) ((r Xv1) Xz))->((r Xv1) Xz)))
% Found (fun (Xx0:a) (Xy0:a) (Xz:a) (x2:((and ((r Xv1) Xy0)) ((r Xv1) Xz)))=> (((fun (P:Type) (x3:(((r Xv1) Xy0)->(((r Xv1) Xz)->P)))=> (((((and_rect ((r Xv1) Xy0)) ((r Xv1) Xz)) P) x3) x2)) ((r Xv1) Xz)) (fun (x3:((r Xv1) Xy0)) (x4:((r Xv1) Xz))=> x4))) as proof of (forall (Xy0:a) (Xz:a), (((and ((r Xv1) Xy0)) ((r Xv1) Xz))->((r Xv1) Xz)))
% Found (fun (Xx0:a) (Xy0:a) (Xz:a) (x2:((and ((r Xv1) Xy0)) ((r Xv1) Xz)))=> (((fun (P:Type) (x3:(((r Xv1) Xy0)->(((r Xv1) Xz)->P)))=> (((((and_rect ((r Xv1) Xy0)) ((r Xv1) Xz)) P) x3) x2)) ((r Xv1) Xz)) (fun (x3:((r Xv1) Xy0)) (x4:((r Xv1) Xz))=> x4))) as proof of (a->(forall (Xy0:a) (Xz:a), (((and ((r Xv1) Xy0)) ((r Xv1) Xz))->((r Xv1) Xz))))
% Found x4:((r Xv) Xv00)
% Found (fun (x4:((r Xv) Xv00))=> x4) as proof of ((r Xv) Xv00)
% Found (fun (x3:((r Xv) Xv00)) (x4:((r Xv) Xv00))=> x4) as proof of (((r Xv) Xv00)->((r Xv) Xv00))
% Found (fun (x3:((r Xv) Xv00)) (x4:((r Xv) Xv00))=> x4) as proof of (((r Xv) Xv00)->(((r Xv) Xv00)->((r Xv) Xv00)))
% Found (and_rect10 (fun (x3:((r Xv) Xv00)) (x4:((r Xv) Xv00))=> x4)) as proof of ((r Xv) Xv00)
% Found ((and_rect1 ((r Xv) Xv00)) (fun (x3:((r Xv) Xv00)) (x4:((r Xv) Xv00))=> x4)) as proof of ((r Xv) Xv00)
% Found (((fun (P:Type) (x3:(((r Xv) Xv00)->(((r Xv) Xv00)->P)))=> (((((and_rect ((r Xv) Xv00)) ((r Xv) Xv00)) P) x3) x2)) ((r Xv) Xv00)) (fun (x3:((r Xv) Xv00)) (x4:((r Xv) Xv00))=> x4)) as proof of ((r Xv) Xv00)
% Found (fun (x2:((and ((r Xv) Xv00)) ((r Xv) Xv00)))=> (((fun (P:Type) (x3:(((r Xv) Xv00)->(((r Xv) Xv00)->P)))=> (((((and_rect ((r Xv) Xv00)) ((r Xv) Xv00)) P) x3) x2)) ((r Xv) Xv00)) (fun (x3:((r Xv) Xv00)) (x4:((r Xv) Xv00))=> x4))) as proof of ((r Xv) Xv00)
% Found (fun (Xz:a) (x2:((and ((r Xv) Xv00)) ((r Xv) Xv00)))=> (((fun (P:Type) (x3:(((r Xv) Xv00)->(((r Xv) Xv00)->P)))=> (((((and_rect ((r Xv) Xv00)) ((r Xv) Xv00)) P) x3) x2)) ((r Xv) Xv00)) (fun (x3:((r Xv) Xv00)) (x4:((r Xv) Xv00))=> x4))) as proof of (((and ((r Xv) Xv00)) ((r Xv) Xv00))->((r Xv) Xv00))
% Found (fun (Xy0:a) (Xz:a) (x2:((and ((r Xv) Xv00)) ((r Xv) Xv00)))=> (((fun (P:Type) (x3:(((r Xv) Xv00)->(((r Xv) Xv00)->P)))=> (((((and_rect ((r Xv) Xv00)) ((r Xv) Xv00)) P) x3) x2)) ((r Xv) Xv00)) (fun (x3:((r Xv) Xv00)) (x4:((r Xv) Xv00))=> x4))) as proof of (a->(((and ((r Xv) Xv00)) ((r Xv) Xv00))->((r Xv) Xv00)))
% Found (fun (Xx0:a) (Xy0:a) (Xz:a) (x2:((and ((r Xv) Xv00)) ((r Xv) Xv00)))=> (((fun (P:Type) (x3:(((r Xv) Xv00)->(((r Xv) Xv00)->P)))=> (((((and_rect ((r Xv) Xv00)) ((r Xv) Xv00)) P) x3) x2)) ((r Xv) Xv00)) (fun (x3:((r Xv) Xv00)) (x4:((r Xv) Xv00))=> x4))) as proof of (a->(a->(((and ((r Xv) Xv00)) ((r Xv) Xv00))->((r Xv) Xv00))))
% Found (fun (Xx0:a) (Xy0:a) (Xz:a) (x2:((and ((r Xv) Xv00)) ((r Xv) Xv00)))=> (((fun (P:Type) (x3:(((r Xv) Xv00)->(((r Xv) Xv00)->P)))=> (((((and_rect ((r Xv) Xv00)) ((r Xv) Xv00)) P) x3) x2)) ((r Xv) Xv00)) (fun (x3:((r Xv) Xv00)) (x4:((r Xv) Xv00))=> x4))) as proof of (a->(a->(a->(((and ((r Xv) Xv00)) ((r Xv) Xv00))->((r Xv) Xv00)))))
% Found x4:((r Xv00) Xv)
% Found (fun (x4:((r Xv00) Xv))=> x4) as proof of ((r Xv00) Xv)
% Found (fun (x3:((r Xv00) Xv)) (x4:((r Xv00) Xv))=> x4) as proof of (((r Xv00) Xv)->((r Xv00) Xv))
% Found (fun (x3:((r Xv00) Xv)) (x4:((r Xv00) Xv))=> x4) as proof of (((r Xv00) Xv)->(((r Xv00) Xv)->((r Xv00) Xv)))
% Found (and_rect10 (fun (x3:((r Xv00) Xv)) (x4:((r Xv00) Xv))=> x4)) as proof of ((r Xv00) Xv)
% Found ((and_rect1 ((r Xv00) Xv)) (fun (x3:((r Xv00) Xv)) (x4:((r Xv00) Xv))=> x4)) as proof of ((r Xv00) Xv)
% Found (((fun (P:Type) (x3:(((r Xv00) Xv)->(((r Xv00) Xv)->P)))=> (((((and_rect ((r Xv00) Xv)) ((r Xv00) Xv)) P) x3) x2)) ((r Xv00) Xv)) (fun (x3:((r Xv00) Xv)) (x4:((r Xv00) Xv))=> x4)) as proof of ((r Xv00) Xv)
% Found (fun (x2:((and ((r Xv00) Xv)) ((r Xv00) Xv)))=> (((fun (P:Type) (x3:(((r Xv00) Xv)->(((r Xv00) Xv)->P)))=> (((((and_rect ((r Xv00) Xv)) ((r Xv00) Xv)) P) x3) x2)) ((r Xv00) Xv)) (fun (x3:((r Xv00) Xv)) (x4:((r Xv00) Xv))=> x4))) as proof of ((r Xv00) Xv)
% Found (fun (Xz:a) (x2:((and ((r Xv00) Xv)) ((r Xv00) Xv)))=> (((fun (P:Type) (x3:(((r Xv00) Xv)->(((r Xv00) Xv)->P)))=> (((((and_rect ((r Xv00) Xv)) ((r Xv00) Xv)) P) x3) x2)) ((r Xv00) Xv)) (fun (x3:((r Xv00) Xv)) (x4:((r Xv00) Xv))=> x4))) as proof of (((and ((r Xv00) Xv)) ((r Xv00) Xv))->((r Xv00) Xv))
% Found (fun (Xy0:a) (Xz:a) (x2:((and ((r Xv00) Xv)) ((r Xv00) Xv)))=> (((fun (P:Type) (x3:(((r Xv00) Xv)->(((r Xv00) Xv)->P)))=> (((((and_rect ((r Xv00) Xv)) ((r Xv00) Xv)) P) x3) x2)) ((r Xv00) Xv)) (fun (x3:((r Xv00) Xv)) (x4:((r Xv00) Xv))=> x4))) as proof of (a->(((and ((r Xv00) Xv)) ((r Xv00) Xv))->((r Xv00) Xv)))
% Found (fun (Xx0:a) (Xy0:a) (Xz:a) (x2:((and ((r Xv00) Xv)) ((r Xv00) Xv)))=> (((fun (P:Type) (x3:(((r Xv00) Xv)->(((r Xv00) Xv)->P)))=> (((((and_rect ((r Xv00) Xv)) ((r Xv00) Xv)) P) x3) x2)) ((r Xv00) Xv)) (fun (x3:((r Xv00) Xv)) (x4:((r Xv00) Xv))=> x4))) as proof of (a->(a->(((and ((r Xv00) Xv)) ((r Xv00) Xv))->((r Xv00) Xv))))
% Found (fun (Xx0:a) (Xy0:a) (Xz:a) (x2:((and ((r Xv00) Xv)) ((r Xv00) Xv)))=> (((fun (P:Type) (x3:(((r Xv00) Xv)->(((r Xv00) Xv)->P)))=> (((((and_rect ((r Xv00) Xv)) ((r Xv00) Xv)) P) x3) x2)) ((r Xv00) Xv)) (fun (x3:((r Xv00) Xv)) (x4:((r Xv00) Xv))=> x4))) as proof of (a->(a->(a->(((and ((r Xv00) Xv)) ((r Xv00) Xv))->((r Xv00) Xv)))))
% Found x4:((r Xv0) Xv1)
% Found (fun (x4:((r Xv0) Xv1))=> x4) as proof of ((r Xv0) Xv1)
% Found (fun (x3:((r Xv0) Xv1)) (x4:((r Xv0) Xv1))=> x4) as proof of (((r Xv0) Xv1)->((r Xv0) Xv1))
% Found (fun (x3:((r Xv0) Xv1)) (x4:((r Xv0) Xv1))=> x4) as proof of (((r Xv0) Xv1)->(((r Xv0) Xv1)->((r Xv0) Xv1)))
% Found (and_rect10 (fun (x3:((r Xv0) Xv1)) (x4:((r Xv0) Xv1))=> x4)) as proof of ((r Xv0) Xv1)
% Found ((and_rect1 ((r Xv0) Xv1)) (fun (x3:((r Xv0) Xv1)) (x4:((r Xv0) Xv1))=> x4)) as proof of ((r Xv0) Xv1)
% Found (((fun (P:Type) (x3:(((r Xv0) Xv1)->(((r Xv0) Xv1)->P)))=> (((((and_rect ((r Xv0) Xv1)) ((r Xv0) Xv1)) P) x3) x2)) ((r Xv0) Xv1)) (fun (x3:((r Xv0) Xv1)) (x4:((r Xv0) Xv1))=> x4)) as proof of ((r Xv0) Xv1)
% Found (fun (x2:((and ((r Xv0) Xv1)) ((r Xv0) Xv1)))=> (((fun (P:Type) (x3:(((r Xv0) Xv1)->(((r Xv0) Xv1)->P)))=> (((((and_rect ((r Xv0) Xv1)) ((r Xv0) Xv1)) P) x3) x2)) ((r Xv0) Xv1)) (fun (x3:((r Xv0) Xv1)) (x4:((r Xv0) Xv1))=> x4))) as proof of ((r Xv0) Xv1)
% Found (fun (Xz:a) (x2:((and ((r Xv0) Xv1)) ((r Xv0) Xv1)))=> (((fun (P:Type) (x3:(((r Xv0) Xv1)->(((r Xv0) Xv1)->P)))=> (((((and_rect ((r Xv0) Xv1)) ((r Xv0) Xv1)) P) x3) x2)) ((r Xv0) Xv1)) (fun (x3:((r Xv0) Xv1)) (x4:((r Xv0) Xv1))=> x4))) as proof of (((and ((r Xv0) Xv1)) ((r Xv0) Xv1))->((r Xv0) Xv1))
% Found (fun (Xy0:a) (Xz:a) (x2:((and ((r Xv0) Xv1)) ((r Xv0) Xv1)))=> (((fun (P:Type) (x3:(((r Xv0) Xv1)->(((r Xv0) Xv1)->P)))=> (((((and_rect ((r Xv0) Xv1)) ((r Xv0) Xv1)) P) x3) x2)) ((r Xv0) Xv1)) (fun (x3:((r Xv0) Xv1)) (x4:((r Xv0) Xv1))=> x4))) as proof of (a->(((and ((r Xv0) Xv1)) ((r Xv0) Xv1))->((r Xv0) Xv1)))
% Found (fun (Xx0:a) (Xy0:a) (Xz:a) (x2:((and ((r Xv0) Xv1)) ((r Xv0) Xv1)))=> (((fun (P:Type) (x3:(((r Xv0) Xv1)->(((r Xv0) Xv1)->P)))=> (((((and_rect ((r Xv0) Xv1)) ((r Xv0) Xv1)) P) x3) x2)) ((r Xv0) Xv1)) (fun (x3:((r Xv0) Xv1)) (x4:((r Xv0) Xv1))=> x4))) as proof of (a->(a->(((and ((r Xv0) Xv1)) ((r Xv0) Xv1))->((r Xv0) Xv1))))
% Found (fun (Xx0:a) (Xy0:a) (Xz:a) (x2:((and ((r Xv0) Xv1)) ((r Xv0) Xv1)))=> (((fun (P:Type) (x3:(((r Xv0) Xv1)->(((r Xv0) Xv1)->P)))=> (((((and_rect ((r Xv0) Xv1)) ((r Xv0) Xv1)) P) x3) x2)) ((r Xv0) Xv1)) (fun (x3:((r Xv0) Xv1)) (x4:((r Xv0) Xv1))=> x4))) as proof of (a->(a->(a->(((and ((r Xv0) Xv1)) ((r Xv0) Xv1))->((r Xv0) Xv1)))))
% Found x4:((r Xv1) Xv0)
% Found (fun (x4:((r Xv1) Xv0))=> x4) as proof of ((r Xv1) Xv0)
% Found (fun (x3:((r Xv1) Xv0)) (x4:((r Xv1) Xv0))=> x4) as proof of (((r Xv1) Xv0)->((r Xv1) Xv0))
% Found (fun (x3:((r Xv1) Xv0)) (x4:((r Xv1) Xv0))=> x4) as proof of (((r Xv1) Xv0)->(((r Xv1) Xv0)->((r Xv1) Xv0)))
% Found (and_rect10 (fun (x3:((r Xv1) Xv0)) (x4:((r Xv1) Xv0))=> x4)) as proof of ((r Xv1) Xv0)
% Found ((and_rect1 ((r Xv1) Xv0)) (fun (x3:((r Xv1) Xv0)) (x4:((r Xv1) Xv0))=> x4)) as proof of ((r Xv1) Xv0)
% Found (((fun (P:Type) (x3:(((r Xv1) Xv0)->(((r Xv1) Xv0)->P)))=> (((((and_rect ((r Xv1) Xv0)) ((r Xv1) Xv0)) P) x3) x2)) ((r Xv1) Xv0)) (fun (x3:((r Xv1) Xv0)) (x4:((r Xv1) Xv0))=> x4)) as proof of ((r Xv1) Xv0)
% Found (fun (x2:((and ((r Xv1) Xv0)) ((r Xv1) Xv0)))=> (((fun (P:Type) (x3:(((r Xv1) Xv0)->(((r Xv1) Xv0)->P)))=> (((((and_rect ((r Xv1) Xv0)) ((r Xv1) Xv0)) P) x3) x2)) ((r Xv1) Xv0)) (fun (x3:((r Xv1) Xv0)) (x4:((r Xv1) Xv0))=> x4))) as proof of ((r Xv1) Xv0)
% Found (fun (Xz:a) (x2:((and ((r Xv1) Xv0)) ((r Xv1) Xv0)))=> (((fun (P:Type) (x3:(((r Xv1) Xv0)->(((r Xv1) Xv0)->P)))=> (((((and_rect ((r Xv1) Xv0)) ((r Xv1) Xv0)) P) x3) x2)) ((r Xv1) Xv0)) (fun (x3:((r Xv1) Xv0)) (x4:((r Xv1) Xv0))=> x4))) as proof of (((and ((r Xv1) Xv0)) ((r Xv1) Xv0))->((r Xv1) Xv0))
% Found (fun (Xy0:a) (Xz:a) (x2:((and ((r Xv1) Xv0)) ((r Xv1) Xv0)))=> (((fun (P:Type) (x3:(((r Xv1) Xv0)->(((r Xv1) Xv0)->P)))=> (((((and_rect ((r Xv1) Xv0)) ((r Xv1) Xv0)) P) x3) x2)) ((r Xv1) Xv0)) (fun (x3:((r Xv1) Xv0)) (x4:((r Xv1) Xv0))=> x4))) as proof of (a->(((and ((r Xv1) Xv0)) ((r Xv1) Xv0))->((r Xv1) Xv0)))
% Found (fun (Xx0:a) (Xy0:a) (Xz:a) (x2:((and ((r Xv1) Xv0)) ((r Xv1) Xv0)))=> (((fun (P:Type) (x3:(((r Xv1) Xv0)->(((r Xv1) Xv0)->P)))=> (((((and_rect ((r Xv1) Xv0)) ((r Xv1) Xv0)) P) x3) x2)) ((r Xv1) Xv0)) (fun (x3:((r Xv1) Xv0)) (x4:((r Xv1) Xv0))=> x4))) as proof of (a->(a->(((and ((r Xv1) Xv0)) ((r Xv1) Xv0))->((r Xv1) Xv0))))
% Found (fun (Xx0:a) (Xy0:a) (Xz:a) (x2:((and ((r Xv1) Xv0)) ((r Xv1) Xv0)))=> (((fun (P:Type) (x3:(((r Xv1) Xv0)->(((r Xv1) Xv0)->P)))=> (((((and_rect ((r Xv1) Xv0)) ((r Xv1) Xv0)) P) x3) x2)) ((r Xv1) Xv0)) (fun (x3:((r Xv1) Xv0)) (x4:((r Xv1) Xv0))=> x4))) as proof of (a->(a->(a->(((and ((r Xv1) Xv0)) ((r Xv1) Xv0))->((r Xv1) Xv0)))))
% Found x4:((or ((r Xz) Xv1)) ((r Xv1) Xz))
% Found (fun (x4:((or ((r Xz) Xv1)) ((r Xv1) Xz)))=> x4) as proof of ((or ((r Xz) Xv1)) ((r Xv1) Xz))
% Found (fun (x3:((or ((r Xy0) Xv1)) ((r Xv1) Xy0))) (x4:((or ((r Xz) Xv1)) ((r Xv1) Xz)))=> x4) as proof of (((or ((r Xz) Xv1)) ((r Xv1) Xz))->((or ((r Xz) Xv1)) ((r Xv1) Xz)))
% Found (fun (x3:((or ((r Xy0) Xv1)) ((r Xv1) Xy0))) (x4:((or ((r Xz) Xv1)) ((r Xv1) Xz)))=> x4) as proof of (((or ((r Xy0) Xv1)) ((r Xv1) Xy0))->(((or ((r Xz) Xv1)) ((r Xv1) Xz))->((or ((r Xz) Xv1)) ((r Xv1) Xz))))
% Found (and_rect10 (fun (x3:((or ((r Xy0) Xv1)) ((r Xv1) Xy0))) (x4:((or ((r Xz) Xv1)) ((r Xv1) Xz)))=> x4)) as proof of ((or ((r Xz) Xv1)) ((r Xv1) Xz))
% Found ((and_rect1 ((or ((r Xz) Xv1)) ((r Xv1) Xz))) (fun (x3:((or ((r Xy0) Xv1)) ((r Xv1) Xy0))) (x4:((or ((r Xz) Xv1)) ((r Xv1) Xz)))=> x4)) as proof of ((or ((r Xz) Xv1)) ((r Xv1) Xz))
% Found (((fun (P:Type) (x3:(((or ((r Xy0) Xv1)) ((r Xv1) Xy0))->(((or ((r Xz) Xv1)) ((r Xv1) Xz))->P)))=> (((((and_rect ((or ((r Xy0) Xv1)) ((r Xv1) Xy0))) ((or ((r Xz) Xv1)) ((r Xv1) Xz))) P) x3) x2)) ((or ((r Xz) Xv1)) ((r Xv1) Xz))) (fun (x3:((or ((r Xy0) Xv1)) ((r Xv1) Xy0))) (x4:((or ((r Xz) Xv1)) ((r Xv1) Xz)))=> x4)) as proof of ((or ((r Xz) Xv1)) ((r Xv1) Xz))
% Found (fun (x2:((and ((or ((r Xy0) Xv1)) ((r Xv1) Xy0))) ((or ((r Xz) Xv1)) ((r Xv1) Xz))))=> (((fun (P:Type) (x3:(((or ((r Xy0) Xv1)) ((r Xv1) Xy0))->(((or ((r Xz) Xv1)) ((r Xv1) Xz))->P)))=> (((((and_rect ((or ((r Xy0) Xv1)) ((r Xv1) Xy0))) ((or ((r Xz) Xv1)) ((r Xv1) Xz))) P) x3) x2)) ((or ((r Xz) Xv1)) ((r Xv1) Xz))) (fun (x3:((or ((r Xy0) Xv1)) ((r Xv1) Xy0))) (x4:((or ((r Xz) Xv1)) ((r Xv1) Xz)))=> x4))) as proof of ((or ((r Xz) Xv1)) ((r Xv1) Xz))
% Found (fun (Xz:a) (x2:((and ((or ((r Xy0) Xv1)) ((r Xv1) Xy0))) ((or ((r Xz) Xv1)) ((r Xv1) Xz))))=> (((fun (P:Type) (x3:(((or ((r Xy0) Xv1)) ((r Xv1) Xy0))->(((or ((r Xz) Xv1)) ((r Xv1) Xz))->P)))=> (((((and_rect ((or ((r Xy0) Xv1)) ((r Xv1) Xy0))) ((or ((r Xz) Xv1)) ((r Xv1) Xz))) P) x3) x2)) ((or ((r Xz) Xv1)) ((r Xv1) Xz))) (fun (x3:((or ((r Xy0) Xv1)) ((r Xv1) Xy0))) (x4:((or ((r Xz) Xv1)) ((r Xv1) Xz)))=> x4))) as proof of (((and ((or ((r Xy0) Xv1)) ((r Xv1) Xy0))) ((or ((r Xz) Xv1)) ((r Xv1) Xz)))->((or ((r Xz) Xv1)) ((r Xv1) Xz)))
% Found (fun (Xy0:a) (Xz:a) (x2:((and ((or ((r Xy0) Xv1)) ((r Xv1) Xy0))) ((or ((r Xz) Xv1)) ((r Xv1) Xz))))=> (((fun (P:Type) (x3:(((or ((r Xy0) Xv1)) ((r Xv1) Xy0))->(((or ((r Xz) Xv1)) ((r Xv1) Xz))->P)))=> (((((and_rect ((or ((r Xy0) Xv1)) ((r Xv1) Xy0))) ((or ((r Xz) Xv1)) ((r Xv1) Xz))) P) x3) x2)) ((or ((r Xz) Xv1)) ((r Xv1) Xz))) (fun (x3:((or ((r Xy0) Xv1)) ((r Xv1) Xy0))) (x4:((or ((r Xz) Xv1)) ((r Xv1) Xz)))=> x4))) as proof of (forall (Xz:a), (((and ((or ((r Xy0) Xv1)) ((r Xv1) Xy0))) ((or ((r Xz) Xv1)) ((r Xv1) Xz)))->((or ((r Xz) Xv1)) ((r Xv1) Xz))))
% Found (fun (Xx0:a) (Xy0:a) (Xz:a) (x2:((and ((or ((r Xy0) Xv1)) ((r Xv1) Xy0))) ((or ((r Xz) Xv1)) ((r Xv1) Xz))))=> (((fun (P:Type) (x3:(((or ((r Xy0) Xv1)) ((r Xv1) Xy0))->(((or ((r Xz) Xv1)) ((r Xv1) Xz))->P)))=> (((((and_rect ((or ((r Xy0) Xv1)) ((r Xv1) Xy0))) ((or ((r Xz) Xv1)) ((r Xv1) Xz))) P) x3) x2)) ((or ((r Xz) Xv1)) ((r Xv1) Xz))) (fun (x3:((or ((r Xy0) Xv1)) ((r Xv1) Xy0))) (x4:((or ((r Xz) Xv1)) ((r Xv1) Xz)))=> x4))) as proof of (forall (Xy0:a) (Xz:a), (((and ((or ((r Xy0) Xv1)) ((r Xv1) Xy0))) ((or ((r Xz) Xv1)) ((r Xv1) Xz)))->((or ((r Xz) Xv1)) ((r Xv1) Xz))))
% Found (fun (Xx0:a) (Xy0:a) (Xz:a) (x2:((and ((or ((r Xy0) Xv1)) ((r Xv1) Xy0))) ((or ((r Xz) Xv1)) ((r Xv1) Xz))))=> (((fun (P:Type) (x3:(((or ((r Xy0) Xv1)) ((r Xv1) Xy0))->(((or ((r Xz) Xv1)) ((r Xv1) Xz))->P)))=> (((((and_rect ((or ((r Xy0) Xv1)) ((r Xv1) Xy0))) ((or ((r Xz) Xv1)) ((r Xv1) Xz))) P) x3) x2)) ((or ((r Xz) Xv1)) ((r Xv1) Xz))) (fun (x3:((or ((r Xy0) Xv1)) ((r Xv1) Xy0))) (x4:((or ((r Xz) Xv1)) ((r Xv1) Xz)))=> x4))) as proof of (a->(forall (Xy0:a) (Xz:a), (((and ((or ((r Xy0) Xv1)) ((r Xv1) Xy0))) ((or ((r Xz) Xv1)) ((r Xv1) Xz)))->((or ((r Xz) Xv1)) ((r Xv1) Xz)))))
% Found x4:((or ((r Xv2) Xv1)) ((r Xv1) Xv2))
% Found (fun (x4:((or ((r Xv2) Xv1)) ((r Xv1) Xv2)))=> x4) as proof of ((or ((r Xv2) Xv1)) ((r Xv1) Xv2))
% Found (fun (x3:((or ((r Xv2) Xv1)) ((r Xv1) Xv2))) (x4:((or ((r Xv2) Xv1)) ((r Xv1) Xv2)))=> x4) as proof of (((or ((r Xv2) Xv1)) ((r Xv1) Xv2))->((or ((r Xv2) Xv1)) ((r Xv1) Xv2)))
% Found (fun (x3:((or ((r Xv2) Xv1)) ((r Xv1) Xv2))) (x4:((or ((r Xv2) Xv1)) ((r Xv1) Xv2)))=> x4) as proof of (((or ((r Xv2) Xv1)) ((r Xv1) Xv2))->(((or ((r Xv2) Xv1)) ((r Xv1) Xv2))->((or ((r Xv2) Xv1)) ((r Xv1) Xv2))))
% Found (and_rect10 (fun (x3:((or ((r Xv2) Xv1)) ((r Xv1) Xv2))) (x4:((or ((r Xv2) Xv1)) ((r Xv1) Xv2)))=> x4)) as proof of ((or ((r Xv2) Xv1)) ((r Xv1) Xv2))
% Found ((and_rect1 ((or ((r Xv2) Xv1)) ((r Xv1) Xv2))) (fun (x3:((or ((r Xv2) Xv1)) ((r Xv1) Xv2))) (x4:((or ((r Xv2) Xv1)) ((r Xv1) Xv2)))=> x4)) as proof of ((or ((r Xv2) Xv1)) ((r Xv1) Xv2))
% Found (((fun (P:Type) (x3:(((or ((r Xv2) Xv1)) ((r Xv1) Xv2))->(((or ((r Xv2) Xv1)) ((r Xv1) Xv2))->P)))=> (((((and_rect ((or ((r Xv2) Xv1)) ((r Xv1) Xv2))) ((or ((r Xv2) Xv1)) ((r Xv1) Xv2))) P) x3) x2)) ((or ((r Xv2) Xv1)) ((r Xv1) Xv2))) (fun (x3:((or ((r Xv2) Xv1)) ((r Xv1) Xv2))) (x4:((or ((r Xv2) Xv1)) ((r Xv1) Xv2)))=> x4)) as proof of ((or ((r Xv2) Xv1)) ((r Xv1) Xv2))
% Found (fun (x2:((and ((or ((r Xv2) Xv1)) ((r Xv1) Xv2))) ((or ((r Xv2) Xv1)) ((r Xv1) Xv2))))=> (((fun (P:Type) (x3:(((or ((r Xv2) Xv1)) ((r Xv1) Xv2))->(((or ((r Xv2) Xv1)) ((r Xv1) Xv2))->P)))=> (((((and_rect ((or ((r Xv2) Xv1)) ((r Xv1) Xv2))) ((or ((r Xv2) Xv1)) ((r Xv1) Xv2))) P) x3) x2)) ((or ((r Xv2) Xv1)) ((r Xv1) Xv2))) (fun (x3:((or ((r Xv2) Xv1)) ((r Xv1) Xv2))) (x4:((or ((r Xv2) Xv1)) ((r Xv1) Xv2)))=> x4))) as proof of ((or ((r Xv2) Xv1)) ((r Xv1) Xv2))
% Found (fun (Xz:a) (x2:((and ((or ((r Xv2) Xv1)) ((r Xv1) Xv2))) ((or ((r Xv2) Xv1)) ((r Xv1) Xv2))))=> (((fun (P:Type) (x3:(((or ((r Xv2) Xv1)) ((r Xv1) Xv2))->(((or ((r Xv2) Xv1)) ((r Xv1) Xv2))->P)))=> (((((and_rect ((or ((r Xv2) Xv1)) ((r Xv1) Xv2))) ((or ((r Xv2) Xv1)) ((r Xv1) Xv2))) P) x3) x2)) ((or ((r Xv2) Xv1)) ((r Xv1) Xv2))) (fun (x3:((or ((r Xv2) Xv1)) ((r Xv1) Xv2))) (x4:((or ((r Xv2) Xv1)) ((r Xv1) Xv2)))=> x4))) as proof of (((and ((or ((r Xv2) Xv1)) ((r Xv1) Xv2))) ((or ((r Xv2) Xv1)) ((r Xv1) Xv2)))->((or ((r Xv2) Xv1)) ((r Xv1) Xv2)))
% Found (fun (Xy0:a) (Xz:a) (x2:((and ((or ((r Xv2) Xv1)) ((r Xv1) Xv2))) ((or ((r Xv2) Xv1)) ((r Xv1) Xv2))))=> (((fun (P:Type) (x3:(((or ((r Xv2) Xv1)) ((r Xv1) Xv2))->(((or ((r Xv2) Xv1)) ((r Xv1) Xv2))->P)))=> (((((and_rect ((or ((r Xv2) Xv1)) ((r Xv1) Xv2))) ((or ((r Xv2) Xv1)) ((r Xv1) Xv2))) P) x3) x2)) ((or ((r Xv2) Xv1)) ((r Xv1) Xv2))) (fun (x3:((or ((r Xv2) Xv1)) ((r Xv1) Xv2))) (x4:((or ((r Xv2) Xv1)) ((r Xv1) Xv2)))=> x4))) as proof of (a->(((and ((or ((r Xv2) Xv1)) ((r Xv1) Xv2))) ((or ((r Xv2) Xv1)) ((r Xv1) Xv2)))->((or ((r Xv2) Xv1)) ((r Xv1) Xv2))))
% Found (fun (Xx0:a) (Xy0:a) (Xz:a) (x2:((and ((or ((r Xv2) Xv1)) ((r Xv1) Xv2))) ((or ((r Xv2) Xv1)) ((r Xv1) Xv2))))=> (((fun (P:Type) (x3:(((or ((r Xv2) Xv1)) ((r Xv1) Xv2))->(((or ((r Xv2) Xv1)) ((r Xv1) Xv2))->P)))=> (((((and_rect ((or ((r Xv2) Xv1)) ((r Xv1) Xv2))) ((or ((r Xv2) Xv1)) ((r Xv1) Xv2))) P) x3) x2)) ((or ((r Xv2) Xv1)) ((r Xv1) Xv2))) (fun (x3:((or ((r Xv2) Xv1)) ((r Xv1) Xv2))) (x4:((or ((r Xv2) Xv1)) ((r Xv1) Xv2)))=> x4))) as proof of (a->(a->(((and ((or ((r Xv2) Xv1)) ((r Xv1) Xv2))) ((or ((r Xv2) Xv1)) ((r Xv1) Xv2)))->((or ((r Xv2) Xv1)) ((r Xv1) Xv2)))))
% Found (fun (Xx0:a) (Xy0:a) (Xz:a) (x2:((and ((or ((r Xv2) Xv1)) ((r Xv1) Xv2))) ((or ((r Xv2) Xv1)) ((r Xv1) Xv2))))=> (((fun (P:Type) (x3:(((or ((r Xv2) Xv1)) ((r Xv1) Xv2))->(((or ((r Xv2) Xv1)) ((r Xv1) Xv2))->P)))=> (((((and_rect ((or ((r Xv2) Xv1)) ((r Xv1) Xv2))) ((or ((r Xv2) Xv1)) ((r Xv1) Xv2))) P) x3) x2)) ((or ((r Xv2) Xv1)) ((r Xv1) Xv2))) (fun (x3:((or ((r Xv2) Xv1)) ((r Xv1) Xv2))) (x4:((or ((r Xv2) Xv1)) ((r Xv1) Xv2)))=> x4))) as proof of (a->(a->(a->(((and ((or ((r Xv2) Xv1)) ((r Xv1) Xv2))) ((or ((r Xv2) Xv1)) ((r Xv1) Xv2)))->((or ((r Xv2) Xv1)) ((r Xv1) Xv2))))))
% Found x2:((r Xx0) Xy0)
% Instantiate: Xv1:=Xx0:a;Xv2:=Xy0:a
% Found x2 as proof of ((r Xv1) Xv2)
% Found (or_intror00 x2) as proof of ((or ((r Xv2) Xv1)) ((r Xv1) Xv2))
% Found ((or_intror0 ((r Xv1) Xv2)) x2) as proof of ((or ((r Xv2) Xv1)) ((r Xv1) Xv2))
% Found (((or_intror ((r Xv2) Xv1)) ((r Xv1) Xv2)) x2) as proof of ((or ((r Xv2) Xv1)) ((r Xv1) Xv2))
% Found (fun (x2:((r Xx0) Xy0))=> (((or_intror ((r Xv2) Xv1)) ((r Xv1) Xv2)) x2)) as proof of ((or ((r Xv2) Xv1)) ((r Xv1) Xv2))
% Found x2:((r Xx0) Xy0)
% Instantiate: Xv1:=Xy0:a;Xv2:=Xx0:a
% Found x2 as proof of ((r Xv2) Xv1)
% Found (or_introl00 x2) as proof of ((or ((r Xv2) Xv1)) ((r Xv1) Xv2))
% Found ((or_introl0 ((r Xv1) Xv2)) x2) as proof of ((or ((r Xv2) Xv1)) ((r Xv1) Xv2))
% Found (((or_introl ((r Xv2) Xv1)) ((r Xv1) Xv2)) x2) as proof of ((or ((r Xv2) Xv1)) ((r Xv1) Xv2))
% Found (fun (x2:((r Xx0) Xy0))=> (((or_introl ((r Xv2) Xv1)) ((r Xv1) Xv2)) x2)) as proof of ((or ((r Xv2) Xv1)) ((r Xv1) Xv2))
% Found x4:(Xq Xv2)
% Found (fun (x4:(Xq Xv2))=> x4) as proof of (Xq Xv2)
% Found (fun (x3:(Xq Xv2)) (x4:(Xq Xv2))=> x4) as proof of ((Xq Xv2)->(Xq Xv2))
% Found (fun (x3:(Xq Xv2)) (x4:(Xq Xv2))=> x4) as proof of ((Xq Xv2)->((Xq Xv2)->(Xq Xv2)))
% Found (and_rect10 (fun (x3:(Xq Xv2)) (x4:(Xq Xv2))=> x4)) as proof of (Xq Xv2)
% Found ((and_rect1 (Xq Xv2)) (fun (x3:(Xq Xv2)) (x4:(Xq Xv2))=> x4)) as proof of (Xq Xv2)
% Found (((fun (P:Type) (x3:((Xq Xv2)->((Xq Xv2)->P)))=> (((((and_rect (Xq Xv2)) (Xq Xv2)) P) x3) x2)) (Xq Xv2)) (fun (x3:(Xq Xv2)) (x4:(Xq Xv2))=> x4)) as proof of (Xq Xv2)
% Found (fun (x2:((and (Xq Xv2)) (Xq Xv2)))=> (((fun (P:Type) (x3:((Xq Xv2)->((Xq Xv2)->P)))=> (((((and_rect (Xq Xv2)) (Xq Xv2)) P) x3) x2)) (Xq Xv2)) (fun (x3:(Xq Xv2)) (x4:(Xq Xv2))=> x4))) as proof of (Xq Xv2)
% Found (fun (Xz:a) (x2:((and (Xq Xv2)) (Xq Xv2)))=> (((fun (P:Type) (x3:((Xq Xv2)->((Xq Xv2)->P)))=> (((((and_rect (Xq Xv2)) (Xq Xv2)) P) x3) x2)) (Xq Xv2)) (fun (x3:(Xq Xv2)) (x4:(Xq X
% EOF
%------------------------------------------------------------------------------