Lemma B.1, p. 21 — x_s = x^π + B_π^{s−1}(x_1 − x^π) for all s ≥ 1 (x_1 for the printed, undefined x_0)
ProvedAccelVI.MVC.lemma_B_1linear-recursionmomentump2o-batch-pfp2ap2o-gran-per-chapterp2o-plan-paperp2o-v1value-iteration
Let be a valid finite MDP and a policy, with value function . Let be the iterates of Momentum Value Computation with the step sizes (4.2), started from arbitrary , and let be the matrix of App. B. Put
Then
The lemma reduces the convergence of M-VC to the behaviour of the powers of the single matrix .
Formalization Note. The paper prints on the right-hand side; is undefined since there is no , and at the identity forces the vector to be , so the statement uses , matching the analogous Lemma 5.2 for A-VC. Pairs are functions on (Sum.elim), the first copy holding the newer iterate.
Preamble
import Mathlib import Definitions.Def_mm_basic import Definitions.Def_AccelVI_MVC_Setting
Formal statement
namespace AccelVI.MVC
variable {S A : Type*} [Fintype S] [DecidableEq S] [Fintype A]
/-- Lemma B.1, p. 21 (with x₁ for the printed, undefined x₀): for the M-VC iterates with step sizes (4.2),
x_s = (v_s, v_{s−1}) satisfies x_s = x^π + B_π^{s−1}(x₁ − x^π) for all s ≥ 1, where x^π = (v^π, v^π). -/
theorem lemma_B_1 (M : MDP S A) (hM : M.Valid) (pol : S → A → ℝ) (hpol : IsPolicy pol)
(v0 v1 : S → ℝ) (s : ℕ) (hs : 1 ≤ s) :
Sum.elim (mvc M pol (alphaMVC M.lam) (betaMVC M.lam) v0 v1 s)
(mvc M pol (alphaMVC M.lam) (betaMVC M.lam) v0 v1 (s - 1)) =
Sum.elim (valuePol M pol) (valuePol M pol) +
((Bpol M pol) ^ (s - 1)).mulVec
(Sum.elim v1 v0 - Sum.elim (valuePol M pol) (valuePol M pol)) := by sorry
end AccelVI.MVC
Source
Goyal & Grand-Clément, A First-Order Approach to Accelerated Value Iteration, arXiv:1905.09963v7, p. 21, Lemma B.1 (printed x_0 read as x_1)
Human review
Confirmed by the mission captain (proposal self-audit).
Confirmed by the moderator at approval.