14 Non-Commutative Grobner Basis Methods

14.1 Non-Commutative Gröbner Bases

Since we encountered some problems when we tried to use commutative polynomials for constructing secure Gröbner basis cryptosystems, it is natural to examine the possibility to use non-commutative algebraic structures. Given a finite set of letters X = {x1,…, xn}, a word in X is an element of the form w = xt xt · xjt with ij ϵ {1,…, n}. Here we denote the empty word by 1 and the set of all words by (X}. It is clear that concatenation makes (X} into a monoid with neutral element 1. We call it the free monoid on X.

Definition 14.1.1. Let K be a field and X = {x1,…,xn}. The K-vector space with basis (X} can be made into a K-algebra by extending the multiplication of words K-linearly. In other words, given f = c1w1 + … + csws and g = c1w1 + … + c[w[ with cj, c- ϵ K and wt, w- ϵ (X}, we letf • g = jj- cf-wwj. This defines a K-algebra which is denoted by K (X} and is called the free associative K-algebra on X or the non-commutative polynomial ring in the indeterminates x1,…,xn.

Our goal in this section is to develop a Gröbner basis theory for K (X} which is analogous to the Gröbner basis theory for the commutative polynomial ring. We will see that most definitions and results carry over easily, but Buchberger’s Algorithm turns into an enumerating procedure.

Let us start with some basic definitions.

Definition 14.1.2. Let K beafieldand X = {x1,…,xn} a set of letters.

(1)  Given a word w = xtxt ϵ (X} with i1,…,ik ϵ {1,…, n}, the number l(w) = k is called the length of w. The length of the empty word is defined to be zero.

(2)  Given two words w, w’ ϵ (X}, the word w’ is called a subword of w if w is of the form w = uw’u’ with words u, u’ ϵ (X}.

(3)  Given a non-zero non-commutative polynomial f = c1 w1 + … + csws in K(X} with cj ϵ K {0} and wj ϵ (X}, the elements cj are called the coefficients of the words wj in f, and the non-negative integer degf) = max{l(wj) | i = 1,…, s} is called the degree of f.

In order to compute effectively with non-commutative polynomials, we need to represent them in a unique way. Thus we need to order the words in a suitable way.

Definition 14.1.3. A word ordering a on (X} is a complete ordering relation which satisfies the following two additional conditions.

(1)  The ordering a is compatible with multiplication, that is if two words w, w’ ϵ (X) satisfy an inequality w <a w’ and if u, u’ ϵ (X} are further words, then we have uwu’ <a uw’u’.

(2)  The ordering o is a well-ordering, that is every descending chain of words w1 >o w2 >o … becomes eventually stationary.

Notice that a word ordering o has the additional property that w >o 1 for all w ϵ (X), because 1 >o w implies 1 >o w >o w2 >o …, in contradiction to the well-ordering property.

The most straightforward candidate for a word ordering seems to be the lexicographic word ordering lex defined by w = · <lex w’ = x · x if and only if w’ = ww” with w” ϵ (X) or i1 < j1 or i1 = j1, i2 < j2, etc. However, this ordering is neither compatible with multiplication nor a well-ordering, as the inequalities x2 >lex x2 and x2x1 >lex x2x1 >lex · show. To construct a true word ordering, we have to modify it as follows.

Example 14.1.4. The length-lexicographic word ordering llex on (X) is defined as follows. Given two words w = x¡ … xik and w’ = x · x, we let w <llex w’ if and only if l(w) < l(w’) or if both words have the same length and w <lex w’.

It is easy to check that llex is in fact a word ordering. For instance, it satisfies x1 >llex x2 and x2 >llex x2 and x1x2 >llex x2x1.

Another method to construct word orderings is to consider the given words as commutative terms in K[x1, …,xn], compare them using a term ordering, and break ties using lex. Further word orderings will be discussed in the next section.

In non-commutative polynomial rings there are several kinds of ideals. Let K be a field and X = {x1,…, xn} a set of letters.

Definition 14.1.5. Let I be a subset of K(X).

(1)  The set I is called a left ideal in K(X) if I is an additive subgroup of K(X) and if we have K(X) I c I.

(2)  The set I is called a right ideal in K (X) if I is an additive subgroup of K (X) and if we have IK (X) c I.

(3)  The set I is called a two-sided ideal in K(X), or simply an ideal in K(X), if I is both a left and a right ideal in K (X).

For instance, the set of all polynomials in K(X) whose constant coefficient (that is the coefficient of the word 1) is zero forms a two-sided ideal in K (X). A general method to construct two-sided ideals can be obtained as follows.

Definition 14.1.6. Let S c K(X) be a subset.

(1)  The set

(S) = {f1S1g1 + … + frsrgr | r > 0, fi, gi ϵ K(X), st ϵ S}

is a two-sided ideal in K(X). It is called the ideal generated by S. In this case the set S is called a system of generators of (S).

(2)  An ideal I in K (X) is called finitely generated if there exists a finite subset S of K(X) such that I = (S).

Examples of finitely generated ideals in K (X) are the zero ideal (0) = {0}, the unit ideal K{X), principal ideals (f ) = {gfh | g, h e K(X)}, and the irrelevant ideal (x1,…,xn) which consists of all non-commutative polynomials having constant coefficient zero. Not every ideal in K(X) is finitely generated, as our next example shows.

Example 14.1.7. Let X = {x, y},andlet/be the two-sided ideal in K(X) = K(x, y) generated by S = {xy1x | i > 1}. Then no generator xy’x of I is contained in the two-sided ideal (xyx, xy2x,…, xy!-1x). Since every finite set of generators of I can be represented using finitely many elements of S, it follows that I is not finitely generated.

Given a word ordering o, the following definitions correspond to the analogous definitions for the commutative case.

Definition 14.1.8. Let o be a word ordering on (X), and let f = c1w1 + … + csws e K(X) {0} be a non-zero non-commutative polynomial, where e K {0} and where e (X) are words satisfying w1 >o w2 >o … >o ws.

(1)  The word Lwo f ) = w1 is called the leading word off.

