Gradient descent with exact line search: linear rate
ProvedConvexOptimization.gradient_descent_exact_linear_rateLinear convergence of gradient descent with exact line search.
Let with gradient field satisfy, for constants , the two-sided quadratic bounds
i.e. is -strongly convex and -smooth. Let be a global minimizer, , and let be a gradient-descent sequence with exact line search: each iterate has the form for some and is optimal along the ray, for every . Then for every
The error decays geometrically with ratio , so the iteration count to reach accuracy scales with the condition number and with . This is the benchmark against which the mission's goal theorem — Newton's dimension-free, count — is to be read.
Formalization Note Exact line search is expressed as the conjunction of "the step is along with a nonnegative step size" and "no nonnegative step size along that ray gives a smaller value", which avoids assuming a minimizer of the line-search subproblem exists as a chosen value. The minimizer is IsMinOn f Set.univ xstar. Source: B&V §9.3.1, pp. 467–468.
import Mathlib open scoped RealInnerProductSpace ENNReal open MeasureTheory
theorem ConvexOptimization.gradient_descent_exact_linear_rate {n : ℕ} (m M : ℝ)
(hm : 0 < m) (hmM : m ≤ M)
(f : EuclideanSpace ℝ (Fin n) → ℝ)
(g : EuclideanSpace ℝ (Fin n) → EuclideanSpace ℝ (Fin n))
(hg : ∀ x, HasGradientAt f (g x) x)
(hsc : ∀ x y : EuclideanSpace ℝ (Fin n),
f x + ⟪g x, y - x⟫ + m / 2 * ‖y - x‖ ^ 2 ≤ f y)
(hsm : ∀ x y : EuclideanSpace ℝ (Fin n),
f y ≤ f x + ⟪g x, y - x⟫ + M / 2 * ‖y - x‖ ^ 2)
(xstar : EuclideanSpace ℝ (Fin n)) (hstar : IsMinOn f Set.univ xstar)
(x : ℕ → EuclideanSpace ℝ (Fin n))
(hstep : ∀ k, (∃ t : ℝ, 0 ≤ t ∧ x (k + 1) = x k - t • g (x k)) ∧
∀ s : ℝ, 0 ≤ s → f (x (k + 1)) ≤ f (x k - s • g (x k))) :
∀ k, f (x k) - f xstar ≤ (1 - m / M) ^ k * (f (x 0) - f xstar) := by
sorry