Documentation

Mathlib.CategoryTheory.Monoidal.Comon_

The category of comonoids in a monoidal category. #

We define comonoids in a monoidal category C, and show that they are equivalently monoid objects in the opposite category.

We construct the monoidal structure on Comon C, when C is braided.

An oplax monoidal functor takes comonoid objects to comonoid objects. That is, a oplax monoidal functor F : C ⥤ D induces a functor Comon C ⥤ Comon D.

TODO #

The comultiplication morphism of a comonoid object.

Equations
Instances For

    The comultiplication morphism of a comonoid object.

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

      The counit morphism of a comonoid object.

      Equations
      Instances For

        The counit morphism of a comonoid object.

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

          The canonical comonoid structure on the monoidal unit. This is not a global instance to avoid conflicts with other comonoid structures.

          Equations
          • One or more equations did not get rendered due to their size.
          Instances For
            @[deprecated IsComonHom (since := "2025-09-15")]

            Alias of IsComonHom.


            The property that a morphism between comonoid objects is a comonoid morphism.

            Equations
            Instances For

              A comonoid object internal to a monoidal category.

              When the monoidal category is preadditive, this is also sometimes called a "coalgebra object".

              • X : C

                The underlying object of a comonoid object.

              • comon : ComonObj self.X
              Instances For
                @[deprecated Comon (since := "2025-09-15")]

                Alias of Comon.


                A comonoid object internal to a monoidal category.

                When the monoidal category is preadditive, this is also sometimes called a "coalgebra object".

                Equations
                Instances For

                  The trivial comonoid object. We later show this is terminal in Comon C.

                  Equations
                  Instances For

                    A morphism of comonoid objects.

                    • hom : M.X N.X

                      The underlying morphism of a morphism of comonoid objects.

                    • isComonHom_hom : IsComonHom self.hom
                    Instances For
                      theorem Comon.Hom.ext {C : Type u₁} {inst✝ : CategoryTheory.Category.{v₁, u₁} C} {inst✝¹ : CategoryTheory.MonoidalCategory C} {M N : Comon C} {x y : M.Hom N} (hom : x.hom = y.hom) :
                      x = y
                      theorem Comon.Hom.ext_iff {C : Type u₁} {inst✝ : CategoryTheory.Category.{v₁, u₁} C} {inst✝¹ : CategoryTheory.MonoidalCategory C} {M N : Comon C} {x y : M.Hom N} :
                      x = y x.hom = y.hom
                      @[reducible, inline]

                      Construct a morphism M ⟶ N of Comon C from a map f : M ⟶ N and a IsComonHom f instance.

                      Equations
                      Instances For

                        The identity morphism on a comonoid object.

                        Equations
                        Instances For
                          def Comon.comp {C : Type u₁} [CategoryTheory.Category.{v₁, u₁} C] [CategoryTheory.MonoidalCategory C] {M N O : Comon C} (f : M.Hom N) (g : N.Hom O) :
                          M.Hom O

                          Composition of morphisms of monoid objects.

                          Equations
                          Instances For
                            Equations
                            • One or more equations did not get rendered due to their size.
                            theorem Comon.ext {C : Type u₁} [CategoryTheory.Category.{v₁, u₁} C] [CategoryTheory.MonoidalCategory C] {X Y : Comon C} {f g : X Y} (w : f.hom = g.hom) :
                            f = g

                            The forgetful functor from comonoid objects to the ambient category.

                            Equations
                            Instances For
                              @[simp]
                              theorem Comon.forget_map (C : Type u₁) [CategoryTheory.Category.{v₁, u₁} C] [CategoryTheory.MonoidalCategory C] {X✝ Y✝ : Comon C} (f : X✝ Y✝) :
                              (forget C).map f = f.hom

                              The forgetful functor from comonoid objects to the ambient category reflects isomorphisms.

                              Construct an isomorphism of comonoids by giving an isomorphism between the underlying objects and checking compatibility with counit and comultiplication only in the forward direction.

                              Equations
                              • Comon.mkIso' f = { hom := { hom := f.hom, isComonHom_hom := inst✝ }, inv := { hom := f.inv, isComonHom_hom := }, hom_inv_id := , inv_hom_id := }
                              Instances For

                                Construct an isomorphism of comonoids by giving an isomorphism between the underlying objects and checking compatibility with counit and comultiplication only in the forward direction.

                                Equations
                                • Comon.mkIso f f_counit f_comul = { hom := { hom := f.hom, isComonHom_hom := }, inv := { hom := f.inv, isComonHom_hom := }, hom_inv_id := , inv_hom_id := }
                                Instances For
                                  Equations
                                  @[reducible, inline]

                                  Auxiliary definition for ComonToMonOpOpObj.

                                  Equations
                                  Instances For
                                    @[deprecated Comon.ComonToMonOpOpObjMon (since := "2025-09-15")]

                                    Alias of Comon.ComonToMonOpOpObjMon.


                                    Auxiliary definition for ComonToMonOpOpObj.

                                    Equations
                                    Instances For

                                      Turn a comonoid object into a monoid object in the opposite category.

                                      Equations
                                      Instances For
                                        @[deprecated Comon.ComonToMonOpOpObj (since := "2025-09-15")]

                                        Alias of Comon.ComonToMonOpOpObj.


                                        Turn a comonoid object into a monoid object in the opposite category.

                                        Equations
                                        Instances For

                                          The contravariant functor turning comonoid objects into monoid objects in the opposite category.

                                          Equations
                                          • One or more equations did not get rendered due to their size.
                                          Instances For
                                            @[simp]
                                            theorem Comon.ComonToMonOpOp_map (C : Type u₁) [CategoryTheory.Category.{v₁, u₁} C] [CategoryTheory.MonoidalCategory C] {X✝ Y✝ : Comon C} (f : X✝ Y✝) :
                                            (ComonToMonOpOp C).map f = Opposite.op { hom := f.hom.op, isMonHom_hom := }
                                            @[deprecated Comon.ComonToMonOpOp (since := "2025-09-15")]

                                            Alias of Comon.ComonToMonOpOp.


                                            The contravariant functor turning comonoid objects into monoid objects in the opposite category.

                                            Equations
                                            Instances For
                                              @[reducible, inline]

                                              Auxiliary definition for MonOpOpToComonObj.

                                              Equations
                                              Instances For
                                                @[deprecated Comon.MonOpOpToComonObjComon (since := "2025-09-15")]

                                                Alias of Comon.MonOpOpToComonObjComon.


                                                Auxiliary definition for MonOpOpToComonObj.

                                                Equations
                                                Instances For

                                                  Turn a monoid object in the opposite category into a comonoid object.

                                                  Equations
                                                  Instances For
                                                    @[deprecated Comon.MonOpOpToComonObj (since := "2025-09-15")]

                                                    Alias of Comon.MonOpOpToComonObj.


                                                    Turn a monoid object in the opposite category into a comonoid object.

                                                    Equations
                                                    Instances For

                                                      The contravariant functor turning monoid objects in the opposite category into comonoid objects.

                                                      Equations
                                                      • One or more equations did not get rendered due to their size.
                                                      Instances For
                                                        @[deprecated Comon.MonOpOpToComon (since := "2025-09-15")]

                                                        Alias of Comon.MonOpOpToComon.


                                                        The contravariant functor turning monoid objects in the opposite category into comonoid objects.

                                                        Equations
                                                        Instances For

                                                          Comonoid objects are contravariantly equivalent to monoid objects in the opposite category.

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

                                                            Comonoid objects in a braided category form a monoidal category.

                                                            This definition is via transporting back and forth to monoids in the opposite category.

                                                            Equations

                                                            Preliminary statement of the comultiplication for a tensor product of comonoids. This version is the definitional equality provided by transport, and not quite as good as the version provided in tensorObj_comul below.

                                                            @[simp]

                                                            The comultiplication on the tensor product of two comonoids is the tensor product of the comultiplications followed by the tensor strength (to shuffle the factors back into order).

                                                            The forgetful functor from Comon C to C is monoidal when C is monoidal.

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

                                                            The image of a comonoid object under a oplax monoidal functor is a comonoid object.

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

                                                              A oplax monoidal functor takes comonoid objects to comonoid objects.

                                                              That is, a oplax monoidal functor F : C ⥤ D induces a functor Comon C ⥤ Comon D.

                                                              Equations
                                                              • One or more equations did not get rendered due to their size.
                                                              Instances For
                                                                @[simp]
                                                                theorem CategoryTheory.Functor.mapComon_map_hom {C : Type u₁} [Category.{v₁, u₁} C] [MonoidalCategory C] {D : Type u₂} [Category.{v₂, u₂} D] [MonoidalCategory D] (F : Functor C D) [F.OplaxMonoidal] {X✝ Y✝ : Comon C} (f : X✝ Y✝) :
                                                                (F.mapComon.map f).hom = F.map f.hom