up previous next
syz    --    syzygy modules


Syntax
syz(L: LIST of RINGELEM): MODULE
syz(M: IDEAL|MODULE, Index: INT): MODULE

Description
In the first two forms this function computes the syzygy module of a list of polynomials or module elements. SyzOfGens(I) is the same as syz(gens(I)).

In the last form this function returns the specified syzygy module of the minimal free resolution of M which must be homogeneous. As a side effect, it computes the Groebner basis of M. (***** NOT YET IMPLEMENTED *****)

The coefficient ring must be a field.

Example
/**/  use R ::= QQ[x,y,z];
/**/  indent(syz([x^2-y-1, y^3-z, x^2-y, y^3-z]));
SubmoduleRows(F, matrix(
  [y^3 -z, 0, 0, -x^2 +y +1],
  [0, 1, 0, -1],
  [x^2 -y, 0, -x^2 +y +1, 0],
  [0, 0, y^3 -z, -x^2 +y]
))
-------------------------------
/**/  I := ideal(x, x, y);
/**/  syz(gens(I));
submodule(FreeModule(..), [[1, -1, 0],  [0, y, -x]])
/**/  SyzOfGens(I);
submodule(FreeModule(..), [[1, -1, 0],  [0, y, -x]])

  syz(I, 1);      -- NOT YET IMPLEMENTED
Module([[x, -y]])
-------------------------------
  I := ideal(x^2-yz, xy-z^2, xyz);    -- NOT YET IMPLEMENTED
  syz(I,0);
Module([x^2 - yz], [xy - z^2], [xyz])
-------------------------------
  syz(I,1);    -- NOT YET IMPLEMENTED
  Module([-x^2 + yz, xy - z^2, 0],  [xz^2, -yz^2, -y^2 + xz],
         [z^3, 0, -xy + z^2],  [0, z^3, -x^2 + yz])
-------------------------------
  syz(I,2);
Module([0, z, -x, y],  [-z^2, -x, y, -z])
-------------------------------
  syz(I,3);
Module([[0]])
-------------------------------
  Res(I);
0 --> R(-6)^2 --> R(-4)(+)R(-5)^3 --> R(-2)^2(+)R(-3)
-------------------------------

See Also