SuggestVariableOrder - Maple Help
For the best experience, we recommend viewing online help using Google Chrome or Microsoft Edge.

Online Help

All Products    Maple    MapleSim


Home : Support : Online Help : Mathematics : Algebra : Polynomials : Groebner : SuggestVariableOrder

Groebner

  

SuggestVariableOrder

  

choose a good variable order

 

Calling Sequence

Parameters

Description

Examples

Calling Sequence

SuggestVariableOrder(J, X)

Parameters

J

-

a list or set of polynomials or a PolynomialIdeal

X

-

(optional) a list or set of variables

Description

• 

SuggestVariableOrder attempts to choose heuristically good variable orderings that should result in faster Groebner basis computations for both plex and tdeg orders. In practice, this is one of the most important considerations for performance, since a bad variable ordering can make an otherwise simple problem infeasible. The set of variables can be explicitly specified by an optional second argument.

• 

The heuristics used are based on the degree of the polynomials in each respective variable and on the size of the coefficients.  They do not always produce an optimal order, but they should rarely select a bad order.

• 

SuggestVariableOrder is called by Groebner[Basis] when the second argument is a name and no appropriate basis is known.

Examples

Our first example is a problem of Trinks'.  We compute a total degree Groebner basis without specifying an order.  Groebner[Basis] calls SuggestVariableOrder automatically.

withGroebner:

trinks9w+15pt+20zs,99w11sb+3b2,wp+2zt11b3,45p+35s165b36,35p+40z+25t27s,15w+25ps+30z18t165b2:

GGroebnerBasistrinks,tord,order=tdeg:

tord

tdegw,z,t,p,s,b

(1)

Next we compare lexicographic bases for the order suggested, its reverse, and a random permutation of b,p,s,t,w,z.

VSuggestVariableOrdertrinks

Vw,z,t,p,s,b

(2)

GGroebnerBasistrinks,plexV:

lengthG

4208

(3)

maplength@maxnorm,G

21,66,68,67,67,65

(4)

V2seqVi,i=1..6

V2b,s,p,t,z,w

(5)

G2GroebnerBasistrinks,plexV2:

lengthG2

9262

(6)

maplength@maxnorm,G2

40,158,161,161,159,158

(7)

V3opcombinatrandpermV

V3t,p,s,b,w,z

(8)

G3GroebnerBasistrinks,plexV3:

lengthG3

9125

(9)

maplength@maxnorm,G3

33,151,152,154,154,155

(10)

See Also

Groebner[Basis]

length

maxnorm