Skip to content

Commit cc3e5cd

Browse files
committed
generalize oscillation
1 parent 4c626f3 commit cc3e5cd

1 file changed

Lines changed: 19 additions & 10 deletions

File tree

Mathlib/Analysis/Oscillation.lean

Lines changed: 19 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
/-
22
Copyright (c) 2024 James Sundstrom. All rights reserved.
33
Released under Apache 2.0 license as described in the file LICENSE.
4-
Authors: James Sundstrom
4+
Authors: James Sundstrom, Lua Viana Reis
55
-/
66
module
77

@@ -12,10 +12,10 @@ public import Mathlib.Topology.EMetricSpace.Diam
1212
/-!
1313
# Oscillation
1414
15-
In this file we define the oscillation of a function `f: E → F` at a point `x` of `E`. (`E` is
16-
required to be a TopologicalSpace and `F` a PseudoEMetricSpace.) The oscillation of `f` at `x` is
17-
defined to be the infimum of `diam f '' N` for all neighborhoods `N` of `x`. We also define
18-
`oscillationWithin f D x`, which is the oscillation at `x` of `f` restricted to `D`.
15+
In this file we define the oscillation of a function `f: E → F` along a filter `l` of `E`. (`F` is
16+
required to be a PseudoEMetricSpace.) The oscillation of `f` at `l` is
17+
defined to be the infimum of `diam f '' N` for all sets `N` in `l`. We also define
18+
`oscillationWithin f D l`, which is the oscillation at `l` of `f` restricted to `D`.
1919
2020
We also prove some simple facts about oscillation, most notably that the oscillation of `f`
2121
at `x` is 0 if and only if `f` is continuous at `x`, with versions for both `oscillation` and
@@ -28,20 +28,29 @@ oscillation, oscillationWithin
2828

2929
@[expose] public section
3030

31-
open Topology Metric Set ENNReal
31+
open Topology Metric Set ENNReal Filter
3232

3333
universe u v
3434

3535
variable {E : Type u} {F : Type v} [PseudoEMetricSpace F]
3636

37+
/-- The oscillation of `f : E → F` along `l`. -/
38+
noncomputable def oscillation (f : E → F) (l : Filter E) : ENNReal :=
39+
⨅ S ∈ l.map f, ediam S
40+
3741
/-- The oscillation of `f : E → F` at `x`. -/
38-
noncomputable def oscillation [TopologicalSpace E] (f : E → F) (x : E) : ENNReal :=
39-
⨅ S ∈ (𝓝 x).map f, ediam S
42+
noncomputable def oscillationAt [TopologicalSpace E] (f : E → F) (x : E) : ENNReal :=
43+
oscillation f (𝓝 x)
44+
45+
/-- The oscillation of `f : E → F` within `D` along `l`. -/
46+
noncomputable def oscillationWithin (f : E → F) (D : Set E) (l : Filter E) :
47+
ENNReal :=
48+
oscillation f (l ⊓ 𝓟 D)
4049

4150
/-- The oscillation of `f : E → F` within `D` at `x`. -/
42-
noncomputable def oscillationWithin [TopologicalSpace E] (f : E → F) (D : Set E) (x : E) :
51+
noncomputable def oscillationWithinAt [TopologicalSpace E] (f : E → F) (D : Set E) (x : E) :
4352
ENNReal :=
44-
⨅ S ∈ (𝓝[D] x).map f, ediam S
53+
oscillationWithin f D (𝓝 x)
4554

4655
/-- The oscillation of `f` at `x` within a neighborhood `D` of `x` is equal to `oscillation f x` -/
4756
theorem oscillationWithin_nhds_eq_oscillation [TopologicalSpace E] (f : E → F) (D : Set E) (x : E)

0 commit comments

Comments
 (0)