Definition injective (f : MAP A B) : Prop :=
  forall x y : A, Equal (f x) (f y) -> Equal x y.Definition surjective (f : MAP A B) : Prop :=
  forall y : B, exists x : A, Equal y (f x).Definition bijective (f : MAP A B) : Prop := injective f /\ surjective f.

Lemma surjective_comp : forall (A B : Setoid) (f f' : MAP A B), surjective f -> Equal f f' -> surjective f'.