Documentation

Mathlib.CategoryTheory.Functor.Const

The constant functor #

const J : C โฅค (J โฅค C) is the functor that sends an object X : C to the functor J โฅค C sending every object in J to X, and every morphism to ๐Ÿ™ X.

When J is nonempty, const is faithful.

We have (const J).obj X โ‹™ F โ‰… (const J).obj (F.obj X) for any F : C โฅค D.

The functor sending X : C to the constant functor J โฅค C sending everything to X.

Equations
    Instances For
      @[simp]
      theorem CategoryTheory.Functor.const_obj_obj (J : Type uโ‚) [Category.{vโ‚, uโ‚} J] {C : Type uโ‚‚} [Category.{vโ‚‚, uโ‚‚} C] (X : C) (xโœ : J) :
      ((const J).obj X).obj xโœ = X
      @[simp]
      theorem CategoryTheory.Functor.const_obj_map (J : Type uโ‚) [Category.{vโ‚, uโ‚} J] {C : Type uโ‚‚} [Category.{vโ‚‚, uโ‚‚} C] (X : C) {Xโœ Yโœ : J} (xโœ : Xโœ โŸถ Yโœ) :
      ((const J).obj X).map xโœ = CategoryStruct.id X
      @[simp]
      theorem CategoryTheory.Functor.const_map_app (J : Type uโ‚) [Category.{vโ‚, uโ‚} J] {C : Type uโ‚‚} [Category.{vโ‚‚, uโ‚‚} C] {Xโœ Yโœ : C} (f : Xโœ โŸถ Yโœ) (xโœ : J) :
      ((const J).map f).app xโœ = f

      The constant functor Jแต’แต– โฅค Cแต’แต– sending everything to op X is (naturally isomorphic to) the opposite of the constant functor J โฅค C sending everything to X.

      Equations
        Instances For

          The constant functor Jแต’แต– โฅค C sending everything to unop X is (naturally isomorphic to) the opposite of the constant functor J โฅค Cแต’แต– sending everything to X.

          Equations
            Instances For
              def CategoryTheory.Functor.constComp (J : Type uโ‚) [Category.{vโ‚, uโ‚} J] {C : Type uโ‚‚} [Category.{vโ‚‚, uโ‚‚} C] {D : Type uโ‚ƒ} [Category.{vโ‚ƒ, uโ‚ƒ} D] (X : C) (F : Functor C D) :
              ((const J).obj X).comp F โ‰… (const J).obj (F.obj X)

              These are actually equal, of course, but not definitionally equal (the equality requires F.map (๐Ÿ™ _) = ๐Ÿ™ _). A natural isomorphism is more convenient than an equality between functors (compare id_to_iso).

              Equations
                Instances For
                  @[simp]
                  theorem CategoryTheory.Functor.constComp_hom_app (J : Type uโ‚) [Category.{vโ‚, uโ‚} J] {C : Type uโ‚‚} [Category.{vโ‚‚, uโ‚‚} C] {D : Type uโ‚ƒ} [Category.{vโ‚ƒ, uโ‚ƒ} D] (X : C) (F : Functor C D) (xโœ : J) :
                  (constComp J X F).hom.app xโœ = CategoryStruct.id ((((const J).obj X).comp F).obj xโœ)
                  @[simp]
                  theorem CategoryTheory.Functor.constComp_inv_app (J : Type uโ‚) [Category.{vโ‚, uโ‚} J] {C : Type uโ‚‚} [Category.{vโ‚‚, uโ‚‚} C] {D : Type uโ‚ƒ} [Category.{vโ‚ƒ, uโ‚ƒ} D] (X : C) (F : Functor C D) (xโœ : J) :
                  (constComp J X F).inv.app xโœ = CategoryStruct.id (((const J).obj (F.obj X)).obj xโœ)

                  If J is nonempty, then the constant functor over J is faithful.

                  The canonical isomorphism F โ‹™ Functor.const J โ‰… Functor.const F โ‹™ (whiskeringRight J _ _).obj L.

                  Equations
                    Instances For
                      @[simp]
                      theorem CategoryTheory.Functor.compConstIso_hom_app_app (J : Type uโ‚) [Category.{vโ‚, uโ‚} J] {C : Type uโ‚‚} [Category.{vโ‚‚, uโ‚‚} C] {D : Type uโ‚ƒ} [Category.{vโ‚ƒ, uโ‚ƒ} D] (F : Functor C D) (X : C) (Xโœ : J) :
                      ((compConstIso J F).hom.app X).app Xโœ = CategoryStruct.id (F.obj X)
                      @[simp]
                      theorem CategoryTheory.Functor.compConstIso_inv_app_app (J : Type uโ‚) [Category.{vโ‚, uโ‚} J] {C : Type uโ‚‚} [Category.{vโ‚‚, uโ‚‚} C] {D : Type uโ‚ƒ} [Category.{vโ‚ƒ, uโ‚ƒ} D] (F : Functor C D) (X : C) (Xโœ : J) :
                      ((compConstIso J F).inv.app X).app Xโœ = CategoryStruct.id (F.obj X)

                      The canonical isomorphism const D โ‹™ (whiskeringLeft J _ _).obj F โ‰… const J

                      Equations
                        Instances For