Tải bản đầy đủ - 0 (trang)
6 The “ATLAS of Finite Groups”

6 The “ATLAS of Finite Groups”

Tải bản đầy đủ - 0trang

410



Handbook of Computational Group Theory



Thomas Breuer maintains a library of ordinary and modular character

tables of finite groups, which is accessed via GAP. It contains all character

tables in the “ATLAS”, and many others, including the maximal subgroups

of the groups in the “ATLAS”; see the Web site [GAP]. A library of table of

marks (see Section 10.5) of various finite groups is also available in GAP.

Wilson, Parker, and Bray provide an extensive online library of

permutation and matrix representations of the finite simple groups and

their variations, featuring explicit matrices and permutations for the group

generators; see the Web site [ATL]. Information is also provided on standard

generators for the groups, which were discussed in Subsection 7.8.2 in

connection with setting up isomorphisms between a standard copy of the

group G in question and an arbitrary group known to be isomorphic to G.

This database is now also available via MAGMA.

As was mentioned in Section 10.3, MAGMA also has an internal library

containing information about the finite simple groups and their variations

of order up to about 107, including their (maximal) subgroups and outer

automorphisms.



© 2005 by Chapman & Hall/CRC Press



Chapter 12

Rewriting Systems and the

Knuth-Bendix Completion

Process



Coset enumeration, which was studied in detail in Chapter 5, is designed to

provide information about the finite quotients of a finitely presented group. It

can be used to prove that such a group is finite, but rarely to prove that it is

infinite. The algorithms described in Chapter 9 can tell us about other types

of quotients of finitely presented groups, such as abelian, nilpotent, or

polycyclic quotients, from which we can, on occasion, deduce that the group

is infinite.

The methods to be discussed in the final two chapters of this book provide

a completely different approach to computing with finitely presented groups.

Their principal aim is to find a normal form for group elements, together

with an algorithm for putting words in the group generators into normal

form. When successful, they enable us to determine the finiteness or

infiniteness of the group (and often the finiteness or infiniteness of the orders

of elements of the group), since we can generally count the number of distinct

normal forms. They may also enable us to compute neighborhoods of the

origin in the Cayley graph of the group, and possibly to compute the growth

function of the group.

Of course, we can only achieve these aims if the group has a solvable word

problem and, as we noted at the beginning of Chapter 5, this is not the case

in general. Fortunately, many of the interesting classes of finitely presented

groups that arise in practice, particularly those, such as knot groups, that

arise from topology or geometry, do turn out to have a solvable word problem.

Furthermore, as we shall see in Chapter 13, many of these are automatic

groups and are consequently amenable to the computational methods to be

described there.

In this chapter we shall present the basic theory of rewriting systems over

a fixed finite alphabet, together with its applications to CGT. We shall come

to that in Section 12.2. First we need to generalize the basic theory of finitely

presented groups to semigroups and monoids.

411

© 2005 by Chapman & Hall/CRC Press



412



Handbook of Computational Group Theory



12.1 Monoid presentations

The basic theory of monoid presentations follows the same lines as that of

group presentations, which we dealt with in Section 2.4 and, as we shall see,

a group presentation can be regarded as a special case of a monoid

presentation. However, the method of defining a group presentation using

the normal closure of a set of relators in a free group does not carry over

directly to monoids; instead, we need to use the idea of a congruence on a

monoid. Some of the material in this and later sections of this chapter is

based on the presentation in Sims’ book [Sim94].



12.1.1 Monoids and semigroups

Roughly, a monoid is a group without inverses, and a semigroup is a group

without inverses or an identity. More formally:

DEFINITION 12.1 A semigroup is a set S equipped with an associative

binary operation Њ; that is, xЊ(yЊz)=(xЊy)Њz for all x, y, z∈S.

DEFINITION 12.2 A monoid is a set M equipped with an associative binary

operation o, together with an identity element e∈M that satisfies eЊx=xЊe=x

for all x∈M.

As we did for groups, we shall generally omit the o symbol, and write xy

