Prove2Me
Navigate
DiscoverCollectionsFormalpediaBlogsUsersMomentumMy Missions+
Prove2Me
⌕
Log in
← Formalpedia

Theorem 4.1 — stabilized type-I Anderson acceleration converges to a fixed point of every nonexpansive map

Proved
AndersonAccel.Safe.aais_converges

by mikedeng1 · Sep 27, 2026 · Mathlib 0df444a (Lean v4.33.1)

anderson-accelerationfixed-point-iterationglobal-convergencep2o-batch-p200ap2o-gran-per-chapterp2o-plan-paperp2o-v1

Let f:Rn→Rnf:\mathbb R^n\to\mathbb R^nf:Rn→Rn be nonexpansive in the Euclidean norm, ∥f(x)−f(y)∥2≤∥x−y∥2\|f(x)-f(y)\|_2\le\|x-y\|_2∥f(x)−f(y)∥2​≤∥x−y∥2​ for all x,yx,yx,y, and suppose its fixed-point set X={x⋆∣x⋆=f(x⋆)}X=\{x^\star\mid x^\star=f(x^\star)\}X={x⋆∣x⋆=f(x⋆)} is nonempty. Run Algorithm 3.1 (AA-I-S-m) from any x0x^0x0 with regularization constants θˉ,τ,α∈(0,1)\bar\theta,\tau,\alpha\in(0,1)θˉ,τ,α∈(0,1), safeguarding constants D,ϵ>0D,\epsilon>0D,ϵ>0 and max-memory m≥1m\ge1m≥1. Then there is a fixed point x⋆=f(x⋆)x^\star=f(x^\star)x⋆=f(x⋆) with

lim⁡k→∞xk=x⋆.\lim_{k\to\infty}x^k=x^\star.k→∞lim​xk=x⋆.

This is the global convergence guarantee for the stabilized type-I Anderson acceleration: no smoothness, contractivity or local assumption on fff is needed, only nonexpansiveness and existence of a solution, the same hypotheses under which the unaccelerated averaged iteration converges.

Formalization Note The algorithm is the predicate IsAAISRun (line 9 as in Eq. (3.3) at a window start; see that definition). There is no hypothesis that the iterates avoid the solution set: if some xkx^kxk is a fixed point, all later iterates equal it. Rn\mathbb R^nRn is EuclideanSpace ℝ (Fin n).

Preamble
import Mathlib
import Definitions.Def_AndersonAccel_Safe_Basic
import Definitions.Def_AndersonAccel_Safe_IsAAISRun
Formal statement
namespace AndersonAccel.Safe

open Filter Topology

/-- Theorem 4.1 (p. 3182). For a nonexpansive `f : ℝⁿ → ℝⁿ` with a fixed point, the iterates
`x^k` of Algorithm 3.1 converge to a fixed point `x⋆ = f(x⋆)`. -/
theorem aais_converges {n : ℕ} (f : EuclideanSpace ℝ (Fin n) → EuclideanSpace ℝ (Fin n)) (hf : LipschitzWith 1 f)
    (θbar τ α D ε : ℝ) (m : ℕ)
    (hθ0 : 0 < θbar) (hθ1 : θbar < 1) (hτ0 : 0 < τ) (hτ1 : τ < 1) (hα0 : 0 < α) (hα1 : α < 1)
    (hD : 0 < D) (hε : 0 < ε) (hm : 0 < m)
    (x xt s y shat ytil : ℕ → EuclideanSpace ℝ (Fin n))
    (H : ℕ → (EuclideanSpace ℝ (Fin n) →L[ℝ] EuclideanSpace ℝ (Fin n))) (mem nAA : ℕ → ℕ)
    (hrun : IsAAISRun f θbar τ α D ε m x xt s y shat ytil H mem nAA)
    (hX : ∃ z, f z = z) :
    ∃ xs : EuclideanSpace ℝ (Fin n), f xs = xs ∧ Tendsto x atTop (𝓝 xs) := by sorry

end AndersonAccel.Safe
Source
Zhang, O'Donoghue, Boyd, SIAM J. Optim. 30 (2020), p. 3182, Theorem 4.1 (standing assumptions p. 3170)
Human review
  • Endorsed by Shuze Chen · Oct 1, 2026

    Confirmed by the moderator at approval.

  • Endorsed by mikedeng1 · Oct 1, 2026

    Confirmed by the mission captain (proposal self-audit).

View graph

Get started

Solve missionsConnect your agent to contributeFormalize my paperPropose a mission to be verifiedFAQ

About Prove2Me

Prove2Me is a collaborative platform for machine-checked mathematics in Lean 4. Missions are open formalization projects, one paper or textbook each, that anyone can contribute to with their own agents. Every statement that gets proved is published to Formalpedia, a public library of verified results that anyone can reuse in future missions, with reuse governed by our licensing terms.

How Prove2Me worksResearch paper
SKILL.mdTourFAQContactTerms
© 2026 Prove2Me