Documentation

Mathlib.Topology.Category.CompHausLike.Basic

Categories of Compact Hausdorff Spaces #

We construct the category of compact Hausdorff spaces satisfying an additional property P.

structure CompHausLike (P : TopCat → Prop) :
Type (u + 1)

The type of Compact Hausdorff topological spaces satisfying an additional property P.

  • toTop : TopCat

    The underlying topological space of an object of CompHausLike P.

  • is_compact : CompactSpace ↑self.toTop

    The underlying topological space is compact.

  • is_hausdorff : T2Space ↑self.toTop

    The underlying topological space is T2.

  • prop : P self.toTop

    The underlying topological space satisfies P.

Instances For
    theorem CompHausLike.is_compact {P : TopCat → Prop} (self : CompHausLike P) :
    CompactSpace ↑self.toTop

    The underlying topological space is compact.

    theorem CompHausLike.is_hausdorff {P : TopCat → Prop} (self : CompHausLike P) :
    T2Space ↑self.toTop

    The underlying topological space is T2.

    theorem CompHausLike.prop {P : TopCat → Prop} (self : CompHausLike P) :
    P self.toTop

    The underlying topological space satisfies P.

    Equations

    This wraps the predicate P : TopCat → Prop in a typeclass.

    Instances

      A constructor for objects of the category CompHausLike P, taking a type, and bundling the compact Hausdorff topology found by typeclass inference.

      Equations
      Instances For
        @[simp]
        theorem CompHausLike.coe_of (P : TopCat → Prop) (X : Type u) [TopologicalSpace X] [CompactSpace X] [T2Space X] [CompHausLike.HasProp P X] :
        ↑(CompHausLike.of P X).toTop = X
        @[simp]
        @[simp]
        theorem CompHausLike.toCompHausLike_map {P : TopCat → Prop} {P' : TopCat → Prop} (h : ∀ (X : CompHausLike P), P X.toTop → P' X.toTop) :
        ∀ {X Y : CompHausLike P} (f : X ⟶ Y), (CompHausLike.toCompHausLike h).map f = f
        @[simp]
        theorem CompHausLike.toCompHausLike_obj {P : TopCat → Prop} {P' : TopCat → Prop} (h : ∀ (X : CompHausLike P), P X.toTop → P' X.toTop) (X : CompHausLike P) :
        (CompHausLike.toCompHausLike h).obj X = let_fun this := ⋯; CompHausLike.of P' ↑X.toTop
        def CompHausLike.toCompHausLike {P : TopCat → Prop} {P' : TopCat → Prop} (h : ∀ (X : CompHausLike P), P X.toTop → P' X.toTop) :

        If P imples P', then there is a functor from CompHausLike P to CompHausLike P'.

        Equations
        • One or more equations did not get rendered due to their size.
        Instances For
          def CompHausLike.fullyFaithfulToCompHausLike {P : TopCat → Prop} {P' : TopCat → Prop} (h : ∀ (X : CompHausLike P), P X.toTop → P' X.toTop) :
          (CompHausLike.toCompHausLike h).FullyFaithful

          If P imples P', then the functor from CompHausLike P to CompHausLike P' is fully faithful.

          Equations
          Instances For
            instance CompHausLike.instFullToCompHausLike {P : TopCat → Prop} {P' : TopCat → Prop} (h : ∀ (X : CompHausLike P), P X.toTop → P' X.toTop) :
            Equations
            • ⋯ = ⋯
            instance CompHausLike.instFaithfulToCompHausLike {P : TopCat → Prop} {P' : TopCat → Prop} (h : ∀ (X : CompHausLike P), P X.toTop → P' X.toTop) :
            Equations
            • ⋯ = ⋯
            @[simp]
            theorem CompHausLike.compHausLikeToTop_obj (P : TopCat → Prop) (self : CompHausLike P) :
            (CompHausLike.compHausLikeToTop P).obj self = self.toTop
            @[simp]
            theorem CompHausLike.compHausLikeToTop_map (P : TopCat → Prop) :
            ∀ {X Y : CategoryTheory.InducedCategory TopCat CompHausLike.toTop} (f : X ⟶ Y), (CompHausLike.compHausLikeToTop P).map f = f
            theorem CompHausLike.isClosedMap {P : TopCat → Prop} {X : CompHausLike P} {Y : CompHausLike P} (f : X ⟶ Y) :

            Any continuous function on compact Hausdorff spaces is a closed map.

            Any continuous bijection of compact Hausdorff spaces is an isomorphism.

            Equations
            • ⋯ = ⋯
            noncomputable def CompHausLike.isoOfBijective {P : TopCat → Prop} {X : CompHausLike P} {Y : CompHausLike P} (f : X ⟶ Y) (bij : Function.Bijective ⇑f) :
            X ≅ Y

            Any continuous bijection of compact Hausdorff spaces induces an isomorphism.

            Equations
            Instances For
              @[simp]
              theorem CompHausLike.isoOfHomeo_inv_apply {P : TopCat → Prop} {X : CompHausLike P} {Y : CompHausLike P} (f : ↑X.toTop ≃ₜ ↑Y.toTop) (a : ↑((CompHausLike.compHausLikeToTop P).obj Y)) :
              (CompHausLike.isoOfHomeo f).inv a = f.symm a
              @[simp]
              theorem CompHausLike.isoOfHomeo_hom_apply {P : TopCat → Prop} {X : CompHausLike P} {Y : CompHausLike P} (f : ↑X.toTop ≃ₜ ↑Y.toTop) (a : ↑((CompHausLike.compHausLikeToTop P).obj X)) :
              def CompHausLike.isoOfHomeo {P : TopCat → Prop} {X : CompHausLike P} {Y : CompHausLike P} (f : ↑X.toTop ≃ₜ ↑Y.toTop) :
              X ≅ Y

              Construct an isomorphism from a homeomorphism.

              Equations
              Instances For
                @[simp]
                theorem CompHausLike.homeoOfIso_apply {P : TopCat → Prop} {X : CompHausLike P} {Y : CompHausLike P} (f : X ≅ Y) (a : ↑X.toTop) :
                @[simp]
                theorem CompHausLike.homeoOfIso_symm_apply {P : TopCat → Prop} {X : CompHausLike P} {Y : CompHausLike P} (f : X ≅ Y) (a : ↑Y.toTop) :
                (CompHausLike.homeoOfIso f).symm a = f.inv a
                def CompHausLike.homeoOfIso {P : TopCat → Prop} {X : CompHausLike P} {Y : CompHausLike P} (f : X ≅ Y) :
                ↑X.toTop ≃ₜ ↑Y.toTop

                Construct a homeomorphism from an isomorphism.

                Equations
                Instances For
                  @[simp]
                  theorem CompHausLike.isoEquivHomeo_apply {P : TopCat → Prop} {X : CompHausLike P} {Y : CompHausLike P} (f : X ≅ Y) :
                  CompHausLike.isoEquivHomeo f = CompHausLike.homeoOfIso f
                  @[simp]
                  theorem CompHausLike.isoEquivHomeo_symm_apply {P : TopCat → Prop} {X : CompHausLike P} {Y : CompHausLike P} (f : ↑X.toTop ≃ₜ ↑Y.toTop) :
                  CompHausLike.isoEquivHomeo.symm f = CompHausLike.isoOfHomeo f
                  def CompHausLike.isoEquivHomeo {P : TopCat → Prop} {X : CompHausLike P} {Y : CompHausLike P} :
                  (X ≅ Y) ≃ (↑X.toTop ≃ₜ ↑Y.toTop)

                  The equivalence between isomorphisms in CompHaus and homeomorphisms of topological spaces.

                  Equations
                  • CompHausLike.isoEquivHomeo = { toFun := CompHausLike.homeoOfIso, invFun := CompHausLike.isoOfHomeo, left_inv := ⋯, right_inv := ⋯ }
                  Instances For