Graded Module #
Given an R
-algebra A
graded by 𝓐
, a graded A
-module M
is expressed as
DirectSum.Decomposition 𝓜
and SetLike.GradedSMul 𝓐 𝓜
.
Then ⨁ i, 𝓜 i
is an A
-module and is isomorphic to M
.
Tags #
graded module
A graded version of DistribMulAction
.
- smul : {i : ιA} → {j : ιB} → A i → M j → M (i +ᵥ j)
- one_smul : ∀ (b : GradedMonoid M), 1 • b = b
- mul_smul : ∀ (a a' : GradedMonoid A) (b : GradedMonoid M), (a * a') • b = a • a' • b
- smul_add : ∀ {i : ιA} {j : ιB} (a : A i) (b c : M j), GradedMonoid.GSMul.smul a (b + c) = GradedMonoid.GSMul.smul a b + GradedMonoid.GSMul.smul a c
- smul_zero : ∀ {i : ιA} {j : ιB} (a : A i), GradedMonoid.GSMul.smul a 0 = 0
Instances
A graded version of Module
.
Instances
A graded version of Semiring.toModule
.
Equations
The piecewise multiplication from the Mul
instance, as a bundled homomorphism.
Equations
- DirectSum.gsmulHom A M = { toFun := fun (a : A i) => { toFun := fun (b : M j) => GradedMonoid.GSMul.smul a b, map_zero' := ⋯, map_add' := ⋯ }, map_zero' := ⋯, map_add' := ⋯ }
Instances For
For graded monoid A
and a graded module M
over A
. Gmodule.smulAddMonoidHom
is the
⨁ᵢ Aᵢ
-scalar multiplication on ⨁ᵢ Mᵢ
induced by gsmul_hom
.
Equations
- One or more equations did not get rendered due to their size.
Instances For
Equations
- One or more equations did not get rendered due to their size.
The Module
derived from gmodule A M
.
Equations
- DirectSum.Gmodule.module A M = Module.mk ⋯ ⋯
Equations
Equations
[SetLike.GradedMonoid 𝓐] [SetLike.GradedSMul 𝓐 𝓜]
is the internal version of graded
module, the internal version can be translated into the external version gmodule
.
Equations
- SetLike.gmodule 𝓐 𝓜 = DirectSum.Gmodule.mk ⋯ ⋯
The smul multiplication of A
on ⨁ i, 𝓜 i
from (⨁ i, 𝓐 i) →+ (⨁ i, 𝓜 i) →+ ⨁ i, 𝓜 i
turns ⨁ i, 𝓜 i
into an A
-module
Instances For
⨁ i, 𝓜 i
and M
are isomorphic as A
-modules.
"The internal version" and "the external version" are isomorphism as A
-modules.
Equations
- GradedModule.linearEquiv 𝓐 𝓜 = { toAddHom := (DirectSum.decomposeAddEquiv 𝓜).toAddHom, map_smul' := ⋯, invFun := (DirectSum.decomposeAddEquiv 𝓜).symm.toFun, left_inv := ⋯, right_inv := ⋯ }