Skip to content
This repository was archived by the owner on Jul 24, 2024. It is now read-only.

Commit 0f79668

Browse files
committed
feat(measure_theory/function/uniform_integrable): Egorov's theorem (#11328)
This PR proves Egorov's theorem which is necessary for the Vitali convergence theorem which is vital for the martingale convergence theorems.
1 parent a16a5b5 commit 0f79668

File tree

1 file changed

+221
-0
lines changed

1 file changed

+221
-0
lines changed
Lines changed: 221 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,221 @@
1+
/-
2+
Copyright (c) 2022 Kexing Ying. All rights reserved.
3+
Released under Apache 2.0 license as described in the file LICENSE.
4+
Authors: Kexing Ying
5+
-/
6+
import measure_theory.integral.set_integral
7+
8+
/-!
9+
# Uniform integrability
10+
11+
This file will be used in the future to define uniform integrability. Uniform integrability
12+
is an important notion in both measure theory as well as probability theory. So far this file
13+
only contains the Egorov theorem which will be used to prove the Vitali convergence theorem
14+
which is one of the main results about uniform integrability.
15+
16+
## Main results
17+
18+
* `measure_theory.egorov`: Egorov's theorem which shows that a sequence of almost everywhere
19+
convergent functions converges uniformly except on an arbitrarily small set.
20+
21+
-/
22+
23+
noncomputable theory
24+
open_locale classical measure_theory nnreal ennreal topological_space
25+
26+
namespace measure_theory
27+
28+
open set filter topological_space
29+
30+
variables {α β ι : Type*} {m : measurable_space α} [metric_space β] {μ : measure α}
31+
32+
section
33+
34+
/-! We will in this section prove Egorov's theorem. -/
35+
36+
namespace egorov
37+
38+
/-- Given a sequence of functions `f` and a function `g`, `not_convergent_seq f g i j` is the
39+
set of elements such that `f k x` and `g x` are separated by at least `1 / (i + 1)` for some
40+
`k ≥ j`.
41+
42+
This definition is useful for Egorov's theorem. -/
43+
def not_convergent_seq (f : ℕ → α → β) (g : α → β) (i j : ℕ) : set α :=
44+
⋃ k (hk : j ≤ k), {x | (1 / (i + 1 : ℝ)) < dist (f k x) (g x)}
45+
46+
variables {i j : ℕ} {s : set α} {ε : ℝ} {f : ℕ → α → β} {g : α → β}
47+
48+
lemma mem_not_convergent_seq_iff {x : α} : x ∈ not_convergent_seq f g i j ↔
49+
∃ k (hk : j ≤ k), (1 / (i + 1 : ℝ)) < dist (f k x) (g x) :=
50+
by { simp_rw [not_convergent_seq, mem_Union], refl }
51+
52+
lemma not_convergent_seq_antitone :
53+
antitone (not_convergent_seq f g i) :=
54+
λ j k hjk, bUnion_subset_bUnion (λ l hl, ⟨l, le_trans hjk hl, subset.refl _⟩)
55+
56+
lemma measure_inter_not_convergent_seq_eq_zero
57+
(hfg : ∀ᵐ x ∂μ, x ∈ s → tendsto (λ n, f n x) at_top (𝓝 (g x))) (i : ℕ) :
58+
μ (s ∩ ⋂ j, not_convergent_seq f g i j) = 0 :=
59+
begin
60+
simp_rw [metric.tendsto_at_top, ae_iff] at hfg,
61+
rw [← nonpos_iff_eq_zero, ← hfg],
62+
refine measure_mono (λ x, _),
63+
simp only [mem_inter_eq, mem_Inter, ge_iff_le, mem_not_convergent_seq_iff],
64+
push_neg,
65+
rintro ⟨hmem, hx⟩,
66+
refine ⟨hmem, 1 / (i + 1 : ℝ), nat.one_div_pos_of_nat, λ N, _⟩,
67+
obtain ⟨n, hn₁, hn₂⟩ := hx N,
68+
exact ⟨n, hn₁, hn₂.le⟩
69+
end
70+
71+
variables [second_countable_topology β] [measurable_space β] [borel_space β]
72+
73+
lemma not_convergent_seq_measurable_set
74+
(hf : ∀ n, measurable[m] (f n)) (hg : measurable g) :
75+
measurable_set (not_convergent_seq f g i j) :=
76+
measurable_set.Union (λ k, measurable_set.Union_Prop $ λ hk,
77+
measurable_set_lt measurable_const $ (hf k).dist hg)
78+
79+
lemma measure_not_convergent_seq_tendsto_zero
80+
(hf : ∀ n, measurable (f n)) (hg : measurable g) (hsm : measurable_set s) (hs : μ s ≠ ∞)
81+
(hfg : ∀ᵐ x ∂μ, x ∈ s → tendsto (λ n, f n x) at_top (𝓝 (g x))) (i : ℕ) :
82+
tendsto (λ j, μ (s ∩ not_convergent_seq f g i j)) at_top (𝓝 0) :=
83+
begin
84+
rw [← measure_inter_not_convergent_seq_eq_zero hfg, inter_Inter],
85+
exact tendsto_measure_Inter (λ n, hsm.inter $ not_convergent_seq_measurable_set hf hg)
86+
(λ k l hkl, inter_subset_inter_right _ $ not_convergent_seq_antitone hkl)
87+
0, (lt_of_le_of_lt (measure_mono $ inter_subset_left _ _) (lt_top_iff_ne_top.2 hs)).ne⟩
88+
end
89+
90+
lemma exists_not_convergent_seq_lt (hε : 0 < ε)
91+
(hf : ∀ n, measurable (f n)) (hg : measurable g) (hsm : measurable_set s) (hs : μ s ≠ ∞)
92+
(hfg : ∀ᵐ x ∂μ, x ∈ s → tendsto (λ n, f n x) at_top (𝓝 (g x))) (i : ℕ) :
93+
∃ j : ℕ, μ (s ∩ not_convergent_seq f g i j) ≤ ennreal.of_real (ε * 2⁻¹ ^ i) :=
94+
begin
95+
obtain ⟨N, hN⟩ := (ennreal.tendsto_at_top ennreal.zero_ne_top).1
96+
(measure_not_convergent_seq_tendsto_zero hf hg hsm hs hfg i)
97+
(ennreal.of_real (ε * 2⁻¹ ^ i)) _,
98+
{ rw zero_add at hN,
99+
exact ⟨N, (hN N le_rfl).2⟩ },
100+
{ rw [gt_iff_lt, ennreal.of_real_pos],
101+
exact mul_pos hε (pow_pos (by norm_num) _) }
102+
end
103+
104+
/-- Given some `ε > 0`, `not_convergent_seq_lt_index` provides the index such that
105+
`not_convergent_seq` (intersected with a set of finite measure) has measure less than
106+
`ε * 2⁻¹ ^ i`.
107+
108+
This definition is useful for Egorov's theorem. -/
109+
def not_convergent_seq_lt_index (hε : 0 < ε)
110+
(hf : ∀ n, measurable (f n)) (hg : measurable g) (hsm : measurable_set s) (hs : μ s ≠ ∞)
111+
(hfg : ∀ᵐ x ∂μ, x ∈ s → tendsto (λ n, f n x) at_top (𝓝 (g x))) (i : ℕ) : ℕ :=
112+
classical.some $ exists_not_convergent_seq_lt hε hf hg hsm hs hfg i
113+
114+
lemma not_convergent_seq_lt_index_spec (hε : 0 < ε)
115+
(hf : ∀ n, measurable (f n)) (hg : measurable g) (hsm : measurable_set s) (hs : μ s ≠ ∞)
116+
(hfg : ∀ᵐ x ∂μ, x ∈ s → tendsto (λ n, f n x) at_top (𝓝 (g x))) (i : ℕ) :
117+
μ (s ∩ not_convergent_seq f g i (not_convergent_seq_lt_index hε hf hg hsm hs hfg i)) ≤
118+
ennreal.of_real (ε * 2⁻¹ ^ i) :=
119+
classical.some_spec $ exists_not_convergent_seq_lt hε hf hg hsm hs hfg i
120+
121+
/-- Given some `ε > 0`, `Union_not_convergent_seq` is the union of `not_convergent_seq` with
122+
specific indicies such that `Union_not_convergent_seq` has measure less equal than `ε`.
123+
124+
This definition is useful for Egorov's theorem. -/
125+
def Union_not_convergent_seq (hε : 0 < ε)
126+
(hf : ∀ n, measurable (f n)) (hg : measurable g) (hsm : measurable_set s) (hs : μ s ≠ ∞)
127+
(hfg : ∀ᵐ x ∂μ, x ∈ s → tendsto (λ n, f n x) at_top (𝓝 (g x))) : set α :=
128+
⋃ i, s ∩ not_convergent_seq f g i (not_convergent_seq_lt_index (half_pos hε) hf hg hsm hs hfg i)
129+
130+
lemma Union_not_convergent_seq_measurable_set (hε : 0 < ε)
131+
(hf : ∀ n, measurable (f n)) (hg : measurable g) (hsm : measurable_set s) (hs : μ s ≠ ∞)
132+
(hfg : ∀ᵐ x ∂μ, x ∈ s → tendsto (λ n, f n x) at_top (𝓝 (g x))) :
133+
measurable_set $ Union_not_convergent_seq hε hf hg hsm hs hfg :=
134+
measurable_set.Union (λ n, hsm.inter $ not_convergent_seq_measurable_set hf hg)
135+
136+
lemma measure_Union_not_convergent_seq (hε : 0 < ε)
137+
(hf : ∀ n, measurable (f n)) (hg : measurable g) (hsm : measurable_set s) (hs : μ s ≠ ∞)
138+
(hfg : ∀ᵐ x ∂μ, x ∈ s → tendsto (λ n, f n x) at_top (𝓝 (g x))) :
139+
μ (Union_not_convergent_seq hε hf hg hsm hs hfg) ≤ ennreal.of_real ε :=
140+
begin
141+
refine le_trans (measure_Union_le _)
142+
(le_trans (ennreal.tsum_le_tsum $ not_convergent_seq_lt_index_spec
143+
(half_pos hε) hf hg hsm hs hfg) _),
144+
simp_rw [ennreal.of_real_mul (half_pos hε).le],
145+
rw [ennreal.tsum_mul_left, ← ennreal.of_real_tsum_of_nonneg, inv_eq_one_div,
146+
tsum_geometric_two, ← ennreal.of_real_mul (half_pos hε).le, div_mul_cancel ε two_ne_zero],
147+
{ exact le_rfl },
148+
{ exact λ n, pow_nonneg (by norm_num) _ },
149+
{ rw [inv_eq_one_div],
150+
exact summable_geometric_two },
151+
end
152+
153+
lemma Union_not_convergent_seq_subset (hε : 0 < ε)
154+
(hf : ∀ n, measurable (f n)) (hg : measurable g) (hsm : measurable_set s) (hs : μ s ≠ ∞)
155+
(hfg : ∀ᵐ x ∂μ, x ∈ s → tendsto (λ n, f n x) at_top (𝓝 (g x))) :
156+
Union_not_convergent_seq hε hf hg hsm hs hfg ⊆ s :=
157+
begin
158+
rw [Union_not_convergent_seq, ← inter_Union],
159+
exact inter_subset_left _ _,
160+
end
161+
162+
lemma tendsto_uniformly_on_diff_Union_not_convergent_seq (hε : 0 < ε)
163+
(hf : ∀ n, measurable (f n)) (hg : measurable g) (hsm : measurable_set s) (hs : μ s ≠ ∞)
164+
(hfg : ∀ᵐ x ∂μ, x ∈ s → tendsto (λ n, f n x) at_top (𝓝 (g x))) :
165+
tendsto_uniformly_on f g at_top (s \ egorov.Union_not_convergent_seq hε hf hg hsm hs hfg) :=
166+
begin
167+
rw metric.tendsto_uniformly_on_iff,
168+
intros δ hδ,
169+
obtain ⟨N, hN⟩ := exists_nat_one_div_lt hδ,
170+
rw eventually_at_top,
171+
refine ⟨egorov.not_convergent_seq_lt_index (half_pos hε) hf hg hsm hs hfg N, λ n hn x hx, _⟩,
172+
simp only [mem_diff, egorov.Union_not_convergent_seq, not_exists, mem_Union, mem_inter_eq,
173+
not_and, exists_and_distrib_left] at hx,
174+
obtain ⟨hxs, hx⟩ := hx,
175+
specialize hx hxs N,
176+
rw egorov.mem_not_convergent_seq_iff at hx,
177+
push_neg at hx,
178+
rw dist_comm,
179+
exact lt_of_le_of_lt (hx n hn) hN,
180+
end
181+
182+
end egorov
183+
184+
variables [second_countable_topology β] [measurable_space β] [borel_space β]
185+
{f : ℕ → α → β} {g : α → β} {s : set α}
186+
187+
188+
/-- **Egorov's theorem**: If `f : ℕ → α → β` is a sequence of measurable functions that converges
189+
to `g : α → β` almost everywhere on a measurable set `s` of finite measure, then for all `ε > 0`,
190+
there exists a subset `t ⊆ s` such that `μ t ≤ ε` and `f` converges to `g` uniformly on `s \ t`.
191+
192+
In other words, a sequence of almost everywhere convergent functions converges uniformly except on
193+
an arbitrarily small set. -/
194+
theorem tendsto_uniformly_on_of_ae_tendsto
195+
(hf : ∀ n, measurable (f n)) (hg : measurable g) (hsm : measurable_set s) (hs : μ s ≠ ∞)
196+
(hfg : ∀ᵐ x ∂μ, x ∈ s → tendsto (λ n, f n x) at_top (𝓝 (g x))) {ε : ℝ} (hε : 0 < ε) :
197+
∃ t ⊆ s, measurable_set t ∧ μ t ≤ ennreal.of_real ε ∧ tendsto_uniformly_on f g at_top (s \ t) :=
198+
⟨egorov.Union_not_convergent_seq hε hf hg hsm hs hfg,
199+
egorov.Union_not_convergent_seq_subset hε hf hg hsm hs hfg,
200+
egorov.Union_not_convergent_seq_measurable_set hε hf hg hsm hs hfg,
201+
egorov.measure_Union_not_convergent_seq hε hf hg hsm hs hfg,
202+
egorov.tendsto_uniformly_on_diff_Union_not_convergent_seq hε hf hg hsm hs hfg⟩
203+
204+
/-- Egorov's theorem for finite measure spaces. -/
205+
lemma tendsto_uniformly_on_of_ae_tendsto' [is_finite_measure μ]
206+
(hf : ∀ n, measurable (f n)) (hg : measurable g)
207+
(hfg : ∀ᵐ x ∂μ, tendsto (λ n, f n x) at_top (𝓝 (g x))) {ε : ℝ} (hε : 0 < ε) :
208+
∃ t, measurable_set t ∧ μ t ≤ ennreal.of_real ε ∧ tendsto_uniformly_on f g at_top tᶜ :=
209+
begin
210+
obtain ⟨t, _, ht, htendsto⟩ :=
211+
tendsto_uniformly_on_of_ae_tendsto hf hg measurable_set.univ (measure_ne_top μ univ) _ hε,
212+
{ refine ⟨t, ht, _⟩,
213+
rwa compl_eq_univ_diff },
214+
{ filter_upwards [hfg],
215+
intros,
216+
assumption }
217+
end
218+
219+
end
220+
221+
end measure_theory

0 commit comments

Comments
 (0)