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

ProbabilityTheory.Kernel.rdist_dirac_zero_right

PFR.ForMathlib.Entropy.Kernel.RuzsaDist · PFR/ForMathlib/Entropy/Kernel/RuzsaDist.lean:107 to 130

Mathematical statement

Exact Lean statement

@[simp] lemma rdist_dirac_zero_right {κ : Kernel T G} [IsFiniteKernel κ]
    {μ : Measure T} {ν : Measure T'} [IsProbabilityMeasure μ] [IsProbabilityMeasure ν]
    [FiniteSupport μ] [FiniteSupport ν] :
    dk[κ ; μ # const T' (Measure.dirac 0) ; ν] = Hk[κ, μ] / 2

Complete declaration

Lean source

Canonical source
Full Lean sourceLean 4
@[simp] lemma rdist_dirac_zero_right {κ : Kernel T G} [IsFiniteKernel κ]    {μ : Measure T} {ν : Measure T'} [IsProbabilityMeasure μ] [IsProbabilityMeasure ν]    [FiniteSupport μ] [FiniteSupport ν] :    dk[κ ; μ # const T' (Measure.dirac 0) ; ν] = Hk[κ, μ] / 2 := by  rw [rdist_eq']  simp only [entropy_const, measure_univ, ENNReal.toReal_one, measureEntropy_dirac, mul_zero,    zero_div, sub_zero]  rw [sub_eq_iff_eq_add]  ring_nf  have : map (prodMkRight T' κ ×ₖ prodMkLeft T (const T' (Measure.dirac 0)))        (fun x  x.1 - x.2)      = prodMkRight T' κ := by    ext x s hs    rw [prodMkRight_apply, map_apply _ (by fun_prop), prod_apply, prodMkLeft_apply, const_apply,      prodMkRight_apply, Measure.map_apply measurable_sub hs,      Measure.prod_apply (measurable_sub hs)]    have (x : G) : Prod.mk x ⁻¹' ((fun p : G × G  p.1 - p.2) ⁻¹' s) = {y | x - y  s} := by      ext; simp    simp_rw [this]    have (x : G) : Set.indicator {y | x - y  s} (1 : G  0∞) 0 = s.indicator (fun _  1) x := by      by_cases hx : x  s <;> simp [hx]    simp only [Measure.dirac_apply, this]    rw [lintegral_indicator_const hs, one_mul]  rw [this, entropy_prodMkRight']