Berge's maximum theorem for extended-real objectives #
LeanEconomics.Topology.Berge proves the maximum theorem for a real-valued objective. Here
the objective may take the value -∞, which is what a reward like log c does at zero
consumption.
Allowing -∞ is what lets a dynamic program be posed without a floor on the reward. Every
model in this library that uses a floor does so to keep the reward real-valued and bounded,
and then has to prove separately that the floor never binds. With an extended-real
objective the floor is unnecessary from the start.
What changes, and what does not #
Less than one might expect, and two of the changes make the proof simpler: EReal is a
complete lattice, so le_sSup and sSup_le carry no boundedness or nonemptiness side
conditions, unlike their conditionally-complete counterparts.
Upper semicontinuity here goes through attainment rather than interpolation: the supremum
over a nonempty compact set is achieved, so a strict bound at every point of the set is a
strict bound on the supremum. (DenselyOrdered EReal does exist in Mathlib, as
instDenselyOrderedEReal, so the interpolating proof would work too; the argmax half below
uses it.)
Main results #
LeanEconomics.continuous_maxValueE: the maximum theorem forEReal-valued objectives.
The value of a maximisation problem whose objective may be -∞. No boundedness
hypothesis is needed: EReal is a complete lattice.
Equations
- LeanEconomics.maxValueE f Γ x = sSup (f x '' Γ x)
Instances For
The engine, exactly as in the real case: a strict upper bound over the constraint set survives into a neighbourhood of the parameter.
Upper hemicontinuity of the constraint set gives upper semicontinuity of the value. This goes through attainment of the supremum rather than interpolating a midpoint.
Lower hemicontinuity of the constraint set gives lower semicontinuity of the value.
Berge's maximum theorem for an extended-real objective.
At a maximiser the objective equals the value, exactly as in the real case.
A maximiser exists.
Berge's maximum theorem, the maximiser half, for an extended-real objective. The proof is the real one unchanged: away from an open set containing the maximisers the objective is strictly below the value, that gap survives into a neighbourhood by the engine, and lower semicontinuity of the value keeps the value above the gap.