proposition: Lemma fold_right_max_is_max {A} : forall (f : A -> nat) ns n, List.In n ns -> f n <= fold_right (fun n acc => max (f n) acc) 0 ns.
proof: Proof. induction ns; intros; inversion H; subst; simpl; apply Nat.max_le_iff; [ left | right ]; auto. Qed.
imports: Fiat.Common.Coq__8_4__8_5__Compat Coq.ZArith.ZArith Coq.Lists.List Coq.Lists.SetoidList Coq.Bool.Bool Fiat.Common Fiat.Common.List.Operations Fiat.Common.Equality Fiat.Common.List.FlattenList Fiat.Common.LogicFacts