Theorem 3.4 — SDG function values converge at the geometric rate
OpenShorNonsmooth.SpaceDilation.sdg_geometric_convergenceLet (), , , , and let satisfy (3.18) on ,
and let be a bound for on (the book's ). Run the SDG method with , , stepsizes and constant coefficient , as in Theorem 3.3. Then:
- there exist a constant and indices with
- for every ,
The SDG method thus decreases function values at the speed of a geometric progression whose ratio depends only on the constants of (3.18) and on the dimension, and not on the conditioning of under nonsingular linear changes of variables.
Formalization Note The printed statement (p. 58) reads . Its proof (p. 59) derives the bound with the factor from the lower inequality of (3.18), and the minimum comes from Theorem 3.2, whose proof bounds ; part 2 states what the proof establishes. The book takes almost differentiable and its almost-gradient; the Lean statement holds for every satisfying (3.18) and bounded by on . The constant and the subsequence are chosen after all the data (they may depend on the run). as in the proofs of Theorems 3.1–3.3. If the method stops at , the state is repeated.
import Mathlib import Definitions.Def_ShorNonsmooth_SpaceDilation_SDGMethod
namespace ShorNonsmooth.SpaceDilation
/-- Shor (1985), pp. 58–59, Theorem 3.4, with the record bound its proof (p. 59) establishes.
Under the assumptions of Theorem 3.3 (with `B₀ = I`), and with `G` a bound for `‖g‖` on
`S_d = {x : ‖x - x*‖ ≤ d}` (the book's `G = max_{x ∈ S_d} ‖g_f(x)‖`):
1. there are a constant `c > 0` and a strictly increasing sequence of indices `k_p` with
`f(x_{k_p}) - f(x*) ≤ c α^{-k_p/n}` for every `p`;
2. for every `k ≥ 1`, `min_{0 ≤ i ≤ k-1} [f(x_i) - f(x*)] ≤ G √(k(α² - 1)) d / (N √(α^{2k/n} - 1))`.
(The printed statement has no factor `1/N` and takes the minimum over `1 ≤ i ≤ k`; the proof
derives the bound with `1/N` from Theorem 3.2, whose proof bounds `g̃_0, …, g̃_{k-1}`.
See the mission's HARD.md.) -/
theorem sdg_geometric_convergence {n : ℕ} (hn : 0 < n)
(f : EuclideanSpace ℝ (Fin n) → ℝ)
(g : EuclideanSpace ℝ (Fin n) → EuclideanSpace ℝ (Fin n))
(xstar x₀ : EuclideanSpace ℝ (Fin n)) (d M N α G : ℝ)
(hd : 0 < d) (hN : 0 < N) (hNM : N < M)
(h318 : ∀ x ∈ Metric.closedBall xstar d,
N * (f x - f xstar) ≤ inner ℝ (g x) (x - xstar) ∧
inner ℝ (g x) (x - xstar) ≤ M * (f x - f xstar))
(hG : ∀ x ∈ Metric.closedBall xstar d, ‖g x‖ ≤ G)
(hx₀ : x₀ ∈ Metric.closedBall xstar d)
(hα : 1 < α) (hαMN : α ≤ (M + N) / (M - N)) :
(∃ c : ℝ, 0 < c ∧ ∃ kp : ℕ → ℕ, StrictMono kp ∧
∀ p : ℕ,
f (sdg g (fun _ x gt => 2 * M * N / (M + N) * (f x - f xstar) / ‖gt‖) (fun _ => α) x₀
(ContinuousLinearEquiv.refl ℝ _) (kp p)).x - f xstar ≤
c * α ^ (-(kp p : ℝ) / n)) ∧
∀ k : ℕ, 1 ≤ k → ∃ i : ℕ, i < k ∧
f (sdg g (fun _ x gt => 2 * M * N / (M + N) * (f x - f xstar) / ‖gt‖) (fun _ => α) x₀
(ContinuousLinearEquiv.refl ℝ _) i).x - f xstar ≤
G * Real.sqrt (k * (α ^ 2 - 1)) * d / (N * Real.sqrt (α ^ ((2 * k : ℝ) / n) - 1)) := by sorry
end ShorNonsmooth.SpaceDilation
Confirmed by the mission captain (proposal self-audit).
Confirmed by the moderator at approval.