Dynamic programs with extended-real rewards #
The reward may take the value -∞, as log c does at zero consumption. The value function
stays real-valued and bounded, so the contraction theory applies unchanged.
What this is for #
Every model in this library that handles utility unbounded below does it with a floor:
replace u by max floor u, which is bounded, and then prove separately that the floor
never binds at an optimum. That argument has to be redone per model, and it fails outright
once the state space is unbounded, because the bound on the value function that it needs is
itself inflated by the floor. Admitting -∞ removes the device rather than working around
it.
Why the value function is still bounded #
Two hypotheses do it, and both are economically ordinary:
reward_lebounds the reward above on the feasible graph. Only there: off it the reward may do anything, which matters because an action outside the budget set typically has no sensible reward at all.selectis a continuous feasible policy whose reward is bounded below byrewardMin. This says the agent always has some decent option -- it never faces a situation where every available action is catastrophic. Without it the value would be-∞and there would be nothing to compute.
Between them the supremum sits in [rewardMin - β‖v‖, rewardMax + β‖v‖], so it is finite,
and EReal.toReal turns it back into a bounded continuous real function.
Main results #
LeanEconomics.ExtendedProgram.blackwell: the operator is a contraction.LeanEconomics.ExtendedProgram.exists_optimal_policy: the value function satisfies the Bellman equation, with the reward appearing as anERealand no floor anywhere.
A dynamic program whose reward may be -∞.
- feasible : S → Set A
The actions available at each state.
- upperHemicontinuous_feasible : UpperHemicontinuous self.feasible
- lowerHemicontinuous_feasible : LowerHemicontinuous self.feasible
The reward, continuous into the extended reals and possibly
-∞.- rewardMax : ℝ
An upper bound on the reward, needed only on the feasible graph.
A continuous feasible policy.
- rewardMin : ℝ
Its reward is bounded below: the agent always has a decent option.
The law of motion.
- discount : NNReal
The factor applied to next-period value.
Instances For
Extending a utility by -∞ #
Retrofitting a model that uses a floor means turning its real-valued u, which is only
sensible on positive consumption, into a continuous EReal-valued reward. That is this
lemma, and it is the only shared cost of the retrofit: supply u falling to -∞ at zero
and the extension is continuous.
The extension is monotone when u is monotone on the positives.
The extension is continuous exactly when u falls to -∞ at zero consumption --
which is what makes a floor necessary in the first place, so nothing extra is being
assumed.
The objective, in the extended reals.
Instances For
The value of the one-period problem, in the extended reals.
Equations
- D.maxE v s = LeanEconomics.maxValueE (D.objectiveE v) D.feasible s
Instances For
The upper bound on the one-period value.
Instances For
The lower bound on the one-period value, coming from the feasible selection.
Instances For
The Bellman operator as a bare real-valued function.
Instances For
The Bellman operator on bounded continuous functions, with an extended-real reward.
Equations
Instances For
Blackwell's conditions hold. The extended-real reward is a common summand on both sides of each inequality, so it plays no part: monotonicity and discounting are facts about the continuation term alone.
The supremum is attained: an optimal action exists at every state.
The maximiser correspondence is upper hemicontinuous, by the argmax half of Berge for extended-real objectives.
The operator preserves monotonicity under the same conditions as in the real case.
The value function of the program.
Equations
- D.valueFunction = ⋯.valueFunction ⋯
Instances For
The Bellman equation, with the reward an extended real and no floor anywhere.
The value function is monotone under the same conditions as in the real case.