Parameter
  cardinal_equal_included_equal :
    forall (E : Setoid) (A B : part_set E) (n : nat),
    cardinal A n -> cardinal B n -> included B A -> Equal B A.Parameter
  image_full_surjective :
    forall (E F : Setoid) (f : MAP E F),
    Equal (image_map f) (full F) -> surjective f.

(* Specifications: *)
Lemma finite_injective_surjective : forall (E F : Setoid) (f : MAP E F) (n : nat), cardinal (full E) n -> cardinal (full F) n -> injective f -> surjective f.