Section Equi.
Variable X : Type.
Implicit Types A B : list X.
End Equi.
(* Repeat *)
Instance map_ext_proper A B: Proper (@ pointwise_relation A B (@eq B) ==> (@eq (list A)) ==> (@eq (list B))) (@map A B).
(* ** Lemmas about [hd], [tl] and [removelast] *)

Lemma hd_map (A B: Type) (f: A -> B) (xs : list A) (a : A) :
hd (f a) (map f xs) = f (hd a xs).