Documentation

Mathlib.CategoryTheory.Monoidal.Grp_

The category of groups in a Cartesian monoidal category #

We define group objects in Cartesian monoidal categories.

We show that the associativity diagram of a group object is always Cartesian and deduce that morphisms of group objects commute with taking inverses.

We show that a finite-product-preserving functor takes group objects to group objects.

The inverse in a group object

Equations
Instances For

    The inverse in a group object

    Equations
    • One or more equations did not get rendered due to their size.
    Instances For
      @[implicit_reducible]
      Equations
      • One or more equations did not get rendered due to their size.
      @[implicit_reducible]
      Equations
      • One or more equations did not get rendered due to their size.
      structure CategoryTheory.AddGrp (C : Type u₁) [Category.{v₁, u₁} C] [CartesianMonoidalCategory C] :
      Type (max u₁ v₁)

      An additive group object in a Cartesian monoidal category.

      • X : C

        The underlying object in the ambient monoidal category

      • addGrp : AddGrpObj self.X
      Instances For
        structure CategoryTheory.Grp (C : Type u₁) [Category.{v₁, u₁} C] [CartesianMonoidalCategory C] :
        Type (max u₁ v₁)

        A group object in a Cartesian monoidal category.

        • X : C

          The underlying object in the ambient monoidal category

        • grp : GrpObj self.X
        Instances For
          @[deprecated CategoryTheory.Grp (since := "2025-10-13")]

          Alias of CategoryTheory.Grp.


          A group object in a Cartesian monoidal category.

          Equations
          Instances For
            @[reducible, inline]

            A group object is a monoid object.

            Equations
            Instances For
              @[reducible, inline]

              An additive group object is an additive monoid object.

              Equations
              Instances For

                The trivial group object.

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

                  The trivial additive group object.

                  Equations
                  • One or more equations did not get rendered due to their size.
                  Instances For
                    @[implicit_reducible]
                    Equations
                    • One or more equations did not get rendered due to their size.
                    @[implicit_reducible]
                    Equations
                    • One or more equations did not get rendered due to their size.
                    @[deprecated CategoryTheory.Grp.id_hom_hom (since := "2025-12-18")]

                    Alias of CategoryTheory.Grp.id_hom_hom.

                    @[deprecated CategoryTheory.Grp.comp_hom_hom (since := "2025-12-18")]

                    Alias of CategoryTheory.Grp.comp_hom_hom.

                    theorem CategoryTheory.Grp.hom_ext {C : Type u₁} [Category.{v₁, u₁} C] [CartesianMonoidalCategory C] {A B : Grp C} (f g : A B) (h : f.hom.hom = g.hom.hom) :
                    f = g
                    theorem CategoryTheory.AddGrp.hom_ext {C : Type u₁} [Category.{v₁, u₁} C] [CartesianMonoidalCategory C] {A B : AddGrp C} (f g : A B) (h : f.hom.hom = g.hom.hom) :
                    f = g

                    Constructor for morphisms in Grp C.

                    Equations
                    Instances For

                      Constructor for morphisms in AddGrp C.

                      Equations
                      Instances For

                        Construct a morphism A ⟶ B of Grp C from a map f : A.X ⟶ A.X and a IsMonHom f instance.

                        Equations
                        Instances For

                          Construct a morphism A ⟶ B of AddGrp C from a map f : A.X ⟶ A.X and a IsAddMonHom f instance.

                          Equations
                          Instances For
                            @[simp]
                            def CategoryTheory.Grp.ofHom {C : Type u₁} [Category.{v₁, u₁} C] [CartesianMonoidalCategory C] {A B : C} [GrpObj A] [GrpObj B] (f : A B) [IsMonHom f] :
                            { X := A, grp := inst✝ } { X := B, grp := inst✝¹ }

                            Construct a morphism Grp.mk G ⟶ Grp.mk H from a map f : G ⟶ H and a IsMonHom f instance.

                            Equations
                            Instances For
                              def CategoryTheory.AddGrp.ofHom {C : Type u₁} [Category.{v₁, u₁} C] [CartesianMonoidalCategory C] {A B : C} [AddGrpObj A] [AddGrpObj B] (f : A B) [IsAddMonHom f] :
                              { X := A, addGrp := inst✝ } { X := B, addGrp := inst✝¹ }

                              Construct a morphism AddGrp.mk G ⟶ AddGrp.mk H from a map f : G ⟶ H and a IsAddMonHom f instance.

                              Equations
                              Instances For
                                @[simp]

                                Constructor for morphisms in Grp C.

                                Equations
                                Instances For
                                  @[simp]
                                  theorem CategoryTheory.Grp.comp' {C : Type u₁} [Category.{v₁, u₁} C] [CartesianMonoidalCategory C] {A₁ A₂ A₃ : Grp C} (f : A₁ A₂) (g : A₂ A₃) :
                                  @[simp]
                                  theorem CategoryTheory.AddGrp.comp' {C : Type u₁} [Category.{v₁, u₁} C] [CartesianMonoidalCategory C] {A₁ A₂ A₃ : AddGrp C} (f : A₁ A₂) (g : A₂ A₃) :
                                  theorem CategoryTheory.Grp.comp'_assoc {C : Type u₁} [Category.{v₁, u₁} C] [CartesianMonoidalCategory C] {A₁ A₂ A₃ : Grp C} (f : A₁ A₂) (g : A₂ A₃) {Z : Mon C} (h : A₃.toMon Z) :
                                  @[reducible, inline]

                                  Transfer AddGrpObj along an isomorphism.

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

                                    Transfer GrpObj along an isomorphism.

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

                                      The map (· * f).

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

                                        The map (· + f).

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

                                          The associativity diagram of a group object is Cartesian.

                                          In fact, any monoid object whose associativity diagram is Cartesian can be made into a group object (we do not prove this in this file), so we should expect that many properties of group objects follow from this result.

                                          @[simp]

                                          Morphisms of group objects preserve inverses.

                                          @[simp]

                                          Morphisms of group objects preserve negations.

                                          @[simp]

                                          Morphisms of group objects preserve inverses.

                                          theorem CategoryTheory.GrpObj.ext {C : Type u₁} [Category.{v₁, u₁} C] [CartesianMonoidalCategory C] {X : C} (h₁ h₂ : GrpObj X) (H : h₁.toMonObj = h₂.toMonObj) :
                                          h₁ = h₂
                                          theorem CategoryTheory.AddGrpObj.ext {C : Type u₁} [Category.{v₁, u₁} C] [CartesianMonoidalCategory C] {X : C} (h₁ h₂ : AddGrpObj X) (H : h₁.toAddMonObj = h₂.toAddMonObj) :
                                          h₁ = h₂
                                          theorem CategoryTheory.GrpObj.ext_iff {C : Type u₁} [Category.{v₁, u₁} C] [CartesianMonoidalCategory C] {X : C} {h₁ h₂ : GrpObj X} :
                                          h₁ = h₂ h₁.toMonObj = h₂.toMonObj
                                          @[implicit_reducible]
                                          def CategoryTheory.GrpObj.ofInvertible {C : Type u₁} [Category.{v₁, u₁} C] (G : C) [CartesianMonoidalCategory C] [MonObj G] (h : (X : C) → (f : X G) → Invertible f) :

                                          A monoid object with invertible homs is a group object.

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

                                            The forgetful functor from group objects to monoid objects.

                                            Equations
                                            Instances For

                                              The forgetful functor from additive group objects to additive monoid objects.

                                              Equations
                                              Instances For

                                                The forgetful functor from group objects to the ambient category.

                                                Equations
                                                Instances For

                                                  The forgetful functor from additive group objects to the ambient category.

                                                  Equations
                                                  Instances For
                                                    @[simp]
                                                    theorem CategoryTheory.Grp.forget_map (C : Type u₁) [Category.{v₁, u₁} C] [CartesianMonoidalCategory C] {X✝ Y✝ : Grp C} (f : X✝ Y✝) :
                                                    (forget C).map f = f.hom.hom
                                                    @[simp]
                                                    theorem CategoryTheory.AddGrp.forget_map (C : Type u₁) [Category.{v₁, u₁} C] [CartesianMonoidalCategory C] {X✝ Y✝ : AddGrp C} (f : X✝ Y✝) :
                                                    (forget C).map f = f.hom.hom
                                                    def CategoryTheory.Grp.mkIso' {C : Type u₁} [Category.{v₁, u₁} C] [CartesianMonoidalCategory C] {G H : C} (e : G H) [GrpObj G] [GrpObj H] [IsMonHom e.hom] :
                                                    { X := G, grp := inst✝ } { X := H, grp := inst✝¹ }

                                                    Construct an isomorphism of group objects by giving a monoid isomorphism between the underlying objects.

                                                    Equations
                                                    Instances For
                                                      def CategoryTheory.AddGrp.mkIso' {C : Type u₁} [Category.{v₁, u₁} C] [CartesianMonoidalCategory C] {G H : C} (e : G H) [AddGrpObj G] [AddGrpObj H] [IsAddMonHom e.hom] :
                                                      { X := G, addGrp := inst✝ } { X := H, addGrp := inst✝¹ }

                                                      Construct an isomorphism of additive group objects by giving an additive monoid isomorphism between the underlying objects.

                                                      Equations
                                                      Instances For
                                                        @[reducible, inline]

                                                        Construct an isomorphism of group objects by giving an isomorphism between the underlying objects and checking compatibility with unit and multiplication only in the forward direction.

                                                        Equations
                                                        Instances For
                                                          @[reducible, inline]

                                                          Construct an isomorphism of additive group objects by giving an isomorphism between the underlying objects and checking compatibility with zero and addition only in the forward direction.

                                                          Equations
                                                          Instances For
                                                            @[deprecated CategoryTheory.Grp.mkIso_hom_hom_hom (since := "2025-12-18")]

                                                            Alias of CategoryTheory.Grp.mkIso_hom_hom_hom.

                                                            @[deprecated CategoryTheory.Grp.mkIso_inv_hom_hom (since := "2025-12-18")]

                                                            Alias of CategoryTheory.Grp.mkIso_inv_hom_hom.

                                                            Grp C is cartesian-monoidal #

                                                            @[implicit_reducible]
                                                            Equations
                                                            • One or more equations did not get rendered due to their size.
                                                            @[implicit_reducible]
                                                            Equations
                                                            • One or more equations did not get rendered due to their size.
                                                            @[simp]
                                                            theorem CategoryTheory.Grp.tensorHom_hom {C : Type u₁} [Category.{v₁, u₁} C] [CartesianMonoidalCategory C] [BraidedCategory C] {X₁✝ Y₁✝ X₂✝ Y₂✝ : Grp C} (f : X₁✝ Y₁✝) (g : X₂✝ Y₂✝) :
                                                            @[simp]
                                                            theorem CategoryTheory.AddGrp.tensorHom_hom {C : Type u₁} [Category.{v₁, u₁} C] [CartesianMonoidalCategory C] [BraidedCategory C] {X₁✝ Y₁✝ X₂✝ Y₂✝ : AddGrp C} (f : X₁✝ Y₁✝) (g : X₂✝ Y₂✝) :
                                                            @[deprecated CategoryTheory.Grp.whiskerLeft_hom_hom (since := "2025-12-18")]

                                                            Alias of CategoryTheory.Grp.whiskerLeft_hom_hom.

                                                            @[deprecated CategoryTheory.Grp.whiskerRight_hom_hom (since := "2025-12-18")]

                                                            Alias of CategoryTheory.Grp.whiskerRight_hom_hom.

                                                            @[deprecated CategoryTheory.Grp.associator_hom_hom_hom (since := "2025-12-18")]

                                                            Alias of CategoryTheory.Grp.associator_hom_hom_hom.

                                                            @[deprecated CategoryTheory.Grp.associator_inv_hom_hom (since := "2025-12-18")]

                                                            Alias of CategoryTheory.Grp.associator_inv_hom_hom.

                                                            @[implicit_reducible]
                                                            Equations
                                                            • One or more equations did not get rendered due to their size.
                                                            @[implicit_reducible]
                                                            Equations
                                                            • One or more equations did not get rendered due to their size.
                                                            @[implicit_reducible]
                                                            Equations
                                                            • One or more equations did not get rendered due to their size.
                                                            @[implicit_reducible]
                                                            Equations
                                                            • One or more equations did not get rendered due to their size.
                                                            @[deprecated CategoryTheory.Grp.fst_hom_hom (since := "2025-12-18")]

                                                            Alias of CategoryTheory.Grp.fst_hom_hom.

                                                            @[deprecated CategoryTheory.Grp.snd_hom_hom (since := "2025-12-18")]

                                                            Alias of CategoryTheory.Grp.snd_hom_hom.

                                                            @[implicit_reducible]
                                                            Equations
                                                            • One or more equations did not get rendered due to their size.
                                                            @[implicit_reducible]
                                                            Equations
                                                            • One or more equations did not get rendered due to their size.
                                                            @[implicit_reducible]
                                                            Equations
                                                            • One or more equations did not get rendered due to their size.
                                                            @[implicit_reducible]
                                                            Equations
                                                            • One or more equations did not get rendered due to their size.
                                                            @[deprecated CategoryTheory.Grp.braiding_hom_hom_hom (since := "2025-12-18")]

                                                            Alias of CategoryTheory.Grp.braiding_hom_hom_hom.

                                                            @[deprecated CategoryTheory.Grp.braiding_inv_hom_hom (since := "2025-12-18")]

                                                            Alias of CategoryTheory.Grp.braiding_inv_hom_hom.

                                                            @[reducible, inline]

                                                            The image of a group object under a monoidal functor is a group object.

                                                            Equations
                                                            Instances For
                                                              @[reducible, inline]

                                                              The image of an additive group object under a monoidal functor is an additive group object.

                                                              Equations
                                                              Instances For

                                                                A finite-product-preserving functor takes group objects to group objects.

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

                                                                  A finite-product-preserving functor takes additive group objects to additive group objects.

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

                                                                    If F : C ⥤ D is a fully faithful monoidal functor, then F.mapGrp : Grp C ⥤ Grp D is fully faithful too.

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

                                                                      If F : C ⥤ D is a fully faithful monoidal functor, then F.mapAddGrp : AddGrp C ⥤ AddGrp D is fully faithful too.

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

                                                                        The identity functor is also the identity on group objects.

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

                                                                          The identity functor is also the identity on additive group objects.

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

                                                                            The composition functor is also the composition on group objects.

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

                                                                              The composition functor is also the composition on additive group objects.

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

                                                                                Natural transformations between functors lift to group objects.

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

                                                                                  Natural transformations between functors lift to additive group objects.

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

                                                                                    Natural isomorphisms between functors lift to group objects.

                                                                                    Equations
                                                                                    Instances For

                                                                                      Natural isomorphisms between functors lift to additive group objects.

                                                                                      Equations
                                                                                      Instances For

                                                                                        mapGrp is functorial in the left-exact functor.

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

                                                                                          mapAddGrp is functorial in the left-exact functor.

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

                                                                                            Pullback a group object along a fully faithful monoidal functor.

                                                                                            Equations
                                                                                            Instances For
                                                                                              @[reducible, inline]

                                                                                              Pullback an additive group object along a fully faithful monoidal functor.

                                                                                              Equations
                                                                                              Instances For
                                                                                                @[simp]

                                                                                                The essential image of a full and faithful functor between cartesian-monoidal categories is the same on group objects as on objects.

                                                                                                @[simp]

                                                                                                The essential image of a full and faithful functor between cartesian-monoidal categories is the same on additive group objects as on objects.

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

                                                                                                An adjunction of monoidal functors lifts to an adjunction of their lifts to group objects.

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

                                                                                                  An adjunction of monoidal functors lifts to an adjunction of their lifts to additive group objects.

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

                                                                                                    An equivalence of categories lifts to an equivalence of their group objects.

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

                                                                                                      An equivalence of categories lifts to an equivalence of their additive group objects.

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