Global Instance Permutation_map' :
Proper (@Permutation A ==> @Permutation B) (map f).

(* Specifications: *)
Lemma Permutation_map_inv : forall l1 l2,
Permutation l1 (map f l2) -> exists l3, l1 = map f l3 /\ Permutation l2 l3.
Lemma Permutation_image : forall a l l',
Permutation (a :: l) (map f l') -> exists a', a = f a'.
Lemma Permutation_elt_map_inv: forall l1 l2 l3 l4 a,
Permutation (l1 ++ a :: l2) (l3 ++ map f l4) -> (forall b, a <> f b) ->
exists l1' l2', l3 = l1' ++ a :: l2'.