Proof fun cs H
=> neg_Forall_Exists_neg container_ok_dec (lemma_0 cs H).

(* Specifications: *)
(** This theorem proves that if we are given a collection of containers and the number of things in those containers is greater than the number of containers, then one or more of the containers has more than one thing in it. *)
Theorem pigeonhole_principle
:  forall cs : containers,
num_things cs > num_containers cs ->
Exists (fun c : container => container_num_things c > 1) cs.