@@ -4,6 +4,8 @@ Released under Apache 2.0 license as described in the file LICENSE.
44Authors: Rémy Degenne
55-/
66import Mathlib.Probability.Independence.Kernel
7+ import Mathlib.Probability.Kernel.CompProdEqIff
8+ import Mathlib.Probability.Kernel.Composition.Lemmas
79import Mathlib.Probability.Kernel.Condexp
810
911/-!
@@ -737,6 +739,57 @@ lemma condIndepFun_self_right {mβ : MeasurableSpace β} {mβ' : MeasurableSpace
737739 CondIndepFun (mβ'.comap Z) hZ.comap_le X Z μ :=
738740 condIndepFun_of_measurable_right hX (comap_measurable Z)
739741
742+ /-- Two random variables are conditionally independent iff they satisfy the almost sure equality
743+ of conditional expectations `μ⟦f ⁻¹' s ∩ g ⁻¹' t | m'⟧ =ᵐ[μ] μ⟦f ⁻¹' s | m'⟧ * μ⟦g ⁻¹' t | m'⟧`
744+ for all measurable sets `s` and `t` (see `condIndepFun_iff_condExp_inter_preimage_eq_mul`).
745+ Here, this is phrased with Markov kernels associated to the conditional expectations, and the
746+ almost sure equality is expressed as equality of the composition-product with the measure, which is
747+ equivalent to a.e. equality. See `condIndepFun_iff_map_prod_eq_prod_map_map` for the a.e. equality
748+ version with kernels.
749+
750+ For a random variable `f`, `(condExpKernel μ m').map f` is the law of the conditional expectation
751+ of `f` given `m'`: almost surely, `(condExpKernel μ m').map f ω s = μ⟦f ⁻¹' s | m'⟧ ω`. -/
752+ theorem condIndepFun_iff_compProd_map_prod_eq_compProd_prod_map_map
753+ {mβ : MeasurableSpace β} {mβ' : MeasurableSpace β'} (hf : Measurable f) (hg : Measurable g) :
754+ CondIndepFun m' hm' f g μ
755+ ↔ (μ.trim hm') ⊗ₘ (condExpKernel μ m').map (fun ω ↦ (f ω, g ω))
756+ = (μ.trim hm') ⊗ₘ ((condExpKernel μ m').map f ×ₖ (condExpKernel μ m').map g) :=
757+ Kernel.indepFun_iff_compProd_map_prod_eq_compProd_prod_map_map hf hg
758+
759+ /-- Two random variables are conditionally independent iff they satisfy the almost sure equality
760+ of conditional expectations `μ⟦f ⁻¹' s ∩ g ⁻¹' t | m'⟧ =ᵐ[μ] μ⟦f ⁻¹' s | m'⟧ * μ⟦g ⁻¹' t | m'⟧`
761+ for all measurable sets `s` and `t` (see `condIndepFun_iff_condExp_inter_preimage_eq_mul`).
762+ Here, this is phrased with Markov kernels associated to the conditional expectations.
763+
764+ For a random variable `f`, `(condExpKernel μ m').map f` is the law of the conditional expectation
765+ of `f` given `m'`: almost surely, `(condExpKernel μ m').map f ω s = μ⟦f ⁻¹' s | m'⟧ ω`. -/
766+ theorem condIndepFun_iff_map_prod_eq_prod_map_map
767+ {mβ : MeasurableSpace β} {mβ' : MeasurableSpace β'} [CountableOrCountablyGenerated Ω (β × β')]
768+ (hf : Measurable f) (hg : Measurable g) :
769+ CondIndepFun m' hm' f g μ
770+ ↔ (condExpKernel μ m').map (fun ω ↦ (f ω, g ω))
771+ =ᵐ[μ.trim hm'] (condExpKernel μ m').map f ×ₖ (condExpKernel μ m').map g := by
772+ rw [condIndepFun_iff_compProd_map_prod_eq_compProd_prod_map_map hf hg, ← Kernel.compProd_eq_iff]
773+
774+ /-- Two random variables are conditionally independent with respect to `m'` iff the law of
775+ `(id, f, g)` under `μ`, in which the identity is to the space with σ-algebra `m'`, can be written
776+ as a product involving the conditional expectations of `f` and `g` given `m'`.
777+
778+ For a random variable `f`, `(condExpKernel μ m').map f` is the law of the conditional expectation
779+ of `f` given `m'`: almost surely, `(condExpKernel μ m').map f ω s = μ⟦f ⁻¹' s | m'⟧ ω`. -/
780+ lemma condIndepFun_iff_map_prod_eq_prod_comp_trim
781+ {mβ : MeasurableSpace β} {mβ' : MeasurableSpace β'} (hf : Measurable f) (hg : Measurable g) :
782+ CondIndepFun m' hm' f g μ
783+ ↔ @Measure.map _ _ _ (m'.prod _) (fun ω ↦ (ω, f ω, g ω)) μ
784+ = (Kernel.id ×ₖ ((condExpKernel μ m').map f ×ₖ (condExpKernel μ m').map g))
785+ ∘ₘ μ.trim hm' := by
786+ rw [condIndepFun_iff_compProd_map_prod_eq_compProd_prod_map_map hf hg]
787+ congr!
788+ · rw [Measure.compProd_map (by fun_prop), compProd_trim_condExpKernel,
789+ Measure.map_map (by fun_prop) ((measurable_id.mono le_rfl hm').prodMk measurable_id)]
790+ rfl
791+ · rw [Measure.compProd_eq_comp_prod]
792+
740793section iCondIndepFun
741794variable {β : ι → Type *} {m : ∀ i, MeasurableSpace (β i)} {f : ∀ i, Ω → β i}
742795
0 commit comments