(************************************)
(** * Inclusion and extensionality  *)
(************************************)

(** The inclusion relation is defined as expected: *)

Definition SUB (X : Typ1) (A : Rel X) (a : X) (Y : Typ1) 
  (B : Rel Y) (b : Y) : Prop :=
  forall (Z : Typ1) (C : Rel Z) (c : Z), ELT Z C c X A a -> ELT Z C c Y B b.

(* Specifications: *)
Lemma SUB_refl : forall (X : Typ1) (A : Rel X) (a : X), SUB X A a X A a.
Lemma SUB_trans : forall (X : Typ1) (A : Rel X) (a : X) (Y : Typ1) (B : Rel Y) (b : Y) (Z : Typ1) (C : Rel Z) (c : Z), SUB X A a Y B b -> SUB Y B b Z C c -> SUB X A a Z C c.
Theorem extensionality : forall (X : Typ1) (A : Rel X) (a : X) (Y : Typ1) (B : Rel Y) (b : Y), SUB X A a Y B b -> SUB Y B b X A a -> EQV X A a Y B b.