Previous Page Next Page Contents

groebner::gbasis -- computation of a reduced Gröbner basis

Introduction

groebner::gbasis(polys) computes a reduced Gröbner basis of the ideal generated by the polynomials in the list polys.

Call(s)

groebner::gbasis(polys <, order> <, Reorder>)

Parameters

polys - a list of polynomials of the same type. Alternatively, a list of polynomial expressions with rational coefficients.
order - one of the identifiers DegInvLexOrder, DegreeOrder, and LexOrder, or a user-defined term ordering of type Dom::MonomOrdering. The default ordering is DegInvLexOrder.

Options

Reorder - With this option groebner::gbasis internally may change the lexicographical ordering of variables to decrease running time.

Returns

a list of polynomials. The output polynomials have the same type as the polynomials of the input list.

Related Functions

poly

Details

Option: Reorder

Example 1

We demonstrate the effect of various input formats. First, we use polynomial expressions to define the polynomial ideal. The Gröbner basis is returned as a list of polynomial expressions:

>> groebner::gbasis([x^2 - y^2, x^2 + y], LexOrder)
                               4    2       2
                             [x  - x , y + x ]

Next, the same polynomials are defined via poly. Note that poly fixes the ordering of the variables.

>> groebner::gbasis([poly(x^2 - y^2, [x, y]),
                     poly(x^2 + y, [x, y])], LexOrder)
                      2                     2
               [poly(x  + y, [x, y]), poly(y  + y, [x, y])]

Changing the ordering of the variables in poly changes the lexicographical ordering. This results in a different basis:

>> groebner::gbasis([poly(x^2 - y^2, [y, x]),
                     poly(x^2 + y, [y, x])], LexOrder)
                          2                 4    2
               [poly(y + x , [y, x]), poly(x  - x , [y, x])]

With Reorder the ordering of the variables may be changed internally:

>> groebner::gbasis([poly(x^2 - y^2, [x, y]),
                     poly(x^2 + y, [x, y])], LexOrder, Reorder)
                          2                 4    2
               [poly(y + x , [y, x]), poly(x  - x , [y, x])]

Background

Changes




Do you have questions or comments?


Copyright © SciFace Software GmbH & Co. KG 2000