Theorem 3.2, pp. 264–265 — projected subgradient descent with η = R/(L√t) satisfies f((1/t)Σ x_s) − f(x*) ≤ RL/√t
ProvedConvexOptAlg.Subgradient.theorem_3_2Let be compact and convex and convex, with a minimizer . Let and , and fix a horizon . Let be a run of projected subgradient descent
with the constant step , such that is contained in the Euclidean ball of radius centred at and for . Then
This is the dimension-free rate of the projected subgradient method for Lipschitz convex functions; Section 3.5 of the book shows it cannot be improved for black-box first-order methods.
Formalization Note is the set of subgradients relative to (Definition 1.2), and any choice of subgradient is allowed at each step. Compactness and convexity of , convexity of and the existence of are the standing assumptions of Chapter 3 and of the book. and make the step and the bound well defined (Lean's would otherwise give a junk step). The page assumes for every subgradient at every point of (with ); here the bound is assumed only for the subgradients the run uses, a weaker hypothesis and hence a stronger statement. Taken literally with relative subgradients, the page's bound fails at every boundary point of a nonempty compact in , , so the run-wise bound is also what keeps the statement non-vacuous. The run is required only for the steps .
import Mathlib import Definitions.Def_OnlineConvexOpt_FirstOrder_Protocol import Definitions.Def_ConvexOptAlg_Subgradient_Defs
namespace ConvexOptAlg.Subgradient
/-- Bubeck, Theorem 3.2, pp. 264–265: under the assumptions of Chapter 3 and §3.1 (`X` compact
convex, `f` convex on `X`, `X` inside the ball of radius `R > 0` centred at `x₁`, subgradients
bounded by `L > 0`, `x*` a minimizer of `f` on `X`), for every horizon `t ≥ 1`, projected
subgradient descent run for `t` steps with the constant step `η = R/(L√t)` satisfies
`f((1/t) ∑_{s=1}^t x_s) - f(x*) ≤ RL/√t`. The bound `‖g_s‖ ≤ L` is assumed only for the
subgradients the run uses (a weaker hypothesis than the page's). -/
theorem theorem_3_2 {n : ℕ} (X : Set (EuclideanSpace ℝ (Fin n)))
(hXcpt : IsCompact X) (hXconv : Convex ℝ X)
(f : EuclideanSpace ℝ (Fin n) → ℝ) (hf : ConvexOn ℝ X f)
(R L : ℝ) (hR : 0 < R) (hLpos : 0 < L) (t : ℕ) (ht : 1 ≤ t)
(x g : ℕ → EuclideanSpace ℝ (Fin n))
(hrun : IsProjSubgradRun X f (fun _ => R / (L * Real.sqrt t)) x g t)
(hball : X ⊆ Metric.closedBall (x 1) R)
(hL : ∀ s, 1 ≤ s → s ≤ t → ‖g s‖ ≤ L)
(xstar : EuclideanSpace ℝ (Fin n)) (hxstar : xstar ∈ X) (hmin : ∀ y ∈ X, f xstar ≤ f y) :
f ((1 / (t : ℝ)) • ∑ s ∈ Finset.Icc 1 t, x s) - f xstar ≤ R * L / Real.sqrt t := by sorry
end ConvexOptAlg.Subgradient
Confirmed by the mission captain (proposal self-audit).
Confirmed by the moderator at approval.