instead of xЊy, and we shall write 1 rather than e for the identity element,

or 1M for the identity of M. For additive examples, we use 0 for the identity.

In fact, we shall not be very much concerned with semigroups here,

although the theory of finitely presented semigroups is not really very different

from that of monoids. From any semigroup we can immediately define a

monoid simply by adjoining an identity element.

A subsemigroup of a semigroup S is a subset of S that is itself closed

under the binary operation of S, and a submonoid of a monoid M is a subset

that is closed under the binary operation and contains the identity element

of M.

Here are some examples of semigroups and monoids. The nonnegative

integers form a monoid under addition with identity 0. The nonzero natural

numbers form a subsemigroup but not a submonoid of under addition.

The elements of any ring form a semigroup under multiplication in the

ring and, if the ring has a unit element 1, then they form a monoid.

Recall that, if X and Y are sets, then a relation from X to Y is simply a

subset of X×Y, and the relation R is called a function if, for each x∈X, there

is a unique y∈Y with (x, y)∈R. The composition RS of a relation R from X



© 2005 by Chapman & Hall/CRC Press



Rewriting Systems and the Knuth-Bendix Completion Process



413



to Y and a relation S from Y to Z is defined by



If X is a fixed set, then the set Rel(X) of all relations from X to X forms a

monoid under composition, and the set Fun(X) of all functions from X to X

forms a submonoid of Rel(X). The identity element is of course the identity

function {(x, x)|x∈X}. The set Sym(X) of all bijections from X to X is a

submonoid, and indeed a subgroup, of Fun(X).

From now on we shall discuss monoids only. The reader should have no

difficulty in formulating analogous results for semigroups.

If X is a subset of a monoid M, then the submonoid of M generated by X is

defined to be the intersection of all submonoids of M that contain X, and this

can easily be shown to be equal to the set of all elements of M that can be

written as strings x1…xr with each xi∈X. We allow the empty string ε,

which is defined to represent the identity 1M. A monoid M is said to be

finitely generated if there exists a finite set X generating M.

Monoid homomorphisms are defined as you might expect. For monoids M

and N, a monoid homomorphism from M to N is a function f:M→N satisfying

f(xy)=f(x)f(y) for all x, y∈M and f(1M)=1N.

Notice that there is a difference here from group theory in that, for monoids,

the property f(1M)=1N does not follow from f(xy)=f(x)f(y) for all x, y∈M, and

so we can have a map f:M→N that is a semigroup homomorphism but not

a monoid homomorphism. For example, let M=N={0, 1} under multiplication,

and let f(0)=f(1)=0. It is easily checked that the image im(f) of any monoid

homomorphism f:M→N is a submonoid of N.

Now we come to a significant difference from group theory. The kernel of

a group homomorphism ϕ is a particular type of subgroup, from which we

can form a quotient group that is isomorphic to im(ϕ).

We can do something similar for monoids, but not by using a special type

of submonoid. The problem is that, although the set of elements x∈M with

f(x)=1N forms a submonoid of M, unlike in the group case, the pairs x, y∈M

for which f(x)=f(y) are not uniquely determined by this subgroup. We need

to replace the idea of a special type of subgroup by a certain type of

equivalence relation, known as a congruence on the monoid.

DEFINITION 12.3 A congruence on a monoid M is an equivalence relation

~ on M with the property that x~y implies xz~yz and zx~zy for all x, y, z∈M.

PROPOSITION 12.4 Let f:M→N be a monoid homomorphism and define

~ on M by

. Then ~ is a congruence on M.

The proof is straightforward. The congruence ~ defined in this proposition is

called the kernel ker(f) of the homomorphism f. From a congruence ~ on



© 2005 by Chapman & Hall/CRC Press



414



Handbook of Computational Group Theory



M, we can form the quotient structure M/~ in which the elements are the

equivalence classes under ~, with the multiplication [x][y]=[xy], where [x]

denoted the equivalence class of x∈M. Notice that, if x~x′ and y~y′ then, by

definition of a congruence, xy~x′y~x′y′, so this multiplication is well-defined,

