choose a good variable order - Maple Help

Online Help

All Products    Maple    MapleSim


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

Groebner[SuggestVariableOrder] - choose a good variable order

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:

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

G:=Groebner[Basis]trinks,'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.

V:=SuggestVariableOrdertrinks

V:=w,z,t,p,s,b

(2)

G:=Groebner[Basis]trinks,plexV:

lengthG

4208

(3)

maplength@maxnorm,G

21,66,68,67,67,65

(4)

V2:=seqVi,i=1..6

V2:=b,s,p,t,z,w

(5)

G2:=Groebner[Basis]trinks,plexV2:

lengthG2

9262

(6)

maplength@maxnorm,G2

40,158,161,161,159,158

(7)

V3:=opcombinat[randperm]V

V3:=t,p,s,b,w,z

(8)

G3:=Groebner[Basis]trinks,plexV3:

lengthG3

9125

(9)

maplength@maxnorm,G3

33,151,152,154,154,155

(10)

See Also

Groebner[Basis], length, maxnorm


Download Help Document

Was this information helpful?



Please add your Comment (Optional)
E-mail Address (Optional)
What is ? This question helps us to combat spam