(* End of proof of lem_fun_part_inv_eval_prop                              *)

(***************************************************************************)
(***************************************************************************)
(* Relation inverse d'une application et applications au cas des bijections*)
(***************************************************************************)
(***************************************************************************)
(***************************************************************************)
(* On peut definir la relation inverse d'une application                   *)
(***************************************************************************)
Definition fun_recip (f : E) (Af : fun_ f) :=
  subset
    (fun c : E =>
     exists x : E, (exists y : E, In (couple x y) f /\ c = couple y x))
    (cartesien (Img f) (dom f)).

Lemma lem_fun_recip_is_fun_under_inj : forall (f : E) (Af : fun_ f), fun_inj f (dom f) (Img f) <-> fun_ (fun_recip f Af).