Documentation

Mathlib.Topology.Maps.Strict.Basic

Bourbaki Strict Maps #

This file defines Bourbaki strict maps (Topology.IsStrictMap) and proves some of their basic properties.

A map f : X → Y between topological spaces is called strict in the sense of Bourbaki if the natural corestriction to its image (i.e., Set.rangeFactorization f) is a quotient map. Equivalently, these are precisely the maps for which the first isomorphism theorem yields a homeomorphism: the canonical bijection X ⧸ ker f ≃ range f is a homeomorphism if and only if f is strict. This provides a natural generalization of quotient maps to non-surjective maps.

Many important classes of maps are automatically continuous strict maps, including:

Equivalent characterizations #

We provide several equivalent ways to characterize a strict map f:

def Topology.IsStrictMap {X : Type u_1} {Y : Type u_2} [TopologicalSpace X] [TopologicalSpace Y] (f : XY) :

A map is a strict map in the sense of Bourbaki if the natural map to its image is a quotient map.

Equations
Instances For

    A map is a strict map if and only if the canonical bijection Quotient (Setoid.ker f) ≃ Set.range f is a homeomorphism.

    noncomputable def Topology.Homeomorph.quotientKerEquivRange {X : Type u_1} {Y : Type u_2} [TopologicalSpace X] [TopologicalSpace Y] {f : XY} (hf : IsStrictMap f) :

    The homeomorphism Quotient (Setoid.ker f) ≃ₜ Set.range f given by a strict map f. This is the homeomorphism obtained from the first isomorphism theorem.

    Equations
    Instances For

      A map is a strict map if and only if the canonical injection Quotient (Setoid.ker f) → Y (Setoid.kerLift f) is an embedding.

      theorem Topology.IsStrictMap.continuous {X : Type u_1} {Y : Type u_2} [TopologicalSpace X] [TopologicalSpace Y] {f : XY} (hf : IsStrictMap f) :

      A strict map is continuous, since the range factorization is continuous.

      theorem Topology.IsOpenMap.isStrictMap {X : Type u_1} {Y : Type u_2} [TopologicalSpace X] [TopologicalSpace Y] {f : XY} (ho : IsOpenMap f) (h_cont : Continuous f) :

      A open continuous map is a strict map.

      theorem Topology.IsClosedMap.isStrictMap {X : Type u_1} {Y : Type u_2} [TopologicalSpace X] [TopologicalSpace Y] {f : XY} (hc : IsClosedMap f) (h_cont : Continuous f) :

      A closed continuous map is a strict map.

      theorem Topology.IsHomeomorph.isStrictMap {X : Type u_1} {Y : Type u_2} [TopologicalSpace X] [TopologicalSpace Y] {f : XY} (f_homeo : IsHomeomorph f) :

      A homeomorphism is a strict map.

      The identity is a strict map.

      theorem Topology.IsQuotientMap.isStrictMap_iff {X : Type u_1} {Y : Type u_2} {Z : Type u_3} [TopologicalSpace X] [TopologicalSpace Y] [TopologicalSpace Z] {f : XY} {g : YZ} (f_quot : IsQuotientMap f) :

      Assume that f : X → Y is a quotient map. Then g : Y → Z is strict if and only if g ∘ f is strict.

      theorem Topology.IsQuotientMap.isStrictMap {X : Type u_1} {Y : Type u_2} [TopologicalSpace X] [TopologicalSpace Y] {f : XY} (f_quot : IsQuotientMap f) :

      A quotient map is strict. See also isQuotientMap_iff_isStrictMap_surjective.

      theorem Topology.IsEmbedding.isStrictMap_iff {X : Type u_1} {Y : Type u_2} {Z : Type u_3} [TopologicalSpace X] [TopologicalSpace Y] [TopologicalSpace Z] {f : XY} {g : YZ} (g_emb : IsEmbedding g) :

      Assume that g : Y → Z is an embedding. Then f : X → Y is strict if and only if g ∘ f is strict.

      theorem Topology.IsEmbedding.isStrictMap {X : Type u_1} {Y : Type u_2} [TopologicalSpace X] [TopologicalSpace Y] {f : XY} (f_emb : IsEmbedding f) :

      An embedding is strict. See also isEmbedding_iff_isStrictMap_injective.

      Quotient maps are precisely surjective strict maps.

      Embeddings are precisely injective strict maps.