18.3 Multigraded lex ordering : A variety of elimination orders

There are other useful monomial orders which one can use other than graded lex and lex. Another type of order is what we call multigraded lex and is a mixture of graded lex and lex order. This multigraded order is set using SetMonomialOrder, SetKnowns and SetUnknowns which are described in Section 18.4. As an example, suppose that we execute the following commands:

SetMonomialOrder[{A,B,C},{a,b,c},{d,e,f}];

We use the notation

A  < B  < C < < a <  b < c < < d < e < f ,
to denote this order.

For an intuitive idea of why multigraded lex is helpful, we think of A, B and C as corresponding to variables in some engineering problem which represent quantities which are known and a, b, c, d, e and f to be unknown1. The fact that d, e and f are in the top level indicates that we are very interested in solving for d, e and f in terms of A, B, C, a, b and c, but are not willing to solve for b in terms of expressions involving either d, e or f.

For example,

(1) d > a **a **A **b
(2) d **a **A **b > a
(3) e **d > d **e
(4) b **a > a **b
(5) a **b **b > b **a
(6) a > A **B **A **B **A **B

This order induces an order on monomials in the following way. One does the following steps in determining whether a monomial m is greater in the order than a monomial n or not.

(1) First, compute the total degree of m with respect to only the variables d, e and f.
(2) Second, compute the total degree of n with respect to only the variables d, e and f.
(3) If the number from item (2) is smaller than the number from item (1), then m is smaller than n. If the number from item (2) is bigger than the number from item (1), then m is bigger than n. If the numbers from items (1) and (2) are equal, then proceed to the next item.
(4) First, compute the total degree of m with respect to only the variables a, b and c.
(5) Second, compute the total degree of n with respect to only the variables a, b and c.
(6) If the number from item (5) is smaller than the number from item (4), then m is smaller than n. If the number from item (5) is bigger than the number from item (4), then m is bigger than n. If the numbers from items (4) and (5) are equal, then proceed to the next item.
(7) First, compute the total degree of m with respect to only the variables A, B and C.
(8) Second, compute the total degree of n with respect to only the variables A, B and C.
(9) If the number from item (8) is smaller than the number from item (7), then m is smaller than n. If the number from item (8) is bigger than the number from item (7), then m is bigger than n. If the numbers from items (7) and (8) are equal, then proceed to the next item.
(10) At this point, say that m is smaller than n if and only if m is smaller than n with respect to the graded lex order A < B < C < a < b < c < d < e < f

For more information on multigraded lex orders, consult [HSStrat].