Documentation

Mathlib.CategoryTheory.MorphismProperty.Comma

Subcategories of comma categories defined by morphism properties #

Given functors L : A ⥤ T and R : B ⥤ T and morphism properties P, Q and W on T, AandBrespectively, we define the subcategoryP.Comma L R Q Wof `Comma L R` where

For an object X : T, this specializes to P.Over Q X which is the subcategory of Over X where the structural morphism satisfies P and where the horizontal morphisms satisfy Q. Common examples of the latter are e.g. the category of schemes étale (finite, affine, etc.) over a base X. Here Q = ⊤.

Implementation details #

theorem CategoryTheory.MorphismProperty.over_iso_iff {T : Type u_3} [CategoryTheory.Category.{u_4, u_3} T] (P : CategoryTheory.MorphismProperty T) [P.RespectsIso] {X : T} {f g : CategoryTheory.Over X} (e : f g) :
P f.hom P g.hom

P.Comma L R Q W is the subcategory of Comma L R consisting of objects X : Comma L R where X.hom satisfies P. The morphisms are given by morphisms in Comma L R where the left one satisfies Q and the right one satisfies W.

  • left : A
  • right : B
  • hom : L.obj self.left R.obj self.right
  • prop : P self.hom
Instances For
    theorem CategoryTheory.MorphismProperty.Comma.ext {A : Type u_1} {inst✝ : CategoryTheory.Category.{u_4, u_1} A} {B : Type u_2} {inst✝¹ : CategoryTheory.Category.{u_5, u_2} B} {T : Type u_3} {inst✝² : CategoryTheory.Category.{u_6, u_3} T} {L : CategoryTheory.Functor A T} {R : CategoryTheory.Functor B T} {P : CategoryTheory.MorphismProperty T} {Q : CategoryTheory.MorphismProperty A} {W : CategoryTheory.MorphismProperty B} {x y : CategoryTheory.MorphismProperty.Comma L R P Q W} (left : x.left = y.left) (right : x.right = y.right) (hom : HEq x.hom y.hom) :
    x = y

    A morphism in P.Comma L R Q W is a morphism in Comma L R where the left hom satisfies Q and the right one satisfies W.

    Instances For
      theorem CategoryTheory.MorphismProperty.Comma.Hom.ext {A : Type u_1} {inst✝ : CategoryTheory.Category.{u_4, u_1} A} {B : Type u_2} {inst✝¹ : CategoryTheory.Category.{u_5, u_2} B} {T : Type u_3} {inst✝² : CategoryTheory.Category.{u_6, u_3} T} {L : CategoryTheory.Functor A T} {R : CategoryTheory.Functor B T} {P : CategoryTheory.MorphismProperty T} {Q : CategoryTheory.MorphismProperty A} {W : CategoryTheory.MorphismProperty B} {X Y : CategoryTheory.MorphismProperty.Comma L R P Q W} {x y : X.Hom Y} (left : x.left = y.left) (right : x.right = y.right) :
      x = y
      @[reducible, inline]

      The underlying morphism of objects in Comma L R.

      Equations
      • f.hom = f.toCommaMorphism
      Instances For
        @[simp]
        theorem CategoryTheory.MorphismProperty.Comma.Hom.hom_mk {A : Type u_1} [CategoryTheory.Category.{u_4, u_1} A] {B : Type u_2} [CategoryTheory.Category.{u_5, u_2} B] {T : Type u_3} [CategoryTheory.Category.{u_6, u_3} T] {L : CategoryTheory.Functor A T} {R : CategoryTheory.Functor B T} {P : CategoryTheory.MorphismProperty T} {Q : CategoryTheory.MorphismProperty A} {W : CategoryTheory.MorphismProperty B} {X Y : CategoryTheory.MorphismProperty.Comma L R P Q W} (f : CategoryTheory.CommaMorphism X.toComma Y.toComma) (hf : Q f.left) (hg : W f.right) :
        { toCommaMorphism := f, prop_hom_left := hf, prop_hom_right := hg }.hom = f

        The identity morphism of an object in P.Comma L R Q W.

        Equations
        Instances For

          Composition of morphisms in P.Comma L R Q W.

          Equations
          Instances For
            @[simp]

            If i is an isomorphism in Comma L R, it is also a morphism in P.Comma L R Q W.

            Equations
            Instances For

              Any isomorphism between objects of P.Comma L R Q W in Comma L R is also an isomorphism in P.Comma L R Q W.

              Equations
              • One or more equations did not get rendered due to their size.
              Instances For
                def CategoryTheory.MorphismProperty.Comma.isoMk {A : Type u_1} [CategoryTheory.Category.{u_4, u_1} A] {B : Type u_2} [CategoryTheory.Category.{u_5, u_2} B] {T : Type u_3} [CategoryTheory.Category.{u_6, u_3} T] {L : CategoryTheory.Functor A T} {R : CategoryTheory.Functor B T} {P : CategoryTheory.MorphismProperty T} {Q : CategoryTheory.MorphismProperty A} {W : CategoryTheory.MorphismProperty B} [Q.IsMultiplicative] [W.IsMultiplicative] [Q.RespectsIso] [W.RespectsIso] {X Y : CategoryTheory.MorphismProperty.Comma L R P Q W} (l : X.left Y.left) (r : X.right Y.right) (h : CategoryTheory.CategoryStruct.comp (L.map l.hom) Y.hom = CategoryTheory.CategoryStruct.comp X.hom (R.map r.hom) := by aesop_cat) :
                X Y

                Constructor for isomorphisms in P.Comma L R Q W from isomorphisms of the left and right components and naturality in the forward direction.

                Equations
                Instances For
                  @[simp]
                  theorem CategoryTheory.MorphismProperty.Comma.isoMk_hom_left {A : Type u_1} [CategoryTheory.Category.{u_4, u_1} A] {B : Type u_2} [CategoryTheory.Category.{u_5, u_2} B] {T : Type u_3} [CategoryTheory.Category.{u_6, u_3} T] {L : CategoryTheory.Functor A T} {R : CategoryTheory.Functor B T} {P : CategoryTheory.MorphismProperty T} {Q : CategoryTheory.MorphismProperty A} {W : CategoryTheory.MorphismProperty B} [Q.IsMultiplicative] [W.IsMultiplicative] [Q.RespectsIso] [W.RespectsIso] {X Y : CategoryTheory.MorphismProperty.Comma L R P Q W} (l : X.left Y.left) (r : X.right Y.right) (h : CategoryTheory.CategoryStruct.comp (L.map l.hom) Y.hom = CategoryTheory.CategoryStruct.comp X.hom (R.map r.hom) := by aesop_cat) :
                  @[simp]
                  theorem CategoryTheory.MorphismProperty.Comma.isoMk_inv_left {A : Type u_1} [CategoryTheory.Category.{u_4, u_1} A] {B : Type u_2} [CategoryTheory.Category.{u_5, u_2} B] {T : Type u_3} [CategoryTheory.Category.{u_6, u_3} T] {L : CategoryTheory.Functor A T} {R : CategoryTheory.Functor B T} {P : CategoryTheory.MorphismProperty T} {Q : CategoryTheory.MorphismProperty A} {W : CategoryTheory.MorphismProperty B} [Q.IsMultiplicative] [W.IsMultiplicative] [Q.RespectsIso] [W.RespectsIso] {X Y : CategoryTheory.MorphismProperty.Comma L R P Q W} (l : X.left Y.left) (r : X.right Y.right) (h : CategoryTheory.CategoryStruct.comp (L.map l.hom) Y.hom = CategoryTheory.CategoryStruct.comp X.hom (R.map r.hom) := by aesop_cat) :
                  @[simp]
                  theorem CategoryTheory.MorphismProperty.Comma.isoMk_inv_right {A : Type u_1} [CategoryTheory.Category.{u_4, u_1} A] {B : Type u_2} [CategoryTheory.Category.{u_5, u_2} B] {T : Type u_3} [CategoryTheory.Category.{u_6, u_3} T] {L : CategoryTheory.Functor A T} {R : CategoryTheory.Functor B T} {P : CategoryTheory.MorphismProperty T} {Q : CategoryTheory.MorphismProperty A} {W : CategoryTheory.MorphismProperty B} [Q.IsMultiplicative] [W.IsMultiplicative] [Q.RespectsIso] [W.RespectsIso] {X Y : CategoryTheory.MorphismProperty.Comma L R P Q W} (l : X.left Y.left) (r : X.right Y.right) (h : CategoryTheory.CategoryStruct.comp (L.map l.hom) Y.hom = CategoryTheory.CategoryStruct.comp X.hom (R.map r.hom) := by aesop_cat) :
                  @[simp]
                  theorem CategoryTheory.MorphismProperty.Comma.isoMk_hom_right {A : Type u_1} [CategoryTheory.Category.{u_4, u_1} A] {B : Type u_2} [CategoryTheory.Category.{u_5, u_2} B] {T : Type u_3} [CategoryTheory.Category.{u_6, u_3} T] {L : CategoryTheory.Functor A T} {R : CategoryTheory.Functor B T} {P : CategoryTheory.MorphismProperty T} {Q : CategoryTheory.MorphismProperty A} {W : CategoryTheory.MorphismProperty B} [Q.IsMultiplicative] [W.IsMultiplicative] [Q.RespectsIso] [W.RespectsIso] {X Y : CategoryTheory.MorphismProperty.Comma L R P Q W} (l : X.left Y.left) (r : X.right Y.right) (h : CategoryTheory.CategoryStruct.comp (L.map l.hom) Y.hom = CategoryTheory.CategoryStruct.comp X.hom (R.map r.hom) := by aesop_cat) :

                  The forgetful functor.

                  Equations
                  • One or more equations did not get rendered due to their size.
                  Instances For

                    The forgetful functor from the full subcategory of Comma L R defined by P is fully faithful.

                    Equations
                    • One or more equations did not get rendered due to their size.
                    Instances For
                      @[reducible, inline]

                      Given a morphism property P on a category C and an object X : C, this is the subcategory of Over X defined by P where morphisms satisfy Q.

                      Equations
                      Instances For
                        @[reducible, inline]

                        The forgetful functor from the full subcategory of Over X defined by P to Over X.

                        Equations
                        Instances For
                          def CategoryTheory.MorphismProperty.Over.Hom.mk {T : Type u_1} [CategoryTheory.Category.{u_2, u_1} T] {P Q : CategoryTheory.MorphismProperty T} {X : T} [Q.IsMultiplicative] {A B : P.Over Q X} (f : A.toComma B.toComma) (hf : Q f.left) :
                          A B

                          Construct a morphism in P.Over Q X from a morphism in Over.X.

                          Equations
                          Instances For
                            @[simp]
                            theorem CategoryTheory.MorphismProperty.Over.Hom.mk_hom {T : Type u_1} [CategoryTheory.Category.{u_2, u_1} T] {P Q : CategoryTheory.MorphismProperty T} {X : T} [Q.IsMultiplicative] {A B : P.Over Q X} (f : A.toComma B.toComma) (hf : Q f.left) :

                            Make an object of P.Over Q X from a morphism f : A ⟶ X and a proof of P f.

                            Equations
                            Instances For
                              def CategoryTheory.MorphismProperty.Over.homMk {T : Type u_1} [CategoryTheory.Category.{u_2, u_1} T] {P Q : CategoryTheory.MorphismProperty T} {X : T} [Q.IsMultiplicative] {A B : P.Over Q X} (f : A.left B.left) (w : CategoryTheory.CategoryStruct.comp f B.hom = A.hom := by aesop_cat) (hf : Q f := by trivial) :
                              A B

                              Make a morphism in P.Over Q X from a morphism in T with compatibilities.

                              Equations
                              Instances For
                                @[simp]
                                theorem CategoryTheory.MorphismProperty.Over.homMk_hom {T : Type u_1} [CategoryTheory.Category.{u_2, u_1} T] {P Q : CategoryTheory.MorphismProperty T} {X : T} [Q.IsMultiplicative] {A B : P.Over Q X} (f : A.left B.left) (w : CategoryTheory.CategoryStruct.comp f B.hom = A.hom := by aesop_cat) (hf : Q f := by trivial) :
                                @[reducible, inline]

                                Given a morphism property P on a category C and an object X : C, this is the subcategory of Under X defined by P where morphisms satisfy Q.

                                Equations
                                Instances For
                                  @[reducible, inline]

                                  The forgetful functor from the full subcategory of Under X defined by P to Under X.

                                  Equations
                                  Instances For
                                    def CategoryTheory.MorphismProperty.Under.Hom.mk {T : Type u_1} [CategoryTheory.Category.{u_2, u_1} T] {P Q : CategoryTheory.MorphismProperty T} {X : T} [Q.IsMultiplicative] {A B : P.Under Q X} (f : A.toComma B.toComma) (hf : Q f.right) :
                                    A B

                                    Construct a morphism in P.Under Q X from a morphism in Under.X.

                                    Equations
                                    Instances For
                                      @[simp]
                                      theorem CategoryTheory.MorphismProperty.Under.Hom.mk_hom {T : Type u_1} [CategoryTheory.Category.{u_2, u_1} T] {P Q : CategoryTheory.MorphismProperty T} {X : T} [Q.IsMultiplicative] {A B : P.Under Q X} (f : A.toComma B.toComma) (hf : Q f.right) :

                                      Make an object of P.Under Q X from a morphism f : A ⟶ X and a proof of P f.

                                      Equations
                                      Instances For
                                        def CategoryTheory.MorphismProperty.Under.homMk {T : Type u_1} [CategoryTheory.Category.{u_2, u_1} T] {P Q : CategoryTheory.MorphismProperty T} {X : T} [Q.IsMultiplicative] {A B : P.Under Q X} (f : A.right B.right) (w : CategoryTheory.CategoryStruct.comp A.hom f = B.hom := by aesop_cat) (hf : Q f := by trivial) :
                                        A B

                                        Make a morphism in P.Under Q X from a morphism in T with compatibilities.

                                        Equations
                                        Instances For
                                          @[simp]
                                          theorem CategoryTheory.MorphismProperty.Under.homMk_hom {T : Type u_1} [CategoryTheory.Category.{u_2, u_1} T] {P Q : CategoryTheory.MorphismProperty T} {X : T} [Q.IsMultiplicative] {A B : P.Under Q X} (f : A.right B.right) (w : CategoryTheory.CategoryStruct.comp A.hom f = B.hom := by aesop_cat) (hf : Q f := by trivial) :