End suml.
Section prodl.
Fixpoint prodl (l : list nat) : nat :=
match l with
| nil => 1
| n :: l' => n * prodl l'
end.

(* Specifications: *)
Lemma prodl_bound (l : list nat) (b : nat) :
(forall x, In x l -> x <= b) -> prodl l <= Nat.pow b  (length l).