Documentation

Mathlib.MeasureTheory.Integral.Prod

Integration with respect to the product measure #

In this file we prove Fubini's theorem.

Main results #

Tags #

product measure, Fubini's theorem, Fubini-Tonelli theorem

Measurability #

Before we define the product measure, we can talk about the measurability of operations on binary functions. We show that if f is a binary measurable function, then the function that integrates along one of the variables (using either the Lebesgue or Bochner integral) is measurable.

theorem MeasureTheory.StronglyMeasurable.integral_prod_right {α : Type u_1} {β : Type u_2} {E : Type u_3} [MeasurableSpace α] [MeasurableSpace β] {ν : Measure β} [NormedAddCommGroup E] [NormedSpace E] [SFinite ν] ⦃f : αβE (hf : StronglyMeasurable (Function.uncurry f)) :
StronglyMeasurable fun (x : α) => (y : β), f x y ν

The Bochner integral is measurable. This shows that the integrand of (the right-hand-side of) Fubini's theorem is measurable. This version has f in curried form.

theorem MeasureTheory.StronglyMeasurable.integral_prod_right' {α : Type u_1} {β : Type u_2} {E : Type u_3} [MeasurableSpace α] [MeasurableSpace β] {ν : Measure β} [NormedAddCommGroup E] [NormedSpace E] [SFinite ν] ⦃f : α × βE (hf : StronglyMeasurable f) :
StronglyMeasurable fun (x : α) => (y : β), f (x, y) ν

The Bochner integral is measurable. This shows that the integrand of (the right-hand-side of) Fubini's theorem is measurable.

theorem MeasureTheory.StronglyMeasurable.integral_prod_left {α : Type u_1} {β : Type u_2} {E : Type u_3} [MeasurableSpace α] [MeasurableSpace β] {μ : Measure α} [NormedAddCommGroup E] [NormedSpace E] [SFinite μ] ⦃f : αβE (hf : StronglyMeasurable (Function.uncurry f)) :
StronglyMeasurable fun (y : β) => (x : α), f x y μ

The Bochner integral is measurable. This shows that the integrand of (the right-hand-side of) the symmetric version of Fubini's theorem is measurable. This version has f in curried form.

theorem MeasureTheory.StronglyMeasurable.integral_prod_left' {α : Type u_1} {β : Type u_2} {E : Type u_3} [MeasurableSpace α] [MeasurableSpace β] {μ : Measure α} [NormedAddCommGroup E] [NormedSpace E] [SFinite μ] ⦃f : α × βE (hf : StronglyMeasurable f) :
StronglyMeasurable fun (y : β) => (x : α), f (x, y) μ

The Bochner integral is measurable. This shows that the integrand of (the right-hand-side of) the symmetric version of Fubini's theorem is measurable.

The product measure #

