Documentation

Mathlib.CategoryTheory.Monoidal.NaturalTransformation

Monoidal natural transformations #

Natural transformations between (lax) monoidal functors must satisfy an additional compatibility relation with the tensorators: F.μ X Y ≫ app (X ⊗ Y) = (app X ⊗ app Y) ≫ G.μ X Y.

(Lax) monoidal functors between a fixed pair of monoidal categories themselves form a category.

A monoidal natural transformation is a natural transformation between (lax) monoidal functors additionally satisfying: F.μ X Y ≫ app (X ⊗ Y) = (app X ⊗ app Y) ≫ G.μ X Y

Instances For
    def CategoryTheory.MonoidalNatIso.ofComponents {C : Type u₁} [CategoryTheory.Category.{v₁, u₁} C] [CategoryTheory.MonoidalCategory C] {D : Type u₂} [CategoryTheory.Category.{v₂, u₂} D] [CategoryTheory.MonoidalCategory D] {F : CategoryTheory.LaxMonoidalFunctor C D} {G : CategoryTheory.LaxMonoidalFunctor C D} (app : (X : C) → F.toPrefunctor.obj X G.toPrefunctor.obj X) (naturality' : ∀ {X Y : C} (f : X Y), CategoryTheory.CategoryStruct.comp (F.toPrefunctor.map f) (app Y).hom = CategoryTheory.CategoryStruct.comp (app X).hom (G.toPrefunctor.map f)) (unit' : CategoryTheory.CategoryStruct.comp F (app (𝟙_ C)).hom = G) (tensor' : ∀ (X Y : C), CategoryTheory.CategoryStruct.comp (FX Y) (app (CategoryTheory.MonoidalCategory.tensorObj X Y)).hom = CategoryTheory.CategoryStruct.comp (CategoryTheory.MonoidalCategory.tensorHom (app X).hom (app Y).hom) (GX Y)) :
    F G

    Construct a monoidal natural isomorphism from object level isomorphisms, and the monoidal naturality in the forward direction.

    Equations
    • One or more equations did not get rendered due to their size.
    Instances For
      @[simp]
      theorem CategoryTheory.MonoidalNatIso.ofComponents.hom_app {C : Type u₁} [CategoryTheory.Category.{v₁, u₁} C] [CategoryTheory.MonoidalCategory C] {D : Type u₂} [CategoryTheory.Category.{v₂, u₂} D] [CategoryTheory.MonoidalCategory D] {F : CategoryTheory.LaxMonoidalFunctor C D} {G : CategoryTheory.LaxMonoidalFunctor C D} (app : (X : C) → F.toPrefunctor.obj X G.toPrefunctor.obj X) (naturality : ∀ {X Y : C} (f : X Y), CategoryTheory.CategoryStruct.comp (F.toPrefunctor.map f) (app Y).hom = CategoryTheory.CategoryStruct.comp (app X).hom (G.toPrefunctor.map f)) (unit : CategoryTheory.CategoryStruct.comp F (app (𝟙_ C)).hom = G) (tensor : ∀ (X Y : C), CategoryTheory.CategoryStruct.comp (FX Y) (app (CategoryTheory.MonoidalCategory.tensorObj X Y)).hom = CategoryTheory.CategoryStruct.comp (CategoryTheory.MonoidalCategory.tensorHom (app X).hom (app Y).hom) (GX Y)) (X : C) :
      (CategoryTheory.MonoidalNatIso.ofComponents app naturality unit tensor).hom.toNatTrans.app X = (app X).hom
      @[simp]
      theorem CategoryTheory.MonoidalNatIso.ofComponents.inv_app {C : Type u₁} [CategoryTheory.Category.{v₁, u₁} C] [CategoryTheory.MonoidalCategory C] {D : Type u₂} [CategoryTheory.Category.{v₂, u₂} D] [CategoryTheory.MonoidalCategory D] {F : CategoryTheory.LaxMonoidalFunctor C D} {G : CategoryTheory.LaxMonoidalFunctor C D} (app : (X : C) → F.toPrefunctor.obj X G.toPrefunctor.obj X) (naturality : ∀ {X Y : C} (f : X Y), CategoryTheory.CategoryStruct.comp (F.toPrefunctor.map f) (app Y).hom = CategoryTheory.CategoryStruct.comp (app X).hom (G.toPrefunctor.map f)) (unit : CategoryTheory.CategoryStruct.comp F (app (𝟙_ C)).hom = G) (tensor : ∀ (X Y : C), CategoryTheory.CategoryStruct.comp (FX Y) (app (CategoryTheory.MonoidalCategory.tensorObj X Y)).hom = CategoryTheory.CategoryStruct.comp (CategoryTheory.MonoidalCategory.tensorHom (app X).hom (app Y).hom) (GX Y)) (X : C) :
      (CategoryTheory.MonoidalNatIso.ofComponents app naturality unit tensor).inv.toNatTrans.app X = (app X).inv

      The unit of a monoidal equivalence can be upgraded to a monoidal natural transformation.

      Equations
      Instances For

        The counit of a monoidal equivalence can be upgraded to a monoidal natural transformation.

        Equations
        Instances For