and M/~ clearly has the identity element [1M]. The map M→M/~ defined by

is a monoid homomorphism.

Monomorphisms, epimorphisms and isomorphisms of monoids are defined

in the same way as for groups. The analogue of the first isomorphism theorem

for monoids is:

THEOREM 12.5 Let f:M→N be a monoid homomorphism with kernel~.

Then the map

defines a monoid isomorphism from M/~ to im(f).

PROOF It is routine to verify that this map is a well-defined monoid

homomorphism that is injective and surjective.

Of course, a group is just a special case of a monoid, so we would hope that

this theory of equivalences and quotient monoids would correspond properly

when applied to a monoid that happens to be a group. This is indeed the case.

When M and N are groups, and f:M→N is a homomorphism, and ~ is the

kernel of f as we have defined it for monoid homomorphisms, then x~y if and

only if x and y are in the same coset of K, where K is the kernel as it would

be defined for a group homomorphism. So, although we have two distinct

definitions for the kernel of f in this situation, each of them is derived easily

from the other.

The normal closure of a subset X of a group G was defined in Definition 2.7

to be the smallest normal subgroup of G containing X. There is an analogous

idea for monoids. An equivalence relation on any set M is, by definition, a

subset of M×M, and so we can talk about the intersection of a collection of

equivalence relations, and it is routine to check that the result is itself an

equivalence relation. (In the case of an empty collection, the intersection is

defined to be M×M.) It is equally routine to check that the intersection of a

collection of congruences on a monoid M is itself a congruence. So for any

subset of M×M, we can define the congruence on M generated by to be

the intersection of all congruences that contain .

PROPOSITION 12.6 Let M be a monoid, let ⊆M×M, and let ~ be the

congruence generated by . Let us call m, n∈M directly equivalent if we

have m=uvw, n=uv′w, for some u,v,v′,w∈M with (v,v′) ∈ or (v′, v) ∈ .

Then, for m,n∈M, (m, n)∈~ if and only if there is a sequence m=m0, m1,…,

mr=n of elements of M, with r≥0, such that mi and mi+1 are directly equivalent

for 0≤i


© 2005 by Chapman & Hall/CRC Press



Rewriting Systems and the Knuth-Bendix Completion Process



415



PROOF Define ~′ on M by (m, n) ∈~′ if and only if the condition defined in

the proposition holds. It is routine to check that ~′ is a congruence on M that

contains . Further, by definition of a congruence, any congruence on M

that contains ~ must contain ~′, so we have ~=~′.



12.1.2 Free monoids and monoid presentations

DEFINITION 12.7 A monoid F is free on the subset X of F if, for any

monoid M and any map ␪ :X→M, there exists a unique monoid

homomorphism ␪′:F→M with ␪′(x)=␪(x) for all x∈X.

The proof of the following result is identical to that of the equivalent result

for free groups, Proposition 2.47.

PROPOSITION 12.8 (i) Two free monoids on the same set X are isomorphic.

(ii) Free monoids on X1 and X2 are isomorphic if and only if |X1|=|X2|.

Existence is much easier to prove than is the case for free groups. Recall

from Definition 2.48 that, for any set X, X* is defined to be the set of all

strings or words over X. It is obvious that X* forms a monoid with identity

element εX under the operation of concatenation of strings.

PROPOSITION 12.9 For any set X, the monoid X* is free on X.

PROOF For a monoid M and a map ␪ :X → M, the unique monoid

homomorphism X*→M that restricts to ␪ on X is the map sending x1…xr to

␪(x1)…␪(xr).

We can now define a monoid presentation.

DEFINITION 12.10 Let X be a set, and let be a subset of X*×X*. Then

is defined to be the quotient monoid X*/σ, where σ is the

congruence on X* generated by . This is also called the monoid with

generating set X and defining relations .

The elements of are called the defining relations of the presentation. A

relation (u,v)∈ is usually written as u=v. A monoid M is said to be finitely

presented (or sometimes, more accurately, finitely presentable) if M is

isomorphic to