theorem MeasureTheory.Measure.integrable_measure_prod_mk_left {α : Type u_1} {β : Type u_2} [MeasurableSpace α] [MeasurableSpace β] {μ : Measure α} {ν : Measure β} [SFinite ν] {s : Set (α × β)} (hs : MeasurableSet s) (h2s : (μ.prod ν) s ) :
Integrable (fun (x : α) => (ν (Prod.mk x ⁻¹' s)).toReal) μ
theorem MeasureTheory.AEStronglyMeasurable.prod_swap {α : Type u_1} {β : Type u_2} [MeasurableSpace α] [MeasurableSpace β] {μ : Measure α} {ν : Measure β} {γ : Type u_4} [TopologicalSpace γ] [SFinite μ] [SFinite ν] {f : β × αγ} (hf : AEStronglyMeasurable f (ν.prod μ)) :
AEStronglyMeasurable (fun (z : α × β) => f z.swap) (μ.prod ν)
theorem MeasureTheory.AEStronglyMeasurable.fst {α : Type u_1} {β : Type u_2} [MeasurableSpace α] [MeasurableSpace β] {μ : Measure α} {ν : Measure β} {γ : Type u_4} [TopologicalSpace γ] [SFinite ν] {f : αγ} (hf : AEStronglyMeasurable f μ) :
AEStronglyMeasurable (fun (z : α × β) => f z.1) (μ.prod ν)
theorem MeasureTheory.AEStronglyMeasurable.snd {α : Type u_1} {β : Type u_2} [MeasurableSpace α] [MeasurableSpace β] {μ : Measure α} {ν : Measure β} {γ : Type u_4} [TopologicalSpace γ] [SFinite ν] {f : βγ} (hf : AEStronglyMeasurable f ν) :
AEStronglyMeasurable (fun (z : α × β) => f z.2) (μ.prod ν)
theorem MeasureTheory.AEStronglyMeasurable.integral_prod_right' {α : Type u_1} {β : Type u_2} {E : Type u_3} [MeasurableSpace α] [MeasurableSpace β] {μ : Measure α} {ν : Measure β} [NormedAddCommGroup E] [SFinite ν] [NormedSpace E] ⦃f : α × βE (hf : AEStronglyMeasurable f (μ.prod ν)) :
AEStronglyMeasurable (fun (x : α) => (y : β), f (x, y) ν) μ

The Bochner integral is a.e.-measurable. This shows that the integrand of (the right-hand-side of) Fubini's theorem is a.e.-measurable.

theorem MeasureTheory.AEStronglyMeasurable.prod_mk_left {α : Type u_1} {β : Type u_2} [MeasurableSpace α] [MeasurableSpace β] {μ : Measure α} {ν : Measure β} {γ : Type u_4} [SFinite ν] [TopologicalSpace γ] {f : α × βγ} (hf : AEStronglyMeasurable f (μ.prod ν)) :
∀ᵐ (x : α) μ, AEStronglyMeasurable (fun (y : β) => f (x, y)) ν

Integrability on a product #

theorem MeasureTheory.integrable_swap_iff {α : Type u_1} {β : Type u_2} {E : Type u_3} [MeasurableSpace α] [MeasurableSpace β] {μ : Measure α} {ν : Measure β} [NormedAddCommGroup E] [SFinite ν] [SFinite μ] {f : α × βE} :
Integrable (f Prod.swap) (ν.prod μ) Integrable f (μ.prod ν)
theorem MeasureTheory.Integrable.swap {α : Type u_1} {β : Type u_2} {E : Type u_3} [MeasurableSpace α] [MeasurableSpace β] {μ : Measure α} {ν : Measure β} [NormedAddCommGroup E] [SFinite ν] [SFinite μ] ⦃f : α × βE (hf : Integrable f (μ.prod ν)) :
Integrable (f Prod.swap) (ν.prod μ)
theorem MeasureTheory.hasFiniteIntegral_prod_iff {α : Type u_1} {β : Type u_2} {E : Type u_3} [MeasurableSpace α] [MeasurableSpace β] {μ : Measure α} {ν : Measure β} [NormedAddCommGroup E] [SFinite ν] ⦃f : α × βE (h1f : StronglyMeasurable f) :
HasFiniteIntegral f (μ.prod ν) (∀ᵐ (x : α) μ, HasFiniteIntegral (fun (y : β) => f (x, y)) ν) HasFiniteIntegral (fun (x : α) => (y : β), f (x, y) ν) μ
theorem MeasureTheory.hasFiniteIntegral_prod_iff' {α : Type u_1} {β : Type u_2} {E : Type u_3} [MeasurableSpace α] [MeasurableSpace β] {μ : Measure α} {ν : Measure β} [NormedAddCommGroup E] [SFinite ν] ⦃f : α × βE (h1f : AEStronglyMeasurable f (μ.prod ν)) :
HasFiniteIntegral f (μ.prod ν) (∀ᵐ (x : α) μ, HasFiniteIntegral (fun (y : β) => f (x, y)) ν) HasFiniteIntegral (fun (x : α) => (y : β), f (x, y) ν) μ
theorem MeasureTheory.integrable_prod_iff {α : Type u_1} {β : Type u_2} {E : Type u_3} [MeasurableSpace α] [MeasurableSpace β] {μ : Measure α} {ν : Measure β} [NormedAddCommGroup E] [SFinite ν] ⦃f : α × βE (h1f : AEStronglyMeasurable f (μ.prod ν)) :
Integrable f (μ.prod ν) (∀ᵐ (x : α) μ, Integrable (fun (y : β) => f (x, y)) ν) Integrable (fun (x : α) => (y : β), f (x, y) ν) μ

A binary function is integrable if the function y ↦ f (x, y) is integrable for almost every x and the function x ↦ ∫ ‖f (x, y)‖ dy is integrable.

theorem MeasureTheory.integrable_prod_iff' {α : Type u_1} {β : Type u_2} {E : Type u_3} [MeasurableSpace α] [MeasurableSpace β] {μ : Measure α} {ν : Measure β} [NormedAddCommGroup E] [SFinite ν] [SFinite μ] ⦃f : α × βE (h1f : AEStronglyMeasurable f (μ.prod ν)) :
Integrable f (μ.prod ν) (∀ᵐ (y : β) ν, Integrable (fun (x : α) => f (x, y)) μ) Integrable (fun (y : β) => (x : α), f (x, y) μ) ν

A binary function is integrable if the function x ↦ f (x, y) is integrable for almost every y and the function y ↦ ∫ ‖f (x, y)‖ dx is integrable.

theorem MeasureTheory.Integrable.prod_left_ae {α : Type u_1} {β : Type u_2} {E : Type u_3} [MeasurableSpace α] [MeasurableSpace β] {μ : Measure α} {ν : Measure β} [NormedAddCommGroup E] [SFinite ν] [SFinite μ] ⦃f : α × βE (hf : Integrable f (μ.prod ν)) :
∀ᵐ (y : β) ν, Integrable (fun (x : α) => f (x, y)) μ
theorem MeasureTheory.Integrable.prod_right_ae {α : Type u_1} {β : Type u_2} {E : Type u_3} [MeasurableSpace α] [MeasurableSpace β] {μ : Measure α} {ν : Measure β} [NormedAddCommGroup E] [SFinite ν] [SFinite μ] ⦃f : α × βE (hf : Integrable f (μ.prod ν)) :
∀ᵐ (x : α) μ, Integrable (fun (y : β) => f (x, y)) ν
theorem MeasureTheory.Integrable.integral_norm_prod_left {α : Type u_1} {β : Type u_2} {E : Type u_3} [MeasurableSpace α] [MeasurableSpace β] {μ : Measure α} {ν : Measure β} [NormedAddCommGroup E] [SFinite ν] ⦃f : α × βE (hf : Integrable f (μ.prod ν)) :
Integrable (fun (x : α) => (y : β), f (x, y) ν) μ
theorem MeasureTheory.Integrable.integral_norm_prod_right {α : Type u_1} {β : Type u_2} {E : Type u_3} [MeasurableSpace α] [MeasurableSpace β] {μ : Measure α} {ν : Measure β} [NormedAddCommGroup E] [SFinite ν] [SFinite μ] ⦃f : α × βE (hf : Integrable f (μ.prod ν)) :
Integrable (fun (y : β) => (x : α), f (x, y) μ) ν
theorem MeasureTheory.Integrable.prod_smul {α : Type u_1} {β : Type u_2} {E : Type u_3} [MeasurableSpace α] [MeasurableSpace β] {μ : Measure α} {ν : Measure β} [NormedAddCommGroup E] [SFinite ν] {𝕜 : Type u_4} [NontriviallyNormedField 𝕜] [NormedSpace 𝕜 E] {f : α𝕜} {g : βE} (hf : Integrable f μ) (hg : Integrable g ν) :
Integrable (fun (z : α × β) => f z.1 g z.2) (μ.prod ν)
theorem MeasureTheory.Integrable.prod_mul {α : Type u_1} {β : Type u_2} [MeasurableSpace α] [MeasurableSpace β] {μ : Measure α} {ν : Measure β} [SFinite ν] {L : Type u_4} [RCLike L] {f : αL} {g : βL} (hf : Integrable f μ) (hg : Integrable g ν) :
Integrable (fun (z : α × β) => f z.1 * g z.2) (μ.prod ν)
theorem MeasureTheory.Integrable.integral_prod_left {α : Type u_1} {β : Type u_2} {E : Type u_3} [MeasurableSpace α] [MeasurableSpace β] {μ : Measure α} {ν : Measure β} [NormedAddCommGroup E] [SFinite ν] [NormedSpace E] ⦃f : α × βE (hf : Integrable f (μ.prod ν)) :
Integrable (fun (x : α) => (y : β), f (x, y) ν) μ
theorem MeasureTheory.Integrable.integral_prod_right {α : Type u_1} {β : Type u_2} {E : Type u_3} [MeasurableSpace α] [MeasurableSpace β] {μ : Measure α} {ν : Measure β} [NormedAddCommGroup E] [SFinite ν] [NormedSpace E] [SFinite μ] ⦃f : α × βE (hf : Integrable f (μ.prod ν)) :
Integrable (fun (y : β) => (x : α), f (x, y) μ) ν

The Bochner integral on a product #

theorem MeasureTheory.integral_prod_swap {α : Type u_1} {β : Type u_2} {E : Type u_3} [MeasurableSpace α] [MeasurableSpace β] {μ : Measure α} {ν : Measure β} [NormedAddCommGroup E] [SFinite ν] [NormedSpace E] [SFinite μ] (f : α × βE) :
(z : β × α), f z.swap ν.prod μ = (z : α × β), f z μ.prod ν

Some rules about the sum/difference of double integrals. They follow from integral_add, but we separate them out as separate lemmas, because they involve quite some steps.

theorem MeasureTheory.integral_fn_integral_add {α : Type u_1} {β : Type u_2} {E : Type u_3} [MeasurableSpace α] [MeasurableSpace β] {μ : Measure α} {ν : Measure β} [NormedAddCommGroup E] [SFinite ν] [NormedSpace E] [SFinite μ] {E' : Type u_4} [NormedAddCommGroup E'] [NormedSpace E'] ⦃f g : α × βE (F : EE') (hf : Integrable f (μ.prod ν)) (hg : Integrable g (μ.prod ν)) :
(x : α), F ( (y : β), f (x, y) + g (x, y) ν) μ = (x : α), F ( (y : β), f (x, y) ν + (y : β), g (x, y) ν) μ

Integrals commute with addition inside another integral. F can be any function.

theorem MeasureTheory.integral_fn_integral_sub {α : Type u_1} {β : Type u_2} {E : Type u_3} [MeasurableSpace α] [MeasurableSpace β] {μ : Measure α} {ν : Measure β} [NormedAddCommGroup E] [SFinite ν] [NormedSpace E] [SFinite μ] {E' : Type u_4} [NormedAddCommGroup E'] [NormedSpace E'] ⦃f g : α × βE (F : EE') (hf : Integrable f (μ.prod ν)) (hg : Integrable g (μ.prod ν)) :
(x : α), F ( (y : β), f (x, y) - g (x, y) ν) μ = (x : α), F ( (y : β), f (x, y) ν - (y : β), g (x, y) ν) μ

Integrals commute with subtraction inside another integral. F can be any measurable function.

theorem MeasureTheory.lintegral_fn_integral_sub {α : Type u_1} {β : Type u_2} {E : Type u_3} [MeasurableSpace α] [MeasurableSpace β] {μ : Measure α} {ν : Measure β} [NormedAddCommGroup E] [SFinite ν] [NormedSpace E] [SFinite μ] ⦃f g : α × βE (F : EENNReal) (hf : Integrable f (μ.prod ν)) (hg : Integrable g (μ.prod ν)) :
∫⁻ (x : α), F ( (y : β), f (x, y) - g (x, y) ν) μ = ∫⁻ (x : α), F ( (y : β), f (x, y) ν - (y : β), g (x, y) ν) μ

Integrals commute with subtraction inside a lower Lebesgue integral. F can be any function.

theorem MeasureTheory.integral_integral_add {α : Type u_1} {β : Type u_2} {E : Type u_3} [MeasurableSpace α] [MeasurableSpace β] {μ : Measure α} {ν : Measure β} [NormedAddCommGroup E] [SFinite ν] [NormedSpace E] [SFinite μ] ⦃f g : α × βE (hf : Integrable f (μ.prod ν)) (hg : Integrable g (μ.prod ν)) :
(x : α), (y : β), f (x, y) + g (x, y) ν μ = (x : α), (y : β), f (x, y) ν μ + (x : α), (y : β), g (x, y) ν μ

Double integrals commute with addition.

theorem MeasureTheory.integral_integral_add' {α : Type u_1} {β : Type u_2} {E : Type u_3} [MeasurableSpace α] [MeasurableSpace β] {μ : Measure α} {ν : Measure β} [NormedAddCommGroup E] [SFinite ν] [NormedSpace E] [SFinite μ] ⦃f g : α × βE (hf : Integrable f (μ.prod ν)) (hg : Integrable g (μ.prod ν)) :
(x : α), (y : β), (f + g) (x, y) ν μ = (x : α), (y : β), f (x, y) ν μ + (x : α), (y : β), g (x, y) ν μ

Double integrals commute with addition. This is the version with (f + g) (x, y) (instead of f (x, y) + g (x, y)) in the LHS.

theorem MeasureTheory.integral_integral_sub {α : Type u_1} {β : Type u_2} {E : Type u_3} [MeasurableSpace α] [MeasurableSpace β] {μ : Measure α} {ν : Measure β} [NormedAddCommGroup E] [SFinite ν] [NormedSpace E] [SFinite μ] ⦃f g : α × βE (hf : Integrable f (μ.prod ν)) (hg : Integrable g (μ.prod ν)) :
(x : α), (y : β), f (x, y) - g (x, y) ν μ = (x : α), (y : β), f (x, y) ν μ - (x : α), (y : β), g (x, y) ν μ

Double integrals commute with subtraction.

theorem MeasureTheory.integral_integral_sub' {α : Type u_1} {β : Type u_2} {E : Type u_3} [MeasurableSpace α] [MeasurableSpace β] {μ : Measure α} {ν : Measure β} [NormedAddCommGroup E] [SFinite ν] [NormedSpace E] [SFinite μ] ⦃f g : α × βE (hf : Integrable f (μ.prod ν)) (hg : Integrable g (μ.prod ν)) :
(x : α), (y : β), (f - g) (x, y) ν μ = (x : α), (y : β), f (x, y) ν μ - (x : α), (y : β), g (x, y) ν μ

Double integrals commute with subtraction. This is the version with (f - g) (x, y) (instead of f (x, y) - g (x, y)) in the LHS.

theorem MeasureTheory.continuous_integral_integral {α : Type u_1} {β : Type u_2} {E : Type u_3} [MeasurableSpace α] [MeasurableSpace β] {μ : Measure α} {ν : Measure β} [NormedAddCommGroup E] [SFinite ν] [NormedSpace E] [SFinite μ] :
Continuous fun (f : (Lp E 1 (μ.prod ν))) => (x : α), (y : β), f (x, y) ν μ

The map that sends an L¹-function f : α × β → E to ∫∫f is continuous.

theorem MeasureTheory.integral_prod {α : Type u_1} {β : Type u_2} {E : Type u_3} [MeasurableSpace α] [MeasurableSpace β] {μ : Measure α} {ν : Measure β} [NormedAddCommGroup E] [SFinite ν] [NormedSpace E] [SFinite μ] (f : α × βE) (hf : Integrable f (μ.prod ν)) :
(z : α × β), f z μ.prod ν = (x : α), (y : β), f (x, y) ν μ

Fubini's Theorem: For integrable functions on α × β, the Bochner integral of f is equal to the iterated Bochner integral. integrable_prod_iff can be useful to show that the function in question in integrable. MeasureTheory.Integrable.integral_prod_right is useful to show that the inner integral of the right-hand side is integrable.

theorem MeasureTheory.integral_prod_symm {α : Type u_1} {β : Type u_2} {E : Type u_3} [MeasurableSpace α] [MeasurableSpace β] {μ : Measure α} {ν : Measure β} [NormedAddCommGroup E] [SFinite ν] [NormedSpace E] [SFinite μ] (f : α × βE) (hf : Integrable f (μ.prod ν)) :
(z : α × β), f z μ.prod ν = (y : β), (x : α), f (x, y) μ ν

Symmetric version of Fubini's Theorem: For integrable functions on α × β, the Bochner integral of f is equal to the iterated Bochner integral. This version has the integrals on the right-hand side in the other order.

theorem MeasureTheory.integral_integral {α : Type u_1} {β : Type u_2} {E : Type u_3} [MeasurableSpace α] [MeasurableSpace β] {μ : Measure α} {ν : Measure β} [NormedAddCommGroup E] [SFinite ν] [NormedSpace E] [SFinite μ] {f : αβE} (hf : Integrable (Function.uncurry f) (μ.prod ν)) :
(x : α), (y : β), f x y ν μ = (z : α × β), f z.1 z.2 μ.prod ν

Reversed version of Fubini's Theorem.

theorem MeasureTheory.integral_integral_symm {α : Type u_1} {β : Type u_2} {E : Type u_3} [MeasurableSpace α] [MeasurableSpace β] {μ : Measure α} {ν : Measure β} [NormedAddCommGroup E] [SFinite ν] [NormedSpace E] [SFinite μ] {f : αβE} (hf : Integrable (Function.uncurry f) (μ.prod ν)) :
(x : α), (y : β), f x y ν μ = (z : β × α), f z.2 z.1 ν.prod μ

Reversed version of Fubini's Theorem (symmetric version).

theorem MeasureTheory.integral_integral_swap {α : Type u_1} {β : Type u_2} {E : Type u_3} [MeasurableSpace α] [MeasurableSpace β] {μ : Measure α} {ν : Measure β} [NormedAddCommGroup E] [SFinite ν] [NormedSpace E] [SFinite μ] ⦃f : αβE (hf : Integrable (Function.uncurry f) (μ.prod ν)) :
(x : α), (y : β), f x y ν μ = (y : β), (x : α), f x y μ ν

Change the order of Bochner integration.

theorem MeasureTheory.setIntegral_prod {α : Type u_1} {β : Type u_2} {E : Type u_3} [MeasurableSpace α] [MeasurableSpace β] {μ : Measure α} {ν : Measure β} [NormedAddCommGroup E] [SFinite ν] [NormedSpace E] [SFinite μ] (f : α × βE) {s : Set α} {t : Set β} (hf : IntegrableOn f (s ×ˢ t) (μ.prod ν)) :
(z : α × β) in s ×ˢ t, f z μ.prod ν = (x : α) in s, (y : β) in t, f (x, y) ν μ

Fubini's Theorem for set integrals.

@[deprecated MeasureTheory.setIntegral_prod (since := "2024-04-17")]
theorem MeasureTheory.set_integral_prod {α : Type u_1} {β : Type u_2} {E : Type u_3} [MeasurableSpace α] [MeasurableSpace β] {μ : Measure α} {ν : Measure β} [NormedAddCommGroup E] [SFinite ν] [NormedSpace E] [SFinite μ] (f : α × βE) {s : Set α} {t : Set β} (hf : IntegrableOn f (s ×ˢ t) (μ.prod ν)) :
(z : α × β) in s ×ˢ t, f z μ.prod ν = (x : α) in s, (y : β) in t, f (x, y) ν μ

Alias of MeasureTheory.setIntegral_prod.


Fubini's Theorem for set integrals.

theorem MeasureTheory.integral_prod_smul {α : Type u_1} {β : Type u_2} {E : Type u_3} [MeasurableSpace α] [MeasurableSpace β] {μ : Measure α} {ν : Measure β} [NormedAddCommGroup E] [SFinite ν] [NormedSpace E] [SFinite μ] {𝕜 : Type u_5} [RCLike 𝕜] [NormedSpace 𝕜 E] (f : α𝕜) (g : βE) :
(z : α × β), f z.1 g z.2 μ.prod ν = ( (x : α), f x μ) (y : β), g y ν
theorem MeasureTheory.integral_prod_mul {α : Type u_1} {β : Type u_2} [MeasurableSpace α] [MeasurableSpace β] {μ : Measure α} {ν : Measure β} [SFinite ν] [SFinite μ] {L : Type u_5} [RCLike L] (f : αL) (g : βL) :
(z : α × β), f z.1 * g z.2 μ.prod ν = ( (x : α), f x μ) * (y : β), g y ν
theorem MeasureTheory.setIntegral_prod_mul {α : Type u_1} {β : Type u_2} [MeasurableSpace α] [MeasurableSpace β] {μ : Measure α} {ν : Measure β} [SFinite ν] [SFinite μ] {L : Type u_5} [RCLike L] (f : αL) (g : βL) (s : Set α) (t : Set β) :
(z : α × β) in s ×ˢ t, f z.1 * g z.2 μ.prod ν = ( (x : α) in s, f x μ) * (y : β) in t, g y ν
@[deprecated MeasureTheory.setIntegral_prod_mul (since := "2024-04-17")]
theorem MeasureTheory.set_integral_prod_mul {α : Type u_1} {β : Type u_2} [MeasurableSpace α] [MeasurableSpace β] {μ : Measure α} {ν : Measure β} [SFinite ν] [SFinite μ] {L : Type u_5} [RCLike L] (f : αL) (g : βL) (s : Set α) (t : Set β) :
(z : α × β) in s ×ˢ t, f z.1 * g z.2 μ.prod ν = ( (x : α) in s, f x μ) * (y : β) in t, g y ν

Alias of MeasureTheory.setIntegral_prod_mul.

theorem MeasureTheory.integral_fun_snd {α : Type u_1} {β : Type u_2} {E : Type u_3} [MeasurableSpace α] [MeasurableSpace β] {μ : Measure α} {ν : Measure β} [NormedAddCommGroup E] [SFinite ν] [NormedSpace E] [SFinite μ] (f : βE) :
(z : α × β), f z.2 μ.prod ν = (μ Set.univ).toReal (y : β), f y ν
theorem MeasureTheory.integral_fun_fst {α : Type u_1} {β : Type u_2} {E : Type u_3} [MeasurableSpace α] [MeasurableSpace β] {μ : Measure α} {ν : Measure β} [NormedAddCommGroup E] [SFinite ν] [NormedSpace E] [SFinite μ] (f : αE) :
(z : α × β), f z.1 μ.prod ν = (ν Set.univ).toReal (x : α), f x μ

A version of Fubini theorem for continuous functions with compact support: one may swap the order of integration with respect to locally finite measures. One does not assume that the measures are σ-finite, contrary to the usual Fubini theorem.