Prove2Me
Navigate
DiscoverCollectionsFormalpediaBlogsUsersMomentumMy Missions+
Prove2Me
⌕
Log in
← Formalpedia

Theorem 1 — cluster points of the proximal ADMM are stationary and improve on a non-stationary start

Proved
NonconvexSplitting.ProxADMM.theorem1

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

admmnonconvex-optimizationp2o-batch-p200bp2o-gran-per-chapterp2o-plan-paperp2o-v1

Let h:Rn→Rh : \mathbb{R}^n \to \mathbb{R}h:Rn→R be twice continuously differentiable with bounded Hessian, P:Rm→(−∞,+∞]P : \mathbb{R}^m \to (-\infty, +\infty]P:Rm→(−∞,+∞] proper and lower semicontinuous, M:Rn→Rm\mathcal M : \mathbb{R}^n \to \mathbb{R}^mM:Rn→Rm linear, ϕ:Rn→R\phi : \mathbb{R}^n \to \mathbb{R}ϕ:Rn→R twice continuously differentiable and convex, and β>0\beta > 0β>0. Suppose Assumption 1 holds with witnesses σ,Q1,Q2,T1,T2,δ,Q3,γ\sigma, \mathcal Q_1, \mathcal Q_2, \mathcal T_1, \mathcal T_2, \delta, \mathcal Q_3, \gammaσ,Q1​,Q2​,T1​,T2​,δ,Q3​,γ, and let (xt,yt,zt)(x^t, y^t, z^t)(xt,yt,zt) be any sequence generated by the proximal ADMM

yt+1∈Arg min⁡yLβ(xt,y,zt),xt+1∈Arg min⁡x{Lβ(x,yt+1,zt)+Dϕ(x,xt)},zt+1=zt−β(Mxt+1−yt+1).y^{t+1} \in \operatorname{Arg\,min}_y L_\beta(x^t, y, z^t),\quad x^{t+1} \in \operatorname{Arg\,min}_x \{L_\beta(x, y^{t+1}, z^t) + D_\phi(x, x^t)\},\quad z^{t+1} = z^t - \beta(\mathcal M x^{t+1} - y^{t+1}).yt+1∈Argminy​Lβ​(xt,y,zt),xt+1∈Argminx​{Lβ​(x,yt+1,zt)+Dϕ​(x,xt)},zt+1=zt−β(Mxt+1−yt+1).
  1. (Global subsequential convergence) If (x∗,y∗,z∗)(x^*, y^*, z^*)(x∗,y∗,z∗) is a cluster point of {(xt,yt,zt)}\{(x^t, y^t, z^t)\}{(xt,yt,zt)}, then
lim⁡t→∞∥yt+1−yt∥2+∥xt+1−xt∥2+∥zt+1−zt∥2=0,\lim_{t\to\infty}\|y^{t+1} - y^t\|^2 + \|x^{t+1} - x^t\|^2 + \|z^{t+1} - z^t\|^2 = 0,t→∞lim​∥yt+1−yt∥2+∥xt+1−xt∥2+∥zt+1−zt∥2=0,

∇h(x∗)=M∗z∗\nabla h(x^*) = \mathcal M^* z^*∇h(x∗)=M∗z∗, −z∗∈∂P(y∗)-z^* \in \partial P(y^*)−z∗∈∂P(y∗), y∗=Mx∗y^* = \mathcal M x^*y∗=Mx∗, and x∗x^*x∗ is a stationary point of min⁡xh(x)+P(Mx)\min_x h(x) + P(\mathcal M x)minx​h(x)+P(Mx). 2. (Strict improvement in objective values) If x0x^0x0 is not stationary, h(x0)+P(Mx0)<∞h(x^0) + P(\mathcal M x^0) < \inftyh(x0)+P(Mx0)<∞ and M∗z0=∇h(x0)\mathcal M^* z^0 = \nabla h(x^0)M∗z0=∇h(x0), then every cluster point (x∗,y∗,z∗)(x^*, y^*, z^*)(x∗,y∗,z∗) satisfies

h(x∗)+P(Mx∗)<h(x0)+P(Mx0).h(x^*) + P(\mathcal M x^*) < h(x^0) + P(\mathcal M x^0).h(x∗)+P(Mx∗)<h(x0)+P(Mx0).

The theorem makes no claim that a cluster point exists; boundedness of the sequence is the subject of Theorem 2.

Formalization Note A cluster point is the limit of (xti,yti,zti)(x^{t_i}, y^{t_i}, z^{t_i})(xti​,yti​,zti​) along some strictly increasing tit_iti​. Objective values are compared in EReal. Both parts are one statement, a conjunction.

Preamble
import Mathlib
import Definitions.Def_NonconvexSplitting_Shared_LimitingSubdiff
import Definitions.Def_NonconvexSplitting_Shared_IsStationary
import Definitions.Def_NonconvexSplitting_Shared_StandingAssumptions
import Definitions.Def_NonconvexSplitting_Shared_IsProxADMMSeq
import Definitions.Def_NonconvexSplitting_Shared_Assumption1
open NonconvexSplitting.Shared

open Filter Topology
open scoped InnerProductSpace
Formal statement
namespace NonconvexSplitting.ProxADMM

/-- Theorem 1 of Li–Pong (p. 7): (i) global subsequential convergence of the proximal ADMM and
(ii) strict improvement of the objective from a non-stationary start. -/
theorem theorem1 {n m : ℕ} (h : EuclideanSpace ℝ (Fin n) → ℝ) (P : EuclideanSpace ℝ (Fin m) → EReal)
    (phi : EuclideanSpace ℝ (Fin n) → ℝ) (M : EuclideanSpace ℝ (Fin n) →L[ℝ] EuclideanSpace ℝ (Fin m)) (β : ℝ)
    (hstd : StandingAssumptions h P phi β)
    (σ δ γ : ℝ) (Q1 Q2 T1 T2 Q3 : EuclideanSpace ℝ (Fin n) →L[ℝ] EuclideanSpace ℝ (Fin n))
    (hA : Assumption1 h phi M β σ Q1 Q2 T1 T2 δ Q3 γ)
    (x : ℕ → EuclideanSpace ℝ (Fin n)) (y z : ℕ → EuclideanSpace ℝ (Fin m))
    (hseq : IsProxADMMSeq h P phi M β x y z) :
    -- (i) global subsequential convergence
    (∀ (s : ℕ → ℕ) (xs : EuclideanSpace ℝ (Fin n)) (ys zs : EuclideanSpace ℝ (Fin m)), StrictMono s →
      Tendsto (fun i => (x (s i), y (s i), z (s i))) atTop (𝓝 (xs, ys, zs)) →
      Tendsto (fun t => ‖y (t + 1) - y t‖ ^ 2 + ‖x (t + 1) - x t‖ ^ 2 + ‖z (t + 1) - z t‖ ^ 2)
      atTop (𝓝 0) ∧
      (gradient h xs = ContinuousLinearMap.adjoint M zs ∧ -zs ∈ LimitingSubdiff P ys ∧ ys = M xs) ∧
      IsStationary h P M xs) ∧
    -- (ii) strict improvement in objective values
    (ContinuousLinearMap.adjoint M (z 0) = gradient h (x 0) →
      ¬ IsStationary h P M (x 0) →
      ((h (x 0) : ℝ) : EReal) + P (M (x 0)) ≠ ⊤ →
      ∀ (s : ℕ → ℕ) (xs : EuclideanSpace ℝ (Fin n)) (ys zs : EuclideanSpace ℝ (Fin m)), StrictMono s →
        Tendsto (fun i => (x (s i), y (s i), z (s i))) atTop (𝓝 (xs, ys, zs)) →
        ((h xs : ℝ) : EReal) + P (M xs) < ((h (x 0) : ℝ) : EReal) + P (M (x 0))) := by sorry

end NonconvexSplitting.ProxADMM
Source
Li & Pong, Global Convergence of Splitting Methods for Nonconvex Composite Optimization, arXiv:1407.0753v6, p. 7, Theorem 1
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