with X and both finite. In specific examples,

if X={x1,…, xn} and ={(u1, v1),…, (um, vm)}, then we shall often write

rather than

.



© 2005 by Chapman & Hall/CRC Press



416



Handbook of Computational Group Theory



For a set X, let A:=XʜX-1 as in Subsection 2.4.1. Let

be the subset

of A*×A*, and let ~x be the congruence generated

by

. Then the reader can check that the free group F(X) defined in

Subsection 2.4.1 is equal to the quotient monoid

.

We have the following analogue of Theorem 2.52.

THEOREM 12.11 Let X be a set, let

be a subset of X*×X*, let M be a

monoid, and let ␪:X→M be a map with the property that, for all (u, v)∈ ,

we have ␪(x1)…␪(xr)=␪(y1)…␪(ys), where u=x1…xr, v= y1…ys, and xi,yj∈X.

Then there exists a unique monoid homomorphism

for which ␪′([x])=␪(x) for all x∈X, where [x] represents the equivalence class

of x in

.

PROOF If ␪′ is to be a homomorphism, then it must satisfy ␪([u])=

␪(x1)…␪(xr) for all u=x1…xr∈X*, and so we have uniqueness.

By definition of a free monoid and Proposition 12.9, there exists a

homomorphism ␪′′:X*→M with ␪′′(x)=␪(x) for all x∈X. The assumption on ␪

says precisely that each element of is in the kernel of ␪′′, and so ker(␪′′)

is a congruence on X* that contains . Hence it also contains the congruence

~ on X* generated by , and so ␪′′(u)=␪′′(v) whenever u~v. But this says

precisely that the map

defined by

␪′[(u)]=␪(x1)…␪(xr) for all u=x1…xr∈X* is well-defined, and it is clearly a

monoid homomorphism satisfying ␪′([x])=␪(x) for all x∈X.



Example 12.1

Let

generated by

r≥2, and that



consists of



. The reader can verify that the congruence

for all r, s∈ with

.



As we did for groups, we shall generally denote an element [w] in a

finitely presented monoid simply by w, and use v=M w to mean [v]=[w]. The

following theorem shows that, as an alternative to Definition 2.4, we could

define a group presentation as a special case of a monoid presentation.

THEOREM 12.12 Let X be a set, let A:=XʜX-1, and let

A*×A*. Then the group defined by the presentation

monoid defined by the presentation

.



be a subset of

is equal to the



PROOF The elements of

and of

are equivalence

classes of A* under congruences ~1 and ~2, respectively, and we have to show

that ~1=~2. Let R be the set of words uv-1 corresponding to elements (u, v)∈



© 2005 by Chapman & Hall/CRC Press



Rewriting Systems and the Knuth-Bendix Completion Process



417



and let

with F the free group on X. Then, by definition, for w1,

w2∈A*, we have w1 ~1 w2 if and only if w1N=w2N. This is certainly the case

if

and, since ~2 is the congruence generated by

, it

follows that w1 ~2 w2 implies w1 ~1 w2. Conversely, since N is generated as a

subgroup of F by the elements g-1uv-1g with (u, v)∈ , w1 ~1 w2 implies that

w1=F w2w, where w is a product of some of these generators of N and their

inverses. Since

, this implies w1 ~2 w2w. But if (u, v)∈ , then u ~2 v

and hence uv-1 ~2 ε and

. Since ~2 is a congruence, we have

w2w ~2 w2 and hence w1 ~2 w2.

Exercises

1. Prove that, if the finitely generated monoid M is generated by X, then

X has a finite subset that generates M.

2. Find an example of monoids M, N and a submonoid of M that can occur

as

for more than one monoid homomorphism

f:M→N.

3. Complete the details of the proof that the intersection of the congruences

on M containing a given subset X of M×M is itself a congruence on M

that contains X.

4. Let M be a group, let be a subset of M×M, and let ~ be the congruence

generated by . Show that x~y if and only if xy-1 is in the normal closure

in M of the set

.

5. Prove directly from the definition that, if a monoid M is free on X, then X

