[Next] [Prev] [Right] [Left] [Up] [Index] [Root]
Syzygy Modules

Syzygy Modules

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.
MinimalSyzygyModule(M) : ModMPol -> [ ModMPolElt ]
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.

Example PMod_Hilbert (H44E5)

We construct the syzygy module of a simple module.

> 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);
> Z;
Module of degree 4
TOP Order
Coefficient ring:
    Polynomial ring of rank 3 over Rational Field
    Lexicographical Order
    Variables: x, y, z
Groebner basis:
(x^5 - x^3*z^2 - x*y^3 - x*y*z^3 + y^2*z^4 + y^2*z   -x^4 + 
    x^2*z^2 + x*y^2*z + x*y^2 - y^3*z - y*z^2   -x^4*z + x^3*y*z 
    + x^3*y - x^2*z^4 - y^3 + y*z^4   -x^4*y + x^3*z^3 + x^3*z^2 
    - x^2*y*z + y^4 - y^2*z^4)

[Next] [Prev] [Right] [Left] [Up] [Index] [Root]