Documentation

TauCeti.MeasureTheory.Measure.ProductKernel

Product probability-measure kernels #

This file provides the basic theory of products of probability measures, phrased directly over Mathlib's ProbabilityMeasure.pi and Measure.infinitePi: measurability of the product kernel — finite and countable — and Measure.bind-evaluation of the mixture the finite product induces.

Measurability:

Bind-evaluation of the mixture μ.bind fun ω => (ProbabilityMeasure.pi fun i => ν i ω).toMeasure:

This file does not introduce a new product-kernel structure; the lemmas live directly over Mathlib's ProbabilityMeasure.pi. It advances TauCetiRoadmap/Exchangeability, Layer 1 (product kernels and mixtures), and is motivated by the product-kernel layer of cameronfreer/exchangeability (MeasureKernels.lean and the bind_pi_apply of DeFinetti/CommonEnding.lean, pin e0532e59ceff23edab44dda9ab0655debbc9cc22), implemented using Mathlib's ProbabilityMeasure.pi, Measure.bind_apply, and Giry measurability API; the combinator generalizes Mathlib's binary ProbabilityMeasure.measurable_fun_prod to finite index types.

The finite product combinator ProbabilityMeasure.pi is a measurable map (Π i, ProbabilityMeasure (α i)) → ProbabilityMeasure (Π i, α i).

theorem TauCeti.MeasureTheory.measurable_probabilityMeasure_pi_toMeasure {Ω : Type u_1} {ι : Type u_2} [MeasurableSpace Ω] [Fintype ι] {α : ιType u_3} [(i : ι) → MeasurableSpace (α i)] (ν : (i : ι) → ΩMeasureTheory.ProbabilityMeasure (α i)) ( : ∀ (i : ι), Measurable (ν i)) :
Measurable fun (ω : Ω) => (MeasureTheory.ProbabilityMeasure.pi fun (i : ι) => ν i ω)

A finite product of measurable probability-measure kernels is a measurable measure-valued map: if each ν i : Ω → ProbabilityMeasure (α i) is measurable, then ω ↦ (ProbabilityMeasure.pi fun i => ν i ω).toMeasure is measurable.

theorem TauCeti.MeasureTheory.aemeasurable_probabilityMeasure_pi_toMeasure {Ω : Type u_1} {ι : Type u_2} [MeasurableSpace Ω] [Fintype ι] {α : ιType u_3} [(i : ι) → MeasurableSpace (α i)] {μ : MeasureTheory.Measure Ω} (ν : (i : ι) → ΩMeasureTheory.ProbabilityMeasure (α i)) ( : ∀ (i : ι), AEMeasurable (ν i) μ) :
AEMeasurable (fun (ω : Ω) => (MeasureTheory.ProbabilityMeasure.pi fun (i : ι) => ν i ω)) μ

A finite product of a.e.-measurable probability-measure kernels is an a.e.-measurable measure-valued map: if each ν i : Ω → ProbabilityMeasure (α i) is AEMeasurable, then so is ω ↦ (ProbabilityMeasure.pi fun i => ν i ω).toMeasure.

theorem TauCeti.MeasureTheory.aemeasurable_probabilityMeasure_pi_toMeasure_of_measurable {Ω : Type u_1} {ι : Type u_2} [MeasurableSpace Ω] [Fintype ι] {α : ιType u_3} [(i : ι) → MeasurableSpace (α i)] {μ : MeasureTheory.Measure Ω} (ν : (i : ι) → ΩMeasureTheory.ProbabilityMeasure (α i)) ( : ∀ (i : ι), Measurable (ν i)) :
AEMeasurable (fun (ω : Ω) => (MeasureTheory.ProbabilityMeasure.pi fun (i : ι) => ν i ω)) μ

Measurable-input corollary of aemeasurable_probabilityMeasure_pi_toMeasure.

Constant-coordinate specialization of measurable_probabilityMeasure_pi_toMeasure: the random product ω ↦ (ν ω)^{⊗ Fin m} is measurable.

Constant-coordinate specialization of aemeasurable_probabilityMeasure_pi_toMeasure: the random product ω ↦ (ν ω)^{⊗ Fin m} is AEMeasurable from an a.e.-measurable kernel ν.

Joint-kernel measurability. The random measure ω ↦ δ_{ν ω} ⊗ (ν ω)^{⊗ Fin m} on ProbabilityMeasure α × (Fin m → α) is measurable.

