Documentation

Mathlib.CategoryTheory.Monoidal.Mod

The category of module objects over a monoid object. #

Given an action of a monoidal category C on a category D, an action of a monoid object M in C on an object X in D is the data of a map smul : M ⊙ₗ XX that satisfies unitality and associativity with multiplication.

See MulAction for the non-categorical version.

Instances

    The action map

    Equations
    Instances For

      The action map

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

        The action map

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

          The action of a monoid object on itself.

          Equations
          Instances For
            @[implicit_reducible]

            If C acts monoidally on D, then every object of D is canonically a module over the trivial monoid.

            Equations
            theorem CategoryTheory.ModObj.ext {C : Type u₁} [Category.{v₁, u₁} C] [MonoidalCategory C] {M : C} [MonObj M] {X : C} (h₁ h₂ : ModObj M X) (H : smul = smul) :
            h₁ = h₂
            theorem CategoryTheory.ModObj.ext_iff {C : Type u₁} [Category.{v₁, u₁} C] [MonoidalCategory C] {M : C} [MonObj M] {X : C} {h₁ h₂ : ModObj M X} :
            h₁ = h₂ smul = smul
            class CategoryTheory.IsModHom {C : Type u₁} [Category.{v₁, u₁} C] [MonoidalCategory C] {D : Type u₂} [Category.{v₂, u₂} D] [MonoidalCategory.MonoidalLeftAction C D] (A : C) [MonObj A] {M N : D} [ModObj A M] [ModObj A N] (f : M N) :

            A morphism in D is a morphism of A-module objects if it commutes with the action maps

            Instances
              @[deprecated CategoryTheory.IsModHom (since := "2026-04-21")]
              def CategoryTheory.IsMod_Hom {C : Type u₁} [Category.{v₁, u₁} C] [MonoidalCategory C] {D : Type u₂} [Category.{v₂, u₂} D] [MonoidalCategory.MonoidalLeftAction C D] (A : C) [MonObj A] {M N : D} [ModObj A M] [ModObj A N] (f : M N) :

              Alias of CategoryTheory.IsModHom.


              A morphism in D is a morphism of A-module objects if it commutes with the action maps

              Equations
              Instances For
                @[deprecated CategoryTheory.IsModHom.smul_hom (since := "2026-04-21")]
                theorem CategoryTheory.IsMod_Hom.smul_hom {C : Type u₁} {inst✝ : Category.{v₁, u₁} C} {inst✝¹ : MonoidalCategory C} {D : Type u₂} {inst✝² : Category.{v₂, u₂} D} {inst✝³ : MonoidalCategory.MonoidalLeftAction C D} {A : C} {inst✝⁴ : MonObj A} {M N : D} {inst✝⁵ : ModObj A M} {inst✝⁶ : ModObj A N} {f : M N} [self : IsModHom A f] :

                Alias of CategoryTheory.IsModHom.smul_hom.

                @[simp]
                theorem CategoryTheory.IsModHom.smul_hom_assoc {C : Type u₁} {inst✝ : Category.{v₁, u₁} C} {inst✝¹ : MonoidalCategory C} {D : Type u₂} {inst✝² : Category.{v₂, u₂} D} {inst✝³ : MonoidalCategory.MonoidalLeftAction C D} {A : C} {inst✝⁴ : MonObj A} {M N : D} {inst✝⁵ : ModObj A M} {inst✝⁶ : ModObj A N} {f : M N} [self : IsModHom A f] {Z : D} (h : N Z) :
                instance CategoryTheory.instIsModHomComp {C : Type u₁} [Category.{v₁, u₁} C] [MonoidalCategory C] {D : Type u₂} [Category.{v₂, u₂} D] [MonoidalCategory.MonoidalLeftAction C D] (A : C) [MonObj A] {M N O : D} [ModObj A M] [ModObj A N] [ModObj A O] (f : M N) (g : N O) [IsModHom A f] [IsModHom A g] :
                structure CategoryTheory.Mod {C : Type u₁} [Category.{v₁, u₁} C] [MonoidalCategory C] (D : Type u₂) [Category.{v₂, u₂} D] [MonoidalCategory.MonoidalLeftAction C D] (A : C) [MonObj A] :
                Type (max u₂ v₂)

                A module object for a monoid object in a monoidal category acting on the ambient category.

                • X : D

                  The underlying object in the ambient category

                • mod : ModObj A self.X
                Instances For
                  @[deprecated CategoryTheory.Mod (since := "2026-04-21")]

                  Alias of CategoryTheory.Mod.


                  A module object for a monoid object in a monoidal category acting on the ambient category.

                  Equations
                  Instances For
                    @[deprecated CategoryTheory.Mod.mod (since := "2026-04-21")]

                    Alias of CategoryTheory.Mod.mod.

                    Equations
                    Instances For

                      A morphism of module objects.

                      Instances For
                        theorem CategoryTheory.Mod.Hom.ext_iff {C : Type u₁} {inst✝ : Category.{v₁, u₁} C} {inst✝¹ : MonoidalCategory C} {D : Type u₂} {inst✝² : Category.{v₂, u₂} D} {inst✝³ : MonoidalCategory.MonoidalLeftAction C D} {A : C} {inst✝⁴ : MonObj A} {M N : Mod D A} {x y : M.Hom N} :
                        x = y x.hom = y.hom
                        theorem CategoryTheory.Mod.Hom.ext {C : Type u₁} {inst✝ : Category.{v₁, u₁} C} {inst✝¹ : MonoidalCategory C} {D : Type u₂} {inst✝² : Category.{v₂, u₂} D} {inst✝³ : MonoidalCategory.MonoidalLeftAction C D} {A : C} {inst✝⁴ : MonObj A} {M N : Mod D A} {x y : M.Hom N} (hom : x.hom = y.hom) :
                        x = y

                        An alternative constructor for Hom, taking a morphism without a [IsModHom] instance, as well as the relevant equality to put such an instance.

                        Equations
                        Instances For
                          def CategoryTheory.Mod.Hom.mk'' {C : Type u₁} [Category.{v₁, u₁} C] [MonoidalCategory C] {D : Type u₂} [Category.{v₂, u₂} D] [MonoidalCategory.MonoidalLeftAction C D] {A : C} [MonObj A] {M N : D} [ModObj A M] [ModObj A N] (f : M N) (smul_hom : CategoryStruct.comp ModObj.smul f = CategoryStruct.comp (MonoidalCategory.MonoidalLeftActionStruct.actionHomRight A f) ModObj.smul := by cat_disch) :
                          { X := M, mod := inst✝ }.Hom { X := N, mod := inst✝¹ }

                          An alternative constructor for Hom, taking a morphism without a [IsModHom] instance, between objects with a ModObj instance (rather than bundled as Mod), as well as the relevant equality to put such an instance.

                          Equations
                          Instances For

                            The identity morphism on a module object.

                            Equations
                            Instances For
                              @[implicit_reducible]
                              Equations
                              def CategoryTheory.Mod.comp {C : Type u₁} [Category.{v₁, u₁} C] [MonoidalCategory C] {D : Type u₂} [Category.{v₂, u₂} D] [MonoidalCategory.MonoidalLeftAction C D] {A : C} [MonObj A] {M N O : Mod D A} (f : M.Hom N) (g : N.Hom O) :
                              M.Hom O

                              Composition of module object morphisms.

                              Equations
                              Instances For
                                @[simp]
                                theorem CategoryTheory.Mod.comp_hom {C : Type u₁} [Category.{v₁, u₁} C] [MonoidalCategory C] {D : Type u₂} [Category.{v₂, u₂} D] [MonoidalCategory.MonoidalLeftAction C D] {A : C} [MonObj A] {M N O : Mod D A} (f : M.Hom N) (g : N.Hom O) :
                                @[implicit_reducible]
                                Equations
                                • One or more equations did not get rendered due to their size.
                                theorem CategoryTheory.Mod.hom_ext {C : Type u₁} [Category.{v₁, u₁} C] [MonoidalCategory C] {D : Type u₂} [Category.{v₂, u₂} D] [MonoidalCategory.MonoidalLeftAction C D] {A : C} [MonObj A] {M N : Mod D A} (f₁ f₂ : M N) (h : f₁.hom = f₂.hom) :
                                f₁ = f₂
                                theorem CategoryTheory.Mod.hom_ext_iff {C : Type u₁} [Category.{v₁, u₁} C] [MonoidalCategory C] {D : Type u₂} [Category.{v₂, u₂} D] [MonoidalCategory.MonoidalLeftAction C D] {A : C} [MonObj A] {M N : Mod D A} {f₁ f₂ : M N} :
                                f₁ = f₂ f₁.hom = f₂.hom

                                A monoid object as a module over itself.

                                Equations
                                Instances For
                                  @[simp]

                                  The forgetful functor from module objects to the ambient category.

                                  Equations
                                  Instances For
                                    @[simp]
                                    theorem CategoryTheory.Mod.forget_map {C : Type u₁} [Category.{v₁, u₁} C] [MonoidalCategory C] {D : Type u₂} [Category.{v₂, u₂} D] [MonoidalCategory.MonoidalLeftAction C D] (A : C) [MonObj A] {X✝ Y✝ : Mod D A} (f : X✝ Y✝) :
                                    (forget A).map f = f.hom
                                    @[simp]
                                    theorem CategoryTheory.Mod.forget_obj {C : Type u₁} [Category.{v₁, u₁} C] [MonoidalCategory C] {D : Type u₂} [Category.{v₂, u₂} D] [MonoidalCategory.MonoidalLeftAction C D] (A : C) [MonObj A] (A✝ : Mod D A) :
                                    (forget A).obj A✝ = A✝.X
                                    @[implicit_reducible]

                                    When M is a B-module in D and f : A ⟶ B is a morphism of internal monoid objects, M inherits an A-module structure via "restriction of scalars", i.e γ[A, M] = f.hom ⊵ₗ M ≫ γ[B, M].

                                    Equations
                                    • One or more equations did not get rendered due to their size.
                                    Instances For
                                      theorem CategoryTheory.Mod.scalarRestriction_hom {C : Type u₁} [Category.{v₁, u₁} C] [MonoidalCategory C] {D : Type u₂} [Category.{v₂, u₂} D] [MonoidalCategory.MonoidalLeftAction C D] {A B : C} [MonObj A] [MonObj B] (f : A B) [IsMonHom f] (M N : D) [ModObj B M] [ModObj B N] (g : M N) [IsModHom B g] :

                                      If g : M ⟶ N is a B-linear morphisms of B-modules, then it induces an A-linear morphism when M and N have an A-module structure obtained by restricting scalars along a monoid morphism A ⟶ B.

                                      A morphism of monoid objects induces a "restriction" or "comap" functor between the categories of module objects.

                                      Equations
                                      • One or more equations did not get rendered due to their size.
                                      Instances For
                                        @[simp]
                                        theorem CategoryTheory.Mod.comap_obj_X {C : Type u₁} [Category.{v₁, u₁} C] [MonoidalCategory C] {D : Type u₂} [Category.{v₂, u₂} D] [MonoidalCategory.MonoidalLeftAction C D] {A B : C} [MonObj A] [MonObj B] (f : A B) [IsMonHom f] (M : Mod D B) :
                                        ((comap f).obj M).X = M.X
                                        @[simp]
                                        theorem CategoryTheory.Mod.comap_map_hom {C : Type u₁} [Category.{v₁, u₁} C] [MonoidalCategory C] {D : Type u₂} [Category.{v₂, u₂} D] [MonoidalCategory.MonoidalLeftAction C D] {A B : C} [MonObj A] [MonObj B] (f : A B) [IsMonHom f] {M N : Mod D B} (g : M N) :
                                        ((comap f).map g).hom = g.hom
                                        @[deprecated CategoryTheory.Mod.Hom (since := "2026-04-21")]

                                        Alias of CategoryTheory.Mod.Hom.


                                        A morphism of module objects.

                                        Equations
                                        Instances For
                                          @[deprecated CategoryTheory.Mod.Hom.mk' (since := "2026-04-21")]

                                          Alias of CategoryTheory.Mod.Hom.mk'.


                                          An alternative constructor for Hom, taking a morphism without a [IsModHom] instance, as well as the relevant equality to put such an instance.

                                          Equations
                                          Instances For
                                            @[deprecated CategoryTheory.Mod.Hom.mk'' (since := "2026-04-21")]
                                            def CategoryTheory.Mod_.Hom.mk'' {C : Type u₁} [Category.{v₁, u₁} C] [MonoidalCategory C] {D : Type u₂} [Category.{v₂, u₂} D] [MonoidalCategory.MonoidalLeftAction C D] {A : C} [MonObj A] {M N : D} [ModObj A M] [ModObj A N] (f : M N) (smul_hom : CategoryStruct.comp ModObj.smul f = CategoryStruct.comp (MonoidalCategory.MonoidalLeftActionStruct.actionHomRight A f) ModObj.smul := by cat_disch) :
                                            { X := M, mod := inst✝ }.Hom { X := N, mod := inst✝¹ }

                                            Alias of CategoryTheory.Mod.Hom.mk''.


                                            An alternative constructor for Hom, taking a morphism without a [IsModHom] instance, between objects with a ModObj instance (rather than bundled as Mod), as well as the relevant equality to put such an instance.

                                            Equations
                                            Instances For
                                              @[deprecated CategoryTheory.Mod.id (since := "2026-04-21")]

                                              Alias of CategoryTheory.Mod.id.


                                              The identity morphism on a module object.

                                              Equations
                                              Instances For
                                                @[deprecated CategoryTheory.Mod.comp (since := "2026-04-21")]
                                                def CategoryTheory.Mod_.comp {C : Type u₁} [Category.{v₁, u₁} C] [MonoidalCategory C] {D : Type u₂} [Category.{v₂, u₂} D] [MonoidalCategory.MonoidalLeftAction C D] {A : C} [MonObj A] {M N O : Mod D A} (f : M.Hom N) (g : N.Hom O) :
                                                M.Hom O

                                                Alias of CategoryTheory.Mod.comp.


                                                Composition of module object morphisms.

                                                Equations
                                                Instances For
                                                  @[deprecated CategoryTheory.Mod.hom_ext (since := "2026-04-21")]
                                                  theorem CategoryTheory.Mod_.hom_ext {C : Type u₁} [Category.{v₁, u₁} C] [MonoidalCategory C] {D : Type u₂} [Category.{v₂, u₂} D] [MonoidalCategory.MonoidalLeftAction C D] {A : C} [MonObj A] {M N : Mod D A} (f₁ f₂ : M N) (h : f₁.hom = f₂.hom) :
                                                  f₁ = f₂

                                                  Alias of CategoryTheory.Mod.hom_ext.

                                                  @[deprecated CategoryTheory.Mod.id_hom' (since := "2026-04-21")]

                                                  Alias of CategoryTheory.Mod.id_hom'.

                                                  @[deprecated CategoryTheory.Mod.comp_hom' (since := "2026-04-21")]

                                                  Alias of CategoryTheory.Mod.comp_hom'.

                                                  @[deprecated CategoryTheory.Mod.regular (since := "2026-04-21")]

                                                  Alias of CategoryTheory.Mod.regular.


                                                  A monoid object as a module over itself.

                                                  Equations
                                                  Instances For
                                                    @[deprecated CategoryTheory.Mod.forget (since := "2026-04-21")]

                                                    Alias of CategoryTheory.Mod.forget.


                                                    The forgetful functor from module objects to the ambient category.

                                                    Equations
                                                    Instances For
                                                      @[deprecated CategoryTheory.Mod.scalarRestriction (since := "2026-04-21")]

                                                      Alias of CategoryTheory.Mod.scalarRestriction.


                                                      When M is a B-module in D and f : A ⟶ B is a morphism of internal monoid objects, M inherits an A-module structure via "restriction of scalars", i.e γ[A, M] = f.hom ⊵ₗ M ≫ γ[B, M].

                                                      Equations
                                                      Instances For
                                                        @[deprecated CategoryTheory.Mod.scalarRestriction_hom (since := "2026-04-21")]
                                                        theorem CategoryTheory.Mod_.scalarRestriction_hom {C : Type u₁} [Category.{v₁, u₁} C] [MonoidalCategory C] {D : Type u₂} [Category.{v₂, u₂} D] [MonoidalCategory.MonoidalLeftAction C D] {A B : C} [MonObj A] [MonObj B] (f : A B) [IsMonHom f] (M N : D) [ModObj B M] [ModObj B N] (g : M N) [IsModHom B g] :

                                                        Alias of CategoryTheory.Mod.scalarRestriction_hom.


                                                        If g : M ⟶ N is a B-linear morphisms of B-modules, then it induces an A-linear morphism when M and N have an A-module structure obtained by restricting scalars along a monoid morphism A ⟶ B.

                                                        @[deprecated CategoryTheory.Mod.comap (since := "2026-04-21")]

                                                        Alias of CategoryTheory.Mod.comap.


                                                        A morphism of monoid objects induces a "restriction" or "comap" functor between the categories of module objects.

                                                        Equations
                                                        Instances For