Skip to content

Commit 92242cf

Browse files
committed
feat(MeasureTheory/Measure/Tight): tightness of marginals implies tightness on product space (leanprover-community#39501)
This PR introduces `IsTightMeasureSet.prodMk`, which says that a set of measures on a product space is tight if both sets of marginals are tight. This is useful when proving weak compactness of probability measures on product spaces (via Prokhorov). The proof makes use of `isTightMeasureSet_iff_exists_isCompact_measure_compl_le` and then proceeds in the conventional way. I also tried to write a purely filter-theoretic proof, but did not really succeed and it was nowhere near as simple as the direct proof.
1 parent c34f0e3 commit 92242cf

1 file changed

Lines changed: 18 additions & 0 deletions

File tree

Mathlib/MeasureTheory/Measure/Tight.lean

Lines changed: 18 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -145,6 +145,24 @@ lemma map [TopologicalSpace 𝓨] [MeasurableSpace 𝓨] [OpensMeasurableSpace
145145
simp only [preimage_compl, compl_subset_compl]
146146
exact subset_preimage_image f K
147147

148+
/-- A set of measures on a product space is tight if both marginals are tight. -/
149+
lemma prodMk {m𝓨 : MeasurableSpace 𝓨} [TopologicalSpace 𝓨] {μ : Set (Measure (𝓧 × 𝓨))}
150+
(hμ₁ : IsTightMeasureSet (Measure.fst '' μ)) (hμ₂ : IsTightMeasureSet (Measure.snd '' μ)) :
151+
IsTightMeasureSet μ := by
152+
rw [isTightMeasureSet_iff_exists_isCompact_measure_compl_le] at hμ₁ hμ₂ ⊢
153+
intro ε hε
154+
obtain ⟨K₁, hK₁_compact, hK₁_le⟩ := hμ₁ (ε / 2) (by aesop)
155+
obtain ⟨K₂, hK₂_compact, hK₂_le⟩ := hμ₂ (ε / 2) (by aesop)
156+
refine ⟨K₁ ×ˢ K₂, hK₁_compact.prod hK₂_compact, fun κ hκ_mem ↦ ?_⟩
157+
grw [compl_prod_eq_union, measure_union_le, ← ENNReal.add_halves (a := ε)]
158+
apply add_le_add
159+
· specialize hK₁_le _ <| mem_image_of_mem _ hκ_mem
160+
grw [Measure.fst, ← Measure.le_map_apply (by fun_prop)] at hK₁_le
161+
simpa [prod_univ] using hK₁_le
162+
· specialize hK₂_le _ <| Set.mem_image_of_mem _ hκ_mem
163+
grw [Measure.snd, ← Measure.le_map_apply (by fun_prop)] at hK₂_le
164+
simpa [univ_prod] using hK₂_le
165+
148166
end IsTightMeasureSet
149167
end Basic
150168

0 commit comments

Comments
 (0)