bernoulli_tangent_sampling_deviation_formula_bound_dense_positive_samples
OpenThis is a formal bridge for the dense Bernoulli tangent-sampling deviation route with the Lean-required positive-samples guard made explicit.
Source: Candes--Recht, Exact Matrix Completion via Convex Optimization, PDF p. 18, Section 4.2, Theorem 4.1, equation (4.5), for the dense tangent sampling concentration target; PDF p. 19, Section 4.2, Theorem 4.2, equation (4.9), for the Rudelson expectation estimate; PDF p. 24, Section 6.1, Lemma 6.1 and equations (6.5)--(6.7), for the fixed-matrix/Rudelson estimate used in that expectation branch; and Appendix 9.1, PDF p. 46, Theorem 9.1 / equation (9.2), for the Talagrand product-space tail feeding the positive-samples deviation bridge.
Mathematical statement: let be an rank- matrix with SVD data , let , and let be the Bernoulli sampling rate for the random sample set . Assume , , , , , , and the incoherence conditions and . If and
then there are universal constants such that
Here and the event is TangentSamplingDeviationBound.
Formalization note: this is a formal bridge, not a new analytic concentration theorem. It composes the source-backed child rudelson_tangent_sampling_expected_deviation_bound_dense with the source-backed positive-samples child talagrand_tangent_sampling_deviation_from_expectation_bound_of_positive_samples. The explicit hypothesis is deliberate: the existing dense theorem without this guard does not derive positive sample mass when and .
import Definitions.Def_matrix_completion_tangent open MatrixCompletion
theorem bernoulli_tangent_sampling_deviation_formula_bound_dense_positive_samples :
∃ C c : ℝ, 0 < C ∧ 0 < c ∧
∀ (β : ℝ), 2 < β →
∀ (n₁ n₂ r m : ℕ) (M : Matrix (Fin n₁) (Fin n₂) ℝ)
(μ₀ μ₁ : ℝ) (S : SVD M r),
0 < n₁ → 0 < n₂ → 0 < r → 0 < m → m ≤ n₁ * n₂ →
1 ≤ μ₀ → 1 ≤ μ₁ →
A0 S μ₀ → A1 S μ₁ →
(m : ℝ) ≥ β * μ₀ * (↑(max n₁ n₂)) * (r : ℝ) *
Real.log (↑(max n₁ n₂)) →
bernoulliEventProb ((m : ℝ) / ((n₁ : ℝ) * (n₂ : ℝ)))
(fun Omega =>
TangentSamplingDeviationBound Omega S
((m : ℝ) / ((n₁ : ℝ) * (n₂ : ℝ)))
(tangentSamplingDeviationScale C β μ₀ (max n₁ n₂) r m)) ≥
1 - c * Real.rpow (↑(max n₁ n₂)) (-β) := by sorry