Escolar Documentos
Profissional Documentos
Cultura Documentos
ALGORITHM
HIKARU KIYO
Abstract. We reconstruct the Stallings Algorithm for nding the rank of a
subgroup of a free group combinatorially, and investigate the complexity of
the algorithm on dierent subgroups of free groups.
Contents
1. Introduction 1
2. Labled Oriented Graphs 1
3. Free Groups and Labled Graphs 5
4. Complexity of the Algorithm 10
1. Introduction
Given a nitely geenrated subgroup of a free group, it is a nontrivial question
to ask what the rank of the subgroup is. The reason the inquiry is nontrivial, is
because there may be relations among the generators that are not so obvious. Hence
to nd the rank of the subgroup, we are intereted in nding the free basis of the
subgroup. However, it is often not a simple task to determine whether a redundant
generator exists. Consider the example H = a
2
b
1
, ba
1
ba, aba
1
, a
6
). Its unclear
whether H has a redundant generator simply by looking at the generators. It
happens to be true that a
2
b
1
ba
1
ba (aba
1
)
1
= a
2
, and hence this implies that
H = a
2
b
1
, ba
1
ba, aba
1
, a
6
) = a
2
b
1
, ba
1
ba, aba
1
). But again, there may
be another redundant generator among a
2
b
1
, ba
1
ba, aba
1
, which may require a
much more complicated computation to obtain.
To answer this question, John Stallings came up with an algorithm that not
only eliminates but simplies the generators of a subgroup of a freegroup. The
algorithm uses graphs, and a function on graphs, which we will later call as folding.
Stallings uses a topological aproach, using fundamental groups as the primary tool
to prove his result. In this paper we reprove the Stalling algorithm with a more
combinatorial construction. Afterwards, we will briey explore the complexity of
the algorithm, and give examples of subgroups that behave dierently with respect
to the algorithm.
2. Labled Oriented Graphs
We begin by dening labled oriented graphs, which will be our primary object
of investigation in this paper.
Date: DEADLINE AUGUST 22, 2008.
1
2 HIKARU KIYO
a
b
c
a
b
c
Figure 1. Constructing a labled oriented graph.
Denition 2.1. Let A = a
1
, , a
n
be a nite set, and let A
1
= a
1
1
, , a
1
n
.
We think of A A
1
as an alphabet, and each a
i
, a
1
i
as letters of the alphabet.
Using these letters, we can form words, which is just a nite string of letters and
their inverses.
In case we have a subword of the form aa
1
or a
1
a, we can freely reduce the
word by omitting the subword. For example, abaa
1
b can freely reduced to ab
2
.
We say that a word is freely reduced if it doesnt contain any subwords of the form
aa
1
or a
1
a for any a A.
Example 2.2. Let A = a, b, c. Then
a
5
b
2
a, c
4
ab
3
, and ab
7
cabca
are all freely reduced words formed from the alphabet A.
Now we dene graphs which we will later lable using alphabets.
Denition 2.3. A graph consists of two sets E and V and two functions f :
E E and : E V such that f is bijective, e ,= e, and e = e where e is the
image of e under f. Each e E is a directed edge of , and e is the reverse of e.
V is the set of vertices of . Finally, we dene (e) as the initial vertex of e and
(e) = (e) as the terminal vertex of e.
Given a graph , well denote its edge set by c() and its vertex set by 1().
Denition 2.4. Let be a graph. Then we can make an oriented graph
by
choosing one edge for each pair e, e.
Denition 2.5. Let A be an alphabet. Then an A-labled oriented graph,
, is an
oriented graph where each edge e E is labled by a letter in A, which we denote
by l(a), with the condition that if l(e) = a, then l(e) = a
1
.
Denition 2.6. Let
be a A-labled oriented graph. Then a path p in
is a
sequence of edges p = e
1
, e
2
, , e
k
, e
i
c(
), such that (e
i
) = (e
i+1
) for
each i. We dene the origin of p as (p) = (e
1
), and the end point of p as
A COMBINATORIAL APPROACH TO STALLINGS ALGORITHM 3
(p) = (e
k
). The length of p is k, and for each path there is a word that lables
the path, l(p) = l(e
1
)l(e
2
) l(e
k
). Hence l(p) is a word in the alphabet A. If
(p) = (p) = v, then we say that p is a loop based at v .
A path from v
1
to v
2
is exactly what one thinks it is, its a sequence of connected
edges that takes you from v
1
to v
2
. Note that you can have many distinct paths
from v
1
to v
2
. To read the lable of the path, just read the lable of the sequence
of edges, except when you go through an edge in the opposite direction than its
orientation, you read the inverse of the lable.
Note that in our denition of a path, we can have a path that contains a subpath
of the form ee or ee for any edge e. We will dene paths that have no subpaths
of such form to be path reduced (sometimes we will just say a reduced path). Fur-
thermore, we will say that a path is freely reduced if the word it represents is freely
reduced.
From now on, unless otherwise stated, we will assume that our graphs are con-
nected, which implies that given any pair of vertices v
1
, v
2
, there exists a path p
such that (p) = v
1
and (p) = v
2
.
Denition 2.7. Let
be a A-labled oriented graph. Let v be a vertex of
, and
suppose these exists e
1
, e
2
, edges of
such that (e
1
) = (e
2
) and l(e
1
) = l(e
2
).
Then we construct a new A-labled oriented graph,
, by identifying (e
1
) with
(e
2
), and e
1
with e
2
. More precisely,
(1) Let 1(
) = (1(
)(e
1
), (e
2
)) v
12
. We obtain v
12
from identifying
(e
1
) and (e
2
).
(2) Similarly, let c(
) = (c(
)e
1
, e
2
) e
12
. e
12
is added to replace e
1
and e
2
that have been identied.
(3) We let
(e) =
) such that e ,= e
1
, e
2
, and
(e
12
) =
v
12
. Similarly,
(e) =
) such that e ,= e
1
, e
2
, and
(e
12
) =
(e
1
) =
(e
2
).
(4) The lables of
are dened as l
(e) = l
(e) if e ,= e
1
, e
2
, and l
(e
12
) =
l
(e
1
) = l
(e
2
).
Thus we get a A-labled oriented graph
. We can construct an analogous construc-
tion in the case (e
1
) = (e
2
) and l(e
1
) = l(e
2
), by identifying the two end points
and the two edges. We call this process folding, and we say that we obtained
by
folding
along e
1
and e
2
.
The reader is encouraged to experiment some examples of folding. It can be
somewhat complicated when there are many edges coming out of the vertices that
are to be identied with each other. Also, its worth trying examples where folding
results in creating a loop, as illustrated in gure 2.
Denition 2.8. Let
be a A-labled oriented graph. Then we say that
is folded
if for every v 1(
) such
that l(e
1
) = a and (e
1
) = v, and there is at most one edge e
2
c(
) such that
l(e
2
) = a and (e
2
) = v.
In other words, when a graph is folded, we are no longer able to fold the graph.
In gure 2, both examples are folded once the fold is made (in other words, the
graphs on the left is unfolded, and the graphs on the right are folded). Note that
folding a connected graph results in another connected graph. Also, if we have a
4 HIKARU KIYO
a
a
b
b
a
a
b
b
a
a
a
a
a
b
Figure 2. Two exaples of a fold. The bottom example creates a loop.
path p with origin v
0
and end point v
1
, and the image of v
0
, v
1
under folding is v
0
,
v
1
respectively, then the image of p under folding is a path p
, with origin v
0
and
end point v
1
, where l(p) = l(p
). Then we dene
the dictionary of
based at v to be the set
l(p) [ p is a reduced loop based at v in
,
which we will denote as T
v
(
).
Its clear that under the operation of concatenation and path-reduction, T
v
(
)
is a group. We have the trivial word since its the lable of the trivial loop, and the
inverse of a word in the dictionary can be obtained by considering the reverse loop.
As for closure, we just concatenate and path reduce the two reduced loops.
Note that even though the dictionary is composed of reduced loops, there may
be words that are not freely reduced in the dictionary. However, when one considers
folded graphs, this is no longer the case.
Lemma 2.10. If
is a folded A-labled oriented graph, then for any v 1(
),
T
v
(
) to be not
freely reduced, there must be at least 2 edges e
1
and e
2
such that l(e
1
) = l(e
2
) and
(e
1
) = (e
2
) = v or (e
1
) = (e
2
) = v. But since
is folded, this is impossible.
Hence our claim holds.
A COMBINATORIAL APPROACH TO STALLINGS ALGORITHM 5
3. Free Groups and Labled Graphs
Denition 3.1. Let AA
1
be an alphabet. Then we dene the free group on A
as the collection of all freely reduced words in A, with the group operation dened
as
w
1
w
2
= w
1
w
2
,
where w
1
and w
2
are words in A and w
1
w
2
is the freely reduced word we obtain
from the concatenated word w
1
w
2
.
Denition 3.2. Let
be a A-labled oriented graph, and v 1(
). Then we dene
the reduced dictionary at v to be the set
w [ w T
v
(
),
which we will denote as T
v
(
).
Now we show that dictionaries of an A-labled oriented graph are subgroups of
F(A).
Lemma 3.3. Let
be an A-labled oriented graph, and let v 1(
). Then T
v
(
)
is a subgroup of F(A).
Proof. Let x
1
, x
2
T
v
(
). So, T
v
(
) is closed under
multiplication. Now, its clear that x
1
1
can be obtained from the reverse path p
1
1
,
and hence we have x
1
1
= l(p
1
1
). Finally, we also have 1 T
v
(
). Hence T
v
(
) is
a subgroup of F(A).
Note that if
is folded, by lemma 2.10 its dictionaries only contain freely reduced
words, and hence T
v
(
) = T
v
(
).
Now we prove that the freely reduced dictionary is preserved under folding.
Lemma 3.4. Let
0
be a A-labled oriented graph, and let v
0
1(
0
). If
1
and
v
1
are the images of
0
and v
0
respectively under a single folding, then we have
T
v0
(
0
) = T
v1
(
1
).
Proof. Suppose
1
is obtained from
0
by identifying e
1
, e
2
c(
0
), where (e
1
) =
(e
2
) = x
0
, x
0
1(
0
) and l(e
1
) = l(e
2
) = a, a A. Let e be the edge that replaces
e
1
, e
2
, where l(e) = a, and let x
1
be the image of x
0
in
1
. Let w T
v0
(
0
), so
that there exists a path-reduced loop p
0
based at v
0
such that l(p
0
) = w. Suppose
that p
0
has no sub-path of the form e
1
e
2
or e
2
e
1
. Then if p
1
is the image of p
0
, p
1
is a path-reduced loop based at v
1
, where l(p
1
) = l(p
0
) l(p
1
) = l(p
0
). Hence we
have w = l(p
1
) T
v1
(
1
). If p
0
contains sub-paths of the form e
1
e
2
or e
2
e
1
, p
1
will
not be path reduced. Let p
1
be the path-reduced loop we obtain from p
1
. Then we
have l(p
1
) = l(p
1
) = l(p
0
), which also implies that w T
v1
(
1
). Hence we have
T
v0
(
0
) T
v1
(
1
). Now we show the other inclusion. Let w
T
v1
(
1
). Then
there exists q
1
, such that l(q
) = w
. Let q be
the preimage of q
. If q
,
6 HIKARU KIYO
and hence w
T
v0
(
0
). Suppose q
= q
1
y
1
q
2
y
2
q
n
y
n
q
n+1
where y
i
= e or e, and q
i
is a
reduced path that does not contain e or e. Note that since q
is path-reduced, q
i
,= 1
for i = 2, , n. Now, since each q
i
does not contain e or e, their preimage in
0
is
the same path. To construct a reduced path in
0
with lable w
0
. Since by folding weve
identied e
1
and e
2
into e, for each y
i
, we just choose either e
1
or e
2
if y
i
= e, and
e
1
or e
2
if y
i
= e. Then we will have a reduced path q
i
z
i
q
i+1
, which has the same
lable as q
i
y
i
q
i+1
, since l(e) = l(e
1
) = l(e
2
). Hence by repeating this process for
each i, we obtain a reduced path q = q
1
z
1
q
2
z
2
q
n
z
n
q
n+1
in
0
, where l(q) = l(q
).
Thus l(q) T
v0
(
0
) l(q) T
v0
(
0
). So, we have T
v1
(
1
) T
v0
(
0
), and hence
we have T
v1
(
1
) = T
v0
(
0
).
Now that weve shown that the freely reduced dictionary is preserved under
folding, we go on to prove that for any subgroup of F(A), there exists a labled
oriented graph whose dictionary at a certain vertex is precisely the given supgroup.
Proposition 3.5. Let H = h
1
, , h
k
) be a nitely generated subgroup of F(A).
Then there exists a connected, folded A-labled oriented graph
and a vertex v
1(
) such that T
v
(
) = H.
Proof. We will construct
in the following manner. Let
1
be a connected A-
labled oriented graph constructed by wedging k A-labled oriented circles together
at a vertex v
1
. Each circle is to have the lable that corresponds to a generator of
H. So, the ith circle is made up of [h
i
[ edges such that when read from v
1
to v
1
,
the lable is h
i
. With this construction, its easy to see that the lable of every freely
reduced path in
1
is a freely reduced word in H, and vice versa. Hence we have
T
v1
(
1
) = H. Now, we construct a sequence of graphs by folding graphs at each
stage. At each i, if
i
is folded, we stop the sequence. If not, we construct
i+1
by
folding. Since each time we fold we decrease the number of edges by 1, and since
we began with a nite numebr of edges, this sequence terminates at
n
, for some
n N. Now, since folding preserves connectedness,
i
is connected for each i. Also,
by the previous theorem, we have T
v1
(
1
) = T
vn
(
n
) where v
n
is the image of v
1
in
n
. Now, since
n
is folded, by lemma 1.11 we have T
vn
(
n
) = T
vn
(
n
). Hence
we get the chain of equalities
H = T
v1
(
1
) = T
vn
(
n
) = T
vn
(
n
).
So,
n
is a connected, folded A-labled oriented graph with vertex v
n
such that
T
vn
(
n
) = H.
Now we prove that the folded graph that we obtain is unique up to isomorphism.
First we dene morphisms between graphs.
Denition 3.6. Let and be graphs. Then a map f : is a morphism
if f(c()) = c(), f(1()) = 1(), and for every e c(), (f(e)) = f((e)) and
(f(e)) = f((e)).
Before we get to the actual theorem, we prove two lemmas. The lemmas will
actually do most of the work, as we will see later.
A COMBINATORIAL APPROACH TO STALLINGS ALGORITHM 7
a
a
a
a
a
a
b
b
b
b
a
a
a
a
a
a
b
b
b
a
b
b
b
a
a
a
a
b
b
a a
a
a
b
b
a
a
a b
b
b
a
a
b
a
a
b
a
b
Figure 3. Finding the graph for H = a
2
b
1
, ba
1
ba, ab
1
a).
Lemma 3.7. Let
,
be connected A-labled oriented graphs, with v a vertex of
and x a vertex of
. Suppose that
is folded. Then there exists at most one
morphism, f :
such that f(v) = x.
Proof. Suppose f, g are morphisms from
to
such that f(v) = g(v) = x. Let
y be an arbitrary vertex in
, and let p be a path in
such that (p) = v and
(p) = y. Now, since
is foled, this implies that there cannot be two paths p
1
, p
2
such that (p
1
) = (p
2
), and l(p
1
) = l(p
2
), since if such two paths existed, we should
be able to fold the graph. So, there can be at most one path p
in
such that
l(p
) = l(p). Now, since l(f(p)) = l(g(p)) = l(p), and (f(p)) = (g(p)) = x, this
implies that f(p) = g(p), and hence f(y) = g(y). Now, we can prove analogously
that f(e) = g(e) for any edge e
. So we have f = g, and hence our claim
holds.
The next lemma constructs the morphism that we want. The uniqueness will
follow from the previous lemma.
8 HIKARU KIYO
Lemma 3.8. Let F(A) be a nite rank free group with a nite basis A, and sup-
pose K H F(A) are subgroups of F(A). Further, suppose that
and
are
connected folded A-labled oriented graphs such that T
v
(
) = K and T
x
(
) = H,
where v 1(
) and x 1(
1(
), and let p
v
be a reduced
path from v to v
), there is a
unique path q
v
in
such that (q
v
) = x and l(q
v
) = w. We let f(v
) = (q
v
),
and show that f(v
v
be another
path in
from v to v
, and q
v
the corresponding path in
with (q
v
) = x and
l(q
v
) = w
. Since p
v
(p
v
)
1
is a loop in
, w(w
)
1
= y K = T
v
(
). This
implies that there exists s, a reduced loop based at v such that l(s) = y. Then sp
is a path from v to (p
v
), and the path reduced form of sp
v
has lable k w
= w.
Now, since
is folded, this implies that there is only one path with lable w and
origin v. Hence the path reduced form of sp
v
is p
v
, and hence (p
v
) = (p
v
),
which implies that out denition is well-dened. Now we deal with the edges. Let
e 1(
). Then since
is folded and connected, there exists b a reduced loop based
at v such that b = b
1
eb
2
where b
1
and b
2
are paths. Since b is a reduced loop based
at v, l(b) T
v
(
c
2
, where l(c
1
) = l(b
1
), l(e
) = e and l(c
2
) = l(b
2
). By
our previous vertex construction, we have (c
1
) = f((e)). So, we dene f(e) = e
.
Note that we can only have at most one edge e
c(
) such that (e
) = f((e))
and l(e
) = l(e), since
is folded. Hence our denition is well-dened. So, we have
explicitly constructed the function f that we desired. Note that the uniqueness of
f follows from the previous lemma.
Now we prove that folded graphs with the same dictionaries at a certain vertex
are unique up to isomorphism. The result follows almost trivially from the above
two theorems.
Theorem 3.9. Let F(A) be a free group with nite basis A and let H F(A) be a
nitely generated subgroup of F(A). Suppose
and
are A-labled oriented graphs
such that T
v
(
) = T
x
(
) = H, where v 1(
) and x 1(
). For
each x 1(
), let p
e
= p
(e)
e(p
(e)
)
1
, so that p
e
is a reduced loop
based at v in
. Then the subgroup H = T
v
(
e
be the reduced path we obtain from
p
e
. Then we have l(p
e
) T
v
(
) and l(p
e
) = l(p
e
), and so we have l(p
e
) = l(p
e
)
T
v
(
= p
e1
p
e
k
. Note that we can expand q
in
the following manner,
q
= q
v1
e
1
(q
v2
)
1
q
v2
e
2
(q
v3
)
1
q
v
k
e
k
(q
v
k+1
)
1
,
where v
i
= (e
i
), and p
vi
is a reduced path from v to v
i
for each i. This implies that
q
) = l(p
e1
) l(p
e
k
) A). This implies that h A). So, we have H A),
and hence we get A) = H.
All that remains to be proved is that our set is indeed a free basis, not just a
generating set.
Theorem 3.11. Let F(A) be a free group, and H F(A) be a subgroup. Let
) and T
v
(
) = H,
and let T be a spanning tree of
. For each e c(
), dene p
e
= q
e
eq
e
, where
q
e
is a reduced path in
from v to (e) and q
e
is a reduced path in
from (e)
to v so that p
e
is a reduced loop based at v in
and l(p
e
) is a freely reduced word
in A. Let X be the set of positively oriented edges of
that are not in T. Then
A = l(p
e
) [ e X is a free basis for the subgroup H.
Proof. Let e be a positive edge in T. Then p
e
= q
e1
eq
e2
can be reduced to the
trivial path, and hence we have l(p
e
) = 1. This implies that the edges of
that
are in T do not contribute to the group generated by l(p
e
) [ e is a positive edge in
T), and e
i
,= (e
i+1
)
1
for each i. Now, by defnition of p
ei
, we can
rewrite p in the following form,
p = q
e1
e
1
q
e
1
q
e2
e
2
q
e
2
q
e
k
e
k
q
e
k
.
Note that given a, b, c vertices in a tree, a path from a to b concatenated with a
path from b to c can be reduced to a path from a to c. So, since q
e
i1
, q
ei
are both
paths in T, we can reduce the path into q
i
, a reduced path in T with (q
i
) = (q
ei1
)
and (q
i
) = (q
ei
). Hence we obtain p
by reducing p, where
p
= q
e1
e
1
q
2
e
2
q
3
q
k
e
k
q
e
k
.
10 HIKARU KIYO
b
a
a
b
Figure 4. Finding the free basis of H from gure 3. We rst
take a spanning tree, which is bolded, then read loops based at
the initial vertex where every edge but one is in the tree, until we
cover every edge. Hence the free basis of H is aba
1
, a
2
, b).
Now, since q
e1
, q
i
, and q
e
k
are all paths in T and e
i
are paths in
T, q
is path
reduced. Hence p
) =
l(p
i=1
[h
i
[ [A[
where [A[ is the number of letters in A.
Proof. It is easy to see that there are subgroups whose initial wedge-graph cannot be
folded. Let A = a
1
, , a
n
. Then just consider a
1
a
2
, a
2
a
3
, , a
n1
a
n
, a
n
a
1
).
If
is the graph obtained by wegding circles as shown in theorem 2.4, there are no
edges that can be folded. Hence p = 0, and so there are no better lower bounds.
12 HIKARU KIYO
Now, for the upper bound, we know that since folding decreases the number of edges
by 1, p can be at most the number of edges we begin with, which is
k
i=1
[h
i
[. But
we also know that since folding never eliminates a lable, for every letter in A, there
is at least one edge whose lable is that letter. Hence p is at most
k
i=1
[h
i
[[A[.
In gure 5, the initial wedge-graph of H
1
has [ab
2
a[ + [b
3
[ + [a
1
b[ + [a
4
[ = 13
edges, and is folded 13[a, b[ = 11 times until it becomes a folded graph. This is
the maximum number of folds that a 13 edge graph can go through. On the other
hand, the wedge-graph of H
2
cannot be folded and hence we cannot get a simpler
set of generators for H
2
. Hence one sees that we cannot do much better than the
trivial bound for the number of folds required.