Documentation

LeanMachineLearning.ForMathlib.Probability.WithDensity

Lemmas about kernels and measures with density #

theorem MeasureTheory.map_withDensity_comp {α : Type u_1} {γ : Type u_3} { : MeasurableSpace α} { : MeasurableSpace γ} {μ : Measure α} {g : αγ} {f : γENNReal} (hg : Measurable g) (hf : Measurable f) :
theorem MeasureTheory.map_equiv_withDensity {α : Type u_1} {β : Type u_2} { : MeasurableSpace α} { : MeasurableSpace β} {μ : Measure α} {e : α ≃ᵐ β} {f : αENNReal} (hf : Measurable f) :
Measure.map (⇑e) (μ.withDensity f) = (Measure.map (⇑e) μ).withDensity (f e.symm)
theorem MeasureTheory.map_swap_withDensity_comp_snd {α : Type u_1} {β : Type u_2} { : MeasurableSpace α} { : MeasurableSpace β} {μ : Measure (α × β)} {f : βENNReal} (hf : Measurable f) :
Measure.map Prod.swap (μ.withDensity fun (ab : α × β) => f ab.2) = (Measure.map Prod.swap μ).withDensity fun (ba : β × α) => f ba.1
theorem MeasureTheory.Measure.compProd_withDensity_left {α : Type u_1} {β : Type u_2} { : MeasurableSpace α} { : MeasurableSpace β} {μ : Measure α} [SFinite μ] {κ : ProbabilityTheory.Kernel α β} [ProbabilityTheory.IsSFiniteKernel κ] {f : αENNReal} (hf : Measurable f) :
(μ.withDensity f).compProd κ = (μ.compProd κ).withDensity fun (ab : α × β) => f ab.1
theorem MeasureTheory.Measure.compProd_withDensity_withDensity {α : Type u_1} {β : Type u_2} { : MeasurableSpace α} { : MeasurableSpace β} {μ : Measure α} [SFinite μ] {κ : ProbabilityTheory.Kernel α β} [ProbabilityTheory.IsSFiniteKernel κ] {f : αENNReal} {g : αβENNReal} (hf : Measurable f) (hg : Measurable (Function.uncurry g)) [ProbabilityTheory.IsSFiniteKernel (κ.withDensity g)] :
(μ.withDensity f).compProd (κ.withDensity g) = (μ.compProd κ).withDensity fun (ac : α × β) => f ac.1 * g ac.1 ac.2
theorem MeasureTheory.Measure.compProd_eq_compProd_withDensity_comp_snd {α : Type u_1} {β : Type u_2} { : MeasurableSpace α} { : MeasurableSpace β} {μ : Measure α} [SFinite μ] {κ η : ProbabilityTheory.Kernel α β} [ProbabilityTheory.IsSFiniteKernel κ] [ProbabilityTheory.IsSFiniteKernel η] {f : βENNReal} (hf : Measurable f) (h : κ =ᵐ[μ] (η.withDensity fun (x : α) (b : β) => f b)) :
μ.compProd κ = (μ.compProd η).withDensity fun (ab : α × β) => f ab.2
theorem ProbabilityTheory.Kernel.comp_withDensity_eq_withDensity_comp {α : Type u_1} {β : Type u_2} { : MeasurableSpace α} { : MeasurableSpace β} {μ : MeasureTheory.Measure α} {κ : Kernel α β} [IsSFiniteKernel κ] {f : βENNReal} (hf : Measurable f) :
μ.bind (κ.withDensity fun (x : α) (b : β) => f b) = (μ.bind κ).withDensity f
theorem ProbabilityTheory.Kernel.compProd_withDensity_left {α : Type u_1} {β : Type u_2} {γ : Type u_3} { : MeasurableSpace α} { : MeasurableSpace β} { : MeasurableSpace γ} {κ : Kernel α β} {η : Kernel (α × β) γ} {f : αβENNReal} [IsSFiniteKernel κ] [IsSFiniteKernel η] [IsSFiniteKernel (κ.withDensity f)] (hf : Measurable (Function.uncurry f)) :
(κ.withDensity f).compProd η = (κ.compProd η).withDensity fun (a : α) (bc : β × γ) => f a bc.1
theorem ProbabilityTheory.Kernel.withDensity_rnDeriv_eq' {α : Type u_1} {β : Type u_2} { : MeasurableSpace α} { : MeasurableSpace β} {κ η : Kernel α β} [MeasurableSpace.CountableOrCountablyGenerated α β] [IsFiniteKernel κ] [IsFiniteKernel η] (h : ∀ (a : α), (κ a).AbsolutelyContinuous (η a)) :
η.withDensity (κ.rnDeriv η) = κ