generates M.

6. Prove that any monoid that is generated by a single element is defined

by a presentation with a single defining relation.



12.2 Rewriting systems

We turn now to the theory of rewriting systems over a fixed finite alphabet.

There is a large body of literature on this topic, which has applications to

all branches of algebra. For a historical account, with an extensive

bibliography, we refer the reader to the article by Buchberger [Buc87]. One

of the earliest papers describing the use of critical pairs and the completion

process in a very general setting is that of Knuth and Bendix [KB70], after

whom this process is usually named. Applications to group theory are

described in the two papers of Gilman: [Gil79] and [Gil84]. There is also an

extensive treatment of this topic, with details of algorithms and their

implementation in [Sim94],



© 2005 by Chapman & Hall/CRC Press



418



Handbook of Computational Group Theory



We let A be a finite set, known as the alphabet, and let A* be the free

monoid of strings over A. A rewriting system on A* is a set of ordered

pairs (w1, w2), with w1, w2∈A*. The elements of are called rewrite-rules,

and w1 and w2 are called, respectively, the left- and right-hand sides of the

rule. The idea is that we can replace occurrences of w1 in a string by w2. We

shall assume throughout that no two distinct rules have the same lefthand sides.

For u, v∈A*, we write u→S v if there exist strings x, y, w1, w2∈A* such

that u=xw1y, v=xw2y and (w1, w2)∈ ; in other words, if v is obtained from u

by making a single substitution using a rewrite-rule. We shall omit the

subscript when there is no danger of ambiguity.

DEFINITION 12.13 A string u∈A* is said to be ( -)irreducible or ( -)reduced

if there is no string v∈A* with u→v.

We denote the reflexive, transitive closure of → by →*. Hence u→*v if and

only if, for some n≥0, there exist u=u0, u1,…, un=v∈A* with ui→ui+1 for

0≤i
only if, for some n≥0, there exist u=u0, u1,…, un=v with

(†)



The system is called Noetherian (or terminating) if there is no infinite

chain of strings ui(i>0) with ui→ui+1 for all i. This implies that for any u∈A*

there exists an irreducible v∈A* with u→*v.

We call confluent if, whenever u, v1, v2∈A* with u→*v1 and u→*v2,

there exists w∈A* with vi→*w and v2→*w, and we call complete if it is

Noetherian and confluent.

It is called locally confluent if whenever u, v1, v2∈A* with u→v1 and

u→v2, there exists w∈A* with v1→*w and v2→*w.

The following sequence of lemmas demonstrates that completeness is a

highly desirable property for rewriting-systems to possess. For u∈A*, we

define the set desc(u) of descendants of u to be

. So

u is irreducible if and only if desc(u) is empty.

LEMMA 12.14 Suppose that

u∈A*.



is Noetherian. Then desc(u) is finite for all



PROOF Suppose that desc(u) is infinite. Since no two rules in have the

same left-hand side, there are only finitely many w with u→w. Thus there

exists u2∈A* with u→u2 and desc(u2) infinite. Similarly, there exists u3 with



© 2005 by Chapman & Hall/CRC Press



Rewriting Systems and the Knuth-Bendix Completion Process



419



u2→u3 and desc(u3) infinite, and we get an infinite chain {ui} with ui→ui+1,

contradicting the assumption that is Noetherian.

LEMMA 12.15 Suppose that

is complete.



is Noetherian and locally confluent. Then



PROOF We shall prove that, under the given hypotheses, for all u∈A*

there is a unique irreducible w with u→*w. The result clearly follows

from this. The proof is by induction on |desc(u)|, the result being clear

for |desc(u)|=0. Suppose that u=u 0→u 1→ … → um and

, with um and , irreducible. By local confluence, there exists v

with u1→*v and

. Let v→*w with w irreducible. Since

, it follows by inductive hypothesis that,

which completes the proof.

LEMMA 12.16 If is Noetherian and locally confluent, then each equivalence

class under * contains a unique -irreducible element.

PROOF Let u and v be irreducible strings with u *v. Then there exist

