Skip to main content
teorth/PFR
Source indexedlemma · leanprover/lean4:v4.33.0-rc1

multidist_ruzsa_II

PFR.MoreRuzsaDist · PFR/MoreRuzsaDist.lean:1157 to 1180

Source documentation

Let m ≥ 2, and let X_[m] be a tuple of G-valued random variables. Then ∑ j, d[X_j;X_j] ≤ 2 m D[X_[m]].

Exact Lean statement

lemma multidist_ruzsa_II {m : ℕ} (hm : m ≥ 2) {Ω : Fin m → Type*} (hΩ : ∀ i, MeasureSpace (Ω i))
    (hprob : ∀ i, IsProbabilityMeasure (hΩ i).volume) (X : ∀ i, Ω i → G)
    (hmes : ∀ i, Measurable (X i)) (hfin : ∀ i, FiniteRange (X i)) :
    ∑ j, d[X j # X j] ≤ 2 * m * D[X; hΩ]

Complete declaration

Lean source

Canonical source
Full Lean sourceLean 4
lemma multidist_ruzsa_II {m : } (hm : m  2) {Ω : Fin m  Type*} (hΩ :  i, MeasureSpace (Ω i))    (hprob :  i, IsProbabilityMeasure (hΩ i).volume) (X :  i, Ω i  G)    (hmes :  i, Measurable (X i)) (hfin :  i, FiniteRange (X i)) :    ∑ j, d[X j # X j]  2 * m * D[X; hΩ] := by  have claim (j k: Fin m) (hjk: j  k) : d[X j # X j]  2 * d[X j # - X k] := calc    _  d[X j # - X k] + d[-X k # X j] := rdist_triangle (hmes j) (hmes k).neg (hmes j)    _ = d[X j # - X k] + d[X j # -X k] := by congr 1; apply rdist_symm    _ = 2 * d[X j # - X k] := by ring  replace claim := offDiag_sum_le _ _ claim  have hm' : m  1 := by linarith  have claim2 : offDiag_sum (fun j k  d[X j # - X k])  m * (m - 1) * D[X; hΩ] :=    multidist_ruzsa_I hm' _ hmes hprob hfin  rw [offDiag_sum_left hm', offDiag_mul_sum] at claim  have : (m:) - 1 > 0 := by    have : (m:)  2 := by simp [hm]    linarith  calc    _ = (m - 1 : )⁻¹ * (m - 1) * ∑ j, d[X j # X j] := by      field_simp [this]    _  (m - 1 : )⁻¹ * 2 * offDiag_sum fun j k  d[X j # -X k] := by      rw [mul_assoc, mul_assoc]      gcongr    _  (m - 1 : )⁻¹ * 2 * (m * (m - 1) * D[X ; hΩ]) := by gcongr    _ = 2 * m * D[X; hΩ] := by field_simp [this]