Presentation of the restriction of scalars of a module #
Given a morphism of rings A → B and a B-module M, we obtain a presentation
of M as a A-module from a presentation of M as B-module,
a presentation of B as a A-module (and some additional data).
TODO #
- deduce that if
Bis a finitely presented as anA-module andMis finitely presented as anB-module, thenMis finitely presented as anA-module
@[reducible, inline]
abbrev Module.Presentation.RestrictScalarsData {B : Type u_1} [Ring B] {M : Type u_2} [AddCommGroup M] [Module B M] [DecidableEq B] (presM : Presentation B M) [DecidableEq presM.G] {A : Type u_3} [CommRing A] [Algebra A B] (presB : Presentation A B) :
Type (max (max (max u_3 u_6) u_4) u_6 u_5)
The additional data that is necessary in order to obtain a presentation of the restriction of scalars of a module.
Equations
- presM.RestrictScalarsData presB = (presB.finsupp presM.G).CokernelData (↑A presM.map) fun (x : presB.G × presM.R) => match x with | (g, g') => presB.var g • Finsupp.single g' 1
Instances For
noncomputable def Module.Presentation.restrictScalars {B : Type u_1} [Ring B] {M : Type u_2} [AddCommGroup M] [Module B M] [DecidableEq B] (presM : Presentation B M) [DecidableEq presM.G] {A : Type u_3} [CommRing A] [Algebra A B] [Module A M] [IsScalarTower A B M] (presB : Presentation A B) (data : presM.RestrictScalarsData presB) :
Presentation A M
A presentation of the restriction of scalars from B to A of a B-module M,
given a presentation of M as a B-module, a presentation of B as an A-module,
and an additional data.
Equations
- presM.restrictScalars presB data = (presB.finsupp presM.G).ofExact data ⋯ ⋯ ⋯