(* Proof of lem_xyinf_yxinrecipf                                           *)
intros; unfold fun_recip in |- *.
elim
(axs_comprehension
(fun c : E =>
exists x0 : E, (exists y0 : E, In (couple x0 y0) f /\ c = couple y0 x0))
(cartesien (Img f) (dom f)) (couple y x)); intros;
apply H1; clear H0 H1; intros.
split;
[ idtac | exists x; exists y; split; [ auto with zfc | reflexivity ] ].
generalize (lem_fun_and_dom f x y Af H); intros.
generalize (lem_fun_and_img f x y Af H); intros.
elim (lem_cartesian_propertie (Img f) (dom f) (couple y x)); intros; apply H3;
clear H2 H3; intros.
exists y; exists x; split;
[ auto with zfc | split; [ auto with zfc | reflexivity ] ].
Qed.
(* End of proof of lem_xyinf_yxinrecipf                                    *)

(* Specifications: *)
(***************************************************************************)
(* Si f est une bijection alors fun_recip est une bijection                *)
(***************************************************************************)
Lemma lem_fun_recip_is_bij_under_bij :
forall (f : E) (Af : fun_ f),
fun_bij f (dom f) (Img f) -> fun_bij (fun_recip f Af) (Img f) (dom f).