Documentation

Mathlib.Algebra.Category.FGModuleCat.Basic

The category of finitely generated modules over a ring #

This introduces FGModuleCat R, the category of finitely generated modules over a ring R. It is implemented as a full subcategory on a subtype of ModuleCat R.

When K is a field, FGModuleCat K is the category of finite-dimensional vector spaces over K.

We first create the instance as a preadditive category. When R is commutative we then give the structure as an R-linear monoidal category. When R is a field we give it the structure of a closed monoidal category and then as a right-rigid monoidal category.

Future work #

Finitely generated modules, as a property of objects of ModuleCat R.

Equations
    Instances For
      @[reducible, inline]
      abbrev FGModuleCat (R : Type u) [Ring R] :
      Type (max u (v + 1))

      The category of finitely generated modules.

      Equations
        Instances For
          def FGModuleCat.carrier {R : Type u} [Ring R] (M : FGModuleCat R) :

          A synonym for M.obj.carrier, which we can mark with @[coe].

          Equations
            Instances For
              @[simp]
              theorem FGModuleCat.obj_carrier {R : Type u} [Ring R] (M : FGModuleCat R) :
              M.obj = M
              instance instAddCommGroupCarrier {R : Type u} [Ring R] (M : FGModuleCat R) :
              Equations
                instance instModuleCarrier {R : Type u} [Ring R] (M : FGModuleCat R) :
                Module R M
                Equations
                  @[deprecated FGModuleCat.hom_hom_comp (since := "2025-12-18")]

                  Alias of FGModuleCat.hom_hom_comp.

                  @[deprecated FGModuleCat.hom_hom_id (since := "2025-12-18")]

                  Alias of FGModuleCat.hom_hom_id.

                  @[reducible, inline]
                  abbrev FGModuleCat.of (R : Type u) [Ring R] (V : Type v) [AddCommGroup V] [Module R V] [Module.Finite R V] :

                  Lift an unbundled finitely generated module to FGModuleCat R.

                  Equations
                    Instances For
                      @[simp]
                      theorem FGModuleCat.of_carrier (R : Type u) [Ring R] (V : Type v) [AddCommGroup V] [Module R V] [Module.Finite R V] :
                      (of R V) = V
                      @[reducible, inline]
                      abbrev FGModuleCat.ofHom {R : Type u} [Ring R] {V W : Type v} [AddCommGroup V] [Module R V] [Module.Finite R V] [AddCommGroup W] [Module R W] [Module.Finite R W] (f : V →ₗ[R] W) :
                      of R V of R W

                      Lift a linear map between finitely generated modules to FGModuleCat R.

                      Equations
                        Instances For
                          theorem FGModuleCat.hom_ext {R : Type u} [Ring R] {V W : FGModuleCat R} {f g : V W} (h : ModuleCat.Hom.hom f.hom = ModuleCat.Hom.hom g.hom) :
                          f = g
                          def FGModuleCat.isoToLinearEquiv {R : Type u} [Ring R] {V W : FGModuleCat R} (i : V W) :
                          V ≃ₗ[R] W

                          Converts an isomorphism in the category FGModuleCat R to a LinearEquiv between the underlying modules.

                          Equations
                            Instances For

                              Converts a LinearEquiv to an isomorphism in the category FGModuleCat R.

                              Equations
                                Instances For

                                  Universe lifting as a functor on FGModuleCat.

                                  Equations
                                    Instances For

                                      Universe lifting is fully faithful.

                                      Equations
                                        Instances For
                                          @[simp]
                                          theorem FGModuleCat.ihom_obj (K : Type u) [Field K] (V W : FGModuleCat K) :
                                          (VW) = of K (V.obj W.obj)

                                          The dual module is the dual in the rigid monoidal category FGModuleCat K.

                                          Equations
                                            Instances For
                                              @[simp]

                                              @[simp]-normal form of FGModuleCatEvaluation_apply, where the carriers have been unfolded.

                                              @[simp] lemmas for LinearMap.comp and categorical identities.