Proof
fun X A a x x' H1 H2 E _ e =>
e x x' (eq_refl (opt X) (some X x')) (eq_refl (opt X) (none X)) H1 H2.

Lemma union_intro :
forall (X : Typ1) (A : Rel X) (a : X) (Y : Typ1) (B : Rel Y)
(b : Y) (Z : Typ1) (C : Rel Z) (c : Z),
ELT Y B b Z C c ->
ELT Z C c X A a -> ELT Y B b (opt X) (UNION X A a) (none X).