Upload
others
View
2
Download
0
Embed Size (px)
Citation preview
CHAPTER H
B ~ [ c CONCEPTS
In this chapter, we will establish many of the basic concepts underlying the
group-theoretic approach to graph isomorphism and the recent study of group-
theoretic algoritbxns in Computer Science.
We begin with a brief review of elementary facts from Group Theory, which we
give usually without proofs. Readers may find those proofs in any introductory text
on Group Theory. We then establish a view of the graph isomorphism problem which
makes apparent the basic relationship between isomorphic maps of graphs and the
autoInorphism group of a graph. This perspective is essential to understanding the
recent approaches to graph isomorphism. Finally, we develop an algorithm for gath-
ering information about permutation groups specified by generating sets. As we will
see, this algorithm introduces an essential technique which can be generalized and
applied to a surprising variety of problems.
1. Review of EIemen~a'y Group Theory
DEFINITION 1
A ~o~p is a set G closed under an associative, binary operation • satisfying the fol-
lowing axioms
(G[) There exists an element e in G such that, for all geG, e.g = g.e = g.
(G2) For all geG there exists an element g-leG such that g.g-1 = g-l.g = e.
The eardina~ity, IGI, of G is the group order. We shall limit our attention to groups
of finite order only. We refer to the operation • on G as the group ~%~LtipL<c=~io~%.
However, in certain groups the operation is traditionally denoted by +, such as in, for
example, the group of integers modulo a fixed nature! number n.
The element e, postulated in (Gi), is the group ~e~#g and is unique in G. The
element g-I is called the £1%verse of g. For each g~G, there is a unique inverse g-I
The inverse of g-I is g. Note that e.e=e, thus e-l=e.
The order of an element g of the finite group G is the smallest natural number m
13
such tha t gm= e. If m=2, t h e n g is called involutory.
A trivial group I is the group consis t ing of the iden t i t y e only.
A group G is commutat ive, if, for all g, h E G, g-h = h-g. Otherwise, G is noncom-
rnutative. A commuta t ive group is also called Abelian.
Of specia l impor t ance to us is the case where G is a se t of p e r m u t a t i o n s of a fixed
finite set X and the group mul t ip l i ca t ion is the composi t ion of p e r m u t a t i o n s (we may
th ink of a p e r m u t a t i o n as a b i jec t ion f rom X onto X). Such groups are called permu-
~u2ior~ groups. We discuss t h e m in Subsec t ions 1.3 and 1.4.
We now give four families of groups as an example. Let X be a fixed finite se t of
card ina l i ty n. Sym(X) denotes the group whose e l emen t s are all b i ject ions from X
onto itself, i.e., the set of all p e r m u t a t i o n s of X, and whose group opera t ion is compo-
sition. Sym(X) is a p e r m u t a t i o n group and is called the symmetr ic group of X. If Y is
ano the r set of card ina l i ty n, t hen every bijective map f be tween X and Y defines a
unique co r r e spondence be tween the e l e m e n t s in Sym(X) and the e l e m e n t s in Sym(Y).
This co r re spondence is such that , for all ~, ~ c Sym(X), we have f(Tr).f(3b ) = f(~r.~),
hence f is an isomorphism between Sym(X) and Sym(Y).
A transposition is a p e r m u t a t i o n of a se t which fixes all b u t two points . Let X be a
set of ca rd ina l i ty g rea t e r t han i. Consider the se t of those e l emen t s in Sym(X ) which
can be expressed as the p roduc t of an even n u m b e r of t ranspos i t ions . Then this se t is
closed u n d e r composi t ion and thus forms a p e r m u t a t i o n group Alt(X) which is called
the alternating group on X. The o rder of Sym(X) is exact ly twice the order of Alt(X).
Let ~ be a fixed p e r m u t a t i o n of the finite se t X. Then the re is a n a t u r a l n u m b e r m
such tha t ~m is the iden t i ty on X. The set I~r, ~2 . . . . . ~ral forms a group unde r composi-
tion, cal led the cyclic group gene ra t ed by n.
For the se t X = I1, 2 . . . . . n l define the p e r m u t a t i o n s ~ and ~ as follows: For
1 ~ i < n, the image of i u n d e r n is i+ l , and the image of n unde r n is 1. Moreover, the
image of t u n d e r ~ is 1, and the image of i u n d e r ~/ is n - i + 2 , where 2 -< i-< n. Then
the se t of p e r m u t a t i o n s of X which may be wr i t t en as finite p roduc t s of 7r and 3P forms
a p e r m u t a t i o n group D n of o rder 2n, called the dihedral group of order 2n. Note tha t
the cyclic group C n g e n e r a t e d by 7r has o rder n.
14
t . l . Subgroups, Cosets, Lagrange's Theorem
Many questions about the nature of a group G involve containment relationships
among subgroups of C.
DEFINITION 2
Let G be a g r o u p , H a n o n e m p t y s u b s e t of G. T h e n l S i s a s ~ b g r o u p of G, (G< H), t i l l
forms a group with r e s p e c t to the mul t ip l i ca t ion • in G.
We have always G < G and I < G. Moreover, the a l t e rna t ing group Alt(X) is a non-
trivial subgroup of Sym(X) whenever IX] > 2.
If H and K are subgroups of G, t h e n their i n t e r s e c t i o n H ~ K is also a subgroup of
G.
ToweTs of subgroups of G, tha t is, sequences of subgroups G (i) of G, t m i-< m,
such tha t G (i+0 < G (i) for all i < m, and G 0) : G, play a special role in g roup- theore t i c
alg or i thms.
With each subgroup H of G we can associate o ther subse ts of e l ements of G. In
the following, le t H < G and g ~ G.
DEFINITION 3
For e a c h g ~ G, the set Hg = i h ' g ! h e H l i s a r igh , t ' c o s e ~ o f H i n G . S imf l a r ly , t he set
gH : [ g.h I h~H i is a leff eoset of H in G.
Note t h a t H is both a left and a r ight eose t of itself, tt is easy to show tha t two
left (right) cosets of H are e i the r disjoint or equal, and t h a t all eosets are of card ina l -
ity equal to the order of H. Thus, we may part i t ion G into the left (right) cosets of H.
(Note, however, t h a t a left and a r ight eoset need not be disjoint or equal). The par t i -
t ioning of G into, e.g., r ight cosets of H is t rad i t iona l ly wr i t t en
G-~H-gl + H'g~+ - -" + H'gr
where + denotes the union of disjoint sets. Here the set [gl, gz ..... grl is a system of
right coset representatives, and is called a complete rigA/; trc~nsvarscd for H in G,
The n u m b e r of d i s t inc t left (equivalently, r ight) cosets of H is called the index of
H in G, and is wr i t t en (G:H).
TPIEORE~I i (Lagrange)
The order of G is equal to the product of the order of H and the index of H in G, i.e.
IG] = ]H [.(G:H).
15
It follows t h a t the order of any subgroup H m u s t divide the order of G.
Many group- theore t i c a lgor i thms find comple te r ight t r ansve r sa l s for the sub-
groups in a subgroup tower of some group G. That is, if
I = G (m) < G (m-l) < " - • < G (2) < G (I) -- G,
then the knowledge of a complete right transversal Ui for each G (i+I) in G O) permits
one to determine many questions about G with efficient algorithms. Since these right
transversals are typically stored in tables, towers of subgroups of G in 'which the index
(G(i):G (i+I)) is small for each i are of particular importance, since for them only small
tables are needed.
Cosets may be alternatively defined by introducing an equivalence relation on G.
For example, define for all gl, g~ E G, gl-=g~ iff gl-g~l~H. It is easily verified t ha t =- is
an equivalence re la t ion on G. The equivalence classes of -= in G are now precise ly the
r ight cosets of H in G. To obta in the left cosets, one needs to define gl-=g2 iff
gf'1.g2EH.
1.2. Normal Subgroups, Homomorphism, Isomorphism, and Automorphism
Some subgroups of a group G have the p roper ty t h a t every left coset gH is also a
r igh t cose t Hg. These subgroups play an i m p o r t a n t role in homomorph ic mapp ings of
G.
DEFINITION 4
A subgroup H of G is normal, H ~ G, if, for all gcG, Hg : gH.
In the case of n o r m a l subgroups, we speak of cosets dropping the d i s t inc t ion
be tween left and r igh t cosets. Note tha t if H has index 2 in G, t h e n H m u s t be no rma l
in G. Moreover, if H and K both are n o r m a l subgroups of G, t h e n the i r i n t e r s e c t i o n
Hc~K is also a n o r m a l subgroup of G.
If H ~ G, we can define a group mul t ip l i ca t ion on the cosets of H in G and t h e r e b y
obta in a group G*. The e l emen t s of G* are the cosets of H in G. We define
[Hgl]'[Hgz] = [Hglg2]. Since H'gl"H'gz = H'H'g1"g2 = Hglg~, this defini t ion makes sense
and is a group opera t ion on the cosets with [H] the group ident i ty . G* is called the
factor group of G by H, and is also wr i t t en G/H to ind ica te which n o r m a l subgroup is
involved. Note tha t the tr ivial group I, and G itself are always n o r m a l subgroups of G.
16
Here G/I is G, and G/G is the group I.
DE~%NITION 5
Let G and G' be two groups, h a map f rom G to G'. Then the map h is a group
AomomorpAisn~ if, for all ~I, gz c G, h(gFgz) = h(g~)-h(gz).
The set K of all elements in G which are mapped to the identity e' of G' is a normal
subgroup of G and is cal led the kerz~el of the h o m o m o r p h i s m . If this subgroup K is I,
the trivial group, then h is an i somorphism.
Let H be a normal subgroup of G. The map h defined by h(g) = Hg is a natural
homomorphism from G onto G/H with kernel H. Furthermore, if h is any homomor-
phism from G onto G' with kernel H, then G/H is isomorphic to G'.
It is of ten the case tha t we can find an i s o m o r p h i s m f rom G onto i tself . Such an
i s o m o r p h i s m is cal led an autorao. rphism of G. Cer ta in a u t o m o r p h i s m s arise t h rough
c onjugation:
DEEIN ITtON 6
Let g be a fixed e l e m e n t of the group G, h any e l e m e n t of G. Then h g = g-t-h-g is the
conjugate of h unde r g.
Conjugat ion u n d e r a fixed e l e m e n t p rov ides a 1-! map, s ince g - l h g = g - lkg
implies h = k. Hence conjugation must map G onto G, and is an ~utoraorloh~sm of G
since h¢.k ~ = (h.k) ~. Automorphisms induced by conjugation with a group element are
called the inner aufomo~ohisms of G, Th~ set of all inner automorphisms of G,
Inn(G), is again a group, in general, the inner automorphisms do not exhaust all pos-
sible automorphisms of a group.
If His a normal subgroup of G, thenH g =H, for' allgcG. It is easy to see that the
normal subgroups of G are precisely those subgroups of G which remain invariant
under all inner automorphisms.
1.3. Permutat ion Groups
Finite parm~ta t ion groups, t h a t is, subgroups of s y m m e t r i c groups, are of spe-
cial in te res t . The advantage of cons ider ing p e r m u t a t i o n groups G is t h a t t h e r e is a
c o n c r e t e r e p r e s e n t a t i o n for the e l e m e n t s of G, and a n a t u r a l def ini t ion of the group
multiplication. Furthermore, in studying finite groups, there is no loss of generality
when restricting attention to permutation groups:
17
TItEOREM 2 (Cayley)
Every group C is isomorphic to a permutation group of its own elements.
To i n c r e a s e r e a d a b i l i t y , we d e n o t e t h e e l e m e n t s of p e r m u t a t i o n g r o u p s wi th l ower
c a s e C r e e k l e t t e r s t h r o u g h o u t .
Le t X be a f in i te s e t and c o n s i d e r a i - i m a p ~ of X o n t o i t se l f . We ca l l w aperr~u-
~a~ion of X. If z is any e l e m e n t in X, t h e n z n d e n o t e s t h e i m a g e of z u n d e r ~. Note t h e
s i m i l a r i t y in n o t a t i o n wi th t h e c o n j u g a t i o n by a g r o u p e l e m e n t . This s i m i l a r i t y is
m e a n i n g f u l : Fo r e x a m p l e , l e t G be a p e r m u t a t i o n g r o u p on t h e s e t X = t i . . . . . hi .
A s s u m e we r e n u m b e r t h e p o i n t s in X by t h e p e r m u t a t i o n ~, i .e., we r e n a m e e a c h i m X
to i n, and we now c o n s i d e r how t h e g r o u p C has c h a n g e d as r e s u l t of t h i s r e n u m b e r i n g .
Then we find t h a t e a c h e l e m e n t ]P of G c o r r e s p o n d s to t he p e r m u t a t i o n ~/~T in t h e new
g roup .
Le t 7r, IP be p e r m u t a t i o n s of X. The produc~ ~ / i s t h e p e r m u t a t i o n of X de f i ned by
z (n~) = (z~) ~, for all zcX.
We a l r e a d y m e n t i o n e d t h a t if X a n d Y a r e two f in i te s e t s of e q u a l s ize , t h e n t h e r e
is an obv ious i s o m o r p h i s m b e t w e e n Sym(X) and Sym(Y). T h e r e f o r e , we u s u a l l y c h o o s e
X = f i , 2 . . . . . nl , t h e s e t of t h e f i r s t n n a t u r a l n u m b e r s . Sym(X) is t h e n a b b r e v i a t e d by
. S n .
Le t 7r be a p e r m u t a t i o n in Sn. A cycle of ~ is a l i s t (il, i s . . . . . it) of d i s t i n c t
n u m b e r s b e t w e e n i and n, s u c h t h a t i] n = i 2, i2 n = i s . . . . . ir_] ~ = i r, ir n = i 1. We u s u a l l y
c h o o s e fo r i] t h e s m a l l e s t n u m b e r in t h e l is t . Any p e r m u t a t i o n ~ c a n be w r i t t e n as
t h e p r o d u c t of d i s j o in t cyc les , t h a t is, e a c h p o i n t of t h e p e r m u t a t i o n d o m a i n o c c u r s in
a t m o s t one cyc le . This p r o d u c t is u n i q u e up to t he o r d e r of t h e cyc les . For e x a m p l e ,
t h e p e r m u t a t i o n ~ = 3 4 2 6 5 is t h e p r o d u c t of (2, 3, 4)(5, 6). Note t h a t c y c l e s
of l e n g t h i a r e o m i t t e d . We d e n o t e t h e i d e n t i t y p e r m u t a t i o n by t h e e m p t y cyc le , 0 .
Le t 7r be a p e r m u t a t i o n . The order of ~ is t h e s m a l l e s t n a t u r a l n u m b e r m s u c h
t h a t ~m = 0 . If ~ is w r i t t e n as p r o d u c t of d i s j o in t cyc les , t h e n m is t h e l e a s t c o m m o n
m u l t i p l e of t h e cyc l e l e n g t h s .
Le t H < Sym(X) be a p e r m u t a t i o n g roup . If X is of s ize /XI = n, t h e n we say t h a t H
is a pe rmu~ta t i0n g r o u p of degree n. Moreove r , X is t h e permuta t ion domain of H.
18
1.4. Genera to r s , Orbits, and S~abit izers
When designing algorithms for permutation groups a suitable representation for
the groups is needed. Since we have a fixed group multiplication it would suffice to
represent the group G by a listing of its elements only, However, we wish to compute
with permutation groups of degree n whose orders are possibly exponential in n. In
this case, a more suceint representation for the group G is needed. So, we propose to
represent the group by only a subset of its elements, if this subset, in some sense,
de~ines G. More precisely,
DEFINITION 7
Let K be a subset of Sym(X). The group <K> generated by K is the smallest subgroup
of Sym(X) which contains K as a subset.
<K> consists of all permutations in Sym(X) which can be written as a finite pro-
duct of the permutations in K. K is called a ge~er~t/~%g se~ for <K>. In general, gen-
erating sets are not unique. Since K is a subset of Sym(X), <K> is a permutation
group of degree n = IX[ with at most n! elements.
A permutation group of degree n always has small generating sets (Theorem 5
below). In Section 8 of this chapter we give an algorithm for determining <K> from K
fn time polynomial in the degree n and the size of K. So, representing a group by a
small generating set is computationally useful.
Conversely, we may be interested in determining whether a set K of permutations
is a group, i.e., whether <K> = K. Here we find that K is a group if and only if it is
closed under product formation of its members, that is, for all 7r~ ~ c K, 7rSeK. This
.follows from the observation that for a permutation ~T of order m, 7T m= 0 and
?r m-I = 7T -I.
Permutation groups can be analyzed in terms of their action on the permutation
domain. In the following, we assume that G is a permutation group on a fixed set X.
DEFINITION 8
Letx~X. The orbit of x in G is the set
x ~ = I y c X I y = x=, rr c GI
The ~ength Ix~l of x G is the eardinality of the orbit.
Note that x E yG iff y c x G. It is clear that X is partitioned into orbits of its
19
points. These orbi ts are cal led col lect ively G-orbits. If this p a r t i t i o n of X is trivial, i.e.
if x G = X, t h e n G is cal led t rans i t i ve , otherwise G is cal led i n t r a n s i t i v e .
Let G be an in t rans i t ive p e r m u t a t i o n group act ing on X, and le t Y = x G be the
orbi t of x in G. Since G is in t rans i t ive , Y is a p r o p e r subse t of the p e r m u t a t i o n domain
X. we associa te with each e l e m e n t ~r c G a p e r m u t a t i o n l r * c Sym(Y) by defining
y~ = yn for all y c Y. The group T = I 7r* I 7r c G ~ is cal led a t rans i t i ve c o n s t i t u e n t of
G. If G has exac t ly k orbits , t h e n it has exac t ly k t rans i t ive cons t i t uen t s T 1 . . . . . T~.
Often, subgroups of a p e r m u t a t i o n group G are defined na tura l ly by cons ider ing
only those e l e m e n t s of G which ac t on X in some r e s t r i c t e d way. F u r t h e r m o r e , some
ways of r e s t r i c t i ng the ac t ion on X induce subgroups whose cose ts can be pu t into a
1-i c o r r e s p o n d e n c e with the points in a G-orbit. These subgroups are ve ry i m p o r t a n t
for the a lgor i thms of Sec t ion 3 of this chap te r .
DEFINITION 9
The s tab i l i ze r of x in G is the subse t G x = I 7r ~ G I x~=x t.
It is easi ly verif ied tha t G z is a subgroup of G. There is a i-1 c o r r e s p o n d e n c e
be tween the points in the orb i t of x and the (right) cose t s of G x.
THEOREM 3
Let G = G x+GxTr z + . - . +GxTr k. Then the l eng th tx~l of the orb i t of x in G is k.
F u r t h e r m o r e , for all ~ c Gx~, x~ = x ~.
In par t icu la r , if G is a p e r m u t a t i o n group of degree n, t h e n the index of G x in G is
at m o s t n. Since the o rde r of G could be as large as n!, this says t h a t G x is not m u c h
smal l e r a group than G. Thereforc~ a comple t e r igh t t r ansve r sa l for G x in G has a t
m o s t n e l emen t s .
We genera l i ze the concep t of s tabi l izer subgroup in
DEFINITION 10
Let G be a p e r m u t a t i o n group on X, and Y a subse t of X. The subgroup
G[lq =ITr~GIVxcY,x~=x~
is the pointzv ise s tab i l i ze r of Y in G,
Note t h a t for a subse t Z of Y we have G[~ 3 < G[z ]. Thus we can cons ide r G[y] as the
subgroup obta ined by success ive ly stabil izing the points in Y, in some order .
DEFINITION 11
Let G be a permutation group on X, Y a subset of X. Then the subgroup
20
Gy: f ~ C ! ~/x ~= Y, x " E Y ~
is the setwise stabi2izer of Y in G.
The pointwise s t ab i l i z e r is a n o r m a l subg roup of t he setwise s t ab i l i ze r , i.e.,
G[~ <~ Gy. If IYi = L t h e n the two not ions coincide .
1.5. D i r e c t P r o d u c t s
Let G and H be two groups. The external d~r~c~ produc~ of G and H is a group
GxH whose e l e m e n t s a r e p a i r s (g,h), where g ~ G and h c H. The group o p e r a t i o n of
GxH is i n d u c e d by the group ope ra t i ons of G and H via (gl,hl)(gmh2) = (glgmhlh~).
I t is c l ea r t h a t t he o r d e r of GxH is t h e p r o d u c t of the o r d e r s of G and of H. More-
over, if we iden t i fy G with GxI and H with txH, t h e n bo th G and H a re n o r m a l sub-
g roups of G×H.
If G < Sym(X) and H < Sym(Y) are permutation groups, then G×H is a permuta-
tion group on the disjoint union X+Y of X and Y. In this sense we can consider the
intransitive permutation group G as a subgroup of the direct product of its transitive
constituents. Similarly, the setwise stabilizer Gy of YcX in G < Sym(X) can be con-
sidered the intersection of G with the group Sym(Y)×Sym(X-Y).
2. Graph Isomorphism and Graph Automorphisms
We now t u r n to proving some r e s u l t s which d e m o n s t r a t e t he c loseness of t he
p r o b l e m of g r a p h i s o m o r p h i s m to c e r t a i n ques t ions a b o u t the a u t o m o r p h i s m group of
a g raph . In p a r t i c u l a r , we e s t ab l i sh t h a t d e t e r m i n i n g the a u t o m o r p h i s m group of a
g r a p h is po lynomia l t i m e equ iva len t to t e s t i ng g r a p h i s o m o r p h i s m .
We also prove t h a t t he p r o b l e m of i n t e r s e c t i n g two p e r m u t a t i o n groups ,
p r e s e n t e d by g e n e r a t i n g se ts , is a t l e a s t as h a r d as g r a p h i s o m o r p h i s m . In Chap t e r Vi
we wilt give ev idence a g a i n s t t he poss ib i l i t y t h a t th is g roup i n t e r s e c t i o n p r o b l e m is
NP-eomple te ,
A p r o b l e m is i s o m o r p h i s m comple t~ if i t is po lynomia l Lime equ iva len t to g r a p h
i somorph i sm, We will p rove t h a t bas ic ques t ions conce rn ing the a u t o m o r p h i s m group
of a g r a p h a re i s o m o r p h i s m c o m p l e t e . We will also give e x a m p l e s of i s o m o r p h i s m
21
c o m p l e t e p r o b l e m s no t c o n c e r n e d with g r o u p - t h e o r e t i c ques t ions , m o s t l y b e c a u s e
t h e y a r e conven i en t s t e p s in the proofs .
An i m p o r t a n t i s o m o r p h i s m c o m p l e t e p r o b l e m is the count ing p r o b l e m a s s o c i a t e d
with g r a p h i somorph i sm , i.e. the p r o b l e m of d e t e r m i n i n g the n u m b e r of d i s t i n c t iso-
m o r p h i s m s be tween two g raphs . Since th is p r o b l e m is po lynomia l t ime equ iva len t to
the ex i s t ence p rob l em, i t is be l i eved t h a t g r a p h i s o m o r p h i s m is not NP-comple te .
Throughout , we r e s t r i c t our a t t e n t i o n to u n d i r e c t e d , s imple g raphs , t h a t is, to
g r a p h s wi thout mu l t i p l e edges and t r iv ia l loops. F o r inves t iga t ing g r a p h i s o m o r p h i s m ,
th is c o n s t i t u t e s no toss of genera l i ty , as an i s o m o r p h i s m t e s t for such g r a p h s is
r ead i ly c o n v e r t e d to an i s o m o r p h i s m t e s t for o t h e r t ypes of g raphs .
2.1. I s o m o r p h i s m s as Coset of the Automorphism Group
DE~ffTION 12
A simple, undirected graph X is a pa i r (V,E), where V is a f ini te s e t of g raph vertices,
and E is a (finite) se t of u n o r d e r e d pa i r s (v,w), where v and w a re d i s t i n c t ve r t i ces .
The e l e m e n t s of E a re ca l led the edges of the g raph .
In t he sequel , graph will always r e f e r to a s imple , u n d i r e c t e d g raph , un less expli-
c i t ly s t a t e d o therwise . F u r t h e r m o r e , we will usua l ly a s sume t h a t for a g r a p h with n
v e r t i c e s the v e r t e x se t V is I1 . . . . . nl. When cons ide r ing 1-1 m a p s ~ f rom the v e r t e x se t
of a g r a p h X onto the v e r t e x s e t of a g r a p h X', th is conven t ion allows us to u n d e r s t a n d
as a p e r m u t a t i o n .
Two v e r t i c e s v and w of the g r a p h X = (V,E) a r e adjacent if ,there is an edge (v,w)
in E.
DEPINITIO~ 13
Let X = (V,E) be a g raph , V = ~ 1 . . . . . n~. A p e r m u t a t i o n 7T c S n is an automorphism of X
if (vn,w n) is in E wheneve r (v,w) is in E.
That is, an a u t o m o r p h i s m is any p e r m u t a t i o n of V which p r e s e r v e s a d j a c e n c y in X:
Clearly, the i d e n t i t y p e r m u t a t i o n , 0, is an a u t o m o r p h i s m , a l though not a p a r t i c u l a r l y
i n t e r e s t i n g one. F u r t h e r m o r e , ff 7r and ~ / a r e two a u t o m o r p h i s m s of X, t h e n so is t h e i r
p r o d u c t ~r~. Therefore , the se t of all a u t o m o r p h i s m s of the g r a p h X is a p e r m u t a t i o n
group, ca l led the automorphism group, Aut(X), of the g raph .
The complete graph K n is a g r a p h with v e r t i c e s ~ 1 . . . . . n] such .that eve ry two dis-
t i nc t v e r t i c e s a re ad jacen t . The a u t o m o r p h i s m group of Kn is the s y m m e t r i c g roup
22
S n. If the a u t o m o r p h i s m group of a g raph X is the tr ivial group I, t h e n X is said to be
rigged. At the p r e s e n t t ime, the re is no known efficient t e s t for r ig idi ty of an a r b i t r a r y
graph. In fact, the exact re la t ionsh ip be tween recognizing r igidi ty and tes t ing graph
i somorph i sm is no t unders tood .
E ~ P ~ 1
Let X = (V,E) be a graph with ver t i ces V = /t . . . . . 5~, and edges
E = I(1,2), (1,4), (2,3), (3,4), (3,5) I. X is shown in Figure i below.
1 2
/ , j / 4 --3--5
The graph X
Figure i
The group Aut(X) is of o rder 2, and is f0, (2,4)t. Note t h a t X is no t a rigid graph since
!Aut(X)l > L m
DE~rNmoN 14
Let X = (V,E) and X' = (V',E') be two graphs. X is /sornorpb~o to X' if t he r e exists a !-1
map ~ f rom V onto V' such t h a t (v~,w ~) is an edge of X' whenever (v,w) is an edge of X.
Note that there may be more than one isomorphism. We will characterize the set
of i somorph i sms in t e r m s of the au to rno rph i sm group of the graph.
T~IEOE~I 4
Let X and X' be two i somorphic graphs with ve r tex set V = I1 . . . . . n~, Then the set of
i somorph i sms f rom X to X' is a r igh t eose t of the a u t o m o r p h i s m group Aut(X) in S n.
Proof Let X = (V,E) and X' = (V,E'). Let ~ and ~ be i somorph i sms f rom X to X',
and note t h a t they are p e r m u t a t i o n s in Sn. Recall t h a t
(v,w) E E iff (v',w °) ~ E' iff (v~,w ~) c E'.
Therefore, ~ - I is an a u t o m o r p h i s m of X. Thus, ~ and ~ are in the same r ight eose t of
Aut(X). Conversely, le t ~ be an i somorph i sm f rom X to X', and a an a u t o m o r p h i s m of
X. Then aL is again an i somorph i sm from X to X'. So, the r ight coset Aut(X)~ is the
set of all i somorph i sms f rom X to X'. m
23
The t h e o r e m has a n u m b e r of i m m e d i a t e and i m p o r t a n t coro l l a r i es .
COROLLAItY 1
Let X and X' be i somorph i c g raphs . Then the n u m b e r of i s o m o r p h i s m s f rom X to X' is
equal to t he o r d e r of AuL(X).
COROLLARY 2
Let X and X' be i somorph i c g raphs . Then Aut(X) and Aut(X') a re con juga te in Sym(V),
where V is the v e r t e x s e t of X and X'.
Proof Let ~ be an i s o m o r p h i s m f rom X to X', a E Aut(X), a ' c Aut(X'). Then
c-la~ E AuL(X'), and La2 -1 c Aut(X). Therefore , Aut(X) ~ = Aut(X'). -
Note t h a t t he conve r se of Coro l la ry 2 is n o t t rue . For a s imple c o u n t e r e x a m p l e ,
le t us f i rs t m a k e
D~.FImTtON 15
Let X = (V,E) be a graph . The complement graph X of X is the g raph (V,~.), where (v,w)
is in E iff (v,w) is n o t in E.
The c o m p l e m e n t g r a p h Kn of K n is a g r a p h with n ve r t i c e s and no edges . Clearly,
S~ = AuL(Kn) = AuL(Kn), b u t Kn and Kn a re not i somorph ic for n > 1.
There a r e g r a p h s X such t h a t t he c o m p l e m e n t X is i s o m o r p h i c to X. Such g r a p h s
are ca l led self-complementary, and t h e r e is no known po lynomia l t ime t e s t for th is
p r o p e r t y . Recognizing s e l f - c o m p l e m e n t a r y g r a p h s is an i s o m o r p h i s m c o m p l e t e p rob -
l em.
We i l l u s t r a t e T h e o r e m 4 and i ts co ro l l a r i e s wi th the following
EXAMPLE 2
Let X ' b e t he g r a p h of Example 1, X' the g r a p h (V,E'), whe re V = t l . . . . . 5~, and
E' = I(1,4), ( i ,5) , (2,3), (3,4), (3,5)1. X' is shown in F igure ~ below.
....... 4
// 5 3 ~
The g r a p h X'
F igure 2
The graphs X and X' are isomorphic. There are two isomorphisms from X to X', namely
24
(2,4,5) and (S,5). Aut(X') is [0, (4,5)t. Note t h a t (4,5) = (2,5)-l(S,4)(S,5). Therefore ,
Aut(X') = Aut(X)(a~L []
2.2. S o m e I s o m o r p h i s m C o m p l e t e P r o b l e m s
T h e o r e m 4 e s t a b l i s h e s a c lose relat ionsbAp be tween the a u t o m o r p h l s m group of a
g r a p h and the s e t of d i s t i n c t m a p s to an i somorph i c copy. Therefore , i t should be no
su rp r i s e t h a t an i s o m o r p h i s m t e s t can r e v e a l i n f o r m a t i o n a b o u t the s t r u c t u r e of the
a u t o m o r p h i s m group of a g raph , and tha t , converse ly , an a lgo r i t hm for d e t e r m i n i n g
the a u t o m o r p h i s m group should, wi th smal l modi f ica t ions , be capab le of t e s t i ng iso-
m o r p h i s m , We m a k e t h e s e ideas m o r e p r e c i s e by showing six p r o b l e m s to be polyno-
mia l t ime equivalent .
DEFINITION 16
Two problems (in NP) are po~ynoraictt tivne eq~'~vc~tent if the existence of a polynomial
time algorithm for one problem implies the existence of a polynomial time algorithm
for the other problem, and vice versa.
DEFINrrION 17
Let X = (V,E) be a g raph , h a m a p p i n g f r o m V onto a s e t L = fl 1 . . . . . lkt of t~beLs. Then
the pa i r (X,X) is a tabettect gr~pl~.
In tu i t ive ly , a l abe l l ed g r a p h is a g r a p h whose v e r t i c e s have been labe l led with ele-
m e n t s f rom the s e t L. Ex tend ing Defini t ion 15, we cal l two l abe l l ed g r a p h s (X,X) and
(X',/~) isomorph,tc if t h e r e is an i s o m o r p h i s m L f rom X to X' such tha t , for all v e r t i c e s v
of X, A(v) =/~(v~). Moreover, s ince we a re m e r e l y i n t e r e s t e d in equa l i ty of labels , we
will usua l ly choose for L the s e t !1 . . . . . k~, a s suming the occu r r i ng labels have b e e n
e n u m e r a t e d f rom 1 to k.
PROBIJ~ I ( E x i s t e n c e of G r a p h I s o m o r p h i s m )
Given two g r a p h s X and X' wi th n v e r t i c e s each , dec ide w h e t h e r t h e y a r e i somorph ic .
PROBLI~I 2 ( E x i s t e n c e of I s o m o r p h i s m of Labe l l ed Graphs)
Given two l abe i l ed g r a p h s (X,A) and (X',/z), dec ide w h e t h e r t h e y a re i somorph ic .
PROnLm~ 3 (Graph Isomorphism)
Given two g r a p h s X and X', dec ide w h e t h e r t h e y are i somorph ic , and if so, c o n s t r u c t
an i s o m o r p h i s m f rom X to X'.
25
PROnL~ 4 (Graph A u t o m o r p h i s m )
Given a graph X, d e t e r m i n e a gene ra t ing se t for Aut(X).
PR01~LF~ 5 (Order of the A u t o m o r p h i s m Group)
Given a graph X, d e t e r m i n e the order of Aut(X).
PROBLEM 6 ( N u m b e r of I s o m o r p h i s m s )
Given two graphs X and X' with n ver t ices each, d e t e r m i n e the n u m b e r of i somor-
phisms from X to X'.
Recall t ha t a gene ra t ing se t for a finite p e r m u t a t i o n group G is a s e t K of ele-
m e n t s of G such tha t each e l e m e n t in G can be wr i t t en as a finite p r oduc t of m e m b e r s
of K. If X is a g raph with n ver t ices , t h e n Aut(X) is a p e r m u t a t i o n group of order possi-
bly as large as n!. Thus we should inquire first whether Aut(X) c a n always be gen-
e ra ted by a sufficiently smal l subse t of e lements . The following t h e o r e m answers this
quest ion affirmatively.
T H ~ 0 R ~ 5
Let G be a finite group of order m, There is a subse t K of e l emen t s of G of size at mos t
[logz(m) ] which gene ra t e s G.
Proof The a r g u m e n t is induct ive. We define G (°) = I, the subgroup consis t ing
only of the ident i ty , and cons ider this group g e n e r a t e d by K 0 = ¢. We plan to con-
s t r u c t an ascending tower of subgroups in G,
I = G (0) < G (1)< - .- < G (r)= G,
in which each group G (i) is a p roper subgroup of G (i+1), 0 - i < r. Since G is finite, so is
r ,
Assume induct ive ly tha t G (~) = <Ki> is a p rope r subgroup of G, where K i consis ts of
exact ly i genera tors . Then the re is some ni+l c G - G (i), hence, with Ki~ ~ = KiU~Tri+~],
G (i+~) = <Ki+l> proper ly conta ins G (9, so its order is a t leas t twice the o r d e r of G(0.
Note t h a t Ki+1 con ta ins i+ t genera tors . Hence G = <K~> and r-< [log~(m)]. -
|.EMMA 1
If P rob lem 1 is in P, t h e n so is P rob l em 2.
Proof Let (X, h) and (X',/z) be two (vertex) label led graphs to be t e s t ed for iso-
morphism. We will cons t ruc t , in polynomial t ime, graphs Z and Z' such tha t they are
i somorphic iff (X,h) and (X',~z) are.
26
If X and X' have ve r t ex sets of d i f ferent cardinal i ty , t h e n (X,h) and (X',~) c a n n o t be
isomorphic. So, a s sume tha t bo th X and X' have n ver t ices . We p lan to code the graph
labels as sui table subgraphs which we a t t ach to the ver t ices of X and of X'.
In t ime polynomial in the l eng th of the i npu t we can r e n a m e the labels and may
assume, therefore , tha t L = ~i . . . . . kt is the se t of labels ass igned by X and !~. Note
tha t k_<2n We descr ibe how to c o n s t r u c t Z f rom (X,h). The c o n s t r u c t i o n of Z' is done
in the same way.
Let X = (V,E), V = Iv I . . . . . vnt. Intui t ively, we obta in Z f rom X by a t t ach ing to each
ver tex v i a comple te g raph with n + r ver t ices , where h(vi) = r. Note t ha t r---2n. The
ver t ices of the a t t a ched comple te g raph will be, for v i, Ivi, t . . . . . Vi,n+rt. The subgraph is
atLached to v i by an edge (vi, vi, l). Formally, Z = (W,F), where
W = V U lvid .i l-<i-<-n, 1~j-<n+r, h ( v i ) : r l
and
F : E k) i(vi,vl,1) I I{i_<n{ C) i(vid,V~,k) I 1--<i~-n, l_<j<k_n+r, h ( @ = r t
It is easy to see tha t (X,A) is i somorphic to (X',/~) iff Z is i somorphic to Z'.
Since the re are a t m o s t 2n d i s t inc t labels, the graphs Z and Z' have no more t h a n
2n2+n vor t ices each and can thus be c o n s t r u c t e d in polynomial t ime. n
L ~ 2
If P rob l em 2 is in P, t hen so is P rob l em 3.
Prdof First , observe tha t an a lgor i thm for P rob lem ~ de tec t s whe ther two
graphs X and X' are isomorphic . So, a s sume t h a t X and X' are i somorphic graphs with
the c o m m o n ver tex se t I 1 . . . . . nt.
In cons t ruc t i ng an i s o m o r p h i s m from X to X', we use the following idea: If we can
assign to each ver tex of X a unique label, and likewise to the ver t ices of X'~ such tha t
the r e su l t ing label led graphs are i somorphic , t hen this labell ing comple te ly specifies
an i somorphism. Since the two graphs X and X' are i somorphic , it is c lear t h a t such a
lab elling exists.
Let Z 0 = (X,X) and Z' 0 = (X',/~) be the label led graphs ob ta ined f rom X and X' by
assigning to each ver tex the label 0. Clearly Z 0 and Z'o are isomorphic as label led
graphs. Now c o n s t r u c t the labeHings hi
I i f i = i Xl(i) = 0 otherwise
27
and/~j, l~j_<n,
1 ifi=j
/~j(i) = 0 otherwise
and consider the pairs of labelled graphs ((X, AI), (X',/zj)), i -< j -< n. Since Z 0 and Z' 0
are isomorphic, at least one of these graph pairs is to0, say the pair (Zl,Z'il), where
Z I = (X,AI), Z'il = (X',~ql). At this point we know that there exists an isomorphism
from X to X' such that the image of vertex i in X is the vertex i I in X'. Now define kl, z
by
Ai,2(i) =
1 if i= I
8 if i=2
0 otherwise
and/zil,j, 1 -< j ~ n,
1
/,Zil,j(i ) = 2
0
j # i 1, by
if i = i I
if i = j
otherwise
By the same argument as above, there is a number i 2 such that the graphs
ZI,z = (X, AI;2) and Z'il,i 8 = (X',~ZJl,iZ) are isomorphic, which means that there exists an
isomorphism from X to X' such that the vertices i and ~ of X are mapped to the ver-
tices i I and i a of X', respectively.
Proceeding in this manner, we construct the desired labelling of the vertices of X
and of X' with unique labels, thereby constructing an isomorphism from X to X'.
For the timing of this procedure, observe that we make O(n 2) isomorphism tests
of labelled graphs, and that the labellings A and ~ involved carl be constructed in poly-
nomial t ime. -
L e t X = (V,E) be a g raph with ver tex s e t V = l1 .. . . . n~. L e t G =Aut(X) b e t h e a u t o -
m o r p h i s m group of X. We will design next an a lgor i thm for finding a genera t ing se t for
the group G, given an a lgor i thm for determining i somorphisms (Problem 2). This
a lgor i thm will employ the concep t of pointwise stabil izer subgroups of G (see
Definition I0), and Theorem 3. LetY i denote the set II ..... il.
LESMA 3
Let G < S n be a permutation group of degree n, and let G (0 = G[yi], I -< i-< n, be the
pointwise stabilizer of Yi in G. We set G (°)= G. For t-<i-n, let U i be a complete
28
n
r i g h t t r a n s v e r s a l for G (0 in G (i-1). Then, for 1 -< r -< n, Kr : u U i is a g e n e r a t i n ~ s e t for i = r
G(r-1)
P r o o f We p r o c e e d by i n d u c t i o n on n - r . S i n c e G (n) = I, we h a v e U a = G (n-l), h e n c e
U n is a g e n e r a t i n g s e t for G (n-~),
Now assume inductively that Kr+ i generates G (r) and let ~r be any element of
G (r-l). Then there is a ~ E U r such that ~-i ~ G(r). Hence 7r can be expressed as pro-
duct of the generators of G (r) and the elements of Ur, from which the conclusion fol-
lows. ~
The proof of Lemma 3 implies, in particular, that every element ~ E G can be
written as the product "#n~n-i ~ " ' ~i, where ~i e U i. This product decomposition must
be unique: Since z is in a unique coset of G (1) in G, ~i is uniquely determined. Hence
~/8 is uniquely determined by ~-I By induction, therefore, the otller ~j are also
uniquely determined. Note also that the generating set K I for G contains at most
0(n z) permutations.
LEu~ 4
if Problem 3 is in P, then so is Problem 4.
Proof Let X be a graph as above, G its automorphism group. Because of Lemma
3, we consider the problem of determining, in polynomial time, a complete right
transversal U i for G 0) in G (i-i). (The groups G (i) are as in Lemma 3). We use the algo-
rithm, for Problem 3 as a subroutine.
By Theorem 3, we can compute the elements of U i by testing, for each j between i
and n, whether there is an automorphism a of X which pointwise fixes the vertices
i ..... i-i, and maps vertex i into vertex j. We construct two labelled graphs Y and Z
from X, such that Y and Z are isomorphic iff there is such an automorphism a. Y is
obtained from X by labelling the vertices i ..... i with the distinct labels i ..... i,
respectively, and labelling each of the remaining vertices with Oi Z is obtained from X
by labelling the vertices ! ..... i-I with i ..... i-l, respectively, labelhng the vertex j
with i, and labelling each of the remaining vertices with O. Clearly Y and Z are iso-
morphic iff there exists an automorphism a pointwise fixing vertices i through i-l,
and mapping vertex i into vertex j. Using the techniques of Lemma i, we convert the
graphs Y and Z into equivalent, unlabelled graphs Y' and Z', and use the algorithm for
Problem 3 to find an isomorphism ~ from Y' to Z ~, if such exists. If there is such a map
q we then obtain the desired automorphism a by restricting ~ to the vertex set of X.
29
If no isomorphism exists, then there cannot be such an automorphism, and j is not in
the orbit of i in G (i-I).
For the timing, observe that the procedure for funding a particular automorphism
a is polynomial time by hypothesis. This procedure is called O(n ~) times, so that we
have a polynomial time reduction. -
L ~
If Problem 4 is in P, then so is Problem 5.
Proof Let n i =IUil be the cardinality of the complete right transversal U i for
G[yi] in G[Yi_1]. By Lagrange's Theorem, we have
I C[yi_lll = J G[~lj.n~
Therefore, since I G[Yn] I = i, the order of the automorphism group G is
n
icl = Yini i=I
The lemma follows trivially from this observation. =
L~6
If Problem 5 is in P, then so is Problem i.
Proof Let X and X' be two graphs which we wish to test for isomorphism. We
argue first, that we may assume that both X and X' are connected graphs.
If X is connected, but not X', or vice versa, then clearly they cannot be isomorphic
graphs. If both X and X' are not connected, then their complement graphs must be
connected, and we test, equivalently, the complement graphs for isomorphism.
Assume, therefore, that both X and X' are connected, and let Z be the d/sjoi~t
union of X and X'. Observe that the direct product D = Aut(X)×Aut(X') is a subgroup of
Aut(Z), and that D is a proper subgroup iff X and X' are isomorphic. Since
I DI = IAut(X)l'IAut(X')I, the graphs X and X' are isomorphic iff IAut(Z)l is strictly
greater than IAut(X) I" IAut(X') I, from which the lemma follows. -
"I~EO~ 6 (l~lathon)
Problems i through 6 are polynomial time equivalent.
Proof By Lemmata i through 6, Problems i through 5 are polynomial time
equivalent. Furthermore, it is clear that if Problem 6 is in P, then so is Problem I.
Conversely, in solving Problem 6, we use the algorithms Sor Problem i and Prob-
30
lem 5: Using the a lgo r i t hm for P r o b l e m i, we f i rs t dec ide w h e t h e r the n u m b e r of dis-
[ m e t i s o m o r p h i s m s f rom X to X' is ze ro or nonzero . If the n u m b e r is nonzero , i.e., if X
and X' a re i somorph ic , t hen we use the a l g o r i t h m for P r o b l e m 5 to d e t e r m i n e
m = I Aut(X) t. By Corol lary i , m is t h e n the n u m b e r of d i s t i n c t i s o m o r p h i s m s . -
P r o b l e m s 2 t h r o u g h 8 a re e x a m p l e s of i s o m o r p h i s m c o m p l e t e p r o b l e m s , i.e., of
p r o b l e m s po lynomia l t ime equ iva len t to g r a p h i somorph i sm . There is a s izable l i s t of
known i s o m o r p h i s m c o m p l e t e p r o b l e m s . As a g e n e r a l rule , however, i s o m o r p h i s m
c o m p l e t e p r o b l e m s o t h e r t h a n the ones above a re all i s o m o r p h i s m ques t ions of r e s -
t r i c t e d g r a p h c l a s ses (e.g., s e l f - c o m p l e m e n t a r y g raphs , c h o r d a l g raphs , etc .) , or of
algebraic or combinatorial structures (e.g. semigroups, association s c h e m e s , etc.).
Problem 4 stands out as an isomorphism complete problem of a different nature, and
thus adds a new p e r s p e c t i v e , in p a r t i c u l a r , T h e o r e m 4 and i ts co ro l l a r i e s give exce l -
l en t insights into the nature of isomorphisms,
Of p a r t i c u l a r i n t e r e s t is t he i s o m o r p h i s m c o m p l e t e n e s s of P r o b l e m 6, the coun t -
ing p r o b l e m a s s o c i a t e d with g r a p h i somorph i sm, t t is be l i eved t h a t the count ing
p r o b l e m a s s o c i a t e d with an N P - c o m p l e t e e x i s t e n c e p r o b l e m is no t in NP. Thus, t he
i s o m o r p h i s m c o m p l e t e n e s s of P r o b l e m 6 is of ten u n d e r s t o o d as ev idence aga ins t the
NP-completeness of graph isomorphism. Should it be the case that graph isomor-
phism is neither in P nor NP-complete, then this equivalence with the associated
counting problem might very well be characteristic of some such problems of inter-
mediate difficulty. In Chapter VI, we will show that the problem of intersecting two
permutation groups with known generating sets shares this characteristic, i.e., the
counting problem associated with the (equally difficult) double coset membership
p r o b l e m is of equal difficulty. In t e re s t ing ly , i t is no t known w h e t h e r the group i n t e r -
s ec t ion p r o b l e m is i s o m o r p h i s m c o m p l e t e . In fact , i t a p p e a r s to us to be a h a r d e r
p rob l em,
2.3. Graph Isomorphism and Group Intersection
We show in this s u b s e c t i o n t h a t a po lynomia l t ime a l g o r i t h m for i n t e r s e c t i n g pe r -
mutation groups implies the existence of a polynomial time algorithm for graph iso-
morphism. That is, we will show that the automorphism group of any graph is the
3]
i n t e r s ec t i on of two p e r m u t a t i o n groups for which gene ra t ing sets are known.
Let X = (V,E) be a g raph with v e r t e x set V = ~i . . . . . nl. The a u t o m o r p h i s m group
Aut(X) of X is a subgroup of Sn. We c o n s t r u c t a new r e p r e s e n t a t i o n for S~ by le t t ing
the g roup a c t on the se t of all u n o r d e r e d pairs (i,j), 1 -< i,j-< n, i ~ j. The group iso-
m o r p h i s m accompl ish ing this is defined by the associa t ion of ~ in S n with a p e r m u t a -
t ion ~ of the new p e r m u t a t i o n domain, where
(i,j)~ = (i~,j ~)
Let S' n deno te S n act ing on this new p e r m u t a t i o n domain. Note tha t S n is g e n e r a t e d
by the two p e r m u t a t i o n s a = (1,2), and fl = (1,2 .. . . , n). Thus we also have g e n e r a t o r s
for S' n. Let E be the s e t of nonedges of X, t h a t is, the u n o r d e r e d pa i r (i,j) is in E iff (i,j)
is not in E. Let T = Sym(E)×Sym(E) be the d i r ec t p r o d u c t of Sym(E) and Sym(E).
Note t h a t T is g e n e r a t e d by four p e r m u t a t i o n s which we know. We c la im the following
THEOEE~I 7
Let X = (V,E) be a g raph with v e r t e x set V = It . . . . . nt. Then Aut(X) is i somorphic to
the i n t e r s e c t i o n of S' n with T = Sym(E)xSym(~.).
Proof Let A = Aut(X) be the a u t o m o r p h i s m group of X, A' the i somorphic group
obta ined by le t t ing A ac t on the s e t of all u n o r d e r e d v e r t e x pairs . Let a c A be a n
au tomorph i sm , a ' the co r respond ing e l e m e n t in A'. Since a is a v e r t e x pe rm u ta t i on ,
a ' is an e l e m e n t of S' n. Since a maps edges into edges and nonedges into nonedges , a '
is also in T. Conversely, le t a ' be in S' n (~ T. Since a ' c S'n, t he r e is an assoc ia ted ver-
tex p e r m u t a t i o n a in S n. Since a ' ~ T, the co r respond ing v e r t e x p e r m u t a t i o n a maps
edges into edges and nonedges into nonedges , hence it is an au tomorph i sm. There-
fore, A' = S' n (~ T. =
Note t h a t the i n t e r s e c t i o n of S' n with the group T is the setwise s tab i l izer of E in
S' n. In Chap te r VI we will show t h a t d e t e r m i n i n g the setwise s tab i l izer in a p e r m u t a -
t ion group C is polynomial t ime equiva len t to i n t e r sec t ing C with an a r b i t r a r y p e r m u -
ta t ion group.
COROLLARY 3
If the group i n t e r s e c t i o n p r o b l e m is in P, t hen so is g r aph i somorphism.
It is an open ques t ion whe the r the converse of Corollary ~ is t rue .
32
3. C o m p u t a t i o n a l l y Usefu l Group Descriptions
A unifying t h e m e of the r e s e a r c h desc r ibed in this book is the ques t ion of how
succ inc t ly a ( pe rmu ta t i on ) group may be descr ibed , so t h a t we can efficiently answer
basic ques t ions like: What is the group order, or, is a pa r t i cu l a r p e r m u t a t i o n ~ E S n a
m e m b e r of the group?
We may view a graph as a desc r ip t ion of i ts a u t o m o r p h i s m group. The resu l t s of
Sect ion 3 allow us to r e i n t e r p r e t g raph i somorph i sm as the ques t ion of the compu ta -
t ional ut i l i ty of so descr ib ing a group.
Apart f rom this c o m p u t a t i o n a l uti l i ty, t he re is the ques t ion whe ther defining a
group as the a u t o m o r p h i s m group of a graph leads to a succ inc t r e p r e se n t a t i on , i.e,,
affords some economy of space. There is no t m u c h known abou t this a spec t of the
problem. Although i t is known t h a t every p e r m u t a t i o n group arises as the au tomor -
ph i sm group of a graph, the c o n s t r u c t i o n is po lynomia l in the group order, and the re -
fore does no t lead, in genera l , to a s u c c i n c t descr ip t ion . It is an open ques t ion
whe ther every p e r m u t a t i o n group of degree n arises as the a u t o m o r p h i s m group of a
g raph of size po lynomia l in n, and this p r o b l e m is i n t i m a t e l y r e l a t ed to the ques t ion of
whe ther the converse of Corollary 3 is t rue ,
in this section, we start to investigate the usefulness of specifying groups by gen-
erating sets. From Lemma 3 and Theorem 5 we know that every permutation group of
degree n has a generating set of size polynomial in n. This means that the
specification by generators is definitely succinct. We will now show that there are
efficient algorithms for answering some very basic questions about permutation
groups when they are so destribed,
3.1. D e t e r m i n a t i o n of a P e r m u t a t i o n Group from Generators
Given a gene ra t ing se t K of pe rmu ta t i ons , we show how to c ompu t e f rom it the
order of the group G = <K> g e n e r a t e d by K in polynomial t ime, and show how to dev-
ise a polynomial t ime m e m b e r s h i p t e s t for G. The t echn iques exerc ised in this algo-
r i t h m are of g rea t impor t ance , for they surface in m a n y of the a lgor i thms of this
area, e i the r direct ly, or in some genera l ized form. In Sect ion 4, we t h e n discuss a
genera l i za t ion of the t echn ique and i l lus t ra te it with o ther a lgori thms. The genera l i -
za t ion will lead to efficient a lgor i thms for de t e r mi n i ng a gene ra t ing se t for the
33
i n t e r s e c t i o n of p e r m u t a t i o n g roups with c e r t a i n p r o p e r t i e s .
PROBLzu 7 (Group Specification by Generators)
Given a se t K of p e r m u t a t i o n s in Sn, d e t e r m i n e the o r d e r of <K>, the g roup g e n e r a t e d
by K, and give an ef f ic ient m e m b e r s h i p t e s t for <K>.
Let G < S n be a p e r m u t a t i o n g roup of deg ree n for which we a r e given a g e n e r a t -
ing se t K of p e r m u t a t i o n s of ~ 1 . . . . . hi. Roughly, the a l g o r i t h m for P r o b l e m 7 begins by
c o n s t r u c t i n g a new g e n e r a t i n g se t K' for G. This g e n e r a t i n g se t K' will be of size a t
m o s t O(n a) and p e r m i t s a m e m b e r s h i p t e s t for G requ i r ing a t m o s t O(n 2) s t eps . I t a lso
p e r m i t s u's to d e t e r m i n e the group o r d e r in the s ame t ime bound. The cos t of con-
s t r uc t i ng K' f rom K is, in the wors t case , O( t K I "n2+nB).
The a lgo r i t hm has b e e n known for quite some t ime, a l though no t in the fo rm
given he re . Unt i l r e cen t l y , i t was no t r e c o g n i z e d t h a t i t is a po lynomia l t ime algo-
r i thm, and no analys is of the a lgo r i t hm exis ted . In Subsec t i on 3.3, we will t ouch upon
the d i f fe rences be tween the ve rs ion given he re and the or iginal ve r s ion (see also Sec-
t ion 5).
Let Yi be t he se t I1 . . . . . it, l < - i - < n , and def ine G ( ° ) = G . Let G (i)=G[vl] be t he
pointwise s t ab i l i z e r of Y~ in G. We o b s e r v e d in Sec t ion 1 t h a t t h e r e is a tower of sub-
g roups of G:
I--- G (n) < G (n-l) < • • , < G (I) < G (0) = G.
Sihce G ~ < Sn, G (n) is t he t r ivia l g roup I,
Let Ui be a c o m p l e t e r igh t t r a n s v e r s a l for G 0) in G (i-I), L e m m a 3 showed t h a t zl
K ' = u U i is a gene ra t i ng se t for G of size a t m o s t O(n2). We will e x t e n d the proof of 2=1
L e m m a 3, and der ive an O(n ~) m e m b e r s h i p t e s t for G using the se t s Ui.
Let ~0 ~ Sn be any p e r m u t a t i o n of d e g r e e n. Assume we wish to t e s t w h e t h e r
7r0~ G.
If ~r 0 c G = G (°), t h e n t h e r e m u s t be a r i g h t c o s e t C(1)3Pl of C (~) in G (°) con ta in ing
~r 0, F u r t h e r m o r e , by Theo rem 3, i n° = t #1, and lr I = no3P~ -1 fixes 1. Therefore , we f i rs t
s e a r c h Us for a m e m b e r ~1 with 1 ~° = 1 ~1. If t h e r e is no such ~1, t h e n c e r t a i n l y
7r 0 ¢ G . If t h e r e i s such a ~1, t h e n noCG(°) iff ~h c G 0). Note t h a t we have jus t
r e d u c e d m e m b e r s h i p in G (°) to m e m b e r s h i p in G 0). Repea t ing th is p r o c e s s with nl
34
and Uz, we reduce membership of ~1 in G (I) to membership of w z = 7r1~ I in G (~),
where ~2 E U a Iterating, we finally test a permutation ~n for membership in G (n). But
note tha% G (n) = I, the trivial group, thus we test whether Tr n is the identity permuta-
tion. This arguinent leads to the following
ALGORITHM 1 ( M e m b e r s h i p Tes t in a P e r m u t a t i o n Group G)
Input Complete right transversals U i for G[vi] in G[vi_l] and the permutation
Output True if ~ c G, f a l s e o therwise .
Method
1. beg in
2. i := O;
3. i s m e m b e r := true;
4. while i < n and ismember do beg in
5. i := i+ l ;
6, j := i'~;
7. ff there is 3P in U i such that i~=j
8. ~ e n Tr := rrl ~-I
9. e l se ismember := fa lse;
10. end;
I. 1. o u t p u t ( i s m e m b e r ) ;
t2, end.
PROPOS~ON
Algor i thm 1 is c o r r e c t and r e q u i r e s O(n 2) s teps , a s suming a s t a t ab l e r e p r e s e n t a t i o n of
the transversals Ui,
Proof The d i scuss ion p r e c e d i n g Algo r i t hm 1 is eas i ly fo rma l i zed into an induc -
tive p roof e s t ab l i sh ing the c o r r e c t n e s s of A lgo r i t hm i.
For the t iming , obse rve t h a t the whi le- loop is e x e c u t e d a t m o s t n t imes , and t h a t
the m u l t i p l i c a t i o n of two p e r m u t a t i o n s of n symbo l s r e q u i r e s only O(n) s t eps . Thus,
the t i m e bound follows, p rov ided the t e s t in Line 7 does n o t r equ i r e too m a n y s teps .
In order to perform the test of Line 7 in constant time, we represent the sets U i as
follows.
35
By Theorem 3, ff ~ and ~' are d i s t inc t cose t r e p r e se n t a t i ve s in U i, t h e n i # ~ i f . We
therefore s tore the sets Ui in an n x n ma t r ix M whose en t ry Mid will be the p e r m u t a t i o n
30 if there is a 30 e U i such tha t i # = j. Otherwise, M~,j will con ta in the special symbol
empty. Note t ha t if I~Itl is no t empty, t h e n j ~ i. F u r t h e r m o r e , if M~d = 30 ¢ empty,
t h e n 1 ~ = i . . . . . ( i - i ) ~ = i - I , s ince 30 e U i. The cost for s tor ing the U~ in this m a n n e r
will be charged to the p reprocess ing a lgor i thm comput ing these sets. =
In the proof of Lemma 5 we no ted t ha t
/I
tGt = 1~ JUil i = l
Consequently, knowing the t r ansve r sa l s Ui, i t is c lear tha t we can d e t e r m i n e the group
order IGI in O(n 2) steps.
We now t u r n to cons t ruc t ing the sets Ui f rom a given se t K of p e r m u t a t i o n s gen-
e ra t ing G. Recall the me thod for s toring the sets Us in the n x n ma t r ix M. Perhaps the
eas ies t approach to u n d e r s t a n d i n g the a lgor i thm for computing, the sets Ui is to con-
sider representation matrices.
DEngrnoN 18
Let Ivl be an nxn matrix of permutations with the following properties:
(i) Mi, i is the identity permutation, (), I -< i~ n.
(2) For i > j, Mid iS empty.
(3) For i < j, Mi, j is e i ther empty, or is a p e r m u t a t i o n 30 such tha t ~ pointwise fixes
the se t fl . . . . . i - l t , and i ~ = j.
Then M is called a representation matrix.
A representation matrix M defi~es or represeTzts a set of permutations, TM, by
TM = I 71eSn I 7r --- 30n30n-I " " " 301, 30i is not empty and in row i of M I
Note that TM is precisely the set oi all those permutations in S n for which Algoritlun 1
returns true, interpreting the matrix M as representing the transversals Uj. We ask
when this set T~{ happens to be a group.
TSEom~ 8
The set T M is a group iff, for all permutations 7T and • in the representation matrix M,
their product 7r30 is in T M.
36
Proof Assume that T~ contains all products ~ formed with nonemp~y entries in
M. We prove that T~ is a group by induction on n.
Bo~s~ Cruse: If M is a i×i matrix, then T~ is obviously the trivial group I.
In~c~ion S~p." Let T' be the subset consisting of all permutations in T~ which
fix 1. We may ident i fy T' with the se t TM,, where M' is the ( n - 1 ) x ( n - 1 ) s u b m a t r i x
ob ta ined by dele t ing the first row and the first co lumn from M. By the defini t ion of M
and of T~, T' con ta ins all pair p roduc t s of n o n e m p t y en t r ies in M'. By induc t ion
hypothesis , therefore , T' is a group. Let ~ and ~r be two p e r m u t a t i o n s in T~. Since T~
is a subse t of S n, i t suffices to show tha t the p roduc t ~ r is in T~. Now
( % " " " ~ 2 ) ( ~ ' ~ ? ' ~ ) ( ? ' ~ - i " ' " ~ ' 1 )
( ~ n " ° " ? ~ ) ( ~ ' n " " ' ~ " 1 ) ( ~ ' n - 1 " " ' ~ ' 1 ) (T~ c l o s e d u n d e r p a i r p r o d u c t s )
( ( % ' " " ~ 2 ) ( ~ ' ~ " " " ~ " 2 ) ) ~ " 1 ( ~ ' n - i " " " ~ '~ )
( ~ n " " ~ ) ~ " l ( ~ n - ~ ' " " ~ '~) ( i n d u c t i o n h y p o t h e s i s )
Therefore, ~ is in T~, i.e. T M is a group.
Conversely, ie t T~. be a group. Observe t h a t every ~ in IvI is also in T~ s ince
Mi,i = (). Thus, T~ con ta ins alI pa i r p roduc t s ~ ' of n o n e m p t y en t r i e s in M. "
Let G be the group defined by the r e p r e s e n t a t i o n ma t r ix M. We show next , t h a t
row i of M s tores a comple te r ight t r an sve r sa l for G (i) in G 0-1).
Let M be a r e p r e s e n t a t i o n m a t r i x for the group G, and let
U i = ~ 7r I ~ a n o n e m p t y en t ry in row i of M ~. Then U i is a comple te r ight t r a n sve r sa l
for G (i) in G (i-I).
Proof It suffices to show that the matrix M' obtained from M by deleting all
nonempty entries in the first row, except for MI, I, defines the subgroup G (I) = G I.
Then the lemma follows from Theorem 3 and the definition of a representation matrix.
37
Let T' be the se t of p e r m u t a t i o n s defined by M'. It is c lear t h a t all pa i r p roduc t s
formed f rom n o n e m p t y RI' en t r i es are again in T', so t h a t T' is a subgroup of G. Fur th -
e rmore , if 7r E T', t h e n 1 n = 1, thus T' < G 1.
Now let ~ E G 1. Since G l < G , we may write #=~n3bn_ 1 . ' . ~ 1 , where 3~ i i s f rom
row i of M. Since 1 n = 1, c lear ly ~I = Ml,1, bu t t h e n also # c T', hence T'=G1. N
Let us out l ine how to cons t ruc t , f rom a gene ra t ing set K, a r e p r e s e n t a t i o n ma t r ix
M for the group G = <K>. By the preceding lemma, this is equiva lent to cons t ruc t ing
comple te r ight t r ansve r sa l s U i for G (i) in G (i-1). Because of Proposi t ion 1 and the
r e m a r k s following it, the c o n s t r u c t i o n of M is the essen t ia l s tep in solving P rob lem 7.
The a lgor i thm init ial izes the n x n ma t r ix M by se t t ing Mi~ to 0 , the iden t i ty per -
muta t ion , and se t t ing Mij to empty , 1 -< i ¢ j -< n. It t h e n a t t e m p t s to r e p r e s e n t each
p e r m u t a t i o n # c K as p r o d u c t ~/n ' " ' ~1 with ~i f rom the i th row of M. If this is impos-
sible, we know tha t we have no t yet found all of the en t r i e s of M, and so we make a
new en t ry in M using 7r. If # can be expressed as such a product , t hen # is a r edun-
dan t g e n e r a t o r in K. In par t icu la r , if 7r is such tha t 1 n = 1 . . . . . (i--l) n = i - I , and i n = j,
t h e n we should assign # to Mi,j, provided Mi, j is empty . IfMi, j = '~ ~ e m p t y , t h e n we
form # ' = #~ - l , and r e p e a t this p rocedure . Note t h a t this "s i f t ing" process is
essent ia l ly the c o m p u t a t i o n of Algori thm 1, excep t t ha t we make a new e n t r y when
finding tha t # is no t in T~, the se t of p e r m u t a t i o n s p r e se n t l y r e p r e s e n t e d by M. This is
appropr ia te , s ince # c K, a subse t of G = <E>.
After so process ing all p e r m u t a t i o n s in K, the resu l t ing m a t r i x need not, in gen-
eral, r e p r e s e n t a group. It is here t h a t we apply Theorem 8: We now form all pa i r pro-
ducts tb~' of n o n e m p t y en t r ies of M and also sift them, making new en t r i es when
needed. At the end, M will r e p r e s e n t a group, which we l a te r show to be <K>. Note
t ha t the sifting of pair p roduc t s m u s t t e r m i n a t e since the re are a t mos t O(n 2)
nonempty en t r i es in M.
We now give the precise algorithm for constructing M. Algorithm 2 below will be
used to sift permutations, possibly making new entries, and Algorithm 3 is the driving
program.
38
~ c o m ~ u 2 (sit't)
I n p u t Par t ia l ly comple ted r e p r e s e n t a t i o n m a t r i x M, and p e r m u t a t i o n ~ which is
to be r e p r e s e n t e d .
OutpuL True if ~ is in T~i, false otherwise. As a side-effect, if 71 is not in TM, then M
is changed such t h a t ~ becomes r e p r e s e n t a b l e by replacing an e~p~y
en t ry with a p e r m u t a t i o n . F u r t h e r m o r e , the coordina tes i and j oi this
new e n t r y are r e t u r n e d .
Comment Note that an entry Mid, j < i, cannot be referenced.
Method
1. begin
~. i := O;
3. ismember := true;
4. while i < n a n d i s m e m b e r do begin
5. i : : i+ i ;
6. j := i~;
7. if Mi, i # ~7~pty
8. t h e n 7r := "s'(Mid)-I
9, else beg in
i0. i s m e m b e r := false;
i i . Mi, j : = 71";
12. end;
!3. end;
i4, re f iu rn( i smember) ;
iS. end.
39
ALGORITHM 3 ( C o n s t r u c t i o n of a R e p r e s e n t a t i o n Ma t r i x f r o m G e n e r a t o r s )
I n p u t
O u t p u t
C o m m e n t
Method
1.
Se t K of pe rmuLa t ions in S n.
R e p r e s e n t a t i o n m a t r i x M for C = <K>.
M is an nxn m a t r i x for s tor ing p e r m u t a t i o n s . A queue Q is u sed for i n t e r -
m e d i a t e s tor in~ of pa i r p r o d u c t s of en t r i e s in M. Algor i thm 2 is used as
subrou t ine .
b e g i n
c o m m e n t Ini t ia l ize M;
2. fo r i := 1 Lo n do beg in
3. -~i,~ := O;
c o m m e n t Note t h a t Algor i thms i and 2 never r e f e r e n c e Mij if j < i;
4. for j := i + i t o n do
5. Mi, j := empty;
6. end;
c o m m e n t C o n s t r u c t M;
7. Q :=K;
8. whi le Q no t e m p t y do b e g i n
9. r e m o v e ~ f rom Q;
10. cal l Algor i thm 2 with ~;
i i . i f Algor i thm 2 r e t u r n e d fa l se t h e n
12. Append to Q all p e r m u t a t i o n s ~ r ' and ~r'~/, where 7r' is the new e n t r y Mid
m a d e for ~ by Algor i thm 2 and ~ is any n o n e m p t y e n t r y in M, e x c e p t t he
d iagonal en t r i e s Mk,k;
i 3. end;
i4. end.
40
PROFOSITIO[~ 2
Algori thms 2 and 3 c o n s t r u c t a r e p r e s e n t a t i o n m a t r i x which defines a group, and
requi re a t m o s t a to ta l of O(IKt-n~+n 8) steps.
Proof By Theorem 8, the ma t r ix M c o n s t r u c t e d by Algori thm 3 defines a group
By the proof of Propos i t ion i, Algor i thm 2 requi res at m o s t O(n 2) s teps for each
p e r m u t a t i o n w sifted. The n u m b e r of p e r m u t a t i o n s sifted is clearly ]Kf +p, where p is
the n u m b e r of pair p roduc t s ~ gene ra t ed . Now observe t h a t a t mos t 0 (n a) new pair
p roduc t s are g e n e r a t e d each Lime a new en t ry in M becomes nonempty , and this can
h a p p e n at m o s t O(n a) t imes , Therefore, p is O(n4), in the worst case. •
TtIEORI~I 9 (Furst. Hopcroft, Luks)
Let K be a subse t of S n, We can c o n s t r u c t a r e p r e s e n t a t i o n ma t r ix M for G = <K>, the
group g e n e r a t e d by K, in a t mos t O( IKl 'n~+n °) s teps. F u r t h e r m o r e , using M, in an
addi t ional O(n 2) s teps we can. t e s t whe ther a p e r m u t a t i o n ~ c S n is in C and we can
d e t e r m i n e the order of G, steps.
Proof Let M, the ma t r ix c o n s t r u c t e d f rom the set K by Algor i thm 3, define the
group G. Since every ~ < K has b e e n sif ted and is the re fore r e p r e s e n t a b l e by M, <K>
is a subgroup of C. F u r t h e r m o r e , s ince every e n t r y ~P in Iff ar ises as a p roduc t of ele-
m e n t s in K and the i r inverses , G musL be a subgroup of <K>. Therefore, G = <K>.
The t ime bound for c o n s t r u c t i n g M now follows f rom Propos i t ion 2.
By Lemma 8 and Propos i t ion 2, Algori thm 1 (using the m a t r i x M) is an O(n ~)
m e m b e r s h i p t e s t for G. By the d iscuss ion following Propos i t ion 2, the o rder tGI of G is
the p r o d u c t of the n u m b e r s of n o n e m p t y en t r i e s in each row of M, and there fore can
be d e t e r m i n e d in O(n 2) s teps, u
Note~ tha t we have solved P rob l em 7 in polynomial t ime. However, the r e p r e se n -
t a t ion der ived for <K> does not imply t h a t each e l e m e n t in <K> can be expressed as
a s h o r t p roduc t of the e l e m e n t s in K, It is no t known in which s i tua t ions the e l emen t s
in <K> possess a po lynomia l l eng th r e p r e s e n t a t i o n as p roduc t s of the e l emen t s of K.
We recal l (el. Lemma 3) t h a t each e l e m e n t in <K> can be r e p r e s e n t e d unique ly as a
p r o d u c t ~ n ~ n - l ' ' " ~1, where @i is f rom row i of the ma t r ix M (or, equivalently,
q/i c Ui). This has two consequences :
41
(1) The g e n e r a t i n g se t K ' = u U i has the spec ia l p r o p e r t y t h a t eve ry e l e m e n t in
<K> = <K'> can be r e p r e s e n t e d ~zn~ue ly as a short p r o d u c t of the g e n e r a t o r s in
K'.
(~) Since e a c h e n t r y q/ in M is c o n s t r u c t e d in po lynomia l t ime f rom e l e m e n t s in K
and f rom prev ious ly c o n s t r u c t e d en t r i e s in M, t h e r e is a s t r a igh t - l i ne p r o g r a m of
po lynomia l l eng th compu t ing e a c h of the ~ / f r o m g e n e r a t o r s in K. Therefore , for
every g roup e l e m e n t in <K>, t h e r e is also a s t r a igh t - l i ne p r o g r a m of po lynomia l
l eng th compu t ing i t f rom the g e n e r a t o r s in K. Thus, while t h e r e m a y be ele-
m e n t s ~ in <K> such t h a t the s h o r t e s t p r o d u c t of e l e m e n t s in K equal to ~ is of
exponen t i a l length, t h e r e is always a quA, tic way for eva lua t ing t h a t p r o d u c t .
The c o m p l e x i t y of d e t e r m i n i n g m i n i m a l l eng th gene ra t i ng sequences to r e p r e s e n t
group elements has been i nves t i ga t ed and we summarize what is known about this
problem in Section 5.
3.2. A Worked Example
Because of the i m p o r t a n c e of the t echn ique of A lgo r i t hm 3, we give
~ d P ~ 3
Let K = ~(1,2,3), (1,2)(3,4)1. We show the m a j o r s t ages of Algor i thms 2 and 3 con-
s~ruet ing a r e p r e s e n t a t i o n m a t r i x for the g roup <K> g e n e r a t e d by K.
Ini t ial ly, the queue Q is <(1,2,3); (1,2)(3,4)>, and M is
0
- 0 - -
0 -
0
where - indicates ~r~p~y.
Sifting (1,2,3) causes the entry Mi, a = (1,2,3), since I 0'2'3) = 2. Algorithm 3 now
adds the pair product (1,2,3)(1,2,3) = (1,3,2) to Q, which then becomes <(1,2)(3,4);
(1,3,2)>. M is presently
0 ( 1 , a 3 ] - -
- 0 - - _ _ ( ] -
- - - 0
42
Sifting (t,2)(3,4) next, we first form (1,2)(3,4)(1,2,3) -I = (2,3,4), since I (I's)(3'4) = 2
and MI, 2 is not empty. (2,3,4) is then assigned as Mz,3, since i(z,3,4) = i and ~(z,3,4) = 3.
Furthermore, the products (1,2,3)(2,3,4) = (1,3)(2,4), (2,3,4).(1,2,3) = (1,2)(3,4), and
(2,3,4)(2,3,4) = (2,4,3) are f o r m e d and added to Q. Q is now <(f,3,2); (1,3)(2,4);
(1,2)(3,4); (2,4,3)>, and M is
0 ( 1 , 2 , ~ ) - -
- 0 ( 2 . ~ , 4 ) -
- - 0 -
. . . . 0
At this point, we have processed all generators in K. Presently, M does not define
a group, and Q is not empty. Algorithm 3 continues sifting elements in the queue.
Next, (1,3,2) is entered as MI, 3, and the new products (1,2,3)(1,3,2) = 0,
(1,3,2)(1,2,3) = O, (1,3,2)(1,3,2) = (1,2,3), (2,~,4)(1,3,2) = (1,3,4), and
(1,3,2)(2,3,4) = (1,4,2) a re f o rmed and added to Q, which is now <(1,B)(2,4); (I,2)(B,4);
(2,4,~); O; O; (1,2,3); (1,3,4); (1,4,2)>. M is presently
0 ( 1 , 2 , 3 ) ( 1 , 3 , 2 ) -
- 0 ( 2 , 3 , 4 ) -
- - 0 -
- - - 0
Sifting (1,3)(2,4) causes the new entry Mz, 4 = (2,4,3) and new products to be
added to Q, which now is <(1,2)(3,4); (2,4,3); 0; 0; (1,2,3); (1,3,4); (1,4,2); (1,4,3);
(1,2,4); (1,2)(3,4); (1,3)(2,4); 0; 0; (2,3,4)>. M is p r e s e n t l y
0 ( 1 , 2 , a ) ( 1 , 3 , 2 ) -
- 0 ( 2 , a , 4 ) ( z , 4 , a )
- - 0 -
- - - 0
Sifting (1,2)(3,4) does not cause a new ent ry , s ince (1,2)(3,4)(1,2,3)-1(2,3,4) - i = ().
No new p r o d u c t s are f o r m e d or added to Q. Likewise, sifting (2,3,4), 0, (I,2,3), and
(1,3,4) causes no new" en t r i e s in M or new p r o d u c t s in Q.
Sifting (1,4,2) causes the entry MI,4 = (1,4,2). M now becemes
0 ( i , 2 , 3 ) ( 1 , 3 , 2 ) ( 1 , 4 , 2 )
- 0 ( S , S , 4 ) ( 2 , 4 , 3 )
- - 0 -
- - - 0
43
New products are formed and added to Q. Thereafter, it is found that each remaining
queue entry can be represented by M. Ivl does not obtain any new entries and Q is
emptied. Now M represents a group.
Observe tha t the order of <K> is 4.3"1"1 = 12, i.e., <K> = A4, the alternaLing group
of degree 4. (It is accidental that each entry in the matrix M is a cycle of length 3.)
3.3. I m p r o v e m e n t s to Algor i thm 3
Algori thm 3, as given, has a n u m b e r of shor tcomings , both in t ime and in space
r equ i r emen t s . We therefore briefly discuss the t ime r e q u i r e m e n t s and in t roduce
some addi t ional ideas which can be incorpora ted into Algori thm 3 to speed it up for
m a n y genera t ing sets K. In par t icu lar , we d e s c r i b e the original vers ion of the
a lgor i thm and give evidence tha t the original vers ion need no t requi re more t han
O(n 5) steps, a l though we canno t provide an O(n 5) a lgori thm;
We begin with a few c o m m e n t s on the i m p l e m e n t a t i o n of Algori thm 3. It is of ten
the case t ha t the r e p r e s e n t a t i o n mat r ix ~I has a n u m b e r of rows conta in ing Mi,i as the
only n o n e m p t y entry . We call such a row t~v ia l . For ins tance , in the ma t r ix M of
Example 3 the th i rd row is trivial. Assume tha t M, upon t e r m i n a t i o n of Algori thm 3,
has k nont r iv ia l rows. Then we have sifted no more t h a n n~-k 2 pai r products . F u r t h e r -
more, it is easy to see t ha t Algori thm 2 requi res only 0(n.k) steps for each p e r m u t a -
t ion sifted. Thus, by exercis ing care in the i m p l e m e n t a t i o n of Line 12 in Algori thm 3,
we can c o n s t r u c t M in O(IKI ' n ' k + n a ' k 3) steps. This is of p rac t ica l use, s ince for m a n y
groups <K> the ma t r ix M has only a few nont r iv ia l rows. For ins tance , any r e p r e se n -
ta t ion ma t r ix of the d ihedra l group D n (cf. Sect ion 1) has only two nont r iv ia l rows.
Note, however, tha t this modif icat ion does no t improve the worst case pe r fo rmance of
Algori thm 3.
We nex t observe t h a t the pair p roduc t ~ ' need not be sifted if ~/ is an e n t r y in a
row of M belo~u the row of ~', s ince Mi, i = 0. This cuts the n u m b e r of sifted pair pro-
ducts roughly in half, and is also of p rac t ica l significance.
Despite these finer points in implementing Algori thm 3, the major problem is still
that the algorithm sifts far too many pair products. We now sketch how this number
can be further reduced for many groups, and sketch the original form of the algo-
rithm. To do so, we need to introduce new concepts.
44
DEFINITION ! 9
Let G < S n be a p e r n ' l u t a t i o n g roup of d e g r e e n. A s e q u e n c e B = [Jl, Ja . . . . . Jk] of dis-
t i n c t n u m b e r s i n ~ t . . . . . n t is a base for G if G[B ] is t h e t r iv i a l g roup .
I t follows, t h a t spec i fy ing the i m a g e of B u n i q u e l y d e t e r m i n e s a n e l e m e n t in G.
N e i t h e r ]3 n o r i ts s ize a re , i n gene ra l , u n i q u e . Fo r t he s y m m e t r i c g r o u p S n a n y s u b s e t
of size n - l , w h e n c o n s i d e r e d as a s e q u e n c e , f o r m s a base , a n d no s h o r t e r s e q u e n c e
will do. Bu t t h e r e a r e also g r o u p s wi th b a s e s far s h o r t e r t h a n n. As a l r e a d y m e n -
t i oned , t he d i h e d r a l g roup Dn of o r d e r 2n wh ich is, as we reca l l , g e n e r a t e d by
(~2 n i 11 2 3 .. n-l~)hasthebaseB:[l,2]. 3 )and '1 n n - 1
Reca l l A l g o r i t h m 3. I t d e t e r m i n e s <K>, t h e g roup g e n e r a t e d b y K, by po in twise
s t ab i l i z ing t he s e q u e n c e 1, 2, 3 . . . . . n. Of cou r se , we cou ld s t ab i l i ze a c c o r d i n g to a
d i f f e r e n t s e q u e n c e , say 1 ~, 2 ~ . . . . . n =, w h e r e ~ is s o m e fixed p e r m u t a t i o n in S n. Now if
<K> has a b a s e B = [Jl, Jz . . . . . Jk], a n d if we c o n s t r u c t a r e p r e s e n t a t i o n m a t r i x M for
<K> b y s t ab i l i z i ng i n t h e s e q u e n c e b e g i n n i n g Jl, Jz . . . . . Jk, t h e n e v e r y row l o c a t e d be low
row k in M m u s t be t r iv ia l , h e n c e does n o t have to be p h y s i c a l l y p r e s e n t . The re fo re , i t
is a n a d v a n t a g e to know, a pr ior i , a s m a l l b a s e for <K>.
D~oN 20
Let G < S n be a p e r m u t a t i o n g roup of d e g r e e n wi th a b a s e B = [Jl . . . . . Jk]. The i th
b a s i c orbi2 A i of G (wi th r e s p e c t to B) is t h e o r b i t of Ji in G[Yi_l], whe re
Yi-, = f J l . . . . . j~-,L
Equ iva l en t ly , if M is a r e p r e s e n t a t i o n m a t r i x for G o b t a i n e d b y s t ab i l i z ing in t h e
s e q u e n c e b e g i n n i n g Jl, Jz . . . . . Jk, t h e n A i c o m p r i s e s the se t of row c o o r d i n a t e s of t he
n o n e m p t y e n t r i e s in row i of M, i -< k. We will i n c o r p o r a t e o r b i t c a l c u l a t i o n s i n to Algo-
r i t h m 3 in order to achieve that fewer permutations will be ultimately sifted.
The main idea in computing the orbit of some point i in a permutation group with
generating set K, is to compute the set of images j of i under each generator and to
repeat this for each new image discovered. Since there are at most n possible images
for i, this closure operation must terminate.
If only the orbit of i in <K> is to be found, then we may compute it using a set N,
i n i t i a l ly fi], c o n t a i n i n g all o r b i t p o i n t s d i s c o v e r e d so far , and. a q u e u e N', i n i t i a l ly [i],
containing those orbit points whose images under generators in K have not yet been
d e t e r m i n e d . Now a s t r a i g h t f o r w a r d c l o s u r e a l g o r i t h m , t e r m i n a t i n g w h e n N' is e m p t y ,
will find the orbit of i in <K> in O(n-IKI) steps, assuming that the generators in K are
45
s tored as n-vec tors (this is neces sa ry so as to d e t e r m i n e the image of any poin t in
cons t an t t ime). The a lgor i thm is easily modified so t ha t all <K>-orbits are compu ted
in the same t ime bound.
To improve Algori thm 3, however, we shall need more informat ion: For each point
j in the orbi t of i we would like to know a word ~ in the gene ra to r s in K such tha t
i ~ = j. Since each o rb i t po in t is discovered f rom a previous orbi t po in t as image u n d e r
some w c K, these words can be succ inc t ly r e p r e s e n t e d by an edge label led t ree T.
The ver t ices of T are the orbi t points , with i as the roo t of the t ree . If jn = k, where j is
a known orbi t po in t and k is a newly discovered one, t h e n there is an edge I rom j to k
labelled 7r. Hence, if k is any poin t in the orbi t of i, t hen the edge labels along the
pa th f rom i to k spell out a word ~ in the gene ra to r s such tha t i ~ = k. The word
obta ined in this way is called a Schreier vector. Note tha t the t ree and its edge labels
depend on the sequence in which orbi t points a n d gene ra to r s are processed.
Algori thm 4 below cons t ruc t s the orbi t of i and the spanning t ree spelling out the
Schre ier vec tors for all orb i t points . To simplify the data s t r u c t u r e s and the de t e rmi -
na t ion of the Schre ie r vec tor for a given orbi t point , the t ree edges are r e p r e s e n t e d
as po in te rs f rom son to father.
PROPOSe[ON 3
Algorithm 4 is co r rec t and computes i <K> and the assoc ia ted Schre ier vec tors in
O(n-IKI ) steps.
Proof The co r rec tnes s of the a lgor i thm is obvious. For the t iming, we note t ha t
at mos t n points are added to N'. Hence the i n n e r m o s t loop (Lines 10 - 16) is exe-
cuted at mos t n. ]KI t imes. Now the t ime bound readi ly follows. •
46
ALCCRrrI~ 4 ( P o i n t Orbit ~n <K> and Schrcier Vectors)
I n p u t
O u t p u t
C o m m e n t .
A s e t K c S n of g e n e r a t o r s , a n d an inLeger i ~ ~ 1 . . . . . n l .
An i n v e r t e d t r e e T whose l eaves a r e t he p o i n t s of t h e o r b i t of i in <K> and
whose e d g e s a r e l abe l l ed wi th g e n e r a t o r s .
The g e n e r a t o r s in K a re s t o r e d in t h e a r r a y P [1 . . . IKI , l . . .n] . H e r e
Pig , s] = r iff t h e gth g e n e r a t o r in K m a p s s to r. T[1...n] is a v e c t o r of t r i -
p les [atr, ten, pt] storing the orbit tree. T[r].atr is true iff r is in the orbit
of i. T[i].pt is zero indicating that i is the root of the orbit tree. For the
orbit point r # i, T[r].pt is the orbit point s such that the image of s under
t h e ~th a e n e r a t o r in K is r, w h e r e T[ r ] .gen = g.
Method
i . begin
2. N' := [i];
3. f o r j : = t t o n d o
4. T[ j ] . a t r : : f a l se ;
5. T[ i ] . a t r := t r u e ;
6. T[ i ] .p t := O;
7. while N' # ¢ do begin
8. r e m o v e s f r o m N';
9, f o r g := I t o iK[ do begin
c o m m e n t Compute the image r of s under the gth generator;
t0. r := P ig , s ] ;
i 1. ff n o t T[r].atr t h e n b e g i n
12. add r to N';
i3. T [ r ] . a t r := t r u e ;
i4. T[r].gen := g;
i5. T [ r ] .p t := s;
16. end ;
17. end;
18. end;
19. ou tpu t (T ) ;
20. end .
47
D~e'mlTION 21
Let G < S n be a p e r m u t a t i o n group of degree n, B = [Jl, J~ . . . . . Jk] a base for G. A gen-
era t ing se t K for G is s~ro~g (relat ive to the base B), if K (i) = K (~ G[{j1 ..... Ji]] g e n e r a t e s
So, if we delete f rom the s t rong gene ra t ing se t K all those gene ra to r s which do
not fix pointwise the se t Yi = tJl . . . . . Ji], t h e n the r ema in ing gene ra to r s gene ra t e the
group G (i) = GD~i].
Define Y~ = IJi . . . . . Ji~, le t G (i) = G[yi] and G (°) = G. Let U i be a comple te r ight
k t r ansve r sa l for G (i) in G 0-1), 1 - i_< k. By Lemma 8, the se t K = UUi is a s t rong gen-
i=l
era t ing set for G. We will prove la ter tha t every p e r m u t a t i o n group has a s ignif icantly
smal ler s t rong gene ra t ing set (see Theorem 10 below).
EXAMPLE 4
Lemma 3 gives a s t rong genera t ing se t of size ~ - { n - t ) for the s y m m e t r i c group S n.
However, it is not difficult to find another strong generating set with respect to
[1 . . . . . n - l ] for S n, name ly
l(1,2,...,n), (2,3 ..... n) . . . . . ( n - 2 , n - l , n ) , ( n - l , n ) t
which is of size n - 1 . []
We now descr ibe how to reduce , in m a n y eases, the n u m b e r of pair p roduc t s
sifted by Algori thm 3. A key r e su l t s ta tes tha t it suffices to sift only p roduc t s of the
form ~Tr, where ¢ is an en t ry in M and ~ is a s t rong genera tor . Thus, if we can find a
small s t rong genera t ing set, we sift; a subs tan t ia l ly smal ler n u m b e r of pair products .
We find a smal l s t rong gene ra t ing se t as follows: Let S be a list of s t rong genera -
tors to be accumul a t ed for the group <K>. (Initially, S could be empty) . Every t ime
AlgoriLhm 2 makes the new e n t r y 7r in row i of M, add 7r to S. Next, approx imate ~i
using the known gene ra to r s in S which pointwise fix l l ..... i - 1 l, using Algori thm 4. If
new orbit points are discovered, the corresponding entries in M can be immediately
assigned by en te r ing a sui table p roduc t of genera to r s . Note t h a t these p roduc t s are
given by the Schre ier vectors d e t e r m i n e d in Algori thm 4. Such an e n t r y is not added
to S.
We observe t ha t Algori thm 4 can be run inc rementa l ly , e l iminat ing the recon-
s t ruc t ion of the previous approx ima t ion to A i. Now, ins t ead of forming pair products ,
48
Algori thm 3 adds p roduc t s of the form ~PTr to Q, where 7r is f rom S and -# f rom M.
Finally, it can be shown here that. the ~P need no t be chosen f rom every nont r iv ia i row
in M, a further savings in the number of permutations sifted. The effect of this
modification is that a fairly small strong generating set is accumulated, and that M
"closes up" m u c h faster.
We now give, without correctness proof, the resulting algorithm. For simplicity,
we assume a fixed base B = [I ..... n] and store coset representatives in a representa-
tion matrix. "While this -wastes space, it makes the algorithm more transparent. In
practice, one would determine a base B for the group incrementally. Here one knows
that the present base needs to be extended, if a sifted permutation ~ has been multi-
plied by the inverses of [B I known eoset representatives but is not the identity. In this
case, a point not fixed by the sifted ~ is appended to B.
ALGORITHM 5 (Strong G e n e r a t i n g Sct for <K> Relat ive to [1 .... ,n])
Input A set K c Sn of p e r m u t a t i o n s ,
Output A strong genera t ing se t S for G = <K> rela t ive to the base [1 ..... n].
C o m m e n t K is ini t ia l ly a s s u m e d to be a s t rong gene ra t ing se t already. New genera -
tors are la ter added as needed .
Method
1. beg in
2. ini t ia l ize M so t ha t all en t r i e s are empty , except for the diagonal en t r ies , which
a r e 0;
3. S : : K;
4. for i := i to n do beg in
5, le t S (0 = t ~ c S t u fixes pointwise 1 . . . . . i - 1 j;
6. using Algor i thm 4, compu te the orbi t of i in <~(i)>;
7. enter in row i of M all entries corresponding to the discovered orbit points,
where each coset representative is determined from the Schreier vectors;
8. end;
comment We have initialized M and S. Now we have to sift pair products to ver-
ify that S is a strong generating set. In the course of this, we may have to add
new strong generators to S;
49
9. Q := ¢;
iO. for i := i to n do
i i . f or e a c h 7r E S (i) do
i2. for each ~ in row i of M do
13. add ~/w to Q;
i4. while Q is no t emp ty do begin
i5. remove ~ f rom Q;
i6. if sifting 7r causes the new e n t r y ~ in row i of M £hen beg in
i7. add ~ to S;
i8. ~o r j := i to i do begin
i9. r e c o m p u t e the orbi t of j i n S ~) and upda te M accordingly;,
20. for each e n t r y ~/ in row j of M do
21. add ~ to Q;
22. end;
23. end;
24. e n ~
25. output (S);
26. e n d .
The analysis of this a lgor i thm depends on two factors abou t which l i t t le is known:
The size of a base found for the group G = <K>, and the size of a s t rong gene ra t ing se t
relativ~ to this base. It is no t difficult to see t ha t the runn ing t ime of the a lgor i thm is
bounded by 0(ISI-n2"k 2) steps, where k is the size of the base (equivalently, the
n u m b e r of n o n e m p t y rows in M). Hence, if ISI and k are small, the a lgor i thm is fairly
fast.
There are no g u a r a n t e e d s t ra teg ies for opt imizing these factors. We can prove,
however, t ha t ~very p e r m u t a t i o n group of degree n has a small s t rong genera t ing set
relat ive to [ i . . . . . n - i ] :
T~IEOI~I iO (Sims)
If G < S n is a p e r m u t a t i o n group of degree n, t h e n G has a s t rong gene ra t ing se t re la-
tive to B = [i ..... n-l] of size at most n-l.
Proof For 2-~ j-< n, let i be the largest integer (if any) less than j such that
there exists an element w e G which pointwise fixes 1 ..... i-l and maps i to j. Pick
50
such an element =j for each j for which i is defined, and let S be the set of these per-
mutations. Note that S consists of at most n-i elements of G. We claim that S is a
strong generating set for G relative to B,
Let A k be the k th basic orbit of G with respect to B, and let S (k) be the set of those
7r in S such that 7r fixes 1 ..... k-l. Letj c A k. We must show that there is aproduct
of elements in S (k) such that k ~ = j. Then it follows that S (k) generates the point sta-
bilizer G[I I ..... k_ii], i .e, , that S is a strong generating set relative to B.
We show the existence of @ by induration on j. The base case is j = k and is trivial.
Assume, therefore, that ~ exists for all r ~ A k where k-< r < j, and consider j ~ ~k-
Since j # k, there exists ~7j mapping i to j and flxing 1 ..... i-l. By maximality, k -~ i,
hence ~j E S (k). If i = k we are now done. Otherwise, since ~i E S (k), it follows that
i C Ak~ By induction hypothesis, there is a product ~' of elements in S C~) such that
k w' = i, hence ~ = W'~j is the desired product in S (k). "
Because of Theorem I0, there is reason to believe that Algorithm 5 can be
improved to perform in 0(n ~) steps (assuming the initial generating set K is not too
large), There is an 0(nS.logz(log2(n))) method which is essenLially a variant of Algo-
rithm 3. The faster running time is accomplished by a careful ordering of the pair
products which are processed (see also Section 5).
4. Accessible Subgroups
We will n o w g e n e r a l i z e A l g o r i t h m 3. More p r e c i s e l y , we p l a n to i s o l a t e a few e s s e n -
t i a l mechanisms of the algorithm and apply them in a slightly different context.
Viewed in the abstract, Algorithm 3 determines a tower of subgroups of a group G
with known generating set K:
I=G (m)<G (m-l)< -'' <G O)<G (°) =G
If we ignore for the moment that the groups G O) are pointwise stabilizers in G, then
Algorithm ~ is principally engaged in constructing a table M whose i th row contains a
complete (right) transversal U i for G (i+I) in G (i). Furthermore, we observe that M also
determines each of the groups G O) in the following sense:
51
I,EIWI~IA 8
Let O be a group with the subgroup tower
I=G (m)<G (m-l)< -'- <G O)<G (°)=G
and let U i be a complete right transversal for G (0 in G 0-I), i -< i-~ m. Then the set
Ill
Kj = U Ui is a generating set for G (j) with the property that every ~r e C (j) can be i=j+l
e x p r e s s e d as a u n i q u e p r o d u c t ~ ] m ~ / m _ l ' • • " ~ j + l , w h e r e 4/i e U i.
L e m m a 8 is an obv ious genera l i za f i ion of L e m m a 3. The g e n e r a l i z a t i o n of Algo-
r i t h m 3 we h a v e in m i n d m a y be m o t i v a t e d by c o n s i d e r i n g the fol lowing p r o b l e m :
PROBLEM 8
Given a group G = <K> of degree n by a generating set K, and given that G has a sub-
group tower
I = G (m) < G (m- l ) < "- • < G O) < G ( ° ) = G
s u c h t h a t t h e r e is an e f f i c i en t m e m b e r s h i p t e s t for e a c h g roup g0), find g e n e r a t i n g
se t s fo r t h e g r o u p s g (i).
In C h a p t e r III, we will s ee t h a t P r o b l e m 8 a r i s e s as an a u t o m o r p h i s m p r o b l e m for
c e r t a i n g r aphs : We a r e g iven a v e r t e x l abe l l ed g r a p h X and we wish to d e t e r m i n e t h e
a u t o m o r p h i s m s of X wh ich p r e s e r v e t h e v e r t e x labe ls . Rough ly speak ing , we con-
s t r u c t f r o m X a s e q u e n c e of g r a p h s X m . . . . . X 0 s u c h t h a t X = X r for s o m e r b e t w e e n 0
and m. Moreover, G (i+l) = Aut(Xi+l) is a subgroup of G (i) = Aut(Xi), 0 ~ i < m, G (m) is
the trivial group, and the structure of the graph X 0 is so simple that we can find gen-
erators for Aut(Xo) by inspection. Note that membership in the groups G 0) can be
tested easily by considering the graph Xi, but this does not, in general, reveal a gen-
erating set for C (i). So the problem of determining generators for Aut(Xr) is an
instance of Problem 8.
We have also another, more abstract motivation for the planned generalization of
Algorithm 3: The sifting done in Algorithms i and 2 and the closure under pair pro-
duct formation computed in Algorithm 3 appear to be specific instances of a more
general technique. Many group-theoretic algorithms determine subgroup towers in
the course of solving a particular group-theoretic problem. When this is the ease,
52
such algorithms often do some general form of sifting and compute closure under
pair products.
We now generalize Theorem 8 to expose the essential mechanism of "closing up"
used by Algorithm 3.
TIIEOREM 11 (Fursk Hopcroft, Luks)
Let G be a group with subgroup tower
I = G (m) < G (m-l) < '' " < G (I) < G (0) = O
and let U i, ~ <- i-<- m, be a set of elements of G (i) containing the group identity and
such that, for distinct !~, ~' ~ Ui, !~ and ~' are in different eosets of G (i+I). Then the
sets U i, 1 -< i-< m, are complete right transversals for G (i) in G (i-O if, and only if, for
any two elements 'p c Up and I~' ~ Uq, their produet !k16' can be expressed as a product
~ - / r n ~ r n - 1 " ' ' ~ / 1 ~ where ',@i ~ Ui.
I t is c l e a r t h a t wi th on ly m i n o r c h a n g e s t he proof of T h e o r e m 8 s e r v e s to prove
th i s generalization.
We now outline an algorithm for Problem 8 which generalizes Algorithm 3. We
assume that we are given a generating set for the group G and a subgroup tower
I = G (m) < G (m-l) < ' • " < G (I) < G (0) = G
of G in the sense that we have a polynomial time membership test for each group G 0).
We wish to find generators for the groups G O) . As in the case of Algorithm 3, we will
construct a table M for the subgroup tower, where row i of M is to contain a complete
right transversal for G (i) in G (i-I). M is to be obtained by first sifting the generators of
G followed by closing M under pair product formation.
In order to sift a generator of G and to close up under pair product formation, we
need to decide, at each level i in the sifting process, whether the element Tr presently
sifted lies in one of the cosets of G O) whose representatives are currently known. If
the coset is already known and ~ is is representative, then sifting continues at level
i+l with rr' = 7r!~ -I, If not, then we have found a new coset representative.
Testing whether Ir is in the coset of G (i) represented by ~ requires testing whether
w?)-1 e G (i). Therefore, we need membership tests for each of the groups G 0).
Algorithm 7 below is the generalized version of Algoriihm 3. It uses Algorithm 6
53
as the genera l ized sifting p rocedure . We will analyze this genera l i za t ion subsequent ly ,
and give cond i t i ons u n d e r which Algori thm 7 runs in polynomial t ime.
ALGORITHM 6 (Genera l ized Sift)
I n p u t Par t ia l ly comple ted coset r ep re sen t a t i ve table M, and e l e m e n t 7leG.
Ou tpu t True if ~ can be expressed as p roduc t of the known coset r ep resen ta t ives ,
false if Tr causes the discovery of a new coset. In the l a t t e r case, a new
coset representative is added to M.
Comment If M is updated, Algorithm 7 will need to know the position of the new
entry, so that new pair products can be formed incrementally.
Method
1. beg in
2. i : = 0;
3. i s m e m b e r := t rue ;
4. while i < m a n d i s m e m b e r do beg in
5. i := i+ l ;
6. incoset := false;
7, for each ~ in row i of M while n o t incose t do
8. if ~p-1 c G (i) t h e n begin
9. incose t := true;
10. ~ := ~ - 1 ;
I i . end;
12. if n o t ineoset t h e n beg in
13. ismember := false;
14. add ~ to row i of M;
15. end;
16. end;
17. r e t u r n ( i s m e m b e r ) ;
18. end.
54
~GOFIT[IM 7 ( D e t e r m i n a t i o n of a Subgroup Tower)
I n p u t Generating set K for group G with the subgroup tower
i : G (m) < O (m-l) < • " • < G (I) < G (0) : G
O u t p u t Coset ~ab~e M such t h a t row i of M is a comple te r ight t r ansve r sa l for G (i) in
G(i-l)
C o m m e n t M con ta ins m rows. Algorithm. 6 is used as a subrou t ine . A queue Q is used
for i n t e r m e d i a t e l y s tor ing pair p roduc t s of en t r ies in M.
Method
[. begin
comment Initialize M;
~. fori:= i tomdo
3. set row i of M to contain the group identity as the only entry;
comment Construct M;
4, Q :=K;
5, while Q not empty do begin
8. remove n f rom Q;
7. call Algori thm 6 with ~;
8. if Algorithm 6 returns false then
9. Append to Q the set of all elements ~ in G such that ~ : I~' or ~ = ~'~,
where 7r' is the new entry added to Z by Algorithm 6 and I~ is any entry in
M, except the group identity;
t0. end;
11. end.
Cor rec tness of Algori thms 6 and 7 follows easily f rom Lemma 8 and Theorem l ! .
F u r t h e r m o r e , the genera l i m p r o v e m e n t s discussed in Sect ion ~.[3 can (and should) be
i nco rpo ra t ed when i m p l e m e n t i n g this algori thm,
Note that the availability of a membership test for the groups G (i) is an essential
part of Algorithm 6. It is therefore surprising that Algorithms I and 2 in the preced-
ing section can sift without such membership tests, The reason that the tests can be
55
d ispensed with is, of course, Theorem 3, i.e., the l - I c o r r e s p o n d e n c e of the poin ts in
the orbi t of x in G with the cosets of G x in G. This exploi ta t ion of the t h e o r e m is one of
the mos t e legant aspects of the t echn iques of Sect ion 3.
We will analyze the runn ing t ime of Algori thms 6 and 7 in t e r m s of the following
quant i t ie s:
m the height of the subgroup tower, i.e., the n u m b e r m such tha t G (m) is the
tr ivial group. Note t ha t the table M has m rows.
w the width, of the tower, i.e., a un i fo rm bound on the index of G (i) in G (i-1),
1 -< i - m. Observe tha t each row in M has at mos t w ent r ies .
t the n u m b e r of s teps requi red to compute 7Tip -1 f rom n and ~ in G.
T the n u m b e r of s teps requi red to t e s t whether ~T C G (i) knowing tha t 7r E G 0-1).
Note t ha t Algori thm 6 tes ts m e m b e r s h i p in G (i) only for e l emen t s known to be in G (i-i).
Thus, only an i n c r e m e n t a l m e m b e r s h i p t e s t in G (i) is requi red by the genera l ized sift.
PROPOSITION 4
Algori thm 6 requi res at mos t O(m,w.(t+T)) s teps to sift an e l e m e n t 7r ~ G.
Proof The while-loop (Lines 4 -- 16) is execu ted at mos t m t imes. The nes t ed
for-loop is executed up to w t imes, since e a c h k n o w n coset r ep re sen t a t i ve !k may have
to be tr ied. Comput ing ~r~ - i in Line 8 requires t steps, and is followed by the
m e m b e r s h i p t e s t in G (i) requi r ing T steps. All o ther s teps requi re c o n s t a n t t ime. m
PROPOSITION
Algori thm 7 requi res at mos t 0((IKI +m2.w~)-m.w.(t+T)) s teps to d e t e r m i n e comple te
r ight t r ansve r sa l s for every G (i) in G (i-i).
Proof Note t ha t IVI has at mos t m.w entr ies , thus at mos t I KI +m&w 2 e l emen t s of
G are sifted, m
Because of, Proposi t ion 5, we make the following defini t ion for p e r m u t a t i o n
groups.
D E ~ T [ O N 22
A p e r m u t a t i o n group H < Sym(X) of degree n is (k,c,)-cLceessible if the following holds:
(a) There is a p e r m u t a t i o n group G < Sym(X) with a known gene ra t ing set K wtlose
size is at mos t c.n k.
(b) G has a tower Of subgroups
I = G (m) < G (m-i) < • . • < G (1) < G (°)= G
56
such that H = G (r) for a known value r, i <- r < m, and m -4 c.n k.
(e) For i -< i -< m, the index of G (i) in G (i-O is uniformly bounded by c-n k,
(d) Membership in G (i) can be tested in at most c~n k steps.
We also say that H is (k,c)-trapped in the subgroup tower of G. The following theorem
is immediate from Proposition 5 and the definition of accessibility:
Let H be a ( k , c ) - a c c e s s i b l e g r o u p of d e g r e e n. T h e n we c a n f ind a g e n e r a t i n g s e t for H
and determine the order of H in O(c?,n 7k) steps.
In Chapter Ill, we will give a direct application of Theorem 12. We conclude this
section by showing that (k,c)-accessible groups permit an efficient intersection algo-
rithm. We noted in Section 2, that intersecting two permutation groups appears to be
a difficult problem in general, We now show that we may intersect two permutation
groups in time polynomial in n and c, provided they are (k,c)-aecessib]e from the
same group G. and k is fixed. For a proof of this claim, we need the following elemen-
tary lemma from Group Theory.
L~SA S
Let G be a group with subgroups A and B, and let C = A (% B, the intersection of A and
B, which is also a subgroup of G. Then the index of A in G cannot be smaller than the
index of C in B, i.e., (G:A) >- (B:C).
Proof Let g and h be two elements in B. Then gh -I c A if[ gh -~ c C. Therefore,
there are at least as many distinct (right) eosets of A in G as there are of C in B. "
THEOI~M 13 (Furst, Hopcroft, Luks)
Let H a n d K be ( k , c ) - a e c e s s i b l e f r o m t h e s a m e g r o u p G, Then t h e i r i n t e r s e c t i o n
H (~ K is ( k , 2 c ) - a c c e s s i b l e f r o m G.
Proof Le t
I = G (p) < G (p-i) < • . • < G(r)=H < ' ' ' < G (0) = G
be t h e t o w e r ( k , e ) - t r a p p i n g H, a n d
I = G ( q ) < ~ ( q - l ) < ~ . . < G ( ~ ) = K < . . . < ~ ( ° ) = G
be the tower (k,cJ-trapping K. By Lemma 9, the tower
i=G(p)p1K < . .. < G(r)c~I(=Hf~K < ... < G(o)C~K=~(s) < ~(s-1) < ... < ~(O)=G
57
makes HCIK (k,2e)-aeeessible from G. (Note that we test membership in G(J)c~K by
testing membership in G (j) and K separately,) -
For fixed k and c, this means t h a t the groups H and K can be i n t e r s e c t e d in poly-
nomia l t ime. E u r t h e r m o r e , if g e n e r a t o r s for K are known, t h e n we can drop the
hypothes i s t h a t K be (k ,c) -access ib le f r o m G:
TItEOREM 14 (Furst, Hoperoft, tuks)
Let H be (k ,c) -access ib le f rom G, K a subgroup of G with a known genera t ing set. Then
H C~ K is (k ' ,c ' ) -aceess ib le f rom K, where k' = max(k,2), and e' = c+c0 for some con-
s t an t e 0
Proof By Sec t ion 3, "K has a gene ra t ing se t of size less than n s, and m e m b e r s h i p
in K can be t e s t e d in at m o s t e0.n e steps, where e0 is cons tant . Hence the tower
I = G(P)C'~K < - - • < G(r)('~K = I-IAK < • " " < G(o),QK = K
makes HC~K (k ' ,e ' ) -aeeess ib le f rom K. -
Theo rem 14 wilI be appl ied in Sec t ion a of Chapter III in the des ign of an algo-
r i t h m for finding the setwise s tabi l izer in p-groups.
Some t imes , Algor i thm 7 may be used nonde te rmin i s t i ea l ly . Speeifieally, le t G be
a p e r m u t a t i o n group of degree n with the subgroup tower
I : g (m) < G (m-l) < .. - < G (I) < G (0) = G
of height and width O(nk). Assume we can Lest membership in each of the G (0, but
that we do not know a generating set for G. If the order of G is known, then Algorithm
7 is run nonde t e rmin i s t i e a l l y as follows:
Guess e a c h ' e n t r y in M. Verify the c o r r e c t n e s s of each entry . Verify t h a t M is
comple te . Comple teness of M is ver if ied by comput ing the p r o d u c t of the row lengths
in M. This product should equal, the order of G. The correctness of each entry is
verified by testing, for each pair q~, ~' in row i of M, whether ~,-I ¢t G (i) and whether
both i# and l)' are in G (i-I), Clearly all this can be done in nondeterministic polynomial
time. In Chapter Ill, Subsection 1.2, we give a randomized version of this algorithm.
58
5. Notes and R e f e r e n c e s
There arc many good introductory texts on Group Theory which contain in detail
most of the material in Section i, for instance, Hall [i959] and Macdonald [1968].
Theorem 3 and the m o r e spec ia l i zed m a t e r i a l on p e r m u t a t i o n g roups can be found in
the book by Wielandt [ i964], or, of cou r se , in H u p p e r t [1967].
The po lynomia l t ime equ iva lence of P r o b l e m s 1 t h r o u g h 6 is f rom Mathon [ 1979].
The complexity relationship of existence and the associated counting problems is dis-
cussed in Val iant [1979]. Booth and Colbourn [1979] con ta ins a long l is t of i somor -
p h i s m c o m p l e t e p r o b l e m s .
Frucht [1938] contains a construction of graphs with given automorphism group.
Problem 7 and its original solution are due to Sims [1971b], who also developed the
c o n c e p t s of base and s t rong g e n e r a t i n g set . A lgor i thm 3, the so lu t ion to P r o b l e m 7
given in Subsec t i on 3 . i , is due to Fur s t , Hopc ro f t and Luks [1980b]. S ims ' a l g o r i t h m
only forms and s i f ts p r o d u c t s of the fo rm '@n, where 7r is a s t rong g e n e r a t o r and @ a
t ab le en t ry . The g roup t h e o r e t i c ju s t i f i ca t ion for th is is a r e s u l t by S c h r e i e r (see, e.g.,
Hall [ i959], L e m m a 7.2.2). S ims ' a l g o r i t h m is t h e r e f o r e of ten ca l led the S c h r e i e r -
Siras Atga~;th.~. It differs f r o m Algor i thm 5 m t h a t a base for the g roup is d e t e r -
m i n e d i n c r e m e n t a l l y . Moreover, the en t r i e s in Q a re p r o c e s s e d in a specif ic o r d e r
which e m p i r i c a l l y t e n d s to min imize the size of the s t rong g e n e r a t i n g set . In Compu-
t a t i ona l Group Theory, m u c h e x p e r i e n c e with t he a lgo rRhm has been a c c u m u l a t e d ,
and m a n y v a r i a n t s of i t have b e e n t r i e d over the yea r s . In p a r t i c u l a r , t h e r e has been
a va r i an t which i n c o r p o r a t e s an a l g o r i t h m by Todd and Coxe te r [1936] for e n u m e r a t -
ing cose t s in an a b s t r a c t g roup f rom given g e n e r a t o r r e l a t ions . This t e chn ique can be
i n c o r p o r a t e d into the S c h r e i e r - S i m s Algo r i t hm as a m e a n s to f u r t h e r r e d u c e the
n u m b e r of p e r m u t a t i o n s sif ted. The r e su l t i ng a l g o r i t h m is o f ten ca l led the Schreier-
Togd-Cozeter-S~ms raetho~. See Sims [1978a] and Leon [1980]. Bu t l e r [1979] is a
good source for a c o m p a r i s o n of the m a j o r va r i an t s f rom a p r a c t i c a l p e r s p e c t i v e .
Knuth [198i] gives a v a r i a n t of A lgo r i t hm 3. He p roves an u p p e r b o u n d of
0( [Ki n ~ ÷ nSlog2(logz(n))) s t e p s which d e p e n d s on the o r d e r in which pa i r p r o d u c t s
and g e n e r a t o r s a re s i f ted.
Even and Goldre ich [1951] have i n v e s t i g a t e d the c o m p l e x i t y of d e t e r m i n i n g
m i n i m u m l eng th g e n e r a t o r s e q u e n c e s to r e p r e s e n t g roup e l e m e n t s . They prove the
following: Given a fixed g e n e r a t i n g se t K, and given an e l e m e n t 7r of <K>, d e t e r m i n i n g
59
a m in imum length g e n e r a t o r p r o d u c t for z is NP-hard (i.e., at least as difficult as the
NP-complete problems) . Also NP-hard is to co mpu te a t ight upper bound on such
sequences for all group e lements .
The not ion of (k,c)-accessibil i ty (Definition 22) is derived f rom the intuit.ire not ion
of po~y~zorr~cLL c~ccessib~;~y (Babai [1979]). Babai [1979] also contains a r andomized
version of 'Algor i thm 7 which requires the abiliLy to gene ra t e r a n d o m e lements in G
with a uni form dis t r ibut ion (see Chapter III, Sect ion 1.2). Furst, Hoperof t and Luks
[1980a] recognized the relat ionship between Babai 's Algori thm and Algori thm 3, and
gave the (determinis t ic) Algori thm 7. Theorem 13 is f rom Furst , Hoperof t and Luks
[1980b], who first used this technique in their subexponenLial i somorphism tes t for
tr ivalent graphs. Theorem 14, a t though not explicitly noted, should be a t t r ibu ted to
the same source because of the close relat ionship with the proof of Theorem 13.