(* Proof of lem_sym_so_rdom_eq_rImg                                        *)
unfold symmetry in |- *; intros.
apply axs_extensionnalite; unfold iff in |- *; split; intros.
unfold rdom in H0.
elim (axs_comprehension (fun x : E => exists y : E, In (couple x y) r) a v2);
intros; generalize (H1 H0); clear H0 H1 H2; intros.
elim H0; clear H0; intros; elim H1; clear H1; intros.
generalize (H v2 x H1); clear H; intros.
unfold rImg in |- *.
elim (axs_comprehension (fun y : E => exists x : E, In (couple x y) r) a v2);
intros; apply H3; clear H2 H3; intros.
split; [ auto with zfc | exists x; auto with zfc ].
unfold rImg in H0.
elim (axs_comprehension (fun y : E => exists x : E, In (couple x y) r) a v2);
intros; generalize (H1 H0); clear H0 H1 H2; intros.
elim H0; clear H0; intros; elim H1; clear H1; intros.
generalize (H x v2 H1); clear H H1; intros.
unfold rdom in |- *.
elim (axs_comprehension (fun x : E => exists y : E, In (couple x y) r) a v2);
intros; apply H2; clear H1 H2; intros.
split; [ auto with zfc | exists x; auto with zfc ].
Qed.
(* End of proof of lem_sym_so_rdom_eq_rImg                                 *)
(***************************************************************************)
(* Transitivite                                                            *)
(***************************************************************************)
Definition transitivity (r a : E) (rRel : rel_sig r a a) :=
forall x y z : E,
In (couple x y) r -> In (couple y z) r -> In (couple x z) r.
(***************************************************************************)
(***************************************************************************)
(* Autres relations                                                        *)
(***************************************************************************)
(***************************************************************************)
(***************************************************************************)
(* Trois relations sur un ensemble donne                                   *)
(***************************************************************************)

(***************************************************************************)
(* La relation vide                                                        *)
(***************************************************************************)
Lemma lem_Vide_rel_sig : forall a : E, rel_sig Vide a a.
unfold rel_sig in |- *; intros.