(* End of proof of lem_comp_intermed                                       *)

(***************************************************************************)
(***************************************************************************)
(* Redefinissons maintenant une application dans le style f(x) = y         *)
(***************************************************************************)
(***************************************************************************)
Definition App (f : E) (Af : fun_ f) (x : E) :=
  subset (fun z : E => exists y : E, In (couple x y) f /\ In z y)
    (reunion (Img f)).

(* Specifications: *)
Lemma lem_eval_propertie : forall (f x y : E) (Af : fun_ f), In (couple x y) f -> y = App f Af x.
Lemma lem_eval_prop2 : forall (f x : E) (Af : fun_ f), In x (dom f) -> In (couple x (App f Af x)) f.
Lemma lem_x_in_fun_form : forall (f : E) (Af : fun_ f) (x : E), In x f -> exists a : E, (exists b : E, x = couple a b).