Use the function GROEBNER_BASIS to construct the Gröbner basis for a collection of polynomials based on lexicographic ordering of the variables.  If polys is a vector (set) of polynomials and vars is a vector of variables,

GROEBNER_BASIS(polys, vars)

simplifies to a vector (set) of polynomials that form the Gröbner basis for polys based on the lexicographic ordering of vars.


Note that the Gröbner basis of a collection of polynomials is unique, once the order for the variables is fixed.  If the ordering of the variables is changed, the Gröbner basis could change.  For example,

GROEBNER_BASIS([x*z^3+2*y+2, y*z^3-y*z^2-z^2+y^2+y], [x, y, z])

simplifies to

2       3    2         2     3          
y  + y·(z  - z  + 1) - z , x·z  + 2·y + 2

whereas

GROEBNER_BASIS([x*z^3+2*y+2, y*z^3-y*z^2-z^2+y^2+y], [z, y, x])

simplifies to a more complicated basis consisting of six polynomials.


The Gröbner basis has numerous applications.  For example, consider the problem of finding the intersection of the following three surfaces: the sphere centered at the origin with a radius of the square root of 2 (x^2+y^2+z^2=2); the paraboloid (z=x^2+y^2); and the vertical cylinder along the z axis with a radius of 1 (x^2+y^2=1).  The fact that

GROEBNER_BASIS([x^2+y^2+z^2-2, x^2+y^2-z, x^2+y^2-1], [x, y, z])

simplifies to [z - 1, x^2 + y^2 - 1] shows that the intersection of the three surfaces is a circle of radius 1 parallel to the xy plane at height 1.


To verify that the following two paraboloids do not intersect in R^3 (i.e. the system has no real roots), note that 

GROEBNER_BASIS([x^2+y^2-z+1, -x^2-y^2-1-z], [x, y, z])

simplifies to [z, x^2 + y^2 + 1].


To verify that the following two paraboloids do not intersect in C^3 (i.e. the system has no roots), note that

GROEBNER_BASIS([x^2+y^2-z+1, x^2+y^2-z+3], [x, y, z])

simplifies to [1].  It is a requirement of Hilbert's Nullstellensatz that the geometric interpretation of the Gröbner basis must always be done in C^n, not in R^n.


Other Vectors and MatricesVectors_and_Matrices topics

Created with the Personal Edition of HelpNDoc: Easily create iPhone documentation