Definition Injective {A B} (f : A->B) :=
forall x y, f x = f y -> x = y.
Section fix_X.
Variable X:Type.
Implicit Types (A B: list X) (a b c: X).

Lemma map_inj (Y:Type) A B (f: X -> Y) :
Injective f -> map f A = map f B <-> A = B.