Skip to main content
fpvandoorn/carleson
Source indexedlemma · leanprover/lean4:v4.32.0

MeasureTheory.lintegral_lintegral_pow_swap

Carleson.ToMathlib.RealInterpolation.Minkowski · Carleson/ToMathlib/RealInterpolation/Minkowski.lean:271 to 309

Mathematical statement

Exact Lean statement

lemma lintegral_lintegral_pow_swap {α : Type u_1} {β : Type u_3} {p : ℝ} (hp : 1 ≤ p)
    [MeasurableSpace α] [MeasurableSpace β]
    {μ : Measure α} {ν : Measure β} [SFinite ν]
    [SigmaFinite μ] ⦃f : α → β → ENNReal⦄
    (hf : AEMeasurable (Function.uncurry f) (μ.prod ν)) :
    (∫⁻ (x : α), (∫⁻ (y : β), f x y ∂ν) ^ p ∂μ) ^ p⁻¹ ≤
    ∫⁻ (y : β), (∫⁻ (x : α), (f x y) ^ p ∂μ) ^ p⁻¹ ∂ν

Complete declaration

Lean source

Canonical source
Full Lean sourceLean 4
lemma lintegral_lintegral_pow_swap {α : Type u_1} {β : Type u_3} {p : } (hp : 1  p)    [MeasurableSpace α] [MeasurableSpace β]    {μ : Measure α} {ν : Measure β} [SFinite ν]    [SigmaFinite μ] ⦃f : α  β  ENNReal⦄    (hf : AEMeasurable (Function.uncurry f) (μ.prod ν)) :    (∫⁻ (x : α), (∫⁻ (y : β), f x y ∂ν) ^ p ∂μ) ^ p⁻¹     ∫⁻ (y : β), (∫⁻ (x : α), (f x y) ^ p ∂μ) ^ p⁻¹ ∂ν := by  rcases Decidable.lt_or_eq_of_le hp with one_lt_p | one_eq_p  · let q := Real.conjExponent p    have hpq' : p.HolderConjugate q := Real.HolderConjugate.conjExponent one_lt_p    have one_lt_q : 1 < q := (Real.HolderConjugate.symm hpq').lt    have ineq :  g  {g' : α  0∞ | AEMeasurable g' μ  ∫⁻ (z : α), (g' z) ^ q ∂μ  1},        ∫⁻ x : α, (∫⁻ y : β, f x y ∂ν) * g x ∂μ         ∫⁻ (y : β), (∫⁻ (x : α), f x y ^ p ∂μ) ^ p⁻¹ ∂ν := by      intro g hg1, hg2      have ae_meas₁ : ᵐ x : α ∂μ, AEMeasurable (f x) ν :=        aemeasurability_prod₁ (f := Function.uncurry f) hf      calc      _ = ∫⁻ x : α, (∫⁻ y : β, f x y * g x ∂ν) ∂μ := by        apply lintegral_congr_ae        filter_upwards [ae_meas₁] with a ha using (lintegral_mul_const'' _ ha).symm      _ = ∫⁻ y : β, (∫⁻ x : α, f x y * g x ∂μ) ∂ν := lintegral_lintegral_swap (hf.mul hg1.comp_fst)      _  ∫⁻ (y : β), (∫⁻ (x : α), f x y ^ p ∂μ) ^ p⁻¹ ∂ν := by        apply lintegral_mono_ae        filter_upwards [aemeasurability_prod₂ hf] with y hy        calc        _  (∫⁻ (x : α), f x y ^ p ∂μ) ^ (1 / p) * (∫⁻ (x : α), g x ^ q ∂μ) ^ (1 / q) :=          ENNReal.lintegral_mul_le_Lp_mul_Lq μ hpq' hy hg1        _  (∫⁻ (x : α), f x y ^ p ∂μ) ^ (1 / p) * 1 ^ (1 / q) := by          gcongr        _ = (∫⁻ (x : α), f x y ^ p ∂μ) ^ p⁻¹ := by          simp [one_div]    nth_rw 1 [ one_div]    rw [representationLp (hp := one_lt_p) (hq := one_lt_q.le) (hpq := hpq'.inv_add_inv_eq_one)]    · exact (iSup_le fun g  iSup_le fun hg  ineq g hg)    · exact (aemeasurable_integral_component hf)  · rw [ one_eq_p]    simp only [ENNReal.rpow_one, inv_one]    exact (lintegral_lintegral_swap hf).le