Fixpoint maxl (l : list nat) : nat :=
match l with
| nil => 0
| n :: l' => max n (maxl l')
end.

Lemma maxl_eq_maxl {A:Type} f g (l:list A):
(∀ x : A, x ∈ l → f x = g x) →
maxl (map f l) = maxl (map g l).