(***** same thing for Range *********)

Definition Range (R : Ens) := REPLACEMENT (Range_prop R).

(* Specifications: *)
Theorem Range_pr1 : forall (R X : Ens) (p : Range_prop R X), IN X (Range R).
Theorem Range_pr2 : forall (R X : Ens) (i : IN X (Range R)), Range_prop R X.
Theorem inverse_EV_th1 : forall (R Y : Ens) (i : IN Y (Range R)), IN (PAIR (inverse_EV R Y) Y) R.
Lemma Range_th1_Out : IN Y (Range R).
Theorem Range_th1 : forall (R X Y : Ens) (i : IN (PAIR X Y) R), IN Y (Range R).
Lemma eval_in_range_Out : IN Y (Range R).
Theorem EV_in_range : forall (R X : Ens) (i : IN X (Domain R)), IN (EV R X) (Range R).
Lemma inv_eval_in_domain_Out : IN X (Domain R).
Theorem inverse_EV_in_domain : forall (R Y : Ens) (i : IN Y (Range R)), IN (inverse_EV R Y) (Domain R).