u=u0, u1,…, un=v∈A* satisfying the equation (†) above. We have to prove

that u=v. This is clear if n=0, so we use induction on n. By Lemma 12.15

is confluent, so there exists w∈A* with u→*w and u2→*w. Since u is

irreducible, we must have u=w, and so we can replace u2 by u in the diagram,

and the result follows by induction.

The systems that we shall be considering will all be Noetherian, but they

will not always be confluent. The following lemma provides a method of

checking confluence (and hence completeness) constructively, at least when

is finite.

LEMMA 12.17 The system is locally confluent if and only if the following

conditions are satisfied for all pairs of rules (u1, t1), (u2, t2)∈ .

(i) If u1=rs and u2=st with r, s, t∈A* and s ε, then there exists w∈A* with

t1t→*w and rt2→*w.

(ii) If u1=rst and u2=s with r, s, t∈A* and s ε, then there exists w∈A* with

t1→*w and rt2t→*w.

PROOF First assume that is locally confluent. Then in both cases,

the existence of w follows by applying the definition of local confluence

to the string rst. Conversely, assume that the conditions (i) and (ii) are

valid, and let u be a string with u→v1 and u→v2. Then u must have two

substrings u1 and u2 such that there exist rules (u1, t1), (u2, t2)∈ that are



© 2005 by Chapman & Hall/CRC Press



420



Handbook of Computational Group Theory



used in the reductions to v1 and and v2. If u1 and u2 do not overlap in u,

then we have u=ru1su2t for some strings r, s, t and v1=rt1su2t, v2=ru1st2t.

Thus v1→w and v2→w, with w=rt1st2t. Otherwise, u1 and u2 overlap in ,

and (after interchanging the rules if necessary) we must have one of the

two situations postulated in conditions (i) and (ii) of the lemma. It then

follows by assumption that there exists w∈A* with v1→*w and v2→*w, so

is locally confluent.

A pair of rules satisfying either of the two conditions of the lemma is called

a critical pair. If one of these conditions fail (so is not confluent), we end

up with two distinct irreducible strings w1 and w2 that are irreducible and

equivalent under *. We can resolve this instance of incompleteness by

adjoining either (w1, w2) or (w2, w1) to as a new rule. We can then continue

with the check for local confluence.

We shall assume from now on that is finite unless explicitly stated

otherwise.

The procedure of examining critical pairs and adjoining new rules to if

necessary is known as the Knuth-Bendix completion process. It may happen

that this process eventually terminates with a finite complete set , which

is what we would like. In many cases, however, the process does not

complete, but it does, in principal, generate an infinite complete set of

rules. In a few examples, as we shall see, such an infinite set can have a

very transparent structure, which can make it almost as useful as a finite

complete set.

In general, it can be difficult to decide which of (w1, w2) or (w2, w1) to adjoin

to in order to resolve a critical pair. In the applications that we shall be

considering, we resolve this problem by imposing a well-ordering ≤ on A*

that has the property that u≤v implies uw≤vw and wu≤wv for all w∈A*.

Such an ordering is known as a reduction ordering. Then we make the

larger of w1 and w2 the left-hand side of the new rule.

The assumption on the ordering ensures that u→*v implies u≥v and,

since it is a well-ordering, will necessarily be Noetherian. Thus, if is

complete, then the irreducible elements correspond to the least representatives

in the * equivalence classes.

One of the most commonly used examples of a reduction ordering is a

shortlex ordering, as defined in Definition 2.60. For example, if A={a, b, c}

and (just to be awkward) we decide to order A by b
strings in the associated shortlex order are



From now on, we shall assume that the rules are ordered according to some

such well-ordering, although not necessarily a shortlex ordering. (A completely

different well-ordering, appropriate for polycyclic groups, will be considered

in Section 12.4.)



© 2005 by Chapman & Hall/CRC Press



Tài liệu bạn tìm kiếm đã sẵn sàng tải về

6 The “ATLAS of Finite Groups”

Tải bản đầy đủ ngay(0 tr)

×