up previous next
submodule    --    submodule generated by list


Syntax
submodule(L: LIST of MODULEELEM): MODULE
submodule(F: MODULE, L: LIST of MODULEELEM): MODULE

Description
The first form returns the ideal generated by L. The second is the same as the first but works also if L = [].

This function is not friendly if you write the input by hand: we suggest SubmoduleCols, SubmoduleRows for creating a module from the rows or columns of a matrix.

NOTE: the generators are a LIST of MODULEELEM, not a LIST of LISTS of RINGELEM.

Example
/**/  use R ::= QQ[x,y,z];
/**/  R3 := NewFreeModule(R, 3);
/**/  L := [ModuleElem(R3, [x,y,z]), ModuleElem(R3, [x-1,0,z])];
/**/  M := submodule(R3, L); -- equivalent to
/**/  M := submodule(L);     -- (L not empty)
/**/  gens(M);
[[x, y, z], [x -1, 0, z]]

See Also