(* Proof of lem_fun_is_rel                                                 *)
unfold fun_ in Af.
elim Af; clear Af; intros; elim H0; clear H0; intros; elim H0; clear H0;
intros.
unfold inc in H0.
generalize (H0 c H); clear H H0 H1; intros.
elim (lem_cartesian_propertie x x0 c); intros; generalize (H0 H);
clear H H0 H1; intros.
elim H; clear H; intros; elim H; clear H; intros; elim H; clear H; intros;
elim H0; clear H0; intros.
exists x1; exists x2; auto with zfc.
Qed.
(* End of proof of lem_fun_is_rel                                          *)
(***************************************************************************)
(* Le domaine et l'image d'une relation non vide sont non vides            *)
(***************************************************************************)
(* Lemma lem_rel_not_empty_so_rdom_not_empty : (r:E)(rRel:(rel r)) ~(r=Vide) -> ~((rdom2 r rRel)=Vide) . (* Proof of lem_rel_not_empty_so_rdom_not_empty                            *)
Save.
(* End of proof of lem_rel_not_empty_so_rdom_not_empty                     *)
*)
(***************************************************************************)
(* Considerons maintenant des relations dont l'image est tout ou partie du *)
(* domaine.                                                                *)
(***************************************************************************)
(***************************************************************************)
(* Reflexivite & irreflexivite                                             *)
(***************************************************************************)
Definition reflexivity (r a : E) (rRel : rel_sig r a a) :=
forall x : E, In x (rdom r a a rRel) -> In (couple x x) r.
Definition irreflexivity (r a : E) (rRel : rel_sig r a a) :=
forall x : E, In x (rdom r a a rRel) -> ~ In (couple x x) r.

(* Specifications: *)
(***************************************************************************)
(* Le domaine d'une relation reflexive est inclus dans l'image             *)
(***************************************************************************)
Lemma lem_refl_dom_inc_img :
forall (r a : E) (rRel : rel_sig r a a),
reflexivity r a rRel -> inc (rdom r a a rRel) (rImg r a a rRel).