%------------------------------------------------------------------------------ % File : cocATP---0.2.0 % Problem : SET624^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 : n090.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:30:52 EDT 2014 % Result : Theorem 72.52s % Output : Proof 72.52s % Verified : % SZS Type : None (Parsing solution fails) % Syntax : Number of formulae : 0 % Comments : %------------------------------------------------------------------------------ %----ERROR: Could not form TPTP format derivation %------------------------------------------------------------------------------ %----ORIGINAL SYSTEM OUTPUT % % Problem : SET624^5 : TPTP v6.1.0. Released v4.0.0. % % Command : python CASC.py /export/starexec/sandbox/benchmark/theBenchmark.p % % Computer : n090.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 10:25:21 CDT 2014 % % CPUTime : 72.52 % 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 0x1fb2c20>, <kernel.Type object at 0x1b81ef0>) of role type named a_type % Using role type % Declaring a:Type % FOF formula (forall (X:(a->Prop)) (Y:(a->Prop)) (Z:(a->Prop)), ((iff ((ex a) (fun (Xx:a)=> ((and (X Xx)) ((or (Y Xx)) (Z Xx)))))) ((or ((ex a) (fun (Xx:a)=> ((and (X Xx)) (Y Xx))))) ((ex a) (fun (Xx:a)=> ((and (X Xx)) (Z Xx))))))) of role conjecture named cBOOL_PROP_100_pme % Conjecture to prove = (forall (X:(a->Prop)) (Y:(a->Prop)) (Z:(a->Prop)), ((iff ((ex a) (fun (Xx:a)=> ((and (X Xx)) ((or (Y Xx)) (Z Xx)))))) ((or ((ex a) (fun (Xx:a)=> ((and (X Xx)) (Y Xx))))) ((ex a) (fun (Xx:a)=> ((and (X Xx)) (Z Xx))))))):Prop % Parameter a_DUMMY:a. % We need to prove ['(forall (X:(a->Prop)) (Y:(a->Prop)) (Z:(a->Prop)), ((iff ((ex a) (fun (Xx:a)=> ((and (X Xx)) ((or (Y Xx)) (Z Xx)))))) ((or ((ex a) (fun (Xx:a)=> ((and (X Xx)) (Y Xx))))) ((ex a) (fun (Xx:a)=> ((and (X Xx)) (Z Xx)))))))'] % Parameter a:Type. % Trying to prove (forall (X:(a->Prop)) (Y:(a->Prop)) (Z:(a->Prop)), ((iff ((ex a) (fun (Xx:a)=> ((and (X Xx)) ((or (Y Xx)) (Z Xx)))))) ((or ((ex a) (fun (Xx:a)=> ((and (X Xx)) (Y Xx))))) ((ex a) (fun (Xx:a)=> ((and (X Xx)) (Z Xx))))))) % Found x2:(X x0) % Instantiate: x4:=x0:a % Found x2 as proof of (X x4) % Found x2:(X x0) % Instantiate: x4:=x0:a % Found x2 as proof of (X x4) % Found x2:(X x0) % Instantiate: x4:=x0:a % Found x2 as proof of (X x4) % Found x2:(X x0) % Instantiate: x4:=x0:a % Found x2 as proof of (X x4) % Found x2:(X x0) % Instantiate: x4:=x0:a % Found x2 as proof of (X x4) % Found x2:(X x0) % Instantiate: x4:=x0:a % Found x2 as proof of (X x4) % Found x3:(X x0) % Instantiate: x2:=x0:a % Found x3 as proof of (X x2) % Found x3:(X x0) % Instantiate: x2:=x0:a % Found x3 as proof of (X x2) % Found x3:(X x1) % Instantiate: x0:=x1:a % Found x3 as proof of (X x0) % Found x3:(X x1) % Instantiate: x0:=x1:a % Found x3 as proof of (X x0) % Found x3:(X x0) % Instantiate: x2:=x0:a % Found x3 as proof of (X x2) % Found x3:(X x0) % Instantiate: x2:=x0:a % Found x3 as proof of (X x2) % Found x2:(X x0) % Instantiate: x4:=x0:a % Found x2 as proof of (X x4) % Found x2:(X x0) % Instantiate: x4:=x0:a % Found x2 as proof of (X x4) % Found x2:(X x0) % Instantiate: x4:=x0:a % Found x2 as proof of (X x4) % Found x2:(X x0) % Instantiate: x4:=x0:a % Found x2 as proof of (X x4) % Found x2:(X x0) % Instantiate: x4:=x0:a % Found x2 as proof of (X x4) % Found x2:(X x0) % Instantiate: x4:=x0:a % Found x2 as proof of (X x4) % Found x3:(X x1) % Instantiate: x0:=x1:a % Found (fun (x4:((or (Y x1)) (Z x1)))=> x3) as proof of (X x0) % Found (fun (x3:(X x1)) (x4:((or (Y x1)) (Z x1)))=> x3) as proof of (((or (Y x1)) (Z x1))->(X x0)) % Found (fun (x3:(X x1)) (x4:((or (Y x1)) (Z x1)))=> x3) as proof of ((X x1)->(((or (Y x1)) (Z x1))->(X x0))) % Found (and_rect00 (fun (x3:(X x1)) (x4:((or (Y x1)) (Z x1)))=> x3)) as proof of (X x0) % Found ((and_rect0 (X x0)) (fun (x3:(X x1)) (x4:((or (Y x1)) (Z x1)))=> x3)) as proof of (X x0) % Found (((fun (P:Type) (x3:((X x1)->(((or (Y x1)) (Z x1))->P)))=> (((((and_rect (X x1)) ((or (Y x1)) (Z x1))) P) x3) x2)) (X x0)) (fun (x3:(X x1)) (x4:((or (Y x1)) (Z x1)))=> x3)) as proof of (X x0) % Found (((fun (P:Type) (x3:((X x1)->(((or (Y x1)) (Z x1))->P)))=> (((((and_rect (X x1)) ((or (Y x1)) (Z x1))) P) x3) x2)) (X x0)) (fun (x3:(X x1)) (x4:((or (Y x1)) (Z x1)))=> x3)) as proof of (X x0) % Found x3:(X x1) % Instantiate: x0:=x1:a % Found (fun (x4:((or (Y x1)) (Z x1)))=> x3) as proof of (X x0) % Found (fun (x3:(X x1)) (x4:((or (Y x1)) (Z x1)))=> x3) as proof of (((or (Y x1)) (Z x1))->(X x0)) % Found (fun (x3:(X x1)) (x4:((or (Y x1)) (Z x1)))=> x3) as proof of ((X x1)->(((or (Y x1)) (Z x1))->(X x0))) % Found (and_rect00 (fun (x3:(X x1)) (x4:((or (Y x1)) (Z x1)))=> x3)) as proof of (X x0) % Found ((and_rect0 (X x0)) (fun (x3:(X x1)) (x4:((or (Y x1)) (Z x1)))=> x3)) as proof of (X x0) % Found (((fun (P:Type) (x3:((X x1)->(((or (Y x1)) (Z x1))->P)))=> (((((and_rect (X x1)) ((or (Y x1)) (Z x1))) P) x3) x2)) (X x0)) (fun (x3:(X x1)) (x4:((or (Y x1)) (Z x1)))=> x3)) as proof of (X x0) % Found (((fun (P:Type) (x3:((X x1)->(((or (Y x1)) (Z x1))->P)))=> (((((and_rect (X x1)) ((or (Y x1)) (Z x1))) P) x3) x2)) (X x0)) (fun (x3:(X x1)) (x4:((or (Y x1)) (Z x1)))=> x3)) as proof of (X x0) % Found x3:(X x0) % Instantiate: x2:=x0:a % Found (fun (x4:((or (Y x0)) (Z x0)))=> x3) as proof of (X x2) % Found (fun (x3:(X x0)) (x4:((or (Y x0)) (Z x0)))=> x3) as proof of (((or (Y x0)) (Z x0))->(X x2)) % Found (fun (x3:(X x0)) (x4:((or (Y x0)) (Z x0)))=> x3) as proof of ((X x0)->(((or (Y x0)) (Z x0))->(X x2))) % Found (and_rect00 (fun (x3:(X x0)) (x4:((or (Y x0)) (Z x0)))=> x3)) as proof of (X x2) % Found ((and_rect0 (X x2)) (fun (x3:(X x0)) (x4:((or (Y x0)) (Z x0)))=> x3)) as proof of (X x2) % Found (((fun (P:Type) (x3:((X x0)->(((or (Y x0)) (Z x0))->P)))=> (((((and_rect (X x0)) ((or (Y x0)) (Z x0))) P) x3) x1)) (X x2)) (fun (x3:(X x0)) (x4:((or (Y x0)) (Z x0)))=> x3)) as proof of (X x2) % Found (((fun (P:Type) (x3:((X x0)->(((or (Y x0)) (Z x0))->P)))=> (((((and_rect (X x0)) ((or (Y x0)) (Z x0))) P) x3) x1)) (X x2)) (fun (x3:(X x0)) (x4:((or (Y x0)) (Z x0)))=> x3)) as proof of (X x2) % Found x3:(X x0) % Instantiate: x2:=x0:a % Found (fun (x4:((or (Y x0)) (Z x0)))=> x3) as proof of (X x2) % Found (fun (x3:(X x0)) (x4:((or (Y x0)) (Z x0)))=> x3) as proof of (((or (Y x0)) (Z x0))->(X x2)) % Found (fun (x3:(X x0)) (x4:((or (Y x0)) (Z x0)))=> x3) as proof of ((X x0)->(((or (Y x0)) (Z x0))->(X x2))) % Found (and_rect00 (fun (x3:(X x0)) (x4:((or (Y x0)) (Z x0)))=> x3)) as proof of (X x2) % Found ((and_rect0 (X x2)) (fun (x3:(X x0)) (x4:((or (Y x0)) (Z x0)))=> x3)) as proof of (X x2) % Found (((fun (P:Type) (x3:((X x0)->(((or (Y x0)) (Z x0))->P)))=> (((((and_rect (X x0)) ((or (Y x0)) (Z x0))) P) x3) x1)) (X x2)) (fun (x3:(X x0)) (x4:((or (Y x0)) (Z x0)))=> x3)) as proof of (X x2) % Found (((fun (P:Type) (x3:((X x0)->(((or (Y x0)) (Z x0))->P)))=> (((((and_rect (X x0)) ((or (Y x0)) (Z x0))) P) x3) x1)) (X x2)) (fun (x3:(X x0)) (x4:((or (Y x0)) (Z x0)))=> x3)) as proof of (X x2) % Found x3:(X x0) % Instantiate: x2:=x0:a % Found (fun (x4:((or (Y x0)) (Z x0)))=> x3) as proof of (X x2) % Found (fun (x3:(X x0)) (x4:((or (Y x0)) (Z x0)))=> x3) as proof of (((or (Y x0)) (Z x0))->(X x2)) % Found (fun (x3:(X x0)) (x4:((or (Y x0)) (Z x0)))=> x3) as proof of ((X x0)->(((or (Y x0)) (Z x0))->(X x2))) % Found (and_rect00 (fun (x3:(X x0)) (x4:((or (Y x0)) (Z x0)))=> x3)) as proof of (X x2) % Found ((and_rect0 (X x2)) (fun (x3:(X x0)) (x4:((or (Y x0)) (Z x0)))=> x3)) as proof of (X x2) % Found (((fun (P:Type) (x3:((X x0)->(((or (Y x0)) (Z x0))->P)))=> (((((and_rect (X x0)) ((or (Y x0)) (Z x0))) P) x3) x1)) (X x2)) (fun (x3:(X x0)) (x4:((or (Y x0)) (Z x0)))=> x3)) as proof of (X x2) % Found (((fun (P:Type) (x3:((X x0)->(((or (Y x0)) (Z x0))->P)))=> (((((and_rect (X x0)) ((or (Y x0)) (Z x0))) P) x3) x1)) (X x2)) (fun (x3:(X x0)) (x4:((or (Y x0)) (Z x0)))=> x3)) as proof of (X x2) % Found x3:(X x0) % Instantiate: x2:=x0:a % Found (fun (x4:((or (Y x0)) (Z x0)))=> x3) as proof of (X x2) % Found (fun (x3:(X x0)) (x4:((or (Y x0)) (Z x0)))=> x3) as proof of (((or (Y x0)) (Z x0))->(X x2)) % Found (fun (x3:(X x0)) (x4:((or (Y x0)) (Z x0)))=> x3) as proof of ((X x0)->(((or (Y x0)) (Z x0))->(X x2))) % Found (and_rect00 (fun (x3:(X x0)) (x4:((or (Y x0)) (Z x0)))=> x3)) as proof of (X x2) % Found ((and_rect0 (X x2)) (fun (x3:(X x0)) (x4:((or (Y x0)) (Z x0)))=> x3)) as proof of (X x2) % Found (((fun (P:Type) (x3:((X x0)->(((or (Y x0)) (Z x0))->P)))=> (((((and_rect (X x0)) ((or (Y x0)) (Z x0))) P) x3) x1)) (X x2)) (fun (x3:(X x0)) (x4:((or (Y x0)) (Z x0)))=> x3)) as proof of (X x2) % Found (((fun (P:Type) (x3:((X x0)->(((or (Y x0)) (Z x0))->P)))=> (((((and_rect (X x0)) ((or (Y x0)) (Z x0))) P) x3) x1)) (X x2)) (fun (x3:(X x0)) (x4:((or (Y x0)) (Z x0)))=> x3)) as proof of (X x2) % Found x3:(X x1) % Instantiate: x0:=x1:a % Found x3 as proof of (X x0) % Found x3:(X x1) % Instantiate: x0:=x1:a % Found x3 as proof of (X x0) % Found x3:(X x0) % Instantiate: x2:=x0:a % Found x3 as proof of (X x2) % Found x3:(X x0) % Instantiate: x2:=x0:a % Found x3 as proof of (X x2) % Found x3:(X x0) % Instantiate: x2:=x0:a % Found x3 as proof of (X x2) % Found x3:(X x0) % Instantiate: x2:=x0:a % Found x3 as proof of (X x2) % Found x2:(X x0) % Instantiate: x4:=x0:a % Found x2 as proof of (X x4) % Found x2:(X x0) % Instantiate: x4:=x0:a % Found x2 as proof of (X x4) % Found x2:(X x0) % Instantiate: x4:=x0:a % Found x2 as proof of (X x4) % Found x2:(X x0) % Instantiate: x4:=x0:a % Found x2 as proof of (X x4) % Found x2:(X x0) % Instantiate: x4:=x0:a % Found x2 as proof of (X x4) % Found x2:(X x0) % Instantiate: x4:=x0:a % Found x2 as proof of (X x4) % Found conj100:=(conj10 (Y x0)):((Y x0)->((and (X x2)) (Y x0))) % Found (conj10 (Y x0)) as proof of ((Y x0)->((and (X x2)) (Y x2))) % Found ((fun (B:Prop)=> ((conj1 B) x3)) (Y x0)) as proof of ((Y x0)->((and (X x2)) (Y x2))) % Found ((fun (B:Prop)=> (((conj (X x2)) B) x3)) (Y x0)) as proof of ((Y x0)->((and (X x2)) (Y x2))) % Found ((fun (B:Prop)=> (((conj (X x2)) B) x3)) (Y x0)) as proof of ((Y x0)->((and (X x2)) (Y x2))) % Found ((fun (B:Prop)=> (((conj (X x2)) B) x3)) (Y x0)) as proof of ((Y x0)->((and (X x2)) (Y x2))) % Found conj100:=(conj10 (Z x1)):((Z x1)->((and (X x0)) (Z x1))) % Found (conj10 (Z x1)) as proof of ((Z x1)->((and (X x0)) (Z x0))) % Found ((fun (B:Prop)=> ((conj1 B) x3)) (Z x1)) as proof of ((Z x1)->((and (X x0)) (Z x0))) % Found ((fun (B:Prop)=> (((conj (X x0)) B) x3)) (Z x1)) as proof of ((Z x1)->((and (X x0)) (Z x0))) % Found ((fun (B:Prop)=> (((conj (X x0)) B) x3)) (Z x1)) as proof of ((Z x1)->((and (X x0)) (Z x0))) % Found ((fun (B:Prop)=> (((conj (X x0)) B) x3)) (Z x1)) as proof of ((Z x1)->((and (X x0)) (Z x0))) % Found conj100:=(conj10 (Y x0)):((Y x0)->((and (X x4)) (Y x0))) % Found (conj10 (Y x0)) as proof of ((Y x0)->((and (X x4)) (Y x4))) % Found ((fun (B:Prop)=> ((conj1 B) x2)) (Y x0)) as proof of ((Y x0)->((and (X x4)) (Y x4))) % Found ((fun (B:Prop)=> (((conj (X x4)) B) x2)) (Y x0)) as proof of ((Y x0)->((and (X x4)) (Y x4))) % Found ((fun (B:Prop)=> (((conj (X x4)) B) x2)) (Y x0)) as proof of ((Y x0)->((and (X x4)) (Y x4))) % Found ((fun (B:Prop)=> (((conj (X x4)) B) x2)) (Y x0)) as proof of ((Y x0)->((and (X x4)) (Y x4))) % Found conj100:=(conj10 (Y x1)):((Y x1)->((and (X x0)) (Y x1))) % Found (conj10 (Y x1)) as proof of ((Y x1)->((and (X x0)) (Y x0))) % Found ((fun (B:Prop)=> ((conj1 B) x3)) (Y x1)) as proof of ((Y x1)->((and (X x0)) (Y x0))) % Found ((fun (B:Prop)=> (((conj (X x0)) B) x3)) (Y x1)) as proof of ((Y x1)->((and (X x0)) (Y x0))) % Found ((fun (B:Prop)=> (((conj (X x0)) B) x3)) (Y x1)) as proof of ((Y x1)->((and (X x0)) (Y x0))) % Found ((fun (B:Prop)=> (((conj (X x0)) B) x3)) (Y x1)) as proof of ((Y x1)->((and (X x0)) (Y x0))) % Found conj100:=(conj10 (Z x0)):((Z x0)->((and (X x2)) (Z x0))) % Found (conj10 (Z x0)) as proof of ((Z x0)->((and (X x2)) (Z x2))) % Found ((fun (B:Prop)=> ((conj1 B) x3)) (Z x0)) as proof of ((Z x0)->((and (X x2)) (Z x2))) % Found ((fun (B:Prop)=> (((conj (X x2)) B) x3)) (Z x0)) as proof of ((Z x0)->((and (X x2)) (Z x2))) % Found ((fun (B:Prop)=> (((conj (X x2)) B) x3)) (Z x0)) as proof of ((Z x0)->((and (X x2)) (Z x2))) % Found ((fun (B:Prop)=> (((conj (X x2)) B) x3)) (Z x0)) as proof of ((Z x0)->((and (X x2)) (Z x2))) % Found conj100:=(conj10 (Z x0)):((Z x0)->((and (X x4)) (Z x0))) % Found (conj10 (Z x0)) as proof of ((Z x0)->((and (X x4)) (Z x4))) % Found ((fun (B:Prop)=> ((conj1 B) x2)) (Z x0)) as proof of ((Z x0)->((and (X x4)) (Z x4))) % Found ((fun (B:Prop)=> (((conj (X x4)) B) x2)) (Z x0)) as proof of ((Z x0)->((and (X x4)) (Z x4))) % Found ((fun (B:Prop)=> (((conj (X x4)) B) x2)) (Z x0)) as proof of ((Z x0)->((and (X x4)) (Z x4))) % Found ((fun (B:Prop)=> (((conj (X x4)) B) x2)) (Z x0)) as proof of ((Z x0)->((and (X x4)) (Z x4))) % Found conj100:=(conj10 (Z x0)):((Z x0)->((and (X x2)) (Z x0))) % Found (conj10 (Z x0)) as proof of ((Z x0)->((and (X x2)) (Z x2))) % Found ((fun (B:Prop)=> ((conj1 B) x3)) (Z x0)) as proof of ((Z x0)->((and (X x2)) (Z x2))) % Found ((fun (B:Prop)=> (((conj (X x2)) B) x3)) (Z x0)) as proof of ((Z x0)->((and (X x2)) (Z x2))) % Found ((fun (B:Prop)=> (((conj (X x2)) B) x3)) (Z x0)) as proof of ((Z x0)->((and (X x2)) (Z x2))) % Found ((fun (B:Prop)=> (((conj (X x2)) B) x3)) (Z x0)) as proof of ((Z x0)->((and (X x2)) (Z x2))) % Found conj100:=(conj10 (Y x0)):((Y x0)->((and (X x4)) (Y x0))) % Found (conj10 (Y x0)) as proof of ((Y x0)->((and (X x4)) (Y x4))) % Found ((fun (B:Prop)=> ((conj1 B) x2)) (Y x0)) as proof of ((Y x0)->((and (X x4)) (Y x4))) % Found ((fun (B:Prop)=> (((conj (X x4)) B) x2)) (Y x0)) as proof of ((Y x0)->((and (X x4)) (Y x4))) % Found ((fun (B:Prop)=> (((conj (X x4)) B) x2)) (Y x0)) as proof of ((Y x0)->((and (X x4)) (Y x4))) % Found ((fun (B:Prop)=> (((conj (X x4)) B) x2)) (Y x0)) as proof of ((Y x0)->((and (X x4)) (Y x4))) % Found conj100:=(conj10 (Z x0)):((Z x0)->((and (X x4)) (Z x0))) % Found (conj10 (Z x0)) as proof of ((Z x0)->((and (X x4)) (Z x4))) % Found ((fun (B:Prop)=> ((conj1 B) x2)) (Z x0)) as proof of ((Z x0)->((and (X x4)) (Z x4))) % Found ((fun (B:Prop)=> (((conj (X x4)) B) x2)) (Z x0)) as proof of ((Z x0)->((and (X x4)) (Z x4))) % Found ((fun (B:Prop)=> (((conj (X x4)) B) x2)) (Z x0)) as proof of ((Z x0)->((and (X x4)) (Z x4))) % Found ((fun (B:Prop)=> (((conj (X x4)) B) x2)) (Z x0)) as proof of ((Z x0)->((and (X x4)) (Z x4))) % Found conj100:=(conj10 (Y x0)):((Y x0)->((and (X x2)) (Y x0))) % Found (conj10 (Y x0)) as proof of ((Y x0)->((and (X x2)) (Y x2))) % Found ((fun (B:Prop)=> ((conj1 B) x3)) (Y x0)) as proof of ((Y x0)->((and (X x2)) (Y x2))) % Found ((fun (B:Prop)=> (((conj (X x2)) B) x3)) (Y x0)) as proof of ((Y x0)->((and (X x2)) (Y x2))) % Found ((fun (B:Prop)=> (((conj (X x2)) B) x3)) (Y x0)) as proof of ((Y x0)->((and (X x2)) (Y x2))) % Found ((fun (B:Prop)=> (((conj (X x2)) B) x3)) (Y x0)) as proof of ((Y x0)->((and (X x2)) (Y x2))) % Found conj100:=(conj10 (Z x0)):((Z x0)->((and (X x4)) (Z x0))) % Found (conj10 (Z x0)) as proof of ((Z x0)->((and (X x4)) (Z x4))) % Found ((fun (B:Prop)=> ((conj1 B) x2)) (Z x0)) as proof of ((Z x0)->((and (X x4)) (Z x4))) % Found ((fun (B:Prop)=> (((conj (X x4)) B) x2)) (Z x0)) as proof of ((Z x0)->((and (X x4)) (Z x4))) % Found ((fun (B:Prop)=> (((conj (X x4)) B) x2)) (Z x0)) as proof of ((Z x0)->((and (X x4)) (Z x4))) % Found ((fun (B:Prop)=> (((conj (X x4)) B) x2)) (Z x0)) as proof of ((Z x0)->((and (X x4)) (Z x4))) % Found conj100:=(conj10 (Y x0)):((Y x0)->((and (X x4)) (Y x0))) % Found (conj10 (Y x0)) as proof of ((Y x0)->((and (X x4)) (Y x4))) % Found ((fun (B:Prop)=> ((conj1 B) x2)) (Y x0)) as proof of ((Y x0)->((and (X x4)) (Y x4))) % Found ((fun (B:Prop)=> (((conj (X x4)) B) x2)) (Y x0)) as proof of ((Y x0)->((and (X x4)) (Y x4))) % Found ((fun (B:Prop)=> (((conj (X x4)) B) x2)) (Y x0)) as proof of ((Y x0)->((and (X x4)) (Y x4))) % Found ((fun (B:Prop)=> (((conj (X x4)) B) x2)) (Y x0)) as proof of ((Y x0)->((and (X x4)) (Y x4))) % Found x2:(X x0) % Instantiate: x4:=x0:a % Found x2 as proof of (X x4) % Found x2:(X x0) % Instantiate: x4:=x0:a % Found x2 as proof of (X x4) % Found x2:(X x0) % Instantiate: x4:=x0:a % Found x2 as proof of (X x4) % Found x2:(X x0) % Instantiate: x4:=x0:a % Found x2 as proof of (X x4) % Found x2:(X x0) % Instantiate: x4:=x0:a % Found x2 as proof of (X x4) % Found x2:(X x0) % Instantiate: x4:=x0:a % Found x2 as proof of (X x4) % Found x2:(X x0) % Instantiate: x4:=x0:a % Found x2 as proof of (X x4) % Found x3:(X x0) % Instantiate: x2:=x0:a % Found x3 as proof of (X x2) % Found x3:(X x1) % Instantiate: x0:=x1:a % Found x3 as proof of (X x0) % Found x3:(X x1) % Instantiate: x0:=x1:a % Found x3 as proof of (X x0) % Found x2:(X x0) % Instantiate: x4:=x0:a % Found x2 as proof of (X x4) % Found x3:(X x0) % Instantiate: x2:=x0:a % Found x3 as proof of (X x2) % Found x2:(X x0) % Instantiate: x4:=x0:a % Found x2 as proof of (X x4) % Found x2:(X x0) % Instantiate: x4:=x0:a % Found x2 as proof of (X x4) % Found x3:(X x0) % Instantiate: x2:=x0:a % Found x3 as proof of (X x2) % Found x3:(X x0) % Instantiate: x2:=x0:a % Found x3 as proof of (X x2) % Found x2:(X x0) % Instantiate: x4:=x0:a % Found x2 as proof of (X x4) % Found x2:(X x0) % Instantiate: x4:=x0:a % Found x2 as proof of (X x4) % Found x3:(X x0) % Found x3 as proof of (X x2) % Found x2:(X x0) % Found x2 as proof of (X x4) % Found x3:(X x1) % Found x3 as proof of (X x0) % Found x2:(X x0) % Found x2 as proof of (X x4) % Found x3:(X x1) % Found x3 as proof of (X x0) % Found x3:(X x0) % Found x3 as proof of (X x2) % Found x3:(X x0) % Found x3 as proof of (X x2) % Found x2:(X x0) % Found x2 as proof of (X x4) % Found x3:(X x0) % Found x3 as proof of (X x2) % Found x2:(X x0) % Found x2 as proof of (X x4) % Found x2:(X x0) % Found x2 as proof of (X x4) % Found x2:(X x0) % Found x2 as proof of (X x4) % Found x3:(X x0) % Instantiate: x2:=x0:a % Found x3 as proof of (X x2) % Found x3:(X x1) % Instantiate: x0:=x1:a % Found x3 as proof of (X x0) % Found x3:(X x0) % Instantiate: x2:=x0:a % Found x3 as proof of (X x2) % Found x3:(X x1) % Instantiate: x0:=x1:a % Found x3 as proof of (X x0) % Found x3:(X x0) % Instantiate: x2:=x0:a % Found x3 as proof of (X x2) % Found x3:(X x0) % Instantiate: x2:=x0:a % Found x3 as proof of (X x2) % Found x3:(X x0) % Instantiate: x2:=x0:a % Found x3 as proof of (X x2) % Found x3:(X x0) % Instantiate: x2:=x0:a % Found x3 as proof of (X x2) % Found x3:(X x1) % Instantiate: x0:=x1:a % Found (fun (x4:((or (Y x1)) (Z x1)))=> x3) as proof of (X x0) % Found (fun (x3:(X x1)) (x4:((or (Y x1)) (Z x1)))=> x3) as proof of (((or (Y x1)) (Z x1))->(X x0)) % Found (fun (x3:(X x1)) (x4:((or (Y x1)) (Z x1)))=> x3) as proof of ((X x1)->(((or (Y x1)) (Z x1))->(X x0))) % Found (and_rect00 (fun (x3:(X x1)) (x4:((or (Y x1)) (Z x1)))=> x3)) as proof of (X x0) % Found ((and_rect0 (X x0)) (fun (x3:(X x1)) (x4:((or (Y x1)) (Z x1)))=> x3)) as proof of (X x0) % Found (((fun (P:Type) (x3:((X x1)->(((or (Y x1)) (Z x1))->P)))=> (((((and_rect (X x1)) ((or (Y x1)) (Z x1))) P) x3) x2)) (X x0)) (fun (x3:(X x1)) (x4:((or (Y x1)) (Z x1)))=> x3)) as proof of (X x0) % Found (fun (x2:((and (X x1)) ((or (Y x1)) (Z x1))))=> (((fun (P:Type) (x3:((X x1)->(((or (Y x1)) (Z x1))->P)))=> (((((and_rect (X x1)) ((or (Y x1)) (Z x1))) P) x3) x2)) (X x0)) (fun (x3:(X x1)) (x4:((or (Y x1)) (Z x1)))=> x3))) as proof of (X x0) % Found x3:(X x1) % Instantiate: x0:=x1:a % Found (fun (x4:((or (Y x1)) (Z x1)))=> x3) as proof of (X x0) % Found (fun (x3:(X x1)) (x4:((or (Y x1)) (Z x1)))=> x3) as proof of (((or (Y x1)) (Z x1))->(X x0)) % Found (fun (x3:(X x1)) (x4:((or (Y x1)) (Z x1)))=> x3) as proof of ((X x1)->(((or (Y x1)) (Z x1))->(X x0))) % Found (and_rect00 (fun (x3:(X x1)) (x4:((or (Y x1)) (Z x1)))=> x3)) as proof of (X x0) % Found ((and_rect0 (X x0)) (fun (x3:(X x1)) (x4:((or (Y x1)) (Z x1)))=> x3)) as proof of (X x0) % Found (((fun (P:Type) (x3:((X x1)->(((or (Y x1)) (Z x1))->P)))=> (((((and_rect (X x1)) ((or (Y x1)) (Z x1))) P) x3) x2)) (X x0)) (fun (x3:(X x1)) (x4:((or (Y x1)) (Z x1)))=> x3)) as proof of (X x0) % Found (fun (x2:((and (X x1)) ((or (Y x1)) (Z x1))))=> (((fun (P:Type) (x3:((X x1)->(((or (Y x1)) (Z x1))->P)))=> (((((and_rect (X x1)) ((or (Y x1)) (Z x1))) P) x3) x2)) (X x0)) (fun (x3:(X x1)) (x4:((or (Y x1)) (Z x1)))=> x3))) as proof of (X x0) % Found x5:(Z x0) % Instantiate: x2:=x0:a % Found (fun (x5:(Z x0))=> x5) as proof of (Z x2) % Found (fun (x5:(Z x0))=> x5) as proof of ((Z x0)->(Z x2)) % Found x5:(Y x0) % Instantiate: x2:=x0:a % Found (fun (x5:(Y x0))=> x5) as proof of (Y x2) % Found (fun (x5:(Y x0))=> x5) as proof of ((Y x0)->(Y x2)) % Found x5:(Y x1) % Instantiate: x0:=x1:a % Found (fun (x5:(Y x1))=> x5) as proof of (Y x0) % Found (fun (x5:(Y x1))=> x5) as proof of ((Y x1)->(Y x0)) % Found x5:(Z x1) % Instantiate: x0:=x1:a % Found (fun (x5:(Z x1))=> x5) as proof of (Z x0) % Found (fun (x5:(Z x1))=> x5) as proof of ((Z x1)->(Z x0)) % Found x5:(Y x0) % Instantiate: x4:=x0:a % Found (fun (x5:(Y x0))=> x5) as proof of (Y x4) % Found (fun (x5:(Y x0))=> x5) as proof of ((Y x0)->(Y x4)) % Found x5:(Z x1) % Instantiate: x0:=x1:a % Found (fun (x5:(Z x1))=> x5) as proof of (Z x0) % Found (fun (x5:(Z x1))=> x5) as proof of ((Z x1)->(Z x0)) % Found x5:(Z x0) % Instantiate: x2:=x0:a % Found (fun (x5:(Z x0))=> x5) as proof of (Z x2) % Found (fun (x5:(Z x0))=> x5) as proof of ((Z x0)->(Z x2)) % Found x5:(Y x0) % Instantiate: x2:=x0:a % Found (fun (x5:(Y x0))=> x5) as proof of (Y x2) % Found (fun (x5:(Y x0))=> x5) as proof of ((Y x0)->(Y x2)) % Found x5:(Z x0) % Instantiate: x4:=x0:a % Found (fun (x5:(Z x0))=> x5) as proof of (Z x4) % Found (fun (x5:(Z x0))=> x5) as proof of ((Z x0)->(Z x4)) % Found x5:(Y x1) % Instantiate: x0:=x1:a % Found (fun (x5:(Y x1))=> x5) as proof of (Y x0) % Found (fun (x5:(Y x1))=> x5) as proof of ((Y x1)->(Y x0)) % Found x5:(Y x0) % Instantiate: x2:=x0:a % Found (fun (x5:(Y x0))=> x5) as proof of (Y x2) % Found (fun (x5:(Y x0))=> x5) as proof of ((Y x0)->(Y x2)) % Found x5:(Z x0) % Instantiate: x2:=x0:a % Found (fun (x5:(Z x0))=> x5) as proof of (Z x2) % Found (fun (x5:(Z x0))=> x5) as proof of ((Z x0)->(Z x2)) % Found x5:(Y x0) % Instantiate: x2:=x0:a % Found (fun (x5:(Y x0))=> x5) as proof of (Y x2) % Found (fun (x5:(Y x0))=> x5) as proof of ((Y x0)->(Y x2)) % Found x5:(Z x0) % Instantiate: x4:=x0:a % Found (fun (x5:(Z x0))=> x5) as proof of (Z x4) % Found (fun (x5:(Z x0))=> x5) as proof of ((Z x0)->(Z x4)) % Found x5:(Z x0) % Instantiate: x2:=x0:a % Found (fun (x5:(Z x0))=> x5) as proof of (Z x2) % Found (fun (x5:(Z x0))=> x5) as proof of ((Z x0)->(Z x2)) % Found x5:(Y x0) % Instantiate: x4:=x0:a % Found (fun (x5:(Y x0))=> x5) as proof of (Y x4) % Found (fun (x5:(Y x0))=> x5) as proof of ((Y x0)->(Y x4)) % Found x5:(Z x0) % Instantiate: x4:=x0:a % Found (fun (x5:(Z x0))=> x5) as proof of (Z x4) % Found (fun (x5:(Z x0))=> x5) as proof of ((Z x0)->(Z x4)) % Found x5:(Y x0) % Instantiate: x4:=x0:a % Found (fun (x5:(Y x0))=> x5) as proof of (Y x4) % Found (fun (x5:(Y x0))=> x5) as proof of ((Y x0)->(Y x4)) % Found x5:(Z x1) % Found (fun (x5:(Z x1))=> x5) as proof of (Z x0) % Found (fun (x5:(Z x1))=> x5) as proof of ((Z x1)->(Z x0)) % Found x5:(Y x0) % Found (fun (x5:(Y x0))=> x5) as proof of (Y x2) % Found (fun (x5:(Y x0))=> x5) as proof of ((Y x0)->(Y x2)) % Found x5:(Y x1) % Found (fun (x5:(Y x1))=> x5) as proof of (Y x0) % Found (fun (x5:(Y x1))=> x5) as proof of ((Y x1)->(Y x0)) % Found x5:(Z x0) % Found (fun (x5:(Z x0))=> x5) as proof of (Z x2) % Found (fun (x5:(Z x0))=> x5) as proof of ((Z x0)->(Z x2)) % Found x3:(X x1) % Instantiate: x0:=x1:a % Found (fun (x4:((or (Y x1)) (Z x1)))=> x3) as proof of (X x0) % Found (fun (x3:(X x1)) (x4:((or (Y x1)) (Z x1)))=> x3) as proof of (((or (Y x1)) (Z x1))->(X x0)) % Found (fun (x3:(X x1)) (x4:((or (Y x1)) (Z x1)))=> x3) as proof of ((X x1)->(((or (Y x1)) (Z x1))->(X x0))) % Found (and_rect00 (fun (x3:(X x1)) (x4:((or (Y x1)) (Z x1)))=> x3)) as proof of (X x0) % Found ((and_rect0 (X x0)) (fun (x3:(X x1)) (x4:((or (Y x1)) (Z x1)))=> x3)) as proof of (X x0) % Found (((fun (P:Type) (x3:((X x1)->(((or (Y x1)) (Z x1))->P)))=> (((((and_rect (X x1)) ((or (Y x1)) (Z x1))) P) x3) x2)) (X x0)) (fun (x3:(X x1)) (x4:((or (Y x1)) (Z x1)))=> x3)) as proof of (X x0) % Found (((fun (P:Type) (x3:((X x1)->(((or (Y x1)) (Z x1))->P)))=> (((((and_rect (X x1)) ((or (Y x1)) (Z x1))) P) x3) x2)) (X x0)) (fun (x3:(X x1)) (x4:((or (Y x1)) (Z x1)))=> x3)) as proof of (X x0) % Found x5:(Y x1) % Found (fun (x5:(Y x1))=> x5) as proof of (Y x0) % Found (fun (x5:(Y x1))=> x5) as proof of ((Y x1)->(Y x0)) % Found x5:(Y x0) % Found (fun (x5:(Y x0))=> x5) as proof of (Y x2) % Found (fun (x5:(Y x0))=> x5) as proof of ((Y x0)->(Y x2)) % Found x3:(X x0) % Instantiate: x2:=x0:a % Found (fun (x4:((or (Y x0)) (Z x0)))=> x3) as proof of (X x2) % Found (fun (x3:(X x0)) (x4:((or (Y x0)) (Z x0)))=> x3) as proof of (((or (Y x0)) (Z x0))->(X x2)) % Found (fun (x3:(X x0)) (x4:((or (Y x0)) (Z x0)))=> x3) as proof of ((X x0)->(((or (Y x0)) (Z x0))->(X x2))) % Found (and_rect00 (fun (x3:(X x0)) (x4:((or (Y x0)) (Z x0)))=> x3)) as proof of (X x2) % Found ((and_rect0 (X x2)) (fun (x3:(X x0)) (x4:((or (Y x0)) (Z x0)))=> x3)) as proof of (X x2) % Found (((fun (P:Type) (x3:((X x0)->(((or (Y x0)) (Z x0))->P)))=> (((((and_rect (X x0)) ((or (Y x0)) (Z x0))) P) x3) x1)) (X x2)) (fun (x3:(X x0)) (x4:((or (Y x0)) (Z x0)))=> x3)) as proof of (X x2) % Found (((fun (P:Type) (x3:((X x0)->(((or (Y x0)) (Z x0))->P)))=> (((((and_rect (X x0)) ((or (Y x0)) (Z x0))) P) x3) x1)) (X x2)) (fun (x3:(X x0)) (x4:((or (Y x0)) (Z x0)))=> x3)) as proof of (X x2) % Found x5:(Z x0) % Found (fun (x5:(Z x0))=> x5) as proof of (Z x2) % Found (fun (x5:(Z x0))=> x5) as proof of ((Z x0)->(Z x2)) % Found x5:(Y x0) % Found (fun (x5:(Y x0))=> x5) as proof of (Y x2) % Found (fun (x5:(Y x0))=> x5) as proof of ((Y x0)->(Y x2)) % Found x5:(Y x0) % Found (fun (x5:(Y x0))=> x5) as proof of (Y x4) % Found (fun (x5:(Y x0))=> x5) as proof of ((Y x0)->(Y x4)) % Found x3:(X x1) % Instantiate: x0:=x1:a % Found (fun (x4:((or (Y x1)) (Z x1)))=> x3) as proof of (X x0) % Found (fun (x3:(X x1)) (x4:((or (Y x1)) (Z x1)))=> x3) as proof of (((or (Y x1)) (Z x1))->(X x0)) % Found (fun (x3:(X x1)) (x4:((or (Y x1)) (Z x1)))=> x3) as proof of ((X x1)->(((or (Y x1)) (Z x1))->(X x0))) % Found (and_rect00 (fun (x3:(X x1)) (x4:((or (Y x1)) (Z x1)))=> x3)) as proof of (X x0) % Found ((and_rect0 (X x0)) (fun (x3:(X x1)) (x4:((or (Y x1)) (Z x1)))=> x3)) as proof of (X x0) % Found (((fun (P:Type) (x3:((X x1)->(((or (Y x1)) (Z x1))->P)))=> (((((and_rect (X x1)) ((or (Y x1)) (Z x1))) P) x3) x2)) (X x0)) (fun (x3:(X x1)) (x4:((or (Y x1)) (Z x1)))=> x3)) as proof of (X x0) % Found (((fun (P:Type) (x3:((X x1)->(((or (Y x1)) (Z x1))->P)))=> (((((and_rect (X x1)) ((or (Y x1)) (Z x1))) P) x3) x2)) (X x0)) (fun (x3:(X x1)) (x4:((or (Y x1)) (Z x1)))=> x3)) as proof of (X x0) % Found x3:(X x0) % Instantiate: x2:=x0:a % Found (fun (x4:((or (Y x0)) (Z x0)))=> x3) as proof of (X x2) % Found (fun (x3:(X x0)) (x4:((or (Y x0)) (Z x0)))=> x3) as proof of (((or (Y x0)) (Z x0))->(X x2)) % Found (fun (x3:(X x0)) (x4:((or (Y x0)) (Z x0)))=> x3) as proof of ((X x0)->(((or (Y x0)) (Z x0))->(X x2))) % Found (and_rect00 (fun (x3:(X x0)) (x4:((or (Y x0)) (Z x0)))=> x3)) as proof of (X x2) % Found ((and_rect0 (X x2)) (fun (x3:(X x0)) (x4:((or (Y x0)) (Z x0)))=> x3)) as proof of (X x2) % Found (((fun (P:Type) (x3:((X x0)->(((or (Y x0)) (Z x0))->P)))=> (((((and_rect (X x0)) ((or (Y x0)) (Z x0))) P) x3) x1)) (X x2)) (fun (x3:(X x0)) (x4:((or (Y x0)) (Z x0)))=> x3)) as proof of (X x2) % Found (((fun (P:Type) (x3:((X x0)->(((or (Y x0)) (Z x0))->P)))=> (((((and_rect (X x0)) ((or (Y x0)) (Z x0))) P) x3) x1)) (X x2)) (fun (x3:(X x0)) (x4:((or (Y x0)) (Z x0)))=> x3)) as proof of (X x2) % Found x5:(Z x0) % Found (fun (x5:(Z x0))=> x5) as proof of (Z x2) % Found (fun (x5:(Z x0))=> x5) as proof of ((Z x0)->(Z x2)) % Found x5:(Z x1) % Found (fun (x5:(Z x1))=> x5) as proof of (Z x0) % Found (fun (x5:(Z x1))=> x5) as proof of ((Z x1)->(Z x0)) % Found x5:(Z x0) % Found (fun (x5:(Z x0))=> x5) as proof of (Z x4) % Found (fun (x5:(Z x0))=> x5) as proof of ((Z x0)->(Z x4)) % Found x5:(Y x0) % Found (fun (x5:(Y x0))=> x5) as proof of (Y x4) % Found (fun (x5:(Y x0))=> x5) as proof of ((Y x0)->(Y x4)) % Found x5:(Z x0) % Found (fun (x5:(Z x0))=> x5) as proof of (Z x4) % Found (fun (x5:(Z x0))=> x5) as proof of ((Z x0)->(Z x4)) % Found x5:(Z x0) % Found (fun (x5:(Z x0))=> x5) as proof of (Z x2) % Found (fun (x5:(Z x0))=> x5) as proof of ((Z x0)->(Z x2)) % Found x3:(X x0) % Instantiate: x2:=x0:a % Found (fun (x4:((or (Y x0)) (Z x0)))=> x3) as proof of (X x2) % Found (fun (x3:(X x0)) (x4:((or (Y x0)) (Z x0)))=> x3) as proof of (((or (Y x0)) (Z x0))->(X x2)) % Found (fun (x3:(X x0)) (x4:((or (Y x0)) (Z x0)))=> x3) as proof of ((X x0)->(((or (Y x0)) (Z x0))->(X x2))) % Found (and_rect00 (fun (x3:(X x0)) (x4:((or (Y x0)) (Z x0)))=> x3)) as proof of (X x2) % Found ((and_rect0 (X x2)) (fun (x3:(X x0)) (x4:((or (Y x0)) (Z x0)))=> x3)) as proof of (X x2) % Found (((fun (P:Type) (x3:((X x0)->(((or (Y x0)) (Z x0))->P)))=> (((((and_rect (X x0)) ((or (Y x0)) (Z x0))) P) x3) x1)) (X x2)) (fun (x3:(X x0)) (x4:((or (Y x0)) (Z x0)))=> x3)) as proof of (X x2) % Found (((fun (P:Type) (x3:((X x0)->(((or (Y x0)) (Z x0))->P)))=> (((((and_rect (X x0)) ((or (Y x0)) (Z x0))) P) x3) x1)) (X x2)) (fun (x3:(X x0)) (x4:((or (Y x0)) (Z x0)))=> x3)) as proof of (X x2) % Found x3:(X x0) % Instantiate: x2:=x0:a % Found (fun (x4:((or (Y x0)) (Z x0)))=> x3) as proof of (X x2) % Found (fun (x3:(X x0)) (x4:((or (Y x0)) (Z x0)))=> x3) as proof of (((or (Y x0)) (Z x0))->(X x2)) % Found (fun (x3:(X x0)) (x4:((or (Y x0)) (Z x0)))=> x3) as proof of ((X x0)->(((or (Y x0)) (Z x0))->(X x2))) % Found (and_rect00 (fun (x3:(X x0)) (x4:((or (Y x0)) (Z x0)))=> x3)) as proof of (X x2) % Found ((and_rect0 (X x2)) (fun (x3:(X x0)) (x4:((or (Y x0)) (Z x0)))=> x3)) as proof of (X x2) % Found (((fun (P:Type) (x3:((X x0)->(((or (Y x0)) (Z x0))->P)))=> (((((and_rect (X x0)) ((or (Y x0)) (Z x0))) P) x3) x1)) (X x2)) (fun (x3:(X x0)) (x4:((or (Y x0)) (Z x0)))=> x3)) as proof of (X x2) % Found (((fun (P:Type) (x3:((X x0)->(((or (Y x0)) (Z x0))->P)))=> (((((and_rect (X x0)) ((or (Y x0)) (Z x0))) P) x3) x1)) (X x2)) (fun (x3:(X x0)) (x4:((or (Y x0)) (Z x0)))=> x3)) as proof of (X x2) % Found x5:(Y x0) % Found (fun (x5:(Y x0))=> x5) as proof of (Y x2) % Found (fun (x5:(Y x0))=> x5) as proof of ((Y x0)->(Y x2)) % Found x5:(Y x0) % Found (fun (x5:(Y x0))=> x5) as proof of (Y x4) % Found (fun (x5:(Y x0))=> x5) as proof of ((Y x0)->(Y x4)) % Found x5:(Z x0) % Found (fun (x5:(Z x0))=> x5) as proof of (Z x4) % Found (fun (x5:(Z x0))=> x5) as proof of ((Z x0)->(Z x4)) % Found x2:(X x0) % Instantiate: x4:=x0:a % Found x2 as proof of (X x4) % Found x2:(X x0) % Instantiate: x4:=x0:a % Found x2 as proof of (X x4) % Found x4:(X x2) % Instantiate: x0:=x2:a % Found x4 as proof of (X x0) % Found x4:(X x2) % Instantiate: x0:=x2:a % Found x4 as proof of (X x0) % Found x2:(X x0) % Instantiate: x4:=x0:a % Found x2 as proof of (X x4) % Found x2:(X x0) % Instantiate: x4:=x0:a % Found x2 as proof of (X x4) % Found x2:(X x0) % Instantiate: x4:=x0:a % Found x2 as proof of (X x4) % Found x2:(X x0) % Instantiate: x4:=x0:a % Found x2 as proof of (X x4) % Found conj100:=(conj10 (Z x0)):((Z x0)->((and (X x2)) (Z x0))) % Found (conj10 (Z x0)) as proof of ((Z x0)->((and (X x2)) (Z x2))) % Found ((fun (B:Prop)=> ((conj1 B) x3)) (Z x0)) as proof of ((Z x0)->((and (X x2)) (Z x2))) % Found ((fun (B:Prop)=> (((conj (X x2)) B) x3)) (Z x0)) as proof of ((Z x0)->((and (X x2)) (Z x2))) % Found ((fun (B:Prop)=> (((conj (X x2)) B) x3)) (Z x0)) as proof of ((Z x0)->((and (X x2)) (Z x2))) % Found ((fun (B:Prop)=> (((conj (X x2)) B) x3)) (Z x0)) as proof of ((Z x0)->((and (X x2)) (Z x2))) % Found conj100:=(conj10 (Z x1)):((Z x1)->((and (X x0)) (Z x1))) % Found (conj10 (Z x1)) as proof of ((Z x1)->((and (X x0)) (Z x0))) % Found ((fun (B:Prop)=> ((conj1 B) x3)) (Z x1)) as proof of ((Z x1)->((and (X x0)) (Z x0))) % Found ((fun (B:Prop)=> (((conj (X x0)) B) x3)) (Z x1)) as proof of ((Z x1)->((and (X x0)) (Z x0))) % Found ((fun (B:Prop)=> (((conj (X x0)) B) x3)) (Z x1)) as proof of ((Z x1)->((and (X x0)) (Z x0))) % Found ((fun (B:Prop)=> (((conj (X x0)) B) x3)) (Z x1)) as proof of ((Z x1)->((and (X x0)) (Z x0))) % Found conj100:=(conj10 (Y x0)):((Y x0)->((and (X x4)) (Y x0))) % Found (conj10 (Y x0)) as proof of ((Y x0)->((and (X x4)) (Y x4))) % Found ((fun (B:Prop)=> ((conj1 B) x2)) (Y x0)) as proof of ((Y x0)->((and (X x4)) (Y x4))) % Found ((fun (B:Prop)=> (((conj (X x4)) B) x2)) (Y x0)) as proof of ((Y x0)->((and (X x4)) (Y x4))) % Found ((fun (B:Prop)=> (((conj (X x4)) B) x2)) (Y x0)) as proof of ((Y x0)->((and (X x4)) (Y x4))) % Found ((fun (B:Prop)=> (((conj (X x4)) B) x2)) (Y x0)) as proof of ((Y x0)->((and (X x4)) (Y x4))) % Found conj100:=(conj10 (Y x0)):((Y x0)->((and (X x2)) (Y x0))) % Found (conj10 (Y x0)) as proof of ((Y x0)->((and (X x2)) (Y x2))) % Found ((fun (B:Prop)=> ((conj1 B) x3)) (Y x0)) as proof of ((Y x0)->((and (X x2)) (Y x2))) % Found ((fun (B:Prop)=> (((conj (X x2)) B) x3)) (Y x0)) as proof of ((Y x0)->((and (X x2)) (Y x2))) % Found ((fun (B:Prop)=> (((conj (X x2)) B) x3)) (Y x0)) as proof of ((Y x0)->((and (X x2)) (Y x2))) % Found ((fun (B:Prop)=> (((conj (X x2)) B) x3)) (Y x0)) as proof of ((Y x0)->((and (X x2)) (Y x2))) % Found conj100:=(conj10 (Z x0)):((Z x0)->((and (X x4)) (Z x0))) % Found (conj10 (Z x0)) as proof of ((Z x0)->((and (X x4)) (Z x4))) % Found ((fun (B:Prop)=> ((conj1 B) x2)) (Z x0)) as proof of ((Z x0)->((and (X x4)) (Z x4))) % Found ((fun (B:Prop)=> (((conj (X x4)) B) x2)) (Z x0)) as proof of ((Z x0)->((and (X x4)) (Z x4))) % Found ((fun (B:Prop)=> (((conj (X x4)) B) x2)) (Z x0)) as proof of ((Z x0)->((and (X x4)) (Z x4))) % Found ((fun (B:Prop)=> (((conj (X x4)) B) x2)) (Z x0)) as proof of ((Z x0)->((and (X x4)) (Z x4))) % Found conj100:=(conj10 (Y x1)):((Y x1)->((and (X x0)) (Y x1))) % Found (conj10 (Y x1)) as proof of ((Y x1)->((and (X x0)) (Y x0))) % Found ((fun (B:Prop)=> ((conj1 B) x3)) (Y x1)) as proof of ((Y x1)->((and (X x0)) (Y x0))) % Found ((fun (B:Prop)=> (((conj (X x0)) B) x3)) (Y x1)) as proof of ((Y x1)->((and (X x0)) (Y x0))) % Found ((fun (B:Prop)=> (((conj (X x0)) B) x3)) (Y x1)) as proof of ((Y x1)->((and (X x0)) (Y x0))) % Found ((fun (B:Prop)=> (((conj (X x0)) B) x3)) (Y x1)) as proof of ((Y x1)->((and (X x0)) (Y x0))) % Found conj100:=(conj10 (Y x0)):((Y x0)->((and (X x2)) (Y x0))) % Found (conj10 (Y x0)) as proof of ((Y x0)->((and (X x2)) (Y x2))) % Found ((fun (B:Prop)=> ((conj1 B) x3)) (Y x0)) as proof of ((Y x0)->((and (X x2)) (Y x2))) % Found ((fun (B:Prop)=> (((conj (X x2)) B) x3)) (Y x0)) as proof of ((Y x0)->((and (X x2)) (Y x2))) % Found ((fun (B:Prop)=> (((conj (X x2)) B) x3)) (Y x0)) as proof of ((Y x0)->((and (X x2)) (Y x2))) % Found ((fun (B:Prop)=> (((conj (X x2)) B) x3)) (Y x0)) as proof of ((Y x0)->((and (X x2)) (Y x2))) % Found conj100:=(conj10 (Y x0)):((Y x0)->((and (X x4)) (Y x0))) % Found (conj10 (Y x0)) as proof of ((Y x0)->((and (X x4)) (Y x4))) % Found ((fun (B:Prop)=> ((conj1 B) x2)) (Y x0)) as proof of ((Y x0)->((and (X x4)) (Y x4))) % Found ((fun (B:Prop)=> (((conj (X x4)) B) x2)) (Y x0)) as proof of ((Y x0)->((and (X x4)) (Y x4))) % Found ((fun (B:Prop)=> (((conj (X x4)) B) x2)) (Y x0)) as proof of ((Y x0)->((and (X x4)) (Y x4))) % Found ((fun (B:Prop)=> (((conj (X x4)) B) x2)) (Y x0)) as proof of ((Y x0)->((and (X x4)) (Y x4))) % Found conj100:=(conj10 (Z x0)):((Z x0)->((and (X x4)) (Z x0))) % Found (conj10 (Z x0)) as proof of ((Z x0)->((and (X x4)) (Z x4))) % Found ((fun (B:Prop)=> ((conj1 B) x2)) (Z x0)) as proof of ((Z x0)->((and (X x4)) (Z x4))) % Found ((fun (B:Prop)=> (((conj (X x4)) B) x2)) (Z x0)) as proof of ((Z x0)->((and (X x4)) (Z x4))) % Found ((fun (B:Prop)=> (((conj (X x4)) B) x2)) (Z x0)) as proof of ((Z x0)->((and (X x4)) (Z x4))) % Found ((fun (B:Prop)=> (((conj (X x4)) B) x2)) (Z x0)) as proof of ((Z x0)->((and (X x4)) (Z x4))) % Found conj100:=(conj10 (Z x0)):((Z x0)->((and (X x2)) (Z x0))) % Found (conj10 (Z x0)) as proof of ((Z x0)->((and (X x2)) (Z x2))) % Found ((fun (B:Prop)=> ((conj1 B) x3)) (Z x0)) as proof of ((Z x0)->((and (X x2)) (Z x2))) % Found ((fun (B:Prop)=> (((conj (X x2)) B) x3)) (Z x0)) as proof of ((Z x0)->((and (X x2)) (Z x2))) % Found ((fun (B:Prop)=> (((conj (X x2)) B) x3)) (Z x0)) as proof of ((Z x0)->((and (X x2)) (Z x2))) % Found ((fun (B:Prop)=> (((conj (X x2)) B) x3)) (Z x0)) as proof of ((Z x0)->((and (X x2)) (Z x2))) % Found conj100:=(conj10 (Z x0)):((Z x0)->((and (X x4)) (Z x0))) % Found (conj10 (Z x0)) as proof of ((Z x0)->((and (X x4)) (Z x4))) % Found ((fun (B:Prop)=> ((conj1 B) x2)) (Z x0)) as proof of ((Z x0)->((and (X x4)) (Z x4))) % Found ((fun (B:Prop)=> (((conj (X x4)) B) x2)) (Z x0)) as proof of ((Z x0)->((and (X x4)) (Z x4))) % Found ((fun (B:Prop)=> (((conj (X x4)) B) x2)) (Z x0)) as proof of ((Z x0)->((and (X x4)) (Z x4))) % Found ((fun (B:Prop)=> (((conj (X x4)) B) x2)) (Z x0)) as proof of ((Z x0)->((and (X x4)) (Z x4))) % Found conj100:=(conj10 (Y x0)):((Y x0)->((and (X x4)) (Y x0))) % Found (conj10 (Y x0)) as proof of ((Y x0)->((and (X x4)) (Y x4))) % Found ((fun (B:Prop)=> ((conj1 B) x2)) (Y x0)) as proof of ((Y x0)->((and (X x4)) (Y x4))) % Found ((fun (B:Prop)=> (((conj (X x4)) B) x2)) (Y x0)) as proof of ((Y x0)->((and (X x4)) (Y x4))) % Found ((fun (B:Prop)=> (((conj (X x4)) B) x2)) (Y x0)) as proof of ((Y x0)->((and (X x4)) (Y x4))) % Found ((fun (B:Prop)=> (((conj (X x4)) B) x2)) (Y x0)) as proof of ((Y x0)->((and (X x4)) (Y x4))) % Found x2:(X x0) % Instantiate: x4:=x0:a % Found x2 as proof of (X x4) % Found x2:(X x0) % Instantiate: x4:=x0:a % Found x2 as proof of (X x4) % Found x2:(X x0) % Instantiate: x4:=x0:a % Found x2 as proof of (X x4) % Found x2:(X x0) % Instantiate: x4:=x0:a % Found x2 as proof of (X x4) % Found x2:(X x0) % Instantiate: x4:=x0:a % Found x2 as proof of (X x4) % Found x2:(X x0) % Instantiate: x4:=x0:a % Found x2 as proof of (X x4) % Found x3:(X x0) % Instantiate: x2:=x0:a % Found (fun (x4:((or (Y x0)) (Z x0)))=> x3) as proof of (X x2) % Found (fun (x3:(X x0)) (x4:((or (Y x0)) (Z x0)))=> x3) as proof of (((or (Y x0)) (Z x0))->(X x2)) % Found (fun (x3:(X x0)) (x4:((or (Y x0)) (Z x0)))=> x3) as proof of ((X x0)->(((or (Y x0)) (Z x0))->(X x2))) % Found (and_rect00 (fun (x3:(X x0)) (x4:((or (Y x0)) (Z x0)))=> x3)) as proof of (X x2) % Found ((and_rect0 (X x2)) (fun (x3:(X x0)) (x4:((or (Y x0)) (Z x0)))=> x3)) as proof of (X x2) % Found (((fun (P:Type) (x3:((X x0)->(((or (Y x0)) (Z x0))->P)))=> (((((and_rect (X x0)) ((or (Y x0)) (Z x0))) P) x3) x1)) (X x2)) (fun (x3:(X x0)) (x4:((or (Y x0)) (Z x0)))=> x3)) as proof of (X x2) % Found (((fun (P:Type) (x3:((X x0)->(((or (Y x0)) (Z x0))->P)))=> (((((and_rect (X x0)) ((or (Y x0)) (Z x0))) P) x3) x1)) (X x2)) (fun (x3:(X x0)) (x4:((or (Y x0)) (Z x0)))=> x3)) as proof of (X x2) % Found x3:(X x0) % Instantiate: x2:=x0:a % Found (fun (x4:((or (Y x0)) (Z x0)))=> x3) as proof of (X x2) % Found (fun (x3:(X x0)) (x4:((or (Y x0)) (Z x0)))=> x3) as proof of (((or (Y x0)) (Z x0))->(X x2)) % Found (fun (x3:(X x0)) (x4:((or (Y x0)) (Z x0)))=> x3) as proof of ((X x0)->(((or (Y x0)) (Z x0))->(X x2))) % Found (and_rect00 (fun (x3:(X x0)) (x4:((or (Y x0)) (Z x0)))=> x3)) as proof of (X x2) % Found ((and_rect0 (X x2)) (fun (x3:(X x0)) (x4:((or (Y x0)) (Z x0)))=> x3)) as proof of (X x2) % Found (((fun (P:Type) (x3:((X x0)->(((or (Y x0)) (Z x0))->P)))=> (((((and_rect (X x0)) ((or (Y x0)) (Z x0))) P) x3) x1)) (X x2)) (fun (x3:(X x0)) (x4:((or (Y x0)) (Z x0)))=> x3)) as proof of (X x2) % Found (((fun (P:Type) (x3:((X x0)->(((or (Y x0)) (Z x0))->P)))=> (((((and_rect (X x0)) ((or (Y x0)) (Z x0))) P) x3) x1)) (X x2)) (fun (x3:(X x0)) (x4:((or (Y x0)) (Z x0)))=> x3)) as proof of (X x2) % Found x3:(X x1) % Instantiate: x0:=x1:a % Found (fun (x4:((or (Y x1)) (Z x1)))=> x3) as proof of (X x0) % Found (fun (x3:(X x1)) (x4:((or (Y x1)) (Z x1)))=> x3) as proof of (((or (Y x1)) (Z x1))->(X x0)) % Found (fun (x3:(X x1)) (x4:((or (Y x1)) (Z x1)))=> x3) as proof of ((X x1)->(((or (Y x1)) (Z x1))->(X x0))) % Found (and_rect00 (fun (x3:(X x1)) (x4:((or (Y x1)) (Z x1)))=> x3)) as proof of (X x0) % Found ((and_rect0 (X x0)) (fun (x3:(X x1)) (x4:((or (Y x1)) (Z x1)))=> x3)) as proof of (X x0) % Found (((fun (P:Type) (x3:((X x1)->(((or (Y x1)) (Z x1))->P)))=> (((((and_rect (X x1)) ((or (Y x1)) (Z x1))) P) x3) x2)) (X x0)) (fun (x3:(X x1)) (x4:((or (Y x1)) (Z x1)))=> x3)) as proof of (X x0) % Found (((fun (P:Type) (x3:((X x1)->(((or (Y x1)) (Z x1))->P)))=> (((((and_rect (X x1)) ((or (Y x1)) (Z x1))) P) x3) x2)) (X x0)) (fun (x3:(X x1)) (x4:((or (Y x1)) (Z x1)))=> x3)) as proof of (X x0) % Found x3:(X x1) % Instantiate: x0:=x1:a % Found (fun (x4:((or (Y x1)) (Z x1)))=> x3) as proof of (X x0) % Found (fun (x3:(X x1)) (x4:((or (Y x1)) (Z x1)))=> x3) as proof of (((or (Y x1)) (Z x1))->(X x0)) % Found (fun (x3:(X x1)) (x4:((or (Y x1)) (Z x1)))=> x3) as proof of ((X x1)->(((or (Y x1)) (Z x1))->(X x0))) % Found (and_rect00 (fun (x3:(X x1)) (x4:((or (Y x1)) (Z x1)))=> x3)) as proof of (X x0) % Found ((and_rect0 (X x0)) (fun (x3:(X x1)) (x4:((or (Y x1)) (Z x1)))=> x3)) as proof of (X x0) % Found (((fun (P:Type) (x3:((X x1)->(((or (Y x1)) (Z x1))->P)))=> (((((and_rect (X x1)) ((or (Y x1)) (Z x1))) P) x3) x2)) (X x0)) (fun (x3:(X x1)) (x4:((or (Y x1)) (Z x1)))=> x3)) as proof of (X x0) % Found (((fun (P:Type) (x3:((X x1)->(((or (Y x1)) (Z x1))->P)))=> (((((and_rect (X x1)) ((or (Y x1)) (Z x1))) P) x3) x2)) (X x0)) (fun (x3:(X x1)) (x4:((or (Y x1)) (Z x1)))=> x3)) as proof of (X x0) % Found x3:(X x0) % Instantiate: x2:=x0:a % Found x3 as proof of (X x2) % Found x2:(X x0) % Instantiate: x4:=x0:a % Found x2 as proof of (X x4) % Found x2:(X x0) % Instantiate: x4:=x0:a % Found x2 as proof of (X x4) % Found x3:(X x1) % Instantiate: x0:=x1:a % Found x3 as proof of (X x0) % Found x3:(X x0) % Instantiate: x2:=x0:a % Found x3 as proof of (X x2) % Found x3:(X x1) % Instantiate: x0:=x1:a % Found x3 as proof of (X x0) % Found x3:(X x0) % Instantiate: x2:=x0:a % Found (fun (x4:((or (Y x0)) (Z x0)))=> x3) as proof of (X x2) % Found (fun (x3:(X x0)) (x4:((or (Y x0)) (Z x0)))=> x3) as proof of (((or (Y x0)) (Z x0))->(X x2)) % Found (fun (x3:(X x0)) (x4:((or (Y x0)) (Z x0)))=> x3) as proof of ((X x0)->(((or (Y x0)) (Z x0))->(X x2))) % Found (and_rect00 (fun (x3:(X x0)) (x4:((or (Y x0)) (Z x0)))=> x3)) as proof of (X x2) % Found ((and_rect0 (X x2)) (fun (x3:(X x0)) (x4:((or (Y x0)) (Z x0)))=> x3)) as proof of (X x2) % Found (((fun (P:Type) (x3:((X x0)->(((or (Y x0)) (Z x0))->P)))=> (((((and_rect (X x0)) ((or (Y x0)) (Z x0))) P) x3) x1)) (X x2)) (fun (x3:(X x0)) (x4:((or (Y x0)) (Z x0)))=> x3)) as proof of (X x2) % Found (((fun (P:Type) (x3:((X x0)->(((or (Y x0)) (Z x0))->P)))=> (((((and_rect (X x0)) ((or (Y x0)) (Z x0))) P) x3) x1)) (X x2)) (fun (x3:(X x0)) (x4:((or (Y x0)) (Z x0)))=> x3)) as proof of (X x2) % Found x3:(X x0) % Instantiate: x2:=x0:a % Found (fun (x4:((or (Y x0)) (Z x0)))=> x3) as proof of (X x2) % Found (fun (x3:(X x0)) (x4:((or (Y x0)) (Z x0)))=> x3) as proof of (((or (Y x0)) (Z x0))->(X x2)) % Found (fun (x3:(X x0)) (x4:((or (Y x0)) (Z x0)))=> x3) as proof of ((X x0)->(((or (Y x0)) (Z x0))->(X x2))) % Found (and_rect00 (fun (x3:(X x0)) (x4:((or (Y x0)) (Z x0)))=> x3)) as proof of (X x2) % Found ((and_rect0 (X x2)) (fun (x3:(X x0)) (x4:((or (Y x0)) (Z x0)))=> x3)) as proof of (X x2) % Found (((fun (P:Type) (x3:((X x0)->(((or (Y x0)) (Z x0))->P)))=> (((((and_rect (X x0)) ((or (Y x0)) (Z x0))) P) x3) x1)) (X x2)) (fun (x3:(X x0)) (x4:((or (Y x0)) (Z x0)))=> x3)) as proof of (X x2) % Found (((fun (P:Type) (x3:((X x0)->(((or (Y x0)) (Z x0))->P)))=> (((((and_rect (X x0)) ((or (Y x0)) (Z x0))) P) x3) x1)) (X x2)) (fun (x3:(X x0)) (x4:((or (Y x0)) (Z x0)))=> x3)) as proof of (X x2) % Found x3:(X x0) % Instantiate: x2:=x0:a % Found (fun (x4:((or (Y x0)) (Z x0)))=> x3) as proof of (X x2) % Found (fun (x3:(X x0)) (x4:((or (Y x0)) (Z x0)))=> x3) as proof of (((or (Y x0)) (Z x0))->(X x2)) % Found (fun (x3:(X x0)) (x4:((or (Y x0)) (Z x0)))=> x3) as proof of ((X x0)->(((or (Y x0)) (Z x0))->(X x2))) % Found (and_rect00 (fun (x3:(X x0)) (x4:((or (Y x0)) (Z x0)))=> x3)) as proof of (X x2) % Found ((and_rect0 (X x2)) (fun (x3:(X x0)) (x4:((or (Y x0)) (Z x0)))=> x3)) as proof of (X x2) % Found (((fun (P:Type) (x3:((X x0)->(((or (Y x0)) (Z x0))->P)))=> (((((and_rect (X x0)) ((or (Y x0)) (Z x0))) P) x3) x1)) (X x2)) (fun (x3:(X x0)) (x4:((or (Y x0)) (Z x0)))=> x3)) as proof of (X x2) % Found (((fun (P:Type) (x3:((X x0)->(((or (Y x0)) (Z x0))->P)))=> (((((and_rect (X x0)) ((or (Y x0)) (Z x0))) P) x3) x1)) (X x2)) (fun (x3:(X x0)) (x4:((or (Y x0)) (Z x0)))=> x3)) as proof of (X x2) % Found x3:(X x0) % Instantiate: x2:=x0:a % Found x3 as proof of (X x2) % Found x2:(X x0) % Instantiate: x4:=x0:a % Found x2 as proof of (X x4) % Found x3:(X x0) % Instantiate: x2:=x0:a % Found (fun (x4:((or (Y x0)) (Z x0)))=> x3) as proof of (X x2) % Found (fun (x3:(X x0)) (x4:((or (Y x0)) (Z x0)))=> x3) as proof of (((or (Y x0)) (Z x0))->(X x2)) % Found (fun (x3:(X x0)) (x4:((or (Y x0)) (Z x0)))=> x3) as proof of ((X x0)->(((or (Y x0)) (Z x0))->(X x2))) % Found (and_rect00 (fun (x3:(X x0)) (x4:((or (Y x0)) (Z x0)))=> x3)) as proof of (X x2) % Found ((and_rect0 (X x2)) (fun (x3:(X x0)) (x4:((or (Y x0)) (Z x0)))=> x3)) as proof of (X x2) % Found (((fun (P:Type) (x3:((X x0)->(((or (Y x0)) (Z x0))->P)))=> (((((and_rect (X x0)) ((or (Y x0)) (Z x0))) P) x3) x1)) (X x2)) (fun (x3:(X x0)) (x4:((or (Y x0)) (Z x0)))=> x3)) as proof of (X x2) % Found (((fun (P:Type) (x3:((X x0)->(((or (Y x0)) (Z x0))->P)))=> (((((and_rect (X x0)) ((or (Y x0)) (Z x0))) P) x3) x1)) (X x2)) (fun (x3:(X x0)) (x4:((or (Y x0)) (Z x0)))=> x3)) as proof of (X x2) % Found x3:(X x0) % Instantiate: x2:=x0:a % Found x3 as proof of (X x2) % Found x2:(X x0) % Instantiate: x4:=x0:a % Found x2 as proof of (X x4) % Found x2:(X x0) % Instantiate: x4:=x0:a % Found x2 as proof of (X x4) % Found x2:(X x0) % Instantiate: x4:=x0:a % Found x2 as proof of (X x4) % Found x3:(X x1) % Instantiate: x5:=x1:a % Found x3 as proof of (X x5) % Found x3:(X x1) % Instantiate: x5:=x1:a % Found x3 as proof of (X x5) % Found x3:(X x1) % Instantiate: x0:=x1:a % Found (fun (x4:((or (Y x1)) (Z x1)))=> x3) as proof of (X x0) % Found (fun (x3:(X x1)) (x4:((or (Y x1)) (Z x1)))=> x3) as proof of (((or (Y x1)) (Z x1))->(X x0)) % Found (fun (x3:(X x1)) (x4:((or (Y x1)) (Z x1)))=> x3) as proof of ((X x1)->(((or (Y x1)) (Z x1))->(X x0))) % Found (and_rect00 (fun (x3:(X x1)) (x4:((or (Y x1)) (Z x1)))=> x3)) as proof of (X x0) % Found ((and_rect0 (X x0)) (fun (x3:(X x1)) (x4:((or (Y x1)) (Z x1)))=> x3)) as proof of (X x0) % Found (((fun (P:Type) (x3:((X x1)->(((or (Y x1)) (Z x1))->P)))=> (((((and_rect (X x1)) ((or (Y x1)) (Z x1))) P) x3) x2)) (X x0)) (fun (x3:(X x1)) (x4:((or (Y x1)) (Z x1)))=> x3)) as proof of (X x0) % Found (fun (x2:((and (X x1)) ((or (Y x1)) (Z x1))))=> (((fun (P:Type) (x3:((X x1)->(((or (Y x1)) (Z x1))->P)))=> (((((and_rect (X x1)) ((or (Y x1)) (Z x1))) P) x3) x2)) (X x0)) (fun (x3:(X x1)) (x4:((or (Y x1)) (Z x1)))=> x3))) as proof of (X x0) % Found x3:(X x1) % Instantiate: x0:=x1:a % Found (fun (x4:((or (Y x1)) (Z x1)))=> x3) as proof of (X x0) % Found (fun (x3:(X x1)) (x4:((or (Y x1)) (Z x1)))=> x3) as proof of (((or (Y x1)) (Z x1))->(X x0)) % Found (fun (x3:(X x1)) (x4:((or (Y x1)) (Z x1)))=> x3) as proof of ((X x1)->(((or (Y x1)) (Z x1))->(X x0))) % Found (and_rect00 (fun (x3:(X x1)) (x4:((or (Y x1)) (Z x1)))=> x3)) as proof of (X x0) % Found ((and_rect0 (X x0)) (fun (x3:(X x1)) (x4:((or (Y x1)) (Z x1)))=> x3)) as proof of (X x0) % Found (((fun (P:Type) (x3:((X x1)->(((or (Y x1)) (Z x1))->P)))=> (((((and_rect (X x1)) ((or (Y x1)) (Z x1))) P) x3) x2)) (X x0)) (fun (x3:(X x1)) (x4:((or (Y x1)) (Z x1)))=> x3)) as proof of (X x0) % Found (fun (x2:((and (X x1)) ((or (Y x1)) (Z x1))))=> (((fun (P:Type) (x3:((X x1)->(((or (Y x1)) (Z x1))->P)))=> (((((and_rect (X x1)) ((or (Y x1)) (Z x1))) P) x3) x2)) (X x0)) (fun (x3:(X x1)) (x4:((or (Y x1)) (Z x1)))=> x3))) as proof of (X x0) % Found x3:(X x0) % Found x3 as proof of (X x2) % Found x3:(X x1) % Found x3 as proof of (X x0) % Found x3:(X x0) % Found x3 as proof of (X x2) % Found x3:(X x1) % Found x3 as proof of (X x0) % Found x2:(X x0) % Found x2 as proof of (X x4) % Found x2:(X x0) % Found x2 as proof of (X x4) % Found x2:(X x0) % Found x2 as proof of (X x4) % Found x3:(X x0) % Found x3 as proof of (X x2) % Found x3:(X x0) % Found x3 as proof of (X x2) % Found x2:(X x0) % Found x2 as proof of (X x4) % Found x2:(X x0) % Found x2 as proof of (X x4) % Found x2:(X x0) % Found x2 as proof of (X x4) % Found x3:(X x0) % Instantiate: x2:=x0:a % Found x3 as proof of (X x2) % Found x3:(X x1) % Instantiate: x0:=x1:a % Found x3 as proof of (X x0) % Found x3:(X x1) % Instantiate: x0:=x1:a % Found x3 as proof of (X x0) % Found x3:(X x0) % Instantiate: x2:=x0:a % Found x3 as proof of (X x2) % Found x3:(X x0) % Instantiate: x2:=x0:a % Found x3 as proof of (X x2) % Found x3:(X x0) % Instantiate: x2:=x0:a % Found x3 as proof of (X x2) % Found x3:(X x0) % Instantiate: x2:=x0:a % Found x3 as proof of (X x2) % Found x3:(X x0) % Instantiate: x2:=x0:a % Found x3 as proof of (X x2) % Found x2:(X x0) % Instantiate: x5:=x0:a % Found x2 as proof of (X x5) % Found x4:(Z x0) % Instantiate: x5:=x0:a % Found x4 as proof of (Z x5) % Found x2:(X x0) % Instantiate: x5:=x0:a % Found x2 as proof of (X x5) % Found ((conj10 x2) x4) as proof of ((and (X x5)) (Z x5)) % Found (((conj1 (Z x5)) x2) x4) as proof of ((and (X x5)) (Z x5)) % Found ((((conj (X x5)) (Z x5)) x2) x4) as proof of ((and (X x5)) (Z x5)) % Found ((((conj (X x5)) (Z x5)) x2) x4) as proof of ((and (X x5)) (Z x5)) % Found (ex_intro000 ((((conj (X x5)) (Z x5)) x2) x4)) as proof of ((ex a) (fun (Xx:a)=> ((and (X Xx)) (Z Xx)))) % Found ((ex_intro00 x0) ((((conj (X x0)) (Z x0)) x2) x4)) as proof of ((ex a) (fun (Xx:a)=> ((and (X Xx)) (Z Xx)))) % Found (((ex_intro0 (fun (Xx:a)=> ((and (X Xx)) (Z Xx)))) x0) ((((conj (X x0)) (Z x0)) x2) x4)) as proof of ((ex a) (fun (Xx:a)=> ((and (X Xx)) (Z Xx)))) % Found ((((ex_intro a) (fun (Xx:a)=> ((and (X Xx)) (Z Xx)))) x0) ((((conj (X x0)) (Z x0)) x2) x4)) as proof of ((ex a) (fun (Xx:a)=> ((and (X Xx)) (Z Xx)))) % Found (fun (x4:(Z x0))=> ((((ex_intro a) (fun (Xx:a)=> ((and (X Xx)) (Z Xx)))) x0) ((((conj (X x0)) (Z x0)) x2) x4))) as proof of ((ex a) (fun (Xx:a)=> ((and (X Xx)) (Z Xx)))) % Found (fun (x4:(Z x0))=> ((((ex_intro a) (fun (Xx:a)=> ((and (X Xx)) (Z Xx)))) x0) ((((conj (X x0)) (Z x0)) x2) x4))) as proof of ((Z x0)->((ex a) (fun (Xx:a)=> ((and (X Xx)) (Z Xx))))) % Found x2:(X x0) % Instantiate: x5:=x0:a % Found x2 as proof of (X x5) % Found x2:(X x0) % Instantiate: x5:=x0:a % Found x2 as proof of (X x5) % Found x4:(Y x0) % Instantiate: x5:=x0:a % Found x4 as proof of (Y x5) % Found ((conj10 x2) x4) as proof of ((and (X x5)) (Y x5)) % Found (((conj1 (Y x5)) x2) x4) as proof of ((and (X x5)) (Y x5)) % Found ((((conj (X x5)) (Y x5)) x2) x4) as proof of ((and (X x5)) (Y x5)) % Found ((((conj (X x5)) (Y x5)) x2) x4) as proof of ((and (X x5)) (Y x5)) % Found (ex_intro000 ((((conj (X x5)) (Y x5)) x2) x4)) as proof of ((ex a) (fun (Xx:a)=> ((and (X Xx)) (Y Xx)))) % Found ((ex_intro00 x0) ((((conj (X x0)) (Y x0)) x2) x4)) as proof of ((ex a) (fun (Xx:a)=> ((and (X Xx)) (Y Xx)))) % Found (((ex_intro0 (fun (Xx:a)=> ((and (X Xx)) (Y Xx)))) x0) ((((conj (X x0)) (Y x0)) x2) x4)) as proof of ((ex a) (fun (Xx:a)=> ((and (X Xx)) (Y Xx)))) % Found ((((ex_intro a) (fun (Xx:a)=> ((and (X Xx)) (Y Xx)))) x0) ((((conj (X x0)) (Y x0)) x2) x4)) as proof of ((ex a) (fun (Xx:a)=> ((and (X Xx)) (Y Xx)))) % Found (fun (x4:(Y x0))=> ((((ex_intro a) (fun (Xx:a)=> ((and (X Xx)) (Y Xx)))) x0) ((((conj (X x0)) (Y x0)) x2) x4))) as proof of ((ex a) (fun (Xx:a)=> ((and (X Xx)) (Y Xx)))) % Found (fun (x4:(Y x0))=> ((((ex_intro a) (fun (Xx:a)=> ((and (X Xx)) (Y Xx)))) x0) ((((conj (X x0)) (Y x0)) x2) x4))) as proof of ((Y x0)->((ex a) (fun (Xx:a)=> ((and (X Xx)) (Y Xx))))) % Found x2:(X x0) % Instantiate: x5:=x0:a % Found x2 as proof of (X x5) % Found x2:(X x0) % Instantiate: x5:=x0:a % Found x2 as proof of (X x5) % Found x4:(Z x0) % Instantiate: x5:=x0:a % Found x4 as proof of (Z x5) % Found ((conj10 x2) x4) as proof of ((and (X x5)) (Z x5)) % Found (((conj1 (Z x5)) x2) x4) as proof of ((and (X x5)) (Z x5)) % Found ((((conj (X x5)) (Z x5)) x2) x4) as proof of ((and (X x5)) (Z x5)) % Found ((((conj (X x5)) (Z x5)) x2) x4) as proof of ((and (X x5)) (Z x5)) % Found (ex_intro000 ((((conj (X x5)) (Z x5)) x2) x4)) as proof of ((ex a) (fun (Xx:a)=> ((and (X Xx)) (Z Xx)))) % Found ((ex_intro00 x0) ((((conj (X x0)) (Z x0)) x2) x4)) as proof of ((ex a) (fun (Xx:a)=> ((and (X Xx)) (Z Xx)))) % Found (((ex_intro0 (fun (Xx:a)=> ((and (X Xx)) (Z Xx)))) x0) ((((conj (X x0)) (Z x0)) x2) x4)) as proof of ((ex a) (fun (Xx:a)=> ((and (X Xx)) (Z Xx)))) % Found ((((ex_intro a) (fun (Xx:a)=> ((and (X Xx)) (Z Xx)))) x0) ((((conj (X x0)) (Z x0)) x2) x4)) as proof of ((ex a) (fun (Xx:a)=> ((and (X Xx)) (Z Xx)))) % Found (fun (x4:(Z x0))=> ((((ex_intro a) (fun (Xx:a)=> ((and (X Xx)) (Z Xx)))) x0) ((((conj (X x0)) (Z x0)) x2) x4))) as proof of ((ex a) (fun (Xx:a)=> ((and (X Xx)) (Z Xx)))) % Found (fun (x4:(Z x0))=> ((((ex_intro a) (fun (Xx:a)=> ((and (X Xx)) (Z Xx)))) x0) ((((conj (X x0)) (Z x0)) x2) x4))) as proof of ((Z x0)->((ex a) (fun (Xx:a)=> ((and (X Xx)) (Z Xx))))) % Found x2:(X x0) % Instantiate: x5:=x0:a % Found x2 as proof of (X x5) % Found x2:(X x0) % Instantiate: x5:=x0:a % Found x2 as proof of (X x5) % Found x4:(Y x0) % Instantiate: x5:=x0:a % Found x4 as proof of (Y x5) % Found ((conj10 x2) x4) as proof of ((and (X x5)) (Y x5)) % Found (((conj1 (Y x5)) x2) x4) as proof of ((and (X x5)) (Y x5)) % Found ((((conj (X x5)) (Y x5)) x2) x4) as proof of ((and (X x5)) (Y x5)) % Found ((((conj (X x5)) (Y x5)) x2) x4) as proof of ((and (X x5)) (Y x5)) % Found (ex_intro000 ((((conj (X x5)) (Y x5)) x2) x4)) as proof of ((ex a) (fun (Xx:a)=> ((and (X Xx)) (Y Xx)))) % Found ((ex_intro00 x0) ((((conj (X x0)) (Y x0)) x2) x4)) as proof of ((ex a) (fun (Xx:a)=> ((and (X Xx)) (Y Xx)))) % Found (((ex_intro0 (fun (Xx:a)=> ((and (X Xx)) (Y Xx)))) x0) ((((conj (X x0)) (Y x0)) x2) x4)) as proof of ((ex a) (fun (Xx:a)=> ((and (X Xx)) (Y Xx)))) % Found ((((ex_intro a) (fun (Xx:a)=> ((and (X Xx)) (Y Xx)))) x0) ((((conj (X x0)) (Y x0)) x2) x4)) as proof of ((ex a) (fun (Xx:a)=> ((and (X Xx)) (Y Xx)))) % Found (fun (x4:(Y x0))=> ((((ex_intro a) (fun (Xx:a)=> ((and (X Xx)) (Y Xx)))) x0) ((((conj (X x0)) (Y x0)) x2) x4))) as proof of ((ex a) (fun (Xx:a)=> ((and (X Xx)) (Y Xx)))) % Found (fun (x4:(Y x0))=> ((((ex_intro a) (fun (Xx:a)=> ((and (X Xx)) (Y Xx)))) x0) ((((conj (X x0)) (Y x0)) x2) x4))) as proof of ((Y x0)->((ex a) (fun (Xx:a)=> ((and (X Xx)) (Y Xx))))) % Found x2:(X x0) % Instantiate: x5:=x0:a % Found x2 as proof of (X x5) % Found x4:(Z x0) % Instantiate: x5:=x0:a % Found x4 as proof of (Z x5) % Found ((conj10 x2) x4) as proof of ((and (X x5)) (Z x5)) % Found (((conj1 (Z x5)) x2) x4) as proof of ((and (X x5)) (Z x5)) % Found ((((conj (X x5)) (Z x5)) x2) x4) as proof of ((and (X x5)) (Z x5)) % Found ((((conj (X x5)) (Z x5)) x2) x4) as proof of ((and (X x5)) (Z x5)) % Found (ex_intro000 ((((conj (X x5)) (Z x5)) x2) x4)) as proof of ((ex a) (fun (Xx:a)=> ((and (X Xx)) (Z Xx)))) % Found ((ex_intro00 x0) ((((conj (X x0)) (Z x0)) x2) x4)) as proof of ((ex a) (fun (Xx:a)=> ((and (X Xx)) (Z Xx)))) % Found (((ex_intro0 (fun (Xx:a)=> ((and (X Xx)) (Z Xx)))) x0) ((((conj (X x0)) (Z x0)) x2) x4)) as proof of ((ex a) (fun (Xx:a)=> ((and (X Xx)) (Z Xx)))) % Found ((((ex_intro a) (fun (Xx:a)=> ((and (X Xx)) (Z Xx)))) x0) ((((conj (X x0)) (Z x0)) x2) x4)) as proof of ((ex a) (fun (Xx:a)=> ((and (X Xx)) (Z Xx)))) % Found (fun (x4:(Z x0))=> ((((ex_intro a) (fun (Xx:a)=> ((and (X Xx)) (Z Xx)))) x0) ((((conj (X x0)) (Z x0)) x2) x4))) as proof of ((ex a) (fun (Xx:a)=> ((and (X Xx)) (Z Xx)))) % Found (fun (x4:(Z x0))=> ((((ex_intro a) (fun (Xx:a)=> ((and (X Xx)) (Z Xx)))) x0) ((((conj (X x0)) (Z x0)) x2) x4))) as proof of ((Z x0)->((ex a) (fun (Xx:a)=> ((and (X Xx)) (Z Xx))))) % Found x2:(X x0) % Instantiate: x5:=x0:a % Found x2 as proof of (X x5) % Found x2:(X x0) % Instantiate: x5:=x0:a % Found x2 as proof of (X x5) % Found x4:(Y x0) % Instantiate: x5:=x0:a % Found x4 as proof of (Y x5) % Found ((conj10 x2) x4) as proof of ((and (X x5)) (Y x5)) % Found (((conj1 (Y x5)) x2) x4) as proof of ((and (X x5)) (Y x5)) % Found ((((conj (X x5)) (Y x5)) x2) x4) as proof of ((and (X x5)) (Y x5)) % Found ((((conj (X x5)) (Y x5)) x2) x4) as proof of ((and (X x5)) (Y x5)) % Found (ex_intro000 ((((conj (X x5)) (Y x5)) x2) x4)) as proof of ((ex a) (fun (Xx:a)=> ((and (X Xx)) (Y Xx)))) % Found ((ex_intro00 x0) ((((conj (X x0)) (Y x0)) x2) x4)) as proof of ((ex a) (fun (Xx:a)=> ((and (X Xx)) (Y Xx)))) % Found (((ex_intro0 (fun (Xx:a)=> ((and (X Xx)) (Y Xx)))) x0) ((((conj (X x0)) (Y x0)) x2) x4)) as proof of ((ex a) (fun (Xx:a)=> ((and (X Xx)) (Y Xx)))) % Found ((((ex_intro a) (fun (Xx:a)=> ((and (X Xx)) (Y Xx)))) x0) ((((conj (X x0)) (Y x0)) x2) x4)) as proof of ((ex a) (fun (Xx:a)=> ((and (X Xx)) (Y Xx)))) % Found (fun (x4:(Y x0))=> ((((ex_intro a) (fun (Xx:a)=> ((and (X Xx)) (Y Xx)))) x0) ((((conj (X x0)) (Y x0)) x2) x4))) as proof of ((ex a) (fun (Xx:a)=> ((and (X Xx)) (Y Xx)))) % Found (fun (x4:(Y x0))=> ((((ex_intro a) (fun (Xx:a)=> ((and (X Xx)) (Y Xx)))) x0) ((((conj (X x0)) (Y x0)) x2) x4))) as proof of ((Y x0)->((ex a) (fun (Xx:a)=> ((and (X Xx)) (Y Xx))))) % Found x2:(X x0) % Instantiate: x5:=x0:a % Found x2 as proof of (X x5) % Found x4:(X x2) % Instantiate: x1:=x2:a % Found x4 as proof of (X x1) % Found x4:(X x1) % Instantiate: x3:=x1:a % Found x4 as proof of (X x3) % Found x4:(X x2) % Instantiate: x1:=x2:a % Found x4 as proof of (X x1) % Found x4:(X x1) % Instantiate: x3:=x1:a % Found x4 as proof of (X x3) % Found x5:(Z x1) % Instantiate: x0:=x1:a % Found (fun (x5:(Z x1))=> x5) as proof of (Z x0) % Found (fun (x5:(Z x1))=> x5) as proof of ((Z x1)->(Z x0)) % Found x5:(Y x0) % Instantiate: x2:=x0:a % Found (fun (x5:(Y x0))=> x5) as proof of (Y x2) % Found (fun (x5:(Y x0))=> x5) as proof of ((Y x0)->(Y x2)) % Found x5:(Y x1) % Instantiate: x0:=x1:a % Found (fun (x5:(Y x1))=> x5) as proof of (Y x0) % Found (fun (x5:(Y x1))=> x5) as proof of ((Y x1)->(Y x0)) % Found x5:(Z x0) % Instantiate: x2:=x0:a % Found (fun (x5:(Z x0))=> x5) as proof of (Z x2) % Found (fun (x5:(Z x0))=> x5) as proof of ((Z x0)->(Z x2)) % Found x5:(Y x0) % Instantiate: x2:=x0:a % Found (fun (x5:(Y x0))=> x5) as proof of (Y x2) % Found (fun (x5:(Y x0))=> x5) as proof of ((Y x0)->(Y x2)) % Found x5:(Z x0) % Instantiate: x4:=x0:a % Found (fun (x5:(Z x0))=> x5) as proof of (Z x4) % Found (fun (x5:(Z x0))=> x5) as proof of ((Z x0)->(Z x4)) % Found x5:(Y x0) % Instantiate: x4:=x0:a % Found (fun (x5:(Y x0))=> x5) as proof of (Y x4) % Found (fun (x5:(Y x0))=> x5) as proof of ((Y x0)->(Y x4)) % Found x5:(Z x0) % Instantiate: x2:=x0:a % Found (fun (x5:(Z x0))=> x5) as proof of (Z x2) % Found (fun (x5:(Z x0))=> x5) as proof of ((Z x0)->(Z x2)) % Found x5:(Y x1) % Instantiate: x0:=x1:a % Found (fun (x5:(Y x1))=> x5) as proof of (Y x0) % Found (fun (x5:(Y x1))=> x5) as proof of ((Y x1)->(Y x0)) % Found x5:(Z x1) % Instantiate: x0:=x1:a % Found (fun (x5:(Z x1))=> x5) as proof of (Z x0) % Found (fun (x5:(Z x1))=> x5) as proof of ((Z x1)->(Z x0)) % Found x5:(Z x0) % Instantiate: x2:=x0:a % Found (fun (x5:(Z x0))=> x5) as proof of (Z x2) % Found (fun (x5:(Z x0))=> x5) as proof of ((Z x0)->(Z x2)) % Found x5:(Y x0) % Instantiate: x2:=x0:a % Found (fun (x5:(Y x0))=> x5) as proof of (Y x2) % Found (fun (x5:(Y x0))=> x5) as proof of ((Y x0)->(Y x2)) % Found x5:(Z x0) % Instantiate: x2:=x0:a % Found (fun (x5:(Z x0))=> x5) as proof of (Z x2) % Found (fun (x5:(Z x0))=> x5) as proof of ((Z x0)->(Z x2)) % Found x5:(Y x0) % Instantiate: x2:=x0:a % Found (fun (x5:(Y x0))=> x5) as proof of (Y x2) % Found (fun (x5:(Y x0))=> x5) as proof of ((Y x0)->(Y x2)) % Found x5:(Y x0) % Instantiate: x4:=x0:a % Found (fun (x5:(Y x0))=> x5) as proof of (Y x4) % Found (fun (x5:(Y x0))=> x5) as proof of ((Y x0)->(Y x4)) % Found x5:(Z x0) % Instantiate: x4:=x0:a % Found (fun (x5:(Z x0))=> x5) as proof of (Z x4) % Found (fun (x5:(Z x0))=> x5) as proof of ((Z x0)->(Z x4)) % Found x5:(Y x0) % Instantiate: x4:=x0:a % Found (fun (x5:(Y x0))=> x5) as proof of (Y x4) % Found (fun (x5:(Y x0))=> x5) as proof of ((Y x0)->(Y x4)) % Found x5:(Z x0) % Instantiate: x4:=x0:a % Found (fun (x5:(Z x0))=> x5) as proof of (Z x4) % Found (fun (x5:(Z x0))=> x5) as proof of ((Z x0)->(Z x4)) % Found x5:(Z x1) % Found (fun (x5:(Z x1))=> x5) as proof of (Z x0) % Found (fun (x5:(Z x1))=> x5) as proof of ((Z x1)->(Z x0)) % Found x5:(Y x0) % Found (fun (x5:(Y x0))=> x5) as proof of (Y x2) % Found (fun (x5:(Y x0))=> x5) as proof of ((Y x0)->(Y x2)) % Found x5:(Z x0) % Found (fun (x5:(Z x0))=> x5) as proof of (Z x2) % Found (fun (x5:(Z x0))=> x5) as proof of ((Z x0)->(Z x2)) % Found x5:(Y x1) % Found (fun (x5:(Y x1))=> x5) as proof of (Y x0) % Found (fun (x5:(Y x1))=> x5) as proof of ((Y x1)->(Y x0)) % Found x5:(Z x0) % Found (fun (x5:(Z x0))=> x5) as proof of (Z x4) % Found (fun (x5:(Z x0))=> x5) as proof of ((Z x0)->(Z x4)) % Found x5:(Z x0) % Found (fun (x5:(Z x0))=> x5) as proof of (Z x2) % Found (fun (x5:(Z x0))=> x5) as proof of ((Z x0)->(Z x2)) % Found x5:(Z x1) % Found (fun (x5:(Z x1))=> x5) as proof of (Z x0) % Found (fun (x5:(Z x1))=> x5) as proof of ((Z x1)->(Z x0)) % Found x5:(Z x0) % Found (fun (x5:(Z x0))=> x5) as proof of (Z x2) % Found (fun (x5:(Z x0))=> x5) as proof of ((Z x0)->(Z x2)) % Found x5:(Y x0) % Found (fun (x5:(Y x0))=> x5) as proof of (Y x4) % Found (fun (x5:(Y x0))=> x5) as proof of ((Y x0)->(Y x4)) % Found x5:(Y x0) % Found (fun (x5:(Y x0))=> x5) as proof of (Y x2) % Found (fun (x5:(Y x0))=> x5) as proof of ((Y x0)->(Y x2)) % Found x5:(Y x0) % Found (fun (x5:(Y x0))=> x5) as proof of (Y x2) % Found (fun (x5:(Y x0))=> x5) as proof of ((Y x0)->(Y x2)) % Found x5:(Y x1) % Found (fun (x5:(Y x1))=> x5) as proof of (Y x0) % Found (fun (x5:(Y x1))=> x5) as proof of ((Y x1)->(Y x0)) % Found x5:(Z x0) % Found (fun (x5:(Z x0))=> x5) as proof of (Z x2) % Found (fun (x5:(Z x0))=> x5) as proof of ((Z x0)->(Z x2)) % Found x5:(Z x0) % Found (fun (x5:(Z x0))=> x5) as proof of (Z x4) % Found (fun (x5:(Z x0))=> x5) as proof of ((Z x0)->(Z x4)) % Found x5:(Y x0) % Found (fun (x5:(Y x0))=> x5) as proof of (Y x4) % Found (fun (x5:(Y x0))=> x5) as proof of ((Y x0)->(Y x4)) % Found x5:(Y x0) % Found (fun (x5:(Y x0))=> x5) as proof of (Y x2) % Found (fun (x5:(Y x0))=> x5) as proof of ((Y x0)->(Y x2)) % Found x5:(Y x0) % Found (fun (x5:(Y x0))=> x5) as proof of (Y x4) % Found (fun (x5:(Y x0))=> x5) as proof of ((Y x0)->(Y x4)) % Found x5:(Z x0) % Found (fun (x5:(Z x0))=> x5) as proof of (Z x4) % Found (fun (x5:(Z x0))=> x5) as proof of ((Z x0)->(Z x4)) % Found conj100:=(conj10 (Y x0)):((Y x0)->((and (X x2)) (Y x0))) % Found (conj10 (Y x0)) as proof of ((Y x0)->((and (X x2)) (Y x2))) % Found ((fun (B:Prop)=> ((conj1 B) x3)) (Y x0)) as proof of ((Y x0)->((and (X x2)) (Y x2))) % Found ((fun (B:Prop)=> (((conj (X x2)) B) x3)) (Y x0)) as proof of ((Y x0)->((and (X x2)) (Y x2))) % Found ((fun (B:Prop)=> (((conj (X x2)) B) x3)) (Y x0)) as proof of ((Y x0)->((and (X x2)) (Y x2))) % Found ((fun (B:Prop)=> (((conj (X x2)) B) x3)) (Y x0)) as proof of ((Y x0)->((and (X x2)) (Y x2))) % Found conj100:=(conj10 (Z x1)):((Z x1)->((and (X x0)) (Z x1))) % Found (conj10 (Z x1)) as proof of ((Z x1)->((and (X x0)) (Z x0))) % Found ((fun (B:Prop)=> ((conj1 B) x3)) (Z x1)) as proof of ((Z x1)->((and (X x0)) (Z x0))) % Found ((fun (B:Prop)=> (((conj (X x0)) B) x3)) (Z x1)) as proof of ((Z x1)->((and (X x0)) (Z x0))) % Found ((fun (B:Prop)=> (((conj (X x0)) B) x3)) (Z x1)) as proof of ((Z x1)->((and (X x0)) (Z x0))) % Found ((fun (B:Prop)=> (((conj (X x0)) B) x3)) (Z x1)) as proof of ((Z x1)->((and (X x0)) (Z x0))) % Found conj100:=(conj10 (Y x0)):((Y x0)->((and (X x4)) (Y x0))) % Found (conj10 (Y x0)) as proof of ((Y x0)->((and (X x4)) (Y x4))) % Found ((fun (B:Prop)=> ((conj1 B) x2)) (Y x0)) as proof of ((Y x0)->((and (X x4)) (Y x4))) % Found ((fun (B:Prop)=> (((conj (X x4)) B) x2)) (Y x0)) as proof of ((Y x0)->((and (X x4)) (Y x4))) % Found ((fun (B:Prop)=> (((conj (X x4)) B) x2)) (Y x0)) as proof of ((Y x0)->((and (X x4)) (Y x4))) % Found ((fun (B:Prop)=> (((conj (X x4)) B) x2)) (Y x0)) as proof of ((Y x0)->((and (X x4)) (Y x4))) % Found conj100:=(conj10 (Z x0)):((Z x0)->((and (X x4)) (Z x0))) % Found (conj10 (Z x0)) as proof of ((Z x0)->((and (X x4)) (Z x4))) % Found ((fun (B:Prop)=> ((conj1 B) x2)) (Z x0)) as proof of ((Z x0)->((and (X x4)) (Z x4))) % Found ((fun (B:Prop)=> (((conj (X x4)) B) x2)) (Z x0)) as proof of ((Z x0)->((and (X x4)) (Z x4))) % Found ((fun (B:Prop)=> (((conj (X x4)) B) x2)) (Z x0)) as proof of ((Z x0)->((and (X x4)) (Z x4))) % Found ((fun (B:Prop)=> (((conj (X x4)) B) x2)) (Z x0)) as proof of ((Z x0)->((and (X x4)) (Z x4))) % Found conj100:=(conj10 (Y x1)):((Y x1)->((and (X x0)) (Y x1))) % Found (conj10 (Y x1)) as proof of ((Y x1)->((and (X x0)) (Y x0))) % Found ((fun (B:Prop)=> ((conj1 B) x3)) (Y x1)) as proof of ((Y x1)->((and (X x0)) (Y x0))) % Found ((fun (B:Prop)=> (((conj (X x0)) B) x3)) (Y x1)) as proof of ((Y x1)->((and (X x0)) (Y x0))) % Found ((fun (B:Prop)=> (((conj (X x0)) B) x3)) (Y x1)) as proof of ((Y x1)->((and (X x0)) (Y x0))) % Found ((fun (B:Prop)=> (((conj (X x0)) B) x3)) (Y x1)) as proof of ((Y x1)->((and (X x0)) (Y x0))) % Found conj100:=(conj10 (Z x0)):((Z x0)->((and (X x2)) (Z x0))) % Found (conj10 (Z x0)) as proof of ((Z x0)->((and (X x2)) (Z x2))) % Found ((fun (B:Prop)=> ((conj1 B) x3)) (Z x0)) as proof of ((Z x0)->((and (X x2)) (Z x2))) % Found ((fun (B:Prop)=> (((conj (X x2)) B) x3)) (Z x0)) as proof of ((Z x0)->((and (X x2)) (Z x2))) % Found ((fun (B:Prop)=> (((conj (X x2)) B) x3)) (Z x0)) as proof of ((Z x0)->((and (X x2)) (Z x2))) % Found ((fun (B:Prop)=> (((conj (X x2)) B) x3)) (Z x0)) as proof of ((Z x0)->((and (X x2)) (Z x2))) % Found conj100:=(conj10 (Y x0)):((Y x0)->((and (X x2)) (Y x0))) % Found (conj10 (Y x0)) as proof of ((Y x0)->((and (X x2)) (Y x2))) % Found ((fun (B:Prop)=> ((conj1 B) x3)) (Y x0)) as proof of ((Y x0)->((and (X x2)) (Y x2))) % Found ((fun (B:Prop)=> (((conj (X x2)) B) x3)) (Y x0)) as proof of ((Y x0)->((and (X x2)) (Y x2))) % Found ((fun (B:Prop)=> (((conj (X x2)) B) x3)) (Y x0)) as proof of ((Y x0)->((and (X x2)) (Y x2))) % Found ((fun (B:Prop)=> (((conj (X x2)) B) x3)) (Y x0)) as proof of ((Y x0)->((and (X x2)) (Y x2))) % Found conj100:=(conj10 (Y x0)):((Y x0)->((and (X x4)) (Y x0))) % Found (conj10 (Y x0)) as proof of ((Y x0)->((and (X x4)) (Y x4))) % Found ((fun (B:Prop)=> ((conj1 B) x2)) (Y x0)) as proof of ((Y x0)->((and (X x4)) (Y x4))) % Found ((fun (B:Prop)=> (((conj (X x4)) B) x2)) (Y x0)) as proof of ((Y x0)->((and (X x4)) (Y x4))) % Found ((fun (B:Prop)=> (((conj (X x4)) B) x2)) (Y x0)) as proof of ((Y x0)->((and (X x4)) (Y x4))) % Found ((fun (B:Prop)=> (((conj (X x4)) B) x2)) (Y x0)) as proof of ((Y x0)->((and (X x4)) (Y x4))) % Found conj100:=(conj10 (Z x0)):((Z x0)->((and (X x2)) (Z x0))) % Found (conj10 (Z x0)) as proof of ((Z x0)->((and (X x2)) (Z x2))) % Found ((fun (B:Prop)=> ((conj1 B) x3)) (Z x0)) as proof of ((Z x0)->((and (X x2)) (Z x2))) % Found ((fun (B:Prop)=> (((conj (X x2)) B) x3)) (Z x0)) as proof of ((Z x0)->((and (X x2)) (Z x2))) % Found ((fun (B:Prop)=> (((conj (X x2)) B) x3)) (Z x0)) as proof of ((Z x0)->((and (X x2)) (Z x2))) % Found ((fun (B:Prop)=> (((conj (X x2)) B) x3)) (Z x0)) as proof of ((Z x0)->((and (X x2)) (Z x2))) % Found conj100:=(conj10 (Z x0)):((Z x0)->((and (X x4)) (Z x0))) % Found (conj10 (Z x0)) as proof of ((Z x0)->((and (X x4)) (Z x4))) % Found ((fun (B:Prop)=> ((conj1 B) x2)) (Z x0)) as proof of ((Z x0)->((and (X x4)) (Z x4))) % Found ((fun (B:Prop)=> (((conj (X x4)) B) x2)) (Z x0)) as proof of ((Z x0)->((and (X x4)) (Z x4))) % Found ((fun (B:Prop)=> (((conj (X x4)) B) x2)) (Z x0)) as proof of ((Z x0)->((and (X x4)) (Z x4))) % Found ((fun (B:Prop)=> (((conj (X x4)) B) x2)) (Z x0)) as proof of ((Z x0)->((and (X x4)) (Z x4))) % Found conj100:=(conj10 (Z x0)):((Z x0)->((and (X x4)) (Z x0))) % Found (conj10 (Z x0)) as proof of ((Z x0)->((and (X x4)) (Z x4))) % Found ((fun (B:Prop)=> ((conj1 B) x2)) (Z x0)) as proof of ((Z x0)->((and (X x4)) (Z x4))) % Found ((fun (B:Prop)=> (((conj (X x4)) B) x2)) (Z x0)) as proof of ((Z x0)->((and (X x4)) (Z x4))) % Found ((fun (B:Prop)=> (((conj (X x4)) B) x2)) (Z x0)) as proof of ((Z x0)->((and (X x4)) (Z x4))) % Found ((fun (B:Prop)=> (((conj (X x4)) B) x2)) (Z x0)) as proof of ((Z x0)->((and (X x4)) (Z x4))) % Found conj100:=(conj10 (Z x0)):((Z x0)->((and (X x4)) (Z x0))) % Found (conj10 (Z x0)) as proof of ((Z x0)->((and (X x4)) (Z x4))) % Found ((fun (B:Prop)=> ((conj1 B) x2)) (Z x0)) as proof of ((Z x0)->((and (X x4)) (Z x4))) % Found ((fun (B:Prop)=> (((conj (X x4)) B) x2)) (Z x0)) as proof of ((Z x0)->((and (X x4)) (Z x4))) % Found ((fun (B:Prop)=> (((conj (X x4)) B) x2)) (Z x0)) as proof of ((Z x0)->((and (X x4)) (Z x4))) % Found ((fun (B:Prop)=> (((conj (X x4)) B) x2)) (Z x0)) as proof of ((Z x0)->((and (X x4)) (Z x4))) % Found conj100:=(conj10 (Z x0)):((Z x0)->((and (X x2)) (Z x0))) % Found (conj10 (Z x0)) as proof of ((Z x0)->((and (X x2)) (Z x2))) % Found ((fun (B:Prop)=> ((conj1 B) x3)) (Z x0)) as proof of ((Z x0)->((and (X x2)) (Z x2))) % Found ((fun (B:Prop)=> (((conj (X x2)) B) x3)) (Z x0)) as proof of ((Z x0)->((and (X x2)) (Z x2))) % Found ((fun (B:Prop)=> (((conj (X x2)) B) x3)) (Z x0)) as proof of ((Z x0)->((and (X x2)) (Z x2))) % Found ((fun (B:Prop)=> (((conj (X x2)) B) x3)) (Z x0)) as proof of ((Z x0)->((and (X x2)) (Z x2))) % Found conj100:=(conj10 (Y x0)):((Y x0)->((and (X x4)) (Y x0))) % Found (conj10 (Y x0)) as proof of ((Y x0)->((and (X x4)) (Y x4))) % Found ((fun (B:Prop)=> ((conj1 B) x2)) (Y x0)) as proof of ((Y x0)->((and (X x4)) (Y x4))) % Found ((fun (B:Prop)=> (((conj (X x4)) B) x2)) (Y x0)) as proof of ((Y x0)->((and (X x4)) (Y x4))) % Found ((fun (B:Prop)=> (((conj (X x4)) B) x2)) (Y x0)) as proof of ((Y x0)->((and (X x4)) (Y x4))) % Found ((fun (B:Prop)=> (((conj (X x4)) B) x2)) (Y x0)) as proof of ((Y x0)->((and (X x4)) (Y x4))) % Found conj100:=(conj10 (Y x0)):((Y x0)->((and (X x2)) (Y x0))) % Found (conj10 (Y x0)) as proof of ((Y x0)->((and (X x2)) (Y x2))) % Found ((fun (B:Prop)=> ((conj1 B) x3)) (Y x0)) as proof of ((Y x0)->((and (X x2)) (Y x2))) % Found ((fun (B:Prop)=> (((conj (X x2)) B) x3)) (Y x0)) as proof of ((Y x0)->((and (X x2)) (Y x2))) % Found ((fun (B:Prop)=> (((conj (X x2)) B) x3)) (Y x0)) as proof of ((Y x0)->((and (X x2)) (Y x2))) % Found ((fun (B:Prop)=> (((conj (X x2)) B) x3)) (Y x0)) as proof of ((Y x0)->((and (X x2)) (Y x2))) % Found conj100:=(conj10 (Y x0)):((Y x0)->((and (X x4)) (Y x0))) % Found (conj10 (Y x0)) as proof of ((Y x0)->((and (X x4)) (Y x4))) % Found ((fun (B:Prop)=> ((conj1 B) x2)) (Y x0)) as proof of ((Y x0)->((and (X x4)) (Y x4))) % Found ((fun (B:Prop)=> (((conj (X x4)) B) x2)) (Y x0)) as proof of ((Y x0)->((and (X x4)) (Y x4))) % Found ((fun (B:Prop)=> (((conj (X x4)) B) x2)) (Y x0)) as proof of ((Y x0)->((and (X x4)) (Y x4))) % Found ((fun (B:Prop)=> (((conj (X x4)) B) x2)) (Y x0)) as proof of ((Y x0)->((and (X x4)) (Y x4))) % Found conj100:=(conj10 (Y x0)):((Y x0)->((and (X x4)) (Y x0))) % Found (conj10 (Y x0)) as proof of ((Y x0)->((and (X x4)) (Y x4))) % Found ((fun (B:Prop)=> ((conj1 B) x2)) (Y x0)) as proof of ((Y x0)->((and (X x4)) (Y x4))) % Found ((fun (B:Prop)=> (((conj (X x4)) B) x2)) (Y x0)) as proof of ((Y x0)->((and (X x4)) (Y x4))) % Found ((fun (B:Prop)=> (((conj (X x4)) B) x2)) (Y x0)) as proof of ((Y x0)->((and (X x4)) (Y x4))) % Found ((fun (B:Prop)=> (((conj (X x4)) B) x2)) (Y x0)) as proof of ((Y x0)->((and (X x4)) (Y x4))) % Found conj100:=(conj10 (Z x0)):((Z x0)->((and (X x4)) (Z x0))) % Found (conj10 (Z x0)) as proof of ((Z x0)->((and (X x4)) (Z x4))) % Found ((fun (B:Prop)=> ((conj1 B) x2)) (Z x0)) as proof of ((Z x0)->((and (X x4)) (Z x4))) % Found ((fun (B:Prop)=> (((conj (X x4)) B) x2)) (Z x0)) as proof of ((Z x0)->((and (X x4)) (Z x4))) % Found ((fun (B:Prop)=> (((conj (X x4)) B) x2)) (Z x0)) as proof of ((Z x0)->((and (X x4)) (Z x4))) % Found ((fun (B:Prop)=> (((conj (X x4)) B) x2)) (Z x0)) as proof of ((Z x0)->((and (X x4)) (Z x4))) % Found conj100:=(conj10 (Z x0)):((Z x0)->((and (X x4)) (Z x0))) % Found (conj10 (Z x0)) as proof of ((Z x0)->((and (X x4)) (Z x4))) % Found ((fun (B:Prop)=> ((conj1 B) x2)) (Z x0)) as proof of ((Z x0)->((and (X x4)) (Z x4))) % Found ((fun (B:Prop)=> (((conj (X x4)) B) x2)) (Z x0)) as proof of ((Z x0)->((and (X x4)) (Z x4))) % Found ((fun (B:Prop)=> (((conj (X x4)) B) x2)) (Z x0)) as proof of ((Z x0)->((and (X x4)) (Z x4))) % Found ((fun (B:Prop)=> (((conj (X x4)) B) x2)) (Z x0)) as proof of ((Z x0)->((and (X x4)) (Z x4))) % Found conj100:=(conj10 (Y x0)):((Y x0)->((and (X x4)) (Y x0))) % Found (conj10 (Y x0)) as proof of ((Y x0)->((and (X x4)) (Y x4))) % Found ((fun (B:Prop)=> ((conj1 B) x2)) (Y x0)) as proof of ((Y x0)->((and (X x4)) (Y x4))) % Found ((fun (B:Prop)=> (((conj (X x4)) B) x2)) (Y x0)) as proof of ((Y x0)->((and (X x4)) (Y x4))) % Found ((fun (B:Prop)=> (((conj (X x4)) B) x2)) (Y x0)) as proof of ((Y x0)->((and (X x4)) (Y x4))) % Found ((fun (B:Prop)=> (((conj (X x4)) B) x2)) (Y x0)) as proof of ((Y x0)->((and (X x4)) (Y x4))) % Found x4:(X x2) % Instantiate: x0:=x2:a % Found (fun (x5:(Y x2))=> x4) as proof of (X x0) % Found (fun (x4:(X x2)) (x5:(Y x2))=> x4) as proof of ((Y x2)->(X x0)) % Found (fun (x4:(X x2)) (x5:(Y x2))=> x4) as proof of ((X x2)->((Y x2)->(X x0))) % Found (and_rect00 (fun (x4:(X x2)) (x5:(Y x2))=> x4)) as proof of (X x0) % Found ((and_rect0 (X x0)) (fun (x4:(X x2)) (x5:(Y x2))=> x4)) as proof of (X x0) % Found (((fun (P:Type) (x4:((X x2)->((Y x2)->P)))=> (((((and_rect (X x2)) (Y x2)) P) x4) x3)) (X x0)) (fun (x4:(X x2)) (x5:(Y x2))=> x4)) as proof of (X x0) % Found (((fun (P:Type) (x4:((X x2)->((Y x2)->P)))=> (((((and_rect (X x2)) (Y x2)) P) x4) x3)) (X x0)) (fun (x4:(X x2)) (x5:(Y x2))=> x4)) as proof of (X x0) % Found or_introl00:=(or_introl0 (Z x0)):((Y x2)->((or (Y x2)) (Z x0))) % Found (or_introl0 (Z x0)) as proof of ((Y x2)->((or (Y x0)) (Z x0))) % Found ((or_introl (Y x2)) (Z x0)) as proof of ((Y x2)->((or (Y x0)) (Z x0))) % Found (fun (x4:(X x2))=> ((or_introl (Y x2)) (Z x0))) as proof of ((Y x2)->((or (Y x0)) (Z x0))) % Found (fun (x4:(X x2))=> ((or_introl (Y x2)) (Z x0))) as proof of ((X x2)->((Y x2)->((or (Y x0)) (Z x0)))) % Found (and_rect00 (fun (x4:(X x2))=> ((or_introl (Y x2)) (Z x0)))) as proof of ((or (Y x0)) (Z x0)) % Found ((and_rect0 ((or (Y x0)) (Z x0))) (fun (x4:(X x2))=> ((or_introl (Y x2)) (Z x0)))) as proof of ((or (Y x0)) (Z x0)) % Found (((fun (P:Type) (x4:((X x2)->((Y x2)->P)))=> (((((and_rect (X x2)) (Y x2)) P) x4) x3)) ((or (Y x0)) (Z x0))) (fun (x4:(X x2))=> ((or_introl (Y x2)) (Z x0)))) as proof of ((or (Y x0)) (Z x0)) % Found (((fun (P:Type) (x4:((X x2)->((Y x2)->P)))=> (((((and_rect (X x2)) (Y x2)) P) x4) x3)) ((or (Y x0)) (Z x0))) (fun (x4:(X x2))=> ((or_introl (Y x2)) (Z x0)))) as proof of ((or (Y x0)) (Z x0)) % Found ((conj10 (((fun (P:Type) (x4:((X x2)->((Y x2)->P)))=> (((((and_rect (X x2)) (Y x2)) P) x4) x3)) (X x0)) (fun (x4:(X x2)) (x5:(Y x2))=> x4))) (((fun (P:Type) (x4:((X x2)->((Y x2)->P)))=> (((((and_rect (X x2)) (Y x2)) P) x4) x3)) ((or (Y x0)) (Z x0))) (fun (x4:(X x2))=> ((or_introl (Y x2)) (Z x0))))) as proof of ((and (X x0)) ((or (Y x0)) (Z x0))) % Found (((conj1 ((or (Y x0)) (Z x0))) (((fun (P:Type) (x4:((X x2)->((Y x2)->P)))=> (((((and_rect (X x2)) (Y x2)) P) x4) x3)) (X x0)) (fun (x4:(X x2)) (x5:(Y x2))=> x4))) (((fun (P:Type) (x4:((X x2)->((Y x2)->P)))=> (((((and_rect (X x2)) (Y x2)) P) x4) x3)) ((or (Y x0)) (Z x0))) (fun (x4:(X x2))=> ((or_introl (Y x2)) (Z x0))))) as proof of ((and (X x0)) ((or (Y x0)) (Z x0))) % Found ((((conj (X x0)) ((or (Y x0)) (Z x0))) (((fun (P:Type) (x4:((X x2)->((Y x2)->P)))=> (((((and_rect (X x2)) (Y x2)) P) x4) x3)) (X x0)) (fun (x4:(X x2)) (x5:(Y x2))=> x4))) (((fun (P:Type) (x4:((X x2)->((Y x2)->P)))=> (((((and_rect (X x2)) (Y x2)) P) x4) x3)) ((or (Y x0)) (Z x0))) (fun (x4:(X x2))=> ((or_introl (Y x2)) (Z x0))))) as proof of ((and (X x0)) ((or (Y x0)) (Z x0))) % Found (fun (x3:((and (X x2)) (Y x2)))=> ((((conj (X x0)) ((or (Y x0)) (Z x0))) (((fun (P:Type) (x4:((X x2)->((Y x2)->P)))=> (((((and_rect (X x2)) (Y x2)) P) x4) x3)) (X x0)) (fun (x4:(X x2)) (x5:(Y x2))=> x4))) (((fun (P:Type) (x4:((X x2)->((Y x2)->P)))=> (((((and_rect (X x2)) (Y x2)) P) x4) x3)) ((or (Y x0)) (Z x0))) (fun (x4:(X x2))=> ((or_introl (Y x2)) (Z x0)))))) as proof of ((and (X x0)) ((or (Y x0)) (Z x0))) % Found x4:(X x2) % Instantiate: x0:=x2:a % Found (fun (x5:(Z x2))=> x4) as proof of (X x0) % Found (fun (x4:(X x2)) (x5:(Z x2))=> x4) as proof of ((Z x2)->(X x0)) % Found (fun (x4:(X x2)) (x5:(Z x2))=> x4) as proof of ((X x2)->((Z x2)->(X x0))) % Found (and_rect00 (fun (x4:(X x2)) (x5:(Z x2))=> x4)) as proof of (X x0) % Found ((and_rect0 (X x0)) (fun (x4:(X x2)) (x5:(Z x2))=> x4)) as proof of (X x0) % Found (((fun (P:Type) (x4:((X x2)->((Z x2)->P)))=> (((((and_rect (X x2)) (Z x2)) P) x4) x3)) (X x0)) (fun (x4:(X x2)) (x5:(Z x2))=> x4)) as proof of (X x0) % Found (((fun (P:Type) (x4:((X x2)->((Z x2)->P)))=> (((((and_rect (X x2)) (Z x2)) P) x4) x3)) (X x0)) (fun (x4:(X x2)) (x5:(Z x2))=> x4)) as proof of (X x0) % Found or_intror00:=(or_intror0 (Z x2)):((Z x2)->((or (Y x0)) (Z x2))) % Found (or_intror0 (Z x2)) as proof of ((Z x2)->((or (Y x0)) (Z x0))) % Found ((or_intror (Y x0)) (Z x2)) as proof of ((Z x2)->((or (Y x0)) (Z x0))) % Found (fun (x4:(X x2))=> ((or_intror (Y x0)) (Z x2))) as proof of ((Z x2)->((or (Y x0)) (Z x0))) % Found (fun (x4:(X x2))=> ((or_intror (Y x0)) (Z x2))) as proof of ((X x2)->((Z x2)->((or (Y x0)) (Z x0)))) % Found (and_rect00 (fun (x4:(X x2))=> ((or_intror (Y x0)) (Z x2)))) as proof of ((or (Y x0)) (Z x0)) % Found ((and_rect0 ((or (Y x0)) (Z x0))) (fun (x4:(X x2))=> ((or_intror (Y x0)) (Z x2)))) as proof of ((or (Y x0)) (Z x0)) % Found (((fun (P:Type) (x4:((X x2)->((Z x2)->P)))=> (((((and_rect (X x2)) (Z x2)) P) x4) x3)) ((or (Y x0)) (Z x0))) (fun (x4:(X x2))=> ((or_intror (Y x0)) (Z x2)))) as proof of ((or (Y x0)) (Z x0)) % Found (((fun (P:Type) (x4:((X x2)->((Z x2)->P)))=> (((((and_rect (X x2)) (Z x2)) P) x4) x3)) ((or (Y x0)) (Z x0))) (fun (x4:(X x2))=> ((or_intror (Y x0)) (Z x2)))) as proof of ((or (Y x0)) (Z x0)) % Found ((conj10 (((fun (P:Type) (x4:((X x2)->((Z x2)->P)))=> (((((and_rect (X x2)) (Z x2)) P) x4) x3)) (X x0)) (fun (x4:(X x2)) (x5:(Z x2))=> x4))) (((fun (P:Type) (x4:((X x2)->((Z x2)->P)))=> (((((and_rect (X x2)) (Z x2)) P) x4) x3)) ((or (Y x0)) (Z x0))) (fun (x4:(X x2))=> ((or_intror (Y x0)) (Z x2))))) as proof of ((and (X x0)) ((or (Y x0)) (Z x0))) % Found (((conj1 ((or (Y x0)) (Z x0))) (((fun (P:Type) (x4:((X x2)->((Z x2)->P)))=> (((((and_rect (X x2)) (Z x2)) P) x4) x3)) (X x0)) (fun (x4:(X x2)) (x5:(Z x2))=> x4))) (((fun (P:Type) (x4:((X x2)->((Z x2)->P)))=> (((((and_rect (X x2)) (Z x2)) P) x4) x3)) ((or (Y x0)) (Z x0))) (fun (x4:(X x2))=> ((or_intror (Y x0)) (Z x2))))) as proof of ((and (X x0)) ((or (Y x0)) (Z x0))) % Found ((((conj (X x0)) ((or (Y x0)) (Z x0))) (((fun (P:Type) (x4:((X x2)->((Z x2)->P)))=> (((((and_rect (X x2)) (Z x2)) P) x4) x3)) (X x0)) (fun (x4:(X x2)) (x5:(Z x2))=> x4))) (((fun (P:Type) (x4:((X x2)->((Z x2)->P)))=> (((((and_rect (X x2)) (Z x2)) P) x4) x3)) ((or (Y x0)) (Z x0))) (fun (x4:(X x2))=> ((or_intror (Y x0)) (Z x2))))) as proof of ((and (X x0)) ((or (Y x0)) (Z x0))) % Found (fun (x3:((and (X x2)) (Z x2)))=> ((((conj (X x0)) ((or (Y x0)) (Z x0))) (((fun (P:Type) (x4:((X x2)->((Z x2)->P)))=> (((((and_rect (X x2)) (Z x2)) P) x4) x3)) (X x0)) (fun (x4:(X x2)) (x5:(Z x2))=> x4))) (((fun (P:Type) (x4:((X x2)->((Z x2)->P)))=> (((((and_rect (X x2)) (Z x2)) P) x4) x3)) ((or (Y x0)) (Z x0))) (fun (x4:(X x2))=> ((or_intror (Y x0)) (Z x2)))))) as proof of ((and (X x0)) ((or (Y x0)) (Z x0))) % Found x4:(Z x0) % Instantiate: x5:=x0:a % Found x4 as proof of (Z x5) % Found x2:(X x0) % Instantiate: x5:=x0:a % Found x2 as proof of (X x5) % Found ((conj10 x2) x4) as proof of ((and (X x5)) (Z x5)) % Found (((conj1 (Z x5)) x2) x4) as proof of ((and (X x5)) (Z x5)) % Found ((((conj (X x5)) (Z x5)) x2) x4) as proof of ((and (X x5)) (Z x5)) % Found ((((conj (X x5)) (Z x5)) x2) x4) as proof of ((and (X x5)) (Z x5)) % Found (ex_intro000 ((((conj (X x5)) (Z x5)) x2) x4)) as proof of ((ex a) (fun (Xx:a)=> ((and (X Xx)) (Z Xx)))) % Found ((ex_intro00 x0) ((((conj (X x0)) (Z x0)) x2) x4)) as proof of ((ex a) (fun (Xx:a)=> ((and (X Xx)) (Z Xx)))) % Found (((ex_intro0 (fun (Xx:a)=> ((and (X Xx)) (Z Xx)))) x0) ((((conj (X x0)) (Z x0)) x2) x4)) as proof of ((ex a) (fun (Xx:a)=> ((and (X Xx)) (Z Xx)))) % Found ((((ex_intro a) (fun (Xx:a)=> ((and (X Xx)) (Z Xx)))) x0) ((((conj (X x0)) (Z x0)) x2) x4)) as proof of ((ex a) (fun (Xx:a)=> ((and (X Xx)) (Z Xx)))) % Found ((((ex_intro a) (fun (Xx:a)=> ((and (X Xx)) (Z Xx)))) x0) ((((conj (X x0)) (Z x0)) x2) x4)) as proof of ((ex a) (fun (Xx:a)=> ((and (X Xx)) (Z Xx)))) % Found (or_intror00 ((((ex_intro a) (fun (Xx:a)=> ((and (X Xx)) (Z Xx)))) x0) ((((conj (X x0)) (Z x0)) x2) x4))) as proof of ((or ((ex a) (fun (Xx:a)=> ((and (X Xx)) (Y Xx))))) ((ex a) (fun (Xx:a)=> ((and (X Xx)) (Z Xx))))) % Found ((or_intror0 ((ex a) (fun (Xx:a)=> ((and (X Xx)) (Z Xx))))) ((((ex_intro a) (fun (Xx:a)=> ((and (X Xx)) (Z Xx)))) x0) ((((conj (X x0)) (Z x0)) x2) x4))) as proof of ((or ((ex a) (fun (Xx:a)=> ((and (X Xx)) (Y Xx))))) ((ex a) (fun (Xx:a)=> ((and (X Xx)) (Z Xx))))) % Found (((or_intror ((ex a) (fun (Xx:a)=> ((and (X Xx)) (Y Xx))))) ((ex a) (fun (Xx:a)=> ((and (X Xx)) (Z Xx))))) ((((ex_intro a) (fun (Xx:a)=> ((and (X Xx)) (Z Xx)))) x0) ((((conj (X x0)) (Z x0)) x2) x4))) as proof of ((or ((ex a) (fun (Xx:a)=> ((and (X Xx)) (Y Xx))))) ((ex a) (fun (Xx:a)=> ((and (X Xx)) (Z Xx))))) % Found (fun (x4:(Z x0))=> (((or_intror ((ex a) (fun (Xx:a)=> ((and (X Xx)) (Y Xx))))) ((ex a) (fun (Xx:a)=> ((and (X Xx)) (Z Xx))))) ((((ex_intro a) (fun (Xx:a)=> ((and (X Xx)) (Z Xx)))) x0) ((((conj (X x0)) (Z x0)) x2) x4)))) as proof of ((or ((ex a) (fun (Xx:a)=> ((and (X Xx)) (Y Xx))))) ((ex a) (fun (Xx:a)=> ((and (X Xx)) (Z Xx))))) % Found (fun (x4:(Z x0))=> (((or_intror ((ex a) (fun (Xx:a)=> ((and (X Xx)) (Y Xx))))) ((ex a) (fun (Xx:a)=> ((and (X Xx)) (Z Xx))))) ((((ex_intro a) (fun (Xx:a)=> ((and (X Xx)) (Z Xx)))) x0) ((((conj (X x0)) (Z x0)) x2) x4)))) as proof of ((Z x0)->((or ((ex a) (fun (Xx:a)=> ((and (X Xx)) (Y Xx))))) ((ex a) (fun (Xx:a)=> ((and (X Xx)) (Z Xx)))))) % Found x2:(X x0) % Instantiate: x5:=x0:a % Found x2 as proof of (X x5) % Found x4:(Y x0) % Instantiate: x5:=x0:a % Found x4 as proof of (Y x5) % Found x2:(X x0) % Instantiate: x5:=x0:a % Found x2 as proof of (X x5) % Found ((conj10 x2) x4) as proof of ((and (X x5)) (Y x5)) % Found (((conj1 (Y x5)) x2) x4) as proof of ((and (X x5)) (Y x5)) % Found ((((conj (X x5)) (Y x5)) x2) x4) as proof of ((and (X x5)) (Y x5)) % Found ((((conj (X x5)) (Y x5)) x2) x4) as proof of ((and (X x5)) (Y x5)) % Found (ex_intro000 ((((conj (X x5)) (Y x5)) x2) x4)) as proof of ((ex a) (fun (Xx:a)=> ((and (X Xx)) (Y Xx)))) % Found ((ex_intro00 x0) ((((conj (X x0)) (Y x0)) x2) x4)) as proof of ((ex a) (fun (Xx:a)=> ((and (X Xx)) (Y Xx)))) % Found (((ex_intro0 (fun (Xx:a)=> ((and (X Xx)) (Y Xx)))) x0) ((((conj (X x0)) (Y x0)) x2) x4)) as proof of ((ex a) (fun (Xx:a)=> ((and (X Xx)) (Y Xx)))) % Found ((((ex_intro a) (fun (Xx:a)=> ((and (X Xx)) (Y Xx)))) x0) ((((conj (X x0)) (Y x0)) x2) x4)) as proof of ((ex a) (fun (Xx:a)=> ((and (X Xx)) (Y Xx)))) % Found ((((ex_intro a) (fun (Xx:a)=> ((and (X Xx)) (Y Xx)))) x0) ((((conj (X x0)) (Y x0)) x2) x4)) as proof of ((ex a) (fun (Xx:a)=> ((and (X Xx)) (Y Xx)))) % Found (or_introl00 ((((ex_intro a) (fun (Xx:a)=> ((and (X Xx)) (Y Xx)))) x0) ((((conj (X x0)) (Y x0)) x2) x4))) as proof of ((or ((ex a) (fun (Xx:a)=> ((and (X Xx)) (Y Xx))))) ((ex a) (fun (Xx:a)=> ((and (X Xx)) (Z Xx))))) % Found ((or_introl0 ((ex a) (fun (Xx:a)=> ((and (X Xx)) (Z Xx))))) ((((ex_intro a) (fun (Xx:a)=> ((and (X Xx)) (Y Xx)))) x0) ((((conj (X x0)) (Y x0)) x2) x4))) as proof of ((or ((ex a) (fun (Xx:a)=> ((and (X Xx)) (Y Xx))))) ((ex a) (fun (Xx:a)=> ((and (X Xx)) (Z Xx))))) % Found (((or_introl ((ex a) (fun (Xx:a)=> ((and (X Xx)) (Y Xx))))) ((ex a) (fun (Xx:a)=> ((and (X Xx)) (Z Xx))))) ((((ex_intro a) (fun (Xx:a)=> ((and (X Xx)) (Y Xx)))) x0) ((((conj (X x0)) (Y x0)) x2) x4))) as proof of ((or ((ex a) (fun (Xx:a)=> ((and (X Xx)) (Y Xx))))) ((ex a) (fun (Xx:a)=> ((and (X Xx)) (Z Xx))))) % Found (fun (x4:(Y x0))=> (((or_introl ((ex a) (fun (Xx:a)=> ((and (X Xx)) (Y Xx))))) ((ex a) (fun (Xx:a)=> ((and (X Xx)) (Z Xx))))) ((((ex_intro a) (fun (Xx:a)=> ((and (X Xx)) (Y Xx)))) x0) ((((conj (X x0)) (Y x0)) x2) x4)))) as proof of ((or ((ex a) (fun (Xx:a)=> ((and (X Xx)) (Y Xx))))) ((ex a) (fun (Xx:a)=> ((and (X Xx)) (Z Xx))))) % Found (fun (x4:(Y x0))=> (((or_introl ((ex a) (fun (Xx:a)=> ((and (X Xx)) (Y Xx))))) ((ex a) (fun (Xx:a)=> ((and (X Xx)) (Z Xx))))) ((((ex_intro a) (fun (Xx:a)=> ((and (X Xx)) (Y Xx)))) x0) ((((conj (X x0)) (Y x0)) x2) x4)))) as proof of ((Y x0)->((or ((ex a) (fun (Xx:a)=> ((and (X Xx)) (Y Xx))))) ((ex a) (fun (Xx:a)=> ((and (X Xx)) (Z Xx)))))) % Found ((or_ind00 (fun (x4:(Y x0))=> (((or_introl ((ex a) (fun (Xx:a)=> ((and (X Xx)) (Y Xx))))) ((ex a) (fun (Xx:a)=> ((and (X Xx)) (Z Xx))))) ((((ex_intro a) (fun (Xx:a)=> ((and (X Xx)) (Y Xx)))) x0) ((((conj (X x0)) (Y x0)) x2) x4))))) (fun (x4:(Z x0))=> (((or_intror ((ex a) (fun (Xx:a)=> ((and (X Xx)) (Y Xx))))) ((ex a) (fun (Xx:a)=> ((and (X Xx)) (Z Xx))))) ((((ex_intro a) (fun (Xx:a)=> ((and (X Xx)) (Z Xx)))) x0) ((((conj (X x0)) (Z x0)) x2) x4))))) as proof of ((or ((ex a) (fun (Xx:a)=> ((and (X Xx)) (Y Xx))))) ((ex a) (fun (Xx:a)=> ((and (X Xx)) (Z Xx))))) % Found (((or_ind0 ((or ((ex a) (fun (Xx:a)=> ((and (X Xx)) (Y Xx))))) ((ex a) (fun (Xx:a)=> ((and (X Xx)) (Z Xx)))))) (fun (x4:(Y x0))=> (((or_introl ((ex a) (fun (Xx:a)=> ((and (X Xx)) (Y Xx))))) ((ex a) (fun (Xx:a)=> ((and (X Xx)) (Z Xx))))) ((((ex_intro a) (fun (Xx:a)=> ((and (X Xx)) (Y Xx)))) x0) ((((conj (X x0)) (Y x0)) x2) x4))))) (fun (x4:(Z x0))=> (((or_intror ((ex a) (fun (Xx:a)=> ((and (X Xx)) (Y Xx))))) ((ex a) (fun (Xx:a)=> ((and (X Xx)) (Z Xx))))) ((((ex_intro a) (fun (Xx:a)=> ((and (X Xx)) (Z Xx)))) x0) ((((conj (X x0)) (Z x0)) x2) x4))))) as proof of ((or ((ex a) (fun (Xx:a)=> ((and (X Xx)) (Y Xx))))) ((ex a) (fun (Xx:a)=> ((and (X Xx)) (Z Xx))))) % Found ((((fun (P:Prop) (x4:((Y x0)->P)) (x5:((Z x0)->P))=> ((((((or_ind (Y x0)) (Z x0)) P) x4) x5) x3)) ((or ((ex a) (fun (Xx:a)=> ((and (X Xx)) (Y Xx))))) ((ex a) (fun (Xx:a)=> ((and (X Xx)) (Z Xx)))))) (fun (x4:(Y x0))=> (((or_introl ((ex a) (fun (Xx:a)=> ((and (X Xx)) (Y Xx))))) ((ex a) (fun (Xx:a)=> ((and (X Xx)) (Z Xx))))) ((((ex_intro a) (fun (Xx:a)=> ((and (X Xx)) (Y Xx)))) x0) ((((conj (X x0)) (Y x0)) x2) x4))))) (fun (x4:(Z x0))=> (((or_intror ((ex a) (fun (Xx:a)=> ((and (X Xx)) (Y Xx))))) ((ex a) (fun (Xx:a)=> ((and (X Xx)) (Z Xx))))) ((((ex_intro a) (fun (Xx:a)=> ((and (X Xx)) (Z Xx)))) x0) ((((conj (X x0)) (Z x0)) x2) x4))))) as proof of ((or ((ex a) (fun (Xx:a)=> ((and (X Xx)) (Y Xx))))) ((ex a) (fun (Xx:a)=> ((and (X Xx)) (Z Xx))))) % Found (fun (x3:((or (Y x0)) (Z x0)))=> ((((fun (P:Prop) (x4:((Y x0)->P)) (x5:((Z x0)->P))=> ((((((or_ind (Y x0)) (Z x0)) P) x4) x5) x3)) ((or ((ex a) (fun (Xx:a)=> ((and (X Xx)) (Y Xx))))) ((ex a) (fun (Xx:a)=> ((and (X Xx)) (Z Xx)))))) (fun (x4:(Y x0))=> (((or_introl ((ex a) (fun (Xx:a)=> ((and (X Xx)) (Y Xx))))) ((ex a) (fun (Xx:a)=> ((and (X Xx)) (Z Xx))))) ((((ex_intro a) (fun (Xx:a)=> ((and (X Xx)) (Y Xx)))) x0) ((((conj (X x0)) (Y x0)) x2) x4))))) (fun (x4:(Z x0))=> (((or_intror ((ex a) (fun (Xx:a)=> ((and (X Xx)) (Y Xx))))) ((ex a) (fun (Xx:a)=> ((and (X Xx)) (Z Xx))))) ((((ex_intro a) (fun (Xx:a)=> ((and (X Xx)) (Z Xx)))) x0) ((((conj (X x0)) (Z x0)) x2) x4)))))) as proof of ((or ((ex a) (fun (Xx:a)=> ((and (X Xx)) (Y Xx))))) ((ex a) (fun (Xx:a)=> ((and (X Xx)) (Z Xx))))) % Found (fun (x2:(X x0)) (x3:((or (Y x0)) (Z x0)))=> ((((fun (P:Prop) (x4:((Y x0)->P)) (x5:((Z x0)->P))=> ((((((or_ind (Y x0)) (Z x0)) P) x4) x5) x3)) ((or ((ex a) (fun (Xx:a)=> ((and (X Xx)) (Y Xx))))) ((ex a) (fun (Xx:a)=> ((and (X Xx)) (Z Xx)))))) (fun (x4:(Y x0))=> (((or_introl ((ex a) (fun (Xx:a)=> ((and (X Xx)) (Y Xx))))) ((ex a) (fun (Xx:a)=> ((and (X Xx)) (Z Xx))))) ((((ex_intro a) (fun (Xx:a)=> ((and (X Xx)) (Y Xx)))) x0) ((((conj (X x0)) (Y x0)) x2) x4))))) (fun (x4:(Z x0))=> (((or_intror ((ex a) (fun (Xx:a)=> ((and (X Xx)) (Y Xx))))) ((ex a) (fun (Xx:a)=> ((and (X Xx)) (Z Xx))))) ((((ex_intro a) (fun (Xx:a)=> ((and (X Xx)) (Z Xx)))) x0) ((((conj (X x0)) (Z x0)) x2) x4)))))) as proof of (((or (Y x0)) (Z x0))->((or ((ex a) (fun (Xx:a)=> ((and (X Xx)) (Y Xx))))) ((ex a) (fun (Xx:a)=> ((and (X Xx)) (Z Xx)))))) % Found (fun (x2:(X x0)) (x3:((or (Y x0)) (Z x0)))=> ((((fun (P:Prop) (x4:((Y x0)->P)) (x5:((Z x0)->P))=> ((((((or_ind (Y x0)) (Z x0)) P) x4) x5) x3)) ((or ((ex a) (fun (Xx:a)=> ((and (X Xx)) (Y Xx))))) ((ex a) (fun (Xx:a)=> ((and (X Xx)) (Z Xx)))))) (fun (x4:(Y x0))=> (((or_introl ((ex a) (fun (Xx:a)=> ((and (X Xx)) (Y Xx))))) ((ex a) (fun (Xx:a)=> ((and (X Xx)) (Z Xx))))) ((((ex_intro a) (fun (Xx:a)=> ((and (X Xx)) (Y Xx)))) x0) ((((conj (X x0)) (Y x0)) x2) x4))))) (fun (x4:(Z x0))=> (((or_intror ((ex a) (fun (Xx:a)=> ((and (X Xx)) (Y Xx))))) ((ex a) (fun (Xx:a)=> ((and (X Xx)) (Z Xx))))) ((((ex_intro a) (fun (Xx:a)=> ((and (X Xx)) (Z Xx)))) x0) ((((conj (X x0)) (Z x0)) x2) x4)))))) as proof of ((X x0)->(((or (Y x0)) (Z x0))->((or ((ex a) (fun (Xx:a)=> ((and (X Xx)) (Y Xx))))) ((ex a) (fun (Xx:a)=> ((and (X Xx)) (Z Xx))))))) % Found (and_rect00 (fun (x2:(X x0)) (x3:((or (Y x0)) (Z x0)))=> ((((fun (P:Prop) (x4:((Y x0)->P)) (x5:((Z x0)->P))=> ((((((or_ind (Y x0)) (Z x0)) P) x4) x5) x3)) ((or ((ex a) (fun (Xx:a)=> ((and (X Xx)) (Y Xx))))) ((ex a) (fun (Xx:a)=> ((and (X Xx)) (Z Xx)))))) (fun (x4:(Y x0))=> (((or_introl ((ex a) (fun (Xx:a)=> ((and (X Xx)) (Y Xx))))) ((ex a) (fun (Xx:a)=> ((and (X Xx)) (Z Xx))))) ((((ex_intro a) (fun (Xx:a)=> ((and (X Xx)) (Y Xx)))) x0) ((((conj (X x0)) (Y x0)) x2) x4))))) (fun (x4:(Z x0))=> (((or_intror ((ex a) (fun (Xx:a)=> ((and (X Xx)) (Y Xx))))) ((ex a) (fun (Xx:a)=> ((and (X Xx)) (Z Xx))))) ((((ex_intro a) (fun (Xx:a)=> ((and (X Xx)) (Z Xx)))) x0) ((((conj (X x0)) (Z x0)) x2) x4))))))) as proof of ((or ((ex a) (fun (Xx:a)=> ((and (X Xx)) (Y Xx))))) ((ex a) (fun (Xx:a)=> ((and (X Xx)) (Z Xx))))) % Found ((and_rect0 ((or ((ex a) (fun (Xx:a)=> ((and (X Xx)) (Y Xx))))) ((ex a) (fun (Xx:a)=> ((and (X Xx)) (Z Xx)))))) (fun (x2:(X x0)) (x3:((or (Y x0)) (Z x0)))=> ((((fun (P:Prop) (x4:((Y x0)->P)) (x5:((Z x0)->P))=> ((((((or_ind (Y x0)) (Z x0)) P) x4) x5) x3)) ((or ((ex a) (fun (Xx:a)=> ((and (X Xx)) (Y Xx))))) ((ex a) (fun (Xx:a)=> ((and (X Xx)) (Z Xx)))))) (fun (x4:(Y x0))=> (((or_introl ((ex a) (fun (Xx:a)=> ((and (X Xx)) (Y Xx))))) ((ex a) (fun (Xx:a)=> ((and (X Xx)) (Z Xx))))) ((((ex_intro a) (fun (Xx:a)=> ((and (X Xx)) (Y Xx)))) x0) ((((conj (X x0)) (Y x0)) x2) x4))))) (fun (x4:(Z x0))=> (((or_intror ((ex a) (fun (Xx:a)=> ((and (X Xx)) (Y Xx))))) ((ex a) (fun (Xx:a)=> ((and (X Xx)) (Z Xx))))) ((((ex_intro a) (fun (Xx:a)=> ((and (X Xx)) (Z Xx)))) x0) ((((conj (X x0)) (Z x0)) x2) x4))))))) as proof of ((or ((ex a) (fun (Xx:a)=> ((and (X Xx)) (Y Xx))))) ((ex a) (fun (Xx:a)=> ((and (X Xx)) (Z Xx))))) % Found (((fun (P:Type) (x2:((X x0)->(((or (Y x0)) (Z x0))->P)))=> (((((and_rect (X x0)) ((or (Y x0)) (Z x0))) P) x2) x1)) ((or ((ex a) (fun (Xx:a)=> ((and (X Xx)) (Y Xx))))) ((ex a) (fun (Xx:a)=> ((and (X Xx)) (Z Xx)))))) (fun (x2:(X x0)) (x3:((or (Y x0)) (Z x0)))=> ((((fun (P:Prop) (x4:((Y x0)->P)) (x5:((Z x0)->P))=> ((((((or_ind (Y x0)) (Z x0)) P) x4) x5) x3)) ((or ((ex a) (fun (Xx:a)=> ((and (X Xx)) (Y Xx))))) ((ex a) (fun (Xx:a)=> ((and (X Xx)) (Z Xx)))))) (fun (x4:(Y x0))=> (((or_introl ((ex a) (fun (Xx:a)=> ((and (X Xx)) (Y Xx))))) ((ex a) (fun (Xx:a)=> ((and (X Xx)) (Z Xx))))) ((((ex_intro a) (fun (Xx:a)=> ((and (X Xx)) (Y Xx)))) x0) ((((conj (X x0)) (Y x0)) x2) x4))))) (fun (x4:(Z x0))=> (((or_intror ((ex a) (fun (Xx:a)=> ((and (X Xx)) (Y Xx))))) ((ex a) (fun (Xx:a)=> ((and (X Xx)) (Z Xx))))) ((((ex_intro a) (fun (Xx:a)=> ((and (X Xx)) (Z Xx)))) x0) ((((conj (X x0)) (Z x0)) x2) x4))))))) as proof of ((or ((ex a) (fun (Xx:a)=> ((and (X Xx)) (Y Xx))))) ((ex a) (fun (Xx:a)=> ((and (X Xx)) (Z Xx))))) % Found (fun (x1:((and (X x0)) ((or (Y x0)) (Z x0))))=> (((fun (P:Type) (x2:((X x0)->(((or (Y x0)) (Z x0))->P)))=> (((((and_rect (X x0)) ((or (Y x0)) (Z x0))) P) x2) x1)) ((or ((ex a) (fun (Xx:a)=> ((and (X Xx)) (Y Xx))))) ((ex a) (fun (Xx:a)=> ((and (X Xx)) (Z Xx)))))) (fun (x2:(X x0)) (x3:((or (Y x0)) (Z x0)))=> ((((fun (P:Prop) (x4:((Y x0)->P)) (x5:((Z x0)->P))=> ((((((or_ind (Y x0)) (Z x0)) P) x4) x5) x3)) ((or ((ex a) (fun (Xx:a)=> ((and (X Xx)) (Y Xx))))) ((ex a) (fun (Xx:a)=> ((and (X Xx)) (Z Xx)))))) (fun (x4:(Y x0))=> (((or_introl ((ex a) (fun (Xx:a)=> ((and (X Xx)) (Y Xx))))) ((ex a) (fun (Xx:a)=> ((and (X Xx)) (Z Xx))))) ((((ex_intro a) (fun (Xx:a)=> ((and (X Xx)) (Y Xx)))) x0) ((((conj (X x0)) (Y x0)) x2) x4))))) (fun (x4:(Z x0))=> (((or_intror ((ex a) (fun (Xx:a)=> ((and (X Xx)) (Y Xx))))) ((ex a) (fun (Xx:a)=> ((and (X Xx)) (Z Xx))))) ((((ex_intro a) (fun (Xx:a)=> ((and (X Xx)) (Z Xx)))) x0) ((((conj (X x0)) (Z x0)) x2) x4)))))))) as proof of ((or ((ex a) (fun (Xx:a)=> ((and (X Xx)) (Y Xx))))) ((ex a) (fun (Xx:a)=> ((and (X Xx)) (Z Xx))))) % Found (fun (x0:a) (x1:((and (X x0)) ((or (Y x0)) (Z x0))))=> (((fun (P:Type) (x2:((X x0)->(((or (Y x0)) (Z x0))->P)))=> (((((and_rect (X x0)) ((or (Y x0)) (Z x0))) P) x2) x1)) ((or ((ex a) (fun (Xx:a)=> ((and (X Xx)) (Y Xx))))) ((ex a) (fun (Xx:a)=> ((and (X Xx)) (Z Xx)))))) (fun (x2:(X x0)) (x3:((or (Y x0)) (Z x0)))=> ((((fun (P:Prop) (x4:((Y x0)->P)) (x5:((Z x0)->P))=> ((((((or_ind (Y x0)) (Z x0)) P) x4) x5) x3)) ((or ((ex a) (fun (Xx:a)=> ((and (X Xx)) (Y Xx))))) ((ex a) (fun (Xx:a)=> ((and (X Xx)) (Z Xx)))))) (fun (x4:(Y x0))=> (((or_introl ((ex a) (fun (Xx:a)=> ((and (X Xx)) (Y Xx))))) ((ex a) (fun (Xx:a)=> ((and (X Xx)) (Z Xx))))) ((((ex_intro a) (fun (Xx:a)=> ((and (X Xx)) (Y Xx)))) x0) ((((conj (X x0)) (Y x0)) x2) x4))))) (fun (x4:(Z x0))=> (((or_intror ((ex a) (fun (Xx:a)=> ((and (X Xx)) (Y Xx))))) ((ex a) (fun (Xx:a)=> ((and (X Xx)) (Z Xx))))) ((((ex_intro a) (fun (Xx:a)=> ((and (X Xx)) (Z Xx)))) x0) ((((conj (X x0)) (Z x0)) x2) x4)))))))) as proof of (((and (X x0)) ((or (Y x0)) (Z x0)))->((or ((ex a) (fun (Xx:a)=> ((and (X Xx)) (Y Xx))))) ((ex a) (fun (Xx:a)=> ((and (X Xx)) (Z Xx)))))) % Found (fun (x0:a) (x1:((and (X x0)) ((or (Y x0)) (Z x0))))=> (((fun (P:Type) (x2:((X x0)->(((or (Y x0)) (Z x0))->P)))=> (((((and_rect (X x0)) ((or (Y x0)) (Z x0))) P) x2) x1)) ((or ((ex a) (fun (Xx:a)=> ((and (X Xx)) (Y Xx))))) ((ex a) (fun (Xx:a)=> ((and (X Xx)) (Z Xx)))))) (fun (x2:(X x0)) (x3:((or (Y x0)) (Z x0)))=> ((((fun (P:Prop) (x4:((Y x0)->P)) (x5:((Z x0)->P))=> ((((((or_ind (Y x0)) (Z x0)) P) x4) x5) x3)) ((or ((ex a) (fun (Xx:a)=> ((and (X Xx)) (Y Xx))))) ((ex a) (fun (Xx:a)=> ((and (X Xx)) (Z Xx)))))) (fun (x4:(Y x0))=> (((or_introl ((ex a) (fun (Xx:a)=> ((and (X Xx)) (Y Xx))))) ((ex a) (fun (Xx:a)=> ((and (X Xx)) (Z Xx))))) ((((ex_intro a) (fun (Xx:a)=> ((and (X Xx)) (Y Xx)))) x0) ((((conj (X x0)) (Y x0)) x2) x4))))) (fun (x4:(Z x0))=> (((or_intror ((ex a) (fun (Xx:a)=> ((and (X Xx)) (Y Xx))))) ((ex a) (fun (Xx:a)=> ((and (X Xx)) (Z Xx))))) ((((ex_intro a) (fun (Xx:a)=> ((and (X Xx)) (Z Xx)))) x0) ((((conj (X x0)) (Z x0)) x2) x4)))))))) as proof of (forall (x:a), (((and (X x)) ((or (Y x)) (Z x)))->((or ((ex a) (fun (Xx:a)=> ((and (X Xx)) (Y Xx))))) ((ex a) (fun (Xx:a)=> ((and (X Xx)) (Z Xx))))))) % Found (ex_ind00 (fun (x0:a) (x1:((and (X x0)) ((or (Y x0)) (Z x0))))=> (((fun (P:Type) (x2:((X x0)->(((or (Y x0)) (Z x0))->P)))=> (((((and_rect (X x0)) ((or (Y x0)) (Z x0))) P) x2) x1)) ((or ((ex a) (fun (Xx:a)=> ((and (X Xx)) (Y Xx))))) ((ex a) (fun (Xx:a)=> ((and (X Xx)) (Z Xx)))))) (fun (x2:(X x0)) (x3:((or (Y x0)) (Z x0)))=> ((((fun (P:Prop) (x4:((Y x0)->P)) (x5:((Z x0)->P))=> ((((((or_ind (Y x0)) (Z x0)) P) x4) x5) x3)) ((or ((ex a) (fun (Xx:a)=> ((and (X Xx)) (Y Xx))))) ((ex a) (fun (Xx:a)=> ((and (X Xx)) (Z Xx)))))) (fun (x4:(Y x0))=> (((or_introl ((ex a) (fun (Xx:a)=> ((and (X Xx)) (Y Xx))))) ((ex a) (fun (Xx:a)=> ((and (X Xx)) (Z Xx))))) ((((ex_intro a) (fun (Xx:a)=> ((and (X Xx)) (Y Xx)))) x0) ((((conj (X x0)) (Y x0)) x2) x4))))) (fun (x4:(Z x0))=> (((or_intror ((ex a) (fun (Xx:a)=> ((and (X Xx)) (Y Xx))))) ((ex a) (fun (Xx:a)=> ((and (X Xx)) (Z Xx))))) ((((ex_intro a) (fun (Xx:a)=> ((and (X Xx)) (Z Xx)))) x0) ((((conj (X x0)) (Z x0)) x2) x4))))))))) as proof of ((or ((ex a) (fun (Xx:a)=> ((and (X Xx)) (Y Xx))))) ((ex a) (fun (Xx:a)=> ((and (X Xx)) (Z Xx))))) % Found ((ex_ind0 ((or ((ex a) (fun (Xx:a)=> ((and (X Xx)) (Y Xx))))) ((ex a) (fun (Xx:a)=> ((and (X Xx)) (Z Xx)))))) (fun (x0:a) (x1:((and (X x0)) ((or (Y x0)) (Z x0))))=> (((fun (P:Type) (x2:((X x0)->(((or (Y x0)) (Z x0))->P)))=> (((((and_rect (X x0)) ((or (Y x0)) (Z x0))) P) x2) x1)) ((or ((ex a) (fun (Xx:a)=> ((and (X Xx)) (Y Xx))))) ((ex a) (fun (Xx:a)=> ((and (X Xx)) (Z Xx)))))) (fun (x2:(X x0)) (x3:((or (Y x0)) (Z x0)))=> ((((fun (P:Prop) (x4:((Y x0)->P)) (x5:((Z x0)->P))=> ((((((or_ind (Y x0)) (Z x0)) P) x4) x5) x3)) ((or ((ex a) (fun (Xx:a)=> ((and (X Xx)) (Y Xx))))) ((ex a) (fun (Xx:a)=> ((and (X Xx)) (Z Xx)))))) (fun (x4:(Y x0))=> (((or_introl ((ex a) (fun (Xx:a)=> ((and (X Xx)) (Y Xx))))) ((ex a) (fun (Xx:a)=> ((and (X Xx)) (Z Xx))))) ((((ex_intro a) (fun (Xx:a)=> ((and (X Xx)) (Y Xx)))) x0) ((((conj (X x0)) (Y x0)) x2) x4))))) (fun (x4:(Z x0))=> (((or_intror ((ex a) (fun (Xx:a)=> ((and (X Xx)) (Y Xx))))) ((ex a) (fun (Xx:a)=> ((and (X Xx)) (Z Xx))))) ((((ex_intro a) (fun (Xx:a)=> ((and (X Xx)) (Z Xx)))) x0) ((((conj (X x0)) (Z x0)) x2) x4))))))))) as proof of ((or ((ex a) (fun (Xx:a)=> ((and (X Xx)) (Y Xx))))) ((ex a) (fun (Xx:a)=> ((and (X Xx)) (Z Xx))))) % Found (((fun (P:Prop) (x0:(forall (x:a), (((and (X x)) ((or (Y x)) (Z x)))->P)))=> (((((ex_ind a) (fun (Xx:a)=> ((and (X Xx)) ((or (Y Xx)) (Z Xx))))) P) x0) x)) ((or ((ex a) (fun (Xx:a)=> ((and (X Xx)) (Y Xx))))) ((ex a) (fun (Xx:a)=> ((and (X Xx)) (Z Xx)))))) (fun (x0:a) (x1:((and (X x0)) ((or (Y x0)) (Z x0))))=> (((fun (P:Type) (x2:((X x0)->(((or (Y x0)) (Z x0))->P)))=> (((((and_rect (X x0)) ((or (Y x0)) (Z x0))) P) x2) x1)) ((or ((ex a) (fun (Xx:a)=> ((and (X Xx)) (Y Xx))))) ((ex a) (fun (Xx:a)=> ((and (X Xx)) (Z Xx)))))) (fun (x2:(X x0)) (x3:((or (Y x0)) (Z x0)))=> ((((fun (P:Prop) (x4:((Y x0)->P)) (x5:((Z x0)->P))=> ((((((or_ind (Y x0)) (Z x0)) P) x4) x5) x3)) ((or ((ex a) (fun (Xx:a)=> ((and (X Xx)) (Y Xx))))) ((ex a) (fun (Xx:a)=> ((and (X Xx)) (Z Xx)))))) (fun (x4:(Y x0))=> (((or_introl ((ex a) (fun (Xx:a)=> ((and (X Xx)) (Y Xx))))) ((ex a) (fun (Xx:a)=> ((and (X Xx)) (Z Xx))))) ((((ex_intro a) (fun (Xx:a)=> ((and (X Xx)) (Y Xx)))) x0) ((((conj (X x0)) (Y x0)) x2) x4))))) (fun (x4:(Z x0))=> (((or_intror ((ex a) (fun (Xx:a)=> ((and (X Xx)) (Y Xx))))) ((ex a) (fun (Xx:a)=> ((and (X Xx)) (Z Xx))))) ((((ex_intro a) (fun (Xx:a)=> ((and (X Xx)) (Z Xx)))) x0) ((((conj (X x0)) (Z x0)) x2) x4))))))))) as proof of ((or ((ex a) (fun (Xx:a)=> ((and (X Xx)) (Y Xx))))) ((ex a) (fun (Xx:a)=> ((and (X Xx)) (Z Xx))))) % Found (fun (x:((ex a) (fun (Xx:a)=> ((and (X Xx)) ((or (Y Xx)) (Z Xx))))))=> (((fun (P:Prop) (x0:(forall (x:a), (((and (X x)) ((or (Y x)) (Z x)))->P)))=> (((((ex_ind a) (fun (Xx:a)=> ((and (X Xx)) ((or (Y Xx)) (Z Xx))))) P) x0) x)) ((or ((ex a) (fun (Xx:a)=> ((and (X Xx)) (Y Xx))))) ((ex a) (fun (Xx:a)=> ((and (X Xx)) (Z Xx)))))) (fun (x0:a) (x1:((and (X x0)) ((or (Y x0)) (Z x0))))=> (((fun (P:Type) (x2:((X x0)->(((or (Y x0)) (Z x0))->P)))=> (((((and_rect (X x0)) ((or (Y x0)) (Z x0))) P) x2) x1)) ((or ((ex a) (fun (Xx:a)=> ((and (X Xx)) (Y Xx))))) ((ex a) (fun (Xx:a)=> ((and (X Xx)) (Z Xx)))))) (fun (x2:(X x0)) (x3:((or (Y x0)) (Z x0)))=> ((((fun (P:Prop) (x4:((Y x0)->P)) (x5:((Z x0)->P))=> ((((((or_ind (Y x0)) (Z x0)) P) x4) x5) x3)) ((or ((ex a) (fun (Xx:a)=> ((and (X Xx)) (Y Xx))))) ((ex a) (fun (Xx:a)=> ((and (X Xx)) (Z Xx)))))) (fun (x4:(Y x0))=> (((or_introl ((ex a) (fun (Xx:a)=> ((and (X Xx)) (Y Xx))))) ((ex a) (fun (Xx:a)=> ((and (X Xx)) (Z Xx))))) ((((ex_intro a) (fun (Xx:a)=> ((and (X Xx)) (Y Xx)))) x0) ((((conj (X x0)) (Y x0)) x2) x4))))) (fun (x4:(Z x0))=> (((or_intror ((ex a) (fun (Xx:a)=> ((and (X Xx)) (Y Xx))))) ((ex a) (fun (Xx:a)=> ((and (X Xx)) (Z Xx))))) ((((ex_intro a) (fun (Xx:a)=> ((and (X Xx)) (Z Xx)))) x0) ((((conj (X x0)) (Z x0)) x2) x4)))))))))) as proof of ((or ((ex a) (fun (Xx:a)=> ((and (X Xx)) (Y Xx))))) ((ex a) (fun (Xx:a)=> ((and (X Xx)) (Z Xx))))) % Found (fun (x:((ex a) (fun (Xx:a)=> ((and (X Xx)) ((or (Y Xx)) (Z Xx))))))=> (((fun (P:Prop) (x0:(forall (x:a), (((and (X x)) ((or (Y x)) (Z x)))->P)))=> (((((ex_ind a) (fun (Xx:a)=> ((and (X Xx)) ((or (Y Xx)) (Z Xx))))) P) x0) x)) ((or ((ex a) (fun (Xx:a)=> ((and (X Xx)) (Y Xx))))) ((ex a) (fun (Xx:a)=> ((and (X Xx)) (Z Xx)))))) (fun (x0:a) (x1:((and (X x0)) ((or (Y x0)) (Z x0))))=> (((fun (P:Type) (x2:((X x0)->(((or (Y x0)) (Z x0))->P)))=> (((((and_rect (X x0)) ((or (Y x0)) (Z x0))) P) x2) x1)) ((or ((ex a) (fun (Xx:a)=> ((and (X Xx)) (Y Xx))))) ((ex a) (fun (Xx:a)=> ((and (X Xx)) (Z Xx)))))) (fun (x2:(X x0)) (x3:((or (Y x0)) (Z x0)))=> ((((fun (P:Prop) (x4:((Y x0)->P)) (x5:((Z x0)->P))=> ((((((or_ind (Y x0)) (Z x0)) P) x4) x5) x3)) ((or ((ex a) (fun (Xx:a)=> ((and (X Xx)) (Y Xx))))) ((ex a) (fun (Xx:a)=> ((and (X Xx)) (Z Xx)))))) (fun (x4:(Y x0))=> (((or_introl ((ex a) (fun (Xx:a)=> ((and (X Xx)) (Y Xx))))) ((ex a) (fun (Xx:a)=> ((and (X Xx)) (Z Xx))))) ((((ex_intro a) (fun (Xx:a)=> ((and (X Xx)) (Y Xx)))) x0) ((((conj (X x0)) (Y x0)) x2) x4))))) (fun (x4:(Z x0))=> (((or_intror ((ex a) (fun (Xx:a)=> ((and (X Xx)) (Y Xx))))) ((ex a) (fun (Xx:a)=> ((and (X Xx)) (Z Xx))))) ((((ex_intro a) (fun (Xx:a)=> ((and (X Xx)) (Z Xx)))) x0) ((((conj (X x0)) (Z x0)) x2) x4)))))))))) as proof of (((ex a) (fun (Xx:a)=> ((and (X Xx)) ((or (Y Xx)) (Z Xx)))))->((or ((ex a) (fun (Xx:a)=> ((and (X Xx)) (Y Xx))))) ((ex a) (fun (Xx:a)=> ((and (X Xx)) (Z Xx)))))) % Found or_introl000:=(or_introl00 (Z x0)):((or (Y x0)) (Z x0)) % Found (or_introl00 (Z x0)) as proof of ((or (Y x0)) (Z x0)) % Found ((fun (B:Prop)=> ((or_introl0 B) x5)) (Z x0)) as proof of ((or (Y x0)) (Z x0)) % Found ((fun (B:Prop)=> (((or_introl (Y x0)) B) x5)) (Z x0)) as proof of ((or (Y x0)) (Z x0)) % Found ((fun (B:Prop)=> (((or_introl (Y x0)) B) x5)) (Z x0)) as proof of ((or (Y x0)) (Z x0)) % Found ((conj10 x4) ((fun (B:Prop)=> (((or_introl (Y x0)) B) x5)) (Z x0))) as proof of ((and (X x0)) ((or (Y x0)) (Z x0))) % Found (((conj1 ((or (Y x0)) (Z x0))) x4) ((fun (B:Prop)=> (((or_introl (Y x0)) B) x5)) (Z x0))) as proof of ((and (X x0)) ((or (Y x0)) (Z x0))) % Found ((((conj (X x0)) ((or (Y x0)) (Z x0))) x4) ((fun (B:Prop)=> (((or_introl (Y x0)) B) x5)) (Z x0))) as proof of ((and (X x0)) ((or (Y x0)) (Z x0))) % Found (fun (x5:(Y x2))=> ((((conj (X x0)) ((or (Y x0)) (Z x0))) x4) ((fun (B:Prop)=> (((or_introl (Y x0)) B) x5)) (Z x0)))) as proof of ((and (X x0)) ((or (Y x0)) (Z x0))) % Found (fun (x4:(X x2)) (x5:(Y x2))=> ((((conj (X x0)) ((or (Y x0)) (Z x0))) x4) ((fun (B:Prop)=> (((or_introl (Y x0)) B) x5)) (Z x0)))) as proof of ((Y x2)->((and (X x0)) ((or (Y x0)) (Z x0)))) % Found (fun (x4:(X x2)) (x5:(Y x2))=> ((((conj (X x0)) ((or (Y x0)) (Z x0))) x4) ((fun (B:Prop)=> (((or_introl (Y x0)) B) x5)) (Z x0)))) as proof of ((X x2)->((Y x2)->((and (X x0)) ((or (Y x0)) (Z x0))))) % Found (and_rect00 (fun (x4:(X x2)) (x5:(Y x2))=> ((((conj (X x0)) ((or (Y x0)) (Z x0))) x4) ((fun (B:Prop)=> (((or_introl (Y x0)) B) x5)) (Z x0))))) as proof of ((and (X x0)) ((or (Y x0)) (Z x0))) % Found ((and_rect0 ((and (X x0)) ((or (Y x0)) (Z x0)))) (fun (x4:(X x2)) (x5:(Y x2))=> ((((conj (X x0)) ((or (Y x0)) (Z x0))) x4) ((fun (B:Prop)=> (((or_introl (Y x0)) B) x5)) (Z x0))))) as proof of ((and (X x0)) ((or (Y x0)) (Z x0))) % Found (((fun (P:Type) (x4:((X x2)->((Y x2)->P)))=> (((((and_rect (X x2)) (Y x2)) P) x4) x3)) ((and (X x0)) ((or (Y x0)) (Z x0)))) (fun (x4:(X x2)) (x5:(Y x2))=> ((((conj (X x0)) ((or (Y x0)) (Z x0))) x4) ((fun (B:Prop)=> (((or_introl (Y x0)) B) x5)) (Z x0))))) as proof of ((and (X x0)) ((or (Y x0)) (Z x0))) % Found (fun (x3:((and (X x2)) (Y x2)))=> (((fun (P:Type) (x4:((X x2)->((Y x2)->P)))=> (((((and_rect (X x2)) (Y x2)) P) x4) x3)) ((and (X x0)) ((or (Y x0)) (Z x0)))) (fun (x4:(X x2)) (x5:(Y x2))=> ((((conj (X x0)) ((or (Y x0)) (Z x0))) x4) ((fun (B:Prop)=> (((or_introl (Y x0)) B) x5)) (Z x0)))))) as proof of ((and (X x0)) ((or (Y x0)) (Z x0))) % Found or_intror000:=(or_intror00 x5):((or (Y x0)) (Z x0)) % Found (or_intror00 x5) as proof of ((or (Y x0)) (Z x0)) % Found ((or_intror0 (Z x0)) x5) as proof of ((or (Y x0)) (Z x0)) % Found (((or_intror (Y x0)) (Z x0)) x5) as proof of ((or (Y x0)) (Z x0)) % Found (((or_intror (Y x0)) (Z x0)) x5) as proof of ((or (Y x0)) (Z x0)) % Found ((conj10 x4) (((or_intror (Y x0)) (Z x0)) x5)) as proof of ((and (X x0)) ((or (Y x0)) (Z x0))) % Found (((conj1 ((or (Y x0)) (Z x0))) x4) (((or_intror (Y x0)) (Z x0)) x5)) as proof of ((and (X x0)) ((or (Y x0)) (Z x0))) % Found ((((conj (X x0)) ((or (Y x0)) (Z x0))) x4) (((or_intror (Y x0)) (Z x0)) x5)) as proof of ((and (X x0)) ((or (Y x0)) (Z x0))) % Found (fun (x5:(Z x2))=> ((((conj (X x0)) ((or (Y x0)) (Z x0))) x4) (((or_intror (Y x0)) (Z x0)) x5))) as proof of ((and (X x0)) ((or (Y x0)) (Z x0))) % Found (fun (x4:(X x2)) (x5:(Z x2))=> ((((conj (X x0)) ((or (Y x0)) (Z x0))) x4) (((or_intror (Y x0)) (Z x0)) x5))) as proof of ((Z x2)->((and (X x0)) ((or (Y x0)) (Z x0)))) % Found (fun (x4:(X x2)) (x5:(Z x2))=> ((((conj (X x0)) ((or (Y x0)) (Z x0))) x4) (((or_intror (Y x0)) (Z x0)) x5))) as proof of ((X x2)->((Z x2)->((and (X x0)) ((or (Y x0)) (Z x0))))) % Found (and_rect00 (fun (x4:(X x2)) (x5:(Z x2))=> ((((conj (X x0)) ((or (Y x0)) (Z x0))) x4) (((or_intror (Y x0)) (Z x0)) x5)))) as proof of ((and (X x0)) ((or (Y x0)) (Z x0))) % Found ((and_rect0 ((and (X x0)) ((or (Y x0)) (Z x0)))) (fun (x4:(X x2)) (x5:(Z x2))=> ((((conj (X x0)) ((or (Y x0)) (Z x0))) x4) (((or_intror (Y x0)) (Z x0)) x5)))) as proof of ((and (X x0)) ((or (Y x0)) (Z x0))) % Found (((fun (P:Type) (x4:((X x2)->((Z x2)->P)))=> (((((and_rect (X x2)) (Z x2)) P) x4) x3)) ((and (X x0)) ((or (Y x0)) (Z x0)))) (fun (x4:(X x2)) (x5:(Z x2))=> ((((conj (X x0)) ((or (Y x0)) (Z x0))) x4) (((or_intror (Y x0)) (Z x0)) x5)))) as proof of ((and (X x0)) ((or (Y x0)) (Z x0))) % Found (fun (x3:((and (X x2)) (Z x2)))=> (((fun (P:Type) (x4:((X x2)->((Z x2)->P)))=> (((((and_rect (X x2)) (Z x2)) P) x4) x3)) ((and (X x0)) ((or (Y x0)) (Z x0)))) (fun (x4:(X x2)) (x5:(Z x2))=> ((((conj (X x0)) ((or (Y x0)) (Z x0))) x4) (((or_intror (Y x0)) (Z x0)) x5))))) as proof of ((and (X x0)) ((or (Y x0)) (Z x0))) % Found or_introl000:=(or_introl00 (Z x5)):((or (Y x5)) (Z x5)) % Found (or_introl00 (Z x5)) as proof of ((or (Y x5)) (Z x5)) % Found ((fun (B:Prop)=> ((or_introl0 B) x4)) (Z x5)) as proof of ((or (Y x5)) (Z x5)) % Found ((fun (B:Prop)=> (((or_introl (Y x5)) B) x4)) (Z x5)) as proof of ((or (Y x5)) (Z x5)) % Found ((fun (B:Prop)=> (((or_introl (Y x5)) B) x4)) (Z x5)) as proof of ((or (Y x5)) (Z x5)) % Found ((conj10 x3) ((fun (B:Prop)=> (((or_introl (Y x5)) B) x4)) (Z x5))) as proof of ((and (X x5)) ((or (Y x5)) (Z x5))) % Found (((conj1 ((or (Y x5)) (Z x5))) x3) ((fun (B:Prop)=> (((or_introl (Y x5)) B) x4)) (Z x5))) as proof of ((and (X x5)) ((or (Y x5)) (Z x5))) % Found ((((conj (X x5)) ((or (Y x5)) (Z x5))) x3) ((fun (B:Prop)=> (((or_introl (Y x5)) B) x4)) (Z x5))) as proof of ((and (X x5)) ((or (Y x5)) (Z x5))) % Found ((((conj (X x5)) ((or (Y x5)) (Z x5))) x3) ((fun (B:Prop)=> (((or_introl (Y x5)) B) x4)) (Z x5))) as proof of ((and (X x5)) ((or (Y x5)) (Z x5))) % Found (ex_intro000 ((((conj (X x5)) ((or (Y x5)) (Z x5))) x3) ((fun (B:Prop)=> (((or_introl (Y x5)) B) x4)) (Z x5)))) as proof of ((ex a) (fun (Xx:a)=> ((and (X Xx)) ((or (Y Xx)) (Z Xx))))) % Found ((ex_intro00 x1) ((((conj (X x1)) ((or (Y x1)) (Z x1))) x3) ((fun (B:Prop)=> (((or_introl (Y x1)) B) x4)) (Z x1)))) as proof of ((ex a) (fun (Xx:a)=> ((and (X Xx)) ((or (Y Xx)) (Z Xx))))) % Found (((ex_intro0 (fun (Xx:a)=> ((and (X Xx)) ((or (Y Xx)) (Z Xx))))) x1) ((((conj (X x1)) ((or (Y x1)) (Z x1))) x3) ((fun (B:Prop)=> (((or_introl (Y x1)) B) x4)) (Z x1)))) as proof of ((ex a) (fun (Xx:a)=> ((and (X Xx)) ((or (Y Xx)) (Z Xx))))) % Found ((((ex_intro a) (fun (Xx:a)=> ((and (X Xx)) ((or (Y Xx)) (Z Xx))))) x1) ((((conj (X x1)) ((or (Y x1)) (Z x1))) x3) ((fun (B:Prop)=> (((or_introl (Y x1)) B) x4)) (Z x1)))) as proof of ((ex a) (fun (Xx:a)=> ((and (X Xx)) ((or (Y Xx)) (Z Xx))))) % Found (fun (x4:(Y x1))=> ((((ex_intro a) (fun (Xx:a)=> ((and (X Xx)) ((or (Y Xx)) (Z Xx))))) x1) ((((conj (X x1)) ((or (Y x1)) (Z x1))) x3) ((fun (B:Prop)=> (((or_introl (Y x1)) B) x4)) (Z x1))))) as proof of ((ex a) (fun (Xx:a)=> ((and (X Xx)) ((or (Y Xx)) (Z Xx))))) % Found (fun (x3:(X x1)) (x4:(Y x1))=> ((((ex_intro a) (fun (Xx:a)=> ((and (X Xx)) ((or (Y Xx)) (Z Xx))))) x1) ((((conj (X x1)) ((or (Y x1)) (Z x1))) x3) ((fun (B:Prop)=> (((or_introl (Y x1)) B) x4)) (Z x1))))) as proof of ((Y x1)->((ex a) (fun (Xx:a)=> ((and (X Xx)) ((or (Y Xx)) (Z Xx)))))) % Found (fun (x3:(X x1)) (x4:(Y x1))=> ((((ex_intro a) (fun (Xx:a)=> ((and (X Xx)) ((or (Y Xx)) (Z Xx))))) x1) ((((conj (X x1)) ((or (Y x1)) (Z x1))) x3) ((fun (B:Prop)=> (((or_introl (Y x1)) B) x4)) (Z x1))))) as proof of ((X x1)->((Y x1)->((ex a) (fun (Xx:a)=> ((and (X Xx)) ((or (Y Xx)) (Z Xx))))))) % Found (and_rect00 (fun (x3:(X x1)) (x4:(Y x1))=> ((((ex_intro a) (fun (Xx:a)=> ((and (X Xx)) ((or (Y Xx)) (Z Xx))))) x1) ((((conj (X x1)) ((or (Y x1)) (Z x1))) x3) ((fun (B:Prop)=> (((or_introl (Y x1)) B) x4)) (Z x1)))))) as proof of ((ex a) (fun (Xx:a)=> ((and (X Xx)) ((or (Y Xx)) (Z Xx))))) % Found ((and_rect0 ((ex a) (fun (Xx:a)=> ((and (X Xx)) ((or (Y Xx)) (Z Xx)))))) (fun (x3:(X x1)) (x4:(Y x1))=> ((((ex_intro a) (fun (Xx:a)=> ((and (X Xx)) ((or (Y Xx)) (Z Xx))))) x1) ((((conj (X x1)) ((or (Y x1)) (Z x1))) x3) ((fun (B:Prop)=> (((or_introl (Y x1)) B) x4)) (Z x1)))))) as proof of ((ex a) (fun (Xx:a)=> ((and (X Xx)) ((or (Y Xx)) (Z Xx))))) % Found (((fun (P:Type) (x3:((X x1)->((Y x1)->P)))=> (((((and_rect (X x1)) (Y x1)) P) x3) x2)) ((ex a) (fun (Xx:a)=> ((and (X Xx)) ((or (Y Xx)) (Z Xx)))))) (fun (x3:(X x1)) (x4:(Y x1))=> ((((ex_intro a) (fun (Xx:a)=> ((and (X Xx)) ((or (Y Xx)) (Z Xx))))) x1) ((((conj (X x1)) ((or (Y x1)) (Z x1))) x3) ((fun (B:Prop)=> (((or_introl (Y x1)) B) x4)) (Z x1)))))) as proof of ((ex a) (fun (Xx:a)=> ((and (X Xx)) ((or (Y Xx)) (Z Xx))))) % Found (fun (x2:((and (X x1)) (Y x1)))=> (((fun (P:Type) (x3:((X x1)->((Y x1)->P)))=> (((((and_rect (X x1)) (Y x1)) P) x3) x2)) ((ex a) (fun (Xx:a)=> ((and (X Xx)) ((or (Y Xx)) (Z Xx)))))) (fun (x3:(X x1)) (x4:(Y x1))=> ((((ex_intro a) (fun (Xx:a)=> ((and (X Xx)) ((or (Y Xx)) (Z Xx))))) x1) ((((conj (X x1)) ((or (Y x1)) (Z x1))) x3) ((fun (B:Prop)=> (((or_introl (Y x1)) B) x4)) (Z x1))))))) as proof of ((ex a) (fun (Xx:a)=> ((and (X Xx)) ((or (Y Xx)) (Z Xx))))) % Found (fun (x1:a) (x2:((and (X x1)) (Y x1)))=> (((fun (P:Type) (x3:((X x1)->((Y x1)->P)))=> (((((and_rect (X x1)) (Y x1)) P) x3) x2)) ((ex a) (fun (Xx:a)=> ((and (X Xx)) ((or (Y Xx)) (Z Xx)))))) (fun (x3:(X x1)) (x4:(Y x1))=> ((((ex_intro a) (fun (Xx:a)=> ((and (X Xx)) ((or (Y Xx)) (Z Xx))))) x1) ((((conj (X x1)) ((or (Y x1)) (Z x1))) x3) ((fun (B:Prop)=> (((or_introl (Y x1)) B) x4)) (Z x1))))))) as proof of (((and (X x1)) (Y x1))->((ex a) (fun (Xx:a)=> ((and (X Xx)) ((or (Y Xx)) (Z Xx)))))) % Found (fun (x1:a) (x2:((and (X x1)) (Y x1)))=> (((fun (P:Type) (x3:((X x1)->((Y x1)->P)))=> (((((and_rect (X x1)) (Y x1)) P) x3) x2)) ((ex a) (fun (Xx:a)=> ((and (X Xx)) ((or (Y Xx)) (Z Xx)))))) (fun (x3:(X x1)) (x4:(Y x1))=> ((((ex_intro a) (fun (Xx:a)=> ((and (X Xx)) ((or (Y Xx)) (Z Xx))))) x1) ((((conj (X x1)) ((or (Y x1)) (Z x1))) x3) ((fun (B:Prop)=> (((or_introl (Y x1)) B) x4)) (Z x1))))))) as proof of (forall (x:a), (((and (X x)) (Y x))->((ex a) (fun (Xx:a)=> ((and (X Xx)) ((or (Y Xx)) (Z Xx))))))) % Found (ex_ind00 (fun (x1:a) (x2:((and (X x1)) (Y x1)))=> (((fun (P:Type) (x3:((X x1)->((Y x1)->P)))=> (((((and_rect (X x1)) (Y x1)) P) x3) x2)) ((ex a) (fun (Xx:a)=> ((and (X Xx)) ((or (Y Xx)) (Z Xx)))))) (fun (x3:(X x1)) (x4:(Y x1))=> ((((ex_intro a) (fun (Xx:a)=> ((and (X Xx)) ((or (Y Xx)) (Z Xx))))) x1) ((((conj (X x1)) ((or (Y x1)) (Z x1))) x3) ((fun (B:Prop)=> (((or_introl (Y x1)) B) x4)) (Z x1)))))))) as proof of ((ex a) (fun (Xx:a)=> ((and (X Xx)) ((or (Y Xx)) (Z Xx))))) % Found ((ex_ind0 ((ex a) (fun (Xx:a)=> ((and (X Xx)) ((or (Y Xx)) (Z Xx)))))) (fun (x1:a) (x2:((and (X x1)) (Y x1)))=> (((fun (P:Type) (x3:((X x1)->((Y x1)->P)))=> (((((and_rect (X x1)) (Y x1)) P) x3) x2)) ((ex a) (fun (Xx:a)=> ((and (X Xx)) ((or (Y Xx)) (Z Xx)))))) (fun (x3:(X x1)) (x4:(Y x1))=> ((((ex_intro a) (fun (Xx:a)=> ((and (X Xx)) ((or (Y Xx)) (Z Xx))))) x1) ((((conj (X x1)) ((or (Y x1)) (Z x1))) x3) ((fun (B:Prop)=> (((or_introl (Y x1)) B) x4)) (Z x1)))))))) as proof of ((ex a) (fun (Xx:a)=> ((and (X Xx)) ((or (Y Xx)) (Z Xx))))) % Found (((fun (P:Prop) (x1:(forall (x:a), (((and (X x)) (Y x))->P)))=> (((((ex_ind a) (fun (Xx:a)=> ((and (X Xx)) (Y Xx)))) P) x1) x0)) ((ex a) (fun (Xx:a)=> ((and (X Xx)) ((or (Y Xx)) (Z Xx)))))) (fun (x1:a) (x2:((and (X x1)) (Y x1)))=> (((fun (P:Type) (x3:((X x1)->((Y x1)->P)))=> (((((and_rect (X x1)) (Y x1)) P) x3) x2)) ((ex a) (fun (Xx:a)=> ((and (X Xx)) ((or (Y Xx)) (Z Xx)))))) (fun (x3:(X x1)) (x4:(Y x1))=> ((((ex_intro a) (fun (Xx:a)=> ((and (X Xx)) ((or (Y Xx)) (Z Xx))))) x1) ((((conj (X x1)) ((or (Y x1)) (Z x1))) x3) ((fun (B:Prop)=> (((or_introl (Y x1)) B) x4)) (Z x1)))))))) as proof of ((ex a) (fun (Xx:a)=> ((and (X Xx)) ((or (Y Xx)) (Z Xx))))) % Found (fun (x0:((ex a) (fun (Xx:a)=> ((and (X Xx)) (Y Xx)))))=> (((fun (P:Prop) (x1:(forall (x:a), (((and (X x)) (Y x))->P)))=> (((((ex_ind a) (fun (Xx:a)=> ((and (X Xx)) (Y Xx)))) P) x1) x0)) ((ex a) (fun (Xx:a)=> ((and (X Xx)) ((or (Y Xx)) (Z Xx)))))) (fun (x1:a) (x2:((and (X x1)) (Y x1)))=> (((fun (P:Type) (x3:((X x1)->((Y x1)->P)))=> (((((and_rect (X x1)) (Y x1)) P) x3) x2)) ((ex a) (fun (Xx:a)=> ((and (X Xx)) ((or (Y Xx)) (Z Xx)))))) (fun (x3:(X x1)) (x4:(Y x1))=> ((((ex_intro a) (fun (Xx:a)=> ((and (X Xx)) ((or (Y Xx)) (Z Xx))))) x1) ((((conj (X x1)) ((or (Y x1)) (Z x1))) x3) ((fun (B:Prop)=> (((or_introl (Y x1)) B) x4)) (Z x1))))))))) as proof of ((ex a) (fun (Xx:a)=> ((and (X Xx)) ((or (Y Xx)) (Z Xx))))) % Found (fun (x0:((ex a) (fun (Xx:a)=> ((and (X Xx)) (Y Xx)))))=> (((fun (P:Prop) (x1:(forall (x:a), (((and (X x)) (Y x))->P)))=> (((((ex_ind a) (fun (Xx:a)=> ((and (X Xx)) (Y Xx)))) P) x1) x0)) ((ex a) (fun (Xx:a)=> ((and (X Xx)) ((or (Y Xx)) (Z Xx)))))) (fun (x1:a) (x2:((and (X x1)) (Y x1)))=> (((fun (P:Type) (x3:((X x1)->((Y x1)->P)))=> (((((and_rect (X x1)) (Y x1)) P) x3) x2)) ((ex a) (fun (Xx:a)=> ((and (X Xx)) ((or (Y Xx)) (Z Xx)))))) (fun (x3:(X x1)) (x4:(Y x1))=> ((((ex_intro a) (fun (Xx:a)=> ((and (X Xx)) ((or (Y Xx)) (Z Xx))))) x1) ((((conj (X x1)) ((or (Y x1)) (Z x1))) x3) ((fun (B:Prop)=> (((or_introl (Y x1)) B) x4)) (Z x1))))))))) as proof of (((ex a) (fun (Xx:a)=> ((and (X Xx)) (Y Xx))))->((ex a) (fun (Xx:a)=> ((and (X Xx)) ((or (Y Xx)) (Z Xx)))))) % Found or_intror000:=(or_intror00 x4):((or (Y x5)) (Z x5)) % Found (or_intror00 x4) as proof of ((or (Y x5)) (Z x5)) % Found ((or_intror0 (Z x5)) x4) as proof of ((or (Y x5)) (Z x5)) % Found (((or_intror (Y x5)) (Z x5)) x4) as proof of ((or (Y x5)) (Z x5)) % Found (((or_intror (Y x5)) (Z x5)) x4) as proof of ((or (Y x5)) (Z x5)) % Found ((conj10 x3) (((or_intror (Y x5)) (Z x5)) x4)) as proof of ((and (X x5)) ((or (Y x5)) (Z x5))) % Found (((conj1 ((or (Y x5)) (Z x5))) x3) (((or_intror (Y x5)) (Z x5)) x4)) as proof of ((and (X x5)) ((or (Y x5)) (Z x5))) % Found ((((conj (X x5)) ((or (Y x5)) (Z x5))) x3) (((or_intror (Y x5)) (Z x5)) x4)) as proof of ((and (X x5)) ((or (Y x5)) (Z x5))) % Found ((((conj (X x5)) ((or (Y x5)) (Z x5))) x3) (((or_intror (Y x5)) (Z x5)) x4)) as proof of ((and (X x5)) ((or (Y x5)) (Z x5))) % Found (ex_intro000 ((((conj (X x5)) ((or (Y x5)) (Z x5))) x3) (((or_intror (Y x5)) (Z x5)) x4))) as proof of ((ex a) (fun (Xx:a)=> ((and (X Xx)) ((or (Y Xx)) (Z Xx))))) % Found ((ex_intro00 x1) ((((conj (X x1)) ((or (Y x1)) (Z x1))) x3) (((or_intror (Y x1)) (Z x1)) x4))) as proof of ((ex a) (fun (Xx:a)=> ((and (X Xx)) ((or (Y Xx)) (Z Xx))))) % Found (((ex_intro0 (fun (Xx:a)=> ((and (X Xx)) ((or (Y Xx)) (Z Xx))))) x1) ((((conj (X x1)) ((or (Y x1)) (Z x1))) x3) (((or_intror (Y x1)) (Z x1)) x4))) as proof of ((ex a) (fun (Xx:a)=> ((and (X Xx)) ((or (Y Xx)) (Z Xx))))) % Found ((((ex_intro a) (fun (Xx:a)=> ((and (X Xx)) ((or (Y Xx)) (Z Xx))))) x1) ((((conj (X x1)) ((or (Y x1)) (Z x1))) x3) (((or_intror (Y x1)) (Z x1)) x4))) as proof of ((ex a) (fun (Xx:a)=> ((and (X Xx)) ((or (Y Xx)) (Z Xx))))) % Found (fun (x4:(Z x1))=> ((((ex_intro a) (fun (Xx:a)=> ((and (X Xx)) ((or (Y Xx)) (Z Xx))))) x1) ((((conj (X x1)) ((or (Y x1)) (Z x1))) x3) (((or_intror (Y x1)) (Z x1)) x4)))) as proof of ((ex a) (fun (Xx:a)=> ((and (X Xx)) ((or (Y Xx)) (Z Xx))))) % Found (fun (x3:(X x1)) (x4:(Z x1))=> ((((ex_intro a) (fun (Xx:a)=> ((and (X Xx)) ((or (Y Xx)) (Z Xx))))) x1) ((((conj (X x1)) ((or (Y x1)) (Z x1))) x3) (((or_intror (Y x1)) (Z x1)) x4)))) as proof of ((Z x1)->((ex a) (fun (Xx:a)=> ((and (X Xx)) ((or (Y Xx)) (Z Xx)))))) % Found (fun (x3:(X x1)) (x4:(Z x1))=> ((((ex_intro a) (fun (Xx:a)=> ((and (X Xx)) ((or (Y Xx)) (Z Xx))))) x1) ((((conj (X x1)) ((or (Y x1)) (Z x1))) x3) (((or_intror (Y x1)) (Z x1)) x4)))) as proof of ((X x1)->((Z x1)->((ex a) (fun (Xx:a)=> ((and (X Xx)) ((or (Y Xx)) (Z Xx))))))) % Found (and_rect00 (fun (x3:(X x1)) (x4:(Z x1))=> ((((ex_intro a) (fun (Xx:a)=> ((and (X Xx)) ((or (Y Xx)) (Z Xx))))) x1) ((((conj (X x1)) ((or (Y x1)) (Z x1))) x3) (((or_intror (Y x1)) (Z x1)) x4))))) as proof of ((ex a) (fun (Xx:a)=> ((and (X Xx)) ((or (Y Xx)) (Z Xx))))) % Found ((and_rect0 ((ex a) (fun (Xx:a)=> ((and (X Xx)) ((or (Y Xx)) (Z Xx)))))) (fun (x3:(X x1)) (x4:(Z x1))=> ((((ex_intro a) (fun (Xx:a)=> ((and (X Xx)) ((or (Y Xx)) (Z Xx))))) x1) ((((conj (X x1)) ((or (Y x1)) (Z x1))) x3) (((or_intror (Y x1)) (Z x1)) x4))))) as proof of ((ex a) (fun (Xx:a)=> ((and (X Xx)) ((or (Y Xx)) (Z Xx))))) % Found (((fun (P:Type) (x3:((X x1)->((Z x1)->P)))=> (((((and_rect (X x1)) (Z x1)) P) x3) x2)) ((ex a) (fun (Xx:a)=> ((and (X Xx)) ((or (Y Xx)) (Z Xx)))))) (fun (x3:(X x1)) (x4:(Z x1))=> ((((ex_intro a) (fun (Xx:a)=> ((and (X Xx)) ((or (Y Xx)) (Z Xx))))) x1) ((((conj (X x1)) ((or (Y x1)) (Z x1))) x3) (((or_intror (Y x1)) (Z x1)) x4))))) as proof of ((ex a) (fun (Xx:a)=> ((and (X Xx)) ((or (Y Xx)) (Z Xx))))) % Found (fun (x2:((and (X x1)) (Z x1)))=> (((fun (P:Type) (x3:((X x1)->((Z x1)->P)))=> (((((and_rect (X x1)) (Z x1)) P) x3) x2)) ((ex a) (fun (Xx:a)=> ((and (X Xx)) ((or (Y Xx)) (Z Xx)))))) (fun (x3:(X x1)) (x4:(Z x1))=> ((((ex_intro a) (fun (Xx:a)=> ((and (X Xx)) ((or (Y Xx)) (Z Xx))))) x1) ((((conj (X x1)) ((or (Y x1)) (Z x1))) x3) (((or_intror (Y x1)) (Z x1)) x4)))))) as proof of ((ex a) (fun (Xx:a)=> ((and (X Xx)) ((or (Y Xx)) (Z Xx))))) % Found (fun (x1:a) (x2:((and (X x1)) (Z x1)))=> (((fun (P:Type) (x3:((X x1)->((Z x1)->P)))=> (((((and_rect (X x1)) (Z x1)) P) x3) x2)) ((ex a) (fun (Xx:a)=> ((and (X Xx)) ((or (Y Xx)) (Z Xx)))))) (fun (x3:(X x1)) (x4:(Z x1))=> ((((ex_intro a) (fun (Xx:a)=> ((and (X Xx)) ((or (Y Xx)) (Z Xx))))) x1) ((((conj (X x1)) ((or (Y x1)) (Z x1))) x3) (((or_intror (Y x1)) (Z x1)) x4)))))) as proof of (((and (X x1)) (Z x1))->((ex a) (fun (Xx:a)=> ((and (X Xx)) ((or (Y Xx)) (Z Xx)))))) % Found (fun (x1:a) (x2:((and (X x1)) (Z x1)))=> (((fun (P:Type) (x3:((X x1)->((Z x1)->P)))=> (((((and_rect (X x1)) (Z x1)) P) x3) x2)) ((ex a) (fun (Xx:a)=> ((and (X Xx)) ((or (Y Xx)) (Z Xx)))))) (fun (x3:(X x1)) (x4:(Z x1))=> ((((ex_intro a) (fun (Xx:a)=> ((and (X Xx)) ((or (Y Xx)) (Z Xx))))) x1) ((((conj (X x1)) ((or (Y x1)) (Z x1))) x3) (((or_intror (Y x1)) (Z x1)) x4)))))) as proof of (forall (x:a), (((and (X x)) (Z x))->((ex a) (fun (Xx:a)=> ((and (X Xx)) ((or (Y Xx)) (Z Xx))))))) % Found (ex_ind00 (fun (x1:a) (x2:((and (X x1)) (Z x1)))=> (((fun (P:Type) (x3:((X x1)->((Z x1)->P)))=> (((((and_rect (X x1)) (Z x1)) P) x3) x2)) ((ex a) (fun (Xx:a)=> ((and (X Xx)) ((or (Y Xx)) (Z Xx)))))) (fun (x3:(X x1)) (x4:(Z x1))=> ((((ex_intro a) (fun (Xx:a)=> ((and (X Xx)) ((or (Y Xx)) (Z Xx))))) x1) ((((conj (X x1)) ((or (Y x1)) (Z x1))) x3) (((or_intror (Y x1)) (Z x1)) x4))))))) as proof of ((ex a) (fun (Xx:a)=> ((and (X Xx)) ((or (Y Xx)) (Z Xx))))) % Found ((ex_ind0 ((ex a) (fun (Xx:a)=> ((and (X Xx)) ((or (Y Xx)) (Z Xx)))))) (fun (x1:a) (x2:((and (X x1)) (Z x1)))=> (((fun (P:Type) (x3:((X x1)->((Z x1)->P)))=> (((((and_rect (X x1)) (Z x1)) P) x3) x2)) ((ex a) (fun (Xx:a)=> ((and (X Xx)) ((or (Y Xx)) (Z Xx)))))) (fun (x3:(X x1)) (x4:(Z x1))=> ((((ex_intro a) (fun (Xx:a)=> ((and (X Xx)) ((or (Y Xx)) (Z Xx))))) x1) ((((conj (X x1)) ((or (Y x1)) (Z x1))) x3) (((or_intror (Y x1)) (Z x1)) x4))))))) as proof of ((ex a) (fun (Xx:a)=> ((and (X Xx)) ((or (Y Xx)) (Z Xx))))) % Found (((fun (P:Prop) (x1:(forall (x:a), (((and (X x)) (Z x))->P)))=> (((((ex_ind a) (fun (Xx:a)=> ((and (X Xx)) (Z Xx)))) P) x1) x0)) ((ex a) (fun (Xx:a)=> ((and (X Xx)) ((or (Y Xx)) (Z Xx)))))) (fun (x1:a) (x2:((and (X x1)) (Z x1)))=> (((fun (P:Type) (x3:((X x1)->((Z x1)->P)))=> (((((and_rect (X x1)) (Z x1)) P) x3) x2)) ((ex a) (fun (Xx:a)=> ((and (X Xx)) ((or (Y Xx)) (Z Xx)))))) (fun (x3:(X x1)) (x4:(Z x1))=> ((((ex_intro a) (fun (Xx:a)=> ((and (X Xx)) ((or (Y Xx)) (Z Xx))))) x1) ((((conj (X x1)) ((or (Y x1)) (Z x1))) x3) (((or_intror (Y x1)) (Z x1)) x4))))))) as proof of ((ex a) (fun (Xx:a)=> ((and (X Xx)) ((or (Y Xx)) (Z Xx))))) % Found (fun (x0:((ex a) (fun (Xx:a)=> ((and (X Xx)) (Z Xx)))))=> (((fun (P:Prop) (x1:(forall (x:a), (((and (X x)) (Z x))->P)))=> (((((ex_ind a) (fun (Xx:a)=> ((and (X Xx)) (Z Xx)))) P) x1) x0)) ((ex a) (fun (Xx:a)=> ((and (X Xx)) ((or (Y Xx)) (Z Xx)))))) (fun (x1:a) (x2:((and (X x1)) (Z x1)))=> (((fun (P:Type) (x3:((X x1)->((Z x1)->P)))=> (((((and_rect (X x1)) (Z x1)) P) x3) x2)) ((ex a) (fun (Xx:a)=> ((and (X Xx)) ((or (Y Xx)) (Z Xx)))))) (fun (x3:(X x1)) (x4:(Z x1))=> ((((ex_intro a) (fun (Xx:a)=> ((and (X Xx)) ((or (Y Xx)) (Z Xx))))) x1) ((((conj (X x1)) ((or (Y x1)) (Z x1))) x3) (((or_intror (Y x1)) (Z x1)) x4)))))))) as proof of ((ex a) (fun (Xx:a)=> ((and (X Xx)) ((or (Y Xx)) (Z Xx))))) % Found (fun (x0:((ex a) (fun (Xx:a)=> ((and (X Xx)) (Z Xx)))))=> (((fun (P:Prop) (x1:(forall (x:a), (((and (X x)) (Z x))->P)))=> (((((ex_ind a) (fun (Xx:a)=> ((and (X Xx)) (Z Xx)))) P) x1) x0)) ((ex a) (fun (Xx:a)=> ((and (X Xx)) ((or (Y Xx)) (Z Xx)))))) (fun (x1:a) (x2:((and (X x1)) (Z x1)))=> (((fun (P:Type) (x3:((X x1)->((Z x1)->P)))=> (((((and_rect (X x1)) (Z x1)) P) x3) x2)) ((ex a) (fun (Xx:a)=> ((and (X Xx)) ((or (Y Xx)) (Z Xx)))))) (fun (x3:(X x1)) (x4:(Z x1))=> ((((ex_intro a) (fun (Xx:a)=> ((and (X Xx)) ((or (Y Xx)) (Z Xx))))) x1) ((((conj (X x1)) ((or (Y x1)) (Z x1))) x3) (((or_intror (Y x1)) (Z x1)) x4)))))))) as proof of (((ex a) (fun (Xx:a)=> ((and (X Xx)) (Z Xx))))->((ex a) (fun (Xx:a)=> ((and (X Xx)) ((or (Y Xx)) (Z Xx)))))) % Found ((or_ind00 (fun (x0:((ex a) (fun (Xx:a)=> ((and (X Xx)) (Y Xx)))))=> (((fun (P:Prop) (x1:(forall (x:a), (((and (X x)) (Y x))->P)))=> (((((ex_ind a) (fun (Xx:a)=> ((and (X Xx)) (Y Xx)))) P) x1) x0)) ((ex a) (fun (Xx:a)=> ((and (X Xx)) ((or (Y Xx)) (Z Xx)))))) (fun (x1:a) (x2:((and (X x1)) (Y x1)))=> (((fun (P:Type) (x3:((X x1)->((Y x1)->P)))=> (((((and_rect (X x1)) (Y x1)) P) x3) x2)) ((ex a) (fun (Xx:a)=> ((and (X Xx)) ((or (Y Xx)) (Z Xx)))))) (fun (x3:(X x1)) (x4:(Y x1))=> ((((ex_intro a) (fun (Xx:a)=> ((and (X Xx)) ((or (Y Xx)) (Z Xx))))) x1) ((((conj (X x1)) ((or (Y x1)) (Z x1))) x3) ((fun (B:Prop)=> (((or_introl (Y x1)) B) x4)) (Z x1)))))))))) (fun (x0:((ex a) (fun (Xx:a)=> ((and (X Xx)) (Z Xx)))))=> (((fun (P:Prop) (x1:(forall (x:a), (((and (X x)) (Z x))->P)))=> (((((ex_ind a) (fun (Xx:a)=> ((and (X Xx)) (Z Xx)))) P) x1) x0)) ((ex a) (fun (Xx:a)=> ((and (X Xx)) ((or (Y Xx)) (Z Xx)))))) (fun (x1:a) (x2:((and (X x1)) (Z x1)))=> (((fun (P:Type) (x3:((X x1)->((Z x1)->P)))=> (((((and_rect (X x1)) (Z x1)) P) x3) x2)) ((ex a) (fun (Xx:a)=> ((and (X Xx)) ((or (Y Xx)) (Z Xx)))))) (fun (x3:(X x1)) (x4:(Z x1))=> ((((ex_intro a) (fun (Xx:a)=> ((and (X Xx)) ((or (Y Xx)) (Z Xx))))) x1) ((((conj (X x1)) ((or (Y x1)) (Z x1))) x3) (((or_intror (Y x1)) (Z x1)) x4))))))))) as proof of ((ex a) (fun (Xx:a)=> ((and (X Xx)) ((or (Y Xx)) (Z Xx))))) % Found (((or_ind0 ((ex a) (fun (Xx:a)=> ((and (X Xx)) ((or (Y Xx)) (Z Xx)))))) (fun (x0:((ex a) (fun (Xx:a)=> ((and (X Xx)) (Y Xx)))))=> (((fun (P:Prop) (x1:(forall (x:a), (((and (X x)) (Y x))->P)))=> (((((ex_ind a) (fun (Xx:a)=> ((and (X Xx)) (Y Xx)))) P) x1) x0)) ((ex a) (fun (Xx:a)=> ((and (X Xx)) ((or (Y Xx)) (Z Xx)))))) (fun (x1:a) (x2:((and (X x1)) (Y x1)))=> (((fun (P:Type) (x3:((X x1)->((Y x1)->P)))=> (((((and_rect (X x1)) (Y x1)) P) x3) x2)) ((ex a) (fun (Xx:a)=> ((and (X Xx)) ((or (Y Xx)) (Z Xx)))))) (fun (x3:(X x1)) (x4:(Y x1))=> ((((ex_intro a) (fun (Xx:a)=> ((and (X Xx)) ((or (Y Xx)) (Z Xx))))) x1) ((((conj (X x1)) ((or (Y x1)) (Z x1))) x3) ((fun (B:Prop)=> (((or_introl (Y x1)) B) x4)) (Z x1)))))))))) (fun (x0:((ex a) (fun (Xx:a)=> ((and (X Xx)) (Z Xx)))))=> (((fun (P:Prop) (x1:(forall (x:a), (((and (X x)) (Z x))->P)))=> (((((ex_ind a) (fun (Xx:a)=> ((and (X Xx)) (Z Xx)))) P) x1) x0)) ((ex a) (fun (Xx:a)=> ((and (X Xx)) ((or (Y Xx)) (Z Xx)))))) (fun (x1:a) (x2:((and (X x1)) (Z x1)))=> (((fun (P:Type) (x3:((X x1)->((Z x1)->P)))=> (((((and_rect (X x1)) (Z x1)) P) x3) x2)) ((ex a) (fun (Xx:a)=> ((and (X Xx)) ((or (Y Xx)) (Z Xx)))))) (fun (x3:(X x1)) (x4:(Z x1))=> ((((ex_intro a) (fun (Xx:a)=> ((and (X Xx)) ((or (Y Xx)) (Z Xx))))) x1) ((((conj (X x1)) ((or (Y x1)) (Z x1))) x3) (((or_intror (Y x1)) (Z x1)) x4))))))))) as proof of ((ex a) (fun (Xx:a)=> ((and (X Xx)) ((or (Y Xx)) (Z Xx))))) % Found ((((fun (P:Prop) (x0:(((ex a) (fun (Xx:a)=> ((and (X Xx)) (Y Xx))))->P)) (x1:(((ex a) (fun (Xx:a)=> ((and (X Xx)) (Z Xx))))->P))=> ((((((or_ind ((ex a) (fun (Xx:a)=> ((and (X Xx)) (Y Xx))))) ((ex a) (fun (Xx:a)=> ((and (X Xx)) (Z Xx))))) P) x0) x1) x)) ((ex a) (fun (Xx:a)=> ((and (X Xx)) ((or (Y Xx)) (Z Xx)))))) (fun (x0:((ex a) (fun (Xx:a)=> ((and (X Xx)) (Y Xx)))))=> (((fun (P:Prop) (x1:(forall (x0:a), (((and (X x0)) (Y x0))->P)))=> (((((ex_ind a) (fun (Xx:a)=> ((and (X Xx)) (Y Xx)))) P) x1) x0)) ((ex a) (fun (Xx:a)=> ((and (X Xx)) ((or (Y Xx)) (Z Xx)))))) (fun (x1:a) (x2:((and (X x1)) (Y x1)))=> (((fun (P:Type) (x3:((X x1)->((Y x1)->P)))=> (((((and_rect (X x1)) (Y x1)) P) x3) x2)) ((ex a) (fun (Xx:a)=> ((and (X Xx)) ((or (Y Xx)) (Z Xx)))))) (fun (x3:(X x1)) (x4:(Y x1))=> ((((ex_intro a) (fun (Xx:a)=> ((and (X Xx)) ((or (Y Xx)) (Z Xx))))) x1) ((((conj (X x1)) ((or (Y x1)) (Z x1))) x3) ((fun (B:Prop)=> (((or_introl (Y x1)) B) x4)) (Z x1)))))))))) (fun (x0:((ex a) (fun (Xx:a)=> ((and (X Xx)) (Z Xx)))))=> (((fun (P:Prop) (x1:(forall (x0:a), (((and (X x0)) (Z x0))->P)))=> (((((ex_ind a) (fun (Xx:a)=> ((and (X Xx)) (Z Xx)))) P) x1) x0)) ((ex a) (fun (Xx:a)=> ((and (X Xx)) ((or (Y Xx)) (Z Xx)))))) (fun (x1:a) (x2:((and (X x1)) (Z x1)))=> (((fun (P:Type) (x3:((X x1)->((Z x1)->P)))=> (((((and_rect (X x1)) (Z x1)) P) x3) x2)) ((ex a) (fun (Xx:a)=> ((and (X Xx)) ((or (Y Xx)) (Z Xx)))))) (fun (x3:(X x1)) (x4:(Z x1))=> ((((ex_intro a) (fun (Xx:a)=> ((and (X Xx)) ((or (Y Xx)) (Z Xx))))) x1) ((((conj (X x1)) ((or (Y x1)) (Z x1))) x3) (((or_intror (Y x1)) (Z x1)) x4))))))))) as proof of ((ex a) (fun (Xx:a)=> ((and (X Xx)) ((or (Y Xx)) (Z Xx))))) % Found (fun (x:((or ((ex a) (fun (Xx:a)=> ((and (X Xx)) (Y Xx))))) ((ex a) (fun (Xx:a)=> ((and (X Xx)) (Z Xx))))))=> ((((fun (P:Prop) (x0:(((ex a) (fun (Xx:a)=> ((and (X Xx)) (Y Xx))))->P)) (x1:(((ex a) (fun (Xx:a)=> ((and (X Xx)) (Z Xx))))->P))=> ((((((or_ind ((ex a) (fun (Xx:a)=> ((and (X Xx)) (Y Xx))))) ((ex a) (fun (Xx:a)=> ((and (X Xx)) (Z Xx))))) P) x0) x1) x)) ((ex a) (fun (Xx:a)=> ((and (X Xx)) ((or (Y Xx)) (Z Xx)))))) (fun (x0:((ex a) (fun (Xx:a)=> ((and (X Xx)) (Y Xx)))))=> (((fun (P:Prop) (x1:(forall (x0:a), (((and (X x0)) (Y x0))->P)))=> (((((ex_ind a) (fun (Xx:a)=> ((and (X Xx)) (Y Xx)))) P) x1) x0)) ((ex a) (fun (Xx:a)=> ((and (X Xx)) ((or (Y Xx)) (Z Xx)))))) (fun (x1:a) (x2:((and (X x1)) (Y x1)))=> (((fun (P:Type) (x3:((X x1)->((Y x1)->P)))=> (((((and_rect (X x1)) (Y x1)) P) x3) x2)) ((ex a) (fun (Xx:a)=> ((and (X Xx)) ((or (Y Xx)) (Z Xx)))))) (fun (x3:(X x1)) (x4:(Y x1))=> ((((ex_intro a) (fun (Xx:a)=> ((and (X Xx)) ((or (Y Xx)) (Z Xx))))) x1) ((((conj (X x1)) ((or (Y x1)) (Z x1))) x3) ((fun (B:Prop)=> (((or_introl (Y x1)) B) x4)) (Z x1)))))))))) (fun (x0:((ex a) (fun (Xx:a)=> ((and (X Xx)) (Z Xx)))))=> (((fun (P:Prop) (x1:(forall (x0:a), (((and (X x0)) (Z x0))->P)))=> (((((ex_ind a) (fun (Xx:a)=> ((and (X Xx)) (Z Xx)))) P) x1) x0)) ((ex a) (fun (Xx:a)=> ((and (X Xx)) ((or (Y Xx)) (Z Xx)))))) (fun (x1:a) (x2:((and (X x1)) (Z x1)))=> (((fun (P:Type) (x3:((X x1)->((Z x1)->P)))=> (((((and_rect (X x1)) (Z x1)) P) x3) x2)) ((ex a) (fun (Xx:a)=> ((and (X Xx)) ((or (Y Xx)) (Z Xx)))))) (fun (x3:(X x1)) (x4:(Z x1))=> ((((ex_intro a) (fun (Xx:a)=> ((and (X Xx)) ((or (Y Xx)) (Z Xx))))) x1) ((((conj (X x1)) ((or (Y x1)) (Z x1))) x3) (((or_intror (Y x1)) (Z x1)) x4)))))))))) as proof of ((ex a) (fun (Xx:a)=> ((and (X Xx)) ((or (Y Xx)) (Z Xx))))) % Found (fun (x:((or ((ex a) (fun (Xx:a)=> ((and (X Xx)) (Y Xx))))) ((ex a) (fun (Xx:a)=> ((and (X Xx)) (Z Xx))))))=> ((((fun (P:Prop) (x0:(((ex a) (fun (Xx:a)=> ((and (X Xx)) (Y Xx))))->P)) (x1:(((ex a) (fun (Xx:a)=> ((and (X Xx)) (Z Xx))))->P))=> ((((((or_ind ((ex a) (fun (Xx:a)=> ((and (X Xx)) (Y Xx))))) ((ex a) (fun (Xx:a)=> ((and (X Xx)) (Z Xx))))) P) x0) x1) x)) ((ex a) (fun (Xx:a)=> ((and (X Xx)) ((or (Y Xx)) (Z Xx)))))) (fun (x0:((ex a) (fun (Xx:a)=> ((and (X Xx)) (Y Xx)))))=> (((fun (P:Prop) (x1:(forall (x0:a), (((and (X x0)) (Y x0))->P)))=> (((((ex_ind a) (fun (Xx:a)=> ((and (X Xx)) (Y Xx)))) P) x1) x0)) ((ex a) (fun (Xx:a)=> ((and (X Xx)) ((or (Y Xx)) (Z Xx)))))) (fun (x1:a) (x2:((and (X x1)) (Y x1)))=> (((fun (P:Type) (x3:((X x1)->((Y x1)->P)))=> (((((and_rect (X x1)) (Y x1)) P) x3) x2)) ((ex a) (fun (Xx:a)=> ((and (X Xx)) ((or (Y Xx)) (Z Xx)))))) (fun (x3:(X x1)) (x4:(Y x1))=> ((((ex_intro a) (fun (Xx:a)=> ((and (X Xx)) ((or (Y Xx)) (Z Xx))))) x1) ((((conj (X x1)) ((or (Y x1)) (Z x1))) x3) ((fun (B:Prop)=> (((or_introl (Y x1)) B) x4)) (Z x1)))))))))) (fun (x0:((ex a) (fun (Xx:a)=> ((and (X Xx)) (Z Xx)))))=> (((fun (P:Prop) (x1:(forall (x0:a), (((and (X x0)) (Z x0))->P)))=> (((((ex_ind a) (fun (Xx:a)=> ((and (X Xx)) (Z Xx)))) P) x1) x0)) ((ex a) (fun (Xx:a)=> ((and (X Xx)) ((or (Y Xx)) (Z Xx)))))) (fun (x1:a) (x2:((and (X x1)) (Z x1)))=> (((fun (P:Type) (x3:((X x1)->((Z x1)->P)))=> (((((and_rect (X x1)) (Z x1)) P) x3) x2)) ((ex a) (fun (Xx:a)=> ((and (X Xx)) ((or (Y Xx)) (Z Xx)))))) (fun (x3:(X x1)) (x4:(Z x1))=> ((((ex_intro a) (fun (Xx:a)=> ((and (X Xx)) ((or (Y Xx)) (Z Xx))))) x1) ((((conj (X x1)) ((or (Y x1)) (Z x1))) x3) (((or_intror (Y x1)) (Z x1)) x4)))))))))) as proof of (((or ((ex a) (fun (Xx:a)=> ((and (X Xx)) (Y Xx))))) ((ex a) (fun (Xx:a)=> ((and (X Xx)) (Z Xx)))))->((ex a) (fun (Xx:a)=> ((and (X Xx)) ((or (Y Xx)) (Z Xx)))))) % Found ((conj00 (fun (x:((ex a) (fun (Xx:a)=> ((and (X Xx)) ((or (Y Xx)) (Z Xx))))))=> (((fun (P:Prop) (x0:(forall (x:a), (((and (X x)) ((or (Y x)) (Z x)))->P)))=> (((((ex_ind a) (fun (Xx:a)=> ((and (X Xx)) ((or (Y Xx)) (Z Xx))))) P) x0) x)) ((or ((ex a) (fun (Xx:a)=> ((and (X Xx)) (Y Xx))))) ((ex a) (fun (Xx:a)=> ((and (X Xx)) (Z Xx)))))) (fun (x0:a) (x1:((and (X x0)) ((or (Y x0)) (Z x0))))=> (((fun (P:Type) (x2:((X x0)->(((or (Y x0)) (Z x0))->P)))=> (((((and_rect (X x0)) ((or (Y x0)) (Z x0))) P) x2) x1)) ((or ((ex a) (fun (Xx:a)=> ((and (X Xx)) (Y Xx))))) ((ex a) (fun (Xx:a)=> ((and (X Xx)) (Z Xx)))))) (fun (x2:(X x0)) (x3:((or (Y x0)) (Z x0)))=> ((((fun (P:Prop) (x4:((Y x0)->P)) (x5:((Z x0)->P))=> ((((((or_ind (Y x0)) (Z x0)) P) x4) x5) x3)) ((or ((ex a) (fun (Xx:a)=> ((and (X Xx)) (Y Xx))))) ((ex a) (fun (Xx:a)=> ((and (X Xx)) (Z Xx)))))) (fun (x4:(Y x0))=> (((or_introl ((ex a) (fun (Xx:a)=> ((and (X Xx)) (Y Xx))))) ((ex a) (fun (Xx:a)=> ((and (X Xx)) (Z Xx))))) ((((ex_intro a) (fun (Xx:a)=> ((and (X Xx)) (Y Xx)))) x0) ((((conj (X x0)) (Y x0)) x2) x4))))) (fun (x4:(Z x0))=> (((or_intror ((ex a) (fun (Xx:a)=> ((and (X Xx)) (Y Xx))))) ((ex a) (fun (Xx:a)=> ((and (X Xx)) (Z Xx))))) ((((ex_intro a) (fun (Xx:a)=> ((and (X Xx)) (Z Xx)))) x0) ((((conj (X x0)) (Z x0)) x2) x4))))))))))) (fun (x:((or ((ex a) (fun (Xx:a)=> ((and (X Xx)) (Y Xx))))) ((ex a) (fun (Xx:a)=> ((and (X Xx)) (Z Xx))))))=> ((((fun (P:Prop) (x0:(((ex a) (fun (Xx:a)=> ((and (X Xx)) (Y Xx))))->P)) (x1:(((ex a) (fun (Xx:a)=> ((and (X Xx)) (Z Xx))))->P))=> ((((((or_ind ((ex a) (fun (Xx:a)=> ((and (X Xx)) (Y Xx))))) ((ex a) (fun (Xx:a)=> ((and (X Xx)) (Z Xx))))) P) x0) x1) x)) ((ex a) (fun (Xx:a)=> ((and (X Xx)) ((or (Y Xx)) (Z Xx)))))) (fun (x0:((ex a) (fun (Xx:a)=> ((and (X Xx)) (Y Xx)))))=> (((fun (P:Prop) (x1:(forall (x0:a), (((and (X x0)) (Y x0))->P)))=> (((((ex_ind a) (fun (Xx:a)=> ((and (X Xx)) (Y Xx)))) P) x1) x0)) ((ex a) (fun (Xx:a)=> ((and (X Xx)) ((or (Y Xx)) (Z Xx)))))) (fun (x1:a) (x2:((and (X x1)) (Y x1)))=> (((fun (P:Type) (x3:((X x1)->((Y x1)->P)))=> (((((and_rect (X x1)) (Y x1)) P) x3) x2)) ((ex a) (fun (Xx:a)=> ((and (X Xx)) ((or (Y Xx)) (Z Xx)))))) (fun (x3:(X x1)) (x4:(Y x1))=> ((((ex_intro a) (fun (Xx:a)=> ((and (X Xx)) ((or (Y Xx)) (Z Xx))))) x1) ((((conj (X x1)) ((or (Y x1)) (Z x1))) x3) ((fun (B:Prop)=> (((or_introl (Y x1)) B) x4)) (Z x1)))))))))) (fun (x0:((ex a) (fun (Xx:a)=> ((and (X Xx)) (Z Xx)))))=> (((fun (P:Prop) (x1:(forall (x0:a), (((and (X x0)) (Z x0))->P)))=> (((((ex_ind a) (fun (Xx:a)=> ((and (X Xx)) (Z Xx)))) P) x1) x0)) ((ex a) (fun (Xx:a)=> ((and (X Xx)) ((or (Y Xx)) (Z Xx)))))) (fun (x1:a) (x2:((and (X x1)) (Z x1)))=> (((fun (P:Type) (x3:((X x1)->((Z x1)->P)))=> (((((and_rect (X x1)) (Z x1)) P) x3) x2)) ((ex a) (fun (Xx:a)=> ((and (X Xx)) ((or (Y Xx)) (Z Xx)))))) (fun (x3:(X x1)) (x4:(Z x1))=> ((((ex_intro a) (fun (Xx:a)=> ((and (X Xx)) ((or (Y Xx)) (Z Xx))))) x1) ((((conj (X x1)) ((or (Y x1)) (Z x1))) x3) (((or_intror (Y x1)) (Z x1)) x4))))))))))) as proof of ((iff ((ex a) (fun (Xx:a)=> ((and (X Xx)) ((or (Y Xx)) (Z Xx)))))) ((or ((ex a) (fun (Xx:a)=> ((and (X Xx)) (Y Xx))))) ((ex a) (fun (Xx:a)=> ((and (X Xx)) (Z Xx)))))) % Found (((conj0 (((or ((ex a) (fun (Xx:a)=> ((and (X Xx)) (Y Xx))))) ((ex a) (fun (Xx:a)=> ((and (X Xx)) (Z Xx)))))->((ex a) (fun (Xx:a)=> ((and (X Xx)) ((or (Y Xx)) (Z Xx))))))) (fun (x:((ex a) (fun (Xx:a)=> ((and (X Xx)) ((or (Y Xx)) (Z Xx))))))=> (((fun (P:Prop) (x0:(forall (x:a), (((and (X x)) ((or (Y x)) (Z x)))->P)))=> (((((ex_ind a) (fun (Xx:a)=> ((and (X Xx)) ((or (Y Xx)) (Z Xx))))) P) x0) x)) ((or ((ex a) (fun (Xx:a)=> ((and (X Xx)) (Y Xx))))) ((ex a) (fun (Xx:a)=> ((and (X Xx)) (Z Xx)))))) (fun (x0:a) (x1:((and (X x0)) ((or (Y x0)) (Z x0))))=> (((fun (P:Type) (x2:((X x0)->(((or (Y x0)) (Z x0))->P)))=> (((((and_rect (X x0)) ((or (Y x0)) (Z x0))) P) x2) x1)) ((or ((ex a) (fun (Xx:a)=> ((and (X Xx)) (Y Xx))))) ((ex a) (fun (Xx:a)=> ((and (X Xx)) (Z Xx)))))) (fun (x2:(X x0)) (x3:((or (Y x0)) (Z x0)))=> ((((fun (P:Prop) (x4:((Y x0)->P)) (x5:((Z x0)->P))=> ((((((or_ind (Y x0)) (Z x0)) P) x4) x5) x3)) ((or ((ex a) (fun (Xx:a)=> ((and (X Xx)) (Y Xx))))) ((ex a) (fun (Xx:a)=> ((and (X Xx)) (Z Xx)))))) (fun (x4:(Y x0))=> (((or_introl ((ex a) (fun (Xx:a)=> ((and (X Xx)) (Y Xx))))) ((ex a) (fun (Xx:a)=> ((and (X Xx)) (Z Xx))))) ((((ex_intro a) (fun (Xx:a)=> ((and (X Xx)) (Y Xx)))) x0) ((((conj (X x0)) (Y x0)) x2) x4))))) (fun (x4:(Z x0))=> (((or_intror ((ex a) (fun (Xx:a)=> ((and (X Xx)) (Y Xx))))) ((ex a) (fun (Xx:a)=> ((and (X Xx)) (Z Xx))))) ((((ex_intro a) (fun (Xx:a)=> ((and (X Xx)) (Z Xx)))) x0) ((((conj (X x0)) (Z x0)) x2) x4))))))))))) (fun (x:((or ((ex a) (fun (Xx:a)=> ((and (X Xx)) (Y Xx))))) ((ex a) (fun (Xx:a)=> ((and (X Xx)) (Z Xx))))))=> ((((fun (P:Prop) (x0:(((ex a) (fun (Xx:a)=> ((and (X Xx)) (Y Xx))))->P)) (x1:(((ex a) (fun (Xx:a)=> ((and (X Xx)) (Z Xx))))->P))=> ((((((or_ind ((ex a) (fun (Xx:a)=> ((and (X Xx)) (Y Xx))))) ((ex a) (fun (Xx:a)=> ((and (X Xx)) (Z Xx))))) P) x0) x1) x)) ((ex a) (fun (Xx:a)=> ((and (X Xx)) ((or (Y Xx)) (Z Xx)))))) (fun (x0:((ex a) (fun (Xx:a)=> ((and (X Xx)) (Y Xx)))))=> (((fun (P:Prop) (x1:(forall (x0:a), (((and (X x0)) (Y x0))->P)))=> (((((ex_ind a) (fun (Xx:a)=> ((and (X Xx)) (Y Xx)))) P) x1) x0)) ((ex a) (fun (Xx:a)=> ((and (X Xx)) ((or (Y Xx)) (Z Xx)))))) (fun (x1:a) (x2:((and (X x1)) (Y x1)))=> (((fun (P:Type) (x3:((X x1)->((Y x1)->P)))=> (((((and_rect (X x1)) (Y x1)) P) x3) x2)) ((ex a) (fun (Xx:a)=> ((and (X Xx)) ((or (Y Xx)) (Z Xx)))))) (fun (x3:(X x1)) (x4:(Y x1))=> ((((ex_intro a) (fun (Xx:a)=> ((and (X Xx)) ((or (Y Xx)) (Z Xx))))) x1) ((((conj (X x1)) ((or (Y x1)) (Z x1))) x3) ((fun (B:Prop)=> (((or_introl (Y x1)) B) x4)) (Z x1)))))))))) (fun (x0:((ex a) (fun (Xx:a)=> ((and (X Xx)) (Z Xx)))))=> (((fun (P:Prop) (x1:(forall (x0:a), (((and (X x0)) (Z x0))->P)))=> (((((ex_ind a) (fun (Xx:a)=> ((and (X Xx)) (Z Xx)))) P) x1) x0)) ((ex a) (fun (Xx:a)=> ((and (X Xx)) ((or (Y Xx)) (Z Xx)))))) (fun (x1:a) (x2:((and (X x1)) (Z x1)))=> (((fun (P:Type) (x3:((X x1)->((Z x1)->P)))=> (((((and_rect (X x1)) (Z x1)) P) x3) x2)) ((ex a) (fun (Xx:a)=> ((and (X Xx)) ((or (Y Xx)) (Z Xx)))))) (fun (x3:(X x1)) (x4:(Z x1))=> ((((ex_intro a) (fun (Xx:a)=> ((and (X Xx)) ((or (Y Xx)) (Z Xx))))) x1) ((((conj (X x1)) ((or (Y x1)) (Z x1))) x3) (((or_intror (Y x1)) (Z x1)) x4))))))))))) as proof of ((iff ((ex a) (fun (Xx:a)=> ((and (X Xx)) ((or (Y Xx)) (Z Xx)))))) ((or ((ex a) (fun (Xx:a)=> ((and (X Xx)) (Y Xx))))) ((ex a) (fun (Xx:a)=> ((and (X Xx)) (Z Xx)))))) % Found ((((conj (((ex a) (fun (Xx:a)=> ((and (X Xx)) ((or (Y Xx)) (Z Xx)))))->((or ((ex a) (fun (Xx:a)=> ((and (X Xx)) (Y Xx))))) ((ex a) (fun (Xx:a)=> ((and (X Xx)) (Z Xx))))))) (((or ((ex a) (fun (Xx:a)=> ((and (X Xx)) (Y Xx))))) ((ex a) (fun (Xx:a)=> ((and (X Xx)) (Z Xx)))))->((ex a) (fun (Xx:a)=> ((and (X Xx)) ((or (Y Xx)) (Z Xx))))))) (fun (x:((ex a) (fun (Xx:a)=> ((and (X Xx)) ((or (Y Xx)) (Z Xx))))))=> (((fun (P:Prop) (x0:(forall (x:a), (((and (X x)) ((or (Y x)) (Z x)))->P)))=> (((((ex_ind a) (fun (Xx:a)=> ((and (X Xx)) ((or (Y Xx)) (Z Xx))))) P) x0) x)) ((or ((ex a) (fun (Xx:a)=> ((and (X Xx)) (Y Xx))))) ((ex a) (fun (Xx:a)=> ((and (X Xx)) (Z Xx)))))) (fun (x0:a) (x1:((and (X x0)) ((or (Y x0)) (Z x0))))=> (((fun (P:Type) (x2:((X x0)->(((or (Y x0)) (Z x0))->P)))=> (((((and_rect (X x0)) ((or (Y x0)) (Z x0))) P) x2) x1)) ((or ((ex a) (fun (Xx:a)=> ((and (X Xx)) (Y Xx))))) ((ex a) (fun (Xx:a)=> ((and (X Xx)) (Z Xx)))))) (fun (x2:(X x0)) (x3:((or (Y x0)) (Z x0)))=> ((((fun (P:Prop) (x4:((Y x0)->P)) (x5:((Z x0)->P))=> ((((((or_ind (Y x0)) (Z x0)) P) x4) x5) x3)) ((or ((ex a) (fun (Xx:a)=> ((and (X Xx)) (Y Xx))))) ((ex a) (fun (Xx:a)=> ((and (X Xx)) (Z Xx)))))) (fun (x4:(Y x0))=> (((or_introl ((ex a) (fun (Xx:a)=> ((and (X Xx)) (Y Xx))))) ((ex a) (fun (Xx:a)=> ((and (X Xx)) (Z Xx))))) ((((ex_intro a) (fun (Xx:a)=> ((and (X Xx)) (Y Xx)))) x0) ((((conj (X x0)) (Y x0)) x2) x4))))) (fun (x4:(Z x0))=> (((or_intror ((ex a) (fun (Xx:a)=> ((and (X Xx)) (Y Xx))))) ((ex a) (fun (Xx:a)=> ((and (X Xx)) (Z Xx))))) ((((ex_intro a) (fun (Xx:a)=> ((and (X Xx)) (Z Xx)))) x0) ((((conj (X x0)) (Z x0)) x2) x4))))))))))) (fun (x:((or ((ex a) (fun (Xx:a)=> ((and (X Xx)) (Y Xx))))) ((ex a) (fun (Xx:a)=> ((and (X Xx)) (Z Xx))))))=> ((((fun (P:Prop) (x0:(((ex a) (fun (Xx:a)=> ((and (X Xx)) (Y Xx))))->P)) (x1:(((ex a) (fun (Xx:a)=> ((and (X Xx)) (Z Xx))))->P))=> ((((((or_ind ((ex a) (fun (Xx:a)=> ((and (X Xx)) (Y Xx))))) ((ex a) (fun (Xx:a)=> ((and (X Xx)) (Z Xx))))) P) x0) x1) x)) ((ex a) (fun (Xx:a)=> ((and (X Xx)) ((or (Y Xx)) (Z Xx)))))) (fun (x0:((ex a) (fun (Xx:a)=> ((and (X Xx)) (Y Xx)))))=> (((fun (P:Prop) (x1:(forall (x0:a), (((and (X x0)) (Y x0))->P)))=> (((((ex_ind a) (fun (Xx:a)=> ((and (X Xx)) (Y Xx)))) P) x1) x0)) ((ex a) (fun (Xx:a)=> ((and (X Xx)) ((or (Y Xx)) (Z Xx)))))) (fun (x1:a) (x2:((and (X x1)) (Y x1)))=> (((fun (P:Type) (x3:((X x1)->((Y x1)->P)))=> (((((and_rect (X x1)) (Y x1)) P) x3) x2)) ((ex a) (fun (Xx:a)=> ((and (X Xx)) ((or (Y Xx)) (Z Xx)))))) (fun (x3:(X x1)) (x4:(Y x1))=> ((((ex_intro a) (fun (Xx:a)=> ((and (X Xx)) ((or (Y Xx)) (Z Xx))))) x1) ((((conj (X x1)) ((or (Y x1)) (Z x1))) x3) ((fun (B:Prop)=> (((or_introl (Y x1)) B) x4)) (Z x1)))))))))) (fun (x0:((ex a) (fun (Xx:a)=> ((and (X Xx)) (Z Xx)))))=> (((fun (P:Prop) (x1:(forall (x0:a), (((and (X x0)) (Z x0))->P)))=> (((((ex_ind a) (fun (Xx:a)=> ((and (X Xx)) (Z Xx)))) P) x1) x0)) ((ex a) (fun (Xx:a)=> ((and (X Xx)) ((or (Y Xx)) (Z Xx)))))) (fun (x1:a) (x2:((and (X x1)) (Z x1)))=> (((fun (P:Type) (x3:((X x1)->((Z x1)->P)))=> (((((and_rect (X x1)) (Z x1)) P) x3) x2)) ((ex a) (fun (Xx:a)=> ((and (X Xx)) ((or (Y Xx)) (Z Xx)))))) (fun (x3:(X x1)) (x4:(Z x1))=> ((((ex_intro a) (fun (Xx:a)=> ((and (X Xx)) ((or (Y Xx)) (Z Xx))))) x1) ((((conj (X x1)) ((or (Y x1)) (Z x1))) x3) (((or_intror (Y x1)) (Z x1)) x4))))))))))) as proof of ((iff ((ex a) (fun (Xx:a)=> ((and (X Xx)) ((or (Y Xx)) (Z Xx)))))) ((or ((ex a) (fun (Xx:a)=> ((and (X Xx)) (Y Xx))))) ((ex a) (fun (Xx:a)=> ((and (X Xx)) (Z Xx)))))) % Found (fun (Z:(a->Prop))=> ((((conj (((ex a) (fun (Xx:a)=> ((and (X Xx)) ((or (Y Xx)) (Z Xx)))))->((or ((ex a) (fun (Xx:a)=> ((and (X Xx)) (Y Xx))))) ((ex a) (fun (Xx:a)=> ((and (X Xx)) (Z Xx))))))) (((or ((ex a) (fun (Xx:a)=> ((and (X Xx)) (Y Xx))))) ((ex a) (fun (Xx:a)=> ((and (X Xx)) (Z Xx)))))->((ex a) (fun (Xx:a)=> ((and (X Xx)) ((or (Y Xx)) (Z Xx))))))) (fun (x:((ex a) (fun (Xx:a)=> ((and (X Xx)) ((or (Y Xx)) (Z Xx))))))=> (((fun (P:Prop) (x0:(forall (x:a), (((and (X x)) ((or (Y x)) (Z x)))->P)))=> (((((ex_ind a) (fun (Xx:a)=> ((and (X Xx)) ((or (Y Xx)) (Z Xx))))) P) x0) x)) ((or ((ex a) (fun (Xx:a)=> ((and (X Xx)) (Y Xx))))) ((ex a) (fun (Xx:a)=> ((and (X Xx)) (Z Xx)))))) (fun (x0:a) (x1:((and (X x0)) ((or (Y x0)) (Z x0))))=> (((fun (P:Type) (x2:((X x0)->(((or (Y x0)) (Z x0))->P)))=> (((((and_rect (X x0)) ((or (Y x0)) (Z x0))) P) x2) x1)) ((or ((ex a) (fun (Xx:a)=> ((and (X Xx)) (Y Xx))))) ((ex a) (fun (Xx:a)=> ((and (X Xx)) (Z Xx)))))) (fun (x2:(X x0)) (x3:((or (Y x0)) (Z x0)))=> ((((fun (P:Prop) (x4:((Y x0)->P)) (x5:((Z x0)->P))=> ((((((or_ind (Y x0)) (Z x0)) P) x4) x5) x3)) ((or ((ex a) (fun (Xx:a)=> ((and (X Xx)) (Y Xx))))) ((ex a) (fun (Xx:a)=> ((and (X Xx)) (Z Xx)))))) (fun (x4:(Y x0))=> (((or_introl ((ex a) (fun (Xx:a)=> ((and (X Xx)) (Y Xx))))) ((ex a) (fun (Xx:a)=> ((and (X Xx)) (Z Xx))))) ((((ex_intro a) (fun (Xx:a)=> ((and (X Xx)) (Y Xx)))) x0) ((((conj (X x0)) (Y x0)) x2) x4))))) (fun (x4:(Z x0))=> (((or_intror ((ex a) (fun (Xx:a)=> ((and (X Xx)) (Y Xx))))) ((ex a) (fun (Xx:a)=> ((and (X Xx)) (Z Xx))))) ((((ex_intro a) (fun (Xx:a)=> ((and (X Xx)) (Z Xx)))) x0) ((((conj (X x0)) (Z x0)) x2) x4))))))))))) (fun (x:((or ((ex a) (fun (Xx:a)=> ((and (X Xx)) (Y Xx))))) ((ex a) (fun (Xx:a)=> ((and (X Xx)) (Z Xx))))))=> ((((fun (P:Prop) (x0:(((ex a) (fun (Xx:a)=> ((and (X Xx)) (Y Xx))))->P)) (x1:(((ex a) (fun (Xx:a)=> ((and (X Xx)) (Z Xx))))->P))=> ((((((or_ind ((ex a) (fun (Xx:a)=> ((and (X Xx)) (Y Xx))))) ((ex a) (fun (Xx:a)=> ((and (X Xx)) (Z Xx))))) P) x0) x1) x)) ((ex a) (fun (Xx:a)=> ((and (X Xx)) ((or (Y Xx)) (Z Xx)))))) (fun (x0:((ex a) (fun (Xx:a)=> ((and (X Xx)) (Y Xx)))))=> (((fun (P:Prop) (x1:(forall (x0:a), (((and (X x0)) (Y x0))->P)))=> (((((ex_ind a) (fun (Xx:a)=> ((and (X Xx)) (Y Xx)))) P) x1) x0)) ((ex a) (fun (Xx:a)=> ((and (X Xx)) ((or (Y Xx)) (Z Xx)))))) (fun (x1:a) (x2:((and (X x1)) (Y x1)))=> (((fun (P:Type) (x3:((X x1)->((Y x1)->P)))=> (((((and_rect (X x1)) (Y x1)) P) x3) x2)) ((ex a) (fun (Xx:a)=> ((and (X Xx)) ((or (Y Xx)) (Z Xx)))))) (fun (x3:(X x1)) (x4:(Y x1))=> ((((ex_intro a) (fun (Xx:a)=> ((and (X Xx)) ((or (Y Xx)) (Z Xx))))) x1) ((((conj (X x1)) ((or (Y x1)) (Z x1))) x3) ((fun (B:Prop)=> (((or_introl (Y x1)) B) x4)) (Z x1)))))))))) (fun (x0:((ex a) (fun (Xx:a)=> ((and (X Xx)) (Z Xx)))))=> (((fun (P:Prop) (x1:(forall (x0:a), (((and (X x0)) (Z x0))->P)))=> (((((ex_ind a) (fun (Xx:a)=> ((and (X Xx)) (Z Xx)))) P) x1) x0)) ((ex a) (fun (Xx:a)=> ((and (X Xx)) ((or (Y Xx)) (Z Xx)))))) (fun (x1:a) (x2:((and (X x1)) (Z x1)))=> (((fun (P:Type) (x3:((X x1)->((Z x1)->P)))=> (((((and_rect (X x1)) (Z x1)) P) x3) x2)) ((ex a) (fun (Xx:a)=> ((and (X Xx)) ((or (Y Xx)) (Z Xx)))))) (fun (x3:(X x1)) (x4:(Z x1))=> ((((ex_intro a) (fun (Xx:a)=> ((and (X Xx)) ((or (Y Xx)) (Z Xx))))) x1) ((((conj (X x1)) ((or (Y x1)) (Z x1))) x3) (((or_intror (Y x1)) (Z x1)) x4)))))))))))) as proof of ((iff ((ex a) (fun (Xx:a)=> ((and (X Xx)) ((or (Y Xx)) (Z Xx)))))) ((or ((ex a) (fun (Xx:a)=> ((and (X Xx)) (Y Xx))))) ((ex a) (fun (Xx:a)=> ((and (X Xx)) (Z Xx)))))) % Found (fun (Y:(a->Prop)) (Z:(a->Prop))=> ((((conj (((ex a) (fun (Xx:a)=> ((and (X Xx)) ((or (Y Xx)) (Z Xx)))))->((or ((ex a) (fun (Xx:a)=> ((and (X Xx)) (Y Xx))))) ((ex a) (fun (Xx:a)=> ((and (X Xx)) (Z Xx))))))) (((or ((ex a) (fun (Xx:a)=> ((and (X Xx)) (Y Xx))))) ((ex a) (fun (Xx:a)=> ((and (X Xx)) (Z Xx)))))->((ex a) (fun (Xx:a)=> ((and (X Xx)) ((or (Y Xx)) (Z Xx))))))) (fun (x:((ex a) (fun (Xx:a)=> ((and (X Xx)) ((or (Y Xx)) (Z Xx))))))=> (((fun (P:Prop) (x0:(forall (x:a), (((and (X x)) ((or (Y x)) (Z x)))->P)))=> (((((ex_ind a) (fun (Xx:a)=> ((and (X Xx)) ((or (Y Xx)) (Z Xx))))) P) x0) x)) ((or ((ex a) (fun (Xx:a)=> ((and (X Xx)) (Y Xx))))) ((ex a) (fun (Xx:a)=> ((and (X Xx)) (Z Xx)))))) (fun (x0:a) (x1:((and (X x0)) ((or (Y x0)) (Z x0))))=> (((fun (P:Type) (x2:((X x0)->(((or (Y x0)) (Z x0))->P)))=> (((((and_rect (X x0)) ((or (Y x0)) (Z x0))) P) x2) x1)) ((or ((ex a) (fun (Xx:a)=> ((and (X Xx)) (Y Xx))))) ((ex a) (fun (Xx:a)=> ((and (X Xx)) (Z Xx)))))) (fun (x2:(X x0)) (x3:((or (Y x0)) (Z x0)))=> ((((fun (P:Prop) (x4:((Y x0)->P)) (x5:((Z x0)->P))=> ((((((or_ind (Y x0)) (Z x0)) P) x4) x5) x3)) ((or ((ex a) (fun (Xx:a)=> ((and (X Xx)) (Y Xx))))) ((ex a) (fun (Xx:a)=> ((and (X Xx)) (Z Xx)))))) (fun (x4:(Y x0))=> (((or_introl ((ex a) (fun (Xx:a)=> ((and (X Xx)) (Y Xx))))) ((ex a) (fun (Xx:a)=> ((and (X Xx)) (Z Xx))))) ((((ex_intro a) (fun (Xx:a)=> ((and (X Xx)) (Y Xx)))) x0) ((((conj (X x0)) (Y x0)) x2) x4))))) (fun (x4:(Z x0))=> (((or_intror ((ex a) (fun (Xx:a)=> ((and (X Xx)) (Y Xx))))) ((ex a) (fun (Xx:a)=> ((and (X Xx)) (Z Xx))))) ((((ex_intro a) (fun (Xx:a)=> ((and (X Xx)) (Z Xx)))) x0) ((((conj (X x0)) (Z x0)) x2) x4))))))))))) (fun (x:((or ((ex a) (fun (Xx:a)=> ((and (X Xx)) (Y Xx))))) ((ex a) (fun (Xx:a)=> ((and (X Xx)) (Z Xx))))))=> ((((fun (P:Prop) (x0:(((ex a) (fun (Xx:a)=> ((and (X Xx)) (Y Xx))))->P)) (x1:(((ex a) (fun (Xx:a)=> ((and (X Xx)) (Z Xx))))->P))=> ((((((or_ind ((ex a) (fun (Xx:a)=> ((and (X Xx)) (Y Xx))))) ((ex a) (fun (Xx:a)=> ((and (X Xx)) (Z Xx))))) P) x0) x1) x)) ((ex a) (fun (Xx:a)=> ((and (X Xx)) ((or (Y Xx)) (Z Xx)))))) (fun (x0:((ex a) (fun (Xx:a)=> ((and (X Xx)) (Y Xx)))))=> (((fun (P:Prop) (x1:(forall (x0:a), (((and (X x0)) (Y x0))->P)))=> (((((ex_ind a) (fun (Xx:a)=> ((and (X Xx)) (Y Xx)))) P) x1) x0)) ((ex a) (fun (Xx:a)=> ((and (X Xx)) ((or (Y Xx)) (Z Xx)))))) (fun (x1:a) (x2:((and (X x1)) (Y x1)))=> (((fun (P:Type) (x3:((X x1)->((Y x1)->P)))=> (((((and_rect (X x1)) (Y x1)) P) x3) x2)) ((ex a) (fun (Xx:a)=> ((and (X Xx)) ((or (Y Xx)) (Z Xx)))))) (fun (x3:(X x1)) (x4:(Y x1))=> ((((ex_intro a) (fun (Xx:a)=> ((and (X Xx)) ((or (Y Xx)) (Z Xx))))) x1) ((((conj (X x1)) ((or (Y x1)) (Z x1))) x3) ((fun (B:Prop)=> (((or_introl (Y x1)) B) x4)) (Z x1)))))))))) (fun (x0:((ex a) (fun (Xx:a)=> ((and (X Xx)) (Z Xx)))))=> (((fun (P:Prop) (x1:(forall (x0:a), (((and (X x0)) (Z x0))->P)))=> (((((ex_ind a) (fun (Xx:a)=> ((and (X Xx)) (Z Xx)))) P) x1) x0)) ((ex a) (fun (Xx:a)=> ((and (X Xx)) ((or (Y Xx)) (Z Xx)))))) (fun (x1:a) (x2:((and (X x1)) (Z x1)))=> (((fun (P:Type) (x3:((X x1)->((Z x1)->P)))=> (((((and_rect (X x1)) (Z x1)) P) x3) x2)) ((ex a) (fun (Xx:a)=> ((and (X Xx)) ((or (Y Xx)) (Z Xx)))))) (fun (x3:(X x1)) (x4:(Z x1))=> ((((ex_intro a) (fun (Xx:a)=> ((and (X Xx)) ((or (Y Xx)) (Z Xx))))) x1) ((((conj (X x1)) ((or (Y x1)) (Z x1))) x3) (((or_intror (Y x1)) (Z x1)) x4)))))))))))) as proof of (forall (Z:(a->Prop)), ((iff ((ex a) (fun (Xx:a)=> ((and (X Xx)) ((or (Y Xx)) (Z Xx)))))) ((or ((ex a) (fun (Xx:a)=> ((and (X Xx)) (Y Xx))))) ((ex a) (fun (Xx:a)=> ((and (X Xx)) (Z Xx))))))) % Found (fun (X:(a->Prop)) (Y:(a->Prop)) (Z:(a->Prop))=> ((((conj (((ex a) (fun (Xx:a)=> ((and (X Xx)) ((or (Y Xx)) (Z Xx)))))->((or ((ex a) (fun (Xx:a)=> ((and (X Xx)) (Y Xx))))) ((ex a) (fun (Xx:a)=> ((and (X Xx)) (Z Xx))))))) (((or ((ex a) (fun (Xx:a)=> ((and (X Xx)) (Y Xx))))) ((ex a) (fun (Xx:a)=> ((and (X Xx)) (Z Xx)))))->((ex a) (fun (Xx:a)=> ((and (X Xx)) ((or (Y Xx)) (Z Xx))))))) (fun (x:((ex a) (fun (Xx:a)=> ((and (X Xx)) ((or (Y Xx)) (Z Xx))))))=> (((fun (P:Prop) (x0:(forall (x:a), (((and (X x)) ((or (Y x)) (Z x)))->P)))=> (((((ex_ind a) (fun (Xx:a)=> ((and (X Xx)) ((or (Y Xx)) (Z Xx))))) P) x0) x)) ((or ((ex a) (fun (Xx:a)=> ((and (X Xx)) (Y Xx))))) ((ex a) (fun (Xx:a)=> ((and (X Xx)) (Z Xx)))))) (fun (x0:a) (x1:((and (X x0)) ((or (Y x0)) (Z x0))))=> (((fun (P:Type) (x2:((X x0)->(((or (Y x0)) (Z x0))->P)))=> (((((and_rect (X x0)) ((or (Y x0)) (Z x0))) P) x2) x1)) ((or ((ex a) (fun (Xx:a)=> ((and (X Xx)) (Y Xx))))) ((ex a) (fun (Xx:a)=> ((and (X Xx)) (Z Xx)))))) (fun (x2:(X x0)) (x3:((or (Y x0)) (Z x0)))=> ((((fun (P:Prop) (x4:((Y x0)->P)) (x5:((Z x0)->P))=> ((((((or_ind (Y x0)) (Z x0)) P) x4) x5) x3)) ((or ((ex a) (fun (Xx:a)=> ((and (X Xx)) (Y Xx))))) ((ex a) (fun (Xx:a)=> ((and (X Xx)) (Z Xx)))))) (fun (x4:(Y x0))=> (((or_introl ((ex a) (fun (Xx:a)=> ((and (X Xx)) (Y Xx))))) ((ex a) (fun (Xx:a)=> ((and (X Xx)) (Z Xx))))) ((((ex_intro a) (fun (Xx:a)=> ((and (X Xx)) (Y Xx)))) x0) ((((conj (X x0)) (Y x0)) x2) x4))))) (fun (x4:(Z x0))=> (((or_intror ((ex a) (fun (Xx:a)=> ((and (X Xx)) (Y Xx))))) ((ex a) (fun (Xx:a)=> ((and (X Xx)) (Z Xx))))) ((((ex_intro a) (fun (Xx:a)=> ((and (X Xx)) (Z Xx)))) x0) ((((conj (X x0)) (Z x0)) x2) x4))))))))))) (fun (x:((or ((ex a) (fun (Xx:a)=> ((and (X Xx)) (Y Xx))))) ((ex a) (fun (Xx:a)=> ((and (X Xx)) (Z Xx))))))=> ((((fun (P:Prop) (x0:(((ex a) (fun (Xx:a)=> ((and (X Xx)) (Y Xx))))->P)) (x1:(((ex a) (fun (Xx:a)=> ((and (X Xx)) (Z Xx))))->P))=> ((((((or_ind ((ex a) (fun (Xx:a)=> ((and (X Xx)) (Y Xx))))) ((ex a) (fun (Xx:a)=> ((and (X Xx)) (Z Xx))))) P) x0) x1) x)) ((ex a) (fun (Xx:a)=> ((and (X Xx)) ((or (Y Xx)) (Z Xx)))))) (fun (x0:((ex a) (fun (Xx:a)=> ((and (X Xx)) (Y Xx)))))=> (((fun (P:Prop) (x1:(forall (x0:a), (((and (X x0)) (Y x0))->P)))=> (((((ex_ind a) (fun (Xx:a)=> ((and (X Xx)) (Y Xx)))) P) x1) x0)) ((ex a) (fun (Xx:a)=> ((and (X Xx)) ((or (Y Xx)) (Z Xx)))))) (fun (x1:a) (x2:((and (X x1)) (Y x1)))=> (((fun (P:Type) (x3:((X x1)->((Y x1)->P)))=> (((((and_rect (X x1)) (Y x1)) P) x3) x2)) ((ex a) (fun (Xx:a)=> ((and (X Xx)) ((or (Y Xx)) (Z Xx)))))) (fun (x3:(X x1)) (x4:(Y x1))=> ((((ex_intro a) (fun (Xx:a)=> ((and (X Xx)) ((or (Y Xx)) (Z Xx))))) x1) ((((conj (X x1)) ((or (Y x1)) (Z x1))) x3) ((fun (B:Prop)=> (((or_introl (Y x1)) B) x4)) (Z x1)))))))))) (fun (x0:((ex a) (fun (Xx:a)=> ((and (X Xx)) (Z Xx)))))=> (((fun (P:Prop) (x1:(forall (x0:a), (((and (X x0)) (Z x0))->P)))=> (((((ex_ind a) (fun (Xx:a)=> ((and (X Xx)) (Z Xx)))) P) x1) x0)) ((ex a) (fun (Xx:a)=> ((and (X Xx)) ((or (Y Xx)) (Z Xx)))))) (fun (x1:a) (x2:((and (X x1)) (Z x1)))=> (((fun (P:Type) (x3:((X x1)->((Z x1)->P)))=> (((((and_rect (X x1)) (Z x1)) P) x3) x2)) ((ex a) (fun (Xx:a)=> ((and (X Xx)) ((or (Y Xx)) (Z Xx)))))) (fun (x3:(X x1)) (x4:(Z x1))=> ((((ex_intro a) (fun (Xx:a)=> ((and (X Xx)) ((or (Y Xx)) (Z Xx))))) x1) ((((conj (X x1)) ((or (Y x1)) (Z x1))) x3) (((or_intror (Y x1)) (Z x1)) x4)))))))))))) as proof of (forall (Y:(a->Prop)) (Z:(a->Prop)), ((iff ((ex a) (fun (Xx:a)=> ((and (X Xx)) ((or (Y Xx)) (Z Xx)))))) ((or ((ex a) (fun (Xx:a)=> ((and (X Xx)) (Y Xx))))) ((ex a) (fun (Xx:a)=> ((and (X Xx)) (Z Xx))))))) % Found (fun (X:(a->Prop)) (Y:(a->Prop)) (Z:(a->Prop))=> ((((conj (((ex a) (fun (Xx:a)=> ((and (X Xx)) ((or (Y Xx)) (Z Xx)))))->((or ((ex a) (fun (Xx:a)=> ((and (X Xx)) (Y Xx))))) ((ex a) (fun (Xx:a)=> ((and (X Xx)) (Z Xx))))))) (((or ((ex a) (fun (Xx:a)=> ((and (X Xx)) (Y Xx))))) ((ex a) (fun (Xx:a)=> ((and (X Xx)) (Z Xx)))))->((ex a) (fun (Xx:a)=> ((and (X Xx)) ((or (Y Xx)) (Z Xx))))))) (fun (x:((ex a) (fun (Xx:a)=> ((and (X Xx)) ((or (Y Xx)) (Z Xx))))))=> (((fun (P:Prop) (x0:(forall (x:a), (((and (X x)) ((or (Y x)) (Z x)))->P)))=> (((((ex_ind a) (fun (Xx:a)=> ((and (X Xx)) ((or (Y Xx)) (Z Xx))))) P) x0) x)) ((or ((ex a) (fun (Xx:a)=> ((and (X Xx)) (Y Xx))))) ((ex a) (fun (Xx:a)=> ((and (X Xx)) (Z Xx)))))) (fun (x0:a) (x1:((and (X x0)) ((or (Y x0)) (Z x0))))=> (((fun (P:Type) (x2:((X x0)->(((or (Y x0)) (Z x0))->P)))=> (((((and_rect (X x0)) ((or (Y x0)) (Z x0))) P) x2) x1)) ((or ((ex a) (fun (Xx:a)=> ((and (X Xx)) (Y Xx))))) ((ex a) (fun (Xx:a)=> ((and (X Xx)) (Z Xx)))))) (fun (x2:(X x0)) (x3:((or (Y x0)) (Z x0)))=> ((((fun (P:Prop) (x4:((Y x0)->P)) (x5:((Z x0)->P))=> ((((((or_ind (Y x0)) (Z x0)) P) x4) x5) x3)) ((or ((ex a) (fun (Xx:a)=> ((and (X Xx)) (Y Xx))))) ((ex a) (fun (Xx:a)=> ((and (X Xx)) (Z Xx)))))) (fun (x4:(Y x0))=> (((or_introl ((ex a) (fun (Xx:a)=> ((and (X Xx)) (Y Xx))))) ((ex a) (fun (Xx:a)=> ((and (X Xx)) (Z Xx))))) ((((ex_intro a) (fun (Xx:a)=> ((and (X Xx)) (Y Xx)))) x0) ((((conj (X x0)) (Y x0)) x2) x4))))) (fun (x4:(Z x0))=> (((or_intror ((ex a) (fun (Xx:a)=> ((and (X Xx)) (Y Xx))))) ((ex a) (fun (Xx:a)=> ((and (X Xx)) (Z Xx))))) ((((ex_intro a) (fun (Xx:a)=> ((and (X Xx)) (Z Xx)))) x0) ((((conj (X x0)) (Z x0)) x2) x4))))))))))) (fun (x:((or ((ex a) (fun (Xx:a)=> ((and (X Xx)) (Y Xx))))) ((ex a) (fun (Xx:a)=> ((and (X Xx)) (Z Xx))))))=> ((((fun (P:Prop) (x0:(((ex a) (fun (Xx:a)=> ((and (X Xx)) (Y Xx))))->P)) (x1:(((ex a) (fun (Xx:a)=> ((and (X Xx)) (Z Xx))))->P))=> ((((((or_ind ((ex a) (fun (Xx:a)=> ((and (X Xx)) (Y Xx))))) ((ex a) (fun (Xx:a)=> ((and (X Xx)) (Z Xx))))) P) x0) x1) x)) ((ex a) (fun (Xx:a)=> ((and (X Xx)) ((or (Y Xx)) (Z Xx)))))) (fun (x0:((ex a) (fun (Xx:a)=> ((and (X Xx)) (Y Xx)))))=> (((fun (P:Prop) (x1:(forall (x0:a), (((and (X x0)) (Y x0))->P)))=> (((((ex_ind a) (fun (Xx:a)=> ((and (X Xx)) (Y Xx)))) P) x1) x0)) ((ex a) (fun (Xx:a)=> ((and (X Xx)) ((or (Y Xx)) (Z Xx)))))) (fun (x1:a) (x2:((and (X x1)) (Y x1)))=> (((fun (P:Type) (x3:((X x1)->((Y x1)->P)))=> (((((and_rect (X x1)) (Y x1)) P) x3) x2)) ((ex a) (fun (Xx:a)=> ((and (X Xx)) ((or (Y Xx)) (Z Xx)))))) (fun (x3:(X x1)) (x4:(Y x1))=> ((((ex_intro a) (fun (Xx:a)=> ((and (X Xx)) ((or (Y Xx)) (Z Xx))))) x1) ((((conj (X x1)) ((or (Y x1)) (Z x1))) x3) ((fun (B:Prop)=> (((or_introl (Y x1)) B) x4)) (Z x1)))))))))) (fun (x0:((ex a) (fun (Xx:a)=> ((and (X Xx)) (Z Xx)))))=> (((fun (P:Prop) (x1:(forall (x0:a), (((and (X x0)) (Z x0))->P)))=> (((((ex_ind a) (fun (Xx:a)=> ((and (X Xx)) (Z Xx)))) P) x1) x0)) ((ex a) (fun (Xx:a)=> ((and (X Xx)) ((or (Y Xx)) (Z Xx)))))) (fun (x1:a) (x2:((and (X x1)) (Z x1)))=> (((fun (P:Type) (x3:((X x1)->((Z x1)->P)))=> (((((and_rect (X x1)) (Z x1)) P) x3) x2)) ((ex a) (fun (Xx:a)=> ((and (X Xx)) ((or (Y Xx)) (Z Xx)))))) (fun (x3:(X x1)) (x4:(Z x1))=> ((((ex_intro a) (fun (Xx:a)=> ((and (X Xx)) ((or (Y Xx)) (Z Xx))))) x1) ((((conj (X x1)) ((or (Y x1)) (Z x1))) x3) (((or_intror (Y x1)) (Z x1)) x4)))))))))))) as proof of (forall (X:(a->Prop)) (Y:(a->Prop)) (Z:(a->Prop)), ((iff ((ex a) (fun (Xx:a)=> ((and (X Xx)) ((or (Y Xx)) (Z Xx)))))) ((or ((ex a) (fun (Xx:a)=> ((and (X Xx)) (Y Xx))))) ((ex a) (fun (Xx:a)=> ((and (X Xx)) (Z Xx))))))) % Got proof (fun (X:(a->Prop)) (Y:(a->Prop)) (Z:(a->Prop))=> ((((conj (((ex a) (fun (Xx:a)=> ((and (X Xx)) ((or (Y Xx)) (Z Xx)))))->((or ((ex a) (fun (Xx:a)=> ((and (X Xx)) (Y Xx))))) ((ex a) (fun (Xx:a)=> ((and (X Xx)) (Z Xx))))))) (((or ((ex a) (fun (Xx:a)=> ((and (X Xx)) (Y Xx))))) ((ex a) (fun (Xx:a)=> ((and (X Xx)) (Z Xx)))))->((ex a) (fun (Xx:a)=> ((and (X Xx)) ((or (Y Xx)) (Z Xx))))))) (fun (x:((ex a) (fun (Xx:a)=> ((and (X Xx)) ((or (Y Xx)) (Z Xx))))))=> (((fun (P:Prop) (x0:(forall (x:a), (((and (X x)) ((or (Y x)) (Z x)))->P)))=> (((((ex_ind a) (fun (Xx:a)=> ((and (X Xx)) ((or (Y Xx)) (Z Xx))))) P) x0) x)) ((or ((ex a) (fun (Xx:a)=> ((and (X Xx)) (Y Xx))))) ((ex a) (fun (Xx:a)=> ((and (X Xx)) (Z Xx)))))) (fun (x0:a) (x1:((and (X x0)) ((or (Y x0)) (Z x0))))=> (((fun (P:Type) (x2:((X x0)->(((or (Y x0)) (Z x0))->P)))=> (((((and_rect (X x0)) ((or (Y x0)) (Z x0))) P) x2) x1)) ((or ((ex a) (fun (Xx:a)=> ((and (X Xx)) (Y Xx))))) ((ex a) (fun (Xx:a)=> ((and (X Xx)) (Z Xx)))))) (fun (x2:(X x0)) (x3:((or (Y x0)) (Z x0)))=> ((((fun (P:Prop) (x4:((Y x0)->P)) (x5:((Z x0)->P))=> ((((((or_ind (Y x0)) (Z x0)) P) x4) x5) x3)) ((or ((ex a) (fun (Xx:a)=> ((and (X Xx)) (Y Xx))))) ((ex a) (fun (Xx:a)=> ((and (X Xx)) (Z Xx)))))) (fun (x4:(Y x0))=> (((or_introl ((ex a) (fun (Xx:a)=> ((and (X Xx)) (Y Xx))))) ((ex a) (fun (Xx:a)=> ((and (X Xx)) (Z Xx))))) ((((ex_intro a) (fun (Xx:a)=> ((and (X Xx)) (Y Xx)))) x0) ((((conj (X x0)) (Y x0)) x2) x4))))) (fun (x4:(Z x0))=> (((or_intror ((ex a) (fun (Xx:a)=> ((and (X Xx)) (Y Xx))))) ((ex a) (fun (Xx:a)=> ((and (X Xx)) (Z Xx))))) ((((ex_intro a) (fun (Xx:a)=> ((and (X Xx)) (Z Xx)))) x0) ((((conj (X x0)) (Z x0)) x2) x4))))))))))) (fun (x:((or ((ex a) (fun (Xx:a)=> ((and (X Xx)) (Y Xx))))) ((ex a) (fun (Xx:a)=> ((and (X Xx)) (Z Xx))))))=> ((((fun (P:Prop) (x0:(((ex a) (fun (Xx:a)=> ((and (X Xx)) (Y Xx))))->P)) (x1:(((ex a) (fun (Xx:a)=> ((and (X Xx)) (Z Xx))))->P))=> ((((((or_ind ((ex a) (fun (Xx:a)=> ((and (X Xx)) (Y Xx))))) ((ex a) (fun (Xx:a)=> ((and (X Xx)) (Z Xx))))) P) x0) x1) x)) ((ex a) (fun (Xx:a)=> ((and (X Xx)) ((or (Y Xx)) (Z Xx)))))) (fun (x0:((ex a) (fun (Xx:a)=> ((and (X Xx)) (Y Xx)))))=> (((fun (P:Prop) (x1:(forall (x0:a), (((and (X x0)) (Y x0))->P)))=> (((((ex_ind a) (fun (Xx:a)=> ((and (X Xx)) (Y Xx)))) P) x1) x0)) ((ex a) (fun (Xx:a)=> ((and (X Xx)) ((or (Y Xx)) (Z Xx)))))) (fun (x1:a) (x2:((and (X x1)) (Y x1)))=> (((fun (P:Type) (x3:((X x1)->((Y x1)->P)))=> (((((and_rect (X x1)) (Y x1)) P) x3) x2)) ((ex a) (fun (Xx:a)=> ((and (X Xx)) ((or (Y Xx)) (Z Xx)))))) (fun (x3:(X x1)) (x4:(Y x1))=> ((((ex_intro a) (fun (Xx:a)=> ((and (X Xx)) ((or (Y Xx)) (Z Xx))))) x1) ((((conj (X x1)) ((or (Y x1)) (Z x1))) x3) ((fun (B:Prop)=> (((or_introl (Y x1)) B) x4)) (Z x1)))))))))) (fun (x0:((ex a) (fun (Xx:a)=> ((and (X Xx)) (Z Xx)))))=> (((fun (P:Prop) (x1:(forall (x0:a), (((and (X x0)) (Z x0))->P)))=> (((((ex_ind a) (fun (Xx:a)=> ((and (X Xx)) (Z Xx)))) P) x1) x0)) ((ex a) (fun (Xx:a)=> ((and (X Xx)) ((or (Y Xx)) (Z Xx)))))) (fun (x1:a) (x2:((and (X x1)) (Z x1)))=> (((fun (P:Type) (x3:((X x1)->((Z x1)->P)))=> (((((and_rect (X x1)) (Z x1)) P) x3) x2)) ((ex a) (fun (Xx:a)=> ((and (X Xx)) ((or (Y Xx)) (Z Xx)))))) (fun (x3:(X x1)) (x4:(Z x1))=> ((((ex_intro a) (fun (Xx:a)=> ((and (X Xx)) ((or (Y Xx)) (Z Xx))))) x1) ((((conj (X x1)) ((or (Y x1)) (Z x1))) x3) (((or_intror (Y x1)) (Z x1)) x4)))))))))))) % Time elapsed = 71.537771s % node=8967 cost=1299.000000 depth=37 % :::::::::::::::::::::: % % SZS status Theorem for /export/starexec/sandbox/benchmark/theBenchmark.p % % SZS output start Proof for /export/starexec/sandbox/benchmark/theBenchmark.p % (fun (X:(a->Prop)) (Y:(a->Prop)) (Z:(a->Prop))=> ((((conj (((ex a) (fun (Xx:a)=> ((and (X Xx)) ((or (Y Xx)) (Z Xx)))))->((or ((ex a) (fun (Xx:a)=> ((and (X Xx)) (Y Xx))))) ((ex a) (fun (Xx:a)=> ((and (X Xx)) (Z Xx))))))) (((or ((ex a) (fun (Xx:a)=> ((and (X Xx)) (Y Xx))))) ((ex a) (fun (Xx:a)=> ((and (X Xx)) (Z Xx)))))->((ex a) (fun (Xx:a)=> ((and (X Xx)) ((or (Y Xx)) (Z Xx))))))) (fun (x:((ex a) (fun (Xx:a)=> ((and (X Xx)) ((or (Y Xx)) (Z Xx))))))=> (((fun (P:Prop) (x0:(forall (x:a), (((and (X x)) ((or (Y x)) (Z x)))->P)))=> (((((ex_ind a) (fun (Xx:a)=> ((and (X Xx)) ((or (Y Xx)) (Z Xx))))) P) x0) x)) ((or ((ex a) (fun (Xx:a)=> ((and (X Xx)) (Y Xx))))) ((ex a) (fun (Xx:a)=> ((and (X Xx)) (Z Xx)))))) (fun (x0:a) (x1:((and (X x0)) ((or (Y x0)) (Z x0))))=> (((fun (P:Type) (x2:((X x0)->(((or (Y x0)) (Z x0))->P)))=> (((((and_rect (X x0)) ((or (Y x0)) (Z x0))) P) x2) x1)) ((or ((ex a) (fun (Xx:a)=> ((and (X Xx)) (Y Xx))))) ((ex a) (fun (Xx:a)=> ((and (X Xx)) (Z Xx)))))) (fun (x2:(X x0)) (x3:((or (Y x0)) (Z x0)))=> ((((fun (P:Prop) (x4:((Y x0)->P)) (x5:((Z x0)->P))=> ((((((or_ind (Y x0)) (Z x0)) P) x4) x5) x3)) ((or ((ex a) (fun (Xx:a)=> ((and (X Xx)) (Y Xx))))) ((ex a) (fun (Xx:a)=> ((and (X Xx)) (Z Xx)))))) (fun (x4:(Y x0))=> (((or_introl ((ex a) (fun (Xx:a)=> ((and (X Xx)) (Y Xx))))) ((ex a) (fun (Xx:a)=> ((and (X Xx)) (Z Xx))))) ((((ex_intro a) (fun (Xx:a)=> ((and (X Xx)) (Y Xx)))) x0) ((((conj (X x0)) (Y x0)) x2) x4))))) (fun (x4:(Z x0))=> (((or_intror ((ex a) (fun (Xx:a)=> ((and (X Xx)) (Y Xx))))) ((ex a) (fun (Xx:a)=> ((and (X Xx)) (Z Xx))))) ((((ex_intro a) (fun (Xx:a)=> ((and (X Xx)) (Z Xx)))) x0) ((((conj (X x0)) (Z x0)) x2) x4))))))))))) (fun (x:((or ((ex a) (fun (Xx:a)=> ((and (X Xx)) (Y Xx))))) ((ex a) (fun (Xx:a)=> ((and (X Xx)) (Z Xx))))))=> ((((fun (P:Prop) (x0:(((ex a) (fun (Xx:a)=> ((and (X Xx)) (Y Xx))))->P)) (x1:(((ex a) (fun (Xx:a)=> ((and (X Xx)) (Z Xx))))->P))=> ((((((or_ind ((ex a) (fun (Xx:a)=> ((and (X Xx)) (Y Xx))))) ((ex a) (fun (Xx:a)=> ((and (X Xx)) (Z Xx))))) P) x0) x1) x)) ((ex a) (fun (Xx:a)=> ((and (X Xx)) ((or (Y Xx)) (Z Xx)))))) (fun (x0:((ex a) (fun (Xx:a)=> ((and (X Xx)) (Y Xx)))))=> (((fun (P:Prop) (x1:(forall (x0:a), (((and (X x0)) (Y x0))->P)))=> (((((ex_ind a) (fun (Xx:a)=> ((and (X Xx)) (Y Xx)))) P) x1) x0)) ((ex a) (fun (Xx:a)=> ((and (X Xx)) ((or (Y Xx)) (Z Xx)))))) (fun (x1:a) (x2:((and (X x1)) (Y x1)))=> (((fun (P:Type) (x3:((X x1)->((Y x1)->P)))=> (((((and_rect (X x1)) (Y x1)) P) x3) x2)) ((ex a) (fun (Xx:a)=> ((and (X Xx)) ((or (Y Xx)) (Z Xx)))))) (fun (x3:(X x1)) (x4:(Y x1))=> ((((ex_intro a) (fun (Xx:a)=> ((and (X Xx)) ((or (Y Xx)) (Z Xx))))) x1) ((((conj (X x1)) ((or (Y x1)) (Z x1))) x3) ((fun (B:Prop)=> (((or_introl (Y x1)) B) x4)) (Z x1)))))))))) (fun (x0:((ex a) (fun (Xx:a)=> ((and (X Xx)) (Z Xx)))))=> (((fun (P:Prop) (x1:(forall (x0:a), (((and (X x0)) (Z x0))->P)))=> (((((ex_ind a) (fun (Xx:a)=> ((and (X Xx)) (Z Xx)))) P) x1) x0)) ((ex a) (fun (Xx:a)=> ((and (X Xx)) ((or (Y Xx)) (Z Xx)))))) (fun (x1:a) (x2:((and (X x1)) (Z x1)))=> (((fun (P:Type) (x3:((X x1)->((Z x1)->P)))=> (((((and_rect (X x1)) (Z x1)) P) x3) x2)) ((ex a) (fun (Xx:a)=> ((and (X Xx)) ((or (Y Xx)) (Z Xx)))))) (fun (x3:(X x1)) (x4:(Z x1))=> ((((ex_intro a) (fun (Xx:a)=> ((and (X Xx)) ((or (Y Xx)) (Z Xx))))) x1) ((((conj (X x1)) ((or (Y x1)) (Z x1))) x3) (((or_intror (Y x1)) (Z x1)) x4)))))))))))) % % SZS output end Proof for /export/starexec/sandbox/benchmark/theBenchmark.p % EOF %------------------------------------------------------------------------------