Documentation

Mathlib.CategoryTheory.Functor.Basic

Functors #

Defines a functor between categories, extending a Prefunctor between quivers.

Introduces, in the CategoryTheory scope, notations C ⥤ D for the type of all functors from C to D, 𝟭 for the identity functor and for functor composition.

TODO: Switch to using the arrow.

structure CategoryTheory.Functor (C : Type u₁) [CategoryTheory.Category.{v₁, u₁} C] (D : Type u₂) [CategoryTheory.Category.{v₂, u₂} D] extends Prefunctor :
Type (max v₁ v₂ u₁ u₂)

Functor C D represents a functor between categories C and D.

To apply a functor F to an object use F.obj X, and to a morphism use F.map f.

The axiom map_id expresses preservation of identities, and map_comp expresses functoriality.

See .

Instances For

    Notation for a functor between categories.

    Equations
    • One or more equations did not get rendered due to their size.
    Instances For
      theorem CategoryTheory.Functor.map_comp_assoc {C : Type u₁} [CategoryTheory.Category.{u_1, u₁} C] {D : Type u₂} [CategoryTheory.Category.{u_2, u₂} D] (F : CategoryTheory.Functor C D) {X : C} {Y : C} {Z : C} (f : X Y) (g : Y Z) {W : D} (h : F.toPrefunctor.obj Z W) :

      𝟭 C is the identity functor on a category C.

      Equations
      Instances For

        Notation for the identity functor on a category.

        Equations
        Instances For
          @[simp]
          @[simp]
          theorem CategoryTheory.Functor.id_map {C : Type u₁} [CategoryTheory.Category.{v₁, u₁} C] {X : C} {Y : C} (f : X Y) :
          (CategoryTheory.Functor.id C).toPrefunctor.map f = f
          @[simp]
          theorem CategoryTheory.Functor.comp_obj {C : Type u₁} [CategoryTheory.Category.{v₁, u₁} C] {D : Type u₂} [CategoryTheory.Category.{v₂, u₂} D] {E : Type u₃} [CategoryTheory.Category.{v₃, u₃} E] (F : CategoryTheory.Functor C D) (G : CategoryTheory.Functor D E) (X : C) :
          (CategoryTheory.Functor.comp F G).toPrefunctor.obj X = G.toPrefunctor.obj (F.toPrefunctor.obj X)

          F ⋙ G is the composition of a functor F and a functor G (F first, then G).

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

            Notation for composition of functors.

            Equations
            • One or more equations did not get rendered due to their size.
            Instances For
              @[simp]
              theorem CategoryTheory.Functor.comp_map {C : Type u₁} [CategoryTheory.Category.{v₁, u₁} C] {D : Type u₂} [CategoryTheory.Category.{v₂, u₂} D] {E : Type u₃} [CategoryTheory.Category.{v₃, u₃} E] (F : CategoryTheory.Functor C D) (G : CategoryTheory.Functor D E) {X : C} {Y : C} (f : X Y) :
              (CategoryTheory.Functor.comp F G).toPrefunctor.map f = G.toPrefunctor.map (F.toPrefunctor.map f)
              @[simp]
              theorem CategoryTheory.Functor.map_dite {C : Type u₁} [CategoryTheory.Category.{v₁, u₁} C] {D : Type u₂} [CategoryTheory.Category.{v₂, u₂} D] (F : CategoryTheory.Functor C D) {X : C} {Y : C} {P : Prop} [Decidable P] (f : P(X Y)) (g : ¬P(X Y)) :
              F.toPrefunctor.map (if h : P then f h else g h) = if h : P then F.toPrefunctor.map (f h) else F.toPrefunctor.map (g h)