Proof of Theorem 1, eq. (15) — the robust Bellman equation over pure actions
ProvedRobustDP.FiniteHorizon.eq15_pure_actionsFix a finite horizon AMDP, an epoch , a state , and a bounded function of an action and a next state (in the proof of Theorem 1, ). For an action and a measure on next states write
Let range over the probability measures on , and let range over the families with for every . Then
The first equality says that the adversary may choose its measure separately for each action (Rectangularity); the second, that randomizing over actions does not raise the robust value. Together they turn the supremum over randomized decision rules into a supremum over single actions in the robust Bellman equation (11).
Formalization Note The statement is the one-epoch content of the display (15), with the continuation value replaced by an arbitrary bounded . Suprema and infima are not assumed to be attained.
import Mathlib import Definitions.Def_RobustDP_FiniteHorizon_Value
namespace RobustDP.FiniteHorizon
/-- Proof of Theorem 1, eq. (15) (Iyengar, TR-2002-07, p. 7): at one epoch `t < N` and state `s`,
for a bounded continuation `W(a, s')` (in the proof, `W(a, s') = V*_{n+1}(h_n, a, s')`),
randomizing over actions does not help:
`sup_q inf_{(p_{sa})_a} Σ_a q(a) E^{p_{sa}}[r_t(s,a,·) + W(a,·)]
= sup_q Σ_a q(a) inf_{p ∈ P_t(s,a)} E^p[r_t(s,a,·) + W(a,·)]
= sup_{a ∈ A_t(s)} inf_{p ∈ P_t(s,a)} E^p[r_t(s,a,·) + W(a,·)]`,
where `q` ranges over the probability measures on `A_t(s)` and the family `(p_{sa})_a` over
selections `p_{sa} ∈ P_t(s, a)`. -/
theorem eq15_pure_actions {S A : Type*} [Countable S] [Countable A] (M : AMDP S A)
(t : ℕ) (ht : t < M.N) (s : S) (W : A → S → ℝ) (hW : ∃ B : ℝ, ∀ a s', |W a s'| ≤ B) :
(⨆ q : {q : PMF A // ∀ a ∈ q.support, a ∈ M.Aset t s},
⨅ p : Selection M t s,
∑' a, (q.1 a).toReal * expect (p.1 a) (fun s' => M.r t s a s' + W a s')) =
(⨆ q : {q : PMF A // ∀ a ∈ q.support, a ∈ M.Aset t s},
∑' a, (q.1 a).toReal *
⨅ p : M.P t s a, expect (p : PMF S) (fun s' => M.r t s a s' + W a s')) ∧
(⨆ q : {q : PMF A // ∀ a ∈ q.support, a ∈ M.Aset t s},
∑' a, (q.1 a).toReal *
⨅ p : M.P t s a, expect (p : PMF S) (fun s' => M.r t s a s' + W a s')) =
⨆ a : M.Aset t s,
⨅ p : M.P t s a, expect (p : PMF S) (fun s' => M.r t s a s' + W a s') := by sorry
end RobustDP.FiniteHorizon
Confirmed by the mission captain (proposal self-audit).
Confirmed by the moderator at approval.