Corollary 3.5 — along Algorithm 3.1, (3.8) holds and
ProvedAndersonAccel.Safe.run_H_boundsLet be nonexpansive, , with a fixed point, and run Algorithm 3.1 with , and max-memory . Suppose no iterate is a solution: for all . Then for every the matrix is invertible,
and its condition number satisfies
This connects the window lemmas to the algorithm itself: the restart rule, the Powell regularization and nonexpansiveness of (hence ) make every matrix the algorithm uses uniformly bounded and well conditioned.
Formalization Note "Unless a solution to (1.1) is found in finite steps" is the hypothesis for all . Invertibility of is stated explicitly because presupposes it; the inverse is Ring.inverse. The algorithm is IsAAISRun, with line 9 as in Eq. (3.3) at a window start (see that definition); with the printed line 9 the paper's justification (p. 3179) does not cover the iterations with .
import Mathlib import Definitions.Def_AndersonAccel_Safe_Basic import Definitions.Def_AndersonAccel_Safe_IsAAISRun
namespace AndersonAccel.Safe
/-- Corollary 3.5 (p. 3179). Along Algorithm 3.1, unless a solution is found in finitely many
steps, every `H_k` is invertible, (3.8) holds, and `cond(H_k) = ‖H_k‖ ‖H_k⁻¹‖` is bounded by
`(3((1 + θ̄ + τ)/τ)^m - 2)^n / θ̄^m`. -/
theorem run_H_bounds {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)
(hnosol : ∀ k, f (x k) ≠ x k) :
∀ k, IsUnit (H k) ∧
‖H k‖ ≤ (3 * ((1 + θbar + τ) / τ) ^ m - 2) ^ (n - 1) / θbar ^ m ∧
‖H k‖ * ‖Ring.inverse (H k)‖ ≤ (3 * ((1 + θbar + τ) / τ) ^ m - 2) ^ n / θbar ^ m := by sorry
end AndersonAccel.Safe
Confirmed by the mission captain (proposal self-audit).
Confirmed by the moderator at approval.