Section fonctions.
Variable E : Ensf.
Variable F : Ensf.
Variable f : Elt -> Elt.
(*Definition d'une application*)
Definition application := forall x : Elt, dans x E -> dans (f x) F.
Hint Unfold application.
(*Definition de l'injectivite*)
Definition is_mono :=
forall x y : Elt, dans x E -> dans y E -> f x = f y :>Elt -> x = y :>Elt.
(*Definition surjectivite*)
Definition is_epi :=
application /\
(forall x : Elt, dans x F -> exists2 y : Elt, x = f y & dans y E).
Definition is_iso := is_epi /\ is_mono.

Lemma mono_epi_imp_iso : is_mono -> is_epi -> is_iso.