Basic results on uniform spaces #
Uniform spaces are a generalization of metric spaces and topological groups.
Main definitions #
In this file we define a complete lattice structure on the type UniformSpace X
of uniform structures on X
, as well as the pullback (UniformSpace.comap
) of uniform structures
coming from the pullback of filters.
Like distance functions, uniform structures cannot be pushed forward in general.
Notations #
Localized in Uniformity
, we have the notation 𝓤 X
for the uniformity on a uniform space X
,
and ○
for composition of relations, seen as terms with type Set (X × X)
.
References #
The formalization uses the books:
- N. Bourbaki, General Topology
- [I. M. James, Topologies and Uniformities][james1999]
But it makes a more systematic use of the filter library.
If s ∈ 𝓤 α
, then for any natural n
, for a subset t
of a sufficiently small set in 𝓤 α
,
we have t ○ t ○ ... ○ t ⊆ s
(n
compositions).
If s ∈ 𝓤 α
, then for a subset t
of a sufficiently small set in 𝓤 α
,
we have t ○ t ⊆ s
.
Balls in uniform spaces #
Neighborhoods in uniform spaces #
Entourages are neighborhoods of the diagonal.
Entourages are neighborhoods of the diagonal.
Entourages are neighborhoods of the diagonal.
Closure and interior in uniform spaces #
Closed entourages form a basis of the uniformity filter.
Alias of isOpen_iff_isOpen_ball_subset
.
The uniform neighborhoods of all points of a dense set cover the whole space.
The uniform neighborhoods of all points of a dense indexed collection cover the whole space.
Uniformity bases #
Open elements of 𝓤 α
form a basis of 𝓤 α
.
Open elements s : Set (α × α)
of 𝓤 α
such that (x, y) ∈ s ↔ (y, x) ∈ s
form a basis
of 𝓤 α
.
Equations
- instPartialOrderUniformSpace = PartialOrder.lift (fun (u : UniformSpace α) => uniformity α) ⋯
Equations
- instInfSetUniformSpace = { sInf := fun (s : Set (UniformSpace α)) => UniformSpace.ofCore { uniformity := ⨅ u ∈ s, uniformity α, refl := ⋯, symm := ⋯, comp := ⋯ } }
Equations
- instTopUniformSpace = { top := UniformSpace.mk ⊤ ⋯ ⋯ ⋯ }
Equations
- instBotUniformSpace = { bot := UniformSpace.mk (Filter.principal idRel) ⋯ ⋯ ⋯ }
Equations
- instMinUniformSpace = { min := fun (u₁ u₂ : UniformSpace α) => UniformSpace.mk (uniformity α ⊓ uniformity α) ⋯ ⋯ ⋯ }
Equations
- instCompleteLatticeUniformSpace = CompleteLattice.mk ⋯ ⋯ ⋯ ⋯ ⋯ ⋯
Equations
- inhabitedUniformSpace = { default := ⊥ }
Equations
- inhabitedUniformSpaceCore = { default := default.toCore }
Equations
- instUniqueUniformSpaceOfSubsingleton = { toInhabited := inhabitedUniformSpace, uniq := ⋯ }
Given f : α → β
and a uniformity u
on β
, the inverse image of u
under f
is the inverse image in the filter sense of the induced function α × α → β × β
.
See note [reducible non-instances].
Equations
- UniformSpace.comap f u = UniformSpace.mk (Filter.comap (fun (p : α × α) => (f p.1, f p.2)) (uniformity β)) ⋯ ⋯ ⋯
Instances For
Uniform space structure on ULift α
.
Equations
Uniform space structure on αᵒᵈ
.
Equations
- OrderDual.instUniformSpace = inst✝
A uniform space with the discrete uniformity has the discrete topology.
Equations
Equations
- instUniformSpaceAdditive = inst✝
Equations
Equations
Equations
Equations
Equations
Alias of UniformContinuous.prodMap
.
A version of UniformContinuous.inf_dom_left
for binary functions
A version of UniformContinuous.inf_dom_right
for binary functions
A version of uniformContinuous_sInf_dom
for binary functions
Uniform continuity for functions of two variables.
Equations
Instances For
Uniformity on a disjoint union. Entourages of the diagonal in the union are obtained by taking independently an entourage of the diagonal in the first part, and an entourage of the diagonal in the second part.
Equations
- One or more equations did not get rendered due to their size.
The union of an entourage of the diagonal in each set of a disjoint union is again an entourage of the diagonal.
Expressing continuity properties in uniform spaces #
We reformulate the various continuity properties of functions taking values in a uniform space
in terms of the uniformity in the target. Since the same lemmas (essentially with the same names)
also exist for metric spaces and emetric spaces (reformulating things in terms of the distance or
the edistance in the target), we put them in a namespace Uniform
here.
In the metric and emetric space setting, there are also similar lemmas where one assumes that both the source and the target are metric spaces, reformulating things in terms of the distance on both sides. These lemmas are generally written without primes, and the versions where only the target is a metric space is primed. We follow the same convention here, thus giving lemmas with primes.
Consider two functions f
and g
which coincide on a set s
and are continuous there.
Then there is an open neighborhood of s
on which f
and g
are uniformly close.