Documentation

Mathlib.CategoryTheory.Action.Basic

Action V G, the category of actions of a monoid G inside some category V. #

The prototypical example is V = ModuleCat R, where Action (ModuleCat R) G is the category of R-linear representations of G.

We check Action V G ≌ (CategoryTheory.singleObj G ⥤ V), and construct the restriction functors res {G H : MonCat} (f : G ⟶ H) : Action V H ⥤ Action V G.

structure Action (V : Type (u + 1)) [CategoryTheory.LargeCategory V] (G : MonCat) :
Type (u + 1)

An Action V G represents a bundled action of the monoid G on an object of some category V.

As an example, when V = ModuleCat R, this is an R-linear representation of G, while when V = Type this is a G-action.

Instances For

    When a group acts, we can lift the action to the group of automorphisms.

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

      The trivial representation of a group.

      Equations
      Instances For
        structure Action.Hom {V : Type (u + 1)} [CategoryTheory.LargeCategory V] {G : MonCat} (M N : Action V G) :

        A homomorphism of Action V Gs is a morphism between the underlying objects, commuting with the action of G.

        Instances For
          theorem Action.Hom.ext {V : Type (u + 1)} {inst✝ : CategoryTheory.LargeCategory V} {G : MonCat} {M N : Action V G} {x y : M.Hom N} (hom : x.hom = y.hom) :
          x = y
          def Action.Hom.id {V : Type (u + 1)} [CategoryTheory.LargeCategory V] {G : MonCat} (M : Action V G) :
          M.Hom M

          The identity morphism on an Action V G.

          Equations
          Instances For
            instance Action.Hom.instInhabited {V : Type (u + 1)} [CategoryTheory.LargeCategory V] {G : MonCat} (M : Action V G) :
            Equations
            def Action.Hom.comp {V : Type (u + 1)} [CategoryTheory.LargeCategory V] {G : MonCat} {M N K : Action V G} (p : M.Hom N) (q : N.Hom K) :
            M.Hom K

            The composition of two Action V G homomorphisms is the composition of the underlying maps.

            Equations
            Instances For
              @[simp]
              theorem Action.Hom.comp_hom {V : Type (u + 1)} [CategoryTheory.LargeCategory V] {G : MonCat} {M N K : Action V G} (p : M.Hom N) (q : N.Hom K) :
              theorem Action.hom_ext {V : Type (u + 1)} [CategoryTheory.LargeCategory V] {G : MonCat} {M N : Action V G} (φ₁ φ₂ : M N) (h : φ₁.hom = φ₂.hom) :
              φ₁ = φ₂

              Construct an isomorphism of G actions/representations from an isomorphism of the underlying objects, where the forward direction commutes with the group action.

              Equations
              • Action.mkIso f comm = { hom := { hom := f.hom, comm := comm }, inv := { hom := f.inv, comm := }, hom_inv_id := , inv_hom_id := }
              Instances For
                @[instance 100]

                Auxiliary definition for functorCategoryEquivalence.

                Equations
                • One or more equations did not get rendered due to their size.
                Instances For
                  @[simp]
                  theorem Action.FunctorCategoryEquivalence.functor_map_app {V : Type (u + 1)} [CategoryTheory.LargeCategory V] {G : MonCat} {X✝ Y✝ : Action V G} (f : X✝ Y✝) (x✝ : CategoryTheory.SingleObj G) :
                  (functor.map f).app x✝ = f.hom

                  Auxiliary definition for functorCategoryEquivalence.

                  Equations
                  • One or more equations did not get rendered due to their size.
                  Instances For
                    @[simp]
                    theorem Action.FunctorCategoryEquivalence.inverse_obj_ρ {V : Type (u + 1)} [CategoryTheory.LargeCategory V] {G : MonCat} (F : CategoryTheory.Functor (CategoryTheory.SingleObj G) V) :
                    (inverse.obj F).ρ = MonCat.ofHom { toFun := fun (g : G) => F.map g, map_one' := , map_mul' := }

                    Auxiliary definition for functorCategoryEquivalence.

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

                      Auxiliary definition for functorCategoryEquivalence.

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

                        The category of actions of G in the category V is equivalent to the functor category singleObj G ⥤ V.

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

                          (implementation) The forgetful functor from bundled actions to the underlying objects.

                          Use the CategoryTheory.forget API provided by the HasForget instance below, rather than using this directly.

                          Equations
                          Instances For
                            @[simp]
                            theorem Action.forget_obj (V : Type (u + 1)) [CategoryTheory.LargeCategory V] (G : MonCat) (M : Action V G) :
                            (forget V G).obj M = M.V
                            @[simp]
                            theorem Action.forget_map (V : Type (u + 1)) [CategoryTheory.LargeCategory V] (G : MonCat) {X✝ Y✝ : Action V G} (f : X✝ Y✝) :
                            (forget V G).map f = f.hom
                            @[reducible, inline]
                            abbrev Action.HomSubtype (V : Type (u + 1)) [CategoryTheory.LargeCategory V] (G : MonCat) {FV : VVType u_1} {CV : VType u_2} [(X Y : V) → FunLike (FV X Y) (CV X) (CV Y)] [CategoryTheory.ConcreteCategory V FV] (M N : Action V G) :
                            Type u_1

                            The type of V-morphisms that can be lifted back to morphisms in the category Action.

                            Equations
                            • One or more equations did not get rendered due to their size.
                            Instances For
                              instance Action.instFunLikeHomSubtypeV (V : Type (u + 1)) [CategoryTheory.LargeCategory V] (G : MonCat) {FV : VVType u_1} {CV : VType u_2} [(X Y : V) → FunLike (FV X Y) (CV X) (CV Y)] [CategoryTheory.ConcreteCategory V FV] (M N : Action V G) :
                              FunLike (HomSubtype V G M N) (CV M.V) (CV N.V)
                              Equations
                              instance Action.instConcreteCategoryHomSubtypeV (V : Type (u + 1)) [CategoryTheory.LargeCategory V] (G : MonCat) {FV : VVType u_1} {CV : VType u_2} [(X Y : V) → FunLike (FV X Y) (CV X) (CV Y)] [CategoryTheory.ConcreteCategory V FV] :
                              Equations
                              • One or more equations did not get rendered due to their size.
                              Equations

                              The forgetful functor is intertwined by functorCategoryEquivalence with evaluation at PUnit.star.

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

                                Actions/representations of the trivial group are just objects in the ambient category.

                                Equations
                                • One or more equations did not get rendered due to their size.
                                Instances For
                                  def Action.res (V : Type (u + 1)) [CategoryTheory.LargeCategory V] {G H : MonCat} (f : G H) :

                                  The "restriction" functor along a monoid homomorphism f : G ⟶ H, taking actions of H to actions of G.

                                  (This makes sense for any homomorphism, but the name is natural when f is a monomorphism.)

                                  Equations
                                  • One or more equations did not get rendered due to their size.
                                  Instances For
                                    @[simp]
                                    theorem Action.res_map_hom (V : Type (u + 1)) [CategoryTheory.LargeCategory V] {G H : MonCat} (f : G H) {X✝ Y✝ : Action V H} (p : X✝ Y✝) :
                                    ((res V f).map p).hom = p.hom
                                    @[simp]
                                    theorem Action.res_obj_V (V : Type (u + 1)) [CategoryTheory.LargeCategory V] {G H : MonCat} (f : G H) (M : Action V H) :
                                    ((res V f).obj M).V = M.V
                                    @[simp]
                                    theorem Action.res_obj_ρ (V : Type (u + 1)) [CategoryTheory.LargeCategory V] {G H : MonCat} (f : G H) (M : Action V H) :

                                    The natural isomorphism from restriction along the identity homomorphism to the identity functor on Action V G.

                                    Equations
                                    Instances For
                                      def Action.resComp (V : Type (u + 1)) [CategoryTheory.LargeCategory V] {G H K : MonCat} (f : G H) (g : H K) :

                                      The natural isomorphism from the composition of restrictions along homomorphisms to the restriction along the composition of homomorphism.

                                      Equations
                                      Instances For
                                        @[simp]
                                        theorem Action.resComp_hom_app_hom (V : Type (u + 1)) [CategoryTheory.LargeCategory V] {G H K : MonCat} (f : G H) (g : H K) (X : Action V K) :
                                        @[simp]
                                        theorem Action.resComp_inv_app_hom (V : Type (u + 1)) [CategoryTheory.LargeCategory V] {G H K : MonCat} (f : G H) (g : H K) (X : Action V K) :
                                        instance Action.instFaithfulRes (V : Type (u + 1)) [CategoryTheory.LargeCategory V] {G H : MonCat} (f : G H) :

                                        The functor from Action V H to Action V G induced by a morphism f : G → H is faithful.

                                        The functor from Action V H to Action V G induced by a morphism f : G → H is full if f is surjective.

                                        def CategoryTheory.Functor.mapAction {V : Type (u + 1)} [LargeCategory V] {W : Type (u + 1)} [LargeCategory W] (F : Functor V W) (G : MonCat) :
                                        Functor (Action V G) (Action W G)

                                        A functor between categories induces a functor between the categories of G-actions within those categories.

                                        Equations
                                        • One or more equations did not get rendered due to their size.
                                        Instances For
                                          @[simp]
                                          theorem CategoryTheory.Functor.mapAction_obj_ρ {V : Type (u + 1)} [LargeCategory V] {W : Type (u + 1)} [LargeCategory W] (F : Functor V W) (G : MonCat) (M : Action V G) :
                                          ((F.mapAction G).obj M).ρ = MonCat.ofHom { toFun := fun (g : G) => F.map ((ConcreteCategory.hom M.ρ) g), map_one' := , map_mul' := }
                                          @[simp]
                                          theorem CategoryTheory.Functor.mapAction_obj_V {V : Type (u + 1)} [LargeCategory V] {W : Type (u + 1)} [LargeCategory W] (F : Functor V W) (G : MonCat) (M : Action V G) :
                                          ((F.mapAction G).obj M).V = F.obj M.V
                                          @[simp]
                                          theorem CategoryTheory.Functor.mapAction_map_hom {V : Type (u + 1)} [LargeCategory V] {W : Type (u + 1)} [LargeCategory W] (F : Functor V W) (G : MonCat) {X✝ Y✝ : Action V G} (f : X✝ Y✝) :
                                          ((F.mapAction G).map f).hom = F.map f.hom