The following functions construct syzygy modules.
SyzygyModule(M) : ModMPol -> [ ModMPolElt ]
Given a module M, return the syzygy module S of M. If the basis B of M has length k, the syzygy module S has degree k and elements of S express a syzygy amongst the k elements of the basis B. Note that the degree of the resulting module thus depends on the current basis of M.
Given a homogeneous module M, return the syzygy module S of the minimal basis of M. If the minimal basis B of M has length k, the syzygy module S has degree k and elements of S express a syzygy amongst the k elements of the minimal basis B.
> P<x, y, z> := PolynomialRing(RationalField(), 3);
> M := Module(P, 3);
> B := [[y, x^2, z], [z^3, x^3, y],
> [z, y^2, x], [x, y, z]];
> S := sub<M | B>;
> Z := SyzygyModule(S);
> Groebner(Z);
> print Z;
Module of degree 4
TOP Order
Coefficient ring:
Polynomial ring of rank 3 over Rational Field
Lexicographical Order
Variables: x, y, z
Basis:
[
-x^5[1] + x^4*y[4] + x^4*z[3] + x^4[2] - x^3*y*z[3]
- x^3*y[3] - x^3*z^3[4] - x^3*z^2[4] +
x^3*z^2[1] + x^2*y*z[4] + x^2*z^4[3] -
x^2*z^2[2] + x*y^3[1] - x*y^2*z[2] - x*y^2[2] +
x*y*z^3[1] - y^4[4] + y^3*z[2] + y^3[3] +
y^2*z^4[4] - y^2*z^4[1] - y^2*z[1] - y*z^4[3] +
y*z^2[2]
]
[Next] [Prev] [_____] [Left] [Up] [Index] [Root]