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,
FGModuleCatCat 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 #
- Show that
FGModuleCat R
is abelian whenR
is (left)-noetherian.
Define FGModuleCat
as the subtype of ModuleCat.{u} R
of finitely generated modules.
Equations
- FGModuleCat R = CategoryTheory.FullSubcategory fun (V : ModuleCat R) => Module.Finite R ↑V
Instances For
Equations
- instCoeSortFGModuleCatType = { coe := FGModuleCat.carrier }
Equations
- instAddCommGroupCarrier M = let_fun this := inferInstance; this
Equations
- instModuleCarrierToSemiringToAddCommMonoidInstAddCommGroupCarrier M = let_fun this := inferInstance; this
Equations
- instFunLikeHomFGModuleCatToQuiverToCategoryStructInstLargeCategoryFGModuleCatCarrier = LinearMap.instFunLike
Equations
- (_ : LinearMapClass (M ⟶ N) R ↑M ↑N) = (_ : SemilinearMapClass (↑M.obj →ₗ[R] ↑N.obj) (RingHom.id R) ↑M.obj ↑N.obj)
Equations
- (_ : Module.Finite R ↑V) = (_ : Module.Finite R ↑V.obj)
Equations
- FGModuleCat.instInhabitedFGModuleCat R = { default := { obj := ModuleCat.of R R, property := (_ : Module.Finite R R) } }
Lift an unbundled finitely generated module to FGModuleCat R
.
Equations
- FGModuleCat.of R V = { obj := ModuleCat.of R V, property := (_ : Module.Finite R V) }
Instances For
Equations
- (_ : Module.Finite R ↑V) = (_ : Module.Finite R ↑V.obj)
Equations
- One or more equations did not get rendered due to their size.
Converts and isomorphism in the category FGModuleCat R
to
a LinearEquiv
between the underlying modules.
Equations
- FGModuleCat.isoToLinearEquiv i = CategoryTheory.Iso.toLinearEquiv ((CategoryTheory.forget₂ (FGModuleCat R) (ModuleCat R)).mapIso i)
Instances For
Converts a LinearEquiv
to an isomorphism in the category FGModuleCat R
.
Equations
Instances For
Equations
- One or more equations did not get rendered due to their size.
Equations
Equations
- (_ : CategoryTheory.MonoidalPreadditive (FGModuleCat R)) = (_ : CategoryTheory.MonoidalPreadditive (FGModuleCat R))
Equations
- (_ : CategoryTheory.MonoidalLinear R (FGModuleCat R)) = (_ : CategoryTheory.MonoidalLinear R (FGModuleCat R))
The forgetful functor FGModuleCat R ⥤ Module R
as a monoidal functor.
Equations
Instances For
Equations
- (_ : CategoryTheory.Faithful (FGModuleCat.forget₂Monoidal R).toLaxMonoidalFunctor.toFunctor) = (_ : CategoryTheory.Faithful (FGModuleCat.forget₂Monoidal R).toLaxMonoidalFunctor.toFunctor)
Equations
- One or more equations did not get rendered due to their size.
Equations
- One or more equations did not get rendered due to their size.
Equations
- (_ : Module.Finite K (V ⟶ W)) = (_ : Module.Finite K (↑V →ₗ[K] ↑W))
Equations
- One or more equations did not get rendered due to their size.
Equations
- One or more equations did not get rendered due to their size.
The dual module is the dual in the rigid monoidal category FGModuleCat K
.
Equations
- FGModuleCat.FGModuleCatDual K V = { obj := ModuleCat.of K (Module.Dual K ↑V), property := (_ : FiniteDimensional K (Module.Dual K ↑V)) }
Instances For
The coevaluation map is defined in LinearAlgebra.coevaluation
.
Equations
Instances For
The evaluation morphism is given by the contraction map.
Equations
Instances For
Equations
Equations
- FGModuleCat.rightRigidCategory K = CategoryTheory.RightRigidCategory.mk