End FilterSubseq.
Arguments subseq_uniqP [T s1 s2].
Section EqMap.
Variables (n0 : nat) (T1 : eqType) (x1 : T1).
Variables (T2 : eqType) (x2 : T2) (f : T1 -> T2).
Implicit Type s : seq T1.

(* Specifications: *)
Lemma map_f s x : x \in s -> f x \in map f s.
Lemma mapP s y : reflect (exists2 x, x \in s & y = f x) (y \in map f s).
Lemma map_uniq s : uniq (map f s) -> uniq s.
Lemma map_inj_in_uniq s : {in s &, injective f} -> uniq (map f s) = uniq s.
Lemma map_subseq s1 s2 : subseq s1 s2 -> subseq (map f s1) (map f s2).
Lemma nth_index_map s x0 x :
{in s &, injective f} -> x \in s -> nth x0 s (index (f x) (map f s)) = x.
Lemma perm_map s t : perm_eq s t -> perm_eq (map f s) (map f t).
End EqMap.