(2)  The element Lco f) = c1 is called the leading coefficient off.

(3)  We let Lmo f) = Lco f) • Lwo f ) and call it the leading monomial off.

(4)  Given a two-sided ideal I in K(X), the two-sided ideal

Lwo(I) = (Lwo(f ) I f e I {0})

is called the leading word ideal of I.

(5)  Given a two-sided ideal I in K(X), we also let Oo(I) = {w e(X)| w i Lwo(I)}.

Note that we did not define the leading word and the leading coefficient of the zero polynomial. Leading words of polynomials satisfy a few simple rules.

Remark 14.1.9. Let o be a word ordering on (X), let w, w’ e (X), and letf, f ‘ e K(X) {0}.

(1)   If f + f = 0 then we have Lwo (f + f) <o maxo {Lwo (f), Lwo (f’)}.

(2)  We have Lwo (wfw’ ) = w Lwo (f) w’.

(3)  We have Lwo ff) = Lwo (f) Lwo (f’).

Our next example demonstrates that the leading word ideal of a two-sided ideal need not be finitely generated, even if the ideal is finitely generated. In particular, just as in the commutative case, the leading words of the polynomials in a system of generators of I do, in general, not generate the leading word ideal of I.

Example 14.1.10. Let I be the principal ideal in K(x, y) generated by f = x2 − xy, and let o be a word ordering on (x, y) such that x >o y. Then for all i > 1, the polynomials = xy’x − xyi+1 are contained in I, as the equality gi+1 = xy’f + g;(y − x) and induction show. In particular, it follows that J = (xy!x | i > 0) is contained in Lwo (I). In fact, it is not difficult to verify that J equals Lwo (I). (For instance, we could apply the Buchberger Procedure below to the set {f, g1, g2,…} and verify that it is a o-Gröbner basis of I.)

Thus the ideal I is generated by a single polynomial, but Lwo (I) is not finitely generated.

Given a two-sided ideal I, the set Oo(I) is an order ideal in (X), that is, it is closed under the formation of subwords. This set plays a prominent role in the following noncommutative version of Macaulay’s Basis Theorem.

Proposition 14.1.11 (Macaulay’s Basis Theorem). Let o be a word ordering on (X), and let I be a two-sided in K (X). Then the residue classes of the words in Oo (I) form a K-basis ofK(X)/I.

Proof. First we show that these residue classes generate K(X)/I. For this it suffices to show that B = (Oo (I))K + I equals K(X). Suppose it does not. Then there exists a non-zero polynomial f ϵ K(X) B having a minimal leading word with respect to o.

If this leading word is contained in Lwo(I), there exists a polynomial g ϵ I such that Lwo (f ) = w Lwo (g) w’ for some w, w’ ϵ (X). But then the polynomial h = f − (Lco (f)/ Lco (g)) wgw’ continues to be contained in (X) B and has a smaller leading word than f, a contradiction.

It remains to consider that case that Lwo(f ) is not in Lwo(I). Hence this word is in Oo (I) andg = f − Lco (f) Lwo (f) is contained in K(X) B and has a smaller leading word than f, contradicting the choice of f.