This is the joint-space companion of measurable_probabilityMeasure_pi_const_toMeasure: where that one gives the block kernel alone, this one pairs it with a Dirac mass at the mixing measure itself, which is what a conditional (joint-law) reading of the de Finetti mixture identity has to speak about. It supplies the Measure.bind_apply and measure-extensionality inputs on the joint space (TauCetiRoadmap/Exchangeability/README.md, Layer 1). No hypotheses beyond measurability of ν.

theorem TauCeti.MeasureTheory.measurable_infinitePi {ι' : Type u_4} {β : ι'Type u_5} [(i : ι') → MeasurableSpace (β i)] :
Measurable fun (p : (i : ι') → MeasureTheory.ProbabilityMeasure (β i)) => MeasureTheory.Measure.infinitePi fun (i : ι') => (p i)

Product measurability in the measure argument. For an arbitrary index type and a dependent family of measurable spaces, p ↦ ⊗ᵢ p i is a measurable map (∀ i, ProbabilityMeasure (β i)) → Measure (∀ i, β i).

This is the arbitrary-index companion of measurable_probabilityMeasure_pi_toMeasure, which covers the finite case through ProbabilityMeasure.pi. Mathlib supplies Measure.infinitePi and its projective-limit API but not this measurability, which is what a mixture of such products needs for Measure.bind_apply and for evaluating the mixture as an integral — the shape the de Finetti mixture representation takes.

Constant-coordinate specialization of measurable_infinitePi: the countable power p ↦ p^{⊗ℕ} is measurable.

Parameter-tagged product kernel. For a measurable family of probability measures P : T → ProbabilityMeasure α, the random measure t ↦ δ_t ⊗ (P t)^{⊗ι} on T × (ι → α) is measurable, over an arbitrary index type ι.

This is the arbitrary-power companion of measurable_dirac_prod_probabilityMeasure_pi_const_toMeasure, with the Dirac factor sitting on the parameter rather than on the measure it selects. It is what a mixture that retains its parameter as a coordinate needs for Measure.bind_apply.

theorem TauCeti.MeasureTheory.map_prefixProj_infinitePi {α : Type u_4} [MeasurableSpace α] (p : MeasureTheory.ProbabilityMeasure α) (n : ) :
MeasureTheory.Measure.map (fun (x : α) (i : Fin n) => x i) (MeasureTheory.Measure.infinitePi fun (j : ) => (p j)) = MeasureTheory.Measure.pi fun (i : Fin n) => (p i)

Finite-prefix marginal of a countable product. Restricting ⊗ⱼ p j to its first n coordinates gives the finite product ⊗_{i : Fin n} p i.

Mathlib's Measure.infinitePi_map_restrict gives the marginal along a Finset.restrict, indexed by the coerced finite set; this is the Fin n-prefix form, which is what prefix-marginal arguments on ℕ → α use. Stated with the bare prefix map rather than any particular prefix abbreviation, so it stays independent of downstream conventions.

Constant-coordinate specialization of map_prefixProj_infinitePi: the first n coordinates of p^{⊗ℕ} are distributed as p^{⊗ Fin n}.

theorem TauCeti.MeasureTheory.map_infinitePi_pair_block {T : Type u_4} {α : Type u_5} [MeasurableSpace T] [MeasurableSpace α] (t : T) (Q : MeasureTheory.ProbabilityMeasure α) {m : } {k : Fin m} (hk : Function.Injective k) :
MeasureTheory.Measure.map (fun (x : α) => (t, fun (i : Fin m) => x (k i))) (MeasureTheory.Measure.infinitePi fun (x : ) => Q) = (MeasureTheory.Measure.dirac t).prod (MeasureTheory.ProbabilityMeasure.pi fun (x : Fin m) => Q)

Selecting a block from an i.i.d. power, tagged. Reading an injective block k : Fin m → ℕ of coordinates off the countable power Q^{⊗ℕ} and recording a tag t alongside the result gives δ_t ⊗ Q^{⊗ Fin m}; injectivity is what makes the selected coordinates independent.

The tag is arbitrary and need not be Q itself: a mixture law carries the parameter t while sampling from P t, so the two differ there. Tagging with the law itself is the instance map_infinitePi_pair_block Q Q.

This is map_prefixProj_infinitePi_const for an arbitrary injective block rather than a prefix, paired with a tag, which is the form a disintegration against a directing measure consumes.

theorem TauCeti.MeasureTheory.bind_probabilityMeasure_pi_apply {Ω : Type u_1} {ι : Type u_2} [MeasurableSpace Ω] [Fintype ι] {α : ιType u_3} [(i : ι) → MeasurableSpace (α i)] {μ : MeasureTheory.Measure Ω} (ν : (i : ι) → ΩMeasureTheory.ProbabilityMeasure (α i)) ( : ∀ (i : ι), AEMeasurable (ν i) μ) {s : Set ((i : ι) → α i)} (hs : MeasurableSet s) :
(μ.bind fun (ω : Ω) => (MeasureTheory.ProbabilityMeasure.pi fun (i : ι) => ν i ω)) s = ∫⁻ (ω : Ω), (MeasureTheory.ProbabilityMeasure.pi fun (i : ι) => ν i ω) s μ

Bind-evaluation. Evaluating the mixture μ.bind fun ω => (ProbabilityMeasure.pi fun i => ν i ω).toMeasure on a measurable set s gives ∫⁻ ω, … s ∂μ, requiring only a.e.-measurability of each coordinate kernel ν i.

theorem TauCeti.MeasureTheory.bind_probabilityMeasure_pi_pi {Ω : Type u_1} {ι : Type u_2} [MeasurableSpace Ω] [Fintype ι] {α : ιType u_3} [(i : ι) → MeasurableSpace (α i)] {μ : MeasureTheory.Measure Ω} (ν : (i : ι) → ΩMeasureTheory.ProbabilityMeasure (α i)) ( : ∀ (i : ι), AEMeasurable (ν i) μ) (B : (i : ι) → Set (α i)) (hB : ∀ (i : ι), MeasurableSet (B i)) :
(μ.bind fun (ω : Ω) => (MeasureTheory.ProbabilityMeasure.pi fun (i : ι) => ν i ω)) (Set.univ.pi B) = ∫⁻ (ω : Ω), i : ι, (ν i ω) (B i) μ

Bind-evaluation on a rectangle. On a rectangle Set.univ.pi B, the mixture equals ∫⁻ ω, ∏ i, (ν i ω) (B i) ∂μ.

theorem TauCeti.MeasureTheory.bind_probabilityMeasure_pi_const_apply {Ω : Type u_1} [MeasurableSpace Ω] {μ : MeasureTheory.Measure Ω} {α : Type u_4} [MeasurableSpace α] {m : } (ν : ΩMeasureTheory.ProbabilityMeasure α) ( : AEMeasurable ν μ) {s : Set (Fin mα)} (hs : MeasurableSet s) :
(μ.bind fun (ω : Ω) => (MeasureTheory.ProbabilityMeasure.pi fun (x : Fin m) => ν ω)) s = ∫⁻ (ω : Ω), (MeasureTheory.ProbabilityMeasure.pi fun (x : Fin m) => ν ω) s μ

Constant-coordinate Fin m specialization of bind_probabilityMeasure_pi_apply.

theorem TauCeti.MeasureTheory.bind_probabilityMeasure_pi_const_pi {Ω : Type u_1} [MeasurableSpace Ω] {μ : MeasureTheory.Measure Ω} {α : Type u_4} [MeasurableSpace α] {m : } (ν : ΩMeasureTheory.ProbabilityMeasure α) ( : AEMeasurable ν μ) (B : Fin mSet α) (hB : ∀ (i : Fin m), MeasurableSet (B i)) :
(μ.bind fun (ω : Ω) => (MeasureTheory.ProbabilityMeasure.pi fun (x : Fin m) => ν ω)) (Set.univ.pi B) = ∫⁻ (ω : Ω), i : Fin m, (ν ω) (B i) μ

Constant-coordinate Fin m specialization of bind_probabilityMeasure_pi_pi: the finite-block mixture identity the de Finetti common ending consumes.

theorem TauCeti.MeasureTheory.map_prefixProj_bind_infinitePi_pi {α : Type u_4} [MeasurableSpace α] (π : MeasureTheory.Measure (MeasureTheory.ProbabilityMeasure α)) {n : } (B : Fin nSet α) (hB : ∀ (i : Fin n), MeasurableSet (B i)) :
(MeasureTheory.Measure.map (fun (x : α) (i : Fin n) => x i) (π.bind fun (P : MeasureTheory.ProbabilityMeasure α) => MeasureTheory.Measure.infinitePi fun (x : ) => P)) (Set.univ.pi B) = ∫⁻ (P : MeasureTheory.ProbabilityMeasure α), i : Fin n, P (B i) π

The mixture's finite-dimensional rectangle probabilities are the mixed moments of the evaluation maps: pushing π.bind (P ↦ P^{⊗ℕ}) to its first n coordinates and evaluating on a rectangle ∏ i, B i gives ∫⁻ P, ∏ i, P (B i) ∂π.