Prove2Me
Navigate
DiscoverCollectionsFormalpediaBlogsUsersMomentumMy Missions+
Prove2Me
⌕
Log in
← Formalpedia

Theorem 2, pp. 16–17, (15), no outliers — spectral rounding with (1+ε)-approximate k-means: Σ_k |S_k|/n_k ≤ 64(2+ε)‖X⁰ − X̂‖₁/n²_min

Proved
RobustSpecClust.Round.theorem_2

by mikedeng1 · Oct 16, 2026 · Mathlib 0df444a (Lean v4.33.1)

davis-kahank-meansmisclassificationp2o-batch-pfp2ap2o-gran-per-chapterp2o-plan-paperp2o-v1spectral-clustering

This is the deterministic core of Theorem 2 (clustering error of the rounded solution) in the setting without outliers.

Let φ:[n]→[r]\varphi : [n] \to [r]φ:[n]→[r] be the true labelling, with clusters CkC_kCk​ of sizes nk>0n_k > 0nk​>0, nmin⁡=min⁡knkn_{\min} = \min_k n_knmin​=mink​nk​, true clustering matrix X0X^0X0 and U0=Z0 Diag(1/n1,…,1/nr)U^0 = Z^0\,\mathrm{Diag}(1/\sqrt{n_1},\dots,1/\sqrt{n_r})U0=Z0Diag(1/n1​​,…,1/nr​​). Let X^∈Rn×n\hat X \in \mathbb R^{n \times n}X^∈Rn×n be any symmetric matrix with entries in [0,1][0,1][0,1] (for instance the Robust-LP estimate). Spectral clustering on X^\hat XX^ proceeds as follows:

  1. U^∈Rn×r\hat U \in \mathbb R^{n\times r}U^∈Rn×r is any matrix of orthonormal top-rrr eigenvectors of X^\hat XX^;
  2. (Θ^,B^)(\hat\Theta, \hat B)(Θ^,B^), with Θ^∈Mn,r\hat\Theta \in \mathbb M_{n,r}Θ^∈Mn,r​ the membership matrix of an assignment aaa and B^∈Rr×r\hat B \in \mathbb R^{r\times r}B^∈Rr×r, is a (1+ϵ)(1+\epsilon)(1+ϵ)-approximate solution (ϵ>0\epsilon > 0ϵ>0) of k-means on the rows of U^\hat UU^; the estimated membership matrix is Z^=Θ^\hat Z = \hat\ThetaZ^=Θ^.

Let OOO be the optimal rotation, an orthogonal matrix minimising ∥U^−U0O∥F\|\hat U - U^0 O\|_F∥U^−U0O∥F​, and let Sk={i∈Ck:∥vˉi−vi∥≥1/(2nk)}\mathcal S_k = \{ i \in C_k : \|\bar v_i - v_i\| \ge 1/(2\sqrt{n_k})\}Sk​={i∈Ck​:∥vˉi​−vi​∥≥1/(2nk​​)}, where viv_ivi​ and vˉi\bar v_ivˉi​ are the rows of V=U0OV = U^0 OV=U0O and Vˉ=Θ^B^\bar V = \hat\Theta\hat BVˉ=Θ^B^: the points of CkC_kCk​ whose estimated centre is far from their true centre. Then

∑k∈[r]∣Sk∣nk  ≤  64(2+ϵ) ∥X0−X^∥1nmin⁡2.\sum_{k\in[r]} \frac{|\mathcal S_k|}{n_k} \;\le\; 64(2+\epsilon)\,\frac{\|X^0 - \hat X\|_1}{n_{\min}^2}.k∈[r]∑​nk​∣Sk​∣​≤64(2+ϵ)nmin2​∥X0−X^∥1​​.

Combined with a bound on ∥X0−X^∥1\|X^0 - \hat X\|_1∥X0−X^∥1​ (Theorem 1 of the paper), this gives the misclassification rate of the full algorithm.

Formalization Note The printed Theorem 2 allows mmm outliers and is stated with probability 1−2r/nmin⁡1 - 2r/n_{\min}1−2r/nmin​ under a condition on ϵˉ\bar\epsilonϵˉ and Δmin⁡≥8σmax⁡d\Delta_{\min} \ge 8\sigma_{\max}\sqrt dΔmin​≥8σmax​d​. As printed it is false for m≥1m \ge 1m≥1: the outlier rows of U0U^0U0 are zero, so VVV is not k-means feasible and Lemma 5 does not apply; an explicit counterexample (two clusters of size MMM, one isolated outlier, X^=blockdiag(EM,EM,1)\hat X = \mathrm{blockdiag}(E_M, E_M, 1)X^=blockdiag(EM​,EM​,1), ϵ=2\epsilon = 2ϵ=2, M>256M > 256M>256) violates (15). This item is the case m=0m = 0m=0, which the proof in Appendix G establishes. Inequality (15) is deterministic in ∥X0−X^∥1\|X^0 - \hat X\|_1∥X0−X^∥1​: the probability, the separation condition and the condition on ϵˉ\bar\epsilonϵˉ only serve to feed Theorem 1 into the permutation claim (item theorem_2_permutation), so they are omitted. The printed nmin⁡>rn_{\min} > rnmin​>r is replaced by the weaker nk>0n_k > 0nk​>0 for all kkk, which is all the statement needs. δk=1/nk\delta_k = 1/\sqrt{n_k}δk​=1/nk​​ as on p. 47. The statement holds for every minimiser OOO, not just for some orthogonal matrix.

Preamble
import Mathlib
import Definitions.Def_RobustSpecClust_Round_Setting
Formal statement
namespace RobustSpecClust.Round

open Matrix

theorem theorem_2 {n r : ℕ} [NeZero r] (φ : Fin n → Fin r) (hφ : ∀ k, 0 < clusterSize φ k)
    (Xh : Matrix (Fin n) (Fin n) ℝ) (hsym : Xhᵀ = Xh) (hbox : ∀ i j, 0 ≤ Xh i j ∧ Xh i j ≤ 1)
    (Uh : Matrix (Fin n) (Fin r) ℝ) (hU : IsTopEigvecs Xh Uh)
    (ε : ℝ) (hε : 0 < ε) (a : Fin n → Fin r) (B : Matrix (Fin r) (Fin r) ℝ)
    (hkm : IsApproxKMeans ε Uh a B)
    (O : Matrix (Fin r) (Fin r) ℝ) (hO : O ∈ Matrix.orthogonalGroup (Fin r) ℝ)
    (hOopt : ∀ O' ∈ Matrix.orthogonalGroup (Fin r) ℝ,
      frobSq (Uh - U0 φ * O) ≤ frobSq (Uh - U0 φ * O')) :
    ∑ k, ((misSet (U0 φ * O) (memb a * B) φ (fun k => 1 / Real.sqrt (clusterSize φ k)) k).card
        : ℝ) / clusterSize φ k
      ≤ 64 * (2 + ε) * l1 (trueClust φ - Xh) / nmin φ ^ 2 := by sorry

end RobustSpecClust.Round
Source
arXiv:1912.07546v3, Theorem 2, pp. 16–17, (15), case m = 0 (deterministic core); proof in Appendix G, pp. 45–47; O as "the optimal rotation matrix", p. 17; δ²_k = 1/n_k, p. 47
Human review
  • Endorsed by Shuze Chen · Oct 16, 2026

    Confirmed by the moderator at approval.

  • Endorsed by mikedeng1 · Oct 16, 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