Documentation

Mathlib.Topology.UniformSpace.Ultra.Basic

Ultrametric (nonarchimedean) uniform spaces #

Ultrametric (nonarchimedean) uniform spaces are ones that generalize ultrametric spaces by having a uniformity based on equivalence relations.

Main definitions #

In this file we define IsUltraUniformity, a Prop mixin typeclass.

Main results #

Implementation notes #

As in the Mathlib/Topology/UniformSpace/Defs.lean file, we do not reuse Mathlib/Data/Rel.lean but rather extend the relation properties as needed.

TODOs #

References #

theorem IsTransitiveRel.prod_subset_trans {X : Type u_1} {s : SetRel X X} {t u v : Set X} [s.IsTrans] (htu : t ×ˢ u s) (huv : u ×ˢ v s) (hu : u.Nonempty) :
t ×ˢ v s
theorem IsTransitiveRel.mem_filter_prod_trans {X : Type u_1} {s : SetRel X X} {f g h : Filter X} [g.NeBot] [s.IsTrans] (hfg : s f ×ˢ g) (hgh : s g ×ˢ h) :
s f ×ˢ h
theorem ball_subset_of_mem {X : Type u_1} {V : SetRel X X} [V.IsTrans] {x y : X} (hy : y UniformSpace.ball x V) :
theorem ball_eq_of_mem {X : Type u_1} {V : SetRel X X} [V.IsSymm] [V.IsTrans] {x y : X} (hy : y UniformSpace.ball x V) :

A uniform space is ultrametric if the uniformity 𝓤 X has a basis of equivalence relations.

Instances
    theorem IsUltraUniformity.mk_of_hasBasis {X : Type u_1} [UniformSpace X] {ι : Type u_2} {p : ιProp} {s : ιSetRel X X} (h_basis : (uniformity X).HasBasis p s) (h_symm : ∀ (i : ι), p i(s i).IsSymm) (h_trans : ∀ (i : ι), p i(s i).IsTrans) :
    theorem UniformSpace.isOpen_ball_of_mem_uniformity {X : Type u_1} [UniformSpace X] (x : X) {V : SetRel X X} [V.IsTrans] (h' : V uniformity X) :
    IsOpen (ball x V)
    theorem UniformSpace.nhds_basis_clopens {X : Type u_1} [UniformSpace X] [IsUltraUniformity X] (x : X) :
    (nhds x).HasBasis (fun (s : Set X) => x s IsClopen s) id

    A uniform space with a nonarchimedean uniformity is zero-dimensional.