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

Lemma forallb_map : forall A B (l : list A) (p : B -> bool) (f : A -> B),
(forall x, In x l -> p (f x) = true) ->
forallb p (map f l) = true.