next | previous | forward | backward | up | top | index | toc | home
Macaulay2 > rings > monomial orderings > MonomialOrder

MonomialOrder -- monomial ordering

Description

MonomialOrder -- an optional argument used with polynomial rings and monoids to indicate a monomial ordering other than the default (graded reverse lexicographic).

In Macaulay 2, each polynomial ring (and also each monoid) is equipped with a monomial order, which is used for display of polynomials (terms are listed in descending monomial order), and also for Groebner basis computations.

In the most general setting, a monomial ordering is given by a list of permissible elements, listed and described below. Monomials are compared using the first element of the list. If they are indistinguishable using this first element, they are compared using the second element, and so on. At the end, if necessary, the graded reverse lexicographic order is used to compare the monomials. For examples, see below, or see monomial orderings.

Permissible elements:

Some examples of monomial orders. Note that if only one item is in the list, we can dispense with the list.

  • MonomialOrder => {GRevLex=>2, GRevLex=>3} -- a product order
  • MonomialOrder => {2, 3} -- same
  • MonomialOrder => {Weights=>{1,13,6,2}} -- a weight order
  • MonomialOrder => Weights=>{1,13,6,2} -- same
If any monomials will be less than 1 in the ordering, then the option Global => false should be used.
i1 : QQ[x,y, Weights => {-1,1}, Global => false]

o1 = QQ [x, y]

o1 : PolynomialRing
i2 : x<1

o2 = true
i3 : y<1

o3 = false

Functions with optional argument named MonomialOrder :

See also

For the programmer

The object MonomialOrder is a symbol.