Finally, we prove linear independence. Suppose that there exists a polynomial f = c1w1 + … + csws ϵ I {0} such that ϵ K and ϵ Oo (I)for i = 1,…, s. Then one of the words is the leading word of f and contained in both Oo (I) and Lwo (I), a contradiction again. □

Now we are ready to introduce the non-commutative version of Gröbner bases.

Definition 14.1.12. Let o be a word ordering on (X), and let I be a two-sided ideal in K (X). A set of polynomials G c I is called a oGröbner basis of I if we have Lwo (I) = (Lwo(g) I g ϵ G {0}).

As we have seen above, non-commutative Gröbner bases may be infinite. Thus there can be no algorithm computing them in general. Nevertheless, we will see that there is an enumerative procedure. This is a procedure which computes the elements of a Gröbner basis one by one and has the property that the union of all computed noncommutative polynomials is a Gröbner basis. An important ingredient for this procedure is the non-commutative analogue of the Division Algorithm.

Proposition 14.1.13 (Non-Commutative Division Algorithm). Letf,g1,…,gs ϵ K(X) {0}, and let o bea word ordering on (X). Consider the following instructions.

(1)  Let q1 = … = qs = 0,r = 0 and h = f.

(2)  Repeat the following steps until h = 0. Then return (q1,…, qs) and r and stop.

(3)  Repeat the following step as often as possible.

(4)  Find the smallest i ϵ {1,…,s} such that Lwo (gi) is a subword of Lwo (h). If such an i exists, write Lwo (h) = w Lwo (gi)w’ with w, w’ ϵ (X), append the triple (Lco(h)/ Lco(gi), w, w’) to qi and replace hbyh − (Lco(h)/ Lco(gi)) wgiw’.

(5)  Replace r by r + Lmo (h) and hbyh − Lmo (h).

This is an algorithm which computes tuples q1,…,qs of triples (cij, wij, wj and r ϵ K(X) such thatf = xs=1 Zj cij- W¡¿- g w’- + r and such that the following conditions hold.

(1)  No word ofr is a multiple of any of the words in {Lwo (g1),…, Lwo (gs)}.

(2)  For all i, j we have wij Lwo (g) wj <o Lwo f).

The proof of this Division Algorithm is completely analogous to the proof of Proposition 13.1.10. As above, we call the polynomial r returned as part of the output of the Division Algorithm the normal remainder of f with respect to G = (g1,…,gs) and denote it by NRo Gf).

The non-commutative analogues of critical pairs and S-polynomials are defined as follows.

Definition 14.1.14. Let G = (g1,… ,gs) be a tuple of non-zero elements of K(X).

(1)  For all i,j ϵ {1,…,s}, a quadruple (W¡, w-; w;-, w-) of words in (X) is called an obstruction of gi and gj if we have (1/ Lco (gi)) wi Lwo (gi) w’¡ = (1/ Lco (gj)) wj • Lwo (gj)wj.

(2)  For i ϵ{1,…, s}, an obstruction of gi andgi is called a self-obstruction of gi.

(3)  For i, j ϵ {1,…, s}, the set of all obstructions of gi and gj is denoted by Obs(i, j).

(4)  For every obstruction w = (W¡, w.; w;-, w-) in Obs(i, j), the non-commutative polynomial Sij(w) = (1/ Lco (g¡)) wigiw’i − (1/ Lco (gj)) wg-wj is called the S-polynomial of w.

Using these definitions, we can now formulate Buchberger’s Procedure for enumerating non-commutative Gröbner bases. (Sometimes this is also called Mora’s Algorithm, although it is clearly no algorithm.)

Theorem 14.1.15 (Buchberger’s Procedure). Let o be a word ordering on (X), and let f1,…,fs ϵ K(X) be non-zero polynomials which generate a two-sided ideal I = (f1,… ,fs). Consider the following instructions.

(1)  Let G = (f1,… ,fs), and let B be the union of all sets Obs(i, j) such that 1 < i < j < s.

(2)  Repeat the following steps until B = 0. Then return G and stop.

(3)  Using a fair strategy, choose an obstruction w = (W¡, w.; w;-, w-) ϵ B and remove it from B. (By a fair strategy we mean a strategy which ensures that every obstruction is eventually selected.)

(4)  Compute the S-polynomial Sj(w) and its normal remainder Sj(w) = NRo>G(Sy). If Sj(w) = 0 then continue with step (2).

