Perturbation terms bound (Chen–Li Lemma 4.8, exact rank, corrected constants)
ProvedMatrixCompletion.NoSpuriousMin.perturbation_terms_bound_correctedChen–Li Lemma 4.8 (exact-rank case), with usable constants.
Let with -incoherent, , and ; let be a good sample at rate , let be an aligned exact factor (, ) and put . Choose the tuning parameters in Chen–Li's windows, and . If moreover the sampling rate satisfies
then, uniformly over all ,
This is of Chen–Li's decomposition, with in the exact-rank case.
Why the constants differ from the mission's perturbation_terms_bound. That statement asserts the same inequality with the mission's SampleCondition () and on the right; it is false, and an explicit machine-checked counterexample is recorded on the platform (theorem c21e6513-94ab-4c7b-980d-7dde5be7a71c, disproof a797f42a-1928-4b1b-90ab-2234a526d06e). Two independent constants are too small.
-
The sampling rate. The binding term is . Within the statement's own windows reaches and reaches , and the sharp constant in Lemma 4.10 is about , so absorbing it into needs .
SampleConditionsupplies only — short by roughly eighteen orders of magnitude. Chen–Li write "for a sufficiently large absolute constant "; is large enough, is not. -
The target accuracy. Chen–Li's eq. (4.29) applies their Lemma 4.2 at relative accuracy , which is what turns into . The mission's
GoodSample.tangent_concfield only offers , and , so this term costs — already past a budget. The constant is what the good-sample hypothesis as curated can actually pay for, and it is still small enough to keep the resulting quadratic form negative definite (seeK_superlevel_bound_corrected).
Everything else is Chen–Li's argument verbatim. Because tangent_conc is stated for the tangent space of itself and , the whole matrix is tangent, so the spectral truncation of §4.3.3 (the index , the incoherence of the leading columns ) is not needed: it collapses to the exact case .
import Definitions.Def_MCNoSpuriousMinModel import Mathlib.LinearAlgebra.Matrix.PosDef import Mathlib.Analysis.SpecialFunctions.Log.Basic open Matrix MatrixCompletion.NoSpuriousMin
theorem MatrixCompletion.NoSpuriousMin.perturbation_terms_bound_corrected
{d r : ℕ} (hd : 2 ≤ d) (hr : 1 ≤ r)
(Z X U : Matrix (Fin d) (Fin r) ℝ) (Ω : Finset (Fin d × Fin d))
(p μ κ lam α : ℝ)
(hμ : 1 ≤ μ) (hκ : 1 ≤ κ) (hcond : sigmaMax Z ≤ κ * sigmaMin Z)
(hσ : 0 < sigmaMin Z)
(hinc : Incoherent μ Z) (hZnorm : frobSq Z = (r : ℝ))
(hα1 : 100 * twoInftyNorm Z ≤ α) (hα2 : α ≤ 200 * twoInftyNorm Z)
(hlam1 : 100 * sampDevNorm Ω p ≤ lam) (hlam2 : lam ≤ 200 * sampDevNorm Ω p)
(hp : SampleCondition d r p μ κ)
(hpC : 10 ^ 28 * μ ^ 4 * κ ^ 4 * (r : ℝ) ^ 2 * (1 + Real.log d) / d ≤ p)
(hgood : GoodSample Z Ω p)
(hU : U * Uᵀ = Z * Zᵀ) (hpsd : (Xᵀ * U).PosSemidef) :
sampDev Ω p ((X - U) * (X - U)ᵀ) ((X - U) * (X - U)ᵀ)
- 3 * sampDev Ω p (X * Xᵀ - U * Uᵀ) (X * Xᵀ - U * Uᵀ)
+ lam * (regHessQF α X (X - U) - 4 * innerM (regGrad α X) (X - U)) ≤
p / 50 * (frobSq ((X - U)ᵀ * (X - U)) + frobSq (U * (X - U)ᵀ)) := by sorry