|
7.9.2 Monomial orderings on free algebras
We provide many types of orderings for non-commutative Groebner bases up to a degree (length) bound.
In general it is not clear, whether a given generating set has a finite Groebner
bases with respect to some ordering.
Let
326#326 = {
302#302,...,
303#303} be a set of symbols. A total ordering < on the free monoid
327#327 with
294#294 as the neutral element is called a monomial ordering if
- it is a well-ordering, i.e., every non empty subset has a least element with respect to <, and
- it is compatible with multiplication, that is
328#328 implies
329#329 for all
330#330,
331#331,
4#4 and
46#46 in
327#327.
Note that the latter implies
332#332 for all
295#295 in
327#327.
The left lexicographical ordering on
327#327 with
333#333...
334#334 is defined as follows:
For arbitrary
4#4,
46#46 in
327#327 we say that
335#335, if
-
336#336 or
-
337#337 and 338#338 holds.
Note: left lex is not a monomial ordering, though it is a natural choice to break ties
after, say, comparing elements by the total degree.
In a similar manner one can define the right lexicographical ordering.
On the monoid
339#339define the weight homomorphism
340#340, uniquely determined by
341#341 in
342#342for
343#343.
As a special case, define the length
len:
344#344 by
345#345 for
343#343.
For any ordering << on
327#327 and any weight
340#340 define an ordering
226#226, called the
346#346-weight extension of
347#347 as follows:
For arbitrary
4#4,
46#46 in
327#327 we say that
335#335 if
-
348#348 or
-
349#349 and
350#350 holds.
An ordering < on
327#327 eliminates a certain subset
351#351 if for all
352#352 one has
353#353.
In a ring declaration, LETTERPLACE supports the following monomial orderings.
We illustrate each of the available choices by an example on the free monoid
300#300,
354#354,
355#355,
where we order the monomials
356#356,
357#357,
358#358,
359#359,
360#360,
361#361,
362#362,
363#363,
302#302,
354#354 and
364#364 correspondingly.
- `
dp '
- The degree right lexicographical ordering is the length-weight extension of the right lexicographical ordering.
With respect to the ordering `dp', the test monomials are ordered as follows:
365#365
- `
Dp '
- The degree left lexicographical ordering is the length-weight extension of the left lexicographical ordering.
With respect to the ordering `Dp', the test monomials are ordered as follows:
366#366
- `
Wp(w) for intvec w'
- The weighted degree left lexicographical ordering is the
346#346-weight extension of the left lexicographical ordering with weight
340#340 uniquely determined by strict positive
367#367.
With respect to the ordering `Wp(1, 2, 1)', the test monomials are ordered as follows:
368#368
- `
lp '
- Let 369#369 be weights uniquely determined by
370#370 for
371#371 where 372#372 denotes the Kronecker delta. Let 373#373 be the 374#374-weight extension of the left lexicographical ordering on
375#375 and inductively 376#376 be the 369#369-weight extension of 377#377 for all 378#378.
The monomial ordering lp corresponds to 379#379 and eliminates 380#380 for all 381#381.
We refer to it as to left elimination ordering.
The monomial ordering `lp' corresponds to
379#379 and eliminates {
302#302,...,
382#382} for all
294#294<=
55#55<
17#17.
We refer to it as to left elimination ordering.
With respect to the ordering `lp', the test monomials are ordered as follows:
383#383
- `
rp '
- Let 369#369 be weights uniquely determined by
370#370 for
371#371 where 372#372 denotes the Kronecker delta. Let 379#379 be the 384#384-weight extension of the left lexicographical ordering on
375#375 and inductively 376#376 be the 369#369-weight extension of 385#385 for all 386#386.
The monomial ordering rp corresponds to 373#373 and eliminates
387#387 for all 388#388.
We refer to it as to right elimination ordering.
The monomial ordering `rp' corresponds to
373#373 and eliminates {
382#382,...,
303#303} for all
389#389. We refer to it as to right elimination ordering.
With respect to the ordering `rp', the test monomials are ordered as follows:
390#390
- `
(a(v), ordering) for intvec v'
- For weight
391#391 determined by
392#392 with 393#393 and monomial ordering 394#394 on
375#375, the 331#331-weight extension of 394#394 corresponds to (a(v), o). As a choice for 394#394 there are currently two options implemented, which are dp and Dp. Notice that this ordering eliminates
395#395.
With respect to the ordering `( a(1, 0, 0), Dp)', the test monomials are ordered as follows:
396#396
With ordering `( a(1, 1, 0), Dp)' one obtains:
397#397
The examples are generated by the following code but with customized orderings denoted above.
| LIB "freegb.lib";
ring r = 0, (x1,x2,x3),Dp; // variate ordering here
ring R = freeAlgebra(r, 4);
poly wr = x1*x1*x1+x3*x3*x3+x1*x2*x3+x3*x2*x1+x2*x2+x2*x3+x1*x3+x3*x1+x1+x2+x3;
wr; // polynomial will be automatically ordered according to the ordering on R
==> x1*x1*x1+x1*x2*x3+x3*x2*x1+x3*x3*x3+x1*x3+x2*x2+x2*x3+x3*x1+x1+x2+x3
|
|