This is the basic construction for a
LabeledModule. Given a free module
M of rank
r, this constructs a labeled module with basis labeled by
{0,..,r-1} and no underlying modules.
i1 : S = ZZ/101[a,b,c];
|
i2 : E = labeledModule S^3
3
o2 = S
o2 : free S-module with labeled basis
|
i3 : basisList E
o3 = {0, 1, 2}
o3 : List
|
i4 : underlyingModules E
o4 = {}
o4 : List
|
i5 : module E
3
o5 = S
o5 : S-module, free
|
i6 : rank E
o6 = 3
|
For technical reasons, it is often convenient to construct a rank 1 free module whose generator is labeled by the empty set. This is constructed by labeledModule S.
i7 : S = ZZ/101[a,b,c];
|
i8 : F = labeledModule S
1
o8 = S
o8 : free S-module with labeled basis
|
i9 : basisList F
o9 = {{}}
o9 : List
|
i10 : underlyingModules F
o10 = {}
o10 : List
|
i11 : module F
1
o11 = S
o11 : S-module, free
|
i12 : E = labeledModule S^1
1
o12 = S
o12 : free S-module with labeled basis
|
i13 : basisList E
o13 = {0}
o13 : List
|
i14 : underlyingModules E
o14 = {}
o14 : List
|