|
[Next][Prev] [Right] [Left] [Up] [Index] [Root]
Magma allows special computation in modules over the multivariate polynomial
rings R[x1, ..., xn] using the Gröbner basis facilities.
See the chapter devoted to such modules for details.
This section just shows how to create the module of syzygies of a sequence
of polynomials from such a polynomial ring. The base ring may be
a field or Euclidean ring.
Given a sequence Q of polynomials from a multivariate polynomial ring P,
return the module of syzygies of Q. This is a module over P of degree
k, where k is the length of Q, consisting of all vectors v such that
the sum of v[i] * Q[i] for i=1, ... k is zero.
Given a sequence Q of polynomials from a multivariate polynomial ring P,
return the module of syzygies of Q as a matrix S. This an r by k
matrix, where k is the length of Q, whose rows span the space of all
vectors v such that the sum of v[i] * Q[i] for i=1, ... k is zero.
We construct syzygy modules of degree 3 over the polynomial ring
P=Q[x, y, z], and do various operations with the modules.
> P<x, y, z> := PolynomialRing(RationalField(), 3);
> M := SyzygyModule([x + y, x - y, x*z + y*z]);
> M;
Embedded Submodule of P^3
Order: Module TOP: Lexicographical
Basis:
[ z, 0, -1],
[ 1/2*x - 1/2*y, -1/2*x - 1/2*y, 0]
> Groebner(M);
Embedded Submodule of P^3
Order: Module TOP: Lexicographical
Groebner basis:
[ 0, x*z + y*z, -x + y],
[ x - y, -x - y, 0],
[ z, 0, -1]
> BasisMatrix(M);
[ 0 x*z + y*z -x + y]
[ x - y -x - y 0]
[ z 0 -1]
> SyzygyMatrix([x + y, x - y, x*z + y*z]);
[ z 0 -1]
[ 1/2*x - 1/2*y -1/2*x - 1/2*y 0]
[Next][Prev] [Right] [Left] [Up] [Index] [Root]
|