ProbabilityTheory.Kernel.HasSubexponentialMGF.integrable_exp_add_compProd
Lemma
No docstring.
Types
-
Ω : Type u_1mΩ : MeasurableSpace ΩA measurable space is a space equipped with a σ-algebra. -
Ω' : Type u_2mΩ' : MeasurableSpace Ω' -
Ω'' : Type u_3mΩ'' : MeasurableSpace Ω''
Given
-
ν : MeasureTheory.Measure Ω'A measure is defined to be an outer measure that is countably additive on measurable sets, with the additional assumption that the outer measure is the canonical extension of the restricted measure.MeasureTheory.SFinite νA measure is called s-finite if it is a countable sum of finite measures. -
κ : Kernel Ω' ΩA kernel from a measurable spaceαto another measurable spaceβis a measurable functionκ : α → Measure β. -
X : Ω → ℝ -
V : ℝ -
b : ℝ -
Y : Ω'' → ℝ -
VY : ℝ -
η : Kernel (Ω' × Ω) Ω''IsZeroOrMarkovKernel ηA class for kernels which are zero or a Markov kernel. -
t : ℝ
Assuming
-
hX : HasSubexponentialMGF X V b κ νA random variableXhas a sub-exponential moment-generating function with parameters(V, b)with respect to a kernelκand a measureνif for everytwithb * |t| ≤ 1,exp (t * X)is int… -
hY : HasSubexponentialMGF Y VY b η (ν.compProd κ) -
ht : b * |t| ≤ 1
Then
MeasureTheory.Integrable (fun ω => Real.exp (t * (X ω.1 + Y ω.2))) (ν.bind ⇑(κ.compProd η))Integrable f μ means that f is measurable and that the integral ∫⁻ a, ‖f a‖ ∂μ is finite.MeasurableSpace : Type u_6 → Type u_6A measurable space is a space equipped with a σ-algebra.
MeasureTheory.SFinite : {α : Type u_1} → {m0 : MeasurableSpace α} → MeasureTheory.Measure α → PropA measure is called s-finite if it is a countable sum of finite measures.
MeasureTheory.Measure : (α : Type u_5) → [MeasurableSpace α] → Type u_5A measure is defined to be an outer measure that is countably additive on measurable sets, with the additional assumption that the outer measure is the canonical extension of the restricted measure. The measure of a set `s`, denoted `μ s`, is an extended nonnegative real. The real-valued version is written `μ.real s`.
ProbabilityTheory.Kernel : (α : Type u_1) → (β : Type u_2) → [MeasurableSpace α] → [MeasurableSpace β] → Type (max u_1 u_2)A kernel from a measurable space `α` to another measurable space `β` is a measurable function `κ : α → Measure β`. The measurable space structure on `MeasureTheory.Measure β` is given by `MeasureTheory.Measure.instMeasurableSpace`. A map `κ : α → MeasureTheory.Measure β` is measurable iff `∀ s : Set β, MeasurableSet s → Measurable (fun a ↦ κ a s)`.
Real : TypeThe type `ℝ` of real numbers constructed as equivalence classes of Cauchy sequences of rational numbers.
ProbabilityTheory.IsZeroOrMarkovKernel : {α : Type u_1} →
{β : Type u_2} → {mα : MeasurableSpace α} → {mβ : MeasurableSpace β} → ProbabilityTheory.Kernel α β → PropA class for kernels which are zero or a Markov kernel.
Prod : Type u → Type v → Type (max u v)The product type, usually written `α × β`. Product types are also called pair or tuple types. Elements of this type are pairs in which the first element is an `α` and the second element is a `β`. Products nest to the right, so `(x, y, z) : α × β × γ` is equivalent to `(x, (y, z)) : α × (β × γ)`. Conventions for notations in identifiers: * The recommended spelling of `×` in identifiers is `Prod`.
ProbabilityTheory.Kernel.HasSubexponentialMGF : {Ω : Type u_1} →
{Ω' : Type u_2} →
{mΩ : MeasurableSpace Ω} →
{mΩ' : MeasurableSpace Ω'} →
(Ω → ℝ) →
ℝ →
ℝ →
ProbabilityTheory.Kernel Ω' Ω →
autoParam (MeasureTheory.Measure Ω') ProbabilityTheory.Kernel.HasSubexponentialMGF._auto_1 → PropA random variable `X` has a sub-exponential moment-generating function with parameters `(V, b)` with respect to a kernel `κ` and a measure `ν` if for every `t` with `b * |t| ≤ 1`, `exp (t * X)` is integrable with respect to `κ ∘ₘ ν` and, for `ν`-almost all `ω'`, the moment-generating function of `X` with respect to `κ ω'` is bounded by `exp (V * t ^ 2 / 2)`. For `b = 0` this is `Kernel.HasSubgaussianMGF X V κ ν`.Go to its page
MeasureTheory.Measure.compProd : {α : Type u_1} →
{β : Type u_2} →
{mα : MeasurableSpace α} →
{mβ : MeasurableSpace β} → MeasureTheory.Measure α → ProbabilityTheory.Kernel α β → MeasureTheory.Measure (α × β)The composition-product of a measure and a kernel.
LE.le : {α : Type u} → [self : LE α] → α → α → PropThe less-equal relation: `x ≤ y` Conventions for notations in identifiers: * The recommended spelling of `≤` in identifiers is `le`.
HMul.hMul : {α : Type u} → {β : Type v} → {γ : outParam (Type w)} → [self : HMul α β γ] → α → β → γ`a * b` computes the product of `a` and `b`. The meaning of this notation is type-dependent. Conventions for notations in identifiers: * The recommended spelling of `*` in identifiers is `mul`.
abs : {α : Type u_1} → [Lattice α] → [AddGroup α] → α → α`abs a`, denoted `|a|`, is the absolute value of `a`
MeasureTheory.Integrable : {ε : Type u_5} →
[inst : TopologicalSpace ε] →
[ContinuousENorm ε] →
{α : Type u_7} →
{x : MeasurableSpace α} → (α → ε) → autoParam (MeasureTheory.Measure α) MeasureTheory.Integrable._auto_1 → Prop`Integrable f μ` means that `f` is measurable and that the integral `∫⁻ a, ‖f a‖ ∂μ` is finite. `Integrable f` means `Integrable f volume`.
Real.exp : ℝ → ℝThe real exponential function, defined as the real part of the complex exponential
HAdd.hAdd : {α : Type u} → {β : Type v} → {γ : outParam (Type w)} → [self : HAdd α β γ] → α → β → γ`a + b` computes the sum of `a` and `b`. The meaning of this notation is type-dependent. Conventions for notations in identifiers: * The recommended spelling of `+` in identifiers is `add`.
MeasureTheory.Measure.bind : {α : Type u_1} →
{β : Type u_2} →
{mα : MeasurableSpace α} →
{mβ : MeasurableSpace β} → MeasureTheory.Measure α → (α → MeasureTheory.Measure β) → MeasureTheory.Measure βMonadic bind on `Measure`, only works in the category of measurable spaces and measurable functions. When the function `f` is not measurable the result is not well defined.
ProbabilityTheory.Kernel.compProd : {α : Type u_4} →
{β : Type u_5} →
{γ : Type u_6} →
{mα : MeasurableSpace α} →
{mβ : MeasurableSpace β} →
{mγ : MeasurableSpace γ} →
ProbabilityTheory.Kernel α β → ProbabilityTheory.Kernel (α × β) γ → ProbabilityTheory.Kernel α (β × γ)Composition-Product of kernels. For s-finite kernels, it satisfies `∫⁻ bc, f bc ∂(compProd κ η a) = ∫⁻ b, ∫⁻ c, f (b, c) ∂(η (a, b)) ∂(κ a)` (see `ProbabilityTheory.Kernel.lintegral_compProd`). If either of the kernels is not s-finite, `compProd` is given the junk value 0.
Code
lemma integrable_exp_add_compProd {η : Kernel (Ω' × Ω) Ω''} [IsZeroOrMarkovKernel η]
(hX : HasSubexponentialMGF X V b κ ν) (hY : HasSubexponentialMGF Y VY b η (ν ⊗ₘ κ))
{t : ℝ} (ht : b * |t| ≤ 1) :
Integrable (fun ω ↦ exp (t * (X ω.1 + Y ω.2))) ((κ ⊗ₖ η) ∘ₘ ν)Proof
by
by_cases hκ : IsSFiniteKernel κ
swap; · simp [FunLike.coe_zero, hκ]
rcases eq_zero_or_isMarkovKernel η with rfl | hη
· simp [FunLike.coe_zero]
set μ := (κ ⊗ₖ η) ∘ₘ ν with hμ
have hfst : κ ∘ₘ ν = μ.map Prod.fst := by
rw [hμ, Measure.map_comp _ _ measurable_fst, ← Kernel.fst_eq, Kernel.fst_compProd]
have hsnd : η ∘ₘ (ν ⊗ₘ κ) = μ.map Prod.snd := by
rw [hμ, Measure.comp_compProd_comm, Measure.snd]
-- measurable representatives of `X` and `Y`
have hXm := hX.aestronglyMeasurable
have hYm := hY.aestronglyMeasurable
set X' := hXm.mk X with hX'
set Y' := hYm.mk Y with hY'
have hX'm : Measurable X' := hXm.stronglyMeasurable_mk.measurable
have hY'm : Measurable Y' := hYm.stronglyMeasurable_mk.measurable
have hX'' : HasSubexponentialMGF X' V b κ ν := hX.congr hXm.ae_eq_mk
have hY'' : HasSubexponentialMGF Y' VY b η (ν ⊗ₘ κ) := hY.congr hYm.ae_eq_mk
have hXeq : (fun ω : Ω × Ω'' ↦ X ω.1) =ᵐ[μ] fun ω ↦ X' ω.1 := by
have h : ∀ᵐ y ∂(μ.map Prod.fst), X y = X' y := by
rw [← hfst]
exact hXm.ae_eq_mk
exact ae_of_ae_map measurable_fst.aemeasurable h
have hYeq : (fun ω : Ω × Ω'' ↦ Y ω.2) =ᵐ[μ] fun ω ↦ Y' ω.2 := by
have h : ∀ᵐ y ∂(μ.map Prod.snd), Y y = Y' y := by
rw [← hsnd]
exact hYm.ae_eq_mk
exact ae_of_ae_map measurable_snd.aemeasurable h
have h_eq : (fun ω : Ω × Ω'' ↦ exp (t * (X ω.1 + Y ω.2)))
=ᵐ[μ] fun ω ↦ exp (t * X' ω.1) * exp (t * Y' ω.2) := by
filter_upwards [hXeq, hYeq] with ω h1 h2
rw [h1, h2, mul_add, exp_add]
rw [integrable_congr h_eq]
refine ⟨(by fun_prop : Measurable fun ω : Ω × Ω'' ↦ exp (t * X' ω.1) * exp (t * Y' ω.2))
|>.aestronglyMeasurable, ?_⟩
rw [hasFiniteIntegral_iff_ofReal (ae_of_all _ fun _ ↦ by positivity)]
-- the bound on the inner integral
have h_inner : ∀ᵐ ω' ∂ν, ∀ᵐ x ∂κ ω',
∫⁻ y, ENNReal.ofReal (exp (t * Y' y)) ∂η (ω', x) ≤ ENNReal.ofReal (exp (VY * t ^ 2 / 2)) := by
refine Measure.ae_ae_of_ae_compProd (p := fun p ↦ ∫⁻ y, ENNReal.ofReal (exp (t * Y' y)) ∂η p
≤ ENNReal.ofReal (exp (VY * t ^ 2 / 2))) ?_
filter_upwards [hY''.mgf_le, hY''.ae_integrable_exp_mul ht] with p h_mgf h_int
rw [← ofReal_integral_eq_lintegral_ofReal h_int (ae_of_all _ fun _ ↦ by positivity)]
exact ENNReal.ofReal_le_ofReal (h_mgf t ht)
have hmeas : Measurable fun ω : Ω × Ω'' ↦
ENNReal.ofReal (exp (t * X' ω.1)) * ENNReal.ofReal (exp (t * Y' ω.2)) := by fun_prop
calc ∫⁻ ω, ENNReal.ofReal (exp (t * X' ω.1) * exp (t * Y' ω.2)) ∂μ
_ = ∫⁻ ω', ∫⁻ x, ∫⁻ y, ENNReal.ofReal (exp (t * X' x)) * ENNReal.ofReal (exp (t * Y' y))
∂η (ω', x) ∂κ ω' ∂ν := by
simp_rw [ENNReal.ofReal_mul (exp_pos _).le]
rw [hμ, Measure.lintegral_bind (Kernel.aemeasurable _) hmeas.aemeasurable]
congr with ω'
rw [Kernel.lintegral_compProd _ _ _ hmeas]
_ ≤ ∫⁻ ω', ∫⁻ x, ENNReal.ofReal (exp (t * X' x)) * ENNReal.ofReal (exp (VY * t ^ 2 / 2))
∂κ ω' ∂ν := by
refine lintegral_mono_ae ?_
filter_upwards [h_inner] with ω' h_inner
refine lintegral_mono_ae ?_
filter_upwards [h_inner] with x hx
rw [lintegral_const_mul' _ _ ENNReal.ofReal_ne_top]
gcongr
_ = (∫⁻ x, ENNReal.ofReal (exp (t * X' x)) ∂(κ ∘ₘ ν))
* ENNReal.ofReal (exp (VY * t ^ 2 / 2)) := by
rw [Measure.lintegral_bind (Kernel.aemeasurable _) (by fun_prop),
← lintegral_mul_const' _ _ ENNReal.ofReal_ne_top]
congr with ω'
rw [lintegral_mul_const' _ _ ENNReal.ofReal_ne_top]
_ < ∞ := by
refine ENNReal.mul_lt_top ?_ ENNReal.ofReal_lt_top
have := (hX''.integrable_exp_mul t ht).2
rwa [hasFiniteIntegral_iff_ofReal (ae_of_all _ fun _ ↦ by positivity)] at thisMeaning last changed in v4.34.0-rc2-76-g565f652 (2026-09-10).
Self-contained, with its dependencies inlined and proofs replaced by sorry: download the raw file · open it in the Lean web editor.
Dependency graph
Audit surface: 1 project declarations, 71 external constants
✓ Proved: no sorry anywhere in its closure
This is the tool's own reading of one build's recorded axioms, and it is not robust against an author who wants it to pass. Checking meant to be relied on should go through Comparator, which replays the proof through the kernel from an export against an explicit list of permitted axioms.