Theorem 3.2 — R-linearly convergent iterates eventually satisfy the nonmonotone condition (1.4)
ProvedNonmonotoneLS.RLinear.eventual_sufficient_decreaseLet be continuously differentiable and let be a minimizer of . Let , , () be any sequences with (not necessarily a run of the algorithm), and write . Assume:
- converges R-linearly to : there are and with for all ;
- the lie in a closed, bounded, convex set on which satisfies (3.1) with a constant (for all ) and is Lipschitz continuous with constant ;
- the direction assumption holds: there are with and for all sufficiently large ;
- for all ;
- is given by the recursion (1.6) with weights , , and .
Then for every , condition (1.4),
holds for all sufficiently large .
So with averaging weights close enough to 1, the sufficient-decrease test (1.4) of the nonmonotone line search is eventually passed by the steps of any R-linearly convergent descent method of this kind.
Formalization Note. The statement follows the page. is the parameter of (1.4), arbitrary in . The printed proof applies (3.1) and the Lipschitz bound with , which need not lie in ; a cluster point of the in the compact set is also a minimizer and can take its place, so the statement is unaffected. The proof's limit of can likewise be replaced by a positive lower bound . If the hypothesis forces for all .
import Mathlib import Definitions.Def_NonmonotoneLS_Shared_Params import Definitions.Def_NonmonotoneLS_Shared_Cost import Definitions.Def_NonmonotoneLS_Shared_Steps import Definitions.Def_NonmonotoneLS_RLinear_Run import Definitions.Def_NonmonotoneLS_RLinear_Regions import Definitions.Def_NonmonotoneLS_RLinear_Constants open scoped InnerProductSpace NNReal open Filter
namespace NonmonotoneLS.RLinear
/-- Theorem 3.2 (p. 1051): let `x*` minimize `f` and let `x_{k+1} = x_k + α_k d_k` be any sequence
with `f(x_k) - f(x*) ≤ cθ^k`, `θ ∈ (0, 1)`, lying in a closed, bounded, convex set `K` on which
(3.1) holds with constant `γ` and `∇f` is `L`-Lipschitz, whose directions satisfy (2.4)–(2.5) for
all sufficiently large `k`, and whose steps satisfy `0 < α_k ≤ μ`. If `C_k` is given by (1.6) with
`η_k ∈ [η_min, η_max] ⊆ [0, 1]` and `η_min > θ`, then for every `δ ∈ (0, 1)` the condition (1.4),
`f(x_k + α_k d_k) ≤ C_k + δ α_k ∇f(x_k) d_k`, holds for all sufficiently large `k`. -/
theorem eventual_sufficient_decrease {n : ℕ} (f : EuclideanSpace ℝ (Fin n) → ℝ)
(hf : ContDiff ℝ 1 f) (xstar : EuclideanSpace ℝ (Fin n)) (hmin : ∀ y, f xstar ≤ f y)
(x d : ℕ → EuclideanSpace ℝ (Fin n)) (α η : ℕ → ℝ)
(hupd : ∀ k, x (k + 1) = x k + α k • d k)
(θ c : ℝ) (hθ0 : 0 < θ) (hθ1 : θ < 1) (hRlin : ∀ k, f (x k) - f xstar ≤ c * θ ^ k)
(K : Set (EuclideanSpace ℝ (Fin n))) (hKc : IsClosed K) (hKb : Bornology.IsBounded K)
(hKconv : Convex ℝ K) (hxK : ∀ k, x k ∈ K)
(γ : ℝ) (hγ : 0 < γ)
(hscK : ∀ u ∈ K, ∀ v ∈ K,
f v + ⟪gradient f v, u - v⟫_ℝ + 1 / (2 * γ) * ‖u - v‖ ^ 2 ≤ f u)
(L : ℝ≥0) (hLip : LipschitzOnWith L (gradient f) K)
(hdir : ∃ c₁ c₂ : ℝ, 0 < c₁ ∧ 0 < c₂ ∧ ∀ᶠ k in atTop,
⟪gradient f (x k), d k⟫_ℝ ≤ -c₁ * ‖gradient f (x k)‖ ^ 2 ∧
‖d k‖ ≤ c₂ * ‖gradient f (x k)‖)
(μ : ℝ) (hα : ∀ k, 0 < α k ∧ α k ≤ μ)
(ηmin ηmax : ℝ) (hηmin0 : 0 ≤ ηmin) (hηle : ηmin ≤ ηmax) (hηmax1 : ηmax ≤ 1)
(hη : ∀ k, η k ∈ Set.Icc ηmin ηmax) (hθη : θ < ηmin)
(δ : ℝ) (hδ0 : 0 < δ) (hδ1 : δ < 1) :
∀ᶠ k in atTop,
f (x k + α k • d k) ≤ Shared.costC f x η k + δ * α k * ⟪gradient f (x k), d k⟫_ℝ := by sorry
end NonmonotoneLS.RLinear
Read-back
What the Lean code literally says, in plain math · claude-opus-5-5
Setting. , a function with gradient , sequences and in , and real sequences and . This theorem does not use a parameter bundle or a run. Instead it has the following hypotheses.
Hypotheses.
- is a global minimizer: for all .
- for every .
- There are reals and with and for every . Since the left side is and , this forces .
- is closed, bounded and convex, and for every .
- , and for all :
- is a nonnegative real. is not excluded. is -Lipschitz on .
- There exist and such that, for all sufficiently large (not necessarily all ):
- is real with for every . This forces .
- Reals satisfy , and for every .
- . This forces .
- is real with .
Conclusion. For all sufficiently large :
Here is Shared.costC applied to , , and . That definition is not shown here. By hypothesis 2, the left side equals .
Degenerate cases:
- is permitted.
- is permitted. Then every is a minimizer.
- For , all points coincide and all gradients are . The conclusion then reads for all large , which depends on the unseen definition of .
- If is a single point, all equal it. Hypothesis 7 then forces eventually whenever the gradient there is .
Confirmed by the mission captain (proposal self-audit).
Confirmed by the moderator at approval.