(5)  Increase s by one, append fs = S»(w) to G, and append all sets Obs(i, s) such that 1 < i < s − 1 to B. Then continue with step (2).

This is a procedure which enumerates a o-Gröbner basis G of the ideal I. If the ideal I has a finite o-Gröbner basis, the procedure will stop after finitely many steps and return a finite o-Gröbner basis of I.

A proof of this theorem using the current notation is, for instance, contained in [Xiu]. The proof of the preceding theorem is based on the following characterization of noncommutative Gröbner bases.

Proposition 14.1.16 (Buchberger’s Criterion). Let o be a word ordering on (X), let f1,…,fs ϵ K(X) be non-zero polynomials which generate a two-sided ideal I = (f1,… ,fs), and letG = (f1,… ,fs). Then the following conditions are equivalent.

(1)  The tuple G is a o-Gröbner basis of I.

(2)  For every obstruction w ofG, we have NRo G(Sj(w)) = 0.

Again a proof using the current notation can be found in [Xiu]. Notice that Bucherger’s Criterion implies that we can check in finitely many steps whether a given finite set of non-commutative polynomials is a Gröbner basis.

Let us apply the Buchberger Procedure in a concrete example.

Example 14.1.17. In the non-commutative polynomial ring Z2(x1,…,x6), we consider the two-sided ideal I = (f1,f2) generated byf1 = x3(x1x2)3 + x4(x1x2)2 + x3 + x4 andf2 = (x2x1)3x5 + (x2x1)2x5 + x5 + x6. Using the word ordering o = llex, we have Lwo (f1) = x3(x1x2)3 and Lwo f2) = (x2x1)3x5. Let us follow the steps of the Buchberger Procedure.

1.  Let G = (g1, g2)whereg1 = f1 and g2 = f2.LetB = Obs(1,1) u Obs(2,2) u Obs(1,2). The sets Obs(1,1) and Obs(2,2) contain only obstructions without overlap, i.e., obstructions derived from leading words Lwo (g), Lwo (gj) without a word w such that Lwo (gi) ends in w and Lwo (gj) starts with w. The set Obs(1,2) contains obstructions of three types:

(i) obstructions w1 = (1,x1x5;x3x1,1), w2 = (1,x1x2x1x5;x3x1x2x1,1), and w3 = (1, (x1x2)2x1x5;x3(x1x2)2x1x5, 1)

(ii) all obstructions (1, w(x2x1)3x5;x3(x1x2)3w, 1) with a word w ϵ (X)

(iii) all obstructions ((x1x2)3x5w, 1; 1, wx3(x1x2)3) with a word w ϵ (X)

4.  For all obstructions w in Obs(1,1) u Obs(2,2), we get NRo>g(S¡¡(w)) = 0.

4.  For the obstruction w1, we get NRo>G(S12(w1)) = x3x1x6 + x4x1x5.

5.  We append g3 = x3x1x6 + x4x1x5 to G and update B.

4.  For w2, we get NRo G(S12(w2)) = x3x1x2x1x6 + x4x1x2x1x5.

5.  We append g4 = x3x1x2x1x6 + x4x1x2x1x5 to G and update B.

