Documentation

Mathlib.Topology.LocallyClosed

Locally closed sets #

In this file, we develop API for the predicates IsLocallyClosedAt, expressing that a set is locally closed at a point, and IsLocallyClosed, expressing that a set is locally closed. These are defined earlier, but most of their API should be in this file.

Main results #

theorem mem_coborder_iff_imp {X : Type u_1} [TopologicalSpace X] {s : Set X} {x : X} :
x coborder s x closure sx s
theorem subset_coborder {X : Type u_1} [TopologicalSpace X] {s : Set X} :
scoborder s
theorem IsClosed.coborder_eq {X : Type u_1} [TopologicalSpace X] {s : Set X} :

Alias of the reverse direction of coborder_eq_univ_iff.

theorem dense_coborder {X : Type u_1} [TopologicalSpace X] {s : Set X} :

The coborder of any set is dense

theorem IsOpen.coborder_eq {X : Type u_1} [TopologicalSpace X] {s : Set X} :

Alias of the reverse direction of coborder_eq_compl_frontier_iff.

theorem IsOpenMap.coborder_preimage_subset {X : Type u_1} {Y : Type u_2} [TopologicalSpace X] [TopologicalSpace Y] {f : XY} (hf : IsOpenMap f) (s : Set Y) :
theorem Continuous.preimage_coborder_subset {X : Type u_1} {Y : Type u_2} [TopologicalSpace X] [TopologicalSpace Y] {f : XY} (hf : Continuous f) (s : Set Y) :
theorem coborder_preimage {X : Type u_1} {Y : Type u_2} [TopologicalSpace X] [TopologicalSpace Y] {f : XY} (hf : IsOpenMap f) (hf' : Continuous f) (s : Set Y) :
theorem IsLocallyClosedAt.of_mem_nhds {X : Type u_1} [TopologicalSpace X] {s : Set X} {x : X} (hx : s nhds x) :
theorem IsLocallyClosedAt.of_notMem_closure {X : Type u_1} [TopologicalSpace X] {s : Set X} {x : X} (hx : xclosure s) :
theorem IsLocallyClosedAt.preimage {X : Type u_1} {Y : Type u_2} [TopologicalSpace X] [TopologicalSpace Y] {x : X} {s : Set Y} {f : XY} (hs : IsLocallyClosedAt s (f x)) (hf : Continuous f) :
theorem isLocallyClosedAt_tfae {X : Type u_1} [TopologicalSpace X] (s : Set X) (x : X) :
[IsLocallyClosedAt s x, Unhds x, IsClosed (Subtype.val ⁻¹' s), Unhds x, U closure ss, Unhds x, U s = U closure s, ∃ (Z : Set X), IsClosed Z s =ᶠ[nhds x] Z, s =ᶠ[nhds x] closure s, closure s ≤ᶠ[nhds x] s, s nhdsWithin x (closure s), coborder s nhds x].TFAE

A set s is locally closed at a point x if one of the equivalent conditions below hold

  1. There is a neighborhood U of x such that U ∩ s can be written U ∩ Z for some closed set Z (this is the definition).
  2. There is a neighborhood U of x such that U ∩ s is a closed subset of U.
  3. There is a neighborhood U of x such that U ∩ closure s ⊆ s.
  4. There is a neighborhood U of x such that U ∩ s = U ∩ closure s.
  5. s coincides with some closed set Z eventually near x.
  6. s and closure s coincide eventually near x.
  7. closure s ⊆ s eventually near x.
  8. s is a neighborhood of x inside closure s.
  9. coborder s is a neighborhood of x.

Furthermore (see API below), in assertions 1, 2, 3 and 4, one can restrict to U belonging to a basis of neighborhoods of x.

theorem isLocallyClosedAt_iff_exists_isClosed_inter_eq_of_hasBasis {X : Type u_1} [TopologicalSpace X] {s : Set X} {ι : Type u_3} {p : ιProp} {U : ιSet X} {x : X} (H : (nhds x).HasBasis p U) :
IsLocallyClosedAt s x ∃ (i : ι), p i ∃ (Z : Set X), IsClosed Z U i s = U i Z
theorem isLocallyClosedAt_iff_exists_isClosed_preimage_val_of_hasBasis {X : Type u_1} [TopologicalSpace X] {s : Set X} {ι : Type u_3} {p : ιProp} {U : ιSet X} {x : X} (H : (nhds x).HasBasis p U) :
theorem isLocallyClosedAt_iff_exists_inter_closure_subset_of_hasBasis {X : Type u_1} [TopologicalSpace X] {s : Set X} {ι : Type u_3} {p : ιProp} {U : ιSet X} {x : X} (H : (nhds x).HasBasis p U) :
IsLocallyClosedAt s x ∃ (i : ι), p i U i closure ss
theorem isLocallyClosedAt_iff_exists_eq_inter_closure_of_hasBasis {X : Type u_1} [TopologicalSpace X] {s : Set X} {ι : Type u_3} {p : ιProp} {U : ιSet X} {x : X} (H : (nhds x).HasBasis p U) :
IsLocallyClosedAt s x ∃ (i : ι), p i U i s = U i closure s
@[deprecated isLocallyClosedAt_iff_exists_isClosed_eventuallyEqSet (since := "2026-09-02")]

Alias of isLocallyClosedAt_iff_exists_isClosed_eventuallyEqSet.

@[deprecated isLocallyClosedAt_iff_eventuallyEqSet_closure (since := "2026-09-02")]

Alias of isLocallyClosedAt_iff_eventuallyEqSet_closure.

@[deprecated isLocallyClosedAt_iff_closure_eventuallySubset (since := "2026-09-02")]

Alias of isLocallyClosedAt_iff_closure_eventuallySubset.

theorem IsLocallyClosedAt.congr {X : Type u_1} [TopologicalSpace X] {s t : Set X} {x : X} (hs : IsLocallyClosedAt s x) (h : s =ᶠ[nhds x] t) :
theorem isLocallyClosedAt_congr {X : Type u_1} [TopologicalSpace X] {s t : Set X} {x : X} (h : s =ᶠ[nhds x] t) :
theorem IsLocallyClosedAt.inter {X : Type u_1} [TopologicalSpace X] {s t : Set X} {x : X} (hs : IsLocallyClosedAt s x) (ht : IsLocallyClosedAt t x) :
theorem IsLocallyClosedAt.union {X : Type u_1} [TopologicalSpace X] {s t : Set X} {x : X} (hs : IsLocallyClosedAt s x) (ht : IsLocallyClosedAt t x) :
theorem IsLocallyClosed.isLocallyClosedAt {X : Type u_1} [TopologicalSpace X] {s : Set X} (hs : IsLocallyClosed s) {x : X} (hx : x s) :
theorem IsLocallyClosed.preimage {X : Type u_1} {Y : Type u_2} [TopologicalSpace X] [TopologicalSpace Y] {s : Set Y} (hs : IsLocallyClosed s) {f : XY} (hf : Continuous f) :
theorem Topology.IsInducing.isLocallyClosed_iff {X : Type u_1} {Y : Type u_2} [TopologicalSpace X] [TopologicalSpace Y] {s : Set X} {f : XY} (hf : IsInducing f) :
IsLocallyClosed s ∃ (s' : Set Y), IsLocallyClosed s' f ⁻¹' s' = s
theorem Topology.IsEmbedding.isLocallyClosed_iff {X : Type u_1} {Y : Type u_2} [TopologicalSpace X] [TopologicalSpace Y] {s : Set X} {f : XY} (hf : IsEmbedding f) :
IsLocallyClosed s ∃ (s' : Set Y), IsLocallyClosed s' s' Set.range f = f '' s
theorem IsLocallyClosed.image {X : Type u_1} {Y : Type u_2} [TopologicalSpace X] [TopologicalSpace Y] {s : Set X} (hs : IsLocallyClosed s) {f : XY} (hf : Topology.IsInducing f) (hf' : IsLocallyClosed (Set.range f)) :
theorem isLocallyClosed_tfae {X : Type u_1} [TopologicalSpace X] (s : Set X) :

A set s is locally closed if one of the equivalent conditions below hold

  1. It is the intersection of some open set and some closed set (this is the definition).
  2. It is locally closed at each of its points.
  3. It is locally closed at each point of its coborder.
  4. The coborder (closure s \ s)ᶜ is open.
  5. s is the intersection of an open set and closure s.
  6. s is open in the closure of s.