Skip to content

Commit 59fed9c

Browse files
EtienneC30b-mehta
authored andcommitted
feat: integral of a continuous bilinear map applied to independent random variables (leanprover-community#38754)
If `X` and `Y` are independent then `∫ ω, X ω * Y ω ∂μ = ∫ ω, X ω ∂μ * ∫ ω, Y ω ∂μ`. We generalize this to the case of a general continuous bilinear map, and specialize it for scalar multiplication and multiplication.
1 parent d408836 commit 59fed9c

2 files changed

Lines changed: 263 additions & 77 deletions

File tree

Mathlib/MeasureTheory/Integral/Prod.lean

Lines changed: 14 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -554,6 +554,20 @@ theorem setIntegral_prod (f : α × β → E) {s : Set α} {t : Set β}
554554
simp only [← Measure.prod_restrict s t, IntegrableOn] at hf ⊢
555555
exact integral_prod f hf
556556

557+
theorem integral_prod_bilin {E F G 𝕜 : Type*} [RCLike 𝕜]
558+
[NormedAddCommGroup E] [NormedSpace ℝ E] [NormedSpace 𝕜 E] [CompleteSpace E]
559+
[NormedAddCommGroup F] [NormedSpace ℝ F] [NormedSpace 𝕜 F] [CompleteSpace F]
560+
[NormedAddCommGroup G] [NormedSpace ℝ G] [NormedSpace 𝕜 G] [CompleteSpace G]
561+
(B : E →L[𝕜] F →L[𝕜] G) {f : α → E} {g : β → F}
562+
(hf : Integrable f μ) (hg : Integrable g ν) :
563+
∫ z, B (f z.1) (g z.2) ∂μ.prod ν = B (∫ x, f x ∂μ) (∫ y, g y ∂ν) := by
564+
have : Integrable (fun z ↦ B (f z.1) (g z.2)) (μ.prod ν) :=
565+
hf.op_fst_snd (by fun_prop) ⟨‖B‖, B.le_opNorm₂⟩ hg
566+
simp_rw [integral_prod _ this, ContinuousLinearMap.integral_comp_comm _ hg]
567+
change ∫ x, B.flip (∫ y, g y ∂ν) (f x) ∂μ = _
568+
rw [ContinuousLinearMap.integral_comp_comm _ hf]
569+
simp
570+
557571
theorem integral_prod_smul {𝕜 : Type*} [RCLike 𝕜] [NormedSpace 𝕜 E] (f : α → 𝕜) (g : β → E) :
558572
∫ z, f z.1 • g z.2 ∂μ.prod ν = (∫ x, f x ∂μ) • ∫ y, g y ∂ν := by
559573
by_cases hE : CompleteSpace E; swap; · simp [integral, hE]

0 commit comments

Comments
 (0)