4.  For w3,we get NRo >G(S12(w 3) = x3(x1x2)2x1x6 + x4(x1x2)2x1x5.

5.  Weappendg5 = x3(x1x2)2x1x6 + x4(x1x2)2x1x5 to GandupdateB.

4. For the obstructions w of type (ii) and (iii), we get NRo>G(S12(w)) = 0.

4.  For all obstructions w in Obs(i, j) with j ϵ {3,4,5} and 1 < i < j, we get NRo ¿(Sj(w)) = 0.

2.  The procedure stops and returns G = (g1,… ,g5).

Altogether, the tuple G = (g…, g5)isa o-Gröbner basis of I.

One important application of the Buchberger Procedure is the following Ideal Membership Test for two-sided ideals in K(X):

Corollary 14.1.18. Given a o-Gröbner basis G of a two-sided ideal I in K(X) andf ϵ K(X), we havef ϵ I if and only if NRo G(f) = 0.

Proof. Clearly, if NRo G(f) = 0 then we can collect the reductions and arrive at a representation of f as an element of the ideal generated by G, i.e., as an element of I. Conversely, if we have f ϵ I, then the normal remainder NRo G(f) is also contained in I. It follows that it has to be zero, since otherwise its leading term would be in Oo (I) = (X)Lwo (I).

The Buchberger Procedure can be applied to some problems for finitely presented groups introduced in Section 9.8. For this purpose, we need to introduce the following ring.

Definition 14.1.19. Let G be a group and K a field. Then the K-vector space K[G] = ©geG Kg has a natural ring structure given by the K-linear extension of the multiplication in G. The resulting ring is called the group ring of G over K.

In other words, for two elements £geG agg and £geG bgg of K[G], we let

image

where only finitely many coefficients agbh are non-zero.

If G = (x1,…,xn; r1 = … = rm = 1) is a finitely presented group, we can represent the group ring over K by

K[G] = K(xi, …,Xn,yi,.. .,yn)/(xy; − 1,yx − 1,rj − 1 | i =1… n,j =1… m).

Here the indeterminates y represent the inverses of the residue classes of the elements x{ and the relators rt have to be written as words in x;, y;.

Remark 14.1.20. Let G = (x1,…, xn; r1 = … = rm = 1) be a finitely presented group, and let w be a word in the letters {x1,…,xn,y1,…,yn}, where yi represents x,”1. The word problem in G asks us to decide effectively whether w represents the identity element of G.

The following instructions provide a semi-decision procedure for the word problem in G which is based on Buchberger’s Procedure. Here “semi-decision” means that the procedure will terminate and give the correct answer if w represents the identity element of G. However, if the correct answer is “no”, the procedure terminates and gives the correct answer only if the ideal defining K[G] has a finite Gröbner basis with respect to the chosen word ordering. If the Gröbner basis is infinite, the procedure will run forever and never produce an answer.

(1)  Consider the non-commutative polynomial ring K(x1,…,xn,y1,…,yn) and the two-sided ideal I defining K[G] given above. Let H be the stated tuple of generators of I. Choose a word ordering o.

(2)  Compute NRoh(w). If the result is zero, return YES and stop.

(3)  Run one iteration of the Buchberger procedure, starting with the system of generators H. Afterwards, update H to the resulting partial Gröbner basis.

(4)  If we have B = 0 in the Buchberger Procedure, i.e., if the computed tuple H is indeed a Gröbner basis of I and if NRoh(w) = 0, return NO and stop. Otherwise, continue with step 1.

Recall that the Buchberger Procedure enumerates a o-Gröbner basis of I. If w represents the identity element, the normal remainder of w with respect to this Gröbner basis is zero. In this reduction to zero only finitely many Gröbner basis elements are involved. Therefore, if we repeat steps 1 and 2 often enough, all necessary Gröbner basis elements will have been found and the procedure stops with the correct answer. Moreover, if the Buchberger Procedure produces a finite Gröbner basis, the answer is correct by the above Ideal Membership Test.

14.2 Elimination and its Applications

In the following we continue to use the setting of the last section. We have a field K, a set of letters X = {x1,.. .,xn}, and the non-commutative polynomial ring K(X). Elimination is an important technique in computer algebra and will be essential for Gröbner basis cryptography. The following definition provides the necessary terminology.

Definition 14.2.1. Let L c X be a subset of the given set of letters, and let X = X L.

(1)  A word ordering o on (X) is called an elimination ordering for L, if every polynomial f ϵ K(X) {0} such that Lwo f) ϵ (X) satisfies f ϵ K(X).

(2)  Given a two-sided ideal I c K(X), the ideal 7 = I n K(X) is called the elimination ideal of I with respect to L.

It is clear that 7 is a two-sided ideal in K(X). It consists of all non-commutative polynomials in I which do not involve the letters from L. Let us show that elimination orderings exist.

Example 14.2.2. Let I ϵ {1,…, n}, and let L = {x1,.. .,xf}. We define a word ordering elim on (X) as follows. Given a word w ϵ (X) and a letter X¡, the number degx (w) is the number of occurrences of the letter X¡ in w. Given two words w1, w2 ϵ (X), we let w1 <elim w2 if and only if there exists an index j ϵ {1,…, n} such that degx.(w1) = degx (w2) for i < j and degx_(w < degXj (w2), or if degXi (w = deg (w2) for i = 1,…, n and w1 <iex w2.

It is easy to check that elim is an elimination ordering for L, independent of the actual value of I.

For instance, inX = (x1; x2> we havex1 >elim xandx1x. <elim X3XjandX >elim XXj.

In the following we let L c {1,…, n| and .X = X L. The property of a being an elimination ordering for L can be rephrased by saying that if the letters of L do not occur in a word w ϵ (X>, they do not occur in any word w’ ϵ (X> such that w’ <a w. The following lemma is easily verified and will be used in the main theorem below.

..................Content has been hidden....................

You can't read the all page of ebook, please click here login for view all page.
Reset
18.191.157.186