Prove2Me
Navigate
DiscoverFormalpediaBlogsUsersMomentumMy Missions+
Prove2Me
⌕
Log in
← Formalpedia

Lemma 5 — Perturbed strong convexity

Proved
SCAFFOLD.PerturbedStrongConvexity

by Minghui · Sep 23, 2026 · Mathlib c5ea003 (Lean v4.30.0)

federated-learningprobabilitystochastic-optimization

If the clients are μ\muμ-strongly convex with μ≥0\mu\ge0μ≥0, then for every client iii and every x,y,z∈Rdx,y,z\in\mathbb R^dx,y,z∈Rd,

⟨∇fi(x),z−y⟩≥fi(z)−fi(y)+μ4∥y−z∥2−β∥z−x∥2.\langle\nabla f_i(x),z-y\rangle\ge f_i(z)-f_i(y)+\frac\mu4\|y-z\|^2-\beta\|z-x\|^2.⟨∇fi​(x),z−y⟩≥fi​(z)−fi​(y)+4μ​∥y−z∥2−β∥z−x∥2.

Formalization note: direct source Lemma 5 applied to each client loss, including its convex (μ=0\mu=0μ=0) boundary. No stochastic run or minimizer is required.

Source: Sai Praneeth Karimireddy, Satyen Kale, Mehryar Mohri, Sashank J. Reddi, Sebastian U. Stich, and Ananda Theertha Suresh, SCAFFOLD: Stochastic Controlled Averaging for Federated Learning, ICML 2020; arXiv:1910.06378v4, https://arxiv.org/abs/1910.06378v4; Appendix C, PDF p. 17, Lemma 5 (unnumbered display), used in Section 5.

Notation and probability model

There are N≥1N\ge1N≥1 clients, a model space Rd\mathbb R^dRd (including d=0d=0d=0), differentiable client losses fif_ifi​ with β\betaβ-Lipschitz gradients, β>0\beta>0β>0, and f=N−1∑ifif=N^{-1}\sum_i f_if=N−1∑i​fi​. The starting point x0x^0x0 is deterministic and σ≥0\sigma\ge0σ≥0 bounds within-client stochastic-gradient standard deviation. A run has T≥1T\ge1T≥1 rounds, K≥1K\ge1K≥1 local steps, 1≤S≤N1\le S\le N1≤S≤N clients per round, local step ηl>0\eta_l>0ηl​>0, global step ηg≥1\eta_g\ge1ηg​≥1, and h=Kηlηgh=K\eta_l\eta_gh=Kηl​ηg​. All random variables live on a standard Borel probability space (Ω,A,ν)(\Omega,\mathcal A,\nu)(Ω,A,ν) with a filtration containing the full history. States and gradient samples are square integrable; gradient samples are conditionally unbiased, have conditional squared error at most σ2\sigma^2σ2, and are independent across clients conditional on each step's history. These are explicit fresh-oracle and finite-moment conventions.

Every round first defines virtual paths for all clients, starting at yi,0r=xry_{i,0}^r=x^ryi,0r​=xr:

yi,k+1r=yi,kr−ηl(gi,kr−cir+cr),cr=N−1∑icir.y_{i,k+1}^r=y_{i,k}^r-\eta_l(g_{i,k}^r-c_i^r+c^r),\qquad c^r=N^{-1}\sum_i c_i^r.yi,k+1r​=yi,kr​−ηl​(gi,kr​−cir​+cr),cr=N−1i∑​cir​.

Then an SSS-element subset is sampled uniformly, conditionally independently of these paths given the past. Equivalently, its conditional distribution given the entire completed virtual-path history is uniform. Only selected clients update their controls to K−1∑k=0K−1gi,krK^{-1}\sum_{k=0}^{K-1}g_{i,k}^rK−1∑k=0K−1​gi,kr​; other controls persist. The server update is xr+1=xr+(ηg/S)∑i∈Sr(yi,Kr−xr)x^{r+1}=x^r+(\eta_g/S)\sum_{i\in\mathcal S_r}(y_{i,K}^r-x^r)xr+1=xr+(ηg​/S)∑i∈Sr​​(yi,Kr​−xr). This is option II of Algorithm 1, with the average-gradient form of Appendix E. The model contains the algorithm and oracle laws, not any convergence inequality.

For convex targets, x⋆x^\starx⋆ minimizes fff, and the client losses obey

fi(y)≥fi(x)+⟨∇fi(x),y−x⟩+μ2∥y−x∥2,μ≥0.f_i(y)\ge f_i(x)+\langle\nabla f_i(x),y-x\rangle +\frac\mu2\|y-x\|^2,\qquad \mu\ge0.fi​(y)≥fi​(x)+⟨∇fi​(x),y−x⟩+2μ​∥y−x∥2,μ≥0.

The initial client controls ci0c_i^0ci0​ are arbitrary deterministic vectors and the server control is their average. Define

C0=1N∑i∥ci0−∇fi(x⋆)∥2,V0=∥x0−x⋆∥2+9Nh2SC0.C_0=\frac1N\sum_i\|c_i^0-\nabla f_i(x^\star)\|^2,\qquad V_0=\|x^0-x^\star\|^2+\frac{9Nh^2}{S}C_0.C0​=N1​i∑​∥ci0​−∇fi​(x⋆)∥2,V0​=∥x0−x⋆∥2+S9Nh2​C0​.

For nonconvex targets, flow≤f(x)f_{\rm low}\le f(x)flow​≤f(x) for all xxx; a minimizer need not exist. Each ci0c_i^0ci0​ is instead initialized by averaging KKK fresh stochastic gradients at x0x^0x0, with the same conditional oracle assumptions. These full-client initialization queries are additional to the TTT optimization rounds.

The output is a sampled pre-round server iterate among x0,…,xT−1x^0,\ldots,x^{T-1}x0,…,xT−1, represented by its expected loss or squared-gradient statistic. No last-iterate or pathwise guarantee is asserted. Sources: Section 2, PDF p. 2; Algorithm 1, PDF p. 4; Appendix B.1, PDF p. 14, assumptions A3–A5; Appendix E, PDF pp. 25–26, equations (18)–(22), Remark 10; Appendix E.2, PDF pp. 31 and 35, equations (26)–(27) and final warm-start paragraph. Primary reference: Karimireddy et al., SCAFFOLD: Stochastic Controlled Averaging for Federated Learning, ICML 2020, https://arxiv.org/abs/1910.06378v4.

Preamble
import Definitions.Def_SCAFFOLD_Model
open MeasureTheory
universe u
Formal statement
namespace SCAFFOLD
theorem PerturbedStrongConvexity :
  ∀ (d N : ℕ) (P : Problem d N) (μ : ℝ), Convexity P μ →
    ∀ (i : Fin N) (x y z : Space d),
      P.f i z - P.f i y + μ / 4 * ‖y - z‖ ^ 2 - P.β * ‖z - x‖ ^ 2 ≤
        inner ℝ (gradient (P.f i) x) (z - y) := by sorry
end SCAFFOLD
Source
Sai Praneeth Karimireddy, Satyen Kale, Mehryar Mohri, Sashank J. Reddi, Sebastian U. Stich, and Ananda Theertha Suresh, SCAFFOLD: Stochastic Controlled Averaging for Federated Learning, ICML 2020; arXiv:1910.06378v4, https://arxiv.org/abs/1910.06378v4; Appendix C, PDF p. 17, Lemma 5 (unnumbered display), used in Section 5.
Read-back

What the Lean code literally says, in plain math · gpt-6

For every pair of natural numbers d,Nd,Nd,N, let E=RdE=\mathbb{R}^{d}E=Rd with its Euclidean norm ∥⋅∥\|\cdot\|∥⋅∥ and real Euclidean inner product ⟨⋅,⋅⟩\langle\cdot,\cdot\rangle⟨⋅,⋅⟩, and let PPP consist of NNN real-valued functions fj:E→Rf_j:E\to\mathbb{R}fj​:E→R indexed by j∈{0,…,N−1}j\in\{0,\ldots,N-1\}j∈{0,…,N−1}, real numbers β,σ\beta,\sigmaβ,σ, and a point x0∈Ex_0\in Ex0​∈E, subject to N>0N>0N>0, β>0\beta>0β>0, σ≥0\sigma\ge0σ≥0, existence of the gradient ∇fj(u)\nabla f_j(u)∇fj​(u) at every point u∈Eu\in Eu∈E for every client jjj, and the bound ∥∇fj(u)−∇fj(v)∥≤β∥u−v∥\|\nabla f_j(u)-\nabla f_j(v)\|\le\beta\|u-v\|∥∇fj​(u)−∇fj​(v)∥≤β∥u−v∥ for every jjj and all u,v∈Eu,v\in Eu,v∈E. For every real number μ\muμ, assume that μ≥0\mu\ge0μ≥0 and that, for every client jjj and all u,v∈Eu,v\in Eu,v∈E, fj(u)+⟨∇fj(u),v−u⟩+μ2∥v−u∥2≤fj(v)f_j(u)+\langle\nabla f_j(u),v-u\rangle+\frac{\mu}{2}\|v-u\|^2\le f_j(v)fj​(u)+⟨∇fj​(u),v−u⟩+2μ​∥v−u∥2≤fj​(v). Then, for every client i∈{0,…,N−1}i\in\{0,\ldots,N-1\}i∈{0,…,N−1} and every three points x,y,z∈Ex,y,z\in Ex,y,z∈E, the following non-strict inequality holds:

fi(z)−fi(y)+μ4∥y−z∥2−β∥z−x∥2≤⟨∇fi(x),z−y⟩.f_i(z)-f_i(y)+\frac{\mu}{4}\|y-z\|^2-\beta\|z-x\|^2 \le \langle\nabla f_i(x),z-y\rangle.fi​(z)−fi​(y)+4μ​∥y−z∥2−β∥z−x∥2≤⟨∇fi​(x),z−y⟩.

The quantified data permit d=0d=0d=0, in which case EEE has a single point and the asserted inequality is 0≤00\le00≤0; they permit N=1N=1N=1, μ=0\mu=0μ=0, σ=0\sigma=0σ=0, and coincident choices among x,y,zx,y,zx,y,z. No instance of PPP can satisfy the hypotheses when N=0N=0N=0. The point x0x_0x0​ and the nonnegative number σ\sigmaσ are part of the universally quantified problem data but do not appear in the conclusion.

Human review
  • Endorsed by Shuze Chen · Sep 24, 2026

    Confirmed by the moderator at approval.

  • Endorsed by Minghui · Sep 24, 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