measure_theory.function.egorov
⟷
Mathlib.MeasureTheory.Function.Egorov
The following section lists changes to this file in mathlib3 and mathlib4 that occured after the initial port. Most recent changes are shown first. Hovering over a commit will show all commits associated with the same mathlib3 commit.
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(no changes)
(last sync)
mathlib commit https://github.com/leanprover-community/mathlib/commit/65a1391a0106c9204fe45bc73a039f056558cb83
@@ -184,7 +184,7 @@ theorem measure_iUnionNotConvergentSeq (hε : 0 < ε) (hf : ∀ n, StronglyMeasu
(ENNReal.tsum_le_tsum <| not_convergent_seq_lt_index_spec (half_pos hε) hf hg hsm hs hfg) _)
simp_rw [ENNReal.ofReal_mul (half_pos hε).le]
rw [ENNReal.tsum_mul_left, ← ENNReal.ofReal_tsum_of_nonneg, inv_eq_one_div, tsum_geometric_two, ←
- ENNReal.ofReal_mul (half_pos hε).le, div_mul_cancel ε two_ne_zero]
+ ENNReal.ofReal_mul (half_pos hε).le, div_mul_cancel₀ ε two_ne_zero]
· exact le_rfl
· exact fun n => pow_nonneg (by norm_num) _
· rw [inv_eq_one_div]
@@ -230,7 +230,7 @@ end Egorov
variable [SemilatticeSup ι] [Nonempty ι] [Countable ι] {γ : Type _} [TopologicalSpace γ]
{f : ι → α → β} {g : α → β} {s : Set α}
-/- ./././Mathport/Syntax/Translate/Basic.lean:641:2: warning: expanding binder collection (t «expr ⊆ » s) -/
+/- ./././Mathport/Syntax/Translate/Basic.lean:642:2: warning: expanding binder collection (t «expr ⊆ » s) -/
#print MeasureTheory.tendstoUniformlyOn_of_ae_tendsto /-
/-- **Egorov's theorem**: If `f : ι → α → β` is a sequence of strongly measurable functions that
converges to `g : α → β` almost everywhere on a measurable set `s` of finite measure,
mathlib commit https://github.com/leanprover-community/mathlib/commit/65a1391a0106c9204fe45bc73a039f056558cb83
@@ -69,7 +69,7 @@ theorem measure_inter_notConvergentSeq_eq_zero [SemilatticeSup ι] [Nonempty ι]
(hfg : ∀ᵐ x ∂μ, x ∈ s → Tendsto (fun n => f n x) atTop (𝓝 (g x))) (n : ℕ) :
μ (s ∩ ⋂ j, notConvergentSeq f g n j) = 0 :=
by
- simp_rw [Metric.tendsto_atTop, ae_iff] at hfg
+ simp_rw [Metric.tendsto_atTop, ae_iff] at hfg
rw [← nonpos_iff_eq_zero, ← hfg]
refine' measure_mono fun x => _
simp only [mem_inter_iff, mem_Inter, ge_iff_le, mem_not_convergent_seq_iff]
@@ -121,7 +121,7 @@ theorem exists_notConvergentSeq_lt (hε : 0 < ε) (hf : ∀ n, StronglyMeasurabl
obtain ⟨N, hN⟩ :=
(ENNReal.tendsto_atTop ENNReal.zero_ne_top).1
(measure_not_convergent_seq_tendsto_zero hf hg hsm hs hfg n) (ENNReal.ofReal (ε * 2⁻¹ ^ n)) _
- · rw [zero_add] at hN
+ · rw [zero_add] at hN
exact ⟨N, (hN N le_rfl).2⟩
· rw [gt_iff_lt, ENNReal.ofReal_pos]
exact mul_pos hε (pow_pos (by norm_num) n)
@@ -215,11 +215,11 @@ theorem tendstoUniformlyOn_diff_iUnionNotConvergentSeq (hε : 0 < ε)
rw [eventually_at_top]
refine' ⟨egorov.not_convergent_seq_lt_index (half_pos hε) hf hg hsm hs hfg N, fun n hn x hx => _⟩
simp only [mem_diff, egorov.Union_not_convergent_seq, not_exists, mem_Union, mem_inter_iff,
- not_and, exists_and_left] at hx
+ not_and, exists_and_left] at hx
obtain ⟨hxs, hx⟩ := hx
specialize hx hxs N
- rw [egorov.mem_not_convergent_seq_iff] at hx
- push_neg at hx
+ rw [egorov.mem_not_convergent_seq_iff] at hx
+ push_neg at hx
rw [dist_comm]
exact lt_of_le_of_lt (hx n hn) hN
#align measure_theory.egorov.tendsto_uniformly_on_diff_Union_not_convergent_seq MeasureTheory.Egorov.tendstoUniformlyOn_diff_iUnionNotConvergentSeq
mathlib commit https://github.com/leanprover-community/mathlib/commit/ce64cd319bb6b3e82f31c2d38e79080d377be451
@@ -3,7 +3,7 @@ Copyright (c) 2022 Kexing Ying. All rights reserved.
Released under Apache 2.0 license as described in the file LICENSE.
Authors: Kexing Ying
-/
-import Mathbin.MeasureTheory.Function.StronglyMeasurable.Basic
+import MeasureTheory.Function.StronglyMeasurable.Basic
#align_import measure_theory.function.egorov from "leanprover-community/mathlib"@"0b7c740e25651db0ba63648fbae9f9d6f941e31b"
@@ -230,7 +230,7 @@ end Egorov
variable [SemilatticeSup ι] [Nonempty ι] [Countable ι] {γ : Type _} [TopologicalSpace γ]
{f : ι → α → β} {g : α → β} {s : Set α}
-/- ./././Mathport/Syntax/Translate/Basic.lean:635:2: warning: expanding binder collection (t «expr ⊆ » s) -/
+/- ./././Mathport/Syntax/Translate/Basic.lean:641:2: warning: expanding binder collection (t «expr ⊆ » s) -/
#print MeasureTheory.tendstoUniformlyOn_of_ae_tendsto /-
/-- **Egorov's theorem**: If `f : ι → α → β` is a sequence of strongly measurable functions that
converges to `g : α → β` almost everywhere on a measurable set `s` of finite measure,
mathlib commit https://github.com/leanprover-community/mathlib/commit/32a7e535287f9c73f2e4d2aef306a39190f0b504
@@ -128,27 +128,27 @@ theorem exists_notConvergentSeq_lt (hε : 0 < ε) (hf : ∀ n, StronglyMeasurabl
#align measure_theory.egorov.exists_not_convergent_seq_lt MeasureTheory.Egorov.exists_notConvergentSeq_lt
-/
-#print MeasureTheory.Egorov.notConvergentSeqLtIndex /-
+#print MeasureTheory.Egorov.notConvergentSeqLTIndex /-
/-- Given some `ε > 0`, `not_convergent_seq_lt_index` provides the index such that
`not_convergent_seq` (intersected with a set of finite measure) has measure less than
`ε * 2⁻¹ ^ n`.
This definition is useful for Egorov's theorem. -/
-def notConvergentSeqLtIndex (hε : 0 < ε) (hf : ∀ n, StronglyMeasurable (f n))
+def notConvergentSeqLTIndex (hε : 0 < ε) (hf : ∀ n, StronglyMeasurable (f n))
(hg : StronglyMeasurable g) (hsm : MeasurableSet s) (hs : μ s ≠ ∞)
(hfg : ∀ᵐ x ∂μ, x ∈ s → Tendsto (fun n => f n x) atTop (𝓝 (g x))) (n : ℕ) : ι :=
Classical.choose <| exists_notConvergentSeq_lt hε hf hg hsm hs hfg n
-#align measure_theory.egorov.not_convergent_seq_lt_index MeasureTheory.Egorov.notConvergentSeqLtIndex
+#align measure_theory.egorov.not_convergent_seq_lt_index MeasureTheory.Egorov.notConvergentSeqLTIndex
-/
-#print MeasureTheory.Egorov.notConvergentSeqLtIndex_spec /-
-theorem notConvergentSeqLtIndex_spec (hε : 0 < ε) (hf : ∀ n, StronglyMeasurable (f n))
+#print MeasureTheory.Egorov.notConvergentSeqLTIndex_spec /-
+theorem notConvergentSeqLTIndex_spec (hε : 0 < ε) (hf : ∀ n, StronglyMeasurable (f n))
(hg : StronglyMeasurable g) (hsm : MeasurableSet s) (hs : μ s ≠ ∞)
(hfg : ∀ᵐ x ∂μ, x ∈ s → Tendsto (fun n => f n x) atTop (𝓝 (g x))) (n : ℕ) :
- μ (s ∩ notConvergentSeq f g n (notConvergentSeqLtIndex hε hf hg hsm hs hfg n)) ≤
+ μ (s ∩ notConvergentSeq f g n (notConvergentSeqLTIndex hε hf hg hsm hs hfg n)) ≤
ENNReal.ofReal (ε * 2⁻¹ ^ n) :=
Classical.choose_spec <| exists_notConvergentSeq_lt hε hf hg hsm hs hfg n
-#align measure_theory.egorov.not_convergent_seq_lt_index_spec MeasureTheory.Egorov.notConvergentSeqLtIndex_spec
+#align measure_theory.egorov.not_convergent_seq_lt_index_spec MeasureTheory.Egorov.notConvergentSeqLTIndex_spec
-/
#print MeasureTheory.Egorov.iUnionNotConvergentSeq /-
@@ -159,7 +159,7 @@ This definition is useful for Egorov's theorem. -/
def iUnionNotConvergentSeq (hε : 0 < ε) (hf : ∀ n, StronglyMeasurable (f n))
(hg : StronglyMeasurable g) (hsm : MeasurableSet s) (hs : μ s ≠ ∞)
(hfg : ∀ᵐ x ∂μ, x ∈ s → Tendsto (fun n => f n x) atTop (𝓝 (g x))) : Set α :=
- ⋃ n, s ∩ notConvergentSeq f g n (notConvergentSeqLtIndex (half_pos hε) hf hg hsm hs hfg n)
+ ⋃ n, s ∩ notConvergentSeq f g n (notConvergentSeqLTIndex (half_pos hε) hf hg hsm hs hfg n)
#align measure_theory.egorov.Union_not_convergent_seq MeasureTheory.Egorov.iUnionNotConvergentSeq
-/
mathlib commit https://github.com/leanprover-community/mathlib/commit/8ea5598db6caeddde6cb734aa179cc2408dbd345
@@ -2,14 +2,11 @@
Copyright (c) 2022 Kexing Ying. All rights reserved.
Released under Apache 2.0 license as described in the file LICENSE.
Authors: Kexing Ying
-
-! This file was ported from Lean 3 source module measure_theory.function.egorov
-! leanprover-community/mathlib commit 0b7c740e25651db0ba63648fbae9f9d6f941e31b
-! Please do not edit these lines, except to modify the commit id
-! if you have ported upstream changes.
-/
import Mathbin.MeasureTheory.Function.StronglyMeasurable.Basic
+#align_import measure_theory.function.egorov from "leanprover-community/mathlib"@"0b7c740e25651db0ba63648fbae9f9d6f941e31b"
+
/-!
# Egorov theorem
@@ -233,7 +230,7 @@ end Egorov
variable [SemilatticeSup ι] [Nonempty ι] [Countable ι] {γ : Type _} [TopologicalSpace γ]
{f : ι → α → β} {g : α → β} {s : Set α}
-/- ./././Mathport/Syntax/Translate/Basic.lean:638:2: warning: expanding binder collection (t «expr ⊆ » s) -/
+/- ./././Mathport/Syntax/Translate/Basic.lean:635:2: warning: expanding binder collection (t «expr ⊆ » s) -/
#print MeasureTheory.tendstoUniformlyOn_of_ae_tendsto /-
/-- **Egorov's theorem**: If `f : ι → α → β` is a sequence of strongly measurable functions that
converges to `g : α → β` almost everywhere on a measurable set `s` of finite measure,
mathlib commit https://github.com/leanprover-community/mathlib/commit/9fb8964792b4237dac6200193a0d533f1b3f7423
@@ -54,15 +54,20 @@ def notConvergentSeq [Preorder ι] (f : ι → α → β) (g : α → β) (n :
variable {n : ℕ} {i j : ι} {s : Set α} {ε : ℝ} {f : ι → α → β} {g : α → β}
+#print MeasureTheory.Egorov.mem_notConvergentSeq_iff /-
theorem mem_notConvergentSeq_iff [Preorder ι] {x : α} :
x ∈ notConvergentSeq f g n j ↔ ∃ (k : _) (hk : j ≤ k), 1 / (n + 1 : ℝ) < dist (f k x) (g x) :=
by simp_rw [not_convergent_seq, mem_Union]; rfl
#align measure_theory.egorov.mem_not_convergent_seq_iff MeasureTheory.Egorov.mem_notConvergentSeq_iff
+-/
+#print MeasureTheory.Egorov.notConvergentSeq_antitone /-
theorem notConvergentSeq_antitone [Preorder ι] : Antitone (notConvergentSeq f g n) := fun j k hjk =>
iUnion₂_mono' fun l hl => ⟨l, le_trans hjk hl, Subset.rfl⟩
#align measure_theory.egorov.not_convergent_seq_antitone MeasureTheory.Egorov.notConvergentSeq_antitone
+-/
+#print MeasureTheory.Egorov.measure_inter_notConvergentSeq_eq_zero /-
theorem measure_inter_notConvergentSeq_eq_zero [SemilatticeSup ι] [Nonempty ι]
(hfg : ∀ᵐ x ∂μ, x ∈ s → Tendsto (fun n => f n x) atTop (𝓝 (g x))) (n : ℕ) :
μ (s ∩ ⋂ j, notConvergentSeq f g n j) = 0 :=
@@ -77,7 +82,9 @@ theorem measure_inter_notConvergentSeq_eq_zero [SemilatticeSup ι] [Nonempty ι]
obtain ⟨n, hn₁, hn₂⟩ := hx N
exact ⟨n, hn₁, hn₂.le⟩
#align measure_theory.egorov.measure_inter_not_convergent_seq_eq_zero MeasureTheory.Egorov.measure_inter_notConvergentSeq_eq_zero
+-/
+#print MeasureTheory.Egorov.notConvergentSeq_measurableSet /-
theorem notConvergentSeq_measurableSet [Preorder ι] [Countable ι]
(hf : ∀ n, strongly_measurable[m] (f n)) (hg : StronglyMeasurable g) :
MeasurableSet (notConvergentSeq f g n j) :=
@@ -85,7 +92,9 @@ theorem notConvergentSeq_measurableSet [Preorder ι] [Countable ι]
MeasurableSet.iUnion fun hk =>
StronglyMeasurable.measurableSet_lt stronglyMeasurable_const <| (hf k).dist hg
#align measure_theory.egorov.not_convergent_seq_measurable_set MeasureTheory.Egorov.notConvergentSeq_measurableSet
+-/
+#print MeasureTheory.Egorov.measure_notConvergentSeq_tendsto_zero /-
theorem measure_notConvergentSeq_tendsto_zero [SemilatticeSup ι] [Countable ι]
(hf : ∀ n, StronglyMeasurable (f n)) (hg : StronglyMeasurable g) (hsm : MeasurableSet s)
(hs : μ s ≠ ∞) (hfg : ∀ᵐ x ∂μ, x ∈ s → Tendsto (fun n => f n x) atTop (𝓝 (g x))) (n : ℕ) :
@@ -102,9 +111,11 @@ theorem measure_notConvergentSeq_tendsto_zero [SemilatticeSup ι] [Countable ι]
(fun k l hkl => inter_subset_inter_right _ <| not_convergent_seq_antitone hkl)
⟨h.some, (lt_of_le_of_lt (measure_mono <| inter_subset_left _ _) (lt_top_iff_ne_top.2 hs)).Ne⟩
#align measure_theory.egorov.measure_not_convergent_seq_tendsto_zero MeasureTheory.Egorov.measure_notConvergentSeq_tendsto_zero
+-/
variable [SemilatticeSup ι] [Nonempty ι] [Countable ι]
+#print MeasureTheory.Egorov.exists_notConvergentSeq_lt /-
theorem exists_notConvergentSeq_lt (hε : 0 < ε) (hf : ∀ n, StronglyMeasurable (f n))
(hg : StronglyMeasurable g) (hsm : MeasurableSet s) (hs : μ s ≠ ∞)
(hfg : ∀ᵐ x ∂μ, x ∈ s → Tendsto (fun n => f n x) atTop (𝓝 (g x))) (n : ℕ) :
@@ -118,7 +129,9 @@ theorem exists_notConvergentSeq_lt (hε : 0 < ε) (hf : ∀ n, StronglyMeasurabl
· rw [gt_iff_lt, ENNReal.ofReal_pos]
exact mul_pos hε (pow_pos (by norm_num) n)
#align measure_theory.egorov.exists_not_convergent_seq_lt MeasureTheory.Egorov.exists_notConvergentSeq_lt
+-/
+#print MeasureTheory.Egorov.notConvergentSeqLtIndex /-
/-- Given some `ε > 0`, `not_convergent_seq_lt_index` provides the index such that
`not_convergent_seq` (intersected with a set of finite measure) has measure less than
`ε * 2⁻¹ ^ n`.
@@ -129,7 +142,9 @@ def notConvergentSeqLtIndex (hε : 0 < ε) (hf : ∀ n, StronglyMeasurable (f n)
(hfg : ∀ᵐ x ∂μ, x ∈ s → Tendsto (fun n => f n x) atTop (𝓝 (g x))) (n : ℕ) : ι :=
Classical.choose <| exists_notConvergentSeq_lt hε hf hg hsm hs hfg n
#align measure_theory.egorov.not_convergent_seq_lt_index MeasureTheory.Egorov.notConvergentSeqLtIndex
+-/
+#print MeasureTheory.Egorov.notConvergentSeqLtIndex_spec /-
theorem notConvergentSeqLtIndex_spec (hε : 0 < ε) (hf : ∀ n, StronglyMeasurable (f n))
(hg : StronglyMeasurable g) (hsm : MeasurableSet s) (hs : μ s ≠ ∞)
(hfg : ∀ᵐ x ∂μ, x ∈ s → Tendsto (fun n => f n x) atTop (𝓝 (g x))) (n : ℕ) :
@@ -137,7 +152,9 @@ theorem notConvergentSeqLtIndex_spec (hε : 0 < ε) (hf : ∀ n, StronglyMeasura
ENNReal.ofReal (ε * 2⁻¹ ^ n) :=
Classical.choose_spec <| exists_notConvergentSeq_lt hε hf hg hsm hs hfg n
#align measure_theory.egorov.not_convergent_seq_lt_index_spec MeasureTheory.Egorov.notConvergentSeqLtIndex_spec
+-/
+#print MeasureTheory.Egorov.iUnionNotConvergentSeq /-
/-- Given some `ε > 0`, `Union_not_convergent_seq` is the union of `not_convergent_seq` with
specific indicies such that `Union_not_convergent_seq` has measure less equal than `ε`.
@@ -147,14 +164,18 @@ def iUnionNotConvergentSeq (hε : 0 < ε) (hf : ∀ n, StronglyMeasurable (f n))
(hfg : ∀ᵐ x ∂μ, x ∈ s → Tendsto (fun n => f n x) atTop (𝓝 (g x))) : Set α :=
⋃ n, s ∩ notConvergentSeq f g n (notConvergentSeqLtIndex (half_pos hε) hf hg hsm hs hfg n)
#align measure_theory.egorov.Union_not_convergent_seq MeasureTheory.Egorov.iUnionNotConvergentSeq
+-/
+#print MeasureTheory.Egorov.iUnionNotConvergentSeq_measurableSet /-
theorem iUnionNotConvergentSeq_measurableSet (hε : 0 < ε) (hf : ∀ n, StronglyMeasurable (f n))
(hg : StronglyMeasurable g) (hsm : MeasurableSet s) (hs : μ s ≠ ∞)
(hfg : ∀ᵐ x ∂μ, x ∈ s → Tendsto (fun n => f n x) atTop (𝓝 (g x))) :
MeasurableSet <| iUnionNotConvergentSeq hε hf hg hsm hs hfg :=
MeasurableSet.iUnion fun n => hsm.inter <| notConvergentSeq_measurableSet hf hg
#align measure_theory.egorov.Union_not_convergent_seq_measurable_set MeasureTheory.Egorov.iUnionNotConvergentSeq_measurableSet
+-/
+#print MeasureTheory.Egorov.measure_iUnionNotConvergentSeq /-
theorem measure_iUnionNotConvergentSeq (hε : 0 < ε) (hf : ∀ n, StronglyMeasurable (f n))
(hg : StronglyMeasurable g) (hsm : MeasurableSet s) (hs : μ s ≠ ∞)
(hfg : ∀ᵐ x ∂μ, x ∈ s → Tendsto (fun n => f n x) atTop (𝓝 (g x))) :
@@ -172,7 +193,9 @@ theorem measure_iUnionNotConvergentSeq (hε : 0 < ε) (hf : ∀ n, StronglyMeasu
· rw [inv_eq_one_div]
exact summable_geometric_two
#align measure_theory.egorov.measure_Union_not_convergent_seq MeasureTheory.Egorov.measure_iUnionNotConvergentSeq
+-/
+#print MeasureTheory.Egorov.iUnionNotConvergentSeq_subset /-
theorem iUnionNotConvergentSeq_subset (hε : 0 < ε) (hf : ∀ n, StronglyMeasurable (f n))
(hg : StronglyMeasurable g) (hsm : MeasurableSet s) (hs : μ s ≠ ∞)
(hfg : ∀ᵐ x ∂μ, x ∈ s → Tendsto (fun n => f n x) atTop (𝓝 (g x))) :
@@ -181,7 +204,9 @@ theorem iUnionNotConvergentSeq_subset (hε : 0 < ε) (hf : ∀ n, StronglyMeasur
rw [Union_not_convergent_seq, ← inter_Union]
exact inter_subset_left _ _
#align measure_theory.egorov.Union_not_convergent_seq_subset MeasureTheory.Egorov.iUnionNotConvergentSeq_subset
+-/
+#print MeasureTheory.Egorov.tendstoUniformlyOn_diff_iUnionNotConvergentSeq /-
theorem tendstoUniformlyOn_diff_iUnionNotConvergentSeq (hε : 0 < ε)
(hf : ∀ n, StronglyMeasurable (f n)) (hg : StronglyMeasurable g) (hsm : MeasurableSet s)
(hs : μ s ≠ ∞) (hfg : ∀ᵐ x ∂μ, x ∈ s → Tendsto (fun n => f n x) atTop (𝓝 (g x))) :
@@ -201,6 +226,7 @@ theorem tendstoUniformlyOn_diff_iUnionNotConvergentSeq (hε : 0 < ε)
rw [dist_comm]
exact lt_of_le_of_lt (hx n hn) hN
#align measure_theory.egorov.tendsto_uniformly_on_diff_Union_not_convergent_seq MeasureTheory.Egorov.tendstoUniformlyOn_diff_iUnionNotConvergentSeq
+-/
end Egorov
@@ -208,6 +234,7 @@ variable [SemilatticeSup ι] [Nonempty ι] [Countable ι] {γ : Type _} [Topolog
{f : ι → α → β} {g : α → β} {s : Set α}
/- ./././Mathport/Syntax/Translate/Basic.lean:638:2: warning: expanding binder collection (t «expr ⊆ » s) -/
+#print MeasureTheory.tendstoUniformlyOn_of_ae_tendsto /-
/-- **Egorov's theorem**: If `f : ι → α → β` is a sequence of strongly measurable functions that
converges to `g : α → β` almost everywhere on a measurable set `s` of finite measure,
then for all `ε > 0`, there exists a subset `t ⊆ s` such that `μ t ≤ ε` and `f` converges to `g`
@@ -226,7 +253,9 @@ theorem tendstoUniformlyOn_of_ae_tendsto (hf : ∀ n, StronglyMeasurable (f n))
Egorov.measure_iUnionNotConvergentSeq hε hf hg hsm hs hfg,
Egorov.tendstoUniformlyOn_diff_iUnionNotConvergentSeq hε hf hg hsm hs hfg⟩
#align measure_theory.tendsto_uniformly_on_of_ae_tendsto MeasureTheory.tendstoUniformlyOn_of_ae_tendsto
+-/
+#print MeasureTheory.tendstoUniformlyOn_of_ae_tendsto' /-
/-- Egorov's theorem for finite measure spaces. -/
theorem tendstoUniformlyOn_of_ae_tendsto' [IsFiniteMeasure μ] (hf : ∀ n, StronglyMeasurable (f n))
(hg : StronglyMeasurable g) (hfg : ∀ᵐ x ∂μ, Tendsto (fun n => f n x) atTop (𝓝 (g x))) {ε : ℝ}
@@ -239,6 +268,7 @@ theorem tendstoUniformlyOn_of_ae_tendsto' [IsFiniteMeasure μ] (hf : ∀ n, Stro
rwa [compl_eq_univ_diff]
· filter_upwards [hfg] with _ htendsto _ using htendsto
#align measure_theory.tendsto_uniformly_on_of_ae_tendsto' MeasureTheory.tendstoUniformlyOn_of_ae_tendsto'
+-/
end MeasureTheory
mathlib commit https://github.com/leanprover-community/mathlib/commit/31c24aa72e7b3e5ed97a8412470e904f82b81004
@@ -207,7 +207,7 @@ end Egorov
variable [SemilatticeSup ι] [Nonempty ι] [Countable ι] {γ : Type _} [TopologicalSpace γ]
{f : ι → α → β} {g : α → β} {s : Set α}
-/- ./././Mathport/Syntax/Translate/Basic.lean:635:2: warning: expanding binder collection (t «expr ⊆ » s) -/
+/- ./././Mathport/Syntax/Translate/Basic.lean:638:2: warning: expanding binder collection (t «expr ⊆ » s) -/
/-- **Egorov's theorem**: If `f : ι → α → β` is a sequence of strongly measurable functions that
converges to `g : α → β` almost everywhere on a measurable set `s` of finite measure,
then for all `ε > 0`, there exists a subset `t ⊆ s` such that `μ t ≤ ε` and `f` converges to `g`
mathlib commit https://github.com/leanprover-community/mathlib/commit/5f25c089cb34db4db112556f23c50d12da81b297
@@ -48,7 +48,7 @@ set of elements such that `f k x` and `g x` are separated by at least `1 / (n +
This definition is useful for Egorov's theorem. -/
def notConvergentSeq [Preorder ι] (f : ι → α → β) (g : α → β) (n : ℕ) (j : ι) : Set α :=
- ⋃ (k) (hk : j ≤ k), { x | 1 / (n + 1 : ℝ) < dist (f k x) (g x) }
+ ⋃ (k) (hk : j ≤ k), {x | 1 / (n + 1 : ℝ) < dist (f k x) (g x)}
#align measure_theory.egorov.not_convergent_seq MeasureTheory.Egorov.notConvergentSeq
-/
@@ -197,7 +197,7 @@ theorem tendstoUniformlyOn_diff_iUnionNotConvergentSeq (hε : 0 < ε)
obtain ⟨hxs, hx⟩ := hx
specialize hx hxs N
rw [egorov.mem_not_convergent_seq_iff] at hx
- push_neg at hx
+ push_neg at hx
rw [dist_comm]
exact lt_of_le_of_lt (hx n hn) hN
#align measure_theory.egorov.tendsto_uniformly_on_diff_Union_not_convergent_seq MeasureTheory.Egorov.tendstoUniformlyOn_diff_iUnionNotConvergentSeq
@@ -228,7 +228,7 @@ theorem tendstoUniformlyOn_of_ae_tendsto (hf : ∀ n, StronglyMeasurable (f n))
#align measure_theory.tendsto_uniformly_on_of_ae_tendsto MeasureTheory.tendstoUniformlyOn_of_ae_tendsto
/-- Egorov's theorem for finite measure spaces. -/
-theorem tendstoUniformlyOn_of_ae_tendsto' [FiniteMeasure μ] (hf : ∀ n, StronglyMeasurable (f n))
+theorem tendstoUniformlyOn_of_ae_tendsto' [IsFiniteMeasure μ] (hf : ∀ n, StronglyMeasurable (f n))
(hg : StronglyMeasurable g) (hfg : ∀ᵐ x ∂μ, Tendsto (fun n => f n x) atTop (𝓝 (g x))) {ε : ℝ}
(hε : 0 < ε) :
∃ t, MeasurableSet t ∧ μ t ≤ ENNReal.ofReal ε ∧ TendstoUniformlyOn f g atTop (tᶜ) :=
@@ -237,7 +237,7 @@ theorem tendstoUniformlyOn_of_ae_tendsto' [FiniteMeasure μ] (hf : ∀ n, Strong
tendsto_uniformly_on_of_ae_tendsto hf hg MeasurableSet.univ (measure_ne_top μ univ) _ hε
· refine' ⟨_, ht, _⟩
rwa [compl_eq_univ_diff]
- · filter_upwards [hfg]with _ htendsto _ using htendsto
+ · filter_upwards [hfg] with _ htendsto _ using htendsto
#align measure_theory.tendsto_uniformly_on_of_ae_tendsto' MeasureTheory.tendstoUniformlyOn_of_ae_tendsto'
end MeasureTheory
mathlib commit https://github.com/leanprover-community/mathlib/commit/cca40788df1b8755d5baf17ab2f27dacc2e17acb
@@ -55,8 +55,8 @@ def notConvergentSeq [Preorder ι] (f : ι → α → β) (g : α → β) (n :
variable {n : ℕ} {i j : ι} {s : Set α} {ε : ℝ} {f : ι → α → β} {g : α → β}
theorem mem_notConvergentSeq_iff [Preorder ι] {x : α} :
- x ∈ notConvergentSeq f g n j ↔ ∃ (k : _)(hk : j ≤ k), 1 / (n + 1 : ℝ) < dist (f k x) (g x) := by
- simp_rw [not_convergent_seq, mem_Union]; rfl
+ x ∈ notConvergentSeq f g n j ↔ ∃ (k : _) (hk : j ≤ k), 1 / (n + 1 : ℝ) < dist (f k x) (g x) :=
+ by simp_rw [not_convergent_seq, mem_Union]; rfl
#align measure_theory.egorov.mem_not_convergent_seq_iff MeasureTheory.Egorov.mem_notConvergentSeq_iff
theorem notConvergentSeq_antitone [Preorder ι] : Antitone (notConvergentSeq f g n) := fun j k hjk =>
@@ -67,7 +67,7 @@ theorem measure_inter_notConvergentSeq_eq_zero [SemilatticeSup ι] [Nonempty ι]
(hfg : ∀ᵐ x ∂μ, x ∈ s → Tendsto (fun n => f n x) atTop (𝓝 (g x))) (n : ℕ) :
μ (s ∩ ⋂ j, notConvergentSeq f g n j) = 0 :=
by
- simp_rw [Metric.tendsto_atTop, ae_iff] at hfg
+ simp_rw [Metric.tendsto_atTop, ae_iff] at hfg
rw [← nonpos_iff_eq_zero, ← hfg]
refine' measure_mono fun x => _
simp only [mem_inter_iff, mem_Inter, ge_iff_le, mem_not_convergent_seq_iff]
@@ -113,7 +113,7 @@ theorem exists_notConvergentSeq_lt (hε : 0 < ε) (hf : ∀ n, StronglyMeasurabl
obtain ⟨N, hN⟩ :=
(ENNReal.tendsto_atTop ENNReal.zero_ne_top).1
(measure_not_convergent_seq_tendsto_zero hf hg hsm hs hfg n) (ENNReal.ofReal (ε * 2⁻¹ ^ n)) _
- · rw [zero_add] at hN
+ · rw [zero_add] at hN
exact ⟨N, (hN N le_rfl).2⟩
· rw [gt_iff_lt, ENNReal.ofReal_pos]
exact mul_pos hε (pow_pos (by norm_num) n)
@@ -193,11 +193,11 @@ theorem tendstoUniformlyOn_diff_iUnionNotConvergentSeq (hε : 0 < ε)
rw [eventually_at_top]
refine' ⟨egorov.not_convergent_seq_lt_index (half_pos hε) hf hg hsm hs hfg N, fun n hn x hx => _⟩
simp only [mem_diff, egorov.Union_not_convergent_seq, not_exists, mem_Union, mem_inter_iff,
- not_and, exists_and_left] at hx
+ not_and, exists_and_left] at hx
obtain ⟨hxs, hx⟩ := hx
specialize hx hxs N
- rw [egorov.mem_not_convergent_seq_iff] at hx
- push_neg at hx
+ rw [egorov.mem_not_convergent_seq_iff] at hx
+ push_neg at hx
rw [dist_comm]
exact lt_of_le_of_lt (hx n hn) hN
#align measure_theory.egorov.tendsto_uniformly_on_diff_Union_not_convergent_seq MeasureTheory.Egorov.tendstoUniformlyOn_diff_iUnionNotConvergentSeq
@@ -218,7 +218,7 @@ an arbitrarily small set. -/
theorem tendstoUniformlyOn_of_ae_tendsto (hf : ∀ n, StronglyMeasurable (f n))
(hg : StronglyMeasurable g) (hsm : MeasurableSet s) (hs : μ s ≠ ∞)
(hfg : ∀ᵐ x ∂μ, x ∈ s → Tendsto (fun n => f n x) atTop (𝓝 (g x))) {ε : ℝ} (hε : 0 < ε) :
- ∃ (t : _)(_ : t ⊆ s),
+ ∃ (t : _) (_ : t ⊆ s),
MeasurableSet t ∧ μ t ≤ ENNReal.ofReal ε ∧ TendstoUniformlyOn f g atTop (s \ t) :=
⟨Egorov.iUnionNotConvergentSeq hε hf hg hsm hs hfg,
Egorov.iUnionNotConvergentSeq_subset hε hf hg hsm hs hfg,
mathlib commit https://github.com/leanprover-community/mathlib/commit/917c3c072e487b3cccdbfeff17e75b40e45f66cb
@@ -31,7 +31,7 @@ convergence in measure.
noncomputable section
-open Classical MeasureTheory NNReal ENNReal Topology
+open scoped Classical MeasureTheory NNReal ENNReal Topology
namespace MeasureTheory
mathlib commit https://github.com/leanprover-community/mathlib/commit/917c3c072e487b3cccdbfeff17e75b40e45f66cb
@@ -54,33 +54,15 @@ def notConvergentSeq [Preorder ι] (f : ι → α → β) (g : α → β) (n :
variable {n : ℕ} {i j : ι} {s : Set α} {ε : ℝ} {f : ι → α → β} {g : α → β}
-/- warning: measure_theory.egorov.mem_not_convergent_seq_iff -> MeasureTheory.Egorov.mem_notConvergentSeq_iff is a dubious translation:
-lean 3 declaration is
- forall {α : Type.{u1}} {β : Type.{u2}} {ι : Type.{u3}} [_inst_1 : MetricSpace.{u2} β] {n : Nat} {j : ι} {f : ι -> α -> β} {g : α -> β} [_inst_2 : Preorder.{u3} ι] {x : α}, Iff (Membership.Mem.{u1, u1} α (Set.{u1} α) (Set.hasMem.{u1} α) x (MeasureTheory.Egorov.notConvergentSeq.{u1, u2, u3} α β ι _inst_1 _inst_2 f g n j)) (Exists.{succ u3} ι (fun (k : ι) => Exists.{0} (LE.le.{u3} ι (Preorder.toHasLe.{u3} ι _inst_2) j k) (fun (hk : LE.le.{u3} ι (Preorder.toHasLe.{u3} ι _inst_2) j k) => LT.lt.{0} Real Real.hasLt (HDiv.hDiv.{0, 0, 0} Real Real Real (instHDiv.{0} Real (DivInvMonoid.toHasDiv.{0} Real (DivisionRing.toDivInvMonoid.{0} Real Real.divisionRing))) (OfNat.ofNat.{0} Real 1 (OfNat.mk.{0} Real 1 (One.one.{0} Real Real.hasOne))) (HAdd.hAdd.{0, 0, 0} Real Real Real (instHAdd.{0} Real Real.hasAdd) ((fun (a : Type) (b : Type) [self : HasLiftT.{1, 1} a b] => self.0) Nat Real (HasLiftT.mk.{1, 1} Nat Real (CoeTCₓ.coe.{1, 1} Nat Real (Nat.castCoe.{0} Real Real.hasNatCast))) n) (OfNat.ofNat.{0} Real 1 (OfNat.mk.{0} Real 1 (One.one.{0} Real Real.hasOne))))) (Dist.dist.{u2} β (PseudoMetricSpace.toHasDist.{u2} β (MetricSpace.toPseudoMetricSpace.{u2} β _inst_1)) (f k x) (g x)))))
-but is expected to have type
- forall {α : Type.{u2}} {β : Type.{u1}} {ι : Type.{u3}} [_inst_1 : MetricSpace.{u1} β] {n : Nat} {j : ι} {f : ι -> α -> β} {g : α -> β} [_inst_2 : Preorder.{u3} ι] {x : α}, Iff (Membership.mem.{u2, u2} α (Set.{u2} α) (Set.instMembershipSet.{u2} α) x (MeasureTheory.Egorov.notConvergentSeq.{u2, u1, u3} α β ι _inst_1 _inst_2 f g n j)) (Exists.{succ u3} ι (fun (k : ι) => Exists.{0} (LE.le.{u3} ι (Preorder.toLE.{u3} ι _inst_2) j k) (fun (hk : LE.le.{u3} ι (Preorder.toLE.{u3} ι _inst_2) j k) => LT.lt.{0} Real Real.instLTReal (HDiv.hDiv.{0, 0, 0} Real Real Real (instHDiv.{0} Real (LinearOrderedField.toDiv.{0} Real Real.instLinearOrderedFieldReal)) (OfNat.ofNat.{0} Real 1 (One.toOfNat1.{0} Real Real.instOneReal)) (HAdd.hAdd.{0, 0, 0} Real Real Real (instHAdd.{0} Real Real.instAddReal) (Nat.cast.{0} Real Real.natCast n) (OfNat.ofNat.{0} Real 1 (One.toOfNat1.{0} Real Real.instOneReal)))) (Dist.dist.{u1} β (PseudoMetricSpace.toDist.{u1} β (MetricSpace.toPseudoMetricSpace.{u1} β _inst_1)) (f k x) (g x)))))
-Case conversion may be inaccurate. Consider using '#align measure_theory.egorov.mem_not_convergent_seq_iff MeasureTheory.Egorov.mem_notConvergentSeq_iffₓ'. -/
theorem mem_notConvergentSeq_iff [Preorder ι] {x : α} :
x ∈ notConvergentSeq f g n j ↔ ∃ (k : _)(hk : j ≤ k), 1 / (n + 1 : ℝ) < dist (f k x) (g x) := by
simp_rw [not_convergent_seq, mem_Union]; rfl
#align measure_theory.egorov.mem_not_convergent_seq_iff MeasureTheory.Egorov.mem_notConvergentSeq_iff
-/- warning: measure_theory.egorov.not_convergent_seq_antitone -> MeasureTheory.Egorov.notConvergentSeq_antitone is a dubious translation:
-lean 3 declaration is
- forall {α : Type.{u1}} {β : Type.{u2}} {ι : Type.{u3}} [_inst_1 : MetricSpace.{u2} β] {n : Nat} {f : ι -> α -> β} {g : α -> β} [_inst_2 : Preorder.{u3} ι], Antitone.{u3, u1} ι (Set.{u1} α) _inst_2 (PartialOrder.toPreorder.{u1} (Set.{u1} α) (CompleteSemilatticeInf.toPartialOrder.{u1} (Set.{u1} α) (CompleteLattice.toCompleteSemilatticeInf.{u1} (Set.{u1} α) (Order.Coframe.toCompleteLattice.{u1} (Set.{u1} α) (CompleteDistribLattice.toCoframe.{u1} (Set.{u1} α) (CompleteBooleanAlgebra.toCompleteDistribLattice.{u1} (Set.{u1} α) (Set.completeBooleanAlgebra.{u1} α))))))) (MeasureTheory.Egorov.notConvergentSeq.{u1, u2, u3} α β ι _inst_1 _inst_2 f g n)
-but is expected to have type
- forall {α : Type.{u2}} {β : Type.{u1}} {ι : Type.{u3}} [_inst_1 : MetricSpace.{u1} β] {n : Nat} {f : ι -> α -> β} {g : α -> β} [_inst_2 : Preorder.{u3} ι], Antitone.{u3, u2} ι (Set.{u2} α) _inst_2 (PartialOrder.toPreorder.{u2} (Set.{u2} α) (OmegaCompletePartialOrder.toPartialOrder.{u2} (Set.{u2} α) (CompleteLattice.instOmegaCompletePartialOrder.{u2} (Set.{u2} α) (Order.Coframe.toCompleteLattice.{u2} (Set.{u2} α) (CompleteDistribLattice.toCoframe.{u2} (Set.{u2} α) (CompleteBooleanAlgebra.toCompleteDistribLattice.{u2} (Set.{u2} α) (Set.instCompleteBooleanAlgebraSet.{u2} α))))))) (MeasureTheory.Egorov.notConvergentSeq.{u2, u1, u3} α β ι _inst_1 _inst_2 f g n)
-Case conversion may be inaccurate. Consider using '#align measure_theory.egorov.not_convergent_seq_antitone MeasureTheory.Egorov.notConvergentSeq_antitoneₓ'. -/
theorem notConvergentSeq_antitone [Preorder ι] : Antitone (notConvergentSeq f g n) := fun j k hjk =>
iUnion₂_mono' fun l hl => ⟨l, le_trans hjk hl, Subset.rfl⟩
#align measure_theory.egorov.not_convergent_seq_antitone MeasureTheory.Egorov.notConvergentSeq_antitone
-/- warning: measure_theory.egorov.measure_inter_not_convergent_seq_eq_zero -> MeasureTheory.Egorov.measure_inter_notConvergentSeq_eq_zero is a dubious translation:
-lean 3 declaration is
- forall {α : Type.{u1}} {β : Type.{u2}} {ι : Type.{u3}} {m : MeasurableSpace.{u1} α} [_inst_1 : MetricSpace.{u2} β] {μ : MeasureTheory.Measure.{u1} α m} {s : Set.{u1} α} {f : ι -> α -> β} {g : α -> β} [_inst_2 : SemilatticeSup.{u3} ι] [_inst_3 : Nonempty.{succ u3} ι], (Filter.Eventually.{u1} α (fun (x : α) => (Membership.Mem.{u1, u1} α (Set.{u1} α) (Set.hasMem.{u1} α) x s) -> (Filter.Tendsto.{u3, u2} ι β (fun (n : ι) => f n x) (Filter.atTop.{u3} ι (PartialOrder.toPreorder.{u3} ι (SemilatticeSup.toPartialOrder.{u3} ι _inst_2))) (nhds.{u2} β (UniformSpace.toTopologicalSpace.{u2} β (PseudoMetricSpace.toUniformSpace.{u2} β (MetricSpace.toPseudoMetricSpace.{u2} β _inst_1))) (g x)))) (MeasureTheory.Measure.ae.{u1} α m μ)) -> (forall (n : Nat), Eq.{1} ENNReal (coeFn.{succ u1, succ u1} (MeasureTheory.Measure.{u1} α m) (fun (_x : MeasureTheory.Measure.{u1} α m) => (Set.{u1} α) -> ENNReal) (MeasureTheory.Measure.instCoeFun.{u1} α m) μ (Inter.inter.{u1} (Set.{u1} α) (Set.hasInter.{u1} α) s (Set.iInter.{u1, succ u3} α ι (fun (j : ι) => MeasureTheory.Egorov.notConvergentSeq.{u1, u2, u3} α β ι _inst_1 (PartialOrder.toPreorder.{u3} ι (SemilatticeSup.toPartialOrder.{u3} ι _inst_2)) f g n j)))) (OfNat.ofNat.{0} ENNReal 0 (OfNat.mk.{0} ENNReal 0 (Zero.zero.{0} ENNReal ENNReal.hasZero))))
-but is expected to have type
- forall {α : Type.{u2}} {β : Type.{u1}} {ι : Type.{u3}} {m : MeasurableSpace.{u2} α} [_inst_1 : MetricSpace.{u1} β] {μ : MeasureTheory.Measure.{u2} α m} {s : Set.{u2} α} {f : ι -> α -> β} {g : α -> β} [_inst_2 : SemilatticeSup.{u3} ι] [_inst_3 : Nonempty.{succ u3} ι], (Filter.Eventually.{u2} α (fun (x : α) => (Membership.mem.{u2, u2} α (Set.{u2} α) (Set.instMembershipSet.{u2} α) x s) -> (Filter.Tendsto.{u3, u1} ι β (fun (n : ι) => f n x) (Filter.atTop.{u3} ι (PartialOrder.toPreorder.{u3} ι (SemilatticeSup.toPartialOrder.{u3} ι _inst_2))) (nhds.{u1} β (UniformSpace.toTopologicalSpace.{u1} β (PseudoMetricSpace.toUniformSpace.{u1} β (MetricSpace.toPseudoMetricSpace.{u1} β _inst_1))) (g x)))) (MeasureTheory.Measure.ae.{u2} α m μ)) -> (forall (n : Nat), Eq.{1} ENNReal (MeasureTheory.OuterMeasure.measureOf.{u2} α (MeasureTheory.Measure.toOuterMeasure.{u2} α m μ) (Inter.inter.{u2} (Set.{u2} α) (Set.instInterSet.{u2} α) s (Set.iInter.{u2, succ u3} α ι (fun (j : ι) => MeasureTheory.Egorov.notConvergentSeq.{u2, u1, u3} α β ι _inst_1 (PartialOrder.toPreorder.{u3} ι (SemilatticeSup.toPartialOrder.{u3} ι _inst_2)) f g n j)))) (OfNat.ofNat.{0} ENNReal 0 (Zero.toOfNat0.{0} ENNReal instENNRealZero)))
-Case conversion may be inaccurate. Consider using '#align measure_theory.egorov.measure_inter_not_convergent_seq_eq_zero MeasureTheory.Egorov.measure_inter_notConvergentSeq_eq_zeroₓ'. -/
theorem measure_inter_notConvergentSeq_eq_zero [SemilatticeSup ι] [Nonempty ι]
(hfg : ∀ᵐ x ∂μ, x ∈ s → Tendsto (fun n => f n x) atTop (𝓝 (g x))) (n : ℕ) :
μ (s ∩ ⋂ j, notConvergentSeq f g n j) = 0 :=
@@ -96,12 +78,6 @@ theorem measure_inter_notConvergentSeq_eq_zero [SemilatticeSup ι] [Nonempty ι]
exact ⟨n, hn₁, hn₂.le⟩
#align measure_theory.egorov.measure_inter_not_convergent_seq_eq_zero MeasureTheory.Egorov.measure_inter_notConvergentSeq_eq_zero
-/- warning: measure_theory.egorov.not_convergent_seq_measurable_set -> MeasureTheory.Egorov.notConvergentSeq_measurableSet is a dubious translation:
-lean 3 declaration is
- forall {α : Type.{u1}} {β : Type.{u2}} {ι : Type.{u3}} {m : MeasurableSpace.{u1} α} [_inst_1 : MetricSpace.{u2} β] {n : Nat} {j : ι} {f : ι -> α -> β} {g : α -> β} [_inst_2 : Preorder.{u3} ι] [_inst_3 : Countable.{succ u3} ι], (forall (n : ι), MeasureTheory.StronglyMeasurable.{u1, u2} α β (UniformSpace.toTopologicalSpace.{u2} β (PseudoMetricSpace.toUniformSpace.{u2} β (MetricSpace.toPseudoMetricSpace.{u2} β _inst_1))) m (f n)) -> (MeasureTheory.StronglyMeasurable.{u1, u2} α β (UniformSpace.toTopologicalSpace.{u2} β (PseudoMetricSpace.toUniformSpace.{u2} β (MetricSpace.toPseudoMetricSpace.{u2} β _inst_1))) m g) -> (MeasurableSet.{u1} α m (MeasureTheory.Egorov.notConvergentSeq.{u1, u2, u3} α β ι _inst_1 _inst_2 f g n j))
-but is expected to have type
- forall {α : Type.{u2}} {β : Type.{u1}} {ι : Type.{u3}} {m : MeasurableSpace.{u2} α} [_inst_1 : MetricSpace.{u1} β] {n : Nat} {j : ι} {f : ι -> α -> β} {g : α -> β} [_inst_2 : Preorder.{u3} ι] [_inst_3 : Countable.{succ u3} ι], (forall (n : ι), MeasureTheory.StronglyMeasurable.{u2, u1} α β (UniformSpace.toTopologicalSpace.{u1} β (PseudoMetricSpace.toUniformSpace.{u1} β (MetricSpace.toPseudoMetricSpace.{u1} β _inst_1))) m (f n)) -> (MeasureTheory.StronglyMeasurable.{u2, u1} α β (UniformSpace.toTopologicalSpace.{u1} β (PseudoMetricSpace.toUniformSpace.{u1} β (MetricSpace.toPseudoMetricSpace.{u1} β _inst_1))) m g) -> (MeasurableSet.{u2} α m (MeasureTheory.Egorov.notConvergentSeq.{u2, u1, u3} α β ι _inst_1 _inst_2 f g n j))
-Case conversion may be inaccurate. Consider using '#align measure_theory.egorov.not_convergent_seq_measurable_set MeasureTheory.Egorov.notConvergentSeq_measurableSetₓ'. -/
theorem notConvergentSeq_measurableSet [Preorder ι] [Countable ι]
(hf : ∀ n, strongly_measurable[m] (f n)) (hg : StronglyMeasurable g) :
MeasurableSet (notConvergentSeq f g n j) :=
@@ -110,9 +86,6 @@ theorem notConvergentSeq_measurableSet [Preorder ι] [Countable ι]
StronglyMeasurable.measurableSet_lt stronglyMeasurable_const <| (hf k).dist hg
#align measure_theory.egorov.not_convergent_seq_measurable_set MeasureTheory.Egorov.notConvergentSeq_measurableSet
-/- warning: measure_theory.egorov.measure_not_convergent_seq_tendsto_zero -> MeasureTheory.Egorov.measure_notConvergentSeq_tendsto_zero is a dubious translation:
-<too large>
-Case conversion may be inaccurate. Consider using '#align measure_theory.egorov.measure_not_convergent_seq_tendsto_zero MeasureTheory.Egorov.measure_notConvergentSeq_tendsto_zeroₓ'. -/
theorem measure_notConvergentSeq_tendsto_zero [SemilatticeSup ι] [Countable ι]
(hf : ∀ n, StronglyMeasurable (f n)) (hg : StronglyMeasurable g) (hsm : MeasurableSet s)
(hs : μ s ≠ ∞) (hfg : ∀ᵐ x ∂μ, x ∈ s → Tendsto (fun n => f n x) atTop (𝓝 (g x))) (n : ℕ) :
@@ -132,9 +105,6 @@ theorem measure_notConvergentSeq_tendsto_zero [SemilatticeSup ι] [Countable ι]
variable [SemilatticeSup ι] [Nonempty ι] [Countable ι]
-/- warning: measure_theory.egorov.exists_not_convergent_seq_lt -> MeasureTheory.Egorov.exists_notConvergentSeq_lt is a dubious translation:
-<too large>
-Case conversion may be inaccurate. Consider using '#align measure_theory.egorov.exists_not_convergent_seq_lt MeasureTheory.Egorov.exists_notConvergentSeq_ltₓ'. -/
theorem exists_notConvergentSeq_lt (hε : 0 < ε) (hf : ∀ n, StronglyMeasurable (f n))
(hg : StronglyMeasurable g) (hsm : MeasurableSet s) (hs : μ s ≠ ∞)
(hfg : ∀ᵐ x ∂μ, x ∈ s → Tendsto (fun n => f n x) atTop (𝓝 (g x))) (n : ℕ) :
@@ -149,12 +119,6 @@ theorem exists_notConvergentSeq_lt (hε : 0 < ε) (hf : ∀ n, StronglyMeasurabl
exact mul_pos hε (pow_pos (by norm_num) n)
#align measure_theory.egorov.exists_not_convergent_seq_lt MeasureTheory.Egorov.exists_notConvergentSeq_lt
-/- warning: measure_theory.egorov.not_convergent_seq_lt_index -> MeasureTheory.Egorov.notConvergentSeqLtIndex is a dubious translation:
-lean 3 declaration is
- forall {α : Type.{u1}} {β : Type.{u2}} {ι : Type.{u3}} {m : MeasurableSpace.{u1} α} [_inst_1 : MetricSpace.{u2} β] {μ : MeasureTheory.Measure.{u1} α m} {s : Set.{u1} α} {ε : Real} {f : ι -> α -> β} {g : α -> β} [_inst_2 : SemilatticeSup.{u3} ι] [_inst_3 : Nonempty.{succ u3} ι] [_inst_4 : Countable.{succ u3} ι], (LT.lt.{0} Real Real.hasLt (OfNat.ofNat.{0} Real 0 (OfNat.mk.{0} Real 0 (Zero.zero.{0} Real Real.hasZero))) ε) -> (forall (n : ι), MeasureTheory.StronglyMeasurable.{u1, u2} α β (UniformSpace.toTopologicalSpace.{u2} β (PseudoMetricSpace.toUniformSpace.{u2} β (MetricSpace.toPseudoMetricSpace.{u2} β _inst_1))) m (f n)) -> (MeasureTheory.StronglyMeasurable.{u1, u2} α β (UniformSpace.toTopologicalSpace.{u2} β (PseudoMetricSpace.toUniformSpace.{u2} β (MetricSpace.toPseudoMetricSpace.{u2} β _inst_1))) m g) -> (MeasurableSet.{u1} α m s) -> (Ne.{1} ENNReal (coeFn.{succ u1, succ u1} (MeasureTheory.Measure.{u1} α m) (fun (_x : MeasureTheory.Measure.{u1} α m) => (Set.{u1} α) -> ENNReal) (MeasureTheory.Measure.instCoeFun.{u1} α m) μ s) (Top.top.{0} ENNReal (CompleteLattice.toHasTop.{0} ENNReal (CompleteLinearOrder.toCompleteLattice.{0} ENNReal ENNReal.completeLinearOrder)))) -> (Filter.Eventually.{u1} α (fun (x : α) => (Membership.Mem.{u1, u1} α (Set.{u1} α) (Set.hasMem.{u1} α) x s) -> (Filter.Tendsto.{u3, u2} ι β (fun (n : ι) => f n x) (Filter.atTop.{u3} ι (PartialOrder.toPreorder.{u3} ι (SemilatticeSup.toPartialOrder.{u3} ι _inst_2))) (nhds.{u2} β (UniformSpace.toTopologicalSpace.{u2} β (PseudoMetricSpace.toUniformSpace.{u2} β (MetricSpace.toPseudoMetricSpace.{u2} β _inst_1))) (g x)))) (MeasureTheory.Measure.ae.{u1} α m μ)) -> Nat -> ι
-but is expected to have type
- forall {α : Type.{u1}} {β : Type.{u2}} {ι : Type.{u3}} {m : MeasurableSpace.{u1} α} [_inst_1 : MetricSpace.{u2} β] {μ : MeasureTheory.Measure.{u1} α m} {s : Set.{u1} α} {ε : Real} {f : ι -> α -> β} {g : α -> β} [_inst_2 : SemilatticeSup.{u3} ι] [_inst_3 : Nonempty.{succ u3} ι] [_inst_4 : Countable.{succ u3} ι], (LT.lt.{0} Real Real.instLTReal (OfNat.ofNat.{0} Real 0 (Zero.toOfNat0.{0} Real Real.instZeroReal)) ε) -> (forall (n : ι), MeasureTheory.StronglyMeasurable.{u1, u2} α β (UniformSpace.toTopologicalSpace.{u2} β (PseudoMetricSpace.toUniformSpace.{u2} β (MetricSpace.toPseudoMetricSpace.{u2} β _inst_1))) m (f n)) -> (MeasureTheory.StronglyMeasurable.{u1, u2} α β (UniformSpace.toTopologicalSpace.{u2} β (PseudoMetricSpace.toUniformSpace.{u2} β (MetricSpace.toPseudoMetricSpace.{u2} β _inst_1))) m g) -> (MeasurableSet.{u1} α m s) -> (Ne.{1} ENNReal (MeasureTheory.OuterMeasure.measureOf.{u1} α (MeasureTheory.Measure.toOuterMeasure.{u1} α m μ) s) (Top.top.{0} ENNReal (CompleteLattice.toTop.{0} ENNReal (CompleteLinearOrder.toCompleteLattice.{0} ENNReal ENNReal.instCompleteLinearOrderENNReal)))) -> (Filter.Eventually.{u1} α (fun (x : α) => (Membership.mem.{u1, u1} α (Set.{u1} α) (Set.instMembershipSet.{u1} α) x s) -> (Filter.Tendsto.{u3, u2} ι β (fun (n : ι) => f n x) (Filter.atTop.{u3} ι (PartialOrder.toPreorder.{u3} ι (SemilatticeSup.toPartialOrder.{u3} ι _inst_2))) (nhds.{u2} β (UniformSpace.toTopologicalSpace.{u2} β (PseudoMetricSpace.toUniformSpace.{u2} β (MetricSpace.toPseudoMetricSpace.{u2} β _inst_1))) (g x)))) (MeasureTheory.Measure.ae.{u1} α m μ)) -> Nat -> ι
-Case conversion may be inaccurate. Consider using '#align measure_theory.egorov.not_convergent_seq_lt_index MeasureTheory.Egorov.notConvergentSeqLtIndexₓ'. -/
/-- Given some `ε > 0`, `not_convergent_seq_lt_index` provides the index such that
`not_convergent_seq` (intersected with a set of finite measure) has measure less than
`ε * 2⁻¹ ^ n`.
@@ -166,9 +130,6 @@ def notConvergentSeqLtIndex (hε : 0 < ε) (hf : ∀ n, StronglyMeasurable (f n)
Classical.choose <| exists_notConvergentSeq_lt hε hf hg hsm hs hfg n
#align measure_theory.egorov.not_convergent_seq_lt_index MeasureTheory.Egorov.notConvergentSeqLtIndex
-/- warning: measure_theory.egorov.not_convergent_seq_lt_index_spec -> MeasureTheory.Egorov.notConvergentSeqLtIndex_spec is a dubious translation:
-<too large>
-Case conversion may be inaccurate. Consider using '#align measure_theory.egorov.not_convergent_seq_lt_index_spec MeasureTheory.Egorov.notConvergentSeqLtIndex_specₓ'. -/
theorem notConvergentSeqLtIndex_spec (hε : 0 < ε) (hf : ∀ n, StronglyMeasurable (f n))
(hg : StronglyMeasurable g) (hsm : MeasurableSet s) (hs : μ s ≠ ∞)
(hfg : ∀ᵐ x ∂μ, x ∈ s → Tendsto (fun n => f n x) atTop (𝓝 (g x))) (n : ℕ) :
@@ -177,12 +138,6 @@ theorem notConvergentSeqLtIndex_spec (hε : 0 < ε) (hf : ∀ n, StronglyMeasura
Classical.choose_spec <| exists_notConvergentSeq_lt hε hf hg hsm hs hfg n
#align measure_theory.egorov.not_convergent_seq_lt_index_spec MeasureTheory.Egorov.notConvergentSeqLtIndex_spec
-/- warning: measure_theory.egorov.Union_not_convergent_seq -> MeasureTheory.Egorov.iUnionNotConvergentSeq is a dubious translation:
-lean 3 declaration is
- forall {α : Type.{u1}} {β : Type.{u2}} {ι : Type.{u3}} {m : MeasurableSpace.{u1} α} [_inst_1 : MetricSpace.{u2} β] {μ : MeasureTheory.Measure.{u1} α m} {s : Set.{u1} α} {ε : Real} {f : ι -> α -> β} {g : α -> β} [_inst_2 : SemilatticeSup.{u3} ι] [_inst_3 : Nonempty.{succ u3} ι] [_inst_4 : Countable.{succ u3} ι], (LT.lt.{0} Real Real.hasLt (OfNat.ofNat.{0} Real 0 (OfNat.mk.{0} Real 0 (Zero.zero.{0} Real Real.hasZero))) ε) -> (forall (n : ι), MeasureTheory.StronglyMeasurable.{u1, u2} α β (UniformSpace.toTopologicalSpace.{u2} β (PseudoMetricSpace.toUniformSpace.{u2} β (MetricSpace.toPseudoMetricSpace.{u2} β _inst_1))) m (f n)) -> (MeasureTheory.StronglyMeasurable.{u1, u2} α β (UniformSpace.toTopologicalSpace.{u2} β (PseudoMetricSpace.toUniformSpace.{u2} β (MetricSpace.toPseudoMetricSpace.{u2} β _inst_1))) m g) -> (MeasurableSet.{u1} α m s) -> (Ne.{1} ENNReal (coeFn.{succ u1, succ u1} (MeasureTheory.Measure.{u1} α m) (fun (_x : MeasureTheory.Measure.{u1} α m) => (Set.{u1} α) -> ENNReal) (MeasureTheory.Measure.instCoeFun.{u1} α m) μ s) (Top.top.{0} ENNReal (CompleteLattice.toHasTop.{0} ENNReal (CompleteLinearOrder.toCompleteLattice.{0} ENNReal ENNReal.completeLinearOrder)))) -> (Filter.Eventually.{u1} α (fun (x : α) => (Membership.Mem.{u1, u1} α (Set.{u1} α) (Set.hasMem.{u1} α) x s) -> (Filter.Tendsto.{u3, u2} ι β (fun (n : ι) => f n x) (Filter.atTop.{u3} ι (PartialOrder.toPreorder.{u3} ι (SemilatticeSup.toPartialOrder.{u3} ι _inst_2))) (nhds.{u2} β (UniformSpace.toTopologicalSpace.{u2} β (PseudoMetricSpace.toUniformSpace.{u2} β (MetricSpace.toPseudoMetricSpace.{u2} β _inst_1))) (g x)))) (MeasureTheory.Measure.ae.{u1} α m μ)) -> (Set.{u1} α)
-but is expected to have type
- forall {α : Type.{u1}} {β : Type.{u2}} {ι : Type.{u3}} {m : MeasurableSpace.{u1} α} [_inst_1 : MetricSpace.{u2} β] {μ : MeasureTheory.Measure.{u1} α m} {s : Set.{u1} α} {ε : Real} {f : ι -> α -> β} {g : α -> β} [_inst_2 : SemilatticeSup.{u3} ι] [_inst_3 : Nonempty.{succ u3} ι] [_inst_4 : Countable.{succ u3} ι], (LT.lt.{0} Real Real.instLTReal (OfNat.ofNat.{0} Real 0 (Zero.toOfNat0.{0} Real Real.instZeroReal)) ε) -> (forall (n : ι), MeasureTheory.StronglyMeasurable.{u1, u2} α β (UniformSpace.toTopologicalSpace.{u2} β (PseudoMetricSpace.toUniformSpace.{u2} β (MetricSpace.toPseudoMetricSpace.{u2} β _inst_1))) m (f n)) -> (MeasureTheory.StronglyMeasurable.{u1, u2} α β (UniformSpace.toTopologicalSpace.{u2} β (PseudoMetricSpace.toUniformSpace.{u2} β (MetricSpace.toPseudoMetricSpace.{u2} β _inst_1))) m g) -> (MeasurableSet.{u1} α m s) -> (Ne.{1} ENNReal (MeasureTheory.OuterMeasure.measureOf.{u1} α (MeasureTheory.Measure.toOuterMeasure.{u1} α m μ) s) (Top.top.{0} ENNReal (CompleteLattice.toTop.{0} ENNReal (CompleteLinearOrder.toCompleteLattice.{0} ENNReal ENNReal.instCompleteLinearOrderENNReal)))) -> (Filter.Eventually.{u1} α (fun (x : α) => (Membership.mem.{u1, u1} α (Set.{u1} α) (Set.instMembershipSet.{u1} α) x s) -> (Filter.Tendsto.{u3, u2} ι β (fun (n : ι) => f n x) (Filter.atTop.{u3} ι (PartialOrder.toPreorder.{u3} ι (SemilatticeSup.toPartialOrder.{u3} ι _inst_2))) (nhds.{u2} β (UniformSpace.toTopologicalSpace.{u2} β (PseudoMetricSpace.toUniformSpace.{u2} β (MetricSpace.toPseudoMetricSpace.{u2} β _inst_1))) (g x)))) (MeasureTheory.Measure.ae.{u1} α m μ)) -> (Set.{u1} α)
-Case conversion may be inaccurate. Consider using '#align measure_theory.egorov.Union_not_convergent_seq MeasureTheory.Egorov.iUnionNotConvergentSeqₓ'. -/
/-- Given some `ε > 0`, `Union_not_convergent_seq` is the union of `not_convergent_seq` with
specific indicies such that `Union_not_convergent_seq` has measure less equal than `ε`.
@@ -193,9 +148,6 @@ def iUnionNotConvergentSeq (hε : 0 < ε) (hf : ∀ n, StronglyMeasurable (f n))
⋃ n, s ∩ notConvergentSeq f g n (notConvergentSeqLtIndex (half_pos hε) hf hg hsm hs hfg n)
#align measure_theory.egorov.Union_not_convergent_seq MeasureTheory.Egorov.iUnionNotConvergentSeq
-/- warning: measure_theory.egorov.Union_not_convergent_seq_measurable_set -> MeasureTheory.Egorov.iUnionNotConvergentSeq_measurableSet is a dubious translation:
-<too large>
-Case conversion may be inaccurate. Consider using '#align measure_theory.egorov.Union_not_convergent_seq_measurable_set MeasureTheory.Egorov.iUnionNotConvergentSeq_measurableSetₓ'. -/
theorem iUnionNotConvergentSeq_measurableSet (hε : 0 < ε) (hf : ∀ n, StronglyMeasurable (f n))
(hg : StronglyMeasurable g) (hsm : MeasurableSet s) (hs : μ s ≠ ∞)
(hfg : ∀ᵐ x ∂μ, x ∈ s → Tendsto (fun n => f n x) atTop (𝓝 (g x))) :
@@ -203,9 +155,6 @@ theorem iUnionNotConvergentSeq_measurableSet (hε : 0 < ε) (hf : ∀ n, Strongl
MeasurableSet.iUnion fun n => hsm.inter <| notConvergentSeq_measurableSet hf hg
#align measure_theory.egorov.Union_not_convergent_seq_measurable_set MeasureTheory.Egorov.iUnionNotConvergentSeq_measurableSet
-/- warning: measure_theory.egorov.measure_Union_not_convergent_seq -> MeasureTheory.Egorov.measure_iUnionNotConvergentSeq is a dubious translation:
-<too large>
-Case conversion may be inaccurate. Consider using '#align measure_theory.egorov.measure_Union_not_convergent_seq MeasureTheory.Egorov.measure_iUnionNotConvergentSeqₓ'. -/
theorem measure_iUnionNotConvergentSeq (hε : 0 < ε) (hf : ∀ n, StronglyMeasurable (f n))
(hg : StronglyMeasurable g) (hsm : MeasurableSet s) (hs : μ s ≠ ∞)
(hfg : ∀ᵐ x ∂μ, x ∈ s → Tendsto (fun n => f n x) atTop (𝓝 (g x))) :
@@ -224,9 +173,6 @@ theorem measure_iUnionNotConvergentSeq (hε : 0 < ε) (hf : ∀ n, StronglyMeasu
exact summable_geometric_two
#align measure_theory.egorov.measure_Union_not_convergent_seq MeasureTheory.Egorov.measure_iUnionNotConvergentSeq
-/- warning: measure_theory.egorov.Union_not_convergent_seq_subset -> MeasureTheory.Egorov.iUnionNotConvergentSeq_subset is a dubious translation:
-<too large>
-Case conversion may be inaccurate. Consider using '#align measure_theory.egorov.Union_not_convergent_seq_subset MeasureTheory.Egorov.iUnionNotConvergentSeq_subsetₓ'. -/
theorem iUnionNotConvergentSeq_subset (hε : 0 < ε) (hf : ∀ n, StronglyMeasurable (f n))
(hg : StronglyMeasurable g) (hsm : MeasurableSet s) (hs : μ s ≠ ∞)
(hfg : ∀ᵐ x ∂μ, x ∈ s → Tendsto (fun n => f n x) atTop (𝓝 (g x))) :
@@ -236,9 +182,6 @@ theorem iUnionNotConvergentSeq_subset (hε : 0 < ε) (hf : ∀ n, StronglyMeasur
exact inter_subset_left _ _
#align measure_theory.egorov.Union_not_convergent_seq_subset MeasureTheory.Egorov.iUnionNotConvergentSeq_subset
-/- warning: measure_theory.egorov.tendsto_uniformly_on_diff_Union_not_convergent_seq -> MeasureTheory.Egorov.tendstoUniformlyOn_diff_iUnionNotConvergentSeq is a dubious translation:
-<too large>
-Case conversion may be inaccurate. Consider using '#align measure_theory.egorov.tendsto_uniformly_on_diff_Union_not_convergent_seq MeasureTheory.Egorov.tendstoUniformlyOn_diff_iUnionNotConvergentSeqₓ'. -/
theorem tendstoUniformlyOn_diff_iUnionNotConvergentSeq (hε : 0 < ε)
(hf : ∀ n, StronglyMeasurable (f n)) (hg : StronglyMeasurable g) (hsm : MeasurableSet s)
(hs : μ s ≠ ∞) (hfg : ∀ᵐ x ∂μ, x ∈ s → Tendsto (fun n => f n x) atTop (𝓝 (g x))) :
@@ -264,9 +207,6 @@ end Egorov
variable [SemilatticeSup ι] [Nonempty ι] [Countable ι] {γ : Type _} [TopologicalSpace γ]
{f : ι → α → β} {g : α → β} {s : Set α}
-/- warning: measure_theory.tendsto_uniformly_on_of_ae_tendsto -> MeasureTheory.tendstoUniformlyOn_of_ae_tendsto is a dubious translation:
-<too large>
-Case conversion may be inaccurate. Consider using '#align measure_theory.tendsto_uniformly_on_of_ae_tendsto MeasureTheory.tendstoUniformlyOn_of_ae_tendstoₓ'. -/
/- ./././Mathport/Syntax/Translate/Basic.lean:635:2: warning: expanding binder collection (t «expr ⊆ » s) -/
/-- **Egorov's theorem**: If `f : ι → α → β` is a sequence of strongly measurable functions that
converges to `g : α → β` almost everywhere on a measurable set `s` of finite measure,
@@ -287,9 +227,6 @@ theorem tendstoUniformlyOn_of_ae_tendsto (hf : ∀ n, StronglyMeasurable (f n))
Egorov.tendstoUniformlyOn_diff_iUnionNotConvergentSeq hε hf hg hsm hs hfg⟩
#align measure_theory.tendsto_uniformly_on_of_ae_tendsto MeasureTheory.tendstoUniformlyOn_of_ae_tendsto
-/- warning: measure_theory.tendsto_uniformly_on_of_ae_tendsto' -> MeasureTheory.tendstoUniformlyOn_of_ae_tendsto' is a dubious translation:
-<too large>
-Case conversion may be inaccurate. Consider using '#align measure_theory.tendsto_uniformly_on_of_ae_tendsto' MeasureTheory.tendstoUniformlyOn_of_ae_tendsto'ₓ'. -/
/-- Egorov's theorem for finite measure spaces. -/
theorem tendstoUniformlyOn_of_ae_tendsto' [FiniteMeasure μ] (hf : ∀ n, StronglyMeasurable (f n))
(hg : StronglyMeasurable g) (hfg : ∀ᵐ x ∂μ, Tendsto (fun n => f n x) atTop (𝓝 (g x))) {ε : ℝ}
mathlib commit https://github.com/leanprover-community/mathlib/commit/917c3c072e487b3cccdbfeff17e75b40e45f66cb
@@ -61,10 +61,8 @@ but is expected to have type
forall {α : Type.{u2}} {β : Type.{u1}} {ι : Type.{u3}} [_inst_1 : MetricSpace.{u1} β] {n : Nat} {j : ι} {f : ι -> α -> β} {g : α -> β} [_inst_2 : Preorder.{u3} ι] {x : α}, Iff (Membership.mem.{u2, u2} α (Set.{u2} α) (Set.instMembershipSet.{u2} α) x (MeasureTheory.Egorov.notConvergentSeq.{u2, u1, u3} α β ι _inst_1 _inst_2 f g n j)) (Exists.{succ u3} ι (fun (k : ι) => Exists.{0} (LE.le.{u3} ι (Preorder.toLE.{u3} ι _inst_2) j k) (fun (hk : LE.le.{u3} ι (Preorder.toLE.{u3} ι _inst_2) j k) => LT.lt.{0} Real Real.instLTReal (HDiv.hDiv.{0, 0, 0} Real Real Real (instHDiv.{0} Real (LinearOrderedField.toDiv.{0} Real Real.instLinearOrderedFieldReal)) (OfNat.ofNat.{0} Real 1 (One.toOfNat1.{0} Real Real.instOneReal)) (HAdd.hAdd.{0, 0, 0} Real Real Real (instHAdd.{0} Real Real.instAddReal) (Nat.cast.{0} Real Real.natCast n) (OfNat.ofNat.{0} Real 1 (One.toOfNat1.{0} Real Real.instOneReal)))) (Dist.dist.{u1} β (PseudoMetricSpace.toDist.{u1} β (MetricSpace.toPseudoMetricSpace.{u1} β _inst_1)) (f k x) (g x)))))
Case conversion may be inaccurate. Consider using '#align measure_theory.egorov.mem_not_convergent_seq_iff MeasureTheory.Egorov.mem_notConvergentSeq_iffₓ'. -/
theorem mem_notConvergentSeq_iff [Preorder ι] {x : α} :
- x ∈ notConvergentSeq f g n j ↔ ∃ (k : _)(hk : j ≤ k), 1 / (n + 1 : ℝ) < dist (f k x) (g x) :=
- by
- simp_rw [not_convergent_seq, mem_Union]
- rfl
+ x ∈ notConvergentSeq f g n j ↔ ∃ (k : _)(hk : j ≤ k), 1 / (n + 1 : ℝ) < dist (f k x) (g x) := by
+ simp_rw [not_convergent_seq, mem_Union]; rfl
#align measure_theory.egorov.mem_not_convergent_seq_iff MeasureTheory.Egorov.mem_notConvergentSeq_iff
/- warning: measure_theory.egorov.not_convergent_seq_antitone -> MeasureTheory.Egorov.notConvergentSeq_antitone is a dubious translation:
mathlib commit https://github.com/leanprover-community/mathlib/commit/917c3c072e487b3cccdbfeff17e75b40e45f66cb
@@ -4,7 +4,7 @@ Released under Apache 2.0 license as described in the file LICENSE.
Authors: Kexing Ying
! This file was ported from Lean 3 source module measure_theory.function.egorov
-! leanprover-community/mathlib commit f2ce6086713c78a7f880485f7917ea547a215982
+! leanprover-community/mathlib commit 0b7c740e25651db0ba63648fbae9f9d6f941e31b
! Please do not edit these lines, except to modify the commit id
! if you have ported upstream changes.
-/
@@ -13,6 +13,9 @@ import Mathbin.MeasureTheory.Function.StronglyMeasurable.Basic
/-!
# Egorov theorem
+> THIS FILE IS SYNCHRONIZED WITH MATHLIB4.
+> Any changes to this file require a corresponding PR to mathlib4.
+
This file contains the Egorov theorem which states that an almost everywhere convergent
sequence on a finite measure space converges uniformly except on an arbitrarily small set.
This theorem is useful for the Vitali convergence theorem as well as theorems regarding
@@ -110,10 +113,7 @@ theorem notConvergentSeq_measurableSet [Preorder ι] [Countable ι]
#align measure_theory.egorov.not_convergent_seq_measurable_set MeasureTheory.Egorov.notConvergentSeq_measurableSet
/- warning: measure_theory.egorov.measure_not_convergent_seq_tendsto_zero -> MeasureTheory.Egorov.measure_notConvergentSeq_tendsto_zero is a dubious translation:
-lean 3 declaration is
- forall {α : Type.{u1}} {β : Type.{u2}} {ι : Type.{u3}} {m : MeasurableSpace.{u1} α} [_inst_1 : MetricSpace.{u2} β] {μ : MeasureTheory.Measure.{u1} α m} {s : Set.{u1} α} {f : ι -> α -> β} {g : α -> β} [_inst_2 : SemilatticeSup.{u3} ι] [_inst_3 : Countable.{succ u3} ι], (forall (n : ι), MeasureTheory.StronglyMeasurable.{u1, u2} α β (UniformSpace.toTopologicalSpace.{u2} β (PseudoMetricSpace.toUniformSpace.{u2} β (MetricSpace.toPseudoMetricSpace.{u2} β _inst_1))) m (f n)) -> (MeasureTheory.StronglyMeasurable.{u1, u2} α β (UniformSpace.toTopologicalSpace.{u2} β (PseudoMetricSpace.toUniformSpace.{u2} β (MetricSpace.toPseudoMetricSpace.{u2} β _inst_1))) m g) -> (MeasurableSet.{u1} α m s) -> (Ne.{1} ENNReal (coeFn.{succ u1, succ u1} (MeasureTheory.Measure.{u1} α m) (fun (_x : MeasureTheory.Measure.{u1} α m) => (Set.{u1} α) -> ENNReal) (MeasureTheory.Measure.instCoeFun.{u1} α m) μ s) (Top.top.{0} ENNReal (CompleteLattice.toHasTop.{0} ENNReal (CompleteLinearOrder.toCompleteLattice.{0} ENNReal ENNReal.completeLinearOrder)))) -> (Filter.Eventually.{u1} α (fun (x : α) => (Membership.Mem.{u1, u1} α (Set.{u1} α) (Set.hasMem.{u1} α) x s) -> (Filter.Tendsto.{u3, u2} ι β (fun (n : ι) => f n x) (Filter.atTop.{u3} ι (PartialOrder.toPreorder.{u3} ι (SemilatticeSup.toPartialOrder.{u3} ι _inst_2))) (nhds.{u2} β (UniformSpace.toTopologicalSpace.{u2} β (PseudoMetricSpace.toUniformSpace.{u2} β (MetricSpace.toPseudoMetricSpace.{u2} β _inst_1))) (g x)))) (MeasureTheory.Measure.ae.{u1} α m μ)) -> (forall (n : Nat), Filter.Tendsto.{u3, 0} ι ENNReal (fun (j : ι) => coeFn.{succ u1, succ u1} (MeasureTheory.Measure.{u1} α m) (fun (_x : MeasureTheory.Measure.{u1} α m) => (Set.{u1} α) -> ENNReal) (MeasureTheory.Measure.instCoeFun.{u1} α m) μ (Inter.inter.{u1} (Set.{u1} α) (Set.hasInter.{u1} α) s (MeasureTheory.Egorov.notConvergentSeq.{u1, u2, u3} α β ι _inst_1 (PartialOrder.toPreorder.{u3} ι (SemilatticeSup.toPartialOrder.{u3} ι _inst_2)) f g n j))) (Filter.atTop.{u3} ι (PartialOrder.toPreorder.{u3} ι (SemilatticeSup.toPartialOrder.{u3} ι _inst_2))) (nhds.{0} ENNReal ENNReal.topologicalSpace (OfNat.ofNat.{0} ENNReal 0 (OfNat.mk.{0} ENNReal 0 (Zero.zero.{0} ENNReal ENNReal.hasZero)))))
-but is expected to have type
- forall {α : Type.{u2}} {β : Type.{u1}} {ι : Type.{u3}} {m : MeasurableSpace.{u2} α} [_inst_1 : MetricSpace.{u1} β] {μ : MeasureTheory.Measure.{u2} α m} {s : Set.{u2} α} {f : ι -> α -> β} {g : α -> β} [_inst_2 : SemilatticeSup.{u3} ι] [_inst_3 : Countable.{succ u3} ι], (forall (n : ι), MeasureTheory.StronglyMeasurable.{u2, u1} α β (UniformSpace.toTopologicalSpace.{u1} β (PseudoMetricSpace.toUniformSpace.{u1} β (MetricSpace.toPseudoMetricSpace.{u1} β _inst_1))) m (f n)) -> (MeasureTheory.StronglyMeasurable.{u2, u1} α β (UniformSpace.toTopologicalSpace.{u1} β (PseudoMetricSpace.toUniformSpace.{u1} β (MetricSpace.toPseudoMetricSpace.{u1} β _inst_1))) m g) -> (MeasurableSet.{u2} α m s) -> (Ne.{1} ENNReal (MeasureTheory.OuterMeasure.measureOf.{u2} α (MeasureTheory.Measure.toOuterMeasure.{u2} α m μ) s) (Top.top.{0} ENNReal (CompleteLattice.toTop.{0} ENNReal (CompleteLinearOrder.toCompleteLattice.{0} ENNReal ENNReal.instCompleteLinearOrderENNReal)))) -> (Filter.Eventually.{u2} α (fun (x : α) => (Membership.mem.{u2, u2} α (Set.{u2} α) (Set.instMembershipSet.{u2} α) x s) -> (Filter.Tendsto.{u3, u1} ι β (fun (n : ι) => f n x) (Filter.atTop.{u3} ι (PartialOrder.toPreorder.{u3} ι (SemilatticeSup.toPartialOrder.{u3} ι _inst_2))) (nhds.{u1} β (UniformSpace.toTopologicalSpace.{u1} β (PseudoMetricSpace.toUniformSpace.{u1} β (MetricSpace.toPseudoMetricSpace.{u1} β _inst_1))) (g x)))) (MeasureTheory.Measure.ae.{u2} α m μ)) -> (forall (n : Nat), Filter.Tendsto.{u3, 0} ι ENNReal (fun (j : ι) => MeasureTheory.OuterMeasure.measureOf.{u2} α (MeasureTheory.Measure.toOuterMeasure.{u2} α m μ) (Inter.inter.{u2} (Set.{u2} α) (Set.instInterSet.{u2} α) s (MeasureTheory.Egorov.notConvergentSeq.{u2, u1, u3} α β ι _inst_1 (PartialOrder.toPreorder.{u3} ι (SemilatticeSup.toPartialOrder.{u3} ι _inst_2)) f g n j))) (Filter.atTop.{u3} ι (PartialOrder.toPreorder.{u3} ι (SemilatticeSup.toPartialOrder.{u3} ι _inst_2))) (nhds.{0} ENNReal ENNReal.instTopologicalSpaceENNReal (OfNat.ofNat.{0} ENNReal 0 (Zero.toOfNat0.{0} ENNReal instENNRealZero))))
+<too large>
Case conversion may be inaccurate. Consider using '#align measure_theory.egorov.measure_not_convergent_seq_tendsto_zero MeasureTheory.Egorov.measure_notConvergentSeq_tendsto_zeroₓ'. -/
theorem measure_notConvergentSeq_tendsto_zero [SemilatticeSup ι] [Countable ι]
(hf : ∀ n, StronglyMeasurable (f n)) (hg : StronglyMeasurable g) (hsm : MeasurableSet s)
@@ -135,10 +135,7 @@ theorem measure_notConvergentSeq_tendsto_zero [SemilatticeSup ι] [Countable ι]
variable [SemilatticeSup ι] [Nonempty ι] [Countable ι]
/- warning: measure_theory.egorov.exists_not_convergent_seq_lt -> MeasureTheory.Egorov.exists_notConvergentSeq_lt is a dubious translation:
-lean 3 declaration is
- forall {α : Type.{u1}} {β : Type.{u2}} {ι : Type.{u3}} {m : MeasurableSpace.{u1} α} [_inst_1 : MetricSpace.{u2} β] {μ : MeasureTheory.Measure.{u1} α m} {s : Set.{u1} α} {ε : Real} {f : ι -> α -> β} {g : α -> β} [_inst_2 : SemilatticeSup.{u3} ι] [_inst_3 : Nonempty.{succ u3} ι] [_inst_4 : Countable.{succ u3} ι], (LT.lt.{0} Real Real.hasLt (OfNat.ofNat.{0} Real 0 (OfNat.mk.{0} Real 0 (Zero.zero.{0} Real Real.hasZero))) ε) -> (forall (n : ι), MeasureTheory.StronglyMeasurable.{u1, u2} α β (UniformSpace.toTopologicalSpace.{u2} β (PseudoMetricSpace.toUniformSpace.{u2} β (MetricSpace.toPseudoMetricSpace.{u2} β _inst_1))) m (f n)) -> (MeasureTheory.StronglyMeasurable.{u1, u2} α β (UniformSpace.toTopologicalSpace.{u2} β (PseudoMetricSpace.toUniformSpace.{u2} β (MetricSpace.toPseudoMetricSpace.{u2} β _inst_1))) m g) -> (MeasurableSet.{u1} α m s) -> (Ne.{1} ENNReal (coeFn.{succ u1, succ u1} (MeasureTheory.Measure.{u1} α m) (fun (_x : MeasureTheory.Measure.{u1} α m) => (Set.{u1} α) -> ENNReal) (MeasureTheory.Measure.instCoeFun.{u1} α m) μ s) (Top.top.{0} ENNReal (CompleteLattice.toHasTop.{0} ENNReal (CompleteLinearOrder.toCompleteLattice.{0} ENNReal ENNReal.completeLinearOrder)))) -> (Filter.Eventually.{u1} α (fun (x : α) => (Membership.Mem.{u1, u1} α (Set.{u1} α) (Set.hasMem.{u1} α) x s) -> (Filter.Tendsto.{u3, u2} ι β (fun (n : ι) => f n x) (Filter.atTop.{u3} ι (PartialOrder.toPreorder.{u3} ι (SemilatticeSup.toPartialOrder.{u3} ι _inst_2))) (nhds.{u2} β (UniformSpace.toTopologicalSpace.{u2} β (PseudoMetricSpace.toUniformSpace.{u2} β (MetricSpace.toPseudoMetricSpace.{u2} β _inst_1))) (g x)))) (MeasureTheory.Measure.ae.{u1} α m μ)) -> (forall (n : Nat), Exists.{succ u3} ι (fun (j : ι) => LE.le.{0} ENNReal (Preorder.toHasLe.{0} ENNReal (PartialOrder.toPreorder.{0} ENNReal (CompleteSemilatticeInf.toPartialOrder.{0} ENNReal (CompleteLattice.toCompleteSemilatticeInf.{0} ENNReal (CompleteLinearOrder.toCompleteLattice.{0} ENNReal ENNReal.completeLinearOrder))))) (coeFn.{succ u1, succ u1} (MeasureTheory.Measure.{u1} α m) (fun (_x : MeasureTheory.Measure.{u1} α m) => (Set.{u1} α) -> ENNReal) (MeasureTheory.Measure.instCoeFun.{u1} α m) μ (Inter.inter.{u1} (Set.{u1} α) (Set.hasInter.{u1} α) s (MeasureTheory.Egorov.notConvergentSeq.{u1, u2, u3} α β ι _inst_1 (PartialOrder.toPreorder.{u3} ι (SemilatticeSup.toPartialOrder.{u3} ι _inst_2)) f g n j))) (ENNReal.ofReal (HMul.hMul.{0, 0, 0} Real Real Real (instHMul.{0} Real Real.hasMul) ε (HPow.hPow.{0, 0, 0} Real Nat Real (instHPow.{0, 0} Real Nat (Monoid.Pow.{0} Real Real.monoid)) (Inv.inv.{0} Real Real.hasInv (OfNat.ofNat.{0} Real 2 (OfNat.mk.{0} Real 2 (bit0.{0} Real Real.hasAdd (One.one.{0} Real Real.hasOne))))) n)))))
-but is expected to have type
- forall {α : Type.{u3}} {β : Type.{u2}} {ι : Type.{u1}} {m : MeasurableSpace.{u3} α} [_inst_1 : MetricSpace.{u2} β] {μ : MeasureTheory.Measure.{u3} α m} {s : Set.{u3} α} {ε : Real} {f : ι -> α -> β} {g : α -> β} [_inst_2 : SemilatticeSup.{u1} ι] [_inst_3 : Nonempty.{succ u1} ι] [_inst_4 : Countable.{succ u1} ι], (LT.lt.{0} Real Real.instLTReal (OfNat.ofNat.{0} Real 0 (Zero.toOfNat0.{0} Real Real.instZeroReal)) ε) -> (forall (n : ι), MeasureTheory.StronglyMeasurable.{u3, u2} α β (UniformSpace.toTopologicalSpace.{u2} β (PseudoMetricSpace.toUniformSpace.{u2} β (MetricSpace.toPseudoMetricSpace.{u2} β _inst_1))) m (f n)) -> (MeasureTheory.StronglyMeasurable.{u3, u2} α β (UniformSpace.toTopologicalSpace.{u2} β (PseudoMetricSpace.toUniformSpace.{u2} β (MetricSpace.toPseudoMetricSpace.{u2} β _inst_1))) m g) -> (MeasurableSet.{u3} α m s) -> (Ne.{1} ENNReal (MeasureTheory.OuterMeasure.measureOf.{u3} α (MeasureTheory.Measure.toOuterMeasure.{u3} α m μ) s) (Top.top.{0} ENNReal (CompleteLattice.toTop.{0} ENNReal (CompleteLinearOrder.toCompleteLattice.{0} ENNReal ENNReal.instCompleteLinearOrderENNReal)))) -> (Filter.Eventually.{u3} α (fun (x : α) => (Membership.mem.{u3, u3} α (Set.{u3} α) (Set.instMembershipSet.{u3} α) x s) -> (Filter.Tendsto.{u1, u2} ι β (fun (n : ι) => f n x) (Filter.atTop.{u1} ι (PartialOrder.toPreorder.{u1} ι (SemilatticeSup.toPartialOrder.{u1} ι _inst_2))) (nhds.{u2} β (UniformSpace.toTopologicalSpace.{u2} β (PseudoMetricSpace.toUniformSpace.{u2} β (MetricSpace.toPseudoMetricSpace.{u2} β _inst_1))) (g x)))) (MeasureTheory.Measure.ae.{u3} α m μ)) -> (forall (n : Nat), Exists.{succ u1} ι (fun (j : ι) => LE.le.{0} ENNReal (Preorder.toLE.{0} ENNReal (PartialOrder.toPreorder.{0} ENNReal (OmegaCompletePartialOrder.toPartialOrder.{0} ENNReal (CompleteLattice.instOmegaCompletePartialOrder.{0} ENNReal (CompleteLinearOrder.toCompleteLattice.{0} ENNReal ENNReal.instCompleteLinearOrderENNReal))))) (MeasureTheory.OuterMeasure.measureOf.{u3} α (MeasureTheory.Measure.toOuterMeasure.{u3} α m μ) (Inter.inter.{u3} (Set.{u3} α) (Set.instInterSet.{u3} α) s (MeasureTheory.Egorov.notConvergentSeq.{u3, u2, u1} α β ι _inst_1 (PartialOrder.toPreorder.{u1} ι (SemilatticeSup.toPartialOrder.{u1} ι _inst_2)) f g n j))) (ENNReal.ofReal (HMul.hMul.{0, 0, 0} Real Real Real (instHMul.{0} Real Real.instMulReal) ε (HPow.hPow.{0, 0, 0} Real Nat Real (instHPow.{0, 0} Real Nat (Monoid.Pow.{0} Real Real.instMonoidReal)) (Inv.inv.{0} Real Real.instInvReal (OfNat.ofNat.{0} Real 2 (instOfNat.{0} Real 2 Real.natCast (instAtLeastTwoHAddNatInstHAddInstAddNatOfNat (OfNat.ofNat.{0} Nat 0 (instOfNatNat 0)))))) n)))))
+<too large>
Case conversion may be inaccurate. Consider using '#align measure_theory.egorov.exists_not_convergent_seq_lt MeasureTheory.Egorov.exists_notConvergentSeq_ltₓ'. -/
theorem exists_notConvergentSeq_lt (hε : 0 < ε) (hf : ∀ n, StronglyMeasurable (f n))
(hg : StronglyMeasurable g) (hsm : MeasurableSet s) (hs : μ s ≠ ∞)
@@ -172,10 +169,7 @@ def notConvergentSeqLtIndex (hε : 0 < ε) (hf : ∀ n, StronglyMeasurable (f n)
#align measure_theory.egorov.not_convergent_seq_lt_index MeasureTheory.Egorov.notConvergentSeqLtIndex
/- warning: measure_theory.egorov.not_convergent_seq_lt_index_spec -> MeasureTheory.Egorov.notConvergentSeqLtIndex_spec is a dubious translation:
-lean 3 declaration is
- forall {α : Type.{u1}} {β : Type.{u2}} {ι : Type.{u3}} {m : MeasurableSpace.{u1} α} [_inst_1 : MetricSpace.{u2} β] {μ : MeasureTheory.Measure.{u1} α m} {s : Set.{u1} α} {ε : Real} {f : ι -> α -> β} {g : α -> β} [_inst_2 : SemilatticeSup.{u3} ι] [_inst_3 : Nonempty.{succ u3} ι] [_inst_4 : Countable.{succ u3} ι] (hε : LT.lt.{0} Real Real.hasLt (OfNat.ofNat.{0} Real 0 (OfNat.mk.{0} Real 0 (Zero.zero.{0} Real Real.hasZero))) ε) (hf : forall (n : ι), MeasureTheory.StronglyMeasurable.{u1, u2} α β (UniformSpace.toTopologicalSpace.{u2} β (PseudoMetricSpace.toUniformSpace.{u2} β (MetricSpace.toPseudoMetricSpace.{u2} β _inst_1))) m (f n)) (hg : MeasureTheory.StronglyMeasurable.{u1, u2} α β (UniformSpace.toTopologicalSpace.{u2} β (PseudoMetricSpace.toUniformSpace.{u2} β (MetricSpace.toPseudoMetricSpace.{u2} β _inst_1))) m g) (hsm : MeasurableSet.{u1} α m s) (hs : Ne.{1} ENNReal (coeFn.{succ u1, succ u1} (MeasureTheory.Measure.{u1} α m) (fun (_x : MeasureTheory.Measure.{u1} α m) => (Set.{u1} α) -> ENNReal) (MeasureTheory.Measure.instCoeFun.{u1} α m) μ s) (Top.top.{0} ENNReal (CompleteLattice.toHasTop.{0} ENNReal (CompleteLinearOrder.toCompleteLattice.{0} ENNReal ENNReal.completeLinearOrder)))) (hfg : Filter.Eventually.{u1} α (fun (x : α) => (Membership.Mem.{u1, u1} α (Set.{u1} α) (Set.hasMem.{u1} α) x s) -> (Filter.Tendsto.{u3, u2} ι β (fun (n : ι) => f n x) (Filter.atTop.{u3} ι (PartialOrder.toPreorder.{u3} ι (SemilatticeSup.toPartialOrder.{u3} ι _inst_2))) (nhds.{u2} β (UniformSpace.toTopologicalSpace.{u2} β (PseudoMetricSpace.toUniformSpace.{u2} β (MetricSpace.toPseudoMetricSpace.{u2} β _inst_1))) (g x)))) (MeasureTheory.Measure.ae.{u1} α m μ)) (n : Nat), LE.le.{0} ENNReal (Preorder.toHasLe.{0} ENNReal (PartialOrder.toPreorder.{0} ENNReal (CompleteSemilatticeInf.toPartialOrder.{0} ENNReal (CompleteLattice.toCompleteSemilatticeInf.{0} ENNReal (CompleteLinearOrder.toCompleteLattice.{0} ENNReal ENNReal.completeLinearOrder))))) (coeFn.{succ u1, succ u1} (MeasureTheory.Measure.{u1} α m) (fun (_x : MeasureTheory.Measure.{u1} α m) => (Set.{u1} α) -> ENNReal) (MeasureTheory.Measure.instCoeFun.{u1} α m) μ (Inter.inter.{u1} (Set.{u1} α) (Set.hasInter.{u1} α) s (MeasureTheory.Egorov.notConvergentSeq.{u1, u2, u3} α β ι _inst_1 (PartialOrder.toPreorder.{u3} ι (SemilatticeSup.toPartialOrder.{u3} ι _inst_2)) f g n (MeasureTheory.Egorov.notConvergentSeqLtIndex.{u1, u2, u3} α β ι m _inst_1 μ s ε (fun (n : ι) => f n) g _inst_2 _inst_3 _inst_4 hε hf hg hsm hs hfg n)))) (ENNReal.ofReal (HMul.hMul.{0, 0, 0} Real Real Real (instHMul.{0} Real Real.hasMul) ε (HPow.hPow.{0, 0, 0} Real Nat Real (instHPow.{0, 0} Real Nat (Monoid.Pow.{0} Real Real.monoid)) (Inv.inv.{0} Real Real.hasInv (OfNat.ofNat.{0} Real 2 (OfNat.mk.{0} Real 2 (bit0.{0} Real Real.hasAdd (One.one.{0} Real Real.hasOne))))) n)))
-but is expected to have type
- forall {α : Type.{u3}} {β : Type.{u2}} {ι : Type.{u1}} {m : MeasurableSpace.{u3} α} [_inst_1 : MetricSpace.{u2} β] {μ : MeasureTheory.Measure.{u3} α m} {s : Set.{u3} α} {ε : Real} {f : ι -> α -> β} {g : α -> β} [_inst_2 : SemilatticeSup.{u1} ι] [_inst_3 : Nonempty.{succ u1} ι] [_inst_4 : Countable.{succ u1} ι] (hε : LT.lt.{0} Real Real.instLTReal (OfNat.ofNat.{0} Real 0 (Zero.toOfNat0.{0} Real Real.instZeroReal)) ε) (hf : forall (n : ι), MeasureTheory.StronglyMeasurable.{u3, u2} α β (UniformSpace.toTopologicalSpace.{u2} β (PseudoMetricSpace.toUniformSpace.{u2} β (MetricSpace.toPseudoMetricSpace.{u2} β _inst_1))) m (f n)) (hg : MeasureTheory.StronglyMeasurable.{u3, u2} α β (UniformSpace.toTopologicalSpace.{u2} β (PseudoMetricSpace.toUniformSpace.{u2} β (MetricSpace.toPseudoMetricSpace.{u2} β _inst_1))) m g) (hsm : MeasurableSet.{u3} α m s) (hs : Ne.{1} ENNReal (MeasureTheory.OuterMeasure.measureOf.{u3} α (MeasureTheory.Measure.toOuterMeasure.{u3} α m μ) s) (Top.top.{0} ENNReal (CompleteLattice.toTop.{0} ENNReal (CompleteLinearOrder.toCompleteLattice.{0} ENNReal ENNReal.instCompleteLinearOrderENNReal)))) (hfg : Filter.Eventually.{u3} α (fun (x : α) => (Membership.mem.{u3, u3} α (Set.{u3} α) (Set.instMembershipSet.{u3} α) x s) -> (Filter.Tendsto.{u1, u2} ι β (fun (n : ι) => f n x) (Filter.atTop.{u1} ι (PartialOrder.toPreorder.{u1} ι (SemilatticeSup.toPartialOrder.{u1} ι _inst_2))) (nhds.{u2} β (UniformSpace.toTopologicalSpace.{u2} β (PseudoMetricSpace.toUniformSpace.{u2} β (MetricSpace.toPseudoMetricSpace.{u2} β _inst_1))) (g x)))) (MeasureTheory.Measure.ae.{u3} α m μ)) (n : Nat), LE.le.{0} ENNReal (Preorder.toLE.{0} ENNReal (PartialOrder.toPreorder.{0} ENNReal (OmegaCompletePartialOrder.toPartialOrder.{0} ENNReal (CompleteLattice.instOmegaCompletePartialOrder.{0} ENNReal (CompleteLinearOrder.toCompleteLattice.{0} ENNReal ENNReal.instCompleteLinearOrderENNReal))))) (MeasureTheory.OuterMeasure.measureOf.{u3} α (MeasureTheory.Measure.toOuterMeasure.{u3} α m μ) (Inter.inter.{u3} (Set.{u3} α) (Set.instInterSet.{u3} α) s (MeasureTheory.Egorov.notConvergentSeq.{u3, u2, u1} α β ι _inst_1 (PartialOrder.toPreorder.{u1} ι (SemilatticeSup.toPartialOrder.{u1} ι _inst_2)) f g n (MeasureTheory.Egorov.notConvergentSeqLtIndex.{u3, u2, u1} α β ι m _inst_1 μ s ε (fun (n : ι) => f n) g _inst_2 _inst_3 _inst_4 hε hf hg hsm hs hfg n)))) (ENNReal.ofReal (HMul.hMul.{0, 0, 0} Real Real Real (instHMul.{0} Real Real.instMulReal) ε (HPow.hPow.{0, 0, 0} Real Nat Real (instHPow.{0, 0} Real Nat (Monoid.Pow.{0} Real Real.instMonoidReal)) (Inv.inv.{0} Real Real.instInvReal (OfNat.ofNat.{0} Real 2 (instOfNat.{0} Real 2 Real.natCast (instAtLeastTwoHAddNatInstHAddInstAddNatOfNat (OfNat.ofNat.{0} Nat 0 (instOfNatNat 0)))))) n)))
+<too large>
Case conversion may be inaccurate. Consider using '#align measure_theory.egorov.not_convergent_seq_lt_index_spec MeasureTheory.Egorov.notConvergentSeqLtIndex_specₓ'. -/
theorem notConvergentSeqLtIndex_spec (hε : 0 < ε) (hf : ∀ n, StronglyMeasurable (f n))
(hg : StronglyMeasurable g) (hsm : MeasurableSet s) (hs : μ s ≠ ∞)
@@ -202,10 +196,7 @@ def iUnionNotConvergentSeq (hε : 0 < ε) (hf : ∀ n, StronglyMeasurable (f n))
#align measure_theory.egorov.Union_not_convergent_seq MeasureTheory.Egorov.iUnionNotConvergentSeq
/- warning: measure_theory.egorov.Union_not_convergent_seq_measurable_set -> MeasureTheory.Egorov.iUnionNotConvergentSeq_measurableSet is a dubious translation:
-lean 3 declaration is
- forall {α : Type.{u1}} {β : Type.{u2}} {ι : Type.{u3}} {m : MeasurableSpace.{u1} α} [_inst_1 : MetricSpace.{u2} β] {μ : MeasureTheory.Measure.{u1} α m} {s : Set.{u1} α} {ε : Real} {f : ι -> α -> β} {g : α -> β} [_inst_2 : SemilatticeSup.{u3} ι] [_inst_3 : Nonempty.{succ u3} ι] [_inst_4 : Countable.{succ u3} ι] (hε : LT.lt.{0} Real Real.hasLt (OfNat.ofNat.{0} Real 0 (OfNat.mk.{0} Real 0 (Zero.zero.{0} Real Real.hasZero))) ε) (hf : forall (n : ι), MeasureTheory.StronglyMeasurable.{u1, u2} α β (UniformSpace.toTopologicalSpace.{u2} β (PseudoMetricSpace.toUniformSpace.{u2} β (MetricSpace.toPseudoMetricSpace.{u2} β _inst_1))) m (f n)) (hg : MeasureTheory.StronglyMeasurable.{u1, u2} α β (UniformSpace.toTopologicalSpace.{u2} β (PseudoMetricSpace.toUniformSpace.{u2} β (MetricSpace.toPseudoMetricSpace.{u2} β _inst_1))) m g) (hsm : MeasurableSet.{u1} α m s) (hs : Ne.{1} ENNReal (coeFn.{succ u1, succ u1} (MeasureTheory.Measure.{u1} α m) (fun (_x : MeasureTheory.Measure.{u1} α m) => (Set.{u1} α) -> ENNReal) (MeasureTheory.Measure.instCoeFun.{u1} α m) μ s) (Top.top.{0} ENNReal (CompleteLattice.toHasTop.{0} ENNReal (CompleteLinearOrder.toCompleteLattice.{0} ENNReal ENNReal.completeLinearOrder)))) (hfg : Filter.Eventually.{u1} α (fun (x : α) => (Membership.Mem.{u1, u1} α (Set.{u1} α) (Set.hasMem.{u1} α) x s) -> (Filter.Tendsto.{u3, u2} ι β (fun (n : ι) => f n x) (Filter.atTop.{u3} ι (PartialOrder.toPreorder.{u3} ι (SemilatticeSup.toPartialOrder.{u3} ι _inst_2))) (nhds.{u2} β (UniformSpace.toTopologicalSpace.{u2} β (PseudoMetricSpace.toUniformSpace.{u2} β (MetricSpace.toPseudoMetricSpace.{u2} β _inst_1))) (g x)))) (MeasureTheory.Measure.ae.{u1} α m μ)), MeasurableSet.{u1} α m (MeasureTheory.Egorov.iUnionNotConvergentSeq.{u1, u2, u3} α β ι m _inst_1 μ s ε (fun (n : ι) => f n) g _inst_2 _inst_3 _inst_4 hε hf hg hsm hs hfg)
-but is expected to have type
- forall {α : Type.{u3}} {β : Type.{u2}} {ι : Type.{u1}} {m : MeasurableSpace.{u3} α} [_inst_1 : MetricSpace.{u2} β] {μ : MeasureTheory.Measure.{u3} α m} {s : Set.{u3} α} {ε : Real} {f : ι -> α -> β} {g : α -> β} [_inst_2 : SemilatticeSup.{u1} ι] [_inst_3 : Nonempty.{succ u1} ι] [_inst_4 : Countable.{succ u1} ι] (hε : LT.lt.{0} Real Real.instLTReal (OfNat.ofNat.{0} Real 0 (Zero.toOfNat0.{0} Real Real.instZeroReal)) ε) (hf : forall (n : ι), MeasureTheory.StronglyMeasurable.{u3, u2} α β (UniformSpace.toTopologicalSpace.{u2} β (PseudoMetricSpace.toUniformSpace.{u2} β (MetricSpace.toPseudoMetricSpace.{u2} β _inst_1))) m (f n)) (hg : MeasureTheory.StronglyMeasurable.{u3, u2} α β (UniformSpace.toTopologicalSpace.{u2} β (PseudoMetricSpace.toUniformSpace.{u2} β (MetricSpace.toPseudoMetricSpace.{u2} β _inst_1))) m g) (hsm : MeasurableSet.{u3} α m s) (hs : Ne.{1} ENNReal (MeasureTheory.OuterMeasure.measureOf.{u3} α (MeasureTheory.Measure.toOuterMeasure.{u3} α m μ) s) (Top.top.{0} ENNReal (CompleteLattice.toTop.{0} ENNReal (CompleteLinearOrder.toCompleteLattice.{0} ENNReal ENNReal.instCompleteLinearOrderENNReal)))) (hfg : Filter.Eventually.{u3} α (fun (x : α) => (Membership.mem.{u3, u3} α (Set.{u3} α) (Set.instMembershipSet.{u3} α) x s) -> (Filter.Tendsto.{u1, u2} ι β (fun (n : ι) => f n x) (Filter.atTop.{u1} ι (PartialOrder.toPreorder.{u1} ι (SemilatticeSup.toPartialOrder.{u1} ι _inst_2))) (nhds.{u2} β (UniformSpace.toTopologicalSpace.{u2} β (PseudoMetricSpace.toUniformSpace.{u2} β (MetricSpace.toPseudoMetricSpace.{u2} β _inst_1))) (g x)))) (MeasureTheory.Measure.ae.{u3} α m μ)), MeasurableSet.{u3} α m (MeasureTheory.Egorov.iUnionNotConvergentSeq.{u3, u2, u1} α β ι m _inst_1 μ s ε (fun (n : ι) => f n) g _inst_2 _inst_3 _inst_4 hε hf hg hsm hs hfg)
+<too large>
Case conversion may be inaccurate. Consider using '#align measure_theory.egorov.Union_not_convergent_seq_measurable_set MeasureTheory.Egorov.iUnionNotConvergentSeq_measurableSetₓ'. -/
theorem iUnionNotConvergentSeq_measurableSet (hε : 0 < ε) (hf : ∀ n, StronglyMeasurable (f n))
(hg : StronglyMeasurable g) (hsm : MeasurableSet s) (hs : μ s ≠ ∞)
@@ -215,10 +206,7 @@ theorem iUnionNotConvergentSeq_measurableSet (hε : 0 < ε) (hf : ∀ n, Strongl
#align measure_theory.egorov.Union_not_convergent_seq_measurable_set MeasureTheory.Egorov.iUnionNotConvergentSeq_measurableSet
/- warning: measure_theory.egorov.measure_Union_not_convergent_seq -> MeasureTheory.Egorov.measure_iUnionNotConvergentSeq is a dubious translation:
-lean 3 declaration is
- forall {α : Type.{u1}} {β : Type.{u2}} {ι : Type.{u3}} {m : MeasurableSpace.{u1} α} [_inst_1 : MetricSpace.{u2} β] {μ : MeasureTheory.Measure.{u1} α m} {s : Set.{u1} α} {ε : Real} {f : ι -> α -> β} {g : α -> β} [_inst_2 : SemilatticeSup.{u3} ι] [_inst_3 : Nonempty.{succ u3} ι] [_inst_4 : Countable.{succ u3} ι] (hε : LT.lt.{0} Real Real.hasLt (OfNat.ofNat.{0} Real 0 (OfNat.mk.{0} Real 0 (Zero.zero.{0} Real Real.hasZero))) ε) (hf : forall (n : ι), MeasureTheory.StronglyMeasurable.{u1, u2} α β (UniformSpace.toTopologicalSpace.{u2} β (PseudoMetricSpace.toUniformSpace.{u2} β (MetricSpace.toPseudoMetricSpace.{u2} β _inst_1))) m (f n)) (hg : MeasureTheory.StronglyMeasurable.{u1, u2} α β (UniformSpace.toTopologicalSpace.{u2} β (PseudoMetricSpace.toUniformSpace.{u2} β (MetricSpace.toPseudoMetricSpace.{u2} β _inst_1))) m g) (hsm : MeasurableSet.{u1} α m s) (hs : Ne.{1} ENNReal (coeFn.{succ u1, succ u1} (MeasureTheory.Measure.{u1} α m) (fun (_x : MeasureTheory.Measure.{u1} α m) => (Set.{u1} α) -> ENNReal) (MeasureTheory.Measure.instCoeFun.{u1} α m) μ s) (Top.top.{0} ENNReal (CompleteLattice.toHasTop.{0} ENNReal (CompleteLinearOrder.toCompleteLattice.{0} ENNReal ENNReal.completeLinearOrder)))) (hfg : Filter.Eventually.{u1} α (fun (x : α) => (Membership.Mem.{u1, u1} α (Set.{u1} α) (Set.hasMem.{u1} α) x s) -> (Filter.Tendsto.{u3, u2} ι β (fun (n : ι) => f n x) (Filter.atTop.{u3} ι (PartialOrder.toPreorder.{u3} ι (SemilatticeSup.toPartialOrder.{u3} ι _inst_2))) (nhds.{u2} β (UniformSpace.toTopologicalSpace.{u2} β (PseudoMetricSpace.toUniformSpace.{u2} β (MetricSpace.toPseudoMetricSpace.{u2} β _inst_1))) (g x)))) (MeasureTheory.Measure.ae.{u1} α m μ)), LE.le.{0} ENNReal (Preorder.toHasLe.{0} ENNReal (PartialOrder.toPreorder.{0} ENNReal (CompleteSemilatticeInf.toPartialOrder.{0} ENNReal (CompleteLattice.toCompleteSemilatticeInf.{0} ENNReal (CompleteLinearOrder.toCompleteLattice.{0} ENNReal ENNReal.completeLinearOrder))))) (coeFn.{succ u1, succ u1} (MeasureTheory.Measure.{u1} α m) (fun (_x : MeasureTheory.Measure.{u1} α m) => (Set.{u1} α) -> ENNReal) (MeasureTheory.Measure.instCoeFun.{u1} α m) μ (MeasureTheory.Egorov.iUnionNotConvergentSeq.{u1, u2, u3} α β ι m _inst_1 μ s ε (fun (n : ι) => f n) g _inst_2 _inst_3 _inst_4 hε hf hg hsm hs hfg)) (ENNReal.ofReal ε)
-but is expected to have type
- forall {α : Type.{u3}} {β : Type.{u2}} {ι : Type.{u1}} {m : MeasurableSpace.{u3} α} [_inst_1 : MetricSpace.{u2} β] {μ : MeasureTheory.Measure.{u3} α m} {s : Set.{u3} α} {ε : Real} {f : ι -> α -> β} {g : α -> β} [_inst_2 : SemilatticeSup.{u1} ι] [_inst_3 : Nonempty.{succ u1} ι] [_inst_4 : Countable.{succ u1} ι] (hε : LT.lt.{0} Real Real.instLTReal (OfNat.ofNat.{0} Real 0 (Zero.toOfNat0.{0} Real Real.instZeroReal)) ε) (hf : forall (n : ι), MeasureTheory.StronglyMeasurable.{u3, u2} α β (UniformSpace.toTopologicalSpace.{u2} β (PseudoMetricSpace.toUniformSpace.{u2} β (MetricSpace.toPseudoMetricSpace.{u2} β _inst_1))) m (f n)) (hg : MeasureTheory.StronglyMeasurable.{u3, u2} α β (UniformSpace.toTopologicalSpace.{u2} β (PseudoMetricSpace.toUniformSpace.{u2} β (MetricSpace.toPseudoMetricSpace.{u2} β _inst_1))) m g) (hsm : MeasurableSet.{u3} α m s) (hs : Ne.{1} ENNReal (MeasureTheory.OuterMeasure.measureOf.{u3} α (MeasureTheory.Measure.toOuterMeasure.{u3} α m μ) s) (Top.top.{0} ENNReal (CompleteLattice.toTop.{0} ENNReal (CompleteLinearOrder.toCompleteLattice.{0} ENNReal ENNReal.instCompleteLinearOrderENNReal)))) (hfg : Filter.Eventually.{u3} α (fun (x : α) => (Membership.mem.{u3, u3} α (Set.{u3} α) (Set.instMembershipSet.{u3} α) x s) -> (Filter.Tendsto.{u1, u2} ι β (fun (n : ι) => f n x) (Filter.atTop.{u1} ι (PartialOrder.toPreorder.{u1} ι (SemilatticeSup.toPartialOrder.{u1} ι _inst_2))) (nhds.{u2} β (UniformSpace.toTopologicalSpace.{u2} β (PseudoMetricSpace.toUniformSpace.{u2} β (MetricSpace.toPseudoMetricSpace.{u2} β _inst_1))) (g x)))) (MeasureTheory.Measure.ae.{u3} α m μ)), LE.le.{0} ENNReal (Preorder.toLE.{0} ENNReal (PartialOrder.toPreorder.{0} ENNReal (OmegaCompletePartialOrder.toPartialOrder.{0} ENNReal (CompleteLattice.instOmegaCompletePartialOrder.{0} ENNReal (CompleteLinearOrder.toCompleteLattice.{0} ENNReal ENNReal.instCompleteLinearOrderENNReal))))) (MeasureTheory.OuterMeasure.measureOf.{u3} α (MeasureTheory.Measure.toOuterMeasure.{u3} α m μ) (MeasureTheory.Egorov.iUnionNotConvergentSeq.{u3, u2, u1} α β ι m _inst_1 μ s ε (fun (n : ι) => f n) g _inst_2 _inst_3 _inst_4 hε hf hg hsm hs hfg)) (ENNReal.ofReal ε)
+<too large>
Case conversion may be inaccurate. Consider using '#align measure_theory.egorov.measure_Union_not_convergent_seq MeasureTheory.Egorov.measure_iUnionNotConvergentSeqₓ'. -/
theorem measure_iUnionNotConvergentSeq (hε : 0 < ε) (hf : ∀ n, StronglyMeasurable (f n))
(hg : StronglyMeasurable g) (hsm : MeasurableSet s) (hs : μ s ≠ ∞)
@@ -239,10 +227,7 @@ theorem measure_iUnionNotConvergentSeq (hε : 0 < ε) (hf : ∀ n, StronglyMeasu
#align measure_theory.egorov.measure_Union_not_convergent_seq MeasureTheory.Egorov.measure_iUnionNotConvergentSeq
/- warning: measure_theory.egorov.Union_not_convergent_seq_subset -> MeasureTheory.Egorov.iUnionNotConvergentSeq_subset is a dubious translation:
-lean 3 declaration is
- forall {α : Type.{u1}} {β : Type.{u2}} {ι : Type.{u3}} {m : MeasurableSpace.{u1} α} [_inst_1 : MetricSpace.{u2} β] {μ : MeasureTheory.Measure.{u1} α m} {s : Set.{u1} α} {ε : Real} {f : ι -> α -> β} {g : α -> β} [_inst_2 : SemilatticeSup.{u3} ι] [_inst_3 : Nonempty.{succ u3} ι] [_inst_4 : Countable.{succ u3} ι] (hε : LT.lt.{0} Real Real.hasLt (OfNat.ofNat.{0} Real 0 (OfNat.mk.{0} Real 0 (Zero.zero.{0} Real Real.hasZero))) ε) (hf : forall (n : ι), MeasureTheory.StronglyMeasurable.{u1, u2} α β (UniformSpace.toTopologicalSpace.{u2} β (PseudoMetricSpace.toUniformSpace.{u2} β (MetricSpace.toPseudoMetricSpace.{u2} β _inst_1))) m (f n)) (hg : MeasureTheory.StronglyMeasurable.{u1, u2} α β (UniformSpace.toTopologicalSpace.{u2} β (PseudoMetricSpace.toUniformSpace.{u2} β (MetricSpace.toPseudoMetricSpace.{u2} β _inst_1))) m g) (hsm : MeasurableSet.{u1} α m s) (hs : Ne.{1} ENNReal (coeFn.{succ u1, succ u1} (MeasureTheory.Measure.{u1} α m) (fun (_x : MeasureTheory.Measure.{u1} α m) => (Set.{u1} α) -> ENNReal) (MeasureTheory.Measure.instCoeFun.{u1} α m) μ s) (Top.top.{0} ENNReal (CompleteLattice.toHasTop.{0} ENNReal (CompleteLinearOrder.toCompleteLattice.{0} ENNReal ENNReal.completeLinearOrder)))) (hfg : Filter.Eventually.{u1} α (fun (x : α) => (Membership.Mem.{u1, u1} α (Set.{u1} α) (Set.hasMem.{u1} α) x s) -> (Filter.Tendsto.{u3, u2} ι β (fun (n : ι) => f n x) (Filter.atTop.{u3} ι (PartialOrder.toPreorder.{u3} ι (SemilatticeSup.toPartialOrder.{u3} ι _inst_2))) (nhds.{u2} β (UniformSpace.toTopologicalSpace.{u2} β (PseudoMetricSpace.toUniformSpace.{u2} β (MetricSpace.toPseudoMetricSpace.{u2} β _inst_1))) (g x)))) (MeasureTheory.Measure.ae.{u1} α m μ)), HasSubset.Subset.{u1} (Set.{u1} α) (Set.hasSubset.{u1} α) (MeasureTheory.Egorov.iUnionNotConvergentSeq.{u1, u2, u3} α β ι m _inst_1 μ s ε (fun (n : ι) => f n) g _inst_2 _inst_3 _inst_4 hε hf hg hsm hs hfg) s
-but is expected to have type
- forall {α : Type.{u3}} {β : Type.{u2}} {ι : Type.{u1}} {m : MeasurableSpace.{u3} α} [_inst_1 : MetricSpace.{u2} β] {μ : MeasureTheory.Measure.{u3} α m} {s : Set.{u3} α} {ε : Real} {f : ι -> α -> β} {g : α -> β} [_inst_2 : SemilatticeSup.{u1} ι] [_inst_3 : Nonempty.{succ u1} ι] [_inst_4 : Countable.{succ u1} ι] (hε : LT.lt.{0} Real Real.instLTReal (OfNat.ofNat.{0} Real 0 (Zero.toOfNat0.{0} Real Real.instZeroReal)) ε) (hf : forall (n : ι), MeasureTheory.StronglyMeasurable.{u3, u2} α β (UniformSpace.toTopologicalSpace.{u2} β (PseudoMetricSpace.toUniformSpace.{u2} β (MetricSpace.toPseudoMetricSpace.{u2} β _inst_1))) m (f n)) (hg : MeasureTheory.StronglyMeasurable.{u3, u2} α β (UniformSpace.toTopologicalSpace.{u2} β (PseudoMetricSpace.toUniformSpace.{u2} β (MetricSpace.toPseudoMetricSpace.{u2} β _inst_1))) m g) (hsm : MeasurableSet.{u3} α m s) (hs : Ne.{1} ENNReal (MeasureTheory.OuterMeasure.measureOf.{u3} α (MeasureTheory.Measure.toOuterMeasure.{u3} α m μ) s) (Top.top.{0} ENNReal (CompleteLattice.toTop.{0} ENNReal (CompleteLinearOrder.toCompleteLattice.{0} ENNReal ENNReal.instCompleteLinearOrderENNReal)))) (hfg : Filter.Eventually.{u3} α (fun (x : α) => (Membership.mem.{u3, u3} α (Set.{u3} α) (Set.instMembershipSet.{u3} α) x s) -> (Filter.Tendsto.{u1, u2} ι β (fun (n : ι) => f n x) (Filter.atTop.{u1} ι (PartialOrder.toPreorder.{u1} ι (SemilatticeSup.toPartialOrder.{u1} ι _inst_2))) (nhds.{u2} β (UniformSpace.toTopologicalSpace.{u2} β (PseudoMetricSpace.toUniformSpace.{u2} β (MetricSpace.toPseudoMetricSpace.{u2} β _inst_1))) (g x)))) (MeasureTheory.Measure.ae.{u3} α m μ)), HasSubset.Subset.{u3} (Set.{u3} α) (Set.instHasSubsetSet.{u3} α) (MeasureTheory.Egorov.iUnionNotConvergentSeq.{u3, u2, u1} α β ι m _inst_1 μ s ε (fun (n : ι) => f n) g _inst_2 _inst_3 _inst_4 hε hf hg hsm hs hfg) s
+<too large>
Case conversion may be inaccurate. Consider using '#align measure_theory.egorov.Union_not_convergent_seq_subset MeasureTheory.Egorov.iUnionNotConvergentSeq_subsetₓ'. -/
theorem iUnionNotConvergentSeq_subset (hε : 0 < ε) (hf : ∀ n, StronglyMeasurable (f n))
(hg : StronglyMeasurable g) (hsm : MeasurableSet s) (hs : μ s ≠ ∞)
@@ -254,10 +239,7 @@ theorem iUnionNotConvergentSeq_subset (hε : 0 < ε) (hf : ∀ n, StronglyMeasur
#align measure_theory.egorov.Union_not_convergent_seq_subset MeasureTheory.Egorov.iUnionNotConvergentSeq_subset
/- warning: measure_theory.egorov.tendsto_uniformly_on_diff_Union_not_convergent_seq -> MeasureTheory.Egorov.tendstoUniformlyOn_diff_iUnionNotConvergentSeq is a dubious translation:
-lean 3 declaration is
- forall {α : Type.{u1}} {β : Type.{u2}} {ι : Type.{u3}} {m : MeasurableSpace.{u1} α} [_inst_1 : MetricSpace.{u2} β] {μ : MeasureTheory.Measure.{u1} α m} {s : Set.{u1} α} {ε : Real} {f : ι -> α -> β} {g : α -> β} [_inst_2 : SemilatticeSup.{u3} ι] [_inst_3 : Nonempty.{succ u3} ι] [_inst_4 : Countable.{succ u3} ι] (hε : LT.lt.{0} Real Real.hasLt (OfNat.ofNat.{0} Real 0 (OfNat.mk.{0} Real 0 (Zero.zero.{0} Real Real.hasZero))) ε) (hf : forall (n : ι), MeasureTheory.StronglyMeasurable.{u1, u2} α β (UniformSpace.toTopologicalSpace.{u2} β (PseudoMetricSpace.toUniformSpace.{u2} β (MetricSpace.toPseudoMetricSpace.{u2} β _inst_1))) m (f n)) (hg : MeasureTheory.StronglyMeasurable.{u1, u2} α β (UniformSpace.toTopologicalSpace.{u2} β (PseudoMetricSpace.toUniformSpace.{u2} β (MetricSpace.toPseudoMetricSpace.{u2} β _inst_1))) m g) (hsm : MeasurableSet.{u1} α m s) (hs : Ne.{1} ENNReal (coeFn.{succ u1, succ u1} (MeasureTheory.Measure.{u1} α m) (fun (_x : MeasureTheory.Measure.{u1} α m) => (Set.{u1} α) -> ENNReal) (MeasureTheory.Measure.instCoeFun.{u1} α m) μ s) (Top.top.{0} ENNReal (CompleteLattice.toHasTop.{0} ENNReal (CompleteLinearOrder.toCompleteLattice.{0} ENNReal ENNReal.completeLinearOrder)))) (hfg : Filter.Eventually.{u1} α (fun (x : α) => (Membership.Mem.{u1, u1} α (Set.{u1} α) (Set.hasMem.{u1} α) x s) -> (Filter.Tendsto.{u3, u2} ι β (fun (n : ι) => f n x) (Filter.atTop.{u3} ι (PartialOrder.toPreorder.{u3} ι (SemilatticeSup.toPartialOrder.{u3} ι _inst_2))) (nhds.{u2} β (UniformSpace.toTopologicalSpace.{u2} β (PseudoMetricSpace.toUniformSpace.{u2} β (MetricSpace.toPseudoMetricSpace.{u2} β _inst_1))) (g x)))) (MeasureTheory.Measure.ae.{u1} α m μ)), TendstoUniformlyOn.{u1, u2, u3} α β ι (PseudoMetricSpace.toUniformSpace.{u2} β (MetricSpace.toPseudoMetricSpace.{u2} β _inst_1)) f g (Filter.atTop.{u3} ι (PartialOrder.toPreorder.{u3} ι (SemilatticeSup.toPartialOrder.{u3} ι _inst_2))) (SDiff.sdiff.{u1} (Set.{u1} α) (BooleanAlgebra.toHasSdiff.{u1} (Set.{u1} α) (Set.booleanAlgebra.{u1} α)) s (MeasureTheory.Egorov.iUnionNotConvergentSeq.{u1, u2, u3} α β ι m _inst_1 μ s ε (fun (n : ι) => f n) g _inst_2 _inst_3 _inst_4 hε hf hg hsm hs hfg))
-but is expected to have type
- forall {α : Type.{u3}} {β : Type.{u2}} {ι : Type.{u1}} {m : MeasurableSpace.{u3} α} [_inst_1 : MetricSpace.{u2} β] {μ : MeasureTheory.Measure.{u3} α m} {s : Set.{u3} α} {ε : Real} {f : ι -> α -> β} {g : α -> β} [_inst_2 : SemilatticeSup.{u1} ι] [_inst_3 : Nonempty.{succ u1} ι] [_inst_4 : Countable.{succ u1} ι] (hε : LT.lt.{0} Real Real.instLTReal (OfNat.ofNat.{0} Real 0 (Zero.toOfNat0.{0} Real Real.instZeroReal)) ε) (hf : forall (n : ι), MeasureTheory.StronglyMeasurable.{u3, u2} α β (UniformSpace.toTopologicalSpace.{u2} β (PseudoMetricSpace.toUniformSpace.{u2} β (MetricSpace.toPseudoMetricSpace.{u2} β _inst_1))) m (f n)) (hg : MeasureTheory.StronglyMeasurable.{u3, u2} α β (UniformSpace.toTopologicalSpace.{u2} β (PseudoMetricSpace.toUniformSpace.{u2} β (MetricSpace.toPseudoMetricSpace.{u2} β _inst_1))) m g) (hsm : MeasurableSet.{u3} α m s) (hs : Ne.{1} ENNReal (MeasureTheory.OuterMeasure.measureOf.{u3} α (MeasureTheory.Measure.toOuterMeasure.{u3} α m μ) s) (Top.top.{0} ENNReal (CompleteLattice.toTop.{0} ENNReal (CompleteLinearOrder.toCompleteLattice.{0} ENNReal ENNReal.instCompleteLinearOrderENNReal)))) (hfg : Filter.Eventually.{u3} α (fun (x : α) => (Membership.mem.{u3, u3} α (Set.{u3} α) (Set.instMembershipSet.{u3} α) x s) -> (Filter.Tendsto.{u1, u2} ι β (fun (n : ι) => f n x) (Filter.atTop.{u1} ι (PartialOrder.toPreorder.{u1} ι (SemilatticeSup.toPartialOrder.{u1} ι _inst_2))) (nhds.{u2} β (UniformSpace.toTopologicalSpace.{u2} β (PseudoMetricSpace.toUniformSpace.{u2} β (MetricSpace.toPseudoMetricSpace.{u2} β _inst_1))) (g x)))) (MeasureTheory.Measure.ae.{u3} α m μ)), TendstoUniformlyOn.{u3, u2, u1} α β ι (PseudoMetricSpace.toUniformSpace.{u2} β (MetricSpace.toPseudoMetricSpace.{u2} β _inst_1)) f g (Filter.atTop.{u1} ι (PartialOrder.toPreorder.{u1} ι (SemilatticeSup.toPartialOrder.{u1} ι _inst_2))) (SDiff.sdiff.{u3} (Set.{u3} α) (Set.instSDiffSet.{u3} α) s (MeasureTheory.Egorov.iUnionNotConvergentSeq.{u3, u2, u1} α β ι m _inst_1 μ s ε (fun (n : ι) => f n) g _inst_2 _inst_3 _inst_4 hε hf hg hsm hs hfg))
+<too large>
Case conversion may be inaccurate. Consider using '#align measure_theory.egorov.tendsto_uniformly_on_diff_Union_not_convergent_seq MeasureTheory.Egorov.tendstoUniformlyOn_diff_iUnionNotConvergentSeqₓ'. -/
theorem tendstoUniformlyOn_diff_iUnionNotConvergentSeq (hε : 0 < ε)
(hf : ∀ n, StronglyMeasurable (f n)) (hg : StronglyMeasurable g) (hsm : MeasurableSet s)
@@ -285,10 +267,7 @@ variable [SemilatticeSup ι] [Nonempty ι] [Countable ι] {γ : Type _} [Topolog
{f : ι → α → β} {g : α → β} {s : Set α}
/- warning: measure_theory.tendsto_uniformly_on_of_ae_tendsto -> MeasureTheory.tendstoUniformlyOn_of_ae_tendsto is a dubious translation:
-lean 3 declaration is
- forall {α : Type.{u1}} {β : Type.{u2}} {ι : Type.{u3}} {m : MeasurableSpace.{u1} α} [_inst_1 : MetricSpace.{u2} β] {μ : MeasureTheory.Measure.{u1} α m} [_inst_2 : SemilatticeSup.{u3} ι] [_inst_3 : Nonempty.{succ u3} ι] [_inst_4 : Countable.{succ u3} ι] {f : ι -> α -> β} {g : α -> β} {s : Set.{u1} α}, (forall (n : ι), MeasureTheory.StronglyMeasurable.{u1, u2} α β (UniformSpace.toTopologicalSpace.{u2} β (PseudoMetricSpace.toUniformSpace.{u2} β (MetricSpace.toPseudoMetricSpace.{u2} β _inst_1))) m (f n)) -> (MeasureTheory.StronglyMeasurable.{u1, u2} α β (UniformSpace.toTopologicalSpace.{u2} β (PseudoMetricSpace.toUniformSpace.{u2} β (MetricSpace.toPseudoMetricSpace.{u2} β _inst_1))) m g) -> (MeasurableSet.{u1} α m s) -> (Ne.{1} ENNReal (coeFn.{succ u1, succ u1} (MeasureTheory.Measure.{u1} α m) (fun (_x : MeasureTheory.Measure.{u1} α m) => (Set.{u1} α) -> ENNReal) (MeasureTheory.Measure.instCoeFun.{u1} α m) μ s) (Top.top.{0} ENNReal (CompleteLattice.toHasTop.{0} ENNReal (CompleteLinearOrder.toCompleteLattice.{0} ENNReal ENNReal.completeLinearOrder)))) -> (Filter.Eventually.{u1} α (fun (x : α) => (Membership.Mem.{u1, u1} α (Set.{u1} α) (Set.hasMem.{u1} α) x s) -> (Filter.Tendsto.{u3, u2} ι β (fun (n : ι) => f n x) (Filter.atTop.{u3} ι (PartialOrder.toPreorder.{u3} ι (SemilatticeSup.toPartialOrder.{u3} ι _inst_2))) (nhds.{u2} β (UniformSpace.toTopologicalSpace.{u2} β (PseudoMetricSpace.toUniformSpace.{u2} β (MetricSpace.toPseudoMetricSpace.{u2} β _inst_1))) (g x)))) (MeasureTheory.Measure.ae.{u1} α m μ)) -> (forall {ε : Real}, (LT.lt.{0} Real Real.hasLt (OfNat.ofNat.{0} Real 0 (OfNat.mk.{0} Real 0 (Zero.zero.{0} Real Real.hasZero))) ε) -> (Exists.{succ u1} (Set.{u1} α) (fun (t : Set.{u1} α) => Exists.{0} (HasSubset.Subset.{u1} (Set.{u1} α) (Set.hasSubset.{u1} α) t s) (fun (H : HasSubset.Subset.{u1} (Set.{u1} α) (Set.hasSubset.{u1} α) t s) => And (MeasurableSet.{u1} α m t) (And (LE.le.{0} ENNReal (Preorder.toHasLe.{0} ENNReal (PartialOrder.toPreorder.{0} ENNReal (CompleteSemilatticeInf.toPartialOrder.{0} ENNReal (CompleteLattice.toCompleteSemilatticeInf.{0} ENNReal (CompleteLinearOrder.toCompleteLattice.{0} ENNReal ENNReal.completeLinearOrder))))) (coeFn.{succ u1, succ u1} (MeasureTheory.Measure.{u1} α m) (fun (_x : MeasureTheory.Measure.{u1} α m) => (Set.{u1} α) -> ENNReal) (MeasureTheory.Measure.instCoeFun.{u1} α m) μ t) (ENNReal.ofReal ε)) (TendstoUniformlyOn.{u1, u2, u3} α β ι (PseudoMetricSpace.toUniformSpace.{u2} β (MetricSpace.toPseudoMetricSpace.{u2} β _inst_1)) f g (Filter.atTop.{u3} ι (PartialOrder.toPreorder.{u3} ι (SemilatticeSup.toPartialOrder.{u3} ι _inst_2))) (SDiff.sdiff.{u1} (Set.{u1} α) (BooleanAlgebra.toHasSdiff.{u1} (Set.{u1} α) (Set.booleanAlgebra.{u1} α)) s t)))))))
-but is expected to have type
- forall {α : Type.{u3}} {β : Type.{u2}} {ι : Type.{u1}} {m : MeasurableSpace.{u3} α} [_inst_1 : MetricSpace.{u2} β] {μ : MeasureTheory.Measure.{u3} α m} [_inst_2 : SemilatticeSup.{u1} ι] [_inst_3 : Nonempty.{succ u1} ι] [_inst_4 : Countable.{succ u1} ι] {f : ι -> α -> β} {g : α -> β} {s : Set.{u3} α}, (forall (n : ι), MeasureTheory.StronglyMeasurable.{u3, u2} α β (UniformSpace.toTopologicalSpace.{u2} β (PseudoMetricSpace.toUniformSpace.{u2} β (MetricSpace.toPseudoMetricSpace.{u2} β _inst_1))) m (f n)) -> (MeasureTheory.StronglyMeasurable.{u3, u2} α β (UniformSpace.toTopologicalSpace.{u2} β (PseudoMetricSpace.toUniformSpace.{u2} β (MetricSpace.toPseudoMetricSpace.{u2} β _inst_1))) m g) -> (MeasurableSet.{u3} α m s) -> (Ne.{1} ENNReal (MeasureTheory.OuterMeasure.measureOf.{u3} α (MeasureTheory.Measure.toOuterMeasure.{u3} α m μ) s) (Top.top.{0} ENNReal (CompleteLattice.toTop.{0} ENNReal (CompleteLinearOrder.toCompleteLattice.{0} ENNReal ENNReal.instCompleteLinearOrderENNReal)))) -> (Filter.Eventually.{u3} α (fun (x : α) => (Membership.mem.{u3, u3} α (Set.{u3} α) (Set.instMembershipSet.{u3} α) x s) -> (Filter.Tendsto.{u1, u2} ι β (fun (n : ι) => f n x) (Filter.atTop.{u1} ι (PartialOrder.toPreorder.{u1} ι (SemilatticeSup.toPartialOrder.{u1} ι _inst_2))) (nhds.{u2} β (UniformSpace.toTopologicalSpace.{u2} β (PseudoMetricSpace.toUniformSpace.{u2} β (MetricSpace.toPseudoMetricSpace.{u2} β _inst_1))) (g x)))) (MeasureTheory.Measure.ae.{u3} α m μ)) -> (forall {ε : Real}, (LT.lt.{0} Real Real.instLTReal (OfNat.ofNat.{0} Real 0 (Zero.toOfNat0.{0} Real Real.instZeroReal)) ε) -> (Exists.{succ u3} (Set.{u3} α) (fun (t : Set.{u3} α) => Exists.{0} (HasSubset.Subset.{u3} (Set.{u3} α) (Set.instHasSubsetSet.{u3} α) t s) (fun (H : HasSubset.Subset.{u3} (Set.{u3} α) (Set.instHasSubsetSet.{u3} α) t s) => And (MeasurableSet.{u3} α m t) (And (LE.le.{0} ENNReal (Preorder.toLE.{0} ENNReal (PartialOrder.toPreorder.{0} ENNReal (OmegaCompletePartialOrder.toPartialOrder.{0} ENNReal (CompleteLattice.instOmegaCompletePartialOrder.{0} ENNReal (CompleteLinearOrder.toCompleteLattice.{0} ENNReal ENNReal.instCompleteLinearOrderENNReal))))) (MeasureTheory.OuterMeasure.measureOf.{u3} α (MeasureTheory.Measure.toOuterMeasure.{u3} α m μ) t) (ENNReal.ofReal ε)) (TendstoUniformlyOn.{u3, u2, u1} α β ι (PseudoMetricSpace.toUniformSpace.{u2} β (MetricSpace.toPseudoMetricSpace.{u2} β _inst_1)) f g (Filter.atTop.{u1} ι (PartialOrder.toPreorder.{u1} ι (SemilatticeSup.toPartialOrder.{u1} ι _inst_2))) (SDiff.sdiff.{u3} (Set.{u3} α) (Set.instSDiffSet.{u3} α) s t)))))))
+<too large>
Case conversion may be inaccurate. Consider using '#align measure_theory.tendsto_uniformly_on_of_ae_tendsto MeasureTheory.tendstoUniformlyOn_of_ae_tendstoₓ'. -/
/- ./././Mathport/Syntax/Translate/Basic.lean:635:2: warning: expanding binder collection (t «expr ⊆ » s) -/
/-- **Egorov's theorem**: If `f : ι → α → β` is a sequence of strongly measurable functions that
@@ -311,10 +290,7 @@ theorem tendstoUniformlyOn_of_ae_tendsto (hf : ∀ n, StronglyMeasurable (f n))
#align measure_theory.tendsto_uniformly_on_of_ae_tendsto MeasureTheory.tendstoUniformlyOn_of_ae_tendsto
/- warning: measure_theory.tendsto_uniformly_on_of_ae_tendsto' -> MeasureTheory.tendstoUniformlyOn_of_ae_tendsto' is a dubious translation:
-lean 3 declaration is
- forall {α : Type.{u1}} {β : Type.{u2}} {ι : Type.{u3}} {m : MeasurableSpace.{u1} α} [_inst_1 : MetricSpace.{u2} β] {μ : MeasureTheory.Measure.{u1} α m} [_inst_2 : SemilatticeSup.{u3} ι] [_inst_3 : Nonempty.{succ u3} ι] [_inst_4 : Countable.{succ u3} ι] {f : ι -> α -> β} {g : α -> β} [_inst_6 : MeasureTheory.FiniteMeasure.{u1} α m μ], (forall (n : ι), MeasureTheory.StronglyMeasurable.{u1, u2} α β (UniformSpace.toTopologicalSpace.{u2} β (PseudoMetricSpace.toUniformSpace.{u2} β (MetricSpace.toPseudoMetricSpace.{u2} β _inst_1))) m (f n)) -> (MeasureTheory.StronglyMeasurable.{u1, u2} α β (UniformSpace.toTopologicalSpace.{u2} β (PseudoMetricSpace.toUniformSpace.{u2} β (MetricSpace.toPseudoMetricSpace.{u2} β _inst_1))) m g) -> (Filter.Eventually.{u1} α (fun (x : α) => Filter.Tendsto.{u3, u2} ι β (fun (n : ι) => f n x) (Filter.atTop.{u3} ι (PartialOrder.toPreorder.{u3} ι (SemilatticeSup.toPartialOrder.{u3} ι _inst_2))) (nhds.{u2} β (UniformSpace.toTopologicalSpace.{u2} β (PseudoMetricSpace.toUniformSpace.{u2} β (MetricSpace.toPseudoMetricSpace.{u2} β _inst_1))) (g x))) (MeasureTheory.Measure.ae.{u1} α m μ)) -> (forall {ε : Real}, (LT.lt.{0} Real Real.hasLt (OfNat.ofNat.{0} Real 0 (OfNat.mk.{0} Real 0 (Zero.zero.{0} Real Real.hasZero))) ε) -> (Exists.{succ u1} (Set.{u1} α) (fun (t : Set.{u1} α) => And (MeasurableSet.{u1} α m t) (And (LE.le.{0} ENNReal (Preorder.toHasLe.{0} ENNReal (PartialOrder.toPreorder.{0} ENNReal (CompleteSemilatticeInf.toPartialOrder.{0} ENNReal (CompleteLattice.toCompleteSemilatticeInf.{0} ENNReal (CompleteLinearOrder.toCompleteLattice.{0} ENNReal ENNReal.completeLinearOrder))))) (coeFn.{succ u1, succ u1} (MeasureTheory.Measure.{u1} α m) (fun (_x : MeasureTheory.Measure.{u1} α m) => (Set.{u1} α) -> ENNReal) (MeasureTheory.Measure.instCoeFun.{u1} α m) μ t) (ENNReal.ofReal ε)) (TendstoUniformlyOn.{u1, u2, u3} α β ι (PseudoMetricSpace.toUniformSpace.{u2} β (MetricSpace.toPseudoMetricSpace.{u2} β _inst_1)) f g (Filter.atTop.{u3} ι (PartialOrder.toPreorder.{u3} ι (SemilatticeSup.toPartialOrder.{u3} ι _inst_2))) (HasCompl.compl.{u1} (Set.{u1} α) (BooleanAlgebra.toHasCompl.{u1} (Set.{u1} α) (Set.booleanAlgebra.{u1} α)) t))))))
-but is expected to have type
- forall {α : Type.{u3}} {β : Type.{u2}} {ι : Type.{u1}} {m : MeasurableSpace.{u3} α} [_inst_1 : MetricSpace.{u2} β] {μ : MeasureTheory.Measure.{u3} α m} [_inst_2 : SemilatticeSup.{u1} ι] [_inst_3 : Nonempty.{succ u1} ι] [_inst_4 : Countable.{succ u1} ι] {f : ι -> α -> β} {g : α -> β} [_inst_6 : MeasureTheory.FiniteMeasure.{u3} α m μ], (forall (n : ι), MeasureTheory.StronglyMeasurable.{u3, u2} α β (UniformSpace.toTopologicalSpace.{u2} β (PseudoMetricSpace.toUniformSpace.{u2} β (MetricSpace.toPseudoMetricSpace.{u2} β _inst_1))) m (f n)) -> (MeasureTheory.StronglyMeasurable.{u3, u2} α β (UniformSpace.toTopologicalSpace.{u2} β (PseudoMetricSpace.toUniformSpace.{u2} β (MetricSpace.toPseudoMetricSpace.{u2} β _inst_1))) m g) -> (Filter.Eventually.{u3} α (fun (x : α) => Filter.Tendsto.{u1, u2} ι β (fun (n : ι) => f n x) (Filter.atTop.{u1} ι (PartialOrder.toPreorder.{u1} ι (SemilatticeSup.toPartialOrder.{u1} ι _inst_2))) (nhds.{u2} β (UniformSpace.toTopologicalSpace.{u2} β (PseudoMetricSpace.toUniformSpace.{u2} β (MetricSpace.toPseudoMetricSpace.{u2} β _inst_1))) (g x))) (MeasureTheory.Measure.ae.{u3} α m μ)) -> (forall {ε : Real}, (LT.lt.{0} Real Real.instLTReal (OfNat.ofNat.{0} Real 0 (Zero.toOfNat0.{0} Real Real.instZeroReal)) ε) -> (Exists.{succ u3} (Set.{u3} α) (fun (t : Set.{u3} α) => And (MeasurableSet.{u3} α m t) (And (LE.le.{0} ENNReal (Preorder.toLE.{0} ENNReal (PartialOrder.toPreorder.{0} ENNReal (OmegaCompletePartialOrder.toPartialOrder.{0} ENNReal (CompleteLattice.instOmegaCompletePartialOrder.{0} ENNReal (CompleteLinearOrder.toCompleteLattice.{0} ENNReal ENNReal.instCompleteLinearOrderENNReal))))) (MeasureTheory.OuterMeasure.measureOf.{u3} α (MeasureTheory.Measure.toOuterMeasure.{u3} α m μ) t) (ENNReal.ofReal ε)) (TendstoUniformlyOn.{u3, u2, u1} α β ι (PseudoMetricSpace.toUniformSpace.{u2} β (MetricSpace.toPseudoMetricSpace.{u2} β _inst_1)) f g (Filter.atTop.{u1} ι (PartialOrder.toPreorder.{u1} ι (SemilatticeSup.toPartialOrder.{u1} ι _inst_2))) (HasCompl.compl.{u3} (Set.{u3} α) (BooleanAlgebra.toHasCompl.{u3} (Set.{u3} α) (Set.instBooleanAlgebraSet.{u3} α)) t))))))
+<too large>
Case conversion may be inaccurate. Consider using '#align measure_theory.tendsto_uniformly_on_of_ae_tendsto' MeasureTheory.tendstoUniformlyOn_of_ae_tendsto'ₓ'. -/
/-- Egorov's theorem for finite measure spaces. -/
theorem tendstoUniformlyOn_of_ae_tendsto' [FiniteMeasure μ] (hf : ∀ n, StronglyMeasurable (f n))
mathlib commit https://github.com/leanprover-community/mathlib/commit/ef95945cd48c932c9e034872bd25c3c220d9c946
@@ -38,6 +38,7 @@ variable {α β ι : Type _} {m : MeasurableSpace α} [MetricSpace β] {μ : Mea
namespace Egorov
+#print MeasureTheory.Egorov.notConvergentSeq /-
/-- Given a sequence of functions `f` and a function `g`, `not_convergent_seq f g n j` is the
set of elements such that `f k x` and `g x` are separated by at least `1 / (n + 1)` for some
`k ≥ j`.
@@ -46,9 +47,16 @@ This definition is useful for Egorov's theorem. -/
def notConvergentSeq [Preorder ι] (f : ι → α → β) (g : α → β) (n : ℕ) (j : ι) : Set α :=
⋃ (k) (hk : j ≤ k), { x | 1 / (n + 1 : ℝ) < dist (f k x) (g x) }
#align measure_theory.egorov.not_convergent_seq MeasureTheory.Egorov.notConvergentSeq
+-/
variable {n : ℕ} {i j : ι} {s : Set α} {ε : ℝ} {f : ι → α → β} {g : α → β}
+/- warning: measure_theory.egorov.mem_not_convergent_seq_iff -> MeasureTheory.Egorov.mem_notConvergentSeq_iff is a dubious translation:
+lean 3 declaration is
+ forall {α : Type.{u1}} {β : Type.{u2}} {ι : Type.{u3}} [_inst_1 : MetricSpace.{u2} β] {n : Nat} {j : ι} {f : ι -> α -> β} {g : α -> β} [_inst_2 : Preorder.{u3} ι] {x : α}, Iff (Membership.Mem.{u1, u1} α (Set.{u1} α) (Set.hasMem.{u1} α) x (MeasureTheory.Egorov.notConvergentSeq.{u1, u2, u3} α β ι _inst_1 _inst_2 f g n j)) (Exists.{succ u3} ι (fun (k : ι) => Exists.{0} (LE.le.{u3} ι (Preorder.toHasLe.{u3} ι _inst_2) j k) (fun (hk : LE.le.{u3} ι (Preorder.toHasLe.{u3} ι _inst_2) j k) => LT.lt.{0} Real Real.hasLt (HDiv.hDiv.{0, 0, 0} Real Real Real (instHDiv.{0} Real (DivInvMonoid.toHasDiv.{0} Real (DivisionRing.toDivInvMonoid.{0} Real Real.divisionRing))) (OfNat.ofNat.{0} Real 1 (OfNat.mk.{0} Real 1 (One.one.{0} Real Real.hasOne))) (HAdd.hAdd.{0, 0, 0} Real Real Real (instHAdd.{0} Real Real.hasAdd) ((fun (a : Type) (b : Type) [self : HasLiftT.{1, 1} a b] => self.0) Nat Real (HasLiftT.mk.{1, 1} Nat Real (CoeTCₓ.coe.{1, 1} Nat Real (Nat.castCoe.{0} Real Real.hasNatCast))) n) (OfNat.ofNat.{0} Real 1 (OfNat.mk.{0} Real 1 (One.one.{0} Real Real.hasOne))))) (Dist.dist.{u2} β (PseudoMetricSpace.toHasDist.{u2} β (MetricSpace.toPseudoMetricSpace.{u2} β _inst_1)) (f k x) (g x)))))
+but is expected to have type
+ forall {α : Type.{u2}} {β : Type.{u1}} {ι : Type.{u3}} [_inst_1 : MetricSpace.{u1} β] {n : Nat} {j : ι} {f : ι -> α -> β} {g : α -> β} [_inst_2 : Preorder.{u3} ι] {x : α}, Iff (Membership.mem.{u2, u2} α (Set.{u2} α) (Set.instMembershipSet.{u2} α) x (MeasureTheory.Egorov.notConvergentSeq.{u2, u1, u3} α β ι _inst_1 _inst_2 f g n j)) (Exists.{succ u3} ι (fun (k : ι) => Exists.{0} (LE.le.{u3} ι (Preorder.toLE.{u3} ι _inst_2) j k) (fun (hk : LE.le.{u3} ι (Preorder.toLE.{u3} ι _inst_2) j k) => LT.lt.{0} Real Real.instLTReal (HDiv.hDiv.{0, 0, 0} Real Real Real (instHDiv.{0} Real (LinearOrderedField.toDiv.{0} Real Real.instLinearOrderedFieldReal)) (OfNat.ofNat.{0} Real 1 (One.toOfNat1.{0} Real Real.instOneReal)) (HAdd.hAdd.{0, 0, 0} Real Real Real (instHAdd.{0} Real Real.instAddReal) (Nat.cast.{0} Real Real.natCast n) (OfNat.ofNat.{0} Real 1 (One.toOfNat1.{0} Real Real.instOneReal)))) (Dist.dist.{u1} β (PseudoMetricSpace.toDist.{u1} β (MetricSpace.toPseudoMetricSpace.{u1} β _inst_1)) (f k x) (g x)))))
+Case conversion may be inaccurate. Consider using '#align measure_theory.egorov.mem_not_convergent_seq_iff MeasureTheory.Egorov.mem_notConvergentSeq_iffₓ'. -/
theorem mem_notConvergentSeq_iff [Preorder ι] {x : α} :
x ∈ notConvergentSeq f g n j ↔ ∃ (k : _)(hk : j ≤ k), 1 / (n + 1 : ℝ) < dist (f k x) (g x) :=
by
@@ -56,10 +64,22 @@ theorem mem_notConvergentSeq_iff [Preorder ι] {x : α} :
rfl
#align measure_theory.egorov.mem_not_convergent_seq_iff MeasureTheory.Egorov.mem_notConvergentSeq_iff
+/- warning: measure_theory.egorov.not_convergent_seq_antitone -> MeasureTheory.Egorov.notConvergentSeq_antitone is a dubious translation:
+lean 3 declaration is
+ forall {α : Type.{u1}} {β : Type.{u2}} {ι : Type.{u3}} [_inst_1 : MetricSpace.{u2} β] {n : Nat} {f : ι -> α -> β} {g : α -> β} [_inst_2 : Preorder.{u3} ι], Antitone.{u3, u1} ι (Set.{u1} α) _inst_2 (PartialOrder.toPreorder.{u1} (Set.{u1} α) (CompleteSemilatticeInf.toPartialOrder.{u1} (Set.{u1} α) (CompleteLattice.toCompleteSemilatticeInf.{u1} (Set.{u1} α) (Order.Coframe.toCompleteLattice.{u1} (Set.{u1} α) (CompleteDistribLattice.toCoframe.{u1} (Set.{u1} α) (CompleteBooleanAlgebra.toCompleteDistribLattice.{u1} (Set.{u1} α) (Set.completeBooleanAlgebra.{u1} α))))))) (MeasureTheory.Egorov.notConvergentSeq.{u1, u2, u3} α β ι _inst_1 _inst_2 f g n)
+but is expected to have type
+ forall {α : Type.{u2}} {β : Type.{u1}} {ι : Type.{u3}} [_inst_1 : MetricSpace.{u1} β] {n : Nat} {f : ι -> α -> β} {g : α -> β} [_inst_2 : Preorder.{u3} ι], Antitone.{u3, u2} ι (Set.{u2} α) _inst_2 (PartialOrder.toPreorder.{u2} (Set.{u2} α) (OmegaCompletePartialOrder.toPartialOrder.{u2} (Set.{u2} α) (CompleteLattice.instOmegaCompletePartialOrder.{u2} (Set.{u2} α) (Order.Coframe.toCompleteLattice.{u2} (Set.{u2} α) (CompleteDistribLattice.toCoframe.{u2} (Set.{u2} α) (CompleteBooleanAlgebra.toCompleteDistribLattice.{u2} (Set.{u2} α) (Set.instCompleteBooleanAlgebraSet.{u2} α))))))) (MeasureTheory.Egorov.notConvergentSeq.{u2, u1, u3} α β ι _inst_1 _inst_2 f g n)
+Case conversion may be inaccurate. Consider using '#align measure_theory.egorov.not_convergent_seq_antitone MeasureTheory.Egorov.notConvergentSeq_antitoneₓ'. -/
theorem notConvergentSeq_antitone [Preorder ι] : Antitone (notConvergentSeq f g n) := fun j k hjk =>
iUnion₂_mono' fun l hl => ⟨l, le_trans hjk hl, Subset.rfl⟩
#align measure_theory.egorov.not_convergent_seq_antitone MeasureTheory.Egorov.notConvergentSeq_antitone
+/- warning: measure_theory.egorov.measure_inter_not_convergent_seq_eq_zero -> MeasureTheory.Egorov.measure_inter_notConvergentSeq_eq_zero is a dubious translation:
+lean 3 declaration is
+ forall {α : Type.{u1}} {β : Type.{u2}} {ι : Type.{u3}} {m : MeasurableSpace.{u1} α} [_inst_1 : MetricSpace.{u2} β] {μ : MeasureTheory.Measure.{u1} α m} {s : Set.{u1} α} {f : ι -> α -> β} {g : α -> β} [_inst_2 : SemilatticeSup.{u3} ι] [_inst_3 : Nonempty.{succ u3} ι], (Filter.Eventually.{u1} α (fun (x : α) => (Membership.Mem.{u1, u1} α (Set.{u1} α) (Set.hasMem.{u1} α) x s) -> (Filter.Tendsto.{u3, u2} ι β (fun (n : ι) => f n x) (Filter.atTop.{u3} ι (PartialOrder.toPreorder.{u3} ι (SemilatticeSup.toPartialOrder.{u3} ι _inst_2))) (nhds.{u2} β (UniformSpace.toTopologicalSpace.{u2} β (PseudoMetricSpace.toUniformSpace.{u2} β (MetricSpace.toPseudoMetricSpace.{u2} β _inst_1))) (g x)))) (MeasureTheory.Measure.ae.{u1} α m μ)) -> (forall (n : Nat), Eq.{1} ENNReal (coeFn.{succ u1, succ u1} (MeasureTheory.Measure.{u1} α m) (fun (_x : MeasureTheory.Measure.{u1} α m) => (Set.{u1} α) -> ENNReal) (MeasureTheory.Measure.instCoeFun.{u1} α m) μ (Inter.inter.{u1} (Set.{u1} α) (Set.hasInter.{u1} α) s (Set.iInter.{u1, succ u3} α ι (fun (j : ι) => MeasureTheory.Egorov.notConvergentSeq.{u1, u2, u3} α β ι _inst_1 (PartialOrder.toPreorder.{u3} ι (SemilatticeSup.toPartialOrder.{u3} ι _inst_2)) f g n j)))) (OfNat.ofNat.{0} ENNReal 0 (OfNat.mk.{0} ENNReal 0 (Zero.zero.{0} ENNReal ENNReal.hasZero))))
+but is expected to have type
+ forall {α : Type.{u2}} {β : Type.{u1}} {ι : Type.{u3}} {m : MeasurableSpace.{u2} α} [_inst_1 : MetricSpace.{u1} β] {μ : MeasureTheory.Measure.{u2} α m} {s : Set.{u2} α} {f : ι -> α -> β} {g : α -> β} [_inst_2 : SemilatticeSup.{u3} ι] [_inst_3 : Nonempty.{succ u3} ι], (Filter.Eventually.{u2} α (fun (x : α) => (Membership.mem.{u2, u2} α (Set.{u2} α) (Set.instMembershipSet.{u2} α) x s) -> (Filter.Tendsto.{u3, u1} ι β (fun (n : ι) => f n x) (Filter.atTop.{u3} ι (PartialOrder.toPreorder.{u3} ι (SemilatticeSup.toPartialOrder.{u3} ι _inst_2))) (nhds.{u1} β (UniformSpace.toTopologicalSpace.{u1} β (PseudoMetricSpace.toUniformSpace.{u1} β (MetricSpace.toPseudoMetricSpace.{u1} β _inst_1))) (g x)))) (MeasureTheory.Measure.ae.{u2} α m μ)) -> (forall (n : Nat), Eq.{1} ENNReal (MeasureTheory.OuterMeasure.measureOf.{u2} α (MeasureTheory.Measure.toOuterMeasure.{u2} α m μ) (Inter.inter.{u2} (Set.{u2} α) (Set.instInterSet.{u2} α) s (Set.iInter.{u2, succ u3} α ι (fun (j : ι) => MeasureTheory.Egorov.notConvergentSeq.{u2, u1, u3} α β ι _inst_1 (PartialOrder.toPreorder.{u3} ι (SemilatticeSup.toPartialOrder.{u3} ι _inst_2)) f g n j)))) (OfNat.ofNat.{0} ENNReal 0 (Zero.toOfNat0.{0} ENNReal instENNRealZero)))
+Case conversion may be inaccurate. Consider using '#align measure_theory.egorov.measure_inter_not_convergent_seq_eq_zero MeasureTheory.Egorov.measure_inter_notConvergentSeq_eq_zeroₓ'. -/
theorem measure_inter_notConvergentSeq_eq_zero [SemilatticeSup ι] [Nonempty ι]
(hfg : ∀ᵐ x ∂μ, x ∈ s → Tendsto (fun n => f n x) atTop (𝓝 (g x))) (n : ℕ) :
μ (s ∩ ⋂ j, notConvergentSeq f g n j) = 0 :=
@@ -75,6 +95,12 @@ theorem measure_inter_notConvergentSeq_eq_zero [SemilatticeSup ι] [Nonempty ι]
exact ⟨n, hn₁, hn₂.le⟩
#align measure_theory.egorov.measure_inter_not_convergent_seq_eq_zero MeasureTheory.Egorov.measure_inter_notConvergentSeq_eq_zero
+/- warning: measure_theory.egorov.not_convergent_seq_measurable_set -> MeasureTheory.Egorov.notConvergentSeq_measurableSet is a dubious translation:
+lean 3 declaration is
+ forall {α : Type.{u1}} {β : Type.{u2}} {ι : Type.{u3}} {m : MeasurableSpace.{u1} α} [_inst_1 : MetricSpace.{u2} β] {n : Nat} {j : ι} {f : ι -> α -> β} {g : α -> β} [_inst_2 : Preorder.{u3} ι] [_inst_3 : Countable.{succ u3} ι], (forall (n : ι), MeasureTheory.StronglyMeasurable.{u1, u2} α β (UniformSpace.toTopologicalSpace.{u2} β (PseudoMetricSpace.toUniformSpace.{u2} β (MetricSpace.toPseudoMetricSpace.{u2} β _inst_1))) m (f n)) -> (MeasureTheory.StronglyMeasurable.{u1, u2} α β (UniformSpace.toTopologicalSpace.{u2} β (PseudoMetricSpace.toUniformSpace.{u2} β (MetricSpace.toPseudoMetricSpace.{u2} β _inst_1))) m g) -> (MeasurableSet.{u1} α m (MeasureTheory.Egorov.notConvergentSeq.{u1, u2, u3} α β ι _inst_1 _inst_2 f g n j))
+but is expected to have type
+ forall {α : Type.{u2}} {β : Type.{u1}} {ι : Type.{u3}} {m : MeasurableSpace.{u2} α} [_inst_1 : MetricSpace.{u1} β] {n : Nat} {j : ι} {f : ι -> α -> β} {g : α -> β} [_inst_2 : Preorder.{u3} ι] [_inst_3 : Countable.{succ u3} ι], (forall (n : ι), MeasureTheory.StronglyMeasurable.{u2, u1} α β (UniformSpace.toTopologicalSpace.{u1} β (PseudoMetricSpace.toUniformSpace.{u1} β (MetricSpace.toPseudoMetricSpace.{u1} β _inst_1))) m (f n)) -> (MeasureTheory.StronglyMeasurable.{u2, u1} α β (UniformSpace.toTopologicalSpace.{u1} β (PseudoMetricSpace.toUniformSpace.{u1} β (MetricSpace.toPseudoMetricSpace.{u1} β _inst_1))) m g) -> (MeasurableSet.{u2} α m (MeasureTheory.Egorov.notConvergentSeq.{u2, u1, u3} α β ι _inst_1 _inst_2 f g n j))
+Case conversion may be inaccurate. Consider using '#align measure_theory.egorov.not_convergent_seq_measurable_set MeasureTheory.Egorov.notConvergentSeq_measurableSetₓ'. -/
theorem notConvergentSeq_measurableSet [Preorder ι] [Countable ι]
(hf : ∀ n, strongly_measurable[m] (f n)) (hg : StronglyMeasurable g) :
MeasurableSet (notConvergentSeq f g n j) :=
@@ -83,6 +109,12 @@ theorem notConvergentSeq_measurableSet [Preorder ι] [Countable ι]
StronglyMeasurable.measurableSet_lt stronglyMeasurable_const <| (hf k).dist hg
#align measure_theory.egorov.not_convergent_seq_measurable_set MeasureTheory.Egorov.notConvergentSeq_measurableSet
+/- warning: measure_theory.egorov.measure_not_convergent_seq_tendsto_zero -> MeasureTheory.Egorov.measure_notConvergentSeq_tendsto_zero is a dubious translation:
+lean 3 declaration is
+ forall {α : Type.{u1}} {β : Type.{u2}} {ι : Type.{u3}} {m : MeasurableSpace.{u1} α} [_inst_1 : MetricSpace.{u2} β] {μ : MeasureTheory.Measure.{u1} α m} {s : Set.{u1} α} {f : ι -> α -> β} {g : α -> β} [_inst_2 : SemilatticeSup.{u3} ι] [_inst_3 : Countable.{succ u3} ι], (forall (n : ι), MeasureTheory.StronglyMeasurable.{u1, u2} α β (UniformSpace.toTopologicalSpace.{u2} β (PseudoMetricSpace.toUniformSpace.{u2} β (MetricSpace.toPseudoMetricSpace.{u2} β _inst_1))) m (f n)) -> (MeasureTheory.StronglyMeasurable.{u1, u2} α β (UniformSpace.toTopologicalSpace.{u2} β (PseudoMetricSpace.toUniformSpace.{u2} β (MetricSpace.toPseudoMetricSpace.{u2} β _inst_1))) m g) -> (MeasurableSet.{u1} α m s) -> (Ne.{1} ENNReal (coeFn.{succ u1, succ u1} (MeasureTheory.Measure.{u1} α m) (fun (_x : MeasureTheory.Measure.{u1} α m) => (Set.{u1} α) -> ENNReal) (MeasureTheory.Measure.instCoeFun.{u1} α m) μ s) (Top.top.{0} ENNReal (CompleteLattice.toHasTop.{0} ENNReal (CompleteLinearOrder.toCompleteLattice.{0} ENNReal ENNReal.completeLinearOrder)))) -> (Filter.Eventually.{u1} α (fun (x : α) => (Membership.Mem.{u1, u1} α (Set.{u1} α) (Set.hasMem.{u1} α) x s) -> (Filter.Tendsto.{u3, u2} ι β (fun (n : ι) => f n x) (Filter.atTop.{u3} ι (PartialOrder.toPreorder.{u3} ι (SemilatticeSup.toPartialOrder.{u3} ι _inst_2))) (nhds.{u2} β (UniformSpace.toTopologicalSpace.{u2} β (PseudoMetricSpace.toUniformSpace.{u2} β (MetricSpace.toPseudoMetricSpace.{u2} β _inst_1))) (g x)))) (MeasureTheory.Measure.ae.{u1} α m μ)) -> (forall (n : Nat), Filter.Tendsto.{u3, 0} ι ENNReal (fun (j : ι) => coeFn.{succ u1, succ u1} (MeasureTheory.Measure.{u1} α m) (fun (_x : MeasureTheory.Measure.{u1} α m) => (Set.{u1} α) -> ENNReal) (MeasureTheory.Measure.instCoeFun.{u1} α m) μ (Inter.inter.{u1} (Set.{u1} α) (Set.hasInter.{u1} α) s (MeasureTheory.Egorov.notConvergentSeq.{u1, u2, u3} α β ι _inst_1 (PartialOrder.toPreorder.{u3} ι (SemilatticeSup.toPartialOrder.{u3} ι _inst_2)) f g n j))) (Filter.atTop.{u3} ι (PartialOrder.toPreorder.{u3} ι (SemilatticeSup.toPartialOrder.{u3} ι _inst_2))) (nhds.{0} ENNReal ENNReal.topologicalSpace (OfNat.ofNat.{0} ENNReal 0 (OfNat.mk.{0} ENNReal 0 (Zero.zero.{0} ENNReal ENNReal.hasZero)))))
+but is expected to have type
+ forall {α : Type.{u2}} {β : Type.{u1}} {ι : Type.{u3}} {m : MeasurableSpace.{u2} α} [_inst_1 : MetricSpace.{u1} β] {μ : MeasureTheory.Measure.{u2} α m} {s : Set.{u2} α} {f : ι -> α -> β} {g : α -> β} [_inst_2 : SemilatticeSup.{u3} ι] [_inst_3 : Countable.{succ u3} ι], (forall (n : ι), MeasureTheory.StronglyMeasurable.{u2, u1} α β (UniformSpace.toTopologicalSpace.{u1} β (PseudoMetricSpace.toUniformSpace.{u1} β (MetricSpace.toPseudoMetricSpace.{u1} β _inst_1))) m (f n)) -> (MeasureTheory.StronglyMeasurable.{u2, u1} α β (UniformSpace.toTopologicalSpace.{u1} β (PseudoMetricSpace.toUniformSpace.{u1} β (MetricSpace.toPseudoMetricSpace.{u1} β _inst_1))) m g) -> (MeasurableSet.{u2} α m s) -> (Ne.{1} ENNReal (MeasureTheory.OuterMeasure.measureOf.{u2} α (MeasureTheory.Measure.toOuterMeasure.{u2} α m μ) s) (Top.top.{0} ENNReal (CompleteLattice.toTop.{0} ENNReal (CompleteLinearOrder.toCompleteLattice.{0} ENNReal ENNReal.instCompleteLinearOrderENNReal)))) -> (Filter.Eventually.{u2} α (fun (x : α) => (Membership.mem.{u2, u2} α (Set.{u2} α) (Set.instMembershipSet.{u2} α) x s) -> (Filter.Tendsto.{u3, u1} ι β (fun (n : ι) => f n x) (Filter.atTop.{u3} ι (PartialOrder.toPreorder.{u3} ι (SemilatticeSup.toPartialOrder.{u3} ι _inst_2))) (nhds.{u1} β (UniformSpace.toTopologicalSpace.{u1} β (PseudoMetricSpace.toUniformSpace.{u1} β (MetricSpace.toPseudoMetricSpace.{u1} β _inst_1))) (g x)))) (MeasureTheory.Measure.ae.{u2} α m μ)) -> (forall (n : Nat), Filter.Tendsto.{u3, 0} ι ENNReal (fun (j : ι) => MeasureTheory.OuterMeasure.measureOf.{u2} α (MeasureTheory.Measure.toOuterMeasure.{u2} α m μ) (Inter.inter.{u2} (Set.{u2} α) (Set.instInterSet.{u2} α) s (MeasureTheory.Egorov.notConvergentSeq.{u2, u1, u3} α β ι _inst_1 (PartialOrder.toPreorder.{u3} ι (SemilatticeSup.toPartialOrder.{u3} ι _inst_2)) f g n j))) (Filter.atTop.{u3} ι (PartialOrder.toPreorder.{u3} ι (SemilatticeSup.toPartialOrder.{u3} ι _inst_2))) (nhds.{0} ENNReal ENNReal.instTopologicalSpaceENNReal (OfNat.ofNat.{0} ENNReal 0 (Zero.toOfNat0.{0} ENNReal instENNRealZero))))
+Case conversion may be inaccurate. Consider using '#align measure_theory.egorov.measure_not_convergent_seq_tendsto_zero MeasureTheory.Egorov.measure_notConvergentSeq_tendsto_zeroₓ'. -/
theorem measure_notConvergentSeq_tendsto_zero [SemilatticeSup ι] [Countable ι]
(hf : ∀ n, StronglyMeasurable (f n)) (hg : StronglyMeasurable g) (hsm : MeasurableSet s)
(hs : μ s ≠ ∞) (hfg : ∀ᵐ x ∂μ, x ∈ s → Tendsto (fun n => f n x) atTop (𝓝 (g x))) (n : ℕ) :
@@ -102,6 +134,12 @@ theorem measure_notConvergentSeq_tendsto_zero [SemilatticeSup ι] [Countable ι]
variable [SemilatticeSup ι] [Nonempty ι] [Countable ι]
+/- warning: measure_theory.egorov.exists_not_convergent_seq_lt -> MeasureTheory.Egorov.exists_notConvergentSeq_lt is a dubious translation:
+lean 3 declaration is
+ forall {α : Type.{u1}} {β : Type.{u2}} {ι : Type.{u3}} {m : MeasurableSpace.{u1} α} [_inst_1 : MetricSpace.{u2} β] {μ : MeasureTheory.Measure.{u1} α m} {s : Set.{u1} α} {ε : Real} {f : ι -> α -> β} {g : α -> β} [_inst_2 : SemilatticeSup.{u3} ι] [_inst_3 : Nonempty.{succ u3} ι] [_inst_4 : Countable.{succ u3} ι], (LT.lt.{0} Real Real.hasLt (OfNat.ofNat.{0} Real 0 (OfNat.mk.{0} Real 0 (Zero.zero.{0} Real Real.hasZero))) ε) -> (forall (n : ι), MeasureTheory.StronglyMeasurable.{u1, u2} α β (UniformSpace.toTopologicalSpace.{u2} β (PseudoMetricSpace.toUniformSpace.{u2} β (MetricSpace.toPseudoMetricSpace.{u2} β _inst_1))) m (f n)) -> (MeasureTheory.StronglyMeasurable.{u1, u2} α β (UniformSpace.toTopologicalSpace.{u2} β (PseudoMetricSpace.toUniformSpace.{u2} β (MetricSpace.toPseudoMetricSpace.{u2} β _inst_1))) m g) -> (MeasurableSet.{u1} α m s) -> (Ne.{1} ENNReal (coeFn.{succ u1, succ u1} (MeasureTheory.Measure.{u1} α m) (fun (_x : MeasureTheory.Measure.{u1} α m) => (Set.{u1} α) -> ENNReal) (MeasureTheory.Measure.instCoeFun.{u1} α m) μ s) (Top.top.{0} ENNReal (CompleteLattice.toHasTop.{0} ENNReal (CompleteLinearOrder.toCompleteLattice.{0} ENNReal ENNReal.completeLinearOrder)))) -> (Filter.Eventually.{u1} α (fun (x : α) => (Membership.Mem.{u1, u1} α (Set.{u1} α) (Set.hasMem.{u1} α) x s) -> (Filter.Tendsto.{u3, u2} ι β (fun (n : ι) => f n x) (Filter.atTop.{u3} ι (PartialOrder.toPreorder.{u3} ι (SemilatticeSup.toPartialOrder.{u3} ι _inst_2))) (nhds.{u2} β (UniformSpace.toTopologicalSpace.{u2} β (PseudoMetricSpace.toUniformSpace.{u2} β (MetricSpace.toPseudoMetricSpace.{u2} β _inst_1))) (g x)))) (MeasureTheory.Measure.ae.{u1} α m μ)) -> (forall (n : Nat), Exists.{succ u3} ι (fun (j : ι) => LE.le.{0} ENNReal (Preorder.toHasLe.{0} ENNReal (PartialOrder.toPreorder.{0} ENNReal (CompleteSemilatticeInf.toPartialOrder.{0} ENNReal (CompleteLattice.toCompleteSemilatticeInf.{0} ENNReal (CompleteLinearOrder.toCompleteLattice.{0} ENNReal ENNReal.completeLinearOrder))))) (coeFn.{succ u1, succ u1} (MeasureTheory.Measure.{u1} α m) (fun (_x : MeasureTheory.Measure.{u1} α m) => (Set.{u1} α) -> ENNReal) (MeasureTheory.Measure.instCoeFun.{u1} α m) μ (Inter.inter.{u1} (Set.{u1} α) (Set.hasInter.{u1} α) s (MeasureTheory.Egorov.notConvergentSeq.{u1, u2, u3} α β ι _inst_1 (PartialOrder.toPreorder.{u3} ι (SemilatticeSup.toPartialOrder.{u3} ι _inst_2)) f g n j))) (ENNReal.ofReal (HMul.hMul.{0, 0, 0} Real Real Real (instHMul.{0} Real Real.hasMul) ε (HPow.hPow.{0, 0, 0} Real Nat Real (instHPow.{0, 0} Real Nat (Monoid.Pow.{0} Real Real.monoid)) (Inv.inv.{0} Real Real.hasInv (OfNat.ofNat.{0} Real 2 (OfNat.mk.{0} Real 2 (bit0.{0} Real Real.hasAdd (One.one.{0} Real Real.hasOne))))) n)))))
+but is expected to have type
+ forall {α : Type.{u3}} {β : Type.{u2}} {ι : Type.{u1}} {m : MeasurableSpace.{u3} α} [_inst_1 : MetricSpace.{u2} β] {μ : MeasureTheory.Measure.{u3} α m} {s : Set.{u3} α} {ε : Real} {f : ι -> α -> β} {g : α -> β} [_inst_2 : SemilatticeSup.{u1} ι] [_inst_3 : Nonempty.{succ u1} ι] [_inst_4 : Countable.{succ u1} ι], (LT.lt.{0} Real Real.instLTReal (OfNat.ofNat.{0} Real 0 (Zero.toOfNat0.{0} Real Real.instZeroReal)) ε) -> (forall (n : ι), MeasureTheory.StronglyMeasurable.{u3, u2} α β (UniformSpace.toTopologicalSpace.{u2} β (PseudoMetricSpace.toUniformSpace.{u2} β (MetricSpace.toPseudoMetricSpace.{u2} β _inst_1))) m (f n)) -> (MeasureTheory.StronglyMeasurable.{u3, u2} α β (UniformSpace.toTopologicalSpace.{u2} β (PseudoMetricSpace.toUniformSpace.{u2} β (MetricSpace.toPseudoMetricSpace.{u2} β _inst_1))) m g) -> (MeasurableSet.{u3} α m s) -> (Ne.{1} ENNReal (MeasureTheory.OuterMeasure.measureOf.{u3} α (MeasureTheory.Measure.toOuterMeasure.{u3} α m μ) s) (Top.top.{0} ENNReal (CompleteLattice.toTop.{0} ENNReal (CompleteLinearOrder.toCompleteLattice.{0} ENNReal ENNReal.instCompleteLinearOrderENNReal)))) -> (Filter.Eventually.{u3} α (fun (x : α) => (Membership.mem.{u3, u3} α (Set.{u3} α) (Set.instMembershipSet.{u3} α) x s) -> (Filter.Tendsto.{u1, u2} ι β (fun (n : ι) => f n x) (Filter.atTop.{u1} ι (PartialOrder.toPreorder.{u1} ι (SemilatticeSup.toPartialOrder.{u1} ι _inst_2))) (nhds.{u2} β (UniformSpace.toTopologicalSpace.{u2} β (PseudoMetricSpace.toUniformSpace.{u2} β (MetricSpace.toPseudoMetricSpace.{u2} β _inst_1))) (g x)))) (MeasureTheory.Measure.ae.{u3} α m μ)) -> (forall (n : Nat), Exists.{succ u1} ι (fun (j : ι) => LE.le.{0} ENNReal (Preorder.toLE.{0} ENNReal (PartialOrder.toPreorder.{0} ENNReal (OmegaCompletePartialOrder.toPartialOrder.{0} ENNReal (CompleteLattice.instOmegaCompletePartialOrder.{0} ENNReal (CompleteLinearOrder.toCompleteLattice.{0} ENNReal ENNReal.instCompleteLinearOrderENNReal))))) (MeasureTheory.OuterMeasure.measureOf.{u3} α (MeasureTheory.Measure.toOuterMeasure.{u3} α m μ) (Inter.inter.{u3} (Set.{u3} α) (Set.instInterSet.{u3} α) s (MeasureTheory.Egorov.notConvergentSeq.{u3, u2, u1} α β ι _inst_1 (PartialOrder.toPreorder.{u1} ι (SemilatticeSup.toPartialOrder.{u1} ι _inst_2)) f g n j))) (ENNReal.ofReal (HMul.hMul.{0, 0, 0} Real Real Real (instHMul.{0} Real Real.instMulReal) ε (HPow.hPow.{0, 0, 0} Real Nat Real (instHPow.{0, 0} Real Nat (Monoid.Pow.{0} Real Real.instMonoidReal)) (Inv.inv.{0} Real Real.instInvReal (OfNat.ofNat.{0} Real 2 (instOfNat.{0} Real 2 Real.natCast (instAtLeastTwoHAddNatInstHAddInstAddNatOfNat (OfNat.ofNat.{0} Nat 0 (instOfNatNat 0)))))) n)))))
+Case conversion may be inaccurate. Consider using '#align measure_theory.egorov.exists_not_convergent_seq_lt MeasureTheory.Egorov.exists_notConvergentSeq_ltₓ'. -/
theorem exists_notConvergentSeq_lt (hε : 0 < ε) (hf : ∀ n, StronglyMeasurable (f n))
(hg : StronglyMeasurable g) (hsm : MeasurableSet s) (hs : μ s ≠ ∞)
(hfg : ∀ᵐ x ∂μ, x ∈ s → Tendsto (fun n => f n x) atTop (𝓝 (g x))) (n : ℕ) :
@@ -116,6 +154,12 @@ theorem exists_notConvergentSeq_lt (hε : 0 < ε) (hf : ∀ n, StronglyMeasurabl
exact mul_pos hε (pow_pos (by norm_num) n)
#align measure_theory.egorov.exists_not_convergent_seq_lt MeasureTheory.Egorov.exists_notConvergentSeq_lt
+/- warning: measure_theory.egorov.not_convergent_seq_lt_index -> MeasureTheory.Egorov.notConvergentSeqLtIndex is a dubious translation:
+lean 3 declaration is
+ forall {α : Type.{u1}} {β : Type.{u2}} {ι : Type.{u3}} {m : MeasurableSpace.{u1} α} [_inst_1 : MetricSpace.{u2} β] {μ : MeasureTheory.Measure.{u1} α m} {s : Set.{u1} α} {ε : Real} {f : ι -> α -> β} {g : α -> β} [_inst_2 : SemilatticeSup.{u3} ι] [_inst_3 : Nonempty.{succ u3} ι] [_inst_4 : Countable.{succ u3} ι], (LT.lt.{0} Real Real.hasLt (OfNat.ofNat.{0} Real 0 (OfNat.mk.{0} Real 0 (Zero.zero.{0} Real Real.hasZero))) ε) -> (forall (n : ι), MeasureTheory.StronglyMeasurable.{u1, u2} α β (UniformSpace.toTopologicalSpace.{u2} β (PseudoMetricSpace.toUniformSpace.{u2} β (MetricSpace.toPseudoMetricSpace.{u2} β _inst_1))) m (f n)) -> (MeasureTheory.StronglyMeasurable.{u1, u2} α β (UniformSpace.toTopologicalSpace.{u2} β (PseudoMetricSpace.toUniformSpace.{u2} β (MetricSpace.toPseudoMetricSpace.{u2} β _inst_1))) m g) -> (MeasurableSet.{u1} α m s) -> (Ne.{1} ENNReal (coeFn.{succ u1, succ u1} (MeasureTheory.Measure.{u1} α m) (fun (_x : MeasureTheory.Measure.{u1} α m) => (Set.{u1} α) -> ENNReal) (MeasureTheory.Measure.instCoeFun.{u1} α m) μ s) (Top.top.{0} ENNReal (CompleteLattice.toHasTop.{0} ENNReal (CompleteLinearOrder.toCompleteLattice.{0} ENNReal ENNReal.completeLinearOrder)))) -> (Filter.Eventually.{u1} α (fun (x : α) => (Membership.Mem.{u1, u1} α (Set.{u1} α) (Set.hasMem.{u1} α) x s) -> (Filter.Tendsto.{u3, u2} ι β (fun (n : ι) => f n x) (Filter.atTop.{u3} ι (PartialOrder.toPreorder.{u3} ι (SemilatticeSup.toPartialOrder.{u3} ι _inst_2))) (nhds.{u2} β (UniformSpace.toTopologicalSpace.{u2} β (PseudoMetricSpace.toUniformSpace.{u2} β (MetricSpace.toPseudoMetricSpace.{u2} β _inst_1))) (g x)))) (MeasureTheory.Measure.ae.{u1} α m μ)) -> Nat -> ι
+but is expected to have type
+ forall {α : Type.{u1}} {β : Type.{u2}} {ι : Type.{u3}} {m : MeasurableSpace.{u1} α} [_inst_1 : MetricSpace.{u2} β] {μ : MeasureTheory.Measure.{u1} α m} {s : Set.{u1} α} {ε : Real} {f : ι -> α -> β} {g : α -> β} [_inst_2 : SemilatticeSup.{u3} ι] [_inst_3 : Nonempty.{succ u3} ι] [_inst_4 : Countable.{succ u3} ι], (LT.lt.{0} Real Real.instLTReal (OfNat.ofNat.{0} Real 0 (Zero.toOfNat0.{0} Real Real.instZeroReal)) ε) -> (forall (n : ι), MeasureTheory.StronglyMeasurable.{u1, u2} α β (UniformSpace.toTopologicalSpace.{u2} β (PseudoMetricSpace.toUniformSpace.{u2} β (MetricSpace.toPseudoMetricSpace.{u2} β _inst_1))) m (f n)) -> (MeasureTheory.StronglyMeasurable.{u1, u2} α β (UniformSpace.toTopologicalSpace.{u2} β (PseudoMetricSpace.toUniformSpace.{u2} β (MetricSpace.toPseudoMetricSpace.{u2} β _inst_1))) m g) -> (MeasurableSet.{u1} α m s) -> (Ne.{1} ENNReal (MeasureTheory.OuterMeasure.measureOf.{u1} α (MeasureTheory.Measure.toOuterMeasure.{u1} α m μ) s) (Top.top.{0} ENNReal (CompleteLattice.toTop.{0} ENNReal (CompleteLinearOrder.toCompleteLattice.{0} ENNReal ENNReal.instCompleteLinearOrderENNReal)))) -> (Filter.Eventually.{u1} α (fun (x : α) => (Membership.mem.{u1, u1} α (Set.{u1} α) (Set.instMembershipSet.{u1} α) x s) -> (Filter.Tendsto.{u3, u2} ι β (fun (n : ι) => f n x) (Filter.atTop.{u3} ι (PartialOrder.toPreorder.{u3} ι (SemilatticeSup.toPartialOrder.{u3} ι _inst_2))) (nhds.{u2} β (UniformSpace.toTopologicalSpace.{u2} β (PseudoMetricSpace.toUniformSpace.{u2} β (MetricSpace.toPseudoMetricSpace.{u2} β _inst_1))) (g x)))) (MeasureTheory.Measure.ae.{u1} α m μ)) -> Nat -> ι
+Case conversion may be inaccurate. Consider using '#align measure_theory.egorov.not_convergent_seq_lt_index MeasureTheory.Egorov.notConvergentSeqLtIndexₓ'. -/
/-- Given some `ε > 0`, `not_convergent_seq_lt_index` provides the index such that
`not_convergent_seq` (intersected with a set of finite measure) has measure less than
`ε * 2⁻¹ ^ n`.
@@ -127,6 +171,12 @@ def notConvergentSeqLtIndex (hε : 0 < ε) (hf : ∀ n, StronglyMeasurable (f n)
Classical.choose <| exists_notConvergentSeq_lt hε hf hg hsm hs hfg n
#align measure_theory.egorov.not_convergent_seq_lt_index MeasureTheory.Egorov.notConvergentSeqLtIndex
+/- warning: measure_theory.egorov.not_convergent_seq_lt_index_spec -> MeasureTheory.Egorov.notConvergentSeqLtIndex_spec is a dubious translation:
+lean 3 declaration is
+ forall {α : Type.{u1}} {β : Type.{u2}} {ι : Type.{u3}} {m : MeasurableSpace.{u1} α} [_inst_1 : MetricSpace.{u2} β] {μ : MeasureTheory.Measure.{u1} α m} {s : Set.{u1} α} {ε : Real} {f : ι -> α -> β} {g : α -> β} [_inst_2 : SemilatticeSup.{u3} ι] [_inst_3 : Nonempty.{succ u3} ι] [_inst_4 : Countable.{succ u3} ι] (hε : LT.lt.{0} Real Real.hasLt (OfNat.ofNat.{0} Real 0 (OfNat.mk.{0} Real 0 (Zero.zero.{0} Real Real.hasZero))) ε) (hf : forall (n : ι), MeasureTheory.StronglyMeasurable.{u1, u2} α β (UniformSpace.toTopologicalSpace.{u2} β (PseudoMetricSpace.toUniformSpace.{u2} β (MetricSpace.toPseudoMetricSpace.{u2} β _inst_1))) m (f n)) (hg : MeasureTheory.StronglyMeasurable.{u1, u2} α β (UniformSpace.toTopologicalSpace.{u2} β (PseudoMetricSpace.toUniformSpace.{u2} β (MetricSpace.toPseudoMetricSpace.{u2} β _inst_1))) m g) (hsm : MeasurableSet.{u1} α m s) (hs : Ne.{1} ENNReal (coeFn.{succ u1, succ u1} (MeasureTheory.Measure.{u1} α m) (fun (_x : MeasureTheory.Measure.{u1} α m) => (Set.{u1} α) -> ENNReal) (MeasureTheory.Measure.instCoeFun.{u1} α m) μ s) (Top.top.{0} ENNReal (CompleteLattice.toHasTop.{0} ENNReal (CompleteLinearOrder.toCompleteLattice.{0} ENNReal ENNReal.completeLinearOrder)))) (hfg : Filter.Eventually.{u1} α (fun (x : α) => (Membership.Mem.{u1, u1} α (Set.{u1} α) (Set.hasMem.{u1} α) x s) -> (Filter.Tendsto.{u3, u2} ι β (fun (n : ι) => f n x) (Filter.atTop.{u3} ι (PartialOrder.toPreorder.{u3} ι (SemilatticeSup.toPartialOrder.{u3} ι _inst_2))) (nhds.{u2} β (UniformSpace.toTopologicalSpace.{u2} β (PseudoMetricSpace.toUniformSpace.{u2} β (MetricSpace.toPseudoMetricSpace.{u2} β _inst_1))) (g x)))) (MeasureTheory.Measure.ae.{u1} α m μ)) (n : Nat), LE.le.{0} ENNReal (Preorder.toHasLe.{0} ENNReal (PartialOrder.toPreorder.{0} ENNReal (CompleteSemilatticeInf.toPartialOrder.{0} ENNReal (CompleteLattice.toCompleteSemilatticeInf.{0} ENNReal (CompleteLinearOrder.toCompleteLattice.{0} ENNReal ENNReal.completeLinearOrder))))) (coeFn.{succ u1, succ u1} (MeasureTheory.Measure.{u1} α m) (fun (_x : MeasureTheory.Measure.{u1} α m) => (Set.{u1} α) -> ENNReal) (MeasureTheory.Measure.instCoeFun.{u1} α m) μ (Inter.inter.{u1} (Set.{u1} α) (Set.hasInter.{u1} α) s (MeasureTheory.Egorov.notConvergentSeq.{u1, u2, u3} α β ι _inst_1 (PartialOrder.toPreorder.{u3} ι (SemilatticeSup.toPartialOrder.{u3} ι _inst_2)) f g n (MeasureTheory.Egorov.notConvergentSeqLtIndex.{u1, u2, u3} α β ι m _inst_1 μ s ε (fun (n : ι) => f n) g _inst_2 _inst_3 _inst_4 hε hf hg hsm hs hfg n)))) (ENNReal.ofReal (HMul.hMul.{0, 0, 0} Real Real Real (instHMul.{0} Real Real.hasMul) ε (HPow.hPow.{0, 0, 0} Real Nat Real (instHPow.{0, 0} Real Nat (Monoid.Pow.{0} Real Real.monoid)) (Inv.inv.{0} Real Real.hasInv (OfNat.ofNat.{0} Real 2 (OfNat.mk.{0} Real 2 (bit0.{0} Real Real.hasAdd (One.one.{0} Real Real.hasOne))))) n)))
+but is expected to have type
+ forall {α : Type.{u3}} {β : Type.{u2}} {ι : Type.{u1}} {m : MeasurableSpace.{u3} α} [_inst_1 : MetricSpace.{u2} β] {μ : MeasureTheory.Measure.{u3} α m} {s : Set.{u3} α} {ε : Real} {f : ι -> α -> β} {g : α -> β} [_inst_2 : SemilatticeSup.{u1} ι] [_inst_3 : Nonempty.{succ u1} ι] [_inst_4 : Countable.{succ u1} ι] (hε : LT.lt.{0} Real Real.instLTReal (OfNat.ofNat.{0} Real 0 (Zero.toOfNat0.{0} Real Real.instZeroReal)) ε) (hf : forall (n : ι), MeasureTheory.StronglyMeasurable.{u3, u2} α β (UniformSpace.toTopologicalSpace.{u2} β (PseudoMetricSpace.toUniformSpace.{u2} β (MetricSpace.toPseudoMetricSpace.{u2} β _inst_1))) m (f n)) (hg : MeasureTheory.StronglyMeasurable.{u3, u2} α β (UniformSpace.toTopologicalSpace.{u2} β (PseudoMetricSpace.toUniformSpace.{u2} β (MetricSpace.toPseudoMetricSpace.{u2} β _inst_1))) m g) (hsm : MeasurableSet.{u3} α m s) (hs : Ne.{1} ENNReal (MeasureTheory.OuterMeasure.measureOf.{u3} α (MeasureTheory.Measure.toOuterMeasure.{u3} α m μ) s) (Top.top.{0} ENNReal (CompleteLattice.toTop.{0} ENNReal (CompleteLinearOrder.toCompleteLattice.{0} ENNReal ENNReal.instCompleteLinearOrderENNReal)))) (hfg : Filter.Eventually.{u3} α (fun (x : α) => (Membership.mem.{u3, u3} α (Set.{u3} α) (Set.instMembershipSet.{u3} α) x s) -> (Filter.Tendsto.{u1, u2} ι β (fun (n : ι) => f n x) (Filter.atTop.{u1} ι (PartialOrder.toPreorder.{u1} ι (SemilatticeSup.toPartialOrder.{u1} ι _inst_2))) (nhds.{u2} β (UniformSpace.toTopologicalSpace.{u2} β (PseudoMetricSpace.toUniformSpace.{u2} β (MetricSpace.toPseudoMetricSpace.{u2} β _inst_1))) (g x)))) (MeasureTheory.Measure.ae.{u3} α m μ)) (n : Nat), LE.le.{0} ENNReal (Preorder.toLE.{0} ENNReal (PartialOrder.toPreorder.{0} ENNReal (OmegaCompletePartialOrder.toPartialOrder.{0} ENNReal (CompleteLattice.instOmegaCompletePartialOrder.{0} ENNReal (CompleteLinearOrder.toCompleteLattice.{0} ENNReal ENNReal.instCompleteLinearOrderENNReal))))) (MeasureTheory.OuterMeasure.measureOf.{u3} α (MeasureTheory.Measure.toOuterMeasure.{u3} α m μ) (Inter.inter.{u3} (Set.{u3} α) (Set.instInterSet.{u3} α) s (MeasureTheory.Egorov.notConvergentSeq.{u3, u2, u1} α β ι _inst_1 (PartialOrder.toPreorder.{u1} ι (SemilatticeSup.toPartialOrder.{u1} ι _inst_2)) f g n (MeasureTheory.Egorov.notConvergentSeqLtIndex.{u3, u2, u1} α β ι m _inst_1 μ s ε (fun (n : ι) => f n) g _inst_2 _inst_3 _inst_4 hε hf hg hsm hs hfg n)))) (ENNReal.ofReal (HMul.hMul.{0, 0, 0} Real Real Real (instHMul.{0} Real Real.instMulReal) ε (HPow.hPow.{0, 0, 0} Real Nat Real (instHPow.{0, 0} Real Nat (Monoid.Pow.{0} Real Real.instMonoidReal)) (Inv.inv.{0} Real Real.instInvReal (OfNat.ofNat.{0} Real 2 (instOfNat.{0} Real 2 Real.natCast (instAtLeastTwoHAddNatInstHAddInstAddNatOfNat (OfNat.ofNat.{0} Nat 0 (instOfNatNat 0)))))) n)))
+Case conversion may be inaccurate. Consider using '#align measure_theory.egorov.not_convergent_seq_lt_index_spec MeasureTheory.Egorov.notConvergentSeqLtIndex_specₓ'. -/
theorem notConvergentSeqLtIndex_spec (hε : 0 < ε) (hf : ∀ n, StronglyMeasurable (f n))
(hg : StronglyMeasurable g) (hsm : MeasurableSet s) (hs : μ s ≠ ∞)
(hfg : ∀ᵐ x ∂μ, x ∈ s → Tendsto (fun n => f n x) atTop (𝓝 (g x))) (n : ℕ) :
@@ -135,27 +185,45 @@ theorem notConvergentSeqLtIndex_spec (hε : 0 < ε) (hf : ∀ n, StronglyMeasura
Classical.choose_spec <| exists_notConvergentSeq_lt hε hf hg hsm hs hfg n
#align measure_theory.egorov.not_convergent_seq_lt_index_spec MeasureTheory.Egorov.notConvergentSeqLtIndex_spec
+/- warning: measure_theory.egorov.Union_not_convergent_seq -> MeasureTheory.Egorov.iUnionNotConvergentSeq is a dubious translation:
+lean 3 declaration is
+ forall {α : Type.{u1}} {β : Type.{u2}} {ι : Type.{u3}} {m : MeasurableSpace.{u1} α} [_inst_1 : MetricSpace.{u2} β] {μ : MeasureTheory.Measure.{u1} α m} {s : Set.{u1} α} {ε : Real} {f : ι -> α -> β} {g : α -> β} [_inst_2 : SemilatticeSup.{u3} ι] [_inst_3 : Nonempty.{succ u3} ι] [_inst_4 : Countable.{succ u3} ι], (LT.lt.{0} Real Real.hasLt (OfNat.ofNat.{0} Real 0 (OfNat.mk.{0} Real 0 (Zero.zero.{0} Real Real.hasZero))) ε) -> (forall (n : ι), MeasureTheory.StronglyMeasurable.{u1, u2} α β (UniformSpace.toTopologicalSpace.{u2} β (PseudoMetricSpace.toUniformSpace.{u2} β (MetricSpace.toPseudoMetricSpace.{u2} β _inst_1))) m (f n)) -> (MeasureTheory.StronglyMeasurable.{u1, u2} α β (UniformSpace.toTopologicalSpace.{u2} β (PseudoMetricSpace.toUniformSpace.{u2} β (MetricSpace.toPseudoMetricSpace.{u2} β _inst_1))) m g) -> (MeasurableSet.{u1} α m s) -> (Ne.{1} ENNReal (coeFn.{succ u1, succ u1} (MeasureTheory.Measure.{u1} α m) (fun (_x : MeasureTheory.Measure.{u1} α m) => (Set.{u1} α) -> ENNReal) (MeasureTheory.Measure.instCoeFun.{u1} α m) μ s) (Top.top.{0} ENNReal (CompleteLattice.toHasTop.{0} ENNReal (CompleteLinearOrder.toCompleteLattice.{0} ENNReal ENNReal.completeLinearOrder)))) -> (Filter.Eventually.{u1} α (fun (x : α) => (Membership.Mem.{u1, u1} α (Set.{u1} α) (Set.hasMem.{u1} α) x s) -> (Filter.Tendsto.{u3, u2} ι β (fun (n : ι) => f n x) (Filter.atTop.{u3} ι (PartialOrder.toPreorder.{u3} ι (SemilatticeSup.toPartialOrder.{u3} ι _inst_2))) (nhds.{u2} β (UniformSpace.toTopologicalSpace.{u2} β (PseudoMetricSpace.toUniformSpace.{u2} β (MetricSpace.toPseudoMetricSpace.{u2} β _inst_1))) (g x)))) (MeasureTheory.Measure.ae.{u1} α m μ)) -> (Set.{u1} α)
+but is expected to have type
+ forall {α : Type.{u1}} {β : Type.{u2}} {ι : Type.{u3}} {m : MeasurableSpace.{u1} α} [_inst_1 : MetricSpace.{u2} β] {μ : MeasureTheory.Measure.{u1} α m} {s : Set.{u1} α} {ε : Real} {f : ι -> α -> β} {g : α -> β} [_inst_2 : SemilatticeSup.{u3} ι] [_inst_3 : Nonempty.{succ u3} ι] [_inst_4 : Countable.{succ u3} ι], (LT.lt.{0} Real Real.instLTReal (OfNat.ofNat.{0} Real 0 (Zero.toOfNat0.{0} Real Real.instZeroReal)) ε) -> (forall (n : ι), MeasureTheory.StronglyMeasurable.{u1, u2} α β (UniformSpace.toTopologicalSpace.{u2} β (PseudoMetricSpace.toUniformSpace.{u2} β (MetricSpace.toPseudoMetricSpace.{u2} β _inst_1))) m (f n)) -> (MeasureTheory.StronglyMeasurable.{u1, u2} α β (UniformSpace.toTopologicalSpace.{u2} β (PseudoMetricSpace.toUniformSpace.{u2} β (MetricSpace.toPseudoMetricSpace.{u2} β _inst_1))) m g) -> (MeasurableSet.{u1} α m s) -> (Ne.{1} ENNReal (MeasureTheory.OuterMeasure.measureOf.{u1} α (MeasureTheory.Measure.toOuterMeasure.{u1} α m μ) s) (Top.top.{0} ENNReal (CompleteLattice.toTop.{0} ENNReal (CompleteLinearOrder.toCompleteLattice.{0} ENNReal ENNReal.instCompleteLinearOrderENNReal)))) -> (Filter.Eventually.{u1} α (fun (x : α) => (Membership.mem.{u1, u1} α (Set.{u1} α) (Set.instMembershipSet.{u1} α) x s) -> (Filter.Tendsto.{u3, u2} ι β (fun (n : ι) => f n x) (Filter.atTop.{u3} ι (PartialOrder.toPreorder.{u3} ι (SemilatticeSup.toPartialOrder.{u3} ι _inst_2))) (nhds.{u2} β (UniformSpace.toTopologicalSpace.{u2} β (PseudoMetricSpace.toUniformSpace.{u2} β (MetricSpace.toPseudoMetricSpace.{u2} β _inst_1))) (g x)))) (MeasureTheory.Measure.ae.{u1} α m μ)) -> (Set.{u1} α)
+Case conversion may be inaccurate. Consider using '#align measure_theory.egorov.Union_not_convergent_seq MeasureTheory.Egorov.iUnionNotConvergentSeqₓ'. -/
/-- Given some `ε > 0`, `Union_not_convergent_seq` is the union of `not_convergent_seq` with
specific indicies such that `Union_not_convergent_seq` has measure less equal than `ε`.
This definition is useful for Egorov's theorem. -/
-def unionNotConvergentSeq (hε : 0 < ε) (hf : ∀ n, StronglyMeasurable (f n))
+def iUnionNotConvergentSeq (hε : 0 < ε) (hf : ∀ n, StronglyMeasurable (f n))
(hg : StronglyMeasurable g) (hsm : MeasurableSet s) (hs : μ s ≠ ∞)
(hfg : ∀ᵐ x ∂μ, x ∈ s → Tendsto (fun n => f n x) atTop (𝓝 (g x))) : Set α :=
⋃ n, s ∩ notConvergentSeq f g n (notConvergentSeqLtIndex (half_pos hε) hf hg hsm hs hfg n)
-#align measure_theory.egorov.Union_not_convergent_seq MeasureTheory.Egorov.unionNotConvergentSeq
-
-theorem unionNotConvergentSeq_measurableSet (hε : 0 < ε) (hf : ∀ n, StronglyMeasurable (f n))
+#align measure_theory.egorov.Union_not_convergent_seq MeasureTheory.Egorov.iUnionNotConvergentSeq
+
+/- warning: measure_theory.egorov.Union_not_convergent_seq_measurable_set -> MeasureTheory.Egorov.iUnionNotConvergentSeq_measurableSet is a dubious translation:
+lean 3 declaration is
+ forall {α : Type.{u1}} {β : Type.{u2}} {ι : Type.{u3}} {m : MeasurableSpace.{u1} α} [_inst_1 : MetricSpace.{u2} β] {μ : MeasureTheory.Measure.{u1} α m} {s : Set.{u1} α} {ε : Real} {f : ι -> α -> β} {g : α -> β} [_inst_2 : SemilatticeSup.{u3} ι] [_inst_3 : Nonempty.{succ u3} ι] [_inst_4 : Countable.{succ u3} ι] (hε : LT.lt.{0} Real Real.hasLt (OfNat.ofNat.{0} Real 0 (OfNat.mk.{0} Real 0 (Zero.zero.{0} Real Real.hasZero))) ε) (hf : forall (n : ι), MeasureTheory.StronglyMeasurable.{u1, u2} α β (UniformSpace.toTopologicalSpace.{u2} β (PseudoMetricSpace.toUniformSpace.{u2} β (MetricSpace.toPseudoMetricSpace.{u2} β _inst_1))) m (f n)) (hg : MeasureTheory.StronglyMeasurable.{u1, u2} α β (UniformSpace.toTopologicalSpace.{u2} β (PseudoMetricSpace.toUniformSpace.{u2} β (MetricSpace.toPseudoMetricSpace.{u2} β _inst_1))) m g) (hsm : MeasurableSet.{u1} α m s) (hs : Ne.{1} ENNReal (coeFn.{succ u1, succ u1} (MeasureTheory.Measure.{u1} α m) (fun (_x : MeasureTheory.Measure.{u1} α m) => (Set.{u1} α) -> ENNReal) (MeasureTheory.Measure.instCoeFun.{u1} α m) μ s) (Top.top.{0} ENNReal (CompleteLattice.toHasTop.{0} ENNReal (CompleteLinearOrder.toCompleteLattice.{0} ENNReal ENNReal.completeLinearOrder)))) (hfg : Filter.Eventually.{u1} α (fun (x : α) => (Membership.Mem.{u1, u1} α (Set.{u1} α) (Set.hasMem.{u1} α) x s) -> (Filter.Tendsto.{u3, u2} ι β (fun (n : ι) => f n x) (Filter.atTop.{u3} ι (PartialOrder.toPreorder.{u3} ι (SemilatticeSup.toPartialOrder.{u3} ι _inst_2))) (nhds.{u2} β (UniformSpace.toTopologicalSpace.{u2} β (PseudoMetricSpace.toUniformSpace.{u2} β (MetricSpace.toPseudoMetricSpace.{u2} β _inst_1))) (g x)))) (MeasureTheory.Measure.ae.{u1} α m μ)), MeasurableSet.{u1} α m (MeasureTheory.Egorov.iUnionNotConvergentSeq.{u1, u2, u3} α β ι m _inst_1 μ s ε (fun (n : ι) => f n) g _inst_2 _inst_3 _inst_4 hε hf hg hsm hs hfg)
+but is expected to have type
+ forall {α : Type.{u3}} {β : Type.{u2}} {ι : Type.{u1}} {m : MeasurableSpace.{u3} α} [_inst_1 : MetricSpace.{u2} β] {μ : MeasureTheory.Measure.{u3} α m} {s : Set.{u3} α} {ε : Real} {f : ι -> α -> β} {g : α -> β} [_inst_2 : SemilatticeSup.{u1} ι] [_inst_3 : Nonempty.{succ u1} ι] [_inst_4 : Countable.{succ u1} ι] (hε : LT.lt.{0} Real Real.instLTReal (OfNat.ofNat.{0} Real 0 (Zero.toOfNat0.{0} Real Real.instZeroReal)) ε) (hf : forall (n : ι), MeasureTheory.StronglyMeasurable.{u3, u2} α β (UniformSpace.toTopologicalSpace.{u2} β (PseudoMetricSpace.toUniformSpace.{u2} β (MetricSpace.toPseudoMetricSpace.{u2} β _inst_1))) m (f n)) (hg : MeasureTheory.StronglyMeasurable.{u3, u2} α β (UniformSpace.toTopologicalSpace.{u2} β (PseudoMetricSpace.toUniformSpace.{u2} β (MetricSpace.toPseudoMetricSpace.{u2} β _inst_1))) m g) (hsm : MeasurableSet.{u3} α m s) (hs : Ne.{1} ENNReal (MeasureTheory.OuterMeasure.measureOf.{u3} α (MeasureTheory.Measure.toOuterMeasure.{u3} α m μ) s) (Top.top.{0} ENNReal (CompleteLattice.toTop.{0} ENNReal (CompleteLinearOrder.toCompleteLattice.{0} ENNReal ENNReal.instCompleteLinearOrderENNReal)))) (hfg : Filter.Eventually.{u3} α (fun (x : α) => (Membership.mem.{u3, u3} α (Set.{u3} α) (Set.instMembershipSet.{u3} α) x s) -> (Filter.Tendsto.{u1, u2} ι β (fun (n : ι) => f n x) (Filter.atTop.{u1} ι (PartialOrder.toPreorder.{u1} ι (SemilatticeSup.toPartialOrder.{u1} ι _inst_2))) (nhds.{u2} β (UniformSpace.toTopologicalSpace.{u2} β (PseudoMetricSpace.toUniformSpace.{u2} β (MetricSpace.toPseudoMetricSpace.{u2} β _inst_1))) (g x)))) (MeasureTheory.Measure.ae.{u3} α m μ)), MeasurableSet.{u3} α m (MeasureTheory.Egorov.iUnionNotConvergentSeq.{u3, u2, u1} α β ι m _inst_1 μ s ε (fun (n : ι) => f n) g _inst_2 _inst_3 _inst_4 hε hf hg hsm hs hfg)
+Case conversion may be inaccurate. Consider using '#align measure_theory.egorov.Union_not_convergent_seq_measurable_set MeasureTheory.Egorov.iUnionNotConvergentSeq_measurableSetₓ'. -/
+theorem iUnionNotConvergentSeq_measurableSet (hε : 0 < ε) (hf : ∀ n, StronglyMeasurable (f n))
(hg : StronglyMeasurable g) (hsm : MeasurableSet s) (hs : μ s ≠ ∞)
(hfg : ∀ᵐ x ∂μ, x ∈ s → Tendsto (fun n => f n x) atTop (𝓝 (g x))) :
- MeasurableSet <| unionNotConvergentSeq hε hf hg hsm hs hfg :=
+ MeasurableSet <| iUnionNotConvergentSeq hε hf hg hsm hs hfg :=
MeasurableSet.iUnion fun n => hsm.inter <| notConvergentSeq_measurableSet hf hg
-#align measure_theory.egorov.Union_not_convergent_seq_measurable_set MeasureTheory.Egorov.unionNotConvergentSeq_measurableSet
-
-theorem measure_unionNotConvergentSeq (hε : 0 < ε) (hf : ∀ n, StronglyMeasurable (f n))
+#align measure_theory.egorov.Union_not_convergent_seq_measurable_set MeasureTheory.Egorov.iUnionNotConvergentSeq_measurableSet
+
+/- warning: measure_theory.egorov.measure_Union_not_convergent_seq -> MeasureTheory.Egorov.measure_iUnionNotConvergentSeq is a dubious translation:
+lean 3 declaration is
+ forall {α : Type.{u1}} {β : Type.{u2}} {ι : Type.{u3}} {m : MeasurableSpace.{u1} α} [_inst_1 : MetricSpace.{u2} β] {μ : MeasureTheory.Measure.{u1} α m} {s : Set.{u1} α} {ε : Real} {f : ι -> α -> β} {g : α -> β} [_inst_2 : SemilatticeSup.{u3} ι] [_inst_3 : Nonempty.{succ u3} ι] [_inst_4 : Countable.{succ u3} ι] (hε : LT.lt.{0} Real Real.hasLt (OfNat.ofNat.{0} Real 0 (OfNat.mk.{0} Real 0 (Zero.zero.{0} Real Real.hasZero))) ε) (hf : forall (n : ι), MeasureTheory.StronglyMeasurable.{u1, u2} α β (UniformSpace.toTopologicalSpace.{u2} β (PseudoMetricSpace.toUniformSpace.{u2} β (MetricSpace.toPseudoMetricSpace.{u2} β _inst_1))) m (f n)) (hg : MeasureTheory.StronglyMeasurable.{u1, u2} α β (UniformSpace.toTopologicalSpace.{u2} β (PseudoMetricSpace.toUniformSpace.{u2} β (MetricSpace.toPseudoMetricSpace.{u2} β _inst_1))) m g) (hsm : MeasurableSet.{u1} α m s) (hs : Ne.{1} ENNReal (coeFn.{succ u1, succ u1} (MeasureTheory.Measure.{u1} α m) (fun (_x : MeasureTheory.Measure.{u1} α m) => (Set.{u1} α) -> ENNReal) (MeasureTheory.Measure.instCoeFun.{u1} α m) μ s) (Top.top.{0} ENNReal (CompleteLattice.toHasTop.{0} ENNReal (CompleteLinearOrder.toCompleteLattice.{0} ENNReal ENNReal.completeLinearOrder)))) (hfg : Filter.Eventually.{u1} α (fun (x : α) => (Membership.Mem.{u1, u1} α (Set.{u1} α) (Set.hasMem.{u1} α) x s) -> (Filter.Tendsto.{u3, u2} ι β (fun (n : ι) => f n x) (Filter.atTop.{u3} ι (PartialOrder.toPreorder.{u3} ι (SemilatticeSup.toPartialOrder.{u3} ι _inst_2))) (nhds.{u2} β (UniformSpace.toTopologicalSpace.{u2} β (PseudoMetricSpace.toUniformSpace.{u2} β (MetricSpace.toPseudoMetricSpace.{u2} β _inst_1))) (g x)))) (MeasureTheory.Measure.ae.{u1} α m μ)), LE.le.{0} ENNReal (Preorder.toHasLe.{0} ENNReal (PartialOrder.toPreorder.{0} ENNReal (CompleteSemilatticeInf.toPartialOrder.{0} ENNReal (CompleteLattice.toCompleteSemilatticeInf.{0} ENNReal (CompleteLinearOrder.toCompleteLattice.{0} ENNReal ENNReal.completeLinearOrder))))) (coeFn.{succ u1, succ u1} (MeasureTheory.Measure.{u1} α m) (fun (_x : MeasureTheory.Measure.{u1} α m) => (Set.{u1} α) -> ENNReal) (MeasureTheory.Measure.instCoeFun.{u1} α m) μ (MeasureTheory.Egorov.iUnionNotConvergentSeq.{u1, u2, u3} α β ι m _inst_1 μ s ε (fun (n : ι) => f n) g _inst_2 _inst_3 _inst_4 hε hf hg hsm hs hfg)) (ENNReal.ofReal ε)
+but is expected to have type
+ forall {α : Type.{u3}} {β : Type.{u2}} {ι : Type.{u1}} {m : MeasurableSpace.{u3} α} [_inst_1 : MetricSpace.{u2} β] {μ : MeasureTheory.Measure.{u3} α m} {s : Set.{u3} α} {ε : Real} {f : ι -> α -> β} {g : α -> β} [_inst_2 : SemilatticeSup.{u1} ι] [_inst_3 : Nonempty.{succ u1} ι] [_inst_4 : Countable.{succ u1} ι] (hε : LT.lt.{0} Real Real.instLTReal (OfNat.ofNat.{0} Real 0 (Zero.toOfNat0.{0} Real Real.instZeroReal)) ε) (hf : forall (n : ι), MeasureTheory.StronglyMeasurable.{u3, u2} α β (UniformSpace.toTopologicalSpace.{u2} β (PseudoMetricSpace.toUniformSpace.{u2} β (MetricSpace.toPseudoMetricSpace.{u2} β _inst_1))) m (f n)) (hg : MeasureTheory.StronglyMeasurable.{u3, u2} α β (UniformSpace.toTopologicalSpace.{u2} β (PseudoMetricSpace.toUniformSpace.{u2} β (MetricSpace.toPseudoMetricSpace.{u2} β _inst_1))) m g) (hsm : MeasurableSet.{u3} α m s) (hs : Ne.{1} ENNReal (MeasureTheory.OuterMeasure.measureOf.{u3} α (MeasureTheory.Measure.toOuterMeasure.{u3} α m μ) s) (Top.top.{0} ENNReal (CompleteLattice.toTop.{0} ENNReal (CompleteLinearOrder.toCompleteLattice.{0} ENNReal ENNReal.instCompleteLinearOrderENNReal)))) (hfg : Filter.Eventually.{u3} α (fun (x : α) => (Membership.mem.{u3, u3} α (Set.{u3} α) (Set.instMembershipSet.{u3} α) x s) -> (Filter.Tendsto.{u1, u2} ι β (fun (n : ι) => f n x) (Filter.atTop.{u1} ι (PartialOrder.toPreorder.{u1} ι (SemilatticeSup.toPartialOrder.{u1} ι _inst_2))) (nhds.{u2} β (UniformSpace.toTopologicalSpace.{u2} β (PseudoMetricSpace.toUniformSpace.{u2} β (MetricSpace.toPseudoMetricSpace.{u2} β _inst_1))) (g x)))) (MeasureTheory.Measure.ae.{u3} α m μ)), LE.le.{0} ENNReal (Preorder.toLE.{0} ENNReal (PartialOrder.toPreorder.{0} ENNReal (OmegaCompletePartialOrder.toPartialOrder.{0} ENNReal (CompleteLattice.instOmegaCompletePartialOrder.{0} ENNReal (CompleteLinearOrder.toCompleteLattice.{0} ENNReal ENNReal.instCompleteLinearOrderENNReal))))) (MeasureTheory.OuterMeasure.measureOf.{u3} α (MeasureTheory.Measure.toOuterMeasure.{u3} α m μ) (MeasureTheory.Egorov.iUnionNotConvergentSeq.{u3, u2, u1} α β ι m _inst_1 μ s ε (fun (n : ι) => f n) g _inst_2 _inst_3 _inst_4 hε hf hg hsm hs hfg)) (ENNReal.ofReal ε)
+Case conversion may be inaccurate. Consider using '#align measure_theory.egorov.measure_Union_not_convergent_seq MeasureTheory.Egorov.measure_iUnionNotConvergentSeqₓ'. -/
+theorem measure_iUnionNotConvergentSeq (hε : 0 < ε) (hf : ∀ n, StronglyMeasurable (f n))
(hg : StronglyMeasurable g) (hsm : MeasurableSet s) (hs : μ s ≠ ∞)
(hfg : ∀ᵐ x ∂μ, x ∈ s → Tendsto (fun n => f n x) atTop (𝓝 (g x))) :
- μ (unionNotConvergentSeq hε hf hg hsm hs hfg) ≤ ENNReal.ofReal ε :=
+ μ (iUnionNotConvergentSeq hε hf hg hsm hs hfg) ≤ ENNReal.ofReal ε :=
by
refine'
le_trans (measure_Union_le _)
@@ -168,21 +236,33 @@ theorem measure_unionNotConvergentSeq (hε : 0 < ε) (hf : ∀ n, StronglyMeasur
· exact fun n => pow_nonneg (by norm_num) _
· rw [inv_eq_one_div]
exact summable_geometric_two
-#align measure_theory.egorov.measure_Union_not_convergent_seq MeasureTheory.Egorov.measure_unionNotConvergentSeq
-
-theorem unionNotConvergentSeq_subset (hε : 0 < ε) (hf : ∀ n, StronglyMeasurable (f n))
+#align measure_theory.egorov.measure_Union_not_convergent_seq MeasureTheory.Egorov.measure_iUnionNotConvergentSeq
+
+/- warning: measure_theory.egorov.Union_not_convergent_seq_subset -> MeasureTheory.Egorov.iUnionNotConvergentSeq_subset is a dubious translation:
+lean 3 declaration is
+ forall {α : Type.{u1}} {β : Type.{u2}} {ι : Type.{u3}} {m : MeasurableSpace.{u1} α} [_inst_1 : MetricSpace.{u2} β] {μ : MeasureTheory.Measure.{u1} α m} {s : Set.{u1} α} {ε : Real} {f : ι -> α -> β} {g : α -> β} [_inst_2 : SemilatticeSup.{u3} ι] [_inst_3 : Nonempty.{succ u3} ι] [_inst_4 : Countable.{succ u3} ι] (hε : LT.lt.{0} Real Real.hasLt (OfNat.ofNat.{0} Real 0 (OfNat.mk.{0} Real 0 (Zero.zero.{0} Real Real.hasZero))) ε) (hf : forall (n : ι), MeasureTheory.StronglyMeasurable.{u1, u2} α β (UniformSpace.toTopologicalSpace.{u2} β (PseudoMetricSpace.toUniformSpace.{u2} β (MetricSpace.toPseudoMetricSpace.{u2} β _inst_1))) m (f n)) (hg : MeasureTheory.StronglyMeasurable.{u1, u2} α β (UniformSpace.toTopologicalSpace.{u2} β (PseudoMetricSpace.toUniformSpace.{u2} β (MetricSpace.toPseudoMetricSpace.{u2} β _inst_1))) m g) (hsm : MeasurableSet.{u1} α m s) (hs : Ne.{1} ENNReal (coeFn.{succ u1, succ u1} (MeasureTheory.Measure.{u1} α m) (fun (_x : MeasureTheory.Measure.{u1} α m) => (Set.{u1} α) -> ENNReal) (MeasureTheory.Measure.instCoeFun.{u1} α m) μ s) (Top.top.{0} ENNReal (CompleteLattice.toHasTop.{0} ENNReal (CompleteLinearOrder.toCompleteLattice.{0} ENNReal ENNReal.completeLinearOrder)))) (hfg : Filter.Eventually.{u1} α (fun (x : α) => (Membership.Mem.{u1, u1} α (Set.{u1} α) (Set.hasMem.{u1} α) x s) -> (Filter.Tendsto.{u3, u2} ι β (fun (n : ι) => f n x) (Filter.atTop.{u3} ι (PartialOrder.toPreorder.{u3} ι (SemilatticeSup.toPartialOrder.{u3} ι _inst_2))) (nhds.{u2} β (UniformSpace.toTopologicalSpace.{u2} β (PseudoMetricSpace.toUniformSpace.{u2} β (MetricSpace.toPseudoMetricSpace.{u2} β _inst_1))) (g x)))) (MeasureTheory.Measure.ae.{u1} α m μ)), HasSubset.Subset.{u1} (Set.{u1} α) (Set.hasSubset.{u1} α) (MeasureTheory.Egorov.iUnionNotConvergentSeq.{u1, u2, u3} α β ι m _inst_1 μ s ε (fun (n : ι) => f n) g _inst_2 _inst_3 _inst_4 hε hf hg hsm hs hfg) s
+but is expected to have type
+ forall {α : Type.{u3}} {β : Type.{u2}} {ι : Type.{u1}} {m : MeasurableSpace.{u3} α} [_inst_1 : MetricSpace.{u2} β] {μ : MeasureTheory.Measure.{u3} α m} {s : Set.{u3} α} {ε : Real} {f : ι -> α -> β} {g : α -> β} [_inst_2 : SemilatticeSup.{u1} ι] [_inst_3 : Nonempty.{succ u1} ι] [_inst_4 : Countable.{succ u1} ι] (hε : LT.lt.{0} Real Real.instLTReal (OfNat.ofNat.{0} Real 0 (Zero.toOfNat0.{0} Real Real.instZeroReal)) ε) (hf : forall (n : ι), MeasureTheory.StronglyMeasurable.{u3, u2} α β (UniformSpace.toTopologicalSpace.{u2} β (PseudoMetricSpace.toUniformSpace.{u2} β (MetricSpace.toPseudoMetricSpace.{u2} β _inst_1))) m (f n)) (hg : MeasureTheory.StronglyMeasurable.{u3, u2} α β (UniformSpace.toTopologicalSpace.{u2} β (PseudoMetricSpace.toUniformSpace.{u2} β (MetricSpace.toPseudoMetricSpace.{u2} β _inst_1))) m g) (hsm : MeasurableSet.{u3} α m s) (hs : Ne.{1} ENNReal (MeasureTheory.OuterMeasure.measureOf.{u3} α (MeasureTheory.Measure.toOuterMeasure.{u3} α m μ) s) (Top.top.{0} ENNReal (CompleteLattice.toTop.{0} ENNReal (CompleteLinearOrder.toCompleteLattice.{0} ENNReal ENNReal.instCompleteLinearOrderENNReal)))) (hfg : Filter.Eventually.{u3} α (fun (x : α) => (Membership.mem.{u3, u3} α (Set.{u3} α) (Set.instMembershipSet.{u3} α) x s) -> (Filter.Tendsto.{u1, u2} ι β (fun (n : ι) => f n x) (Filter.atTop.{u1} ι (PartialOrder.toPreorder.{u1} ι (SemilatticeSup.toPartialOrder.{u1} ι _inst_2))) (nhds.{u2} β (UniformSpace.toTopologicalSpace.{u2} β (PseudoMetricSpace.toUniformSpace.{u2} β (MetricSpace.toPseudoMetricSpace.{u2} β _inst_1))) (g x)))) (MeasureTheory.Measure.ae.{u3} α m μ)), HasSubset.Subset.{u3} (Set.{u3} α) (Set.instHasSubsetSet.{u3} α) (MeasureTheory.Egorov.iUnionNotConvergentSeq.{u3, u2, u1} α β ι m _inst_1 μ s ε (fun (n : ι) => f n) g _inst_2 _inst_3 _inst_4 hε hf hg hsm hs hfg) s
+Case conversion may be inaccurate. Consider using '#align measure_theory.egorov.Union_not_convergent_seq_subset MeasureTheory.Egorov.iUnionNotConvergentSeq_subsetₓ'. -/
+theorem iUnionNotConvergentSeq_subset (hε : 0 < ε) (hf : ∀ n, StronglyMeasurable (f n))
(hg : StronglyMeasurable g) (hsm : MeasurableSet s) (hs : μ s ≠ ∞)
(hfg : ∀ᵐ x ∂μ, x ∈ s → Tendsto (fun n => f n x) atTop (𝓝 (g x))) :
- unionNotConvergentSeq hε hf hg hsm hs hfg ⊆ s :=
+ iUnionNotConvergentSeq hε hf hg hsm hs hfg ⊆ s :=
by
rw [Union_not_convergent_seq, ← inter_Union]
exact inter_subset_left _ _
-#align measure_theory.egorov.Union_not_convergent_seq_subset MeasureTheory.Egorov.unionNotConvergentSeq_subset
-
-theorem tendstoUniformlyOn_diff_unionNotConvergentSeq (hε : 0 < ε)
+#align measure_theory.egorov.Union_not_convergent_seq_subset MeasureTheory.Egorov.iUnionNotConvergentSeq_subset
+
+/- warning: measure_theory.egorov.tendsto_uniformly_on_diff_Union_not_convergent_seq -> MeasureTheory.Egorov.tendstoUniformlyOn_diff_iUnionNotConvergentSeq is a dubious translation:
+lean 3 declaration is
+ forall {α : Type.{u1}} {β : Type.{u2}} {ι : Type.{u3}} {m : MeasurableSpace.{u1} α} [_inst_1 : MetricSpace.{u2} β] {μ : MeasureTheory.Measure.{u1} α m} {s : Set.{u1} α} {ε : Real} {f : ι -> α -> β} {g : α -> β} [_inst_2 : SemilatticeSup.{u3} ι] [_inst_3 : Nonempty.{succ u3} ι] [_inst_4 : Countable.{succ u3} ι] (hε : LT.lt.{0} Real Real.hasLt (OfNat.ofNat.{0} Real 0 (OfNat.mk.{0} Real 0 (Zero.zero.{0} Real Real.hasZero))) ε) (hf : forall (n : ι), MeasureTheory.StronglyMeasurable.{u1, u2} α β (UniformSpace.toTopologicalSpace.{u2} β (PseudoMetricSpace.toUniformSpace.{u2} β (MetricSpace.toPseudoMetricSpace.{u2} β _inst_1))) m (f n)) (hg : MeasureTheory.StronglyMeasurable.{u1, u2} α β (UniformSpace.toTopologicalSpace.{u2} β (PseudoMetricSpace.toUniformSpace.{u2} β (MetricSpace.toPseudoMetricSpace.{u2} β _inst_1))) m g) (hsm : MeasurableSet.{u1} α m s) (hs : Ne.{1} ENNReal (coeFn.{succ u1, succ u1} (MeasureTheory.Measure.{u1} α m) (fun (_x : MeasureTheory.Measure.{u1} α m) => (Set.{u1} α) -> ENNReal) (MeasureTheory.Measure.instCoeFun.{u1} α m) μ s) (Top.top.{0} ENNReal (CompleteLattice.toHasTop.{0} ENNReal (CompleteLinearOrder.toCompleteLattice.{0} ENNReal ENNReal.completeLinearOrder)))) (hfg : Filter.Eventually.{u1} α (fun (x : α) => (Membership.Mem.{u1, u1} α (Set.{u1} α) (Set.hasMem.{u1} α) x s) -> (Filter.Tendsto.{u3, u2} ι β (fun (n : ι) => f n x) (Filter.atTop.{u3} ι (PartialOrder.toPreorder.{u3} ι (SemilatticeSup.toPartialOrder.{u3} ι _inst_2))) (nhds.{u2} β (UniformSpace.toTopologicalSpace.{u2} β (PseudoMetricSpace.toUniformSpace.{u2} β (MetricSpace.toPseudoMetricSpace.{u2} β _inst_1))) (g x)))) (MeasureTheory.Measure.ae.{u1} α m μ)), TendstoUniformlyOn.{u1, u2, u3} α β ι (PseudoMetricSpace.toUniformSpace.{u2} β (MetricSpace.toPseudoMetricSpace.{u2} β _inst_1)) f g (Filter.atTop.{u3} ι (PartialOrder.toPreorder.{u3} ι (SemilatticeSup.toPartialOrder.{u3} ι _inst_2))) (SDiff.sdiff.{u1} (Set.{u1} α) (BooleanAlgebra.toHasSdiff.{u1} (Set.{u1} α) (Set.booleanAlgebra.{u1} α)) s (MeasureTheory.Egorov.iUnionNotConvergentSeq.{u1, u2, u3} α β ι m _inst_1 μ s ε (fun (n : ι) => f n) g _inst_2 _inst_3 _inst_4 hε hf hg hsm hs hfg))
+but is expected to have type
+ forall {α : Type.{u3}} {β : Type.{u2}} {ι : Type.{u1}} {m : MeasurableSpace.{u3} α} [_inst_1 : MetricSpace.{u2} β] {μ : MeasureTheory.Measure.{u3} α m} {s : Set.{u3} α} {ε : Real} {f : ι -> α -> β} {g : α -> β} [_inst_2 : SemilatticeSup.{u1} ι] [_inst_3 : Nonempty.{succ u1} ι] [_inst_4 : Countable.{succ u1} ι] (hε : LT.lt.{0} Real Real.instLTReal (OfNat.ofNat.{0} Real 0 (Zero.toOfNat0.{0} Real Real.instZeroReal)) ε) (hf : forall (n : ι), MeasureTheory.StronglyMeasurable.{u3, u2} α β (UniformSpace.toTopologicalSpace.{u2} β (PseudoMetricSpace.toUniformSpace.{u2} β (MetricSpace.toPseudoMetricSpace.{u2} β _inst_1))) m (f n)) (hg : MeasureTheory.StronglyMeasurable.{u3, u2} α β (UniformSpace.toTopologicalSpace.{u2} β (PseudoMetricSpace.toUniformSpace.{u2} β (MetricSpace.toPseudoMetricSpace.{u2} β _inst_1))) m g) (hsm : MeasurableSet.{u3} α m s) (hs : Ne.{1} ENNReal (MeasureTheory.OuterMeasure.measureOf.{u3} α (MeasureTheory.Measure.toOuterMeasure.{u3} α m μ) s) (Top.top.{0} ENNReal (CompleteLattice.toTop.{0} ENNReal (CompleteLinearOrder.toCompleteLattice.{0} ENNReal ENNReal.instCompleteLinearOrderENNReal)))) (hfg : Filter.Eventually.{u3} α (fun (x : α) => (Membership.mem.{u3, u3} α (Set.{u3} α) (Set.instMembershipSet.{u3} α) x s) -> (Filter.Tendsto.{u1, u2} ι β (fun (n : ι) => f n x) (Filter.atTop.{u1} ι (PartialOrder.toPreorder.{u1} ι (SemilatticeSup.toPartialOrder.{u1} ι _inst_2))) (nhds.{u2} β (UniformSpace.toTopologicalSpace.{u2} β (PseudoMetricSpace.toUniformSpace.{u2} β (MetricSpace.toPseudoMetricSpace.{u2} β _inst_1))) (g x)))) (MeasureTheory.Measure.ae.{u3} α m μ)), TendstoUniformlyOn.{u3, u2, u1} α β ι (PseudoMetricSpace.toUniformSpace.{u2} β (MetricSpace.toPseudoMetricSpace.{u2} β _inst_1)) f g (Filter.atTop.{u1} ι (PartialOrder.toPreorder.{u1} ι (SemilatticeSup.toPartialOrder.{u1} ι _inst_2))) (SDiff.sdiff.{u3} (Set.{u3} α) (Set.instSDiffSet.{u3} α) s (MeasureTheory.Egorov.iUnionNotConvergentSeq.{u3, u2, u1} α β ι m _inst_1 μ s ε (fun (n : ι) => f n) g _inst_2 _inst_3 _inst_4 hε hf hg hsm hs hfg))
+Case conversion may be inaccurate. Consider using '#align measure_theory.egorov.tendsto_uniformly_on_diff_Union_not_convergent_seq MeasureTheory.Egorov.tendstoUniformlyOn_diff_iUnionNotConvergentSeqₓ'. -/
+theorem tendstoUniformlyOn_diff_iUnionNotConvergentSeq (hε : 0 < ε)
(hf : ∀ n, StronglyMeasurable (f n)) (hg : StronglyMeasurable g) (hsm : MeasurableSet s)
(hs : μ s ≠ ∞) (hfg : ∀ᵐ x ∂μ, x ∈ s → Tendsto (fun n => f n x) atTop (𝓝 (g x))) :
- TendstoUniformlyOn f g atTop (s \ Egorov.unionNotConvergentSeq hε hf hg hsm hs hfg) :=
+ TendstoUniformlyOn f g atTop (s \ Egorov.iUnionNotConvergentSeq hε hf hg hsm hs hfg) :=
by
rw [Metric.tendstoUniformlyOn_iff]
intro δ hδ
@@ -197,13 +277,19 @@ theorem tendstoUniformlyOn_diff_unionNotConvergentSeq (hε : 0 < ε)
push_neg at hx
rw [dist_comm]
exact lt_of_le_of_lt (hx n hn) hN
-#align measure_theory.egorov.tendsto_uniformly_on_diff_Union_not_convergent_seq MeasureTheory.Egorov.tendstoUniformlyOn_diff_unionNotConvergentSeq
+#align measure_theory.egorov.tendsto_uniformly_on_diff_Union_not_convergent_seq MeasureTheory.Egorov.tendstoUniformlyOn_diff_iUnionNotConvergentSeq
end Egorov
variable [SemilatticeSup ι] [Nonempty ι] [Countable ι] {γ : Type _} [TopologicalSpace γ]
{f : ι → α → β} {g : α → β} {s : Set α}
+/- warning: measure_theory.tendsto_uniformly_on_of_ae_tendsto -> MeasureTheory.tendstoUniformlyOn_of_ae_tendsto is a dubious translation:
+lean 3 declaration is
+ forall {α : Type.{u1}} {β : Type.{u2}} {ι : Type.{u3}} {m : MeasurableSpace.{u1} α} [_inst_1 : MetricSpace.{u2} β] {μ : MeasureTheory.Measure.{u1} α m} [_inst_2 : SemilatticeSup.{u3} ι] [_inst_3 : Nonempty.{succ u3} ι] [_inst_4 : Countable.{succ u3} ι] {f : ι -> α -> β} {g : α -> β} {s : Set.{u1} α}, (forall (n : ι), MeasureTheory.StronglyMeasurable.{u1, u2} α β (UniformSpace.toTopologicalSpace.{u2} β (PseudoMetricSpace.toUniformSpace.{u2} β (MetricSpace.toPseudoMetricSpace.{u2} β _inst_1))) m (f n)) -> (MeasureTheory.StronglyMeasurable.{u1, u2} α β (UniformSpace.toTopologicalSpace.{u2} β (PseudoMetricSpace.toUniformSpace.{u2} β (MetricSpace.toPseudoMetricSpace.{u2} β _inst_1))) m g) -> (MeasurableSet.{u1} α m s) -> (Ne.{1} ENNReal (coeFn.{succ u1, succ u1} (MeasureTheory.Measure.{u1} α m) (fun (_x : MeasureTheory.Measure.{u1} α m) => (Set.{u1} α) -> ENNReal) (MeasureTheory.Measure.instCoeFun.{u1} α m) μ s) (Top.top.{0} ENNReal (CompleteLattice.toHasTop.{0} ENNReal (CompleteLinearOrder.toCompleteLattice.{0} ENNReal ENNReal.completeLinearOrder)))) -> (Filter.Eventually.{u1} α (fun (x : α) => (Membership.Mem.{u1, u1} α (Set.{u1} α) (Set.hasMem.{u1} α) x s) -> (Filter.Tendsto.{u3, u2} ι β (fun (n : ι) => f n x) (Filter.atTop.{u3} ι (PartialOrder.toPreorder.{u3} ι (SemilatticeSup.toPartialOrder.{u3} ι _inst_2))) (nhds.{u2} β (UniformSpace.toTopologicalSpace.{u2} β (PseudoMetricSpace.toUniformSpace.{u2} β (MetricSpace.toPseudoMetricSpace.{u2} β _inst_1))) (g x)))) (MeasureTheory.Measure.ae.{u1} α m μ)) -> (forall {ε : Real}, (LT.lt.{0} Real Real.hasLt (OfNat.ofNat.{0} Real 0 (OfNat.mk.{0} Real 0 (Zero.zero.{0} Real Real.hasZero))) ε) -> (Exists.{succ u1} (Set.{u1} α) (fun (t : Set.{u1} α) => Exists.{0} (HasSubset.Subset.{u1} (Set.{u1} α) (Set.hasSubset.{u1} α) t s) (fun (H : HasSubset.Subset.{u1} (Set.{u1} α) (Set.hasSubset.{u1} α) t s) => And (MeasurableSet.{u1} α m t) (And (LE.le.{0} ENNReal (Preorder.toHasLe.{0} ENNReal (PartialOrder.toPreorder.{0} ENNReal (CompleteSemilatticeInf.toPartialOrder.{0} ENNReal (CompleteLattice.toCompleteSemilatticeInf.{0} ENNReal (CompleteLinearOrder.toCompleteLattice.{0} ENNReal ENNReal.completeLinearOrder))))) (coeFn.{succ u1, succ u1} (MeasureTheory.Measure.{u1} α m) (fun (_x : MeasureTheory.Measure.{u1} α m) => (Set.{u1} α) -> ENNReal) (MeasureTheory.Measure.instCoeFun.{u1} α m) μ t) (ENNReal.ofReal ε)) (TendstoUniformlyOn.{u1, u2, u3} α β ι (PseudoMetricSpace.toUniformSpace.{u2} β (MetricSpace.toPseudoMetricSpace.{u2} β _inst_1)) f g (Filter.atTop.{u3} ι (PartialOrder.toPreorder.{u3} ι (SemilatticeSup.toPartialOrder.{u3} ι _inst_2))) (SDiff.sdiff.{u1} (Set.{u1} α) (BooleanAlgebra.toHasSdiff.{u1} (Set.{u1} α) (Set.booleanAlgebra.{u1} α)) s t)))))))
+but is expected to have type
+ forall {α : Type.{u3}} {β : Type.{u2}} {ι : Type.{u1}} {m : MeasurableSpace.{u3} α} [_inst_1 : MetricSpace.{u2} β] {μ : MeasureTheory.Measure.{u3} α m} [_inst_2 : SemilatticeSup.{u1} ι] [_inst_3 : Nonempty.{succ u1} ι] [_inst_4 : Countable.{succ u1} ι] {f : ι -> α -> β} {g : α -> β} {s : Set.{u3} α}, (forall (n : ι), MeasureTheory.StronglyMeasurable.{u3, u2} α β (UniformSpace.toTopologicalSpace.{u2} β (PseudoMetricSpace.toUniformSpace.{u2} β (MetricSpace.toPseudoMetricSpace.{u2} β _inst_1))) m (f n)) -> (MeasureTheory.StronglyMeasurable.{u3, u2} α β (UniformSpace.toTopologicalSpace.{u2} β (PseudoMetricSpace.toUniformSpace.{u2} β (MetricSpace.toPseudoMetricSpace.{u2} β _inst_1))) m g) -> (MeasurableSet.{u3} α m s) -> (Ne.{1} ENNReal (MeasureTheory.OuterMeasure.measureOf.{u3} α (MeasureTheory.Measure.toOuterMeasure.{u3} α m μ) s) (Top.top.{0} ENNReal (CompleteLattice.toTop.{0} ENNReal (CompleteLinearOrder.toCompleteLattice.{0} ENNReal ENNReal.instCompleteLinearOrderENNReal)))) -> (Filter.Eventually.{u3} α (fun (x : α) => (Membership.mem.{u3, u3} α (Set.{u3} α) (Set.instMembershipSet.{u3} α) x s) -> (Filter.Tendsto.{u1, u2} ι β (fun (n : ι) => f n x) (Filter.atTop.{u1} ι (PartialOrder.toPreorder.{u1} ι (SemilatticeSup.toPartialOrder.{u1} ι _inst_2))) (nhds.{u2} β (UniformSpace.toTopologicalSpace.{u2} β (PseudoMetricSpace.toUniformSpace.{u2} β (MetricSpace.toPseudoMetricSpace.{u2} β _inst_1))) (g x)))) (MeasureTheory.Measure.ae.{u3} α m μ)) -> (forall {ε : Real}, (LT.lt.{0} Real Real.instLTReal (OfNat.ofNat.{0} Real 0 (Zero.toOfNat0.{0} Real Real.instZeroReal)) ε) -> (Exists.{succ u3} (Set.{u3} α) (fun (t : Set.{u3} α) => Exists.{0} (HasSubset.Subset.{u3} (Set.{u3} α) (Set.instHasSubsetSet.{u3} α) t s) (fun (H : HasSubset.Subset.{u3} (Set.{u3} α) (Set.instHasSubsetSet.{u3} α) t s) => And (MeasurableSet.{u3} α m t) (And (LE.le.{0} ENNReal (Preorder.toLE.{0} ENNReal (PartialOrder.toPreorder.{0} ENNReal (OmegaCompletePartialOrder.toPartialOrder.{0} ENNReal (CompleteLattice.instOmegaCompletePartialOrder.{0} ENNReal (CompleteLinearOrder.toCompleteLattice.{0} ENNReal ENNReal.instCompleteLinearOrderENNReal))))) (MeasureTheory.OuterMeasure.measureOf.{u3} α (MeasureTheory.Measure.toOuterMeasure.{u3} α m μ) t) (ENNReal.ofReal ε)) (TendstoUniformlyOn.{u3, u2, u1} α β ι (PseudoMetricSpace.toUniformSpace.{u2} β (MetricSpace.toPseudoMetricSpace.{u2} β _inst_1)) f g (Filter.atTop.{u1} ι (PartialOrder.toPreorder.{u1} ι (SemilatticeSup.toPartialOrder.{u1} ι _inst_2))) (SDiff.sdiff.{u3} (Set.{u3} α) (Set.instSDiffSet.{u3} α) s t)))))))
+Case conversion may be inaccurate. Consider using '#align measure_theory.tendsto_uniformly_on_of_ae_tendsto MeasureTheory.tendstoUniformlyOn_of_ae_tendstoₓ'. -/
/- ./././Mathport/Syntax/Translate/Basic.lean:635:2: warning: expanding binder collection (t «expr ⊆ » s) -/
/-- **Egorov's theorem**: If `f : ι → α → β` is a sequence of strongly measurable functions that
converges to `g : α → β` almost everywhere on a measurable set `s` of finite measure,
@@ -217,13 +303,19 @@ theorem tendstoUniformlyOn_of_ae_tendsto (hf : ∀ n, StronglyMeasurable (f n))
(hfg : ∀ᵐ x ∂μ, x ∈ s → Tendsto (fun n => f n x) atTop (𝓝 (g x))) {ε : ℝ} (hε : 0 < ε) :
∃ (t : _)(_ : t ⊆ s),
MeasurableSet t ∧ μ t ≤ ENNReal.ofReal ε ∧ TendstoUniformlyOn f g atTop (s \ t) :=
- ⟨Egorov.unionNotConvergentSeq hε hf hg hsm hs hfg,
- Egorov.unionNotConvergentSeq_subset hε hf hg hsm hs hfg,
- Egorov.unionNotConvergentSeq_measurableSet hε hf hg hsm hs hfg,
- Egorov.measure_unionNotConvergentSeq hε hf hg hsm hs hfg,
- Egorov.tendstoUniformlyOn_diff_unionNotConvergentSeq hε hf hg hsm hs hfg⟩
+ ⟨Egorov.iUnionNotConvergentSeq hε hf hg hsm hs hfg,
+ Egorov.iUnionNotConvergentSeq_subset hε hf hg hsm hs hfg,
+ Egorov.iUnionNotConvergentSeq_measurableSet hε hf hg hsm hs hfg,
+ Egorov.measure_iUnionNotConvergentSeq hε hf hg hsm hs hfg,
+ Egorov.tendstoUniformlyOn_diff_iUnionNotConvergentSeq hε hf hg hsm hs hfg⟩
#align measure_theory.tendsto_uniformly_on_of_ae_tendsto MeasureTheory.tendstoUniformlyOn_of_ae_tendsto
+/- warning: measure_theory.tendsto_uniformly_on_of_ae_tendsto' -> MeasureTheory.tendstoUniformlyOn_of_ae_tendsto' is a dubious translation:
+lean 3 declaration is
+ forall {α : Type.{u1}} {β : Type.{u2}} {ι : Type.{u3}} {m : MeasurableSpace.{u1} α} [_inst_1 : MetricSpace.{u2} β] {μ : MeasureTheory.Measure.{u1} α m} [_inst_2 : SemilatticeSup.{u3} ι] [_inst_3 : Nonempty.{succ u3} ι] [_inst_4 : Countable.{succ u3} ι] {f : ι -> α -> β} {g : α -> β} [_inst_6 : MeasureTheory.FiniteMeasure.{u1} α m μ], (forall (n : ι), MeasureTheory.StronglyMeasurable.{u1, u2} α β (UniformSpace.toTopologicalSpace.{u2} β (PseudoMetricSpace.toUniformSpace.{u2} β (MetricSpace.toPseudoMetricSpace.{u2} β _inst_1))) m (f n)) -> (MeasureTheory.StronglyMeasurable.{u1, u2} α β (UniformSpace.toTopologicalSpace.{u2} β (PseudoMetricSpace.toUniformSpace.{u2} β (MetricSpace.toPseudoMetricSpace.{u2} β _inst_1))) m g) -> (Filter.Eventually.{u1} α (fun (x : α) => Filter.Tendsto.{u3, u2} ι β (fun (n : ι) => f n x) (Filter.atTop.{u3} ι (PartialOrder.toPreorder.{u3} ι (SemilatticeSup.toPartialOrder.{u3} ι _inst_2))) (nhds.{u2} β (UniformSpace.toTopologicalSpace.{u2} β (PseudoMetricSpace.toUniformSpace.{u2} β (MetricSpace.toPseudoMetricSpace.{u2} β _inst_1))) (g x))) (MeasureTheory.Measure.ae.{u1} α m μ)) -> (forall {ε : Real}, (LT.lt.{0} Real Real.hasLt (OfNat.ofNat.{0} Real 0 (OfNat.mk.{0} Real 0 (Zero.zero.{0} Real Real.hasZero))) ε) -> (Exists.{succ u1} (Set.{u1} α) (fun (t : Set.{u1} α) => And (MeasurableSet.{u1} α m t) (And (LE.le.{0} ENNReal (Preorder.toHasLe.{0} ENNReal (PartialOrder.toPreorder.{0} ENNReal (CompleteSemilatticeInf.toPartialOrder.{0} ENNReal (CompleteLattice.toCompleteSemilatticeInf.{0} ENNReal (CompleteLinearOrder.toCompleteLattice.{0} ENNReal ENNReal.completeLinearOrder))))) (coeFn.{succ u1, succ u1} (MeasureTheory.Measure.{u1} α m) (fun (_x : MeasureTheory.Measure.{u1} α m) => (Set.{u1} α) -> ENNReal) (MeasureTheory.Measure.instCoeFun.{u1} α m) μ t) (ENNReal.ofReal ε)) (TendstoUniformlyOn.{u1, u2, u3} α β ι (PseudoMetricSpace.toUniformSpace.{u2} β (MetricSpace.toPseudoMetricSpace.{u2} β _inst_1)) f g (Filter.atTop.{u3} ι (PartialOrder.toPreorder.{u3} ι (SemilatticeSup.toPartialOrder.{u3} ι _inst_2))) (HasCompl.compl.{u1} (Set.{u1} α) (BooleanAlgebra.toHasCompl.{u1} (Set.{u1} α) (Set.booleanAlgebra.{u1} α)) t))))))
+but is expected to have type
+ forall {α : Type.{u3}} {β : Type.{u2}} {ι : Type.{u1}} {m : MeasurableSpace.{u3} α} [_inst_1 : MetricSpace.{u2} β] {μ : MeasureTheory.Measure.{u3} α m} [_inst_2 : SemilatticeSup.{u1} ι] [_inst_3 : Nonempty.{succ u1} ι] [_inst_4 : Countable.{succ u1} ι] {f : ι -> α -> β} {g : α -> β} [_inst_6 : MeasureTheory.FiniteMeasure.{u3} α m μ], (forall (n : ι), MeasureTheory.StronglyMeasurable.{u3, u2} α β (UniformSpace.toTopologicalSpace.{u2} β (PseudoMetricSpace.toUniformSpace.{u2} β (MetricSpace.toPseudoMetricSpace.{u2} β _inst_1))) m (f n)) -> (MeasureTheory.StronglyMeasurable.{u3, u2} α β (UniformSpace.toTopologicalSpace.{u2} β (PseudoMetricSpace.toUniformSpace.{u2} β (MetricSpace.toPseudoMetricSpace.{u2} β _inst_1))) m g) -> (Filter.Eventually.{u3} α (fun (x : α) => Filter.Tendsto.{u1, u2} ι β (fun (n : ι) => f n x) (Filter.atTop.{u1} ι (PartialOrder.toPreorder.{u1} ι (SemilatticeSup.toPartialOrder.{u1} ι _inst_2))) (nhds.{u2} β (UniformSpace.toTopologicalSpace.{u2} β (PseudoMetricSpace.toUniformSpace.{u2} β (MetricSpace.toPseudoMetricSpace.{u2} β _inst_1))) (g x))) (MeasureTheory.Measure.ae.{u3} α m μ)) -> (forall {ε : Real}, (LT.lt.{0} Real Real.instLTReal (OfNat.ofNat.{0} Real 0 (Zero.toOfNat0.{0} Real Real.instZeroReal)) ε) -> (Exists.{succ u3} (Set.{u3} α) (fun (t : Set.{u3} α) => And (MeasurableSet.{u3} α m t) (And (LE.le.{0} ENNReal (Preorder.toLE.{0} ENNReal (PartialOrder.toPreorder.{0} ENNReal (OmegaCompletePartialOrder.toPartialOrder.{0} ENNReal (CompleteLattice.instOmegaCompletePartialOrder.{0} ENNReal (CompleteLinearOrder.toCompleteLattice.{0} ENNReal ENNReal.instCompleteLinearOrderENNReal))))) (MeasureTheory.OuterMeasure.measureOf.{u3} α (MeasureTheory.Measure.toOuterMeasure.{u3} α m μ) t) (ENNReal.ofReal ε)) (TendstoUniformlyOn.{u3, u2, u1} α β ι (PseudoMetricSpace.toUniformSpace.{u2} β (MetricSpace.toPseudoMetricSpace.{u2} β _inst_1)) f g (Filter.atTop.{u1} ι (PartialOrder.toPreorder.{u1} ι (SemilatticeSup.toPartialOrder.{u1} ι _inst_2))) (HasCompl.compl.{u3} (Set.{u3} α) (BooleanAlgebra.toHasCompl.{u3} (Set.{u3} α) (Set.instBooleanAlgebraSet.{u3} α)) t))))))
+Case conversion may be inaccurate. Consider using '#align measure_theory.tendsto_uniformly_on_of_ae_tendsto' MeasureTheory.tendstoUniformlyOn_of_ae_tendsto'ₓ'. -/
/-- Egorov's theorem for finite measure spaces. -/
theorem tendstoUniformlyOn_of_ae_tendsto' [FiniteMeasure μ] (hf : ∀ n, StronglyMeasurable (f n))
(hg : StronglyMeasurable g) (hfg : ∀ᵐ x ∂μ, Tendsto (fun n => f n x) atTop (𝓝 (g x))) {ε : ℝ}
mathlib commit https://github.com/leanprover-community/mathlib/commit/e3fb84046afd187b710170887195d50bada934ee
@@ -57,7 +57,7 @@ theorem mem_notConvergentSeq_iff [Preorder ι] {x : α} :
#align measure_theory.egorov.mem_not_convergent_seq_iff MeasureTheory.Egorov.mem_notConvergentSeq_iff
theorem notConvergentSeq_antitone [Preorder ι] : Antitone (notConvergentSeq f g n) := fun j k hjk =>
- unionᵢ₂_mono' fun l hl => ⟨l, le_trans hjk hl, Subset.rfl⟩
+ iUnion₂_mono' fun l hl => ⟨l, le_trans hjk hl, Subset.rfl⟩
#align measure_theory.egorov.not_convergent_seq_antitone MeasureTheory.Egorov.notConvergentSeq_antitone
theorem measure_inter_notConvergentSeq_eq_zero [SemilatticeSup ι] [Nonempty ι]
@@ -78,8 +78,8 @@ theorem measure_inter_notConvergentSeq_eq_zero [SemilatticeSup ι] [Nonempty ι]
theorem notConvergentSeq_measurableSet [Preorder ι] [Countable ι]
(hf : ∀ n, strongly_measurable[m] (f n)) (hg : StronglyMeasurable g) :
MeasurableSet (notConvergentSeq f g n j) :=
- MeasurableSet.unionᵢ fun k =>
- MeasurableSet.unionᵢ fun hk =>
+ MeasurableSet.iUnion fun k =>
+ MeasurableSet.iUnion fun hk =>
StronglyMeasurable.measurableSet_lt stronglyMeasurable_const <| (hf k).dist hg
#align measure_theory.egorov.not_convergent_seq_measurable_set MeasureTheory.Egorov.notConvergentSeq_measurableSet
@@ -149,7 +149,7 @@ theorem unionNotConvergentSeq_measurableSet (hε : 0 < ε) (hf : ∀ n, Strongly
(hg : StronglyMeasurable g) (hsm : MeasurableSet s) (hs : μ s ≠ ∞)
(hfg : ∀ᵐ x ∂μ, x ∈ s → Tendsto (fun n => f n x) atTop (𝓝 (g x))) :
MeasurableSet <| unionNotConvergentSeq hε hf hg hsm hs hfg :=
- MeasurableSet.unionᵢ fun n => hsm.inter <| notConvergentSeq_measurableSet hf hg
+ MeasurableSet.iUnion fun n => hsm.inter <| notConvergentSeq_measurableSet hf hg
#align measure_theory.egorov.Union_not_convergent_seq_measurable_set MeasureTheory.Egorov.unionNotConvergentSeq_measurableSet
theorem measure_unionNotConvergentSeq (hε : 0 < ε) (hf : ∀ n, StronglyMeasurable (f n))
mathlib commit https://github.com/leanprover-community/mathlib/commit/d4437c68c8d350fc9d4e95e1e174409db35e30d7
@@ -225,7 +225,7 @@ theorem tendstoUniformlyOn_of_ae_tendsto (hf : ∀ n, StronglyMeasurable (f n))
#align measure_theory.tendsto_uniformly_on_of_ae_tendsto MeasureTheory.tendstoUniformlyOn_of_ae_tendsto
/-- Egorov's theorem for finite measure spaces. -/
-theorem tendstoUniformlyOn_of_ae_tendsto' [IsFiniteMeasure μ] (hf : ∀ n, StronglyMeasurable (f n))
+theorem tendstoUniformlyOn_of_ae_tendsto' [FiniteMeasure μ] (hf : ∀ n, StronglyMeasurable (f n))
(hg : StronglyMeasurable g) (hfg : ∀ᵐ x ∂μ, Tendsto (fun n => f n x) atTop (𝓝 (g x))) {ε : ℝ}
(hε : 0 < ε) :
∃ t, MeasurableSet t ∧ μ t ≤ ENNReal.ofReal ε ∧ TendstoUniformlyOn f g atTop (tᶜ) :=
mathlib commit https://github.com/leanprover-community/mathlib/commit/4c586d291f189eecb9d00581aeb3dd998ac34442
@@ -204,7 +204,7 @@ end Egorov
variable [SemilatticeSup ι] [Nonempty ι] [Countable ι] {γ : Type _} [TopologicalSpace γ]
{f : ι → α → β} {g : α → β} {s : Set α}
-/- ./././Mathport/Syntax/Translate/Basic.lean:628:2: warning: expanding binder collection (t «expr ⊆ » s) -/
+/- ./././Mathport/Syntax/Translate/Basic.lean:635:2: warning: expanding binder collection (t «expr ⊆ » s) -/
/-- **Egorov's theorem**: If `f : ι → α → β` is a sequence of strongly measurable functions that
converges to `g : α → β` almost everywhere on a measurable set `s` of finite measure,
then for all `ε > 0`, there exists a subset `t ⊆ s` such that `μ t ≤ ε` and `f` converges to `g`
mathlib commit https://github.com/leanprover-community/mathlib/commit/eb0cb4511aaef0da2462207b67358a0e1fe1e2ee
@@ -28,7 +28,7 @@ convergence in measure.
noncomputable section
-open Classical MeasureTheory NNReal Ennreal Topology
+open Classical MeasureTheory NNReal ENNReal Topology
namespace MeasureTheory
@@ -105,14 +105,14 @@ variable [SemilatticeSup ι] [Nonempty ι] [Countable ι]
theorem exists_notConvergentSeq_lt (hε : 0 < ε) (hf : ∀ n, StronglyMeasurable (f n))
(hg : StronglyMeasurable g) (hsm : MeasurableSet s) (hs : μ s ≠ ∞)
(hfg : ∀ᵐ x ∂μ, x ∈ s → Tendsto (fun n => f n x) atTop (𝓝 (g x))) (n : ℕ) :
- ∃ j : ι, μ (s ∩ notConvergentSeq f g n j) ≤ Ennreal.ofReal (ε * 2⁻¹ ^ n) :=
+ ∃ j : ι, μ (s ∩ notConvergentSeq f g n j) ≤ ENNReal.ofReal (ε * 2⁻¹ ^ n) :=
by
obtain ⟨N, hN⟩ :=
- (Ennreal.tendsto_atTop Ennreal.zero_ne_top).1
- (measure_not_convergent_seq_tendsto_zero hf hg hsm hs hfg n) (Ennreal.ofReal (ε * 2⁻¹ ^ n)) _
+ (ENNReal.tendsto_atTop ENNReal.zero_ne_top).1
+ (measure_not_convergent_seq_tendsto_zero hf hg hsm hs hfg n) (ENNReal.ofReal (ε * 2⁻¹ ^ n)) _
· rw [zero_add] at hN
exact ⟨N, (hN N le_rfl).2⟩
- · rw [gt_iff_lt, Ennreal.ofReal_pos]
+ · rw [gt_iff_lt, ENNReal.ofReal_pos]
exact mul_pos hε (pow_pos (by norm_num) n)
#align measure_theory.egorov.exists_not_convergent_seq_lt MeasureTheory.Egorov.exists_notConvergentSeq_lt
@@ -131,7 +131,7 @@ theorem notConvergentSeqLtIndex_spec (hε : 0 < ε) (hf : ∀ n, StronglyMeasura
(hg : StronglyMeasurable g) (hsm : MeasurableSet s) (hs : μ s ≠ ∞)
(hfg : ∀ᵐ x ∂μ, x ∈ s → Tendsto (fun n => f n x) atTop (𝓝 (g x))) (n : ℕ) :
μ (s ∩ notConvergentSeq f g n (notConvergentSeqLtIndex hε hf hg hsm hs hfg n)) ≤
- Ennreal.ofReal (ε * 2⁻¹ ^ n) :=
+ ENNReal.ofReal (ε * 2⁻¹ ^ n) :=
Classical.choose_spec <| exists_notConvergentSeq_lt hε hf hg hsm hs hfg n
#align measure_theory.egorov.not_convergent_seq_lt_index_spec MeasureTheory.Egorov.notConvergentSeqLtIndex_spec
@@ -155,15 +155,15 @@ theorem unionNotConvergentSeq_measurableSet (hε : 0 < ε) (hf : ∀ n, Strongly
theorem measure_unionNotConvergentSeq (hε : 0 < ε) (hf : ∀ n, StronglyMeasurable (f n))
(hg : StronglyMeasurable g) (hsm : MeasurableSet s) (hs : μ s ≠ ∞)
(hfg : ∀ᵐ x ∂μ, x ∈ s → Tendsto (fun n => f n x) atTop (𝓝 (g x))) :
- μ (unionNotConvergentSeq hε hf hg hsm hs hfg) ≤ Ennreal.ofReal ε :=
+ μ (unionNotConvergentSeq hε hf hg hsm hs hfg) ≤ ENNReal.ofReal ε :=
by
refine'
le_trans (measure_Union_le _)
(le_trans
- (Ennreal.tsum_le_tsum <| not_convergent_seq_lt_index_spec (half_pos hε) hf hg hsm hs hfg) _)
- simp_rw [Ennreal.ofReal_mul (half_pos hε).le]
- rw [Ennreal.tsum_mul_left, ← Ennreal.ofReal_tsum_of_nonneg, inv_eq_one_div, tsum_geometric_two, ←
- Ennreal.ofReal_mul (half_pos hε).le, div_mul_cancel ε two_ne_zero]
+ (ENNReal.tsum_le_tsum <| not_convergent_seq_lt_index_spec (half_pos hε) hf hg hsm hs hfg) _)
+ simp_rw [ENNReal.ofReal_mul (half_pos hε).le]
+ rw [ENNReal.tsum_mul_left, ← ENNReal.ofReal_tsum_of_nonneg, inv_eq_one_div, tsum_geometric_two, ←
+ ENNReal.ofReal_mul (half_pos hε).le, div_mul_cancel ε two_ne_zero]
· exact le_rfl
· exact fun n => pow_nonneg (by norm_num) _
· rw [inv_eq_one_div]
@@ -216,7 +216,7 @@ theorem tendstoUniformlyOn_of_ae_tendsto (hf : ∀ n, StronglyMeasurable (f n))
(hg : StronglyMeasurable g) (hsm : MeasurableSet s) (hs : μ s ≠ ∞)
(hfg : ∀ᵐ x ∂μ, x ∈ s → Tendsto (fun n => f n x) atTop (𝓝 (g x))) {ε : ℝ} (hε : 0 < ε) :
∃ (t : _)(_ : t ⊆ s),
- MeasurableSet t ∧ μ t ≤ Ennreal.ofReal ε ∧ TendstoUniformlyOn f g atTop (s \ t) :=
+ MeasurableSet t ∧ μ t ≤ ENNReal.ofReal ε ∧ TendstoUniformlyOn f g atTop (s \ t) :=
⟨Egorov.unionNotConvergentSeq hε hf hg hsm hs hfg,
Egorov.unionNotConvergentSeq_subset hε hf hg hsm hs hfg,
Egorov.unionNotConvergentSeq_measurableSet hε hf hg hsm hs hfg,
@@ -228,7 +228,7 @@ theorem tendstoUniformlyOn_of_ae_tendsto (hf : ∀ n, StronglyMeasurable (f n))
theorem tendstoUniformlyOn_of_ae_tendsto' [IsFiniteMeasure μ] (hf : ∀ n, StronglyMeasurable (f n))
(hg : StronglyMeasurable g) (hfg : ∀ᵐ x ∂μ, Tendsto (fun n => f n x) atTop (𝓝 (g x))) {ε : ℝ}
(hε : 0 < ε) :
- ∃ t, MeasurableSet t ∧ μ t ≤ Ennreal.ofReal ε ∧ TendstoUniformlyOn f g atTop (tᶜ) :=
+ ∃ t, MeasurableSet t ∧ μ t ≤ ENNReal.ofReal ε ∧ TendstoUniformlyOn f g atTop (tᶜ) :=
by
obtain ⟨t, _, ht, htendsto⟩ :=
tendsto_uniformly_on_of_ae_tendsto hf hg MeasurableSet.univ (measure_ne_top μ univ) _ hε
mathlib commit https://github.com/leanprover-community/mathlib/commit/bd9851ca476957ea4549eb19b40e7b5ade9428cc
mul
-div
cancellation lemmas (#11530)
Lemma names around cancellation of multiplication and division are a mess.
This PR renames a handful of them according to the following table (each big row contains the multiplicative statement, then the three rows contain the GroupWithZero
lemma name, the Group
lemma, the AddGroup
lemma name).
| Statement | New name | Old name | |
@@ -152,7 +152,7 @@ theorem measure_iUnionNotConvergentSeq (hε : 0 < ε) (hf : ∀ n, StronglyMeasu
(ENNReal.tsum_le_tsum <| notConvergentSeqLTIndex_spec (half_pos hε) hf hg hsm hs hfg) _)
simp_rw [ENNReal.ofReal_mul (half_pos hε).le]
rw [ENNReal.tsum_mul_left, ← ENNReal.ofReal_tsum_of_nonneg, inv_eq_one_div, tsum_geometric_two,
- ← ENNReal.ofReal_mul (half_pos hε).le, div_mul_cancel ε two_ne_zero]
+ ← ENNReal.ofReal_mul (half_pos hε).le, div_mul_cancel₀ ε two_ne_zero]
· exact fun n => pow_nonneg (by norm_num) _
· rw [inv_eq_one_div]
exact summable_geometric_two
open Classical
(#11199)
We remove all but one open Classical
s, instead preferring to use open scoped Classical
. The only real side-effect this led to is moving a couple declarations to use Exists.choose
instead of Classical.choose
.
The first few commits are explicitly labelled regex replaces for ease of review.
@@ -25,7 +25,8 @@ convergence in measure.
noncomputable section
-open Classical MeasureTheory NNReal ENNReal Topology
+open scoped Classical
+open MeasureTheory NNReal ENNReal Topology
namespace MeasureTheory
@@ -48,7 +48,7 @@ variable {n : ℕ} {i j : ι} {s : Set α} {ε : ℝ} {f : ι → α → β} {g
theorem mem_notConvergentSeq_iff [Preorder ι] {x : α} :
x ∈ notConvergentSeq f g n j ↔ ∃ k ≥ j, 1 / (n + 1 : ℝ) < dist (f k x) (g x) := by
- simp_rw [notConvergentSeq, Set.mem_iUnion, exists_prop]; rfl
+ simp_rw [notConvergentSeq, Set.mem_iUnion, exists_prop, mem_setOf]
#align measure_theory.egorov.mem_not_convergent_seq_iff MeasureTheory.Egorov.mem_notConvergentSeq_iff
theorem notConvergentSeq_antitone [Preorder ι] : Antitone (notConvergentSeq f g n) :=
∃ x ∈ s, _
instead of ∃ (x) (_ : x ∈ s), _
(#9184)
Search for [∀∃].*(_
and manually replace some occurrences with more readable versions.
In case of ∀
, the new expressions are defeq to the old ones.
In case of ∃
, they differ by exists_prop
.
In some rare cases, golf proofs that needed fixing.
@@ -47,9 +47,8 @@ def notConvergentSeq [Preorder ι] (f : ι → α → β) (g : α → β) (n :
variable {n : ℕ} {i j : ι} {s : Set α} {ε : ℝ} {f : ι → α → β} {g : α → β}
theorem mem_notConvergentSeq_iff [Preorder ι] {x : α} :
- x ∈ notConvergentSeq f g n j ↔ ∃ (k : _) (_ : j ≤ k), 1 / (n + 1 : ℝ) < dist (f k x) (g x) := by
- simp_rw [notConvergentSeq, Set.mem_iUnion]
- rfl
+ x ∈ notConvergentSeq f g n j ↔ ∃ k ≥ j, 1 / (n + 1 : ℝ) < dist (f k x) (g x) := by
+ simp_rw [notConvergentSeq, Set.mem_iUnion, exists_prop]; rfl
#align measure_theory.egorov.mem_not_convergent_seq_iff MeasureTheory.Egorov.mem_notConvergentSeq_iff
theorem notConvergentSeq_antitone [Preorder ι] : Antitone (notConvergentSeq f g n) :=
@@ -200,8 +199,7 @@ an arbitrarily small set. -/
theorem tendstoUniformlyOn_of_ae_tendsto (hf : ∀ n, StronglyMeasurable (f n))
(hg : StronglyMeasurable g) (hsm : MeasurableSet s) (hs : μ s ≠ ∞)
(hfg : ∀ᵐ x ∂μ, x ∈ s → Tendsto (fun n => f n x) atTop (𝓝 (g x))) {ε : ℝ} (hε : 0 < ε) :
- ∃ (t : _) (_ : t ⊆ s),
- MeasurableSet t ∧ μ t ≤ ENNReal.ofReal ε ∧ TendstoUniformlyOn f g atTop (s \ t) :=
+ ∃ t ⊆ s, MeasurableSet t ∧ μ t ≤ ENNReal.ofReal ε ∧ TendstoUniformlyOn f g atTop (s \ t) :=
⟨Egorov.iUnionNotConvergentSeq hε hf hg hsm hs hfg,
Egorov.iUnionNotConvergentSeq_subset hε hf hg hsm hs hfg,
Egorov.iUnionNotConvergentSeq_measurableSet hε hf hg hsm hs hfg,
Type _
and Sort _
(#6499)
We remove all possible occurences of Type _
and Sort _
in favor of Type*
and Sort*
.
This has nice performance benefits.
@@ -31,7 +31,7 @@ namespace MeasureTheory
open Set Filter TopologicalSpace
-variable {α β ι : Type _} {m : MeasurableSpace α} [MetricSpace β] {μ : Measure α}
+variable {α β ι : Type*} {m : MeasurableSpace α} [MetricSpace β] {μ : Measure α}
namespace Egorov
@@ -187,7 +187,7 @@ theorem tendstoUniformlyOn_diff_iUnionNotConvergentSeq (hε : 0 < ε)
end Egorov
-variable [SemilatticeSup ι] [Nonempty ι] [Countable ι] {γ : Type _} [TopologicalSpace γ]
+variable [SemilatticeSup ι] [Nonempty ι] [Countable ι] {γ : Type*} [TopologicalSpace γ]
{f : ι → α → β} {g : α → β} {s : Set α}
/-- **Egorov's theorem**: If `f : ι → α → β` is a sequence of strongly measurable functions that
@@ -108,24 +108,24 @@ theorem exists_notConvergentSeq_lt (hε : 0 < ε) (hf : ∀ n, StronglyMeasurabl
exact ⟨N, (hN N le_rfl).2⟩
#align measure_theory.egorov.exists_not_convergent_seq_lt MeasureTheory.Egorov.exists_notConvergentSeq_lt
-/-- Given some `ε > 0`, `notConvergentSeqLtIndex` provides the index such that
+/-- Given some `ε > 0`, `notConvergentSeqLTIndex` provides the index such that
`notConvergentSeq` (intersected with a set of finite measure) has measure less than
`ε * 2⁻¹ ^ n`.
This definition is useful for Egorov's theorem. -/
-def notConvergentSeqLtIndex (hε : 0 < ε) (hf : ∀ n, StronglyMeasurable (f n))
+def notConvergentSeqLTIndex (hε : 0 < ε) (hf : ∀ n, StronglyMeasurable (f n))
(hg : StronglyMeasurable g) (hsm : MeasurableSet s) (hs : μ s ≠ ∞)
(hfg : ∀ᵐ x ∂μ, x ∈ s → Tendsto (fun n => f n x) atTop (𝓝 (g x))) (n : ℕ) : ι :=
Classical.choose <| exists_notConvergentSeq_lt hε hf hg hsm hs hfg n
-#align measure_theory.egorov.not_convergent_seq_lt_index MeasureTheory.Egorov.notConvergentSeqLtIndex
+#align measure_theory.egorov.not_convergent_seq_lt_index MeasureTheory.Egorov.notConvergentSeqLTIndex
-theorem notConvergentSeqLtIndex_spec (hε : 0 < ε) (hf : ∀ n, StronglyMeasurable (f n))
+theorem notConvergentSeqLTIndex_spec (hε : 0 < ε) (hf : ∀ n, StronglyMeasurable (f n))
(hg : StronglyMeasurable g) (hsm : MeasurableSet s) (hs : μ s ≠ ∞)
(hfg : ∀ᵐ x ∂μ, x ∈ s → Tendsto (fun n => f n x) atTop (𝓝 (g x))) (n : ℕ) :
- μ (s ∩ notConvergentSeq f g n (notConvergentSeqLtIndex hε hf hg hsm hs hfg n)) ≤
+ μ (s ∩ notConvergentSeq f g n (notConvergentSeqLTIndex hε hf hg hsm hs hfg n)) ≤
ENNReal.ofReal (ε * 2⁻¹ ^ n) :=
Classical.choose_spec <| exists_notConvergentSeq_lt hε hf hg hsm hs hfg n
-#align measure_theory.egorov.not_convergent_seq_lt_index_spec MeasureTheory.Egorov.notConvergentSeqLtIndex_spec
+#align measure_theory.egorov.not_convergent_seq_lt_index_spec MeasureTheory.Egorov.notConvergentSeqLTIndex_spec
/-- Given some `ε > 0`, `iUnionNotConvergentSeq` is the union of `notConvergentSeq` with
specific indices such that `iUnionNotConvergentSeq` has measure less equal than `ε`.
@@ -134,7 +134,7 @@ This definition is useful for Egorov's theorem. -/
def iUnionNotConvergentSeq (hε : 0 < ε) (hf : ∀ n, StronglyMeasurable (f n))
(hg : StronglyMeasurable g) (hsm : MeasurableSet s) (hs : μ s ≠ ∞)
(hfg : ∀ᵐ x ∂μ, x ∈ s → Tendsto (fun n => f n x) atTop (𝓝 (g x))) : Set α :=
- ⋃ n, s ∩ notConvergentSeq f g n (notConvergentSeqLtIndex (half_pos hε) hf hg hsm hs hfg n)
+ ⋃ n, s ∩ notConvergentSeq f g n (notConvergentSeqLTIndex (half_pos hε) hf hg hsm hs hfg n)
#align measure_theory.egorov.Union_not_convergent_seq MeasureTheory.Egorov.iUnionNotConvergentSeq
theorem iUnionNotConvergentSeq_measurableSet (hε : 0 < ε) (hf : ∀ n, StronglyMeasurable (f n))
@@ -149,7 +149,7 @@ theorem measure_iUnionNotConvergentSeq (hε : 0 < ε) (hf : ∀ n, StronglyMeasu
(hfg : ∀ᵐ x ∂μ, x ∈ s → Tendsto (fun n => f n x) atTop (𝓝 (g x))) :
μ (iUnionNotConvergentSeq hε hf hg hsm hs hfg) ≤ ENNReal.ofReal ε := by
refine' le_trans (measure_iUnion_le _) (le_trans
- (ENNReal.tsum_le_tsum <| notConvergentSeqLtIndex_spec (half_pos hε) hf hg hsm hs hfg) _)
+ (ENNReal.tsum_le_tsum <| notConvergentSeqLTIndex_spec (half_pos hε) hf hg hsm hs hfg) _)
simp_rw [ENNReal.ofReal_mul (half_pos hε).le]
rw [ENNReal.tsum_mul_left, ← ENNReal.ofReal_tsum_of_nonneg, inv_eq_one_div, tsum_geometric_two,
← ENNReal.ofReal_mul (half_pos hε).le, div_mul_cancel ε two_ne_zero]
@@ -174,7 +174,7 @@ theorem tendstoUniformlyOn_diff_iUnionNotConvergentSeq (hε : 0 < ε)
intro δ hδ
obtain ⟨N, hN⟩ := exists_nat_one_div_lt hδ
rw [eventually_atTop]
- refine' ⟨Egorov.notConvergentSeqLtIndex (half_pos hε) hf hg hsm hs hfg N, fun n hn x hx => _⟩
+ refine' ⟨Egorov.notConvergentSeqLTIndex (half_pos hε) hf hg hsm hs hfg N, fun n hn x hx => _⟩
simp only [Set.mem_diff, Egorov.iUnionNotConvergentSeq, not_exists, Set.mem_iUnion,
Set.mem_inter_iff, not_and, exists_and_left] at hx
obtain ⟨hxs, hx⟩ := hx
@@ -2,14 +2,11 @@
Copyright (c) 2022 Kexing Ying. All rights reserved.
Released under Apache 2.0 license as described in the file LICENSE.
Authors: Kexing Ying
-
-! This file was ported from Lean 3 source module measure_theory.function.egorov
-! leanprover-community/mathlib commit f2ce6086713c78a7f880485f7917ea547a215982
-! Please do not edit these lines, except to modify the commit id
-! if you have ported upstream changes.
-/
import Mathlib.MeasureTheory.Function.StronglyMeasurable.Basic
+#align_import measure_theory.function.egorov from "leanprover-community/mathlib"@"f2ce6086713c78a7f880485f7917ea547a215982"
+
/-!
# Egorov theorem
@@ -216,7 +216,7 @@ theorem tendstoUniformlyOn_of_ae_tendsto (hf : ∀ n, StronglyMeasurable (f n))
theorem tendstoUniformlyOn_of_ae_tendsto' [IsFiniteMeasure μ] (hf : ∀ n, StronglyMeasurable (f n))
(hg : StronglyMeasurable g) (hfg : ∀ᵐ x ∂μ, Tendsto (fun n => f n x) atTop (𝓝 (g x))) {ε : ℝ}
(hε : 0 < ε) :
- ∃ t, MeasurableSet t ∧ μ t ≤ ENNReal.ofReal ε ∧ TendstoUniformlyOn f g atTop (tᶜ) := by
+ ∃ t, MeasurableSet t ∧ μ t ≤ ENNReal.ofReal ε ∧ TendstoUniformlyOn f g atTop tᶜ := by
have ⟨t, _, ht, htendsto⟩ := tendstoUniformlyOn_of_ae_tendsto hf hg MeasurableSet.univ
(measure_ne_top μ Set.univ) (by filter_upwards [hfg] with _ htendsto _ using htendsto) hε
refine' ⟨_, ht, _⟩
at
and goals (#5387)
Changes are of the form
some_tactic at h⊢
-> some_tactic at h ⊢
some_tactic at h
-> some_tactic at h
@@ -183,7 +183,7 @@ theorem tendstoUniformlyOn_diff_iUnionNotConvergentSeq (hε : 0 < ε)
obtain ⟨hxs, hx⟩ := hx
specialize hx hxs N
rw [Egorov.mem_notConvergentSeq_iff] at hx
- push_neg at hx
+ push_neg at hx
rw [dist_comm]
exact lt_of_le_of_lt (hx n hn) hN
#align measure_theory.egorov.tendsto_uniformly_on_diff_Union_not_convergent_seq MeasureTheory.Egorov.tendstoUniformlyOn_diff_iUnionNotConvergentSeq
@@ -44,7 +44,7 @@ set of elements such that `f k x` and `g x` are separated by at least `1 / (n +
This definition is useful for Egorov's theorem. -/
def notConvergentSeq [Preorder ι] (f : ι → α → β) (g : α → β) (n : ℕ) (j : ι) : Set α :=
- ⋃ (k) (_hk : j ≤ k), { x | 1 / (n + 1 : ℝ) < dist (f k x) (g x) }
+ ⋃ (k) (_ : j ≤ k), { x | 1 / (n + 1 : ℝ) < dist (f k x) (g x) }
#align measure_theory.egorov.not_convergent_seq MeasureTheory.Egorov.notConvergentSeq
variable {n : ℕ} {i j : ι} {s : Set α} {ε : ℝ} {f : ι → α → β} {g : α → β}
Is
of Foo
which is ported from is_foo
(#4639)
I have misported is_foo
to Foo
because I misunderstood the rule for IsLawfulFoo
.
This PR recover Is
of Foo
which is ported from is_foo
.
This PR also renames some misported theorems.
@@ -213,7 +213,7 @@ theorem tendstoUniformlyOn_of_ae_tendsto (hf : ∀ n, StronglyMeasurable (f n))
#align measure_theory.tendsto_uniformly_on_of_ae_tendsto MeasureTheory.tendstoUniformlyOn_of_ae_tendsto
/-- Egorov's theorem for finite measure spaces. -/
-theorem tendstoUniformlyOn_of_ae_tendsto' [FiniteMeasure μ] (hf : ∀ n, StronglyMeasurable (f n))
+theorem tendstoUniformlyOn_of_ae_tendsto' [IsFiniteMeasure μ] (hf : ∀ n, StronglyMeasurable (f n))
(hg : StronglyMeasurable g) (hfg : ∀ᵐ x ∂μ, Tendsto (fun n => f n x) atTop (𝓝 (g x))) {ε : ℝ}
(hε : 0 < ε) :
∃ t, MeasurableSet t ∧ μ t ≤ ENNReal.ofReal ε ∧ TendstoUniformlyOn f g atTop (tᶜ) := by
@@ -131,7 +131,7 @@ theorem notConvergentSeqLtIndex_spec (hε : 0 < ε) (hf : ∀ n, StronglyMeasura
#align measure_theory.egorov.not_convergent_seq_lt_index_spec MeasureTheory.Egorov.notConvergentSeqLtIndex_spec
/-- Given some `ε > 0`, `iUnionNotConvergentSeq` is the union of `notConvergentSeq` with
-specific indicies such that `iUnionNotConvergentSeq` has measure less equal than `ε`.
+specific indices such that `iUnionNotConvergentSeq` has measure less equal than `ε`.
This definition is useful for Egorov's theorem. -/
def iUnionNotConvergentSeq (hε : 0 < ε) (hf : ∀ n, StronglyMeasurable (f n))
The unported dependencies are
algebra.order.module
init.core
linear_algebra.free_module.finite.rank
algebra.order.monoid.cancel.defs
algebra.abs
algebra.group_power.lemmas
init.data.list.basic
linear_algebra.free_module.rank
algebra.order.monoid.cancel.basic
init.data.list.default
topology.subset_properties
init.logic
The following 1 dependencies have changed in mathlib3 since they were ported, which may complicate porting this file