# Faculty of Science and Engineering

Joshua Greenhalgh
Msc Mathematics
The isomorphism problem for ﬁnitely generated
abelian groups
March 2012
School of Computing, Mathematics and Digital Technology
i
With the exception of any statement to the contrary, all the material pre-
sented in this report is the result of my own eﬀorts. In addition, no parts
of this report are copied from other sources. I understand that any evidence
of plagiarism and/or the use of unacknowledged third party materials will be
dealt with as a serious matter.
Signed:
Abstract
This project aims to investigate the foundational results in group
theory beginning with the axiomatic deﬁnition of a group and build-
ing up all the necessary theory in order to ﬁnd a solution to the
isomorphism problem for ﬁnitely generated abelian groups. The
solution to this problem will involve the construction of a Matlab
program capable of deciding whether two ﬁnitely generated abelian
groups are isomorphic. In doing this various tools from linear al-
gebra will be employed as well as using the necessary results from
the theory of groups.
iii
Contents
Introduction 1
I Preliminaries 5
1 Sets, Equivalence and Binary Operations 7
1.1 Sets . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7
1.2 Equivalence relations . . . . . . . . . . . . . . . . . . . . . . . . 12
1.3 Binary Operations . . . . . . . . . . . . . . . . . . . . . . . . . 13
2 Groups, Subgroups, Cyclic Groups, Cosets and Lagrange’s
Theorem 15
2.1 Groups . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15
2.2 Subgroups . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 20
2.3 Direct products . . . . . . . . . . . . . . . . . . . . . . . . . . . 23
2.4 Cyclic Groups . . . . . . . . . . . . . . . . . . . . . . . . . . . . 25
2.5 Cosets and Lagrange’s Theorem . . . . . . . . . . . . . . . . . . 28
3 Homomorphisms and Isomorphisms 31
3.1 Homomorphisms . . . . . . . . . . . . . . . . . . . . . . . . . . 31
3.2 Isomorphisms . . . . . . . . . . . . . . . . . . . . . . . . . . . . 36
iv
CONTENTS v
4 Normal subgroups and Quotient Groups 39
II The Isomorphism Problem for Finitely Generated Abelian
Groups 45
5 Classiﬁcation of Finite Abelian Groups 47
5.1 Sylow’s Theorems . . . . . . . . . . . . . . . . . . . . . . . . . . 47
5.2 The decomposition of Finite Abelian Groups . . . . . . . . . . 49
6 Generators and Relations 57
6.1 Generators . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 57
6.2 Relations . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 61
7 Group Presentations 63
8 Smith Normal Form 67
8.1 Smith Normal Form algorithm . . . . . . . . . . . . . . . . . . 67
8.2 Application of Smith form to a relation matrix . . . . . . . . . 70
9 Smith Normal Algorithm in Matlab 73
9.1 Code Analysis . . . . . . . . . . . . . . . . . . . . . . . . . . . . 73
9.2 Application to sample matrices . . . . . . . . . . . . . . . . . . 76
10 The decision problem 85
10.1 Code Analysis . . . . . . . . . . . . . . . . . . . . . . . . . . . . 87
10.2 Examples . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 88
11 Conclusion 93
Bibliography 95
A smithnormal.m 97
vi CONTENTS
B iso.m 101
Introduction
“. . . ﬁrst, the discovery of isolated phenomena, then the recog-
nition of certain features common to all, next the search for fur-
ther instances, their detailed calculation and classiﬁcation; then the
emergence of general principles making further calculations, unless
needed for some deﬁnite application, superﬂuous; and last, the for-
mulation of postulates crystallizing in abstract form the structure
of the system investigated . . . ”
E. T. Bell
Mathematical ideas have always followed a very similar trajectory, patterns are
observed in nature and then conjectures are made in order to explain the pat-
tern. Similar patterns are observed in diﬀerent areas of nature and then similar
conjectures are made. An awareness of the patterns within the patterns begins
to emerge and general conjectures are made that have no relation to the natural
world. This process of moving from the observable to the conceptual is known
as abstraction and has been a recurring theme in the history of Mathematics.
The ancient Greeks were the ﬁrst people to fully take hold of the abstract
conception of mathematics. The greatest mathematical work of the ancient
world was Euclid’s Elements; this book took a set of ﬁve postulates, twenty
three deﬁnitions and ﬁve common notions then using the tools of logic deduced
1
2 CONTENTS
over a hundred geometrical propositions contained in six volumes [3]. Euclid
was not content with creating such a large body of geometrical knowledge and
in the next four books of the Elements he applied his axiomatic approach to
the study of numbers and laid the foundations for number theory. By the 16th
century Mathematics was now mainly concerned with the solution of polyno-
mials, the solutions to linear and quadratic equations had been known since
the earliest times but the solution to cubic equations was not. The Italian
mathematician Scipione del Ferro ﬁnally found the solution to the general cu-
bic equation and in the process won a mathematical contest against a rival
mathematician Gerolamo Cardano. The next problem faced by Mathematics
was the solution of the general quartic equation; Ludovico Ferrari a student
of Gerolamo Cardano soon found a method. For the next two hundred years
mathematicians attempted to ﬁnd a way of solving the general quintic equa-
tion, it was not until the early 19th century that the mathematicians Niels
Abel and Evariste Galois proved that no such solution existed. Their proofs
made a further step in the abstraction of mathematics and directly lead to the
development of Group theory [8].
Both Abel and Galois, working independently, attacked the problem of
solvability from a new direction. They analysed what it was that made it
possible to solve a polynomial rather than trying to ﬁnd particular solutions,
in doing so they laid the foundations for group theory. Neither Abel nor Galois
completely conceived of what we now call a group but they began the journey
down the road to the modern conception of a group.
The main question this project will attempt to answer is;
“Given two ﬁnitely generated abelian groups, are these groups
isomorphic?”
Due to the axiomatic nature of modern group theory it is impossible to answer
CONTENTS 3
this question without ﬁrst developing a signiﬁcant amount of basic theory, for
this reason the project has been divided into two distinct sections. The ﬁrst
section will begin with the necessary prerequisites needed in order to give a
deﬁnition of a group in terms of the group axioms. This section will then build
up a set of propositions and deﬁnitions that follow logically from the group
axioms; by the conclusion of this section it will be possible to begin to answer
the above question.
The second section will set out to answer the main question of this project.
This will entail the development of some more advanced theory and also the
introduction of various tools from linear algebra. In this section a signiﬁcant
amount of mathematical programming will be necessary and so parts of this
section will be used for analysis of the various programs devolved. The conclu-
sion of this section will be a program that takes as input the representations
for two groups and returns whether or not they are isomorphic.
Although group theory is a very active part of modern mathematical re-
search the material covered in this project is by no means at the level of current
research. The material covered has been known for many years and is merely
the ﬁrst building blocks of modern group theory, therefore the majority of
sources used in this project are modern textbooks on Abstract Algebra and
Group Theory ([4],[5],[6] and [7]). It would be unreasonable to give an outside
reference to every result contained in this project and, due to the axiomatic
nature of group theory, it is hoped that all results are shown to follow from the
group axioms. However, throughout the text use is made of some very simple
results from number theory; the Euclidian algorithm, properties of prime num-
bers, greatest common divisors and least common multiples, the use of these
results is taken for granted.
Part I
Preliminaries
5
Chapter 1
Sets, Equivalence and Binary
Operations
“A set is a gathering together into a whole of deﬁnite, distinct
objects of our perception [Anschauung] and of our thought which
are called elements of the set.”
Georg Cantor
1.1 Sets
Deﬁnition 1.1.1. A Set is a well-deﬁned collection of objects, with no repe-
tition, in which the order of the objects has no importance.
A set can contain any objects you may wish it to contain. It can contain
animals, colours, integers, letters of the alphabet, other sets...or any combina-
tion of these. The following example, using the colours of the rainbow, shows
the notation used when describing sets.
7
8 CHAPTER 1. SETS, EQUIVALENCE AND BINARY OPERATIONS
Example 1.1.1.
C = ¦Red, Orange, Y ellow, Green, Blue, Indigo, V iolet¦
We use curly brackets to contain the objects and we use a capital letter
to denote the set as a whole. The following example sheds some light on the
subtleties of Deﬁnition 1.1.1.
Example 1.1.2.
¦1, 4¦ = ¦4, 1¦ = ¦1, 4, 1, 1, 4¦
All three sets are thought of as being the same since the order of the objects
and whether there are any repetitions is ignored when describing a set. We
usually call the objects in a set, the elements of the set. We have a special
notation for membership, or belonging, of an element to a set. Let the set
given in Example 1.1.2 be denoted by A.
Example 1.1.3.
1, 4 ∈ A
23, 9 ,∈ A
The above example says that 1 and 4 are elements contained in A but 23
and 9 are not. The elements of a set can either be explicitly stated as in
Example 1.1.2 or can be deﬁned by a rule.
Example 1.1.4.
S = ¦3n [ n is a positive integer¦
M = ¦3n < 10 [ n is a positive integer¦
1.1. SETS 9
Deﬁnition 1.1.2. We say A is a subset of B if all elements contained in A are
also contained in B.
Example 1.1.5. Let A be as in Example 1.1.2 and let B = ¦5, 1, 6, 4, 7¦. A is
a subset of B since 1 ∈ A,1 ∈ B and 4 ∈ A,4 ∈ B. We denote this relationship
by A ⊆ B.
Deﬁnition 1.1.3. We say A = B if A ⊆ B and B ⊆ A. All elements of A are
contained in B and all elements of B are contained in A.
Deﬁnition 1.1.4. We say A is a proper subset of B if all elements contained
in A are also contained in B and A ,= B.
Strictly speaking the relationship in Example 1.1.5 should be written as
A ⊂ B since A is a proper subset of B. However the notation used in Example
1.1.5 allows for the possibility that A is a proper subset of B. In what follows
let A = ¦1, 4, 9¦ and B be as in Example 1.1.5. There are four basic operations
that can be carried out with respect to sets they are,
• Union (∪)
• Intersection (∩)
• Diﬀerence (− )
• Cardinality ([A[)
Deﬁnition 1.1.5. A ∪ B = ¦x [ x ∈ A or x ∈ B¦, this deﬁnition is using the
non-exclusive usage of “or”. A∪B is the set of all elements in A or in B or in
both.
Example 1.1.6.
A∪ B = ¦1, 4, 9, 5, 6, 7¦
10 CHAPTER 1. SETS, EQUIVALENCE AND BINARY OPERATIONS
Deﬁnition 1.1.6. A ∩ B = ¦x [ x ∈ A and x ∈ B¦. A ∩ B is the set of all
elements that are in A and are also in B.
Example 1.1.7.
A∩ B = ¦1, 4¦
Deﬁnition 1.1.7. A − B = ¦x [ x ∈ A and x ,∈ B¦. The Diﬀerence between
A and B is the set of elements contained in A but not contained in B.
Example 1.1.8.
A−B = ¦9¦
B −A = ¦5, 6, 7¦
Deﬁnition 1.1.8. The Cardinality of a set is the number of distinct elements
it contains.
Example 1.1.9.
[A[ = 3
[B[ = 5
[A∪ B[ = 6
let S be as in Example 1.1.4,
[S[ = ∞
There exists a special set known as the null set or the empty set and it is
denoted by ∅.
Deﬁnition 1.1.9. The null set is a set that contains no elements.
∅ = ¦¦
1.1. SETS 11
[∅[ = 0
In order to discuss the notion of a Binary Operation later we must introduce
a special kind of set called the direct product. The direct product is a set of
ordered n-tuples.
Deﬁnition 1.1.10. An ordered n-tuple is denoted by (a, b, c, . . .) it has n
entries. Given two n-tuples (a, b, c, . . .) and (a

, b

, c

, . . .) they are equal iﬀ,
a = a

, b = b

, c = c

, . . .
Deﬁnition 1.1.11. The direct product of n sets A
1
, A
2
, . . . , A
n
is denoted by,
A
1
A
2
. . . A
n
where,
A
1
A
2
. . . A
n
= ¦(a
1
, a
2
, . . . , a
n
) [ a
1
∈ A
1
, a
2
∈ A
2
, . . . , a
n
∈ A
n
¦
Example 1.1.10. Let A = ¦2, 7, 8¦ and B = ¦5, 6¦
AB = ¦(2, 5), (2, 6), (7, 5), (7, 6), (8, 5), (8, 6)¦
The cardinality of a direct product is given by the product of the cardinal-
ity’s of its constituent sets.
Deﬁnition 1.1.12.
[A
1
A
2
. . . A
n
[ = [A
1
[[A
2
[ . . . [A
n
[
12 CHAPTER 1. SETS, EQUIVALENCE AND BINARY OPERATIONS
Example 1.1.11. Let A and B be as in Example 1.1.10
[AB[ = [A[[B[ = 3 2 = 6
1.2 Equivalence relations
Deﬁnition 1.2.1. An equivalence relation on a set X determines a subset
R ⊂ X X such that,
• Reﬂexive- (x, x) ∈ R for all x ∈ X
• Symmetric- If (x, y) ∈ R this implies (y, x) ∈ R
• Transitive- If (x, y) ∈ R and (y, z) ∈ R this implies (x, z) ∈ R
Given an equivalence relation on X it is usual to denote relation by x ∼ y
rather than (x, y) ∈ R and we would say x is related to y.
Example 1.2.1. Let a and b be two integers and let n ∈ Z. We deﬁne a
relation by saying a is related to b if n[a −b that is if a −b = kn where k ∈ Z.
This relation is called congruence modulo n and we would say a is congruent
to b modulo n. This is an equivalence relation, any integer a is congruent to
itself modulo n since a − a = 0n and so the relation is reﬂexive. The relation
is symmetric since if a is congruent to b modulo n, a − b = kn = −(b − a)
and so b is congruent to a modulo n. If a is congruent to b modulo n and b is
congruent to c modulo n then, a − b = k
1
n and b − c = k
2
n. We must show
that a − c = k
3
n, a − c = a − b + b − c = k
1
n + k
2
n = (k
1
+ k
2
)n and so the
relation satisﬁes the transitive property of an equivalence relation. Usually we
would denote the relation a is congruent to b modulo n by a ≡ b mod(n).
Deﬁnition 1.2.2. A partition P of a set X is a collection of non-empty subsets
X
1
, X
2
, . . . of X such that X
i
∩ X
j
= ∅ if i ,= j and

k
X
k
= X.
1.3. BINARY OPERATIONS 13
Deﬁnition 1.2.3. An equivalence class [x] = ¦y ∈ X [ y ∼ x¦ is a subset of
X such that all y ∈ [x] are related to x.
Proposition 1.1. An equivalence relation ∼ on a set X induces a partition P
of X such that each partition is an equivalence class. Conversely a partition P
on the set X induces an equivalence relation ∼ on X such that each equivalence
class is a partition of X.
Proof. Given an equivalence relation on X it is clear that given any x ∈ X
the reﬂexive property shows us that x ∈ [x] and so [x] is non-empty. It is also
obvious that the union of all equivalence classes constitutes the whole of X,
that is

x∈X
[x] = X. If x, y ∈ X then we must show that either [x] = [y] or
[x] ∩[y] = ∅. If we assume that [x] ∩[y] is not empty and that h ∈ [x] ∩[y], this
means that h ∼ x and h ∼ y. Using the symmetric and transitive properties
it can be shown that x ∼ y. This means that [x] ⊂ [y] and it can similarly be
shown that [y] ⊂ [x], hence [x] = [y]. This shows us that equivalence classes
are either equal or disjoint. So an equivalence relation on a set X induces all
the necessary properties of a partition P of the set. If we assume that P is a
partition of the set X and deﬁne a relation such that x ∼ y if x and y are in
the same partition. This relation is obviously reﬂexive and symmetric. If x is
in the same partition as y, and y is in the same partition as z, then x is in the
same partition as z and so the relation is transitive. This relation satisﬁes all
the properties of an equivalence relation.
1.3 Binary Operations
Before we discuss what a binary operation is we must ﬁrst understand what a
function between sets means.
14 CHAPTER 1. SETS, EQUIVALENCE AND BINARY OPERATIONS
Deﬁnition 1.3.1. A function between sets is denoted by,
f : X −→ Y.
The function assigns a unique element of Y to each element of X. The element
of Y assigned to an element x ∈ X is denoted by f(x), we show this with the
following notation,
x −→ f(x).
We call the element f(x) ∈ Y the image of x under f. The set X is called the
domain of the function and the set Y is called the codomain of the function.
The image of all x ∈ X under f is a subset of the codomain.
Deﬁnition 1.3.2. A Binary operation is a given by the following function,
: X X −→ X
(x
1
, x
2
) −→ (x
1
, x
2
)
This function assigns a unique element (x
1
, x
2
) ∈ X to each (x
1
, x
2
) ∈ XX,
we usually write (x
1
, x
2
) as x
1
x
2
. It must be remembered that x
1
x
2
is a
single element of X, it could be x
1
or x
2
or any x ∈ X.
Example 1.3.1. A very familiar binary operation is the addition of integers,
+ : Z Z −→Z
(a, b) −→ a +b
This function assigns each pair of integers to its sum, which is also an integer.
(2, 3) −→ 2 + 3 = 5
Chapter 2
Groups, Subgroups, Cyclic
Groups, Cosets and Lagrange’s
Theorem
“A piece of music can be accompanied by words, movement, or
dance, or can simply be appreciated on its own. It is the same with
groups. They can be seen as groups of symmetries, permutations,
or motions, or can simply be studied and admired in their own
right.”
Mark Ronan
2.1 Groups
A group is not a single entity it is made of two distinct parts, a set and a
binary operation on that set. A group can be denoted using the following
notation (G, ) where G is a set and is a binary operation on that set, when
15
16
CHAPTER 2. GROUPS, SUBGROUPS, CYCLIC GROUPS, COSETS
AND LAGRANGE’S THEOREM
the operation is known we shall simply denote it by G, its underlying set.
Deﬁnition 2.1.1. A group is a set G and a binary operation on the set
subject to the following properties,
• Closure- ∀g
1
, g
2
∈ G, g
1
g
2
∈ G.
• Identity- ∃e ∈ G such that ∀g ∈ G, e g = g e = g.
• Inverse- ∀g ∈ G, ∃g
−1
∈ G such that g g
−1
= g
−1
g = e.
• Associativity- ∀g
1
, g
2
, g
3
∈ G, g
1
(g
2
g
3
) = (g
1
g
2
) g
3
= g
1
g
2
g
3
.
We call a group ﬁnite if it has a ﬁnite number of elements and inﬁnite if
it does not. The order of a group is the number of elements it contains, if a
group G contains n elements we say it has order n and denote this [G[ = n.
If a group G has inﬁnite order we denote this [G[ = ∞. We will now describe
some simple propositions that follow on from the description of a group given
and outline their proofs. In what follows we will drop the and simply write
g
1
g
2
for g
1
g
2
Proposition 2.1. The Identity element of a group is unique, there exists only
one element e ∈ G such that eg = ge = g for all g ∈ G.
Proof. Assume that both e and e

are identities in G. It follows that ge = eg =
g and ge

= e

g = g. If we use e as the identity ee

= e

, but using e

as the
identity ee

= e therefore e = ee

= e

.
Proposition 2.2. The inverse g
−1
∈ G of any element g ∈ G is unique.
Proof. let g

and g

both be inverses of g then gg

= g

g = e and gg

= g

g = e.
g

= g

e = g

(gg

) = (g

g)g

= eg

= g

Proposition 2.3. Let a, b ∈ G then (ab)
−1
= b
−1
a
−1
.
2.1. GROUPS 17
Proof. abb
−1
a
−1
= aea
−1
= aa
−1
= e and b
−1
a
−1
ab = beb
−1
= bb
−1
= e
Proposition 2.4. Let a, b ∈ G then ax = b and xa = b have unique solutions
in G
Proof. Assume ax = b we must show that a solution for x exists. If we multiply
both sides of ax = b on the left by a
−1
, we arrive at a
−1
ax = a
−1
b ⇔ ex =
a
−1
b ⇔ x = a
−1
b. We must now show that this solution is unique. Assume
that x
1
and x
2
are solutions to ax = b, then ax
1
= b = ax
2
. This means that
x
1
= a
−1
ax
1
= a
−1
ax
2
= x
2
. The proof for xa = b is similar but we multiply
on the right by a
−1
.
Proposition 2.5. Let a, b, c ∈ G, then ba = ca implies b = c and ab = ac
implies b = c.
Proof. To show that ba = ca implies b = c, we must multiply ba = ca on the
right by a
−1
. baa
−1
= caa
−1
⇔ be = ce ⇔ b = c. The proof for ab = ac is
similar.
We will now give some examples of groups, but ﬁrst we must introduce one
further deﬁnition relating to a special kind of group.
Deﬁnition 2.1.2. An Abelian Group satisﬁes all the properties of a group
plus one more,
• Commutativity- ∀g
1
, g
2
∈ G, g
1
g
2
= g
2
g
1
.
When a group G is non-abelian we tend to use multiplicative notation.
The product of the elements a, b ∈ G is simply denoted by ab. We also use
exponential notation, deﬁning a
0
= e and for any n ∈ N (the natural numbers)
a
n
=
n times
¸ .. ¸
a a a
18
CHAPTER 2. GROUPS, SUBGROUPS, CYCLIC GROUPS, COSETS
AND LAGRANGE’S THEOREM
and
a
−n
=
n times
¸ .. ¸
a
−1
a
−1
a
−1
The usual laws of exponents hold,
• a
m
a
n
= a
m+n
• (a
m
)
n
= a
mn
If a group is abelian we use additive notation, the sum of the elements a, b ∈ G
is simply denoted by a +b. We deﬁne 0a = e and for any n ∈ N
na =
n times
¸ .. ¸
a +a + +a
−na =
n times
¸ .. ¸
−a +−a + +−a
The laws of exponents now become.
• ma +na = (m+n)a
• m(na) = (mn)a
Deﬁnition 2.1.3. We deﬁne the order of an element g ∈ G to be the least
positive integer n such that g
n
= e. If no such positive integer power of g
exists then we say g has inﬁnite order. The order of an element is denoted in a
similar manner to that of groups, if an element g has order n we write [g[ = n.
Example 2.1.1. The integers Z = ¦0, 1, −1, 2, −2, . . .¦ form a group under
the binary operation of addition. This binary operation takes two integers and
returns their sum which is also an integer. The identity is 0 and the inverse of
a ∈ Z is −a. The integers also satisfy the property for an Abelian group since
m+n = n +m. It is easy to see that the associativity property holds but this
is quite hard to prove.
2.1. GROUPS 19
Example 2.1.2. The set of all 2 2 matrices is denoted by M
2
(R) we will
denote the subset of all invertible 22 matrices by GL
2
(R). This subset forms
a group under matrix multiplication. A matrix,
A =
_
¸
_
a b
c d
_
¸
_
is in GL
2
(R) if there exists an A
−1
such that A
−1
A = AA
−1
= I where,
I =
_
¸
_
1 0
0 1
_
¸
_
this is the Identity of the group. The inverse of A ∈ GL
2
(R) is,
A
−1
=
1
_
¸
_
d −b
−c a
_
¸
_
This group is closed since the product of two invertible matrices is itself in-
vertible, matrix multiplication is associative so it satisﬁes this group property.
It is not always true for matrices that AB = BA so the group is non-abelian.
We call this group the General Linear Group.
Example 2.1.3. Using the notion of congruence modulo n ∈ Z we can form a
group known as the integers modulo n. This group consists of all equivalence
classes Z/nZ = ¦[0], [1], . . . , [n −1]¦, this is the set of least residues modulo n.
[a] = ¦a +kn [ k ∈ Z¦ = ¦a, a ±n, a ±2n, . . .¦
It should be understood that this is just one such set of residues modulo n, the
set ¦[n],[n+1],. . . ,[2n-1]¦ is the same set just using a diﬀerent set of represen-
20
CHAPTER 2. GROUPS, SUBGROUPS, CYCLIC GROUPS, COSETS
AND LAGRANGE’S THEOREM
tatives. A number x is in the equivalence class [a] if n[x − a, the equivalence
class [a] contains all integers that have remainder a when divided by n. We can
form an addition structure on this set that satisﬁes the properties of a group.
We deﬁne this addition operation as follows.
Deﬁnition 2.1.4. [a] +[b] = [a +b], this deﬁnition simply means that we can
add together, using the usual addition in Z, any members of an equivalence
class and take as our result the equivalence class containing this result.
It is necessary to show that this operation is well deﬁned, that it does not
matter what representative of an equivalence class we use.
Proposition 2.6. let a
1
, a
2
, b
1
, b
2
∈ Z such that [a
1
] = [b
1
] and [a
2
] = [b
2
] then
[a
1
+a
2
] = [b
1
+b
2
].
Proof. Let [a
1
] = [b
1
] and [a
2
] = [b
2
] then a
1
= b
1
+k
1
n and a
2
= b
2
+k
2
n. It
follows that a
1
+a
2
= b
1
+b
2
+ (k
1
+k
2
)n and so [a
1
+a
2
] = [b
1
+b
2
].
We must now show that the set of residues modulo n together with this
addition operation forms a group. The closure property follows from the fact
that every integer belongs in one equivalence class. The identity element of
the set is [0]. The inverse of [a] is [−a] and associativity follows from the
associativity of the integers.
2.2 Subgroups
Deﬁnition 2.2.1. A subgroup H of G is a subset H ⊆ G such that H satisﬁes
all the group properties when the binary operation of G is restricted to the
subset H.
Every Group G has at least two subgroups, the trivial subgroup ¦e¦, and
the entire group itself, we call this an improper subgroup.
2.2. SUBGROUPS 21
Example 2.2.1. The even integers 2Z = ¦. . . , −4, −2, 0, 2, 4, . . .¦ ⊆ Z. This
subset forms a subgroup of (Z, +).
• e = 0
• It is closed under addition - let n, m ∈ Z, 2n, 2m ∈ 2Z, 2n + 2m =
2(n +m) ∈ 2Z
• The inverse of 2m ∈ 2Z is −2m ∈ 2Z
• Associativity is inherited from the integer group
It is possible to classify all the possible subgroups of the integers, the fol-
lowing proposition makes this clear.
Proposition 2.7. Every nontrivial subgroup of Z is of the form bZ for some
b ∈ Z.
Proof. Let H be a non-trivial subgroup of Z, because H is non-trivial it must
contain some element a ,= 0 it must also contain −a and so either a or −a is
positive. The well ordering principle of the integers tells us there must exist
some b ∈ H such that b is the smallest positive integer in H. Since H is a
subgroup it must contain nb for all n ∈ Z, therefore bZ ⊆ H. Assume there
exists an element m ∈ H such that m is not a multiple of b, we can write
m = qb + r where 0 ≤ r < b. Since m, qb ∈ H then r = m− qb ∈ H where
0 ≤ r < b, this contridicts the fact that b was the smallest positive integer in
H unless r = 0. This shows that m = qb ∈ bZ and so every element in H must
be of the form qb where q ∈ Z.
Example 2.2.2. Let SL
2
(R) ⊆ GL
2
(R) consisting of all matrices with deter-
minant one, that is when ad − bc = 1. To show that SL
2
(R) is a subgroup of
22
CHAPTER 2. GROUPS, SUBGROUPS, CYCLIC GROUPS, COSETS
AND LAGRANGE’S THEOREM
GL
2
(R) we must show that it satisﬁes all the group properties under matrix
multiplication. The identity in GL
2
(R) is also in SL
2
(R). The inverse of A,
A
−1
=
_
¸
_
d −b
−c a
_
¸
_
is also in SL
2
(R). In order to show that SL
2
(R) is closed we must make
use of a fact about determinants, Det(AB) = Det(A)Det(B), it follows that
the product of two matrices with determinant one also has determinant one.
Associativity is inherited from GL
2
(R), this will become a recurring theme,
associativity applies to the entire group and so must apply to any subset as
well.
I will now outline some propositions that follow from the deﬁnition of a
subgroup.
Proposition 2.8. The identity in any subgroup H of G must also be the iden-
tity in G
Proof. Since H is a group it must have an identity e
H
, we must show that
e
H
= e where e is the identity in G. It is obvious that e
H
e
H
= e
H
and
ee
H
= e
H
e = e
H
, so e
H
e
H
= e
H
e by left cancellation e
H
= e.
Proposition 2.9. Any non-empty subset H of G is a subgroup if and only if
gh
−1
∈ H for any g, h ∈ H
Proof. Assume H is a subgroup of G then H is non-empty since e ∈ H, for
any g, h ∈ H, h
−1
∈ H by the inverse property of a group and so gh
−1
∈ H by
the closure property of a group. Conversely we must show that if gh
−1
∈ H
for any g, h ∈ H then H is a subgroup of G. If g ∈ H then e = gg
−1
∈ H so
H contains an identity. Since e, g ∈ H then g
−1
= eg
−1
∈ H, so H contains
2.3. DIRECT PRODUCTS 23
inverses. If g, h ∈ H then g, h
−1
∈ H so, gh = g(h
−1
)
−1
∈ H, H is closed. H
therefore satisﬁes all the requirements to be a subgroup.
2.3 Direct products
It is possible to construct a group from other groups or decompose a given
group into smaller parts these constructions are called direct products. There
are two types of direct product, the interior direct product and the exterior
direct product. The interior direct product expresses a group in terms of some
of its subgroups and the exterior direct product creates a group out of other
groups.
Deﬁnition 2.3.1. Given two groups G
1
and G
2
, the external direct product;
G
1
G
2
= ¦(g
1
, g
2
) : g
1
∈ G
1
, g
2
∈ G
2
¦
is a group under the following operation;
(g
1
, g
2
)(g

1
, g

2
) = (g
1
g

1
, g
2
g

2
)
It should be noted that G
1
and G
2
could have completely diﬀerent group op-
eration’s, and so the multiplication g
1
g

1
takes place inside G
1
and g
2
g

2
takes
place inside G
2
. This operation is clearly closed and associativity follows from
the associativity of G
1
and G
2
.
The identity element in G
1
G
2
is (e
G1
, e
G2
) where e
G1
is the identity
in G
1
and e
G2
is the identity in G
2
and the inverse of the element (g
1
, g
2
) is
(g
−1
1
, g
−1
2
).
24
CHAPTER 2. GROUPS, SUBGROUPS, CYCLIC GROUPS, COSETS
AND LAGRANGE’S THEOREM
Example 2.3.1. Consider the following external direct product;
Z
_
2Z

Z
_
3Z
= ¦(0, 0), (0, 1), (0, 2), (1, 0), (1, 1), (1, 2)¦
The addition opperation is as follows;
(a
1
, b
1
) + (a
2
, b
2
) = ((a
1
+a
2
) mod 2, (b
1
+b
2
) mod 3)
so,
(1, 1) + (1, 2) = ((1 + 1) mod 2, (1 + 2) mod 3) = (0, 0)
The idea of an external direct product extends to any number of groups,
the following direct product is deﬁned in exactly the same way;
G
1
. . . G
n
= ¦(g
1
, . . . , g
n
) : g
1
∈ G
1
, . . . , g
n
∈ G
n
¦
The order of an external direct product is equal to the product of the orders
of its constituent groups;
[G
1
. . . G
n
[ = [G
1
[ . . . [G
n
[
Deﬁnition 2.3.2. Given a group G and two subgroups H
1
and H
2
, then G is
the interior direct product of H
1
and H
2
if and only if ;
1. [G[ = [H
1
[[H
2
[
2. H
1
∩ H
2
= ¦e¦
3. h
1
h
2
= h
2
h
1
for all h
1
∈ H
1
and h
2
∈ H
2
2.4. CYCLIC GROUPS 25
Example 2.3.2. This example is the converse to example 2.3.1;
Z
_
2Z
= ¦0, 1¦ and
Z
_
3Z
= ¦0, 1, 2¦
It is clear that Z/ 2Z and Z/ 3Z are subgroups of Z/ 2ZZ/ 3Z. The product
of the these subgroups orders is equal to the order of Z/ 2Z Z/ 3Z;
[
Z
_
2Z
[[
Z
_
3Z
[ = 2 3 = 6 = [
Z
_
2Z

Z
_
3Z
[
The subgroups intersection is clearly trivial and since Z/ 2ZZ/ 3Z is abelian
the third condition also holds.
Deﬁnition 2.3.3. The notion of an internal direct product extends to any set
of subgroups H
1
, . . . , H
2
if the following conditions hold;
1. [G[ = [H
1
[ . . . [H
n
[
2. H
i
∩ ¸H
1
, . . . , H
i−1
, H
i+1
, . . . , H
n
¸ = ¦e¦
3. h
i
h
j
= h
j
h
i
for all h
i
∈ H
i
and h
j
∈ H
j
2.4 Cyclic Groups
Deﬁnition 2.4.1. A cyclic group G is one which is generated by a single
element. This means there is some element g ∈ G such that G = ¦g
n
[ n ∈ Z¦.
When a group G is generated by a single element g we write G = ¸g¸. We
say G is generated by g (and g is a generator of G). If g generates a group
then so does its inverse g
−1
, this is because (g
−1
)
n
= g
−n
and as n runs over
the integers so does −n. All the elements of a cyclic group generated by g are
26
CHAPTER 2. GROUPS, SUBGROUPS, CYCLIC GROUPS, COSETS
AND LAGRANGE’S THEOREM
powers of g, the laws of exponents mean that any cyclic group is abelian.
g
m
g
n
= g
m+n
= g
n+m
= g
n
g
m
Example 2.4.1. The group of integers Z with addition is a cyclic group gener-
ated by the single element 1. Any element k ∈ Z can be generated by repeated
Z = ¸1¸ = ¦n1 [ n ∈ Z¦
Proposition 2.10. Every subgroup of a cyclic group is itself cyclic.
Proof. Let G be a cyclic group, so G = ¸g¸. Let H be a subgroup of G, this
means that H is a set consisting of powers of g. If H = ¦e¦ then H is cyclic
and generated by e. If H ,= ¦e¦ then we choose n so that it is the smallest
positive integer such that g
n
∈ H. Let h = g
m
∈ H be a general element of
H, using the division algorithm we can express g
m
= g
nq+r
= (g
n
)
q
g
r
where
0 < r < n. This can be rearranged giving g
r
= (g
n
)
−q
g
m
. Since g
n
∈ H than
so is its inverse and all its powers. This means that g
r
∈ H with 0 < r < n but
this contradicts our statement that n is the smallest positive integer such that
g
n
∈ H unless r = 0. This means that m = nq and h = (g
n
)
q
, we ﬁnish this
proof by saying that any element in H must be an integral power of g
n
hence
H = ¸g
n
¸.
Given a cyclic group G = ¸g¸ then it is possible to determine the order of
any element g
i
∈ G, the following proposition makes this clear.
Proposition 2.11. Given a cyclic group G = ¸g¸ such that [G[ = n then for
any element g
i
∈ G where 0 ≤ i ≤ n −1, then [g
i
[ =
n
m
where m = gcd(i, n).
2.4. CYCLIC GROUPS 27
Proof. Since m = gcd(i, n), i = ms and n = mp. Then,
(g
i
)
n
m
= g
in
m
= g
msn
m
= (g
n
)
s
= e
s
= e
therefore
n
m
divides the order of g
i
. Suppose that (g
i
)
r
= e then g
ir
= e
therefore n must divide ir and so;
n
m
[
i
m
r
but
n
m
and
i
m
are relitively prime so;
n
m
[r
Therefore
n
m
is the smallest power of g
i
which equals the identity, thus [g
i
[ =
n
m
.
Example 2.4.2. Suppose g
i
∈ ¸g¸ and i[ [g[, then gcd(i, [g[) = i and since
[g[ = [¸g¸[ proposition 2.11 shows that [g
i
[ =
|g|
i
.
The next result shows when a given element of a cyclic group generates the
group.
Proposition 2.12. Given a cyclic group G = ¸g¸ where [g[ = n. Then an
element g
i
∈ G generates G if and only if gcd(i, n) = 1
Proof. Using proposition 2.11, [g
i
[ =
n
m
where m = gcd(n, i). In order for g
i
to
generate G it must have order n, this is only the case if m = gcd(n, i) = 1.
28
CHAPTER 2. GROUPS, SUBGROUPS, CYCLIC GROUPS, COSETS
AND LAGRANGE’S THEOREM
2.5 Cosets and Lagrange’s Theorem
Deﬁnition 2.5.1. Given a subgroup H of a group G, the subset
aH = ¦ah [ h ∈ H¦
is called a left coset of H in G.
A similar deﬁnition can be made but instead of multiplying the subgroup
on the left multiplication takes place on the right this leads to what is called a
right coset.
Example 2.5.1. Let G = GL
n
(R) and H = SL
n
(R). Let A ∈ GL
n
(R) such
that det(A) = x then the coset AH is simply the set of all matrices with
determinant x.
Proposition 2.13. Given a subgroup H let the relation a ∼ b hold on a group
G iﬀ a
−1
b ∈ H, then the following propositions are valid.
1. This relation forms an equivalence relation on G.
2. The equivalence classes for this relation are the left cosets of H in G.
This means that a ∼ b iﬀ b ∈ aH.
Proof. (1) Reﬂexivity - since e ∈ H we know that a ∼ a since aa
−1
= e.
Symmetry - If a ∼ b then a
−1
b ∈ H it follows from the properties of a subgroup
that (a
−1
b)
−1
= b
−1
a ∈ H and so b ∼ a. Transitivity - If a ∼ b , a
−1
b ∈ H,
and b ∼ c , b
−1
c ∈ H, then a
−1
bb
−1
c = a
−1
c ∈ H and so a ∼ c. (2) Given any
a ∈ G then, a ∼ b means that there exists some h ∈ H such that a
−1
b = h.
It follows that b = ah hence b ∈ aH. So the equivalence class of a is given by
aH.
Proposition 2.14. Given two distinct cosets aH and bH then [aH[ = [bH[.
2.5. COSETS AND LAGRANGE’S THEOREM 29
Proof. In order to show that distinct cosets have equal cardinality we must
show that it is possible to form a bijective map between them. This is indeed
possible by deﬁning the following map,
f : aH −→ bH
f(ah) = ba
−1
ah = bh
This map is clearly well deﬁned since any element x = ah ∈ aH gets mapped to
some element ba
−1
x = bh ∈ bH.To show that the map is bijective we must show
that it is both surjective and injective. It is surjective since every element bh for
some h ∈ H is the image of ah under f, f(ah) = ba
−1
ah = bh. It is injective
since given two distinct elements ah, ah

∈ aH, the image of these under f
is also distinct. To show this we will assume for the sake of contradiction
that ba
−1
ah = ba
−1
ah

, however by cancelling ba
−1
to a contradiction with our initial statement that ah and ah

where distinct
elements. This proves that distinct cosets are in bijection and hence have equal
cardinality. The fact that H is itself one of its own cosets (eH) means that the
order each coset is equal to the order of the subgroup H.
The previous two propositions allow us to prove an important theorem
about groups, it is known as Lagrange’s theorem. We must ﬁrst introduce
some notation regarding cosets.
Deﬁnition 2.5.2. Given a group G and a subgroup H, we call the number of
distinct cosets of H in G the index of H in G. If there are n distinct cosets we
denote this by [G : H] = n.
Proposition 2.15. Lagrange’s theorem says that the order of any subgroup H
divides the order of the group G.
30
CHAPTER 2. GROUPS, SUBGROUPS, CYCLIC GROUPS, COSETS
AND LAGRANGE’S THEOREM
Proof. Given a group G and a subgroup H the relation deﬁned in proposition
2.13 partitions the group into [G : H] distinct cosets all with [H[ elements (by
proposition 2.14). This means that [G[ = [G : H][H[ from which it follows that
the order of H must divide that of G.
Using Lagrange’s theorem it can be shown that any group G such that
[G[ = p where p is a prime has no subgroups except the trivial group and itself.
It also follows from Lagrange’s theorem that all groups whose order is prime
are cyclic. This is because the order of any element g ∈ G can be deﬁned to
be the order of the subgroup H = ¦g
i
[ i ∈ Z¦ ⊆ G generated by that element.
So an element in a group of prime order p can only possibly have order 1 or
order p. The only element with order 1 is e hence all elements g ∈ G − ¦e¦
have order p and must therefore generate the group.
Chapter 3
Homomorphisms and
Isomorphisms
“Mathematics is concerned only with the enumeration and com-
parison of relations.”
Carl Friedrich Gauss
3.1 Homomorphisms
Deﬁnition 3.1.1. Given two groups G
1
and G
2
, a homomorphism is a map
f : G
1
→ G
2
such that for all a, b ∈ G
1
f(ab) = f(a)f(b)
It should be noted that the multiplication on the left takes place in G
1
whereas
on the right it takes place in G
2
.
31
32 CHAPTER 3. HOMOMORPHISMS AND ISOMORPHISMS
Proposition 3.1. Given a homomorphism f : G
1
→ G
2
, if e is the identity
in G
1
then f(e) = e

where e

is the identity in G
2
.
Proof. f(a) = f(ea) = f(e)f(a) multiplying by f(a)
−1
on the right we arrive
at e

= f(e).
Proposition 3.2. Given a homomorphism f : G
1
→ G
2
, for any a ∈ G
1
,
f(a
−1
) = f(a)
−1
.
Proof. The following equation shows that f(a
−1
) = f(a)
−1
, e

= f(e) =
f(aa
−1
) = f(a)f(a
−1
).
In order to study homomorphisms in more detail there are two important
concepts that must be understood. These are the image of a homomorphism
and its kernel.
Deﬁnition 3.1.2. The image of a homomorphism is the set of elements a ∈ G
2
such that a = f(x) for some x ∈ G
1
. We denote the image of a homomorphism
f by Im(f). This can be more formally deﬁned in set notation,
Im(f) = ¦a ∈ G
2
[ a = f(x) for some x ∈ G
1
¦
Deﬁnition 3.1.3. The kernel of a homomorphism is the set of elements b ∈ G
1
such that f(b) = e

, where e

is the identity in G
2
. The kernel of a homomor-
phism f is denoted by Ker(f). In set notation this deﬁnition is,
Ker(f) = ¦b ∈ G
1
[ f(b) = e

¦
Proposition 3.3. The kernel of a homomorphism f : G
1
→ G
2
is a subgroup
of G
1
.
3.1. HOMOMORPHISMS 33
Proof. Proposition 3.1 shows us that f(e) = e

so e ∈ Ker(f). If a, b ∈ Ker(f)
then f(a) = e

and f(b) = e

this means that f(ab) = f(a)f(b) = e

and
so the kernel is closed. If a ∈ Ker(f) then f(a) = e, using proposition 3.2
f(a
−1
) = f(a)
−1
= e
−1
= e therefore the kernel contains inverses. The kernel
satisﬁes all the properties necessary for a subgroup.
In order to understand what a homomorphism is more clearly I will outline
an extensive example that should shed light on the concepts discussed above.
Example 3.1.1. This example will discuss the following map,
S
n
f
−→ GL
n
(R)
Det
−−→ (R, )
The group GL
n
(R) has already been discussed, but the two other groups will
need some explanation. The group (R, ) is the real numbers under multipli-
cation, it is simple to show that this group satisﬁes all the necessary properties
of a group. The group S
n
has as its underlying set all bijections σ from the set
¦1, 2, 3, . . . , n¦ to itself.
S
n
= ¦σ [ σ : ¦1, 2, . . . , n¦ → ¦1, 2, . . . , n¦, σ is a bijection¦
The group operation is the composition of bijective maps, this operation can be
shown to be closed since this composition is itself bijective. The fact that these
maps are bijective means that there exists an inverse map and the identity of
the set is the map which sends 1 → 1, 2 → 2, . . . , n → n. The ﬁrst part of
this composite map is the map,
f : S
n
→ GL
n
(R)
34 CHAPTER 3. HOMOMORPHISMS AND ISOMORPHISMS
σ → (a
ij
) =
_
¸
_
¸
_
1 : σ(j) = i
0 : otherwise
We must show that this map is well deﬁned, this means it must take an ele-
ment from the domain to the codomain. The codomain is the set of invertible
matrices, these are matrices with a non-zero determinant. All the matrices
possibly deﬁned by the map have a single non-zero entry on each row or col-
umn with a value of one, this is because σ(j) can only result in one value i (σ
is a bijection). So any matrix of the deﬁned form can be constructed by the
interchanging of rows/columns of the identity matrix. The interchanging of
rows/columns simply multiplies the determinant by −1 hence any matrix re-
sulting from the deﬁnition of the map has determinant ±1 and so is in GL
n
(R).
We must also show that the map satisﬁes the properties of a homomorphism,
given σ, τ ∈ S
n
such that f(σ) = (a
ij
) and f(τ) = (b
ij
) then,
f(σ ◦ τ) = f(σ)f(τ) = (a
ij
)(b
ij
) = (c
ij
) = (

k
a
ik
b
kj
)
The sum

k
a
ik
b
kj
which gives the ij
th
entry of the product of the matrices
(a
ij
) and (b
ij
) takes a value of one when σ(k) = i and τ(j) = k for some k.
This is precisely the condition for (σ ◦ τ)(j) = i therefor the product f(σ)f(τ)
is equal to f(σ ◦ τ) and so the map is a homomorphism. The image of this
homomorphism is not the whole of the codomain it is only the set of matrices
constructed by interchanging the rows/columns of the identity matrix, we call
these permutation matrices. The kernel of the homomorphism contains only
the identity permutation which is mapped to the identity matrix.
The second part of the composite map is the map,
Det : GL
n
(R) → (R, )
3.1. HOMOMORPHISMS 35
A → Det(A)
This map is well deﬁned since every matrix in GL
n
(R) has associated to it
a determinant which is in R and there is a well-deﬁned way of arriving at
this value. We must also show that this map satisﬁes the properties of a
homomorphism, given A, B ∈ GL
n
(R) such that Det(A) = a and Det(B) = b
then,
Det(AB) = Det(A)Det(B)
This is a relatively well known fact about the determinants of matrices and so
I will not prove it. This means that the Det map is a homomorphism. The
image of Det is the whole of R since we can get a matrix with a determinant
of any x ∈ R by simply multiplying the identity matrix by x. The kernel
of the homomorphism is the set of all matrices with determinant 1, this is a
very special set of matrices that represent all distance and angle preserving
transformations of space.
We have shown that both parts of the composite map are homomorphisms
themselves it remains to show that the composition Det ◦ f is itself a homo-
morphism. Given two homomorphisms h
1
: G
1
→ G
2
and h
2
: G
2
→ G
2
we
need to show that h
2
◦ h
1
is also a homomorphism. Given x, y ∈ G
1
(h
2
◦ h
1
)(xy) = h
2
(h
1
(xy))
= h
2
(h
1
(x)h
1
(y))
= h
2
(h
1
(x))h
2
(h
1
(y))
= (h
2
◦ h
1
)(x)(h
2
◦ h
1
)(y)
This means that our composite map of two homomorphisms is itself a homo-
morphism. It has as its image ¦±1¦ and its kernel is the set of all permutations
36 CHAPTER 3. HOMOMORPHISMS AND ISOMORPHISMS
whose matrix has determinant 1. We call the kernel of this homomorphism the
alternating group on n letters and it is denoted by A
n
.
3.2 Isomorphisms
Deﬁnition 3.2.1. Given two groups G
1
and G
2
an isomorphism f is a bijective
map,
f : G
1
→ G
2
such that for all a, b ∈ G
1
f(ab) = f(a)f(b).
The only diﬀerence between a homomorphism and an isomorphism is the
bijective condition. This condition means that the image of an isomorphism
is the entire codomain and the kernel consists only of the identity element in
the domain. The bijective condition of an isomorphism means that both the
codomain and the domain must have equal order. Also since any bijective map
has an inverse map which is also bijective the inverse of any isomorphism is
itself an isomorphism.
Proposition 3.4. Given an isomorphism;
f : G
1
→ G
2
if G
1
is abelian then so is G
2
.
Proof. For any elements g

1
, g

2
∈ G
2
there exist elements g
1
, g
2
∈ G
1
such that
f(g
1
) = g

1
and f(g
2
) = g

2
. Therefore,
g

1
g

2
= f(g
1
)f(g
2
) = f(g
1
g
2
) = f(g
2
g
1
) = f(g
2
)f(g
1
) = g

2
g

1
3.2. ISOMORPHISMS 37
Proposition 3.5. Given a cyclic group C such that [C[ = ∞, then C is
isomorphic to Z.
Proof. Since [C[ = ∞ there exists an element c ∈ C such that ¸c¸ = C. Deﬁne
the following map;
f : Z → C
n → c
n
Then,
f(m+n) = c
m+n
= c
m
c
n
= f(m)f(n)
so f is a homomorphism. It must now be shown that f is bijective, let m, n ∈ Z
such that m ,= n. Assuming that m > n, it is necessary to show that c
m
,= c
n
.
m
= c
n
this implies that c
m−n
= e where
m−n > 0, but this contradicts the fact that c has inﬁnite order and therefore
c
m
,= c
n
,this shows that the map f is one-to-one. The map is clearly onto since
any element c
n
∈ C is the image of n ∈ Z.
Proposition 3.6. Given a cyclic group C such that [C[ = n, then C is iso-
morphic to Z/ nZ that is the the group of integers modulo n.
Proof. Since C is cyclic of order n there exists some element c that generates C,
C = ¸c¸ = ¦c
0
, c
1
, . . . , c
n−1
¦. The group Z/ nZ = ¦[0], [1], . . . , [n −1]¦ consists
of the n equivalence classes modulo n. The following map is clearly a bijection;
f : C →
Z
_
nZ
c
a
→ [a], for a = 0, 1, . . . , n −1
38 CHAPTER 3. HOMOMORPHISMS AND ISOMORPHISMS
it remains to show that f is a homomorphism.
f(c
a
)f(c
b
) = [a] + [b]
= [a +b]
= f(c
a+b
)
= f(c
a
c
b
)
Chapter 4
Normal subgroups and Quotient
Groups
Given a group G and a subgroup H in G then the following deﬁnes the set of
left cosets of H in G;
C
l
= ¦aH : a ∈ G¦
and the set of right cosets of H in G are deﬁned as;
C
r
= ¦Ha : a ∈ G¦
It is not always the case that the left cosets are equal to the right cosets, that is
aH = Ha for all a ∈ G, but when this is the case it allows for the construction
of a new type of group.
Deﬁnition 4.0.2. Given a subgroup H of a group G, then H is called a normal
subgroup if aH = Ha for all a ∈ G
Proposition 4.1. Every subgroup H of an abelian group G is normal.
39
40 CHAPTER 4. NORMAL SUBGROUPS AND QUOTIENT GROUPS
Proof. Since ah = ha for all a, h ∈ G it is clearly the case that aH = Ha for
any subgroup H in G.
Example 4.0.1. The group S
n
which consists of all bijective maps,
σ : ¦1, 2, . . . , n¦ → ¦1, 2, . . . , n¦
under composition can be represented in cycle notation in the following way.
The element,
(a
1
, . . . , a
n
) where a
i
∈ ¦1, 2, . . . , n¦ for all i and each a
i
is distinct,
is deﬁned to be the bijective map σ such that σ(a
i
) = a
i+1
and a
n+1
= a
1
.
The element (123) ∈ S
3
is deﬁned by, σ(1) = 2, σ(2) = 3, σ(3) = 1. The
identity permutation deﬁned by σ(1) = 1, σ(2) = 2, σ(3) = 3 is represented
by ().
Let G = S
3
and let H = ¦(), (12)¦, since H(123) = ¦(123), (23)¦ and
(123)H = ¦(123), (13)¦ the subgroup H is clearly not a normal subgroup.
Deﬁnition 4.0.3. Given a group G and a normal subgroup H the following
statements are equivalent;
1. The subgroup H is normal in G
2. gHg
−1
⊂ H for all g ∈ G
3. gHg
−1
= H for all g ∈ G
Given a group G and some normal subgroup H it is possible to form a
group G/ H which has as its underlying set the set of all cosets of H in G, and
as its group operation aHbH = abH.
41
The multiplication on this group must be well deﬁned, this means that
the product of two cosets must not depend on the coset representative. Let
aH = bH and cH = dH then it must be shown that,
(aH)(cH) = acH = bdH = (bH)(dH)
If aH = bH and cH = dH then a = bh
1
and c = dh
2
for some h
1
, h
2
∈ H,
therefore;
acH = bh
1
dh
2
H
= bh
1
dH (xH = H for all x ∈ H)
= bh
1
Hd (xH = Hx since H is normal)
= bHd
= bdH
The identity in the group is eH = H and the inverse of aH is a
−1
H.
Example 4.0.2. Let G = Z and let H = 2Z, H is a normal subgroup since G
is abelian. The cosets of H in G are;
0 + 2Z = ¦0, ±2, ±4, . . .¦ = Even Integers
1 + 2Z = ¦±1, ±3, . . .¦ = Odd Integers
The multiplication table for Z/ 2Z is;
+ 0 + 2Z 1 + 2Z
0 + 2Z 0 + 2Z 1 + 2Z
1 + 2Z 1 + 2Z 0 + 2Z
42 CHAPTER 4. NORMAL SUBGROUPS AND QUOTIENT GROUPS
It is possible to give an upper bound on the orders of the elements in a
quotient group, this is shown in the next proposition.
Proposition 4.2. Given a quotient group G/ H the order of aH ∈ G/ H
divides the order of a ∈ G and therefore [aH[ ≤ [a[.
Proof. The following homomorphism is deﬁned;
f : G →
G
_
H
g → gH
Suppose the element a ∈ G has order n then;
f(a
n
) = f(a)
n
= (aH)
n
= a
n
H
n
= eH
= H
Therefore [aH[ divides [a[ and [aK[ ≤ [a[
The next proposition shows that given any group homomorphism the kernel
is a normal subgroup.
Proposition 4.3. Given a group homomorphism;
f : G
1
→ G
2
then K = Ker(f) is normal in G
1
.
43
Proof. In order to prove that K is a normal subgroup of G we must show that
gKg
−1
⊆ K for all g ∈ G. Let g ∈ G and k ∈ K be arbitrary elements;
f(gkg
−1
) = f(g)f(k)f(g
−1
)
= f(g)ef(g
−1
)
= f(g)f(g
−1
)
= f(g)f(g)
−1
= e
Therefore gKg
−1
⊆ K for all g ∈ G.
Since the kernel of a homomorphism is a normal subgroup of the domain it
is possible to form a quotient group of the domain and the kernel. The following
result, known as the ﬁrst isomorphism theorem, shows that this quotient group
is isomorphic to the image of the homomorphism.
Proposition 4.4. Given the following group homomorphism;
f : G
1
→ G
2
where K = Ker(f), then f(G
1
) = Im(f) is isomorphic to G
1
/ K.
Proof. Deﬁne the following map;
τ :
G
1
_
K
→ f(G
1
)
gK → f(g)
It is necessary to show that this map is well deﬁned and does not depend on the
44 CHAPTER 4. NORMAL SUBGROUPS AND QUOTIENT GROUPS
choice of coset representative. Let g
1
K = g
2
K then for some k ∈ K, g
1
k = g
2
;
τ(g
1
K) = f(g
1
) = f(g
1
)f(k) = f(g
1
k) = f(g
2
) = τ(g
2
K),
this shows that the map τ does not depend on the coset representative. It
is clear that τ is onto. To show that the map is one-to-one, suppose that
τ(g
1
K) = τ(g
2
K). This means that f(g
1
) = f(g
2
) and so f(g
−1
1
g
2
) = e
therefore g
−1
1
g
2
∈ K and g
−1
1
g
2
K = k =⇒ g
2
K = g
1
K.
It remains to show that τ is a homomorphism;
τ(aKbK) = τ(abK)
= f(ab)
= f(a)f(b)
= τ(aK)τ(bK)
Part II
The Isomorphism Problem for
Finitely Generated Abelian
Groups
45
Chapter 5
Classiﬁcation of Finite Abelian
Groups
5.1 Sylow’s Theorems
The Sylow Theorems provide a partial converse to Lagrange’s Theorem. In
Lagrange’s Theorem a relationship is shown between the order of a subgroup
and the order of the group which contains the given subgroup. This theorem
says that the order of any subgroup must divide the order of the group from
which it comes, however it does not say that there exists a subgroup whose
order divides that of the group for every possible divisor of the groups order.
The Sylow Theorems partially make such a claim. The main result of the
Sylow Theorems is that for every prime power which divides the order of the
group there exists a subgroup with order equal to the prime power divisor. The
following is the formal statement of this result given without proof.
Theorem 5.1 (Sylows ﬁrst Theorem). Given a ﬁnite abelian group G such
that,
[G[ = p
k
a,
47
48 CHAPTER 5. CLASSIFICATION OF FINITE ABELIAN GROUPS
where p is a prime and p a. There exists a subgroup H of G such that,
[H[ = p
k
such a subgroup is called a Sylow p-subgroup.
The Sylow Theorems go on to give certain information about the number of
Sylow p-subgroups for a given p in any group, abelian or not. A very important
result of the Sylow Theorems for our investigation of ﬁnite abelian groups is
the following;
Theorem 5.2 (Sylows second Theorem). All Sylow p-subgroups, for a given
p, in a ﬁnite group G are conjugate in G
This result means that if a group G contains Sylow p-subgroups S
1
, . . . S
n
then S
i
= gS
j
g
−1
for some g ∈ G. This result can be used to give us informa-
tion regarding the number of Sylow p-subgroups in a ﬁnite abelian group.
Proposition 5.1. Given a ﬁnite abelian group G such that [G[ = p
k
a and p a
then there exists only one Sylow p-subgroup.
Proof. By Sylows ﬁrst Theorem if [G[ = p
k
a and p a then there exists a
subgroup H such that [H[ = p
k
. To show that there is only one such subgroup
we make use of the fact that all subgroups of an abelian group are normal.
This means that our subgroup H is normal in G and is therefore equal to
its conjugates, since by deﬁnition a subgroup is normal if gHg
−1
= H for all
g ∈ G. Using the second Sylow Theorem it is clear that there can only be a
single Sylow p-group for a given p in an abelian group.
Sylows ﬁrst Theorem and proposition 5.1 allow us to make the following
5.2. THE DECOMPOSITION OF FINITE ABELIAN GROUPS 49
Proposition 5.2. Given a ﬁnite abelian group G such that,
[G[ = p
k1
1
p
k2
2
. . . p
kn
n
,
where each p
i
is prime and k
i
∈ N then there exists a single sylow p-subgroup
for each p
i
.
Proof. It is a well-known result that any integer can be uniquely factored into
the product of prime powers. The proof then follows from proposition 5.1.
Simply let,
a = p
k1
1
. . . p
ki−1
i−1
p
ki+1
i+1
. . . p
kn
n
for each p
i
. Cleary p
i
a since all the p
i
are prime.
The above results allow us to take a ﬁrst step towards a classiﬁcation of
ﬁnite abelian groups.
5.2 The decomposition of Finite Abelian Groups
In this section it will be shown that any ﬁnite abelian group can be decomposed
into the interior direct sum of ﬁnitely many cyclic groups. There are two
cannonical decompositions for a ﬁnite abelian group. The ﬁrst is the interior
direct sum of ﬁnitely many cyclic groups each of which has prime power order;
G =
Z
_
p
ki
i
Z
⊕. . . ⊕
Z
_
p
kn
n
Z
(5.1)
where the k
i
∈ N and the p
i
are not neseccerely distinct primes. The second
cannonical form which can be formed from the ﬁrst is as follows;
G =
Z
_
a
1
Z
⊕. . . ⊕
Z
_
a
n
Z
(5.2)
50 CHAPTER 5. CLASSIFICATION OF FINITE ABELIAN GROUPS
where a
i
[ a
i+1
.
Proposition 5.3. Given a ﬁnite abelian group G such that,
[G[ = p
k1
1
p
k2
2
. . . p
kn
n
,
where each p
i
is prime and k
i
∈ N. G is isomorphic to the interior direct sum
of its Sylow p-subgroups S
1
, . . . , S
n
.
Proof. Proposition 5.2 tells us that there exists a Sylow p-subgroup S
i
with
order p
ki
i
for every i. It is then simply a matter of showing that these subgroups
satisfy the properties of an interior direct sum (deﬁnition 2.3.3). Since each
S
i
is a subgroup of an abelian group they are necessarily normal in G. The
intersection of two Sylow p-subgroups for diﬀerent p is trivial since a Sylow
p-subgroup can only contain elements of order a power of p (using Lagrange’s
Theorem). Therefore two Sylow p-subgroups for diﬀerent p cannot contain
elements of equal order and their intersection must be trivial. The order of G
is clearly equal to the product of the orders of the subgroups S
1
, . . . , S
n
. G is
therefore isomorphic to the interior direct sum of its Sylow p-subgroups.
We have now shown that a ﬁnite abelian group can be decomposed into the
direct sum of its Sylow p-subgroups, but these are not necessarily cyclic and
so we have not reached the required decomposition into cyclic groups of prime
power order. In order to reach this decomposition we must now show that
any group of prime power order can be decomposed into the interior direct
sum of cyclic groups of prime power order. This will enable us to further
decompose the Sylow p-subgroups in the decomposition achieved above into
cyclic groups of prime power order, we will then have proved the existence of
the ﬁrst canonical form.
5.2. THE DECOMPOSITION OF FINITE ABELIAN GROUPS 51
Proposition 5.4. Given an abelian group G such that [G[ = p
n
where p is a
prime and k ∈ N . Let a be an element with maximal order in G. Then,
G

= ¸a¸ ⊕K
for some subgroup K.
Proof. We will argue by induction on n. If n = 1 then [G[ = p and by Lagrange
G is cyclic with order p. We assume the proposition is true for all groups of
order p
k
where k < n.
Let a ∈ G have maximal order p
m
then for any x ∈ G this implies that
x
p
m
= e. If m = n then a generates G and the theorem is proved we simply
let K = ¦e¦ and G

= ¸a¸ ⊕¦e¦. So in what follows we will assume m < n.
Let b ∈ G be an element with smallest possible order not contained in ¸a¸.
We will now show that ¸a¸ ∩ ¸b¸ = ¦e¦.
For all x ∈ G, [x
α
[ =
|x|
α
for any α such that α [ [x[ (proposition 2.11).
Therefore [b
p
[ =
|b|
p
and so b
p
has smaller order than b. This means that
b
p
∈ ¸a¸ since b was chosen to be an element of smallest order outside ¸a¸.
Therefore b
p
= a
i
for some i and so [a
i
[ ≤ p
m−1
since (a
i
)
p
m−1
= (b
p
)
p
m−1
=
b
pp
m−1
= b
p
m
= e. Therefore a
i
does not generate ¸a¸ because only an element
with order p
m
would. If a
i
did generate ¸a¸ its exponent would have to be
relatively prime to the order of ¸a¸ (proposition 2.12), i and p
m
must therefore
have a common divisor. Since p is the only possible divisor of p
m
, i = pj for
some j and therefore b
p
= a
i
= a
pj
.
Let c = a
−j
b, c ,∈ ¸a¸ otherwise b ∈ ¸a¸ and we chose b so that this was not
the case, c
p
= a
−pj
b
p
= b
−p
b
p
= e so [c[ ≤ p but no element in G can have
order less than p so [c[ = p. This means that [b[ = p since b was chosen to be
an element with smallest order outside ¸a¸.
52 CHAPTER 5. CLASSIFICATION OF FINITE ABELIAN GROUPS
We can now conclude that ¸a¸∩¸b¸ = ¦e¦ because if there were to exist some
element in the intersection then every element of ¸b¸ must also be contained in
the intersection including b itself, but b ,∈ ¸a¸.
Let
¯
G = G/ ¸b¸ and let ¯ x = x¸b¸. Suppose [¯ a[ < [a[ = p
m
then (¯ a)
p
m−1
= ¯ e,
(a¸b¸)
p
m−1
= a
p
m−1
¸b¸ = ¸b¸ and so a
p
m−1
∈ ¸b¸ and since it is also a power
of a it must be in ¸a¸ ∩ ¸b¸ = ¦e¦. This contridicts the fact that [a[ = p
m
and so [¯ a[ ≥ [a[ = p
m
but no element in the quotient group
¯
G can have order
larger than the element with the largest order in G (proposition 4.2). Therefore
[¯ a[ = p
m
and ¯ a must have maximal order in
¯
G. [
¯
G[ =
|G|
b
=
p
n
p
= p
n−1
and
using our induction hypothesis,
¯
G

=
¯
¸a¸ ⊕
¯
K
We can form the following homomorphism from G to
¯
G,
ψ : G →
¯
G,
g → g¸b¸,
and deﬁne K = ψ
−1
(
¯
K). Suppose that x ∈ ¸a¸ ∩K then ¯ x =
¯
¸a¸ ∩
¯
K = ¯ e =
¯
¸b¸
(using our induction hypothesis) which implies that x ∈ ¸b¸ as well as x ∈ ¸a¸
by assumption, so ¸a¸ ∩ K = ¦e¦. Both subgroups are normal in G since G is
abelian and all that is left to show is that [¸a¸K[ = [G[ = p
n
.
The order of ¸a¸K is given by [¸a¸K[ = [¸a¸[[K[ = p
m
[K[, [
¯
K[ =
|K|
|b|
and
so [K[ = [¸b¸[[
¯
K[ = p
p
n−1
p
m
= pp
n−1−m
= p
n−m
therefore [¸a¸[[K[ = p
m
p
n−m
=
p
n
. We can now conclude that G

= ¸a¸⊕K, the result follows by induction.
The following is an example of this prime power decomposition.
Example 5.2.1. let G be a ﬁnite abelian group such that [G[ = 252 = 2
2
3
2
7
1
.
5.2. THE DECOMPOSITION OF FINITE ABELIAN GROUPS 53
Using proposition 5.2, G

= S
1
⊕S
2
⊕S
3
where,
[S
1
[ = 2
2
,
[S
2
[ = 3
2
,
[S
3
[ = 7
1
.
We will begin by using proposition 5.3 to decompose S
1
into an interior direct
product of cyclic subgroups. There are two possibilities for the order of the
element with largest order in S
1
, it could either have order 2
2
or order 2
1
. In
the ﬁrst case S
1

= Z/ 4Z . In the second S
1

= Z/ 2Z ⊕K where [K[ = 2 and
therefore K

= Z/ 2Z and so S
1

= Z/ 2Z ⊕Z/ 2Z.
So far we have,
G

=
Z
_
4Z
⊕S
2
⊕S
3
or
G

=
Z
_
2Z

Z
_
2Z
⊕S
2
⊕S
3
We move on to S
2
, again there are two possibilities for the order of the element
with largest order, it could either have order 3
2
or order 3
1
. In the ﬁrst case
S
2

= Z/ 9Z. In the second S
2

= Z/ 3Z ⊕ K where [K[ = 3 and therefore
K

= Z/ 3Z and so S
1

= Z/ 3Z ⊕Z/ 3Z.
We now have,
G

=
Z
_
4Z

Z
_
9Z
⊕S
3
or
G

=
Z
_
2Z

Z
_
2Z

Z
_
9Z
⊕S
3
or
G

=
Z
_
2Z

Z
_
2Z

Z
_
3Z

Z
_
3Z
⊕S
3
54 CHAPTER 5. CLASSIFICATION OF FINITE ABELIAN GROUPS
or
G

=
Z
_
4Z

Z
_
3Z
⊕⊕
Z
_
3Z
⊕S
3
The ﬁnal Sylow subgroup S
3
can only have elements of order 7 or 1 and so
S
3

= Z/ 7Z. So ﬁnally we can conclude that there are four abelian groups of
order 252 upto isomorphism. They are,
G

=
Z
_
4Z

Z
_
9Z

Z
_
7Z
or
G

=
Z
_
2Z

Z
_
2Z

Z
_
9Z

Z
_
7Z
or
G

=
Z
_
2Z

Z
_
2Z

Z
_
3Z

Z
_
3Z

Z
_
7Z
or
G

=
Z
_
4Z

Z
_
3Z

Z
_
3Z

Z
_
7Z
In order to show the existence of the second canonical form we will need to
use a result known as the Chinese remainder theorem.
Theorem 5.3 (Chinese Remainder Theorem). Given a cyclic group Z/ mnZ
if gcd(m, n) = 1 then,
Z
_
mnZ

=
Z
_
mZ

Z
_
nZ
Proof. We will show that the following map satisﬁes the properties of an iso-
morphism,
f :
Z
_
mnZ

Z
_
mZ

Z
_
nZ
[a]
mn
→ ([a]
m
, [a]
n
)
5.2. THE DECOMPOSITION OF FINITE ABELIAN GROUPS 55
The orders of the two groups are equal since [Z/ mZ⊕Z/ nZ[ = [Z/ mZ[[Z/ nZ[ =
mn = [Z/ mnZ[. Due to this fact all that it is necessary to show for the map
to be an isomorphism is that the mapping is one-to-one.
We must show that if f(x) = f(y) then x = y, if the image of x and y are
equal then this means that x −y = k
1
m (x and y are in the same congruence
class modulo m) and x − y = k
2
n (x and y are in the same congruence class
modulo n). Since gcd(m, n) = 1, x −y = k
3
mn and so x and y must be in the
same congruence class modulo mn and therefore x = y.
Using this result we can collect together cyclic groups whose orders are
relatively prime into a single cyclic group. Starting from the prime power
decomposition of a ﬁnite abelian group G we can collect together cyclic groups
whose orders are relatively prime in such a way as to reach the second canonical
form previously outlined. That is,
G =
Z
_
a
1
Z
⊕. . . ⊕
Z
_
a
n
Z
where a
i
[ a
i+1
. We start by writing G as a direct product of cyclic groups
with prime power order,
G =
Z
_
p
ki
i
Z
⊕. . . ⊕
Z
_
p
kn
n
Z
we can arrange the cyclic factors so that p
1
≤ p
2
≤ . . . ≤ p
n
, using the
Chinese remainder theorem we can collect together the cyclic factors with the
highest power for each prime in the decomposition and then move onto the
second highest power until all the cyclic factors have been collected together.
This will lead to the second canonical decomposition as is shown in the next
example.
Example 5.2.2. We saw before that there exist four abelian groups G of order
56 CHAPTER 5. CLASSIFICATION OF FINITE ABELIAN GROUPS
252 we will convert each into the second canonical form. The ﬁrst isomorphism
class is,
G

=
Z
_
4Z

Z
_
9Z

Z
_
7Z

=
Z
_
252Z
The second is,
G

=
Z
_
2Z

Z
_
2Z

Z
_
9Z

Z
_
7Z

=
Z
_
2Z

Z
_
126Z
the third,
G

=
Z
_
2Z

Z
_
2Z

Z
_
3Z

Z
_
3Z

Z
_
7Z

=
Z
_
6Z

Z
_
42Z
and the last,
G

=
Z
_
4Z

Z
_
3Z

Z
_
3Z

Z
_
7Z

=
Z
_
3Z

Z
_
84Z
Chapter 6
Generators and Relations
6.1 Generators
An abelian group G is ﬁnitely generated if there exists a ﬁnite set,
S = ¦g
1
, . . . , g
n
¦, g
i
∈ G for i = 1, . . . , n, (6.1)
such that any arbitrary element x ∈ G can be expressed as,
x = k
i
g
i
+. . . +k
n
g
n
, k
i
∈ Z for i = 1, . . . , n. (6.2)
Given a generating set S for a group G the rank of G is deﬁned to be the
cardinality of S, by deﬁnition the trivial group has generating set S = ¦¦ and
so has rank 0. If a group G is generated by the set S = ¦g
1
, . . . , g
n
¦ the
following notation is sometimes used;
G = ¸g
1
, . . . , g
n
¸
There are three elementary transformations that can be applied to a gen-
57
58 CHAPTER 6. GENERATORS AND RELATIONS
erating set S for an abelian group G.
1. Reordering of generators
If g
i
is swapped with g
j
;
S = ¦g
1
, . . . , g
i
, . . . , g
j
, . . . , g
n
¦ → S

= ¦g
1
, . . . , g
j
, . . . , g
i
, . . . , g
n
¦
any x ∈ G can now be expressed using the new generating set S

as,
x = k
1
g
1
+. . . +k
j
g
j
+. . . +k
i
g
i
+. . . +k
n
g
n
2. Multiplying a generator by −1
If g
i
is multiplied by −1;
S = ¦g
1
, . . . , g
i
, . . . , g
n
¦ → S

= ¦g
1
, . . . , −g
i
, . . . , g
n
¦
any x ∈ G can now be expressed using the new generating set S

as,
x = k
1
g
1
+. . . + (−k
i
)(−g
i
) +. . . +k
n
g
n
3. Adding a multiple of one generator to another
If b times g
i
j
;
S = ¦g
1
, . . . , g
i
, . . . , g
j
, . . . , g
n
¦ → S

= ¦g
1
, . . . , g
i
, . . . , g
j
+bg
i
, . . . , g
n
¦
any x ∈ G can now be expressed using the new generating set S

as,
x = k
1
g
1
+. . . + (k
i
−k
j
b)g
i
+. . . +k
j
(g
j
+bg
i
) +. . . +k
n
g
n
6.1. GENERATORS 59
These three transformations to the generating set S produce a new set S

which
is also a generating set for G. The transformation of the generating set leads to
a corresponding transformation of the coeﬃcients for a general element x ∈ G,
this will be made clearer shortly. It should be noted that there exists an inverse
transformation for each elementary transformation and that it is possible to
compose transformations.
It is possible to use the tools of linear algebra in order to transform a
generating set. Given a generating set, as in (6.1), the following vector can be
formed;
g = (g
1
, . . . , g
n
)
T
(6.3)
It is possible to apply the elementary transformations 1, 2 and 3 by left multi-
plication by certain elementary n n matrices.
1. Reordering of generators
Let E
λ(i,j)
be the matrix obtained by swapping the i
th
and j
th
rows
(i < j) of the n n identity matrix;
E
λ(i,j)
g = (g
1
, . . . , g
j
, . . . , g
i
, . . . , g
n
)
T
(6.4)
2. Multiplying a generator by −1
Let E
φ(i)
be the matrix obtained by multiplying the i
th
row of the n n
identity matrix;
E
φ(i)
g = (g
1
, . . . , −g
i
, . . . , g
n
)
T
(6.5)
3. Adding a multiple of one generator to another
Let E
τ(i,j,b)
be the matrix obtained by adding b ∈ Z times the i
th
row to
60 CHAPTER 6. GENERATORS AND RELATIONS
the j
th
row of the n n identity matrix;
E
τ(i,j,b)
g = (g
1
, . . . , g
i
, . . . , g
j
+bg
i
, . . . , g
n
)
T
(6.6)
The determinant of each of these matrices is ±1, this means that they all have
inverses and that the inverse contains only integers.
E
λ(i,j)
E
λ(j,i)
= I, E
φ(i)
E
φ(i)
= I, E
τ(i,j,b)
E
τ(i,j,−b)
= I
Any product of these elementary matrices has a determinant of ±1 and is itself
a legitimate transformation of the generating set g, the following proposition
makes this clear.
Proposition 6.1. Given an abelian group G with generating set g, as in (6.1),
then Pg is also a generating set for G where P is a product of the elementary
matrices E
λ(i,j)
, E
φ(i)
and E
τ(i,j,b)
.
Proof. Any x ∈ G can be expressed as,
x = kg
where k = (k
1
, . . . , k
n
), k
i
∈ Z for i = 1, . . . , n. Using the fact that P has an
inverse whose entries are all integers this is equivalent to,
x = (kP
−1
)(Pg) = mg’
where g’ = Pg and m = kP
−1
= (m
1
, . . . , m
n
), m
i
∈ Z for i = 1, . . . , n.
Therefore any element x ∈ G can expressed in terms of the generating set
Pg.
6.2. RELATIONS 61
6.2 Relations
Given a generating set g for an abelian group G, a relation is any linear com-
bination of generators that is equal to the identity.
kg = k
1
g
1
+. . . +k
n
g
n
= e (6.7)
It is clear that every generating set satisﬁes at least one relation that is the
trivial relation;
0g = 0g
1
+. . . + 0g
n
= ex (6.8)
It is however possible that a given group satisﬁes non-trivial relations, in fact
this is the case for most groups. If a group satisﬁes only the trivial relation
(6.8) then it is known as a free group.
Given a free group F, freely generated by S = ¦f
1
, . . . , f
n
¦, it is possible to
form the following map;
φ : F →Z
n
k
1
f
1
+. . . +k
n
f
n
→ (k
1
, . . . , k
n
)
Given two elements x, y ∈ F where,
x = k
1
f
1
+. . . k
n
f
n
y = k

1
f
1
+. . . k

n
f
n
62 CHAPTER 6. GENERATORS AND RELATIONS
then,
φ(x +y) = φ(k
1
f
1
+. . . k
n
f
n
+k

1
f
1
+. . . k

n
f
n
)
= φ((k
1
+k

1
)f
1
+. . . (k
n
+k

n
)f
n
)
= ((k
1
+k

1
), . . . , (k
n
+k

n
))
= (k
1
, . . . , k
n
) + (k

1
, . . . , k

n
)
= φ(x) +φ(y)
and so φ is a homomorphism. This homomorphism is also bijective as will now
be shown;
φ(x) = φ(y) =⇒ (k
1
, . . . , k
n
) = (k

1
, . . . , k

n
)
=⇒ (k
1
, . . . , k
n
) −(k

1
, . . . , k

n
) = (0, . . . , 0)
=⇒ ((k
1
−k

1
), . . . , (k
n
−k

n
)) = (0, . . . , 0)
=⇒ k
i
−k

i
= 0 for i = 1, . . . n
=⇒ k
i
= k

i
for i = 1, . . . n
=⇒ x = y
The above chain of implications shows that φ is a one-to-one map, the homo-
morphism φ is also clearly onto. Therefore φ is an isomorphism and we can
conclude that,
F

= Z
n
(6.9)
where F is a free group generated by ¦f
1
, . . . , f
n
¦.
Chapter 7
Group Presentations
Given an abelian group G with generating set S = ¦g
1
, . . . , g
n
¦ and a free
group F

= Z
n
. The following homomorphism can be formed,
τ : Z
n
→ G (7.1)
(k
1
, . . . , k
n
) → k
1
g
1
+. . . +k
n
g
n
This homomorphism has the whole of G as its image, since S is a generating set
for G, and so using the ﬁrst isomorphism theorem (proposition 4.4) G

= Z
n
/ K
where K = Ker(τ).
The kernel K of this homomorphism is in one-to-one correspondence with
all relations satisﬁed by the generators of G. The subgroup K of Z
n
has inﬁnite
order since if x ∈ K then so is ax for a ∈ Z. The following result shows that any
subgroup of a ﬁnitely generated free abelian group is itself a ﬁnitely generated
free abelian group.
Proposition 7.1. Let F be a ﬁnitely generated free abelian group of rank n
then any subgroup R of F is also a ﬁnitely generated free abelian group of at
most rank n.
63
64 CHAPTER 7. GROUP PRESENTATIONS
Proof. Let F be freely generated by ¦f
1
, . . . , f
n
¦. If n = 1 then F

= Z and
any subgroup is either itself inﬁnite cyclic and so has rank 1 or is the trivial
subgroup and so has rank 0 (proposition 2.7). We will now argue by induction,
our base case is proved and we will assume the result holds for all ﬁnitely
generated free abelian groups of rank n − 1 or less. We must show that the
result holds for groups of rank n.
If we form the following homomorphism,
θ : F →Z
k
1
f
1
+. . . +k
n
f
n
→ k
1
We can restrict θ to a homomorphism φ from R onto Z. The kernal K of φ
is a subgroup of F generated by ¦f
2
, . . . , f
n
¦ with rank n − 1 and so by our
induction hypothesis is a ﬁnitely generated free abelain group of at most rank
n −1.
The Image of R, φ(R), is a subgroup of Z and so is either ¦0¦ or mZ
(proposition 2.7) for some positive integer m. If φ(R) = ¦0¦ then K = R and
so R is a ﬁnitely generated free abelian group of at most rank n −1.
If φ(R) = mZ then there exists some r
0
∈ R such that φ(r
0
) = m. For a
general element r ∈ R, φ(r) = qm where q ∈ Z and r can be expressed as,
r = qr
0
+ (r −qr
0
)
where φ(r − qr
0
) = qm− qm = 0 and so r − qr
0
∈ K. This means that any
element r ∈ R can be expressed as the sum of an element in ¸r
0
¸ and an element
in K,
R = ¸r
0
¸ +K
65
If cr
0
∈ K then φ(cr
0
) = 0 and so cm = 0 which means that c = 0. This shows
that the only element in both ¸r
0
¸ and K is 0 and so ¸r
0
¸ ∩K = ¦0¦. Therefore
R = ¸r
0
¸ ⊕K and R is a ﬁnitely generated free abelian group of at most rank
n.
The generators of the kernel K in (7.1) are linear combinations of the gen-
erating elements of F;
r
i
= k
1i
f
1
+. . . +k
ni
f
n
for i = 1, . . . , s (7.2)
The generating set ¦r
1
, . . . , r
n
¦ can be represented as a column vector;
r = ¦r
1
, . . . , r
s
¦
T
(7.3)
= ¦k
11
f
1
+. . . +k
n1
f
n
, . . . , k
1s
f
1
+. . . +k
ns
f
n
¦
T
= Af
where A = (k
ij
) is an r n matrix and f = ¦f
1
, . . . , f
n
¦
T
is the generating set
for the free group F. The matrix A is known as the relation matrix for the
group G, it contains all the information necessary to construct the group G as
a quotient group F / K.
Example 7.0.1. Given a relation matrix;
A =
_
¸
_
7 21 27
1 5 8
_
¸
_
The number of columns is equal to the rank of the free group F and so in this
case F is freely generated by the set ¦f
1
, f
2
, f
3
¦. The entries in each row of the
matrix determine the generating set for K, in this case K is freely generated by
66 CHAPTER 7. GROUP PRESENTATIONS
¦7f
1
+21f
2
+27f
3
, f
1
+5f
2
+8f
3
¦. The group G represented by A is therefore;
G

=
¸f
1
, f
2
, f
3
¸
_
¸7f
1
+ 21f
2
+ 27f
3
, f
1
+ 5f
2
+ 8f
3
¸
The generating set r of K can be transformed using left multiplication by
an s s matrix P (equations 6.4, 6.5 and 6.6 ),
Pr = PAf (7.4)
This transformation of the generating set r results in a corresponding transfor-
mation of the relation matrix A and since the set Pr still generates the kernel
K, the matrix PA still represents the same group G. The left multiplication of
A by P results in a series of row operations being applied to A, if multiplica-
tion on the right by an n n matrix Q is introduced this results in a series of
column operations being applied to A. In order for this multiplication on the
right to have no eﬀect on the structure of the kernel K a corresponding left
multiplication by Q
−1
must be applied to the generating set f.
Pr = PAQ(Q
−1
f) (7.5)
The relation matrix PAQ still represents the same group G but is now in terms
of a diﬀerent generating set for F which is now freely generated by f ’ = Q
−1
f.
In the next chapter the matrices P and Q will be chosen so that the relation
matrix PAQ has a very simple form, this form will be similar to the second
canonical form (equation 5.2) for a ﬁnite abelian group.
Chapter 8
Smith Normal Form
8.1 Smith Normal Form algorithm
Proposition 8.1. Using elementary row/column operations which correspond
to matrix multiplication on the left/right by E
λ(i,j)
, E
φ(i)
and E
τ(i,j,b)
any nm
matrix A can be reduced to the form;
diag
n,m
(a
1
, . . . , a
k
) =
_
¸
¸
¸
¸
¸
¸
¸
¸
¸
¸
¸
_
a
1
0 . . . 0
0 a
2
. . . 0 0
.
.
.
.
.
.
.
.
.
.
.
.
0 0 . . . a
k
0 0
_
¸
¸
¸
¸
¸
¸
¸
¸
¸
¸
¸
_
(8.1)
such that a
1
[a
2
[ . . . [a
k
.
Proof. (1) - Initial step - Begin by using row/column operations of type E
λ(i,j)
to bring the element with smallest absolute value in the ﬁrst row/column of
A into position (1, 1), this element is known as the pivot. If this element is
negative multiply the ﬁrst row/column by −1 using E
φ(i)
.
67
68 CHAPTER 8. SMITH NORMAL FORM
(2) - Clear rows/columns - If the pivot divides all other elements in the ﬁrst
row/column of A, then using operations of type E
τ(i,j,b)
it is possible to clear
ﬁrst row and ﬁrst column of A leaving a matrix of the following form;
A =
_
¸
_
a
1
0
0 A

_
¸
_ (8.2)
where A

is an (n −1) (m−1) matrix.
(3) - Euclidian Algorithm - It may sometimes be the case that an element
in the ﬁrst row/column of A is not divisible by the pivot. If this element is a
1j
in the ﬁrst row of A at position (1, j), then it is possible to express a
1j
as;
a
1j
= qa
11
+r, 0 ≤ r < a
11
Using column operations of type E
τ(i,j,b)
it is possible to subtract q times
the ﬁrst column from the q
th
column. This operation will leave the value r
in position (1, j), this element will be strictly less than a
11
. Returning to
the initial step (1) the element in position (i, j) will become the new pivot
element. If the new pivot divides all the elements in the ﬁrst row/column of
A then it is possible to clear the ﬁrst row/column as above (2), if not then
the Euclidian algorithm is again applied (3). Repeated application of (3) will
produce a decreasing sequence of positive pivot elements and so this process
will terminate after a ﬁnite number of steps.
If the element that was not divisible by the pivot was in the ﬁrst column of
A then a similar process can be applied as above except using row operations
of type E
τ(i,j,b)
.
(4) - Induction - After repeated application of steps (1) and (3) and a
single application of step (2), a matrix of the form (8.2) is achieved. The whole
8.1. SMITH NORMAL FORM ALGORITHM 69
process is now repeated inductively on the matrix A

, the use of row/column
operations will have no eﬀect on cleared rows/columns of A. Eventually a
matrix, not necessarily satisfying the divisibility condition, of the desired form
(8.1) will be achieved.
(5) - Divisibility -For any two positive integers r and s,
_
¸
_
r 0
0 s
_
¸
_ ∼
_
¸
_
g 0
0 l
_
¸
_
where g = gcd(r, s) and l = lcm(r, s). The following steps achieve the disired
form;
(5a) - Add the second row to the ﬁrst row,
_
¸
_
r 0
0 s
_
¸
_ →
_
¸
_
r s
0 s
_
¸
_
(5b) - Assuming r < s, then subtract as many lots of the ﬁrst column from
the second whilst keeping s ≥ 0. Repeat this process, subtracting the smaller
element from the larger, until the ﬁrst row is of the form (0 g) or (g 0).
(5c) - If the ﬁrst row is (0 g) swap columns and multiply the second column
by −1 so that the matrix is now of the form,
_
¸
_
g 0
bs as
_
¸
_
where b and a are positive integers. Since g = gcd(r, s) then g[bs and so a
suitable multiple of the ﬁrst row can be subtracted from the second so that
the second row is of the form (0 l) the matrix has now been reduced to the
necessary form.
70 CHAPTER 8. SMITH NORMAL FORM
(6) - The process in (5) can be applied to the matrix A by taking r and s
to be the non-zero diagonal elements in a systematic way, let r = a
i
and s = a
j
then taking (i, j) = (1, 2), (1, 3), . . . , (1, k), (2, 3), . . . , (2, k) . . .. This will lead
to a diagonal matrix that satisﬁes the divisibility condition.
8.2 Application of Smith form to a relation matrix
The kernel K of the homomorphism τ (7.1) is generated by the following set,
r’ = Pr = PAQf ’
where f ’ = Q
−1
f. Using the smith normal algorithm it is possible to ﬁnd
matrices P and Q such that,
PAQ =
_
¸
¸
¸
¸
¸
¸
¸
¸
¸
¸
¸
_
a
1
0 . . . 0
0 a
2
. . . 0 0
.
.
.
.
.
.
.
.
.
.
.
.
0 0 . . . a
k
0 0
_
¸
¸
¸
¸
¸
¸
¸
¸
¸
¸
¸
_
and therefore K is generated by r’ = (a
1
f

1
, . . . , a
k
f

k
, 0f

k+1
, . . . , 0f

n
)
T
.
The homomorphism τ can be deﬁned in the following way,
kf → kg (8.3)
where k = (k
1
, . . . , k
n
), k
i
∈ Z for i = 1, . . . , n. This is equivalent to,
(kQ)(Q
−1
f) → (kQ)(Q
−1
g) (8.4)
8.2. APPLICATION OF SMITH FORM TO A RELATION MATRIX 71
and since k is an arbitary vector,
kf ’ → kg’ (8.5)
where g’ = Q
−1
g. Using the above deﬁnition of τ it follows that kg’ = e if and
only if kf ’ ∈ K. Letting k = me
i
for i = 1, . . . , n, where e
i
is the i
th
standard
basis vector for Z
n
, it is clear that mf

i
∈ K if and only if a
i
[m and so mg

i
= e
if and only if a
i
[m. This means that [g

i
[ = a
i
for i = 1, . . . , k and [g

i
[ = ∞ for
i = k + 1, . . . , n.
If it can be shown that the intersection between ¸g

i
¸ and ¸g

1
, . . . , g

i−1
, g

i+1
, . . . , g

n
¸
is trivial, then this is exactly the condition for G to be the interior direct sum
of the subgroups ¸g

i
¸ for i = 1, . . . , n.
Assume that αg

i
∈ ¸g

1
, . . . , g

i−1
, g

i+1
, . . . , g

n
¸ then,
b
1
g

1
+. . . b
i−1
g

i−1
−αg

i
+b
i+1
g

i+1
+. . . +b
n
g

n
= e
therefore,
b
1
f

1
+. . . b
i−1
f

i−1
−αf

i
+b
i+1
f

i+1
+. . . +b
n
f

n
∈ K
and so a
i
[α and αg
i
= e. This shows that,
¸g

i
¸ ∩ ¸g

1
, . . . , g

i−1
, g

i+1
, . . . , g

n
¸ = ¦e¦
and so,
G

=
Z
_
a
1
Z
⊕. . . ⊕
Z
_
a
k
Z
⊕Z
n−k
(8.6)
where a
1
[a
2
[ . . . [a
k
.
Chapter 9
Smith Normal Algorithm in
Matlab
In this chapter a detailed explanation of the Matlab code found in Appendix
B will be outlined. The code will ﬁrst be examined line by line and then the
program will be applied to a sample matrix. This chapter will conclude with a
discussion of the strengths and weakness’ of this particular program for ﬁnding
the Smith normal form of an integer matrix.
9.1 Code Analysis
The code begins (lines 2 - 5) by ﬁrst initialising the necessary global variables.
On line 2 the size of the input matrix A is stored as 12 vector containing the
number of rows/columns in A. Line 3 saves the number of rows in the variable
I and the number of columns in the variable J. Line 4 saves min(I, J) in the
variable t, this is the length of the main diagonal of A and will be used in the
main loop of the program. Line 5 initialises the break condition, this will be
used to terminate the program.
The main loop of the program begins on line 7, this for loop will increment
73
74 CHAPTER 9. SMITH NORMAL ALGORITHM IN MATLAB
along the main diagonal of A starting at k = 1 and terminating at k = t. On
line 9 an unconditional while loop is begun, this loop will continue until certain
break conditions are met. Line 11 saves the element in position (k, k) to the
variable pivot. Lines 13 and 14 ﬁrst check if the pivot is negative and if this is
the case the k
th
column is multiplied by −1 in order to make the pivot positive.
Line 16 checks if the pivot is equal to zero, if this is the case line 17 ﬁnds the
ﬁrst non-zero element in the section of A that is to the right and below the
pivot, lines 18 and 19 move this element into the pivot position.
On lines 21 to 24 the ﬁrst break condition is tested and applied, line 21
tests if there were any non-zero elements found. If none were found then line
22 sets the variable ﬁnish now to true. On line 23 the program breaks out of
the unconditional while loop.
Line 26 resets the pivot to the value of the element in position (k, k) and
lines 30 to 32 check if it is positive and if not makes sure it is, this is necessary
because lines 13 to 26 could have changed the element in the pivot position.
Line 34 again resets the value of the variable pivot in order to take account of
any changes made by lines 30 to 32.
Line 36 creates a new variable B this variable is a three row matrix that
contains the values of all elements on the k
th
row/column of A, except the
pivot, along with the position of these elements in A. Line 38 checks if all the
elements in the k
th
row/column of A, except the pivot, are divisible by the
pivot. If this is the case then lines 40 to 48 clear the k
th
row/column of A
using elementary row/column operations. This leaves the k
th
row/column of
A consisting entirely of zeros except for the element in position (k, k). Line
50 breaks out of the unconditional while loop, this break condition causes k to
increment and so the algorithm moves down the diagonal.
If the condition on line 38 is not met then the program moves on to line
9.1. CODE ANALYSIS 75
53. This line creates a new matrix variable j that contains the column number
of the elements in B (k
th
row/column of A, except the pivot) that are not
divisible by the pivot. Line 54 saves, in the variable j1, the column location in
B of the element with smallest absolute value that does not divide the pivot.
Line 55 extracts the position in the matrix A of this element from the matrix
B. Line 57 checks if this element is positive, if it is then line 58 works out
how many times the pivot can be subtracted from the element whilst leaving
it positive and saves this value in the variable q. If the element is negative
then line 60 works out how many times it is necessary to add the pivot to the
element to make it positive and saves this value in the variable q.
Line 63 checks if the element with smallest absolute value that does not
divide the pivot is in the k
th
column, if it is then lines 64 and 65 subtract q
times the k
th
row from the row containing the element and then swaps this row
with the k
th
row. If the element is in the k
th
row then the same thing happens
except using column operations (lines 67 and 68).
Lines 72 to 74 check if the variable ﬁnish now is set to true if this is the
case then the program brakes out of the main for loop.
Lines 79 to 103 take care of the divisibility condition of the smith normal
form. On line 79 an empty matrix B is created, lines 81 to 87 populate B
with a one in position (1, i) if there is a zero at position (i, i) in the matrix
A. Lines 89 to 91 counts how many times one appears in B and therefore how
many zeros appear on the diagonal of A, this value is saved in the variable
b. The zeros will always appear in the bottom section of the diagonal due to
lines 16 to 19, and so it is possible to ignore these entries when making the
matrix satisfy the divisibility condition. On lines 93 to 95 the variable b is set
to zero if no zeros appear on the diagonal of A. Lines 97 to 103 systematically
apply the divisibility condition by setting A(i, i) = gcd(A(i, i), A(k, k)) and
76 CHAPTER 9. SMITH NORMAL ALGORITHM IN MATLAB
A(k, k) = lcm(A(i, i), A(k, k)) for;
(i, j) = (1, 2), . . . , (1, t −b), (2, 3), . . . , (2, t −b), . . . , (t −b −1, t −b)
This divisibility condition could be applied using elementary row/column op-
erations but this would be computationally ineﬃcient when there exist inbuilt
gcd and lcm operations in matlab.
The ﬁnal line of the program sets the matrix A equal to the output variable
res.
9.2 Application to sample matrices
This section will show the individual steps taken by the program when applied
to particular matrices. The ﬁrst example will show the steps taken in the
application of the program to the following 2 2 matrix;
A =
_
¸
_
26 80
40 124
_
¸
_
The program begins by initialising the global variables, I = 2, J = 2, t = 2
and ﬁnish now = false. The for loop begins with k = 1 and the unconditional
while loop also begins. Line 11 creates the variable pivot and sets it equal to
the value of the element in position (1, 1).
pivot = A(k,k);
pivot =
26
The program then checks if the variable pivot is less than zero or equal to zero,
both these tests return false and so the program moves on to line 37.
9.2. APPLICATION TO SAMPLE MATRICES 77
B = [A(k,k+1:J) A(k+1:I,k)’;k*ones(1,J-k) k+1:I;k+1:J k*ones(1,I-k)];
B =
80 40
1 2
2 1
On this line the matrix B is created, the ﬁrst row of this matrix contains the
values of the elements in the 1
st
row/column of A. The 2
nd
and 3
rd
rows of B
contain each entries position in the matrix A. On line 41 the program checks
if all the elements in the top row of B are divisible by the pivot, this is clearly
not the case and so the program moves on to line 56.
[i j]=ind2sub(size(B(1,:)),find(rem(B(1,:),pivot) ~= 0));
i =
1 1
j =
1 2
Line 56 creates a new matrix j, this matrix stores the column numbers of all
the elements in the top row of B that are not divisible by the pivot. In this
case none of the elements are divisible by the pivot. The next line selects the
element with minimum absolute value that does not divide the pivot, in this
case 40. Line 58 extracts from the matrix B the position of this element in the
matrix A.
location = B(2:3,j1)’;
location =
2 1
78 CHAPTER 9. SMITH NORMAL ALGORITHM IN MATLAB
The entry is therefore in position (2, 1), the 2
nd
row and 1
st
column of A.
Line 60 checks if the entry in position (2, 1) is positive. Since this is true the
program now rounds down the value of
40
26
, resulting in 1 and saves this in the
variable q.
q = floor(A(location(1),location(2))/pivot);
q =
1
Line 66 checks whether to use row or column operations to reduce the pivot, in
this case since the element in position (2, 1) is in the 1
st
column row operations
will be used.
A(location(1),:)=A(location(1),:)-q*A(k,:);
A =
26 80
14 44
A([location(1) k],:)=A([k location(1)],:);
A =
14 44
26 80
The pivot element now has a value of 14 which is less than 26, this process is
repeated until the pivot element divides all the elements in the 1
st
row/column.
In this case the above process was repeated two more times resulting in the
following matrix;
9.2. APPLICATION TO SAMPLE MATRICES 79
A =
2 8
12 36
The test on line 38 now returns true and the following row/column operations
(lines 40 to 48) clear the 1
st
row/column of A. Firstly six times row one are
subtracted from row two resulting in;
A =
2 8
0 -12
and then 4 times column one are subtracted from column two;
A =
2 0
0 -12
On line 50 the program breaks out of the unconditional while loop and the
value of k is incremented. The pivot is now set equal to the entry in position
(2, 2).
pivot = A(k,k);
pivot =
-12
The test on line 13 returns true since the pivot is negative and so the 2
nd
column is multiplied by −1.
80 CHAPTER 9. SMITH NORMAL ALGORITHM IN MATLAB
A(:,k)=-A(:,k);
A =
2 0
0 12
The program now continues up until line 38, the test on this line returns true.
The for loops on lines 40 and 45 both loop over the range 3 : 2, but this range
returns the following value,
3:2
ans =
Empty matrix: 1-by-0
and so these loops are skipped over and the program moves on to line 50. On
this line the program breaks out of the unconditional while loop and since the
main for loop, over the diagonal of A, has been completed the program moves
on to line 79. Lines 79 to 110 have no eﬀect on this matrix since it is already
in the necessary form.
In this next example it will be shown what happens when the program
cannot ﬁnd any non-zero entries to move to the pivot position on line 17. The
program was applied to the following matrix;
A =
_
¸
¸
¸
¸
_
36 84 36
156 364 156
252 588 252
_
¸
¸
¸
¸
_
After completing the ﬁrst iteration of the main loop, k = 2, the following
matrix has been achieved;
9.2. APPLICATION TO SAMPLE MATRICES 81
A =
4 0 0
0 0 0
0 0 0
The program tries to ﬁnd a non-zero entry to move into the pivot at position
(2, 2), clearly no such element exists. On line 21 the test returns true and so
ﬁnish now is set to true, the program then breaks out of the unconditional
while loop. On line 72 this test also returns true and so the program breaks
out of the main for loop and moves on to line 79. Lines 79 to 110 have no eﬀect
on the matrix since it is already in the desired form.
The next example will show one of the main drawbacks of this method for
ﬁnding the smith normal form. The method tends to lead to entry explosion
[2], this means that even if the ﬁnal smith form has comparatively small values
along the diagonal the intermediary steps may result in extremely large entries.
If these entries become greater than the maximum ﬂoating point value then
the result of the program may not be accurate. The following matrix;
B =
1494 274 342 284 6164
17814 2874 7806 3836 72332
1118 178 518 244 4532
1318 214 578 280 5372
3504 564 1548 756 14224
was obtained by applying a series of row/column operations to the following
diagonal matrix;
82 CHAPTER 9. SMITH NORMAL ALGORITHM IN MATLAB
A =
2 0 0 0 0
0 4 0 0 0
0 0 8 0 0
0 0 0 16 0
0 0 0 0 32
When the program was applied to the matrix B the following intermediary
matrices were found;
A =
2 0 0 0 0
0 131633088 22885776 25206104 547018760
0 387436 67360 74188 1610048
0 -767236 -133392 -146916 -3188352
0 26863764 4670544 5144076 111635944
A =
1.0e+010 *
0.0000 0 0 0 0
0 0.0000 0 0 0
0 0 -1.3996 -0.0015 -5.8182
0 0 0.0041 0.0000 0.0169
0 0 -0.2856 -0.0003 -1.1871
9.2. APPLICATION TO SAMPLE MATRICES 83
A =
1.0e+013 *
0.0000 0 0 0 0
0 0.0000 0 0 0
0 0 0.0000 0 0
0 0 0 -0.0004 -1.4434
0 0 0 -0.0000 -0.0000
A =
2 0 0 0 0
0 4 0 0 0
0 0 8 0 0
0 0 0 16 0
0 0 0 0 32
As can be seen the values in the matrix reached an absolute value of ≈ 10
13
.
It is conceivable that for some matrix the values could become as large as
the largest ﬂoating point value at which point the usual arithmetic operations
would not be properly deﬁned. This would result in an inaccurate result for
the ﬁnal smith form.
Chapter 10
The decision problem
All the necessary theory has now been outlined in order to answer the following
question;
”Given two ﬁnitely generated abelian groups G and G

, are these
groups isomorphic?”
It has been shown that given the groups G and G

, with generating sets
¦g
1
, . . . , g
n
¦ and ¦g

1
, . . . , g

n
¦ respectively, each group can be realised as a quo-
tient group. These quotient groups can be completely deﬁned by the relation
matrices R and R

.
It has also has been shown that given any relation matrix X there exists an
equivalent matrix S, the smith form of X, such that S = PXQ. The matrix S,
as a relation matrix, deﬁnes a group which is isomorphic to the group deﬁned
by the relation matrix X.
This means that the relation matrices R and R

, which deﬁne respectively
the groups G and G

, each have an associated smith form S = PRQ and
S

= P

R

Q

. In order to show that G is isomorphic to G

, it must be shown
85
86 CHAPTER 10. THE DECISION PROBLEM
that R = P

R

Q

. If we assume that S = S

then;
S = S

=⇒ PRQ = P

R

Q

=⇒ PR = P

R

Q

Q
−1
=⇒ R = P
−1
P

R

Q

Q
−1
=⇒ R = P

R

Q

where P

= P
−1
P

and Q

= Q

Q
−1
The program found in Appendix B takes two relation matrices and deter-
mines if their smith forms are equal, and therefore represent isomorphic groups.
This process is not as simple as just checking if the two matrices are the same.
It is sometimes the case that the smith form contains multiple ones in the ﬁrst
entries of the diagonal, these entries represent the direct product of multiple
copies of the cyclic group of order one. However the cyclic group of order one
is simply the identity and can be ignored. The following relation matrices in
smith form make this clear;
S
1
=
_
¸
_
2 0
0 6
_
¸
_, S
2
=
_
¸
¸
¸
¸
¸
¸
¸
_
1 0 0 0
0 1 0 0
0 0 2 0
0 0 0 6
_
¸
¸
¸
¸
¸
¸
¸
_
These relation matrices represent isomorphic groups since the group repre-
sented by R
1
is isomorphic to;
Z
_
2Z

Z
_
6Z
and the group represented by R
2
is isomorphic to;
Z
_
Z

Z
_
Z

Z
_
2Z

Z
_
6Z

=
Z
_
2Z

Z
_
6Z
10.1. CODE ANALYSIS 87
Sometimes a relation matrix, before it is put into smith form, has more
columns than rows;
R =
_
¸
_
396 880 54 176
72 160 10 32
_
¸
_
The smith form of the matrix R is;
S =
_
¸
_
2 0 0 0
0 4 0 0
_
¸
_
This relation matrix represents the following group;
Z
_
2Z

4Z
_
Z
⊕Z ⊕Z
So when the initial relation matrix has more columns than rows, the group
represented by the smith form must have n copies, n equals the diﬀerence
between the number of columns and the number of rows, of Z added on.
10.1 Code Analysis
This section will analyse line by line how the program in Appendix B works.
The program takes as its input two relation matrices A1 and A2 and returns the
isomorphism class for each and a truth value of one if the groups represented
by the relation matrices are isomorphic or zero if they are not.
Lines 2 to 7 initialise the global variables, lines 2 and 3 store the smith
forms of A1 and A2 in the variables B1 and B2 respectively. Lines 4 and 5
store the dimensions of the smith forms and lines 6 and 7 create an empty
vector that will store the isomorphism class for each group.
Lines 9 to 28 deal with the matrix B1, these lines contain three tests. The
ﬁrst, on line 9, checks if B1 has more columns than rows. The next, on line 16,
88 CHAPTER 10. THE DECISION PROBLEM
checks if there are more rows than columns and ﬁnally line 22 checks if there
are an equal amount of rows and columns.
These tests simply allow the program to decide the size of the diagonal and
choose a suitable range to loop over. As the loop progresses each diagonal
element is checked to see if it is equal to one, if it is not then the element is
added to the vector which stores the isomorphism class. Lines 30 to 49 repeat
this process but for the matrix B2.
Lines 51 and 52 store the dimensions of the isomorphism class vector for
each relation matrix. Line 54 checks if the matrices dimensions are unequal, if
this is the case the groups are not isomorphic and so val is set to zero. If the
dimensions agree then line 57 checks if the vectors contents are equal and sets
val to one if this is true and zero if it is not.
10.2 Examples
Example 10.2.1. B1 =
10 30 3 40 50
0 5 0 0 2
15 46 5 60 75
0 20 0 4 10
3 9 1 12 15
B2 =
58 6
192 20
10.2. EXAMPLES 89
[val c1 c2] = iso(B1,B2)
val =
1
c1 =
2 4
c2 =
2 4
The groups G
1
and G
2
represented by the relation matrices B1 and B2 are
both isomorphic;
G
1

= G
2

=
Z
_
2Z

Z
_
4Z
90 CHAPTER 10. THE DECISION PROBLEM
The next example shows two relation matrices which represent non-isomorphic
groups;
Example 10.2.2. B1 =
534 84 273
222 36 114
540 84 276
B2 =
48 6 192
204 114 864
60 6 240
[val c1 c2] = iso(B1,B2)
val =
0
c1 =
3 6 12
c2 =
6 12 48
The group G
1
represented by the relation marix B1 is,
G
1

=
Z
_
3Z

Z
_
6Z

Z
_
12Z
10.2. EXAMPLES 91
and the group G
2
represented by the relation marix B2 is,
G
2

=
Z
_
6Z

Z
_
12Z

Z
_
48Z
these groups are not isomorphic.
Chapter 11
Conclusion
This project has laid out, by building upon the group axioms, the foundational
results in group theory. The project has investigated two diﬀerent aspects of
modern group theory, ﬁrstly it has shown the abstract proof driven nature
of group theory and secondly it has touched upon the extremely large ﬁeld
of computational group theory. The main question of the project has been
answered using the tools of linear algebra and an algorithmic approach has been
implemented in Matlab in order to provide a solution. It has been shown that
any ﬁnitely generated abelian group can be represented by a relation matrix
and that using the smith normal diagonalisation process this matrix can be put
into a particularly simple form. This form corresponds to an abelian group in
terms of cyclic factors and is similar, with the addition of inﬁnite cyclic factors,
to the proven form for abelian groups of ﬁnite order. It has also been shown
that if the smith normal form of two relation matrices is identical, neglecting
cyclic factors of order one, then the relation matrices represent isomorphic
groups.
As this project has merely scraped the surface of modern group theory
there are many possible avenues for further investigation. The problem of
93
94 CHAPTER 11. CONCLUSION
deciding when two non-abelian groups are isomorphic has been shown to be
undecidable for all but certain classes of groups [1] and so it would be interesting
to investigate some of these particular classes of group. The classiﬁcation of
ﬁnitely generated abelian groups is a particular instance of a more general
result about ﬁnitely generated modules over principal ideal domains and so this
area could also warrant investigation. A more in depth study of computational
group theory could also be undertaken, investigating particular algorithms used
in group theory.
Bibliography
[1] George S. Sacerdote Some Undecidable Problems in Group Theory 1972:
Proceedings of the American Mathematical Society
[2] George Havas and Bohdan S. Majewskii Integer Matrix Diagonalization
1997: Journal of Symbolic Computation.
[3] Euclid Euclids Elements 2002: Green Lion Press
[4] Michael Artin Algebra 1991: Prentice-Hall
[5] David S. Dummit and Richard M. Foote Abstract Algebra 2004: John Wiley
and Sons
[6] Walter Ledermann and Alan J. Weir Introduction to Group Theory 1996:
Longman
[7] John R. Durbin Modern algebra: An Introduction 2000: Wiley
[8] Israel Kliener A History of Abstract Algebra 2007: Birkhauser
95
Appendix A
smithnormal.m
1 f unc t i on r e s = smi thnormal (A)
2 s z = s i z e (A) ;
3 [ I J ] = s i z e (A) ;
4 t = min( s z ) ;
5 f i ni s h now = f a l s e ;
6
7 f o r k = 1: t
8
9 whi l e 1
10
11 pi vot = A( k , k) ;
12
13 i f pi vot < 0
14 A( : , k)=−A( : , k) ;
15
16 e l s e i f pi vot ==0
17 [ i j ] =
i nd2sub ( s i z e (A( [ k : I ] , [ k , J ] ) ) , f i nd ( abs (A( [ k : I ] , [ k : J ] ) )
>= 1 , 1 , ’ f i r s t ’ ) ) ;
18 A( : , [ k j +(k−1) ] ) = A( : , [ j +(k−1) k ] ) ;
19 A( [ k i +(k−1) ] , : ) = A( [ i +(k−1) k ] , : ) ;
97
98 APPENDIX A. SMITHNORMAL.M
20
21 i f i sempty ( i )== 1;
22 f i ni s h now = t r ue ;
23 break
24 end
25
26 end
27
28 pi vot = A( k , k) ;
29
30 i f pi vot < 0
31 A( : , k)=−A( : , k) ;
32 end
33
34 pi vot = A( k , k) ;
35
36 B = [ A( k , k+1: J) A( k+1: I , k) ’ ; k∗ ones ( 1 , J−k) k+1: I ; k+1: J
k∗ ones ( 1 , I−k) ] ;
37
38 i f any ( rem(B( 1 , : ) , pi vot ) ) == 0
39
40 f o r h = k+1: I
41 q = A( h , k) / pi vot ;
42 A( h , : ) =A( h , : )−q∗A( k , : ) ;
43 end
44
45 f o r h = k+1: J
46 q = A( k , h) / pi vot ;
47 A( : , h)=A( : , h)−q∗A( : , k) ;
48 end
49
50 break
51 end
52
53 [ i j ]=i nd2sub ( s i z e (B( 1 , : ) ) , f i nd ( rem(B( 1 , : ) , pi vot ) ˜= 0) ) ;
99
54 j 1=f i nd ( abs (B( 1 , : ) )==min( abs (B( 1 , j ) ) ) , 1 , ’ f i r s t ’ ) ;
55 l o c a t i o n = B( 2 : 3 , j 1 ) ’ ;
56
57 i f A( l o c a t i o n ( 1) , l o c a t i o n ( 2) )>0
58 q = f l o o r (A( l o c a t i o n ( 1) , l o c a t i o n ( 2) ) / pi vot ) ;
59 e l s e
60 q = c e i l (A( l o c a t i o n ( 1) , l o c a t i o n ( 2) ) / pi vot ) ;
61 end
62
63 i f l o c a t i o n ( 2) == k
64 A( l o c a t i o n ( 1) , : )=A( l o c a t i o n ( 1) , : )−q∗A( k , : ) ;
65 A( [ l o c a t i o n ( 1) k ] , : )=A( [ k l o c a t i o n ( 1) ] , : ) ;
66 e l s e
67 A( : , l o c a t i o n ( 2) )=A( : , l o c a t i o n ( 2) )− q∗A( : , k) ;
68 A( : , [ l o c a t i o n ( 2) k ] )=A( : , [ k l o c a t i o n ( 2) ] ) ;
69 end
70 end
71
72 i f f i ni s h now == t r ue
73 break
74 end
75
76
77 end
78
79 B = [ ] ;
80
81 f o r i = 1: t
82
83 i f A( i , i )==0
84 B( i ) =1;
85 end
86
87 end
88
100 APPENDIX A. SMITHNORMAL.M
89 i f i sempty (B) == 0
90 zer opos=f i nd (B==1) ;
91 [ a b]= s i z e ( zer opos ) ;
92
93 e l s e
94 b = 0;
95 end
96
97 f o r i = 1: t−b
98
99 f o r h = i +1: t−b
100 A( [ i h ] , [ i h ] ) =[ gcd (A( i , i ) ,A( h , h) ) 0; 0
lcm(A( i , i ) ,A( h , h) ) ] ;
101 end
102
103 end
104 r e s = A;
smithnormal.m
Appendix B
iso.m
1 f unc t i on [ val c l a s s 1 c l a s s 2 ] = i s o (A1, A2)
2 B1 = smi thnormal (A1) ;
3 B2 = smi thnormal (A2) ;
4 [ I 1 J1 ] = s i z e (B1) ;
5 [ I 2 J2 ] = s i z e (B2) ;
6 c l a s s 1 = [ ] ;
7 c l a s s 2 = [ ] ;
8
9 i f I 1 < J1
10 f o r k=1: I 1
11 i f B1( k , k) ˜= 1
12 c l a s s 1 = [ c l a s s 1 B1( k , k) ] ;
13 end
14 end
15 c l a s s 1 = [ c l a s s 1 z e r os ( 1 , J1−I 1 ) ] ;
16 e l s e i f I 1 > J1
17 f o r k=1: J1
18 i f B1( k , k) ˜= 1
19 c l a s s 1 = [ c l a s s 1 B1( k , k) ] ;
20 end
21 end
101
102 APPENDIX B. ISO.M
22 e l s e i f I 1 == J1
23 f o r k=1: J1
24 i f B1( k , k) ˜= 1
25 c l a s s 1 = [ c l a s s 1 B1( k , k) ] ;
26 end
27 end
28 end
29
30 i f I 2 < J2
31 f o r k=1: I 2
32 i f B1( k , k) ˜= 1
33 c l a s s 2 = [ c l a s s 2 B2( k , k) ] ;
34 end
35 end
36 c l a s s 2 = [ c l a s s 2 z e r os ( J2 − I 2 ) ] ;
37 e l s e i f I 2 > J2
38 f o r k=1: J2
39 i f B2( k , k) ˜= 1
40 c l a s s 2 = [ c l a s s 2 B2( k , k) ] ;
41 end
42 end
43 e l s e i f I 2 == J2
44 f o r k=1: J2
45 i f B2( k , k) ˜= 1
46 c l a s s 2 = [ c l a s s 2 B2( k , k) ] ;
47 end
48 end
49 end
50
51 [ I 1 J1 ] = s i z e ( c l a s s 1 ) ;
52 [ I 2 J2 ] = s i z e ( c l a s s 2 ) ;
53
54 i f J1 ˜= J2
55 val = 0;
56 e l s e
103
57 val = i s e qua l ( c l as s 1 , c l a s s 2 ) ;
58 end
59
60 end
iso.m

i

With the exception of any statement to the contrary, all the material presented in this report is the result of my own eﬀorts. In addition, no parts of this report are copied from other sources. I understand that any evidence of plagiarism and/or the use of unacknowledged third party materials will be dealt with as a serious matter.

Signed:

.

iii . In doing this various tools from linear algebra will be employed as well as using the necessary results from the theory of groups.Abstract This project aims to investigate the foundational results in group theory beginning with the axiomatic deﬁnition of a group and building up all the necessary theory in order to ﬁnd a solution to the isomorphism problem for ﬁnitely generated abelian groups. The solution to this problem will involve the construction of a Matlab program capable of deciding whether two ﬁnitely generated abelian groups are isomorphic.

2 1. .2 2. . . . . . . Direct products . . . 15 15 20 23 25 28 3 Homomorphisms and Isomorphisms 3. . . . . . . Subgroups. . . Cyclic Groups. . . . . . . .Contents Introduction 1 I Preliminaries 1 Sets. . . . . . . . . Equivalence relations . . . . . . . . . . .5 Groups . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Isomorphisms . . . .1 3. . . . . . . Equivalence and Binary Operations 1. . . . . . . . . . . . . . . . . . . . . . . . . . .1 2. . . . Cosets and Lagrange’s Theorem 2. . . . Cosets and Lagrange’s Theorem . . . . . . . . . .3 2. . . . . . . . .3 Sets . . . . . . . .4 2. . . . . . . . . . . .1 1. . . . . . . . . . . . . . . . . . . . . . . . iv 31 31 36 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Subgroups . . 5 7 7 12 13 2 Groups. . . . . . . . . .2 Homomorphisms . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Binary Operations . . . . . Cyclic Groups . . . . . . . . . .

. . . .2 Examples . . . . . . . . 7 Group Presentations 8 Smith Normal Form 8. . . . . . . . . .2 Code Analysis .CONTENTS 4 Normal subgroups and Quotient Groups v 39 II The Isomorphism Problem for Finitely Generated Abelian Groups 5 Classiﬁcation of Finite Abelian Groups 5. . . . . . . . . . 11 Conclusion Bibliography A smithnormal. . . Application to sample matrices .1 6. . . . . . 10 The decision problem 10. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10. . . . . . . . . . . . . . . . .2 Generators . . . . . . .1 9. .1 Code Analysis .2 Smith Normal Form algorithm . . . . . . . . . . . . . . . .2 Sylow’s Theorems .1 8. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .m . . . . . . . . . . . . . . . . 45 47 47 49 57 57 61 63 67 67 70 73 73 76 85 87 88 93 95 97 6 Generators and Relations 6. . The decomposition of Finite Abelian Groups . . . . . . . . . . . . . . . . . . . . . Relations . . . . . . . Application of Smith form to a relation matrix . . 9 Smith Normal Algorithm in Matlab 9. . . . . . . . . . .1 5. . . . . . . . . . . . . . . . . .

m CONTENTS 101 .vi B iso.

unless needed for some deﬁnite application. the discovery of isolated phenomena. T. then the emergence of general principles making further calculations. superﬂuous. The greatest mathematical work of the ancient world was Euclid’s Elements. this book took a set of ﬁve postulates. Bell Mathematical ideas have always followed a very similar trajectory. This process of moving from the observable to the conceptual is known as abstraction and has been a recurring theme in the history of Mathematics. . then the recognition of certain features common to all. ” E. and last.Introduction “. twenty three deﬁnitions and ﬁve common notions then using the tools of logic deduced 1 . Similar patterns are observed in diﬀerent areas of nature and then similar conjectures are made. . the formulation of postulates crystallizing in abstract form the structure of the system investigated . The ancient Greeks were the ﬁrst people to fully take hold of the abstract conception of mathematics. next the search for further instances. ﬁrst. patterns are observed in nature and then conjectures are made in order to explain the pattern. . An awareness of the patterns within the patterns begins to emerge and general conjectures are made that have no relation to the natural world. their detailed calculation and classiﬁcation. .

attacked the problem of solvability from a new direction. Both Abel and Galois. The next problem faced by Mathematics was the solution of the general quartic equation. Neither Abel nor Galois completely conceived of what we now call a group but they began the journey down the road to the modern conception of a group. For the next two hundred years mathematicians attempted to ﬁnd a way of solving the general quintic equation. Their proofs made a further step in the abstraction of mathematics and directly lead to the development of Group theory [8]. The Italian mathematician Scipione del Ferro ﬁnally found the solution to the general cubic equation and in the process won a mathematical contest against a rival mathematician Gerolamo Cardano. it was not until the early 19th century that the mathematicians Niels Abel and Evariste Galois proved that no such solution existed. “Given two ﬁnitely generated abelian groups. working independently. By the 16th century Mathematics was now mainly concerned with the solution of polynomials. They analysed what it was that made it possible to solve a polynomial rather than trying to ﬁnd particular solutions.2 CONTENTS over a hundred geometrical propositions contained in six volumes [3]. Ludovico Ferrari a student of Gerolamo Cardano soon found a method. The main question this project will attempt to answer is. in doing so they laid the foundations for group theory. Euclid was not content with creating such a large body of geometrical knowledge and in the next four books of the Elements he applied his axiomatic approach to the study of numbers and laid the foundations for number theory. the solutions to linear and quadratic equations had been known since the earliest times but the solution to cubic equations was not. are these groups isomorphic?” Due to the axiomatic nature of modern group theory it is impossible to answer .

throughout the text use is made of some very simple results from number theory. it is hoped that all results are shown to follow from the group axioms. therefore the majority of sources used in this project are modern textbooks on Abstract Algebra and Group Theory ([4]. Although group theory is a very active part of modern mathematical research the material covered in this project is by no means at the level of current research.CONTENTS 3 this question without ﬁrst developing a signiﬁcant amount of basic theory. greatest common divisors and least common multiples. In this section a signiﬁcant amount of mathematical programming will be necessary and so parts of this section will be used for analysis of the various programs devolved. The material covered has been known for many years and is merely the ﬁrst building blocks of modern group theory. the use of these results is taken for granted. by the conclusion of this section it will be possible to begin to answer the above question. This will entail the development of some more advanced theory and also the introduction of various tools from linear algebra. properties of prime numbers.[5]. the Euclidian algorithm.[6] and [7]). It would be unreasonable to give an outside reference to every result contained in this project and. due to the axiomatic nature of group theory. This section will then build up a set of propositions and deﬁnitions that follow logically from the group axioms. The ﬁrst section will begin with the necessary prerequisites needed in order to give a deﬁnition of a group in terms of the group axioms. However. The conclusion of this section will be a program that takes as input the representations for two groups and returns whether or not they are isomorphic. The second section will set out to answer the main question of this project. . for this reason the project has been divided into two distinct sections.

.

Part I Preliminaries 5 .

.

” Georg Cantor 1. with no repetition.1.Chapter 1 Sets. It can contain animals. A set can contain any objects you may wish it to contain.. Equivalence and Binary Operations “A set is a gathering together into a whole of deﬁnite.. other sets. using the colours of the rainbow. The following example.or any combination of these. distinct objects of our perception [Anschauung] and of our thought which are called elements of the set. 7 . in which the order of the objects has no importance. integers. colours. letters of the alphabet. shows the notation used when describing sets. A Set is a well-deﬁned collection of objects.1.1 Sets Deﬁnition 1.

1. 4.8 CHAPTER 1. Indigo. 1.2 be denoted by A.1.1.1. Y ellow. We usually call the objects in a set. Example 1. The elements of a set can either be explicitly stated as in Example 1. 4} = {4.1. of an element to a set. Orange. Example 1.1. C = {Red. the elements of the set.2. 9 ∈ A The above example says that 1 and 4 are elements contained in A but 23 and 9 are not.1.1.4. The following example sheds some light on the subtleties of Deﬁnition 1. We have a special notation for membership. {1. 4 ∈ A 23.3. V iolet} We use curly brackets to contain the objects and we use a capital letter to denote the set as a whole. 4} All three sets are thought of as being the same since the order of the objects and whether there are any repetitions is ignored when describing a set. 1. Let the set given in Example 1.1. 1} = {1. EQUIVALENCE AND BINARY OPERATIONS Example 1.2 or can be deﬁned by a rule. or belonging.1. Example 1. SETS. Green. Blue. S = {3n | n is a positive integer} M = {3n < 10 | n is a positive integer} .

SETS 9 Deﬁnition 1. However the notation used in Example 1. 7} . 4. We say A is a subset of B if all elements contained in A are also contained in B. A ∪ B = {x | x ∈ A or x ∈ B}. We say A = B if A ⊆ B and B ⊆ A.1.3. A ∪ B is the set of all elements in A or in B or in both.5 allows for the possibility that A is a proper subset of B. In what follows let A = {1.1.5. Example 1. Let A be as in Example 1.1. Deﬁnition 1. 4.5 should be written as A ⊂ B since A is a proper subset of B.4 ∈ B. There are four basic operations that can be carried out with respect to sets they are.1.5. • Union (∪) • Intersection (∩) • Diﬀerence (− ) • Cardinality (|A|) Deﬁnition 1. 9} and B be as in Example 1.6. 5. 6.2.1 ∈ B and 4 ∈ A.1. A ∪ B = {1. 6. Example 1. We say A is a proper subset of B if all elements contained in A are also contained in B and A = B.2 and let B = {5. 1.4. All elements of A are contained in B and all elements of B are contained in A. 7}.1. We denote this relationship by A ⊆ B.1.1.1.1. Deﬁnition 1.5. 4.1.1. this deﬁnition is using the non-exclusive usage of “or”. 9. Strictly speaking the relationship in Example 1. A is a subset of B since 1 ∈ A.

8. Deﬁnition 1. 4} Deﬁnition 1.10 CHAPTER 1.1.1.1.7.1. The null set is a set that contains no elements.8. The Cardinality of a set is the number of distinct elements it contains. A ∩ B is the set of all elements that are in A and are also in B.7. ∅ = {} .4. Example 1. A − B = {x | x ∈ A and x ∈ B}.1.6. Example 1. Example 1. 6.1. A − B = {9} B − A = {5.1.1. A ∩ B = {x | x ∈ A and x ∈ B}. SETS.9. 7} Deﬁnition 1. |S| = ∞ There exists a special set known as the null set or the empty set and it is denoted by ∅. A ∩ B = {1. The Diﬀerence between A and B is the set of elements contained in A but not contained in B. EQUIVALENCE AND BINARY OPERATIONS Deﬁnition 1. |A| = 3 |B| = 5 |A ∪ B| = 6 let S be as in Example 1.9.

(7.. |An | . × An = {(a1 . A1 × A2 × . c.1. .11. A2 ..1. . |A1 × A2 × .) it has n entries. . .b = b . b. × An | = |A1 ||A2 | . . 6)} The cardinality of a direct product is given by the product of the cardinality’s of its constituent sets.1. .c = c . . SETS |∅| = 0 11 In order to discuss the notion of a Binary Operation later we must introduce a special kind of set called the direct product.. 5). . (8. . . . Deﬁnition 1. Deﬁnition 1. Given two n-tuples (a.) they are equal iﬀ. b . . c. × An where. . . a2 ∈ A2 . 5). . Deﬁnition 1. . . .1. . . Let A = {2. The direct product of n sets A1 .12.10. 6} A × B = {(2. . 7. .1. The direct product is a set of ordered n-tuples. . An is denoted by. (2. 8} and B = {5. 6). . An ordered n-tuple is denoted by (a. (8. 6). . c . b. a = a .10. A1 × A2 × . an ∈ An } Example 1. . . 5). . an ) | a1 ∈ A1 . . (7.) and (a . a2 .1.

We deﬁne a relation by saying a is related to b if n|a − b that is if a − b = kn where k ∈ Z. . Usually we would denote the relation a is congruent to b modulo n by a ≡ b mod(n). z) ∈ R Given an equivalence relation on X it is usual to denote relation by x ∼ y rather than (x. .(x. X2 . . A partition P of a set X is a collection of non-empty subsets X1 . Example 1. a − b = kn = −(b − a) and so b is congruent to a modulo n. Let A and B be as in Example 1. of X such that Xi ∩ Xj = ∅ if i = j and k Xk = X. Deﬁnition 1.2. a − c = a − b + b − c = k1 n + k2 n = (k1 + k2 )n and so the relation satisﬁes the transitive property of an equivalence relation.1. This is an equivalence relation. .11. EQUIVALENCE AND BINARY OPERATIONS Example 1. z) ∈ R this implies (x.1. a − b = k1 n and b − c = k2 n. Let a and b be two integers and let n ∈ Z.2.2 Equivalence relations Deﬁnition 1. We must show that a − c = k3 n. The relation is symmetric since if a is congruent to b modulo n. x) ∈ R • Transitive.1.If (x. SETS.2. An equivalence relation on a set X determines a subset R ⊂ X × X such that.1.12 CHAPTER 1. y) ∈ R and we would say x is related to y. This relation is called congruence modulo n and we would say a is congruent to b modulo n. • Reﬂexive. y) ∈ R and (y.If (x. any integer a is congruent to itself modulo n since a − a = 0n and so the relation is reﬂexive. y) ∈ R this implies (y. If a is congruent to b modulo n and b is congruent to c modulo n then.2. x) ∈ R for all x ∈ X • Symmetric.10 |A × B| = |A||B| = 3 × 2 = 6 1.

3. It is also obvious that the union of all equivalence classes constitutes the whole of X. An equivalence relation ∼ on a set X induces a partition P of X such that each partition is an equivalence class. So an equivalence relation on a set X induces all the necessary properties of a partition P of the set. Conversely a partition P on the set X induces an equivalence relation ∼ on X such that each equivalence class is a partition of X. This shows us that equivalence classes are either equal or disjoint. hence [x] = [y]. then x is in the same partition as z and so the relation is transitive. If we assume that [x] ∩ [y] is not empty and that h ∈ [x] ∩ [y]. that is x∈X [x] = X.1. If x. This relation satisﬁes all the properties of an equivalence relation. Using the symmetric and transitive properties it can be shown that x ∼ y. this means that h ∼ x and h ∼ y. This relation is obviously reﬂexive and symmetric.2. If we assume that P is a partition of the set X and deﬁne a relation such that x ∼ y if x and y are in the same partition. and y is in the same partition as z. Proof. This means that [x] ⊂ [y] and it can similarly be shown that [y] ⊂ [x].3 Binary Operations Before we discuss what a binary operation is we must ﬁrst understand what a function between sets means. Given an equivalence relation on X it is clear that given any x ∈ X the reﬂexive property shows us that x ∈ [x] and so [x] is non-empty. 1. BINARY OPERATIONS 13 Deﬁnition 1. Proposition 1.1. . An equivalence class [x] = {y ∈ X | y ∼ x} is a subset of X such that all y ∈ [x] are related to x. If x is in the same partition as y. y ∈ X then we must show that either [x] = [y] or [x] ∩ [y] = ∅.3.

Example 1. x2 ) as x1 x2 . x2 ) −→ (x1 .2. The set X is called the domain of the function and the set Y is called the codomain of the function. The image of all x ∈ X under f is a subset of the codomain. 3) −→ 2 + 3 = 5 . It must be remembered that x1 x2 is a single element of X.1. : X × X −→ X (x1 . we show this with the following notation. A very familiar binary operation is the addition of integers. A Binary operation is a given by the following function. b) −→ a + b This function assigns each pair of integers to its sum. which is also an integer. f : X −→ Y.3. it could be x1 or x2 or any x ∈ X. (2. x2 ) This function assigns a unique element (x1 .3. x −→ f (x). A function between sets is denoted by. we usually write (x1 . The function assigns a unique element of Y to each element of X. We call the element f (x) ∈ Y the image of x under f . + : Z × Z −→ Z (a.14 CHAPTER 1. EQUIVALENCE AND BINARY OPERATIONS Deﬁnition 1. Deﬁnition 1. x2 ) ∈ X × X. SETS. The element of Y assigned to an element x ∈ X is denoted by f (x).1.3. x2 ) ∈ X to each (x1 .

Cosets and Lagrange’s Theorem “A piece of music can be accompanied by words. It is the same with groups. or can simply be appreciated on its own. They can be seen as groups of symmetries. a set and a binary operation on that set. permutations. Subgroups.1 Groups A group is not a single entity it is made of two distinct parts.” Mark Ronan 2. when 15 . ) where G is a set and is a binary operation on that set. A group can be denoted using the following notation (G. or dance.Chapter 2 Groups. movement. Cyclic Groups. or can simply be studied and admired in their own right. or motions.

g1 g2 ∈ G.1. If a group G has inﬁnite order we denote this |G| = ∞.3. Proposition 2. The inverse g −1 ∈ G of any element g ∈ G is unique. Deﬁnition 2. ∃g −1 ∈ G such that g g −1 = g −1 g = e. We will now describe some simple propositions that follow on from the description of a group given and outline their proofs.∀g ∈ G. e g = g e = g. The Identity element of a group is unique. In what follows we will drop the g1 g2 for g1 g2 Proposition 2. • Closure.16 CHAPTER 2.∀g1 . g3 ∈ G. A group is a set G and a binary operation on the set subject to the following properties.∀g1 . g2 . Proof. • Associativity. Assume that both e and e are identities in G. We call a group ﬁnite if it has a ﬁnite number of elements and inﬁnite if it does not. and simply write . • Identity. g = g e = g (gg ) = (g g)g = eg = g Proposition 2. Proof. but using e as the identity ee = e therefore e = ee = e . The order of a group is the number of elements it contains. g1 (g2 g3 ) = (g1 g2 ) g3 = g1 g2 g3 . its underlying set. b ∈ G then (ab)−1 = b−1 a−1 . • Inverse.1. GROUPS. SUBGROUPS.1. Let a.∃e ∈ G such that ∀g ∈ G.2. CYCLIC GROUPS. It follows that ge = eg = g and ge = e g = g. g2 ∈ G. If we use e as the identity ee = e . there exists only one element e ∈ G such that eg = ge = g for all g ∈ G. let g and g both be inverses of g then gg = g g = e and gg = g g = e. COSETS AND LAGRANGE’S THEOREM the operation is known we shall simply denote it by G. if a group G contains n elements we say it has order n and denote this |G| = n.

Proposition 2. Proof. deﬁning a0 = e and for any n ∈ N (the natural numbers) n times an = a a · · · a . g2 ∈ G.1. The product of the elements a.2. Assume ax = b we must show that a solution for x exists. then ba = ca implies b = c and ab = ac implies b = c. but ﬁrst we must introduce one further deﬁnition relating to a special kind of group. If we multiply both sides of ax = b on the left by a−1 .2. The proof for xa = b is similar but we multiply on the right by a−1 . We must now show that this solution is unique. we must multiply ba = ca on the right by a−1 . We also use exponential notation. Deﬁnition 2. b ∈ G is simply denoted by ab. • Commutativity. This means that x1 = a−1 ax1 = a−1 ax2 = x2 . Assume that x1 and x2 are solutions to ax = b. c ∈ G.∀g1 . An Abelian Group satisﬁes all the properties of a group plus one more.1. we arrive at a−1 ax = a−1 b ⇔ ex = a−1 b ⇔ x = a−1 b. abb−1 a−1 = aea−1 = aa−1 = e and b−1 a−1 ab = beb−1 = bb−1 = e 17 Proposition 2. then ax1 = b = ax2 . Let a. b. GROUPS Proof. To show that ba = ca implies b = c. b ∈ G then ax = b and xa = b have unique solutions in G Proof. We will now give some examples of groups. The proof for ab = ac is similar. When a group G is non-abelian we tend to use multiplicative notation.5.4. Let a. baa−1 = caa−1 ⇔ be = ce ⇔ b = c. g1 g2 = g2 g1 .

−2. It is easy to see that the associativity property holds but this is quite hard to prove. Example 2.1. .3. The identity is 0 and the inverse of a ∈ Z is −a. We deﬁne the order of an element g ∈ G to be the least positive integer n such that g n = e. the sum of the elements a. −1. This binary operation takes two integers and returns their sum which is also an integer. b ∈ G is simply denoted by a + b. if an element g has order n we write |g| = n. 2. The order of an element is denoted in a similar manner to that of groups. .1.} form a group under the binary operation of addition. CYCLIC GROUPS. GROUPS. COSETS AND LAGRANGE’S THEOREM n times a −n =a −1 a−1 · · · a−1 The usual laws of exponents hold. . The integers Z = {0. SUBGROUPS. • am an = am+n • (am )n = amn If a group is abelian we use additive notation. • ma + na = (m + n)a • m(na) = (mn)a Deﬁnition 2. . 1. The integers also satisfy the property for an Abelian group since m + n = n + m.18 and CHAPTER 2. We deﬁne 0a = e and for any n ∈ N n times na = a + a + · · · + a n times −na = −a + −a + · · · + −a The laws of exponents now become. If no such positive integer power of g exists then we say g has inﬁnite order.1.

the set {[n]. .  d −b  1  =   ad − bc −c a  A−1 This group is closed since the product of two invertible matrices is itself invertible.   1 I= 0  0   1 this is the Identity of the group. .1.3. matrix multiplication is associative so it satisﬁes this group property. . We call this group the General Linear Group.. this is the set of least residues modulo n.2.[2n-1]} is the same set just using a diﬀerent set of represen- . .2. A matrix. a ± 2n. Example 2. Using the notion of congruence modulo n ∈ Z we can form a group known as the integers modulo n.} It should be understood that this is just one such set of residues modulo n.   a A= c  b   d is in GL2 (R) if there exists an A−1 such that A−1 A = AA−1 = I where. . It is not always true for matrices that AB = BA so the group is non-abelian. . [n − 1]}.1. . GROUPS 19 Example 2. . This group consists of all equivalence classes Z/nZ = {[0]. [a] = {a + kn | k ∈ Z} = {a.1. The set of all 2 × 2 matrices is denoted by M2 (R) we will denote the subset of all invertible 2 × 2 matrices by GL2 (R). a ± n. The inverse of A ∈ GL2 (R) is. .[n+1]. . This subset forms a group under matrix multiplication. [1].

any members of an equivalence class and take as our result the equivalence class containing this result. Deﬁnition 2. It is necessary to show that this operation is well deﬁned.2. we call this an improper subgroup. 2. It follows that a1 + a2 = b1 + b2 + (k1 + k2 )n and so [a1 + a2 ] = [b1 + b2 ]. A subgroup H of G is a subset H ⊆ G such that H satisﬁes all the group properties when the binary operation of G is restricted to the subset H. COSETS AND LAGRANGE’S THEOREM tatives.1. b1 . Let [a1 ] = [b1 ] and [a2 ] = [b2 ] then a1 = b1 + k1 n and a2 = b2 + k2 n.1. Proof. this deﬁnition simply means that we can add together. using the usual addition in Z. [a] + [b] = [a + b]. Every Group G has at least two subgroups. a2 . The identity element of the set is [0]. b2 ∈ Z such that [a1 ] = [b1 ] and [a2 ] = [b2 ] then [a1 + a2 ] = [b1 + b2 ]. A number x is in the equivalence class [a] if n|x − a. GROUPS. that it does not matter what representative of an equivalence class we use. We can form an addition structure on this set that satisﬁes the properties of a group. Proposition 2. .6.20 CHAPTER 2. let a1 .4. The closure property follows from the fact that every integer belongs in one equivalence class. We must now show that the set of residues modulo n together with this addition operation forms a group. and the entire group itself. SUBGROUPS.2 Subgroups Deﬁnition 2. the trivial subgroup {e}. We deﬁne this addition operation as follows. the equivalence class [a] contains all integers that have remainder a when divided by n. The inverse of [a] is [−a] and associativity follows from the associativity of the integers. CYCLIC GROUPS.

Since m.let n. Example 2. 2n + 2m = 2(n + m) ∈ 2Z • The inverse of 2m ∈ 2Z is −2m ∈ 2Z • Associativity is inherited from the integer group It is possible to classify all the possible subgroups of the integers. qb ∈ H then r = m − qb ∈ H where 0 ≤ r < b. This subset forms a subgroup of (Z. we can write m = qb + r where 0 ≤ r < b. 2n. . The even integers 2Z = {. Since H is a subgroup it must contain nb for all n ∈ Z.} ⊆ Z.1. . .2. Let SL2 (R) ⊆ GL2 (R) consisting of all matrices with determinant one.7.2. This shows that m = qb ∈ bZ and so every element in H must be of the form qb where q ∈ Z. Every nontrivial subgroup of Z is of the form bZ for some b ∈ Z. −4. 2. the following proposition makes this clear. this contridicts the fact that b was the smallest positive integer in H unless r = 0. 0.2. m ∈ Z. that is when ad − bc = 1. SUBGROUPS 21 Example 2. therefore bZ ⊆ H. . . 2m ∈ 2Z. +).2. The well ordering principle of the integers tells us there must exist some b ∈ H such that b is the smallest positive integer in H. Proposition 2. Assume there exists an element m ∈ H such that m is not a multiple of b. Let H be a non-trivial subgroup of Z. 4. .2. because H is non-trivial it must contain some element a = 0 it must also contain −a and so either a or −a is positive. To show that SL2 (R) is a subgroup of . −2. • e=0 • It is closed under addition . Proof.

so H contains . The inverse of A. Proposition 2. h ∈ H. Any non-empty subset H of G is a subgroup if and only if gh−1 ∈ H for any g. Since e. Det(AB) = Det(A)Det(B). Conversely we must show that if gh−1 ∈ H for any g.8. COSETS AND LAGRANGE’S THEOREM GL2 (R) we must show that it satisﬁes all the group properties under matrix multiplication. h ∈ H Proof. It is obvious that eH eH = eH and eeH = eH e = eH . this will become a recurring theme. SUBGROUPS. we must show that eH = e where e is the identity in G. In order to show that SL2 (R) is closed we must make use of a fact about determinants. associativity applies to the entire group and so must apply to any subset as well. Since H is a group it must have an identity eH . The identity in any subgroup H of G must also be the identity in G Proof. for any g. Assume H is a subgroup of G then H is non-empty since e ∈ H. I will now outline some propositions that follow from the deﬁnition of a subgroup. h ∈ H then H is a subgroup of G. The identity in GL2 (R) is also in SL2 (R).    d −b  A−1 =   −c a is also in SL2 (R). If g ∈ H then e = gg −1 ∈ H so H contains an identity. CYCLIC GROUPS.22 CHAPTER 2. it follows that the product of two matrices with determinant one also has determinant one. so eH eH = eH e by left cancellation eH = e. Associativity is inherited from GL2 (R). h−1 ∈ H by the inverse property of a group and so gh−1 ∈ H by the closure property of a group.9. g ∈ H then g −1 = eg −1 ∈ H. Proposition 2. GROUPS.

3. . 2. Given two groups G1 and G2 . g2 ). g2 )(g1 . The identity element in G1 × G2 is (eG1 .3 Direct products It is possible to construct a group from other groups or decompose a given group into smaller parts these constructions are called direct products. H therefore satisﬁes all the requirements to be a subgroup. g2 ) is −1 −1 (g1 . g2 ) = (g1 g1 . There are two types of direct product. g2 ) : g1 ∈ G1 . g2 ∈ G2 } is a group under the following operation. This operation is clearly closed and associativity follows from the associativity of G1 and G2 . the interior direct product and the exterior direct product. gh = g(h−1 )−1 ∈ H. The interior direct product expresses a group in terms of some of its subgroups and the exterior direct product creates a group out of other groups. and so the multiplication g1 g1 takes place inside G1 and g2 g2 takes place inside G2 . (g1 . h ∈ H then g. Deﬁnition 2.1. DIRECT PRODUCTS 23 inverses.3. H is closed.2. h−1 ∈ H so. eG2 ) where eG1 is the identity in G1 and eG2 is the identity in G2 and the inverse of the element (g1 . G1 × G2 = {(g1 . the external direct product. If g. g2 g2 ) It should be noted that G1 and G2 could have completely diﬀerent group operation’s.

2) = ((1 + 1) mod 2. . (1.2. Z 2Z × Z 3Z = {(0. CYCLIC GROUPS. (0. . gn ) : g1 ∈ G1 . . . 2). . Consider the following external direct product. 0). then G is the interior direct product of H1 and H2 if and only if . |G| = |H1 ||H2 | 2. (1. (1. × Gn | = |G1 | . . . 0) The idea of an external direct product extends to any number of groups. h1 h2 = h2 h1 for all h1 ∈ H1 and h2 ∈ H2 . 0). G1 × . 2)} The addition opperation is as follows.3. . . gn ∈ Gn } The order of an external direct product is equal to the product of the orders of its constituent groups. the following direct product is deﬁned in exactly the same way. SUBGROUPS. (a1 . b1 ) + (a2 . (0. COSETS AND LAGRANGE’S THEOREM Example 2. . . H1 ∩ H2 = {e} 3.1.24 CHAPTER 2. GROUPS. . |Gn | Deﬁnition 2. |G1 × . 1). . b2 ) = ((a1 + a2 ) mod 2. 1). (b1 + b2 ) mod 3) so. 1. (1 + 2) mod 3) = (0. (1. Given a group G and two subgroups H1 and H2 .3. . 1) + (1. × Gn = {(g1 .

1. If g generates a group then so does its inverse g −1 .3. . this is because (g −1 )n = g −n and as n runs over the integers so does −n. Hi−1 . Hi+1 .4.3. . .2. 1} and 3Z = {0.2. . . |G| = |H1 | . A cyclic group G is one which is generated by a single element. The product of the these subgroups orders is equal to the order of Z / 2Z × Z / 3Z.1. . . . Deﬁnition 2. . The notion of an internal direct product extends to any set of subgroups H1 . . H2 if the following conditions hold. . |Hn | 2.3.4.3. 2} It is clear that Z / 2Z and Z / 3Z are subgroups of Z / 2Z × Z / 3Z.1.4 Cyclic Groups Deﬁnition 2. |Z 2Z||Z 3Z| = 2 × 3 = 6 = |Z 2Z × Z 3Z| The subgroups intersection is clearly trivial and since Z / 2Z × Z / 3Z is abelian the third condition also holds. This means there is some element g ∈ G such that G = {g n | n ∈ Z}. . . All the elements of a cyclic group generated by g are . Hi ∩ H1 . This example is the converse to example 2. CYCLIC GROUPS Example 2. 1. Hn = {e} 3. 25 Z Z 2Z = {0. When a group G is generated by a single element g we write G = g . hi hj = hj hi for all hi ∈ Hi and hj ∈ Hj 2. We say G is generated by g (and g is a generator of G). .

Proposition 2. If H = {e} then we choose n so that it is the smallest positive integer such that g n ∈ H. This can be rearranged giving g r = (g n )−q g m . . Let h = g m ∈ H be a general element of H. The group of integers Z with addition is a cyclic group generated by the single element 1.10.1. g m g n = g m+n = g n+m = g n g m Example 2. n). Every subgroup of a cyclic group is itself cyclic. then |g i | = n m where m = gcd(i. Z = 1 = {n1 | n ∈ Z} Proposition 2. GROUPS. Given a cyclic group G = g such that |G| = n then for any element g i ∈ G where 0 ≤ i ≤ n − 1.4. If H = {e} then H is cyclic and generated by e. we ﬁnish this proof by saying that any element in H must be an integral power of g n hence H = gn . the following proposition makes this clear. so G = g . this means that H is a set consisting of powers of g. using the division algorithm we can express g m = g nq+r = (g n )q g r where 0 < r < n. Given a cyclic group G = g then it is possible to determine the order of any element g i ∈ G.26 CHAPTER 2. Proof. Since g n ∈ H than so is its inverse and all its powers.11. COSETS AND LAGRANGE’S THEOREM powers of g. This means that m = nq and h = (g n )q . k times. CYCLIC GROUPS. This means that g r ∈ H with 0 < r < n but this contradicts our statement that n is the smallest positive integer such that g n ∈ H unless r = 0. Any element k ∈ Z can be generated by repeated addition of 1. Let G be a cyclic group. SUBGROUPS. Let H be a subgroup of G. the laws of exponents mean that any cyclic group is abelian.

12. Since m = gcd(i.4. Suppose g i ∈ g and i| |g|. i) = 1. Then.2.4. Proposition 2. CYCLIC GROUPS Proof. n).2. n in msn m 27 (g i ) m = g m = g = (g n )s = es = e therefore n m divides the order of g i . thus |g i | = Example 2. n m is the smallest power of g i which equals the identity. then gcd(i.11 shows that |g i | = |g| i . Using proposition 2.11. n |r m Therefore n m. Given a cyclic group G = g where |g| = n. i = ms and n = mp. n i | r m m but n m and i m are relitively prime so. The next result shows when a given element of a cyclic group generates the group. |g|) = i and since |g| = | g | proposition 2. this is only the case if m = gcd(n. Suppose that (g i )r = e then g ir = e therefore n must divide ir and so. . |g i | = n m where m = gcd(n. n) = 1 Proof. i). In order for g i to generate G it must have order n. Then an element g i ∈ G generates G if and only if gcd(i.

a−1 b ∈ H. b−1 c ∈ H.5 Cosets and Lagrange’s Theorem Deﬁnition 2. Transitivity .If a ∼ b then a−1 b ∈ H it follows from the properties of a subgroup that (a−1 b)−1 = b−1 a ∈ H and so b ∼ a. Given a subgroup H let the relation a ∼ b hold on a group G iﬀ a−1 b ∈ H. the subset aH = {ah | h ∈ H} is called a left coset of H in G.since e ∈ H we know that a ∼ a since aa−1 = e. GROUPS. 2.If a ∼ b . COSETS AND LAGRANGE’S THEOREM 2. Given a subgroup H of a group G. Let G = GLn (R) and H = SLn (R). (2) Given any a ∈ G then.13. So the equivalence class of a is given by aH. Proposition 2. Proposition 2.14. a ∼ b means that there exists some h ∈ H such that a−1 b = h. The equivalence classes for this relation are the left cosets of H in G.5. A similar deﬁnition can be made but instead of multiplying the subgroup on the left multiplication takes place on the right this leads to what is called a right coset. This relation forms an equivalence relation on G. Example 2. This means that a ∼ b iﬀ b ∈ aH. . Proof. and b ∼ c . Let A ∈ GLn (R) such that det(A) = x then the coset AH is simply the set of all matrices with determinant x.1.1.28 CHAPTER 2. 1. then a−1 bb−1 c = a−1 c ∈ H and so a ∼ c. It follows that b = ah hence b ∈ aH. then the following propositions are valid. Given two distinct cosets aH and bH then |aH| = |bH|. (1) Reﬂexivity .5. Symmetry . SUBGROUPS. CYCLIC GROUPS.

it is known as Lagrange’s theorem. Deﬁnition 2. In order to show that distinct cosets have equal cardinality we must show that it is possible to form a bijective map between them. Given a group G and a subgroup H. the image of these under f is also distinct. f : aH −→ bH f (ah) = ba−1 ah = bh This map is clearly well deﬁned since any element x = ah ∈ aH gets mapped to some element ba−1 x = bh ∈ bH. It is injective since given two distinct elements ah.2. COSETS AND LAGRANGE’S THEOREM 29 Proof. .5.5. ah ∈ aH. This is indeed possible by deﬁning the following map. To show this we will assume for the sake of contradiction that ba−1 ah = ba−1 ah .To show that the map is bijective we must show that it is both surjective and injective. we call the number of distinct cosets of H in G the index of H in G. This proves that distinct cosets are in bijection and hence have equal cardinality. f (ah) = ba−1 ah = bh. If there are n distinct cosets we denote this by [G : H] = n. It is surjective since every element bh for some h ∈ H is the image of ah under f .15. The previous two propositions allow us to prove an important theorem about groups. however by cancelling ba−1 on both sides this leads to a contradiction with our initial statement that ah and ah where distinct elements. Lagrange’s theorem says that the order of any subgroup H divides the order of the group G. Proposition 2.2. The fact that H is itself one of its own cosets (eH) means that the order each coset is equal to the order of the subgroup H. We must ﬁrst introduce some notation regarding cosets.

It also follows from Lagrange’s theorem that all groups whose order is prime are cyclic. The only element with order 1 is e hence all elements g ∈ G − {e} have order p and must therefore generate the group. Using Lagrange’s theorem it can be shown that any group G such that |G| = p where p is a prime has no subgroups except the trivial group and itself. Given a group G and a subgroup H the relation deﬁned in proposition 2. COSETS AND LAGRANGE’S THEOREM Proof. SUBGROUPS. This means that |G| = [G : H]|H| from which it follows that the order of H must divide that of G. So an element in a group of prime order p can only possibly have order 1 or order p.30 CHAPTER 2.14). This is because the order of any element g ∈ G can be deﬁned to be the order of the subgroup H = {g i | i ∈ Z} ⊆ G generated by that element. . GROUPS.13 partitions the group into [G : H] distinct cosets all with |H| elements (by proposition 2. CYCLIC GROUPS.

1. Given two groups G1 and G2 .1.Chapter 3 Homomorphisms and Isomorphisms “Mathematics is concerned only with the enumeration and comparison of relations. a homomorphism is a map f : G1 → G2 such that for all a.” Carl Friedrich Gauss 3.1 Homomorphisms Deﬁnition 3. b ∈ G1 f (ab) = f (a)f (b) It should be noted that the multiplication on the left takes place in G1 whereas on the right it takes place in G2 . 31 .

3. Proof. The following equation shows that f (a−1 ) = f (a)−1 .2. e = f (e) = f (aa−1 ) = f (a)f (a−1 ). The kernel of a homomorphism is the set of elements b ∈ G1 such that f (b) = e . f (a) = f (ea) = f (e)f (a) multiplying by f (a)−1 on the right we arrive at e = f (e). HOMOMORPHISMS AND ISOMORPHISMS Proposition 3.32 CHAPTER 3. We denote the image of a homomorphism f by Im(f ). This can be more formally deﬁned in set notation.3. Proof. . Given a homomorphism f : G1 → G2 . These are the image of a homomorphism and its kernel. Ker(f ) = {b ∈ G1 | f (b) = e } Proposition 3. The kernel of a homomorphism f is denoted by Ker(f ). The image of a homomorphism is the set of elements a ∈ G2 such that a = f (x) for some x ∈ G1 . In set notation this deﬁnition is.1. Im(f ) = {a ∈ G2 | a = f (x) for some x ∈ G1 } Deﬁnition 3. Given a homomorphism f : G1 → G2 . In order to study homomorphisms in more detail there are two important concepts that must be understood.2.1. Proposition 3. Deﬁnition 3. The kernel of a homomorphism f : G1 → G2 is a subgroup of G1 . f (a−1 ) = f (a)−1 .1. if e is the identity in G1 then f (e) = e where e is the identity in G2 . where e is the identity in G2 . for any a ∈ G1 .

2. . If a. f Det Sn − GLn (R) − → (R. . n → n.1 shows us that f (e) = e so e ∈ Ker(f ). 3. this operation can be shown to be closed since this composition is itself bijective. . n}. . HOMOMORPHISMS 33 Proof. but the two other groups will need some explanation. This example will discuss the following map.1. In order to understand what a homomorphism is more clearly I will outline an extensive example that should shed light on the concepts discussed above.3. If a ∈ Ker(f ) then f (a) = e. σ is a bijection} The group operation is the composition of bijective maps. The kernel satisﬁes all the properties necessary for a subgroup.1. The group Sn has as its underlying set all bijections σ from the set {1. Example 3. using proposition 3. 2. . 2.1. 2 → 2. . f : Sn → GLn (R) . . it is simple to show that this group satisﬁes all the necessary properties of a group. The group (R. . b ∈ Ker(f ) then f (a) = e and f (b) = e this means that f (ab) = f (a)f (b) = e and so the kernel is closed. . The ﬁrst part of this composite map is the map.2 f (a−1 ) = f (a)−1 = e−1 = e therefore the kernel contains inverses. . Proposition 3. The fact that these maps are bijective means that there exists an inverse map and the identity of the set is the map which sends 1 → 1. . Sn = {σ | σ : {1. . . . n} → {1. n} to itself. ×) is the real numbers under multiplication. . . ×) → − The group GLn (R) has already been discussed.

All the matrices possibly deﬁned by the map have a single non-zero entry on each row or column with a value of one. So any matrix of the deﬁned form can be constructed by the interchanging of rows/columns of the identity matrix. f (σ ◦ τ ) = f (σ)f (τ ) = (aij )(bij ) = (cij ) = ( k aik bkj ) The sum k aik bkj which gives the ij th entry of the product of the matrices (aij ) and (bij ) takes a value of one when σ(k) = i and τ (j) = k for some k. we call these permutation matrices. The kernel of the homomorphism contains only the identity permutation which is mapped to the identity matrix. The image of this homomorphism is not the whole of the codomain it is only the set of matrices constructed by interchanging the rows/columns of the identity matrix. τ ∈ Sn such that f (σ) = (aij ) and f (τ ) = (bij ) then. these are matrices with a non-zero determinant. given σ.34 CHAPTER 3. The codomain is the set of invertible matrices. ×) . this is because σ(j) can only result in one value i (σ is a bijection). This is precisely the condition for (σ ◦ τ )(j) = i therefor the product f (σ)f (τ ) is equal to f (σ ◦ τ ) and so the map is a homomorphism. The second part of the composite map is the map. The interchanging of rows/columns simply multiplies the determinant by −1 hence any matrix resulting from the deﬁnition of the map has determinant ±1 and so is in GLn (R). Det : GLn (R) → (R. HOMOMORPHISMS AND ISOMORPHISMS    σ → (aij ) = 1 : σ(j) = i   0 : otherwise We must show that this map is well deﬁned. We must also show that the map satisﬁes the properties of a homomorphism. this means it must take an element from the domain to the codomain.

Det(AB) = Det(A)Det(B) This is a relatively well known fact about the determinants of matrices and so I will not prove it. We have shown that both parts of the composite map are homomorphisms themselves it remains to show that the composition Det ◦ f is itself a homomorphism. The kernel of the homomorphism is the set of all matrices with determinant 1. B ∈ GLn (R) such that Det(A) = a and Det(B) = b then. HOMOMORPHISMS A → Det(A) 35 This map is well deﬁned since every matrix in GLn (R) has associated to it a determinant which is in R and there is a well-deﬁned way of arriving at this value. Given two homomorphisms h1 : G1 → G2 and h2 : G2 → G2 we need to show that h2 ◦ h1 is also a homomorphism. given A. This means that the Det map is a homomorphism. Given x. this is a very special set of matrices that represent all distance and angle preserving transformations of space.3. We must also show that this map satisﬁes the properties of a homomorphism. The image of Det is the whole of R since we can get a matrix with a determinant of any x ∈ R by simply multiplying the identity matrix by x. y ∈ G1 (h2 ◦ h1 )(xy) = h2 (h1 (xy)) = h2 (h1 (x)h1 (y)) = h2 (h1 (x))h2 (h1 (y)) = (h2 ◦ h1 )(x)(h2 ◦ h1 )(y) This means that our composite map of two homomorphisms is itself a homomorphism.1. It has as its image {±1} and its kernel is the set of all permutations .

Proof. The only diﬀerence between a homomorphism and an isomorphism is the bijective condition. For any elements g1 . This condition means that the image of an isomorphism is the entire codomain and the kernel consists only of the identity element in the domain. HOMOMORPHISMS AND ISOMORPHISMS whose matrix has determinant 1. Also since any bijective map has an inverse map which is also bijective the inverse of any isomorphism is itself an isomorphism. Given two groups G1 and G2 an isomorphism f is a bijective map.4. b ∈ G1 f (ab) = f (a)f (b). g1 g2 = f (g1 )f (g2 ) = f (g1 g2 ) = f (g2 g1 ) = f (g2 )f (g1 ) = g2 g1 .2. Given an isomorphism.2 Isomorphisms Deﬁnition 3. Therefore. Proposition 3. g2 ∈ G2 there exist elements g1 .1. g2 ∈ G1 such that f (g1 ) = g1 and f (g2 ) = g2 . 3.36 CHAPTER 3. f : G1 → G2 such that for all a. f : G1 → G2 if G1 is abelian then so is G2 . The bijective condition of an isomorphism means that both the codomain and the domain must have equal order. We call the kernel of this homomorphism the alternating group on n letters and it is denoted by An .

Given a cyclic group C such that |C| = ∞. let m.2. . Given a cyclic group C such that |C| = n. C = c = {c0 . it is necessary to show that cm = cn . f :Z→C n → cn Then.3. but this contradicts the fact that c has inﬁnite order and therefore cm = cn . Supposing for contradiction that cm = cn this implies that cm−n = e where m − n > 0. then C is isomorphic to Z / nZ that is the the group of integers modulo n. . f (m + n) = cm+n = cm cn = f (m)f (n) so f is a homomorphism. n ∈ Z such that m = n. . ISOMORPHISMS 37 Proposition 3. . . . for a = 0. The group Z / nZ = {[0]. . c1 .5. Since C is cyclic of order n there exists some element c that generates C. . cn−1 }. Proof. . . It must now be shown that f is bijective.6. .this shows that the map f is one-to-one. then C is isomorphic to Z. Since |C| = ∞ there exists an element c ∈ C such that c = C. n − 1 . The following map is clearly a bijection. Proposition 3. [n − 1]} consists of the n equivalence classes modulo n. The map is clearly onto since any element cn ∈ C is the image of n ∈ Z. . Deﬁne the following map. f : C → Z nZ ca → [a]. Assuming that m > n. Proof. 1. [1].

f (ca )f (cb ) = [a] + [b] = [a + b] = f (ca+b ) = f (ca cb ) .38 CHAPTER 3. HOMOMORPHISMS AND ISOMORPHISMS it remains to show that f is a homomorphism.

then H is called a normal subgroup if aH = Ha for all a ∈ G Proposition 4. Cr = {Ha : a ∈ G} It is not always the case that the left cosets are equal to the right cosets. Every subgroup H of an abelian group G is normal. that is aH = Ha for all a ∈ G. Cl = {aH : a ∈ G} and the set of right cosets of H in G are deﬁned as.2. Given a subgroup H of a group G. but when this is the case it allows for the construction of a new type of group. Deﬁnition 4. 39 .Chapter 4 Normal subgroups and Quotient Groups Given a group G and a subgroup H in G then the following deﬁnes the set of left cosets of H in G.1.0.

σ(2) = 3. The element. (12)}. . .0. . . Deﬁnition 4. . (13)} the subgroup H is clearly not a normal subgroup. σ(1) = 2. . NORMAL SUBGROUPS AND QUOTIENT GROUPS Proof. The identity permutation deﬁned by σ(1) = 1. . n} under composition can be represented in cycle notation in the following way.0. h ∈ G it is clearly the case that aH = Ha for any subgroup H in G. . 2. σ(3) = 1. The element (123) ∈ S3 is deﬁned by. 1. . Let G = S3 and let H = {(). . Example 4. . gHg −1 ⊂ H for all g ∈ G 3. . σ : {1. 2. is deﬁned to be the bijective map σ such that σ(ai ) = ai+1 and an+1 = a1 . gHg −1 = H for all g ∈ G Given a group G and some normal subgroup H it is possible to form a group G / H which has as its underlying set the set of all cosets of H in G. . .1. The subgroup H is normal in G 2. n} for all i and each ai is distinct. The group Sn which consists of all bijective maps.40 CHAPTER 4. Given a group G and a normal subgroup H the following statements are equivalent. (23)} and (123)H = {(123). . n} → {1. σ(2) = 2. and as its group operation aHbH = abH.3. . 2. (a1 . Since ah = ha for all a. an ) where ai ∈ {1. since H(123) = {(123). . σ(3) = 3 is represented by ().

41 The multiplication on this group must be well deﬁned. .} = Even Integers 1 + 2Z = {±1. therefore. h2 ∈ H. H is a normal subgroup since G is abelian. . + 0 + 2Z 1 + 2Z 0 + 2Z 0 + 2Z 1 + 2Z 1 + 2Z 1 + 2Z 0 + 2Z . . ±4. . Let G = Z and let H = 2Z. Let aH = bH and cH = dH then it must be shown that. . . this means that the product of two cosets must not depend on the coset representative.2. 0 + 2Z = {0.0. ±2. acH = bh1 dh2 H = bh1 dH (xH = H for all x ∈ H) = bh1 Hd (xH = Hx since H is normal) = bHd = bdH The identity in the group is eH = H and the inverse of aH is a−1 H.} = Odd Integers The multiplication table for Z / 2Z is. The cosets of H in G are. (aH)(cH) = acH = bdH = (bH)(dH) If aH = bH and cH = dH then a = bh1 and c = dh2 for some h1 . ±3. Example 4.

NORMAL SUBGROUPS AND QUOTIENT GROUPS It is possible to give an upper bound on the orders of the elements in a quotient group. Given a group homomorphism.42 CHAPTER 4. . f (an ) = f (a)n = (aH)n = an H n = eH =H Therefore |aH| divides |a| and |aK| ≤ |a| The next proposition shows that given any group homomorphism the kernel is a normal subgroup. Proposition 4.3. f :G→G H g → gH Suppose the element a ∈ G has order n then. Given a quotient group G / H the order of aH ∈ G / H divides the order of a ∈ G and therefore |aH| ≤ |a|. f : G1 → G2 then K = Ker(f ) is normal in G1 . this is shown in the next proposition. The following homomorphism is deﬁned. Proof.2. Proposition 4.

Let g ∈ G and k ∈ K be arbitrary elements. Deﬁne the following map. then f (G1 ) = Im(f ) is isomorphic to G1 / K.4. Given the following group homomorphism. Proof. f (gkg −1 ) = f (g)f (k)f (g −1 ) = f (g)ef (g −1 ) = f (g)f (g −1 ) = f (g)f (g)−1 =e Therefore gKg −1 ⊆ K for all g ∈ G.43 Proof. The following result. f : G1 → G2 where K = Ker(f ). Proposition 4. Since the kernel of a homomorphism is a normal subgroup of the domain it is possible to form a quotient group of the domain and the kernel. shows that this quotient group is isomorphic to the image of the homomorphism. In order to prove that K is a normal subgroup of G we must show that gKg −1 ⊆ K for all g ∈ G. known as the ﬁrst isomorphism theorem. τ : G1 K → f (G1 ) gK → f (g) It is necessary to show that this map is well deﬁned and does not depend on the .

NORMAL SUBGROUPS AND QUOTIENT GROUPS choice of coset representative. g1 k = g2 . this shows that the map τ does not depend on the coset representative. τ (g1 K) = f (g1 ) = f (g1 )f (k) = f (g1 k) = f (g2 ) = τ (g2 K). To show that the map is one-to-one. It is clear that τ is onto. It remains to show that τ is a homomorphism. τ (aKbK) = τ (abK) = f (ab) = f (a)f (b) = τ (aK)τ (bK) . suppose that −1 τ (g1 K) = τ (g2 K). Let g1 K = g2 K then for some k ∈ K. This means that f (g1 ) = f (g2 ) and so f (g1 g2 ) = e −1 −1 therefore g1 g2 ∈ K and g1 g2 K = k =⇒ g2 K = g1 K.44 CHAPTER 4.

Part II The Isomorphism Problem for Finitely Generated Abelian Groups 45 .

.

1 Sylow’s Theorems The Sylow Theorems provide a partial converse to Lagrange’s Theorem. 47 . The following is the formal statement of this result given without proof. This theorem says that the order of any subgroup must divide the order of the group from which it comes. The Sylow Theorems partially make such a claim. however it does not say that there exists a subgroup whose order divides that of the group for every possible divisor of the groups order.1 (Sylows ﬁrst Theorem).Chapter 5 Classiﬁcation of Finite Abelian Groups 5. In Lagrange’s Theorem a relationship is shown between the order of a subgroup and the order of the group which contains the given subgroup. Theorem 5. Given a ﬁnite abelian group G such that. |G| = pk a. The main result of the Sylow Theorems is that for every prime power which divides the order of the group there exists a subgroup with order equal to the prime power divisor.

. The Sylow Theorems go on to give certain information about the number of Sylow p-subgroups for a given p in any group. CLASSIFICATION OF FINITE ABELIAN GROUPS where p is a prime and p a. abelian or not. This result can be used to give us information regarding the number of Sylow p-subgroups in a ﬁnite abelian group. Theorem 5.48 CHAPTER 5. since by deﬁnition a subgroup is normal if gHg −1 = H for all g ∈ G. Sylows ﬁrst Theorem and proposition 5. . Using the second Sylow Theorem it is clear that there can only be a single Sylow p-group for a given p in an abelian group. There exists a subgroup H of G such that.1.2 (Sylows second Theorem). in a ﬁnite group G are conjugate in G This result means that if a group G contains Sylow p-subgroups S1 . |H| = pk such a subgroup is called a Sylow p-subgroup. . Given a ﬁnite abelian group G such that |G| = pk a and p a then there exists only one Sylow p-subgroup. Sn then Si = gSj g −1 for some g ∈ G. All Sylow p-subgroups. Proof. A very important result of the Sylow Theorems for our investigation of ﬁnite abelian groups is the following. . By Sylows ﬁrst Theorem if |G| = pk a and p a then there exists a subgroup H such that |H| = pk .1 allow us to make the following claim about ﬁnite abelian groups. This means that our subgroup H is normal in G and is therefore equal to its conjugates. Proposition 5. To show that there is only one such subgroup we make use of the fact that all subgroups of an abelian group are normal. for a given p.

The above results allow us to take a ﬁrst step towards a classiﬁcation of ﬁnite abelian groups. G = Z pki Z ⊕ . . Given a ﬁnite abelian group G such that. The ﬁrst is the interior direct sum of ﬁnitely many cyclic groups each of which has prime power order. Cleary pi a since all the pi are prime. Simply let. . .2.. .2) . It is a well-known result that any integer can be uniquely factored into the product of prime powers. . n 1 2 where each pi is prime and ki ∈ N then there exists a single sylow p-subgroup for each pi . 49 |G| = pk1 pk2 . .2. G = Z a Z ⊕ . pkn .2 The decomposition of Finite Abelian Groups In this section it will be shown that any ﬁnite abelian group can be decomposed into the interior direct sum of ﬁnitely many cyclic groups. ⊕ Z a Z 1 n (5. The second cannonical form which can be formed from the ﬁrst is as follows.1.1) where the ki ∈ N and the pi are not neseccerely distinct primes. . Proof. THE DECOMPOSITION OF FINITE ABELIAN GROUPS Proposition 5. pi−1 pi+1 . There are two cannonical decompositions for a ﬁnite abelian group. The proof then follows from proposition 5. ⊕ Z pkn Z n i (5.5. pkn n 1 k k for each pi . i−1 i+1 a = pk1 . 5.. .

. In order to reach this decomposition we must now show that any group of prime power order can be decomposed into the interior direct sum of cyclic groups of prime power order.3. pkn . CLASSIFICATION OF FINITE ABELIAN GROUPS where ai | ai+1 . n 1 2 where each pi is prime and ki ∈ N. . . Proposition 5. The order of G is clearly equal to the product of the orders of the subgroups S1 . The intersection of two Sylow p-subgroups for diﬀerent p is trivial since a Sylow p-subgroup can only contain elements of order a power of p (using Lagrange’s Theorem). . . Given a ﬁnite abelian group G such that. Therefore two Sylow p-subgroups for diﬀerent p cannot contain elements of equal order and their intersection must be trivial. It is then simply a matter of showing that these subgroups i satisfy the properties of an interior direct sum (deﬁnition 2. . Sn .50 CHAPTER 5. . but these are not necessarily cyclic and so we have not reached the required decomposition into cyclic groups of prime power order. Proposition 5.3. . Sn . . We have now shown that a ﬁnite abelian group can be decomposed into the direct sum of its Sylow p-subgroups. |G| = pk1 pk2 . Proof. Since each Si is a subgroup of an abelian group they are necessarily normal in G. .3). G is therefore isomorphic to the interior direct sum of its Sylow p-subgroups. . This will enable us to further decompose the Sylow p-subgroups in the decomposition achieved above into cyclic groups of prime power order. G is isomorphic to the interior direct sum of its Sylow p-subgroups S1 . we will then have proved the existence of the ﬁrst canonical form.2 tells us that there exists a Sylow p-subgroup Si with order pki for every i.

c ∈ a otherwise b ∈ a and we chose b so that this was not the case. Let a ∈ G have maximal order pm then for any x ∈ G this implies that xp m = e.2. Therefore bp = ai for some i and so |ai | ≤ pm−1 since (ai )p bpp m−1 m m−1 = (bp )p m−1 = = bp = e.5. So in what follows we will assume m < n. This means that |b| = p since b was chosen to be an element with smallest order outside a . = Let b ∈ G be an element with smallest possible order not contained in a . We will argue by induction on n.11). We assume the proposition is true for all groups of order pk where k < n. Then. This means that bp ∈ a since b was chosen to be an element of smallest order outside a . Let a be an element with maximal order in G. Proof. G∼ a ⊕K = for some subgroup K. cp = a−pj bp = b−p bp = e so |c| ≤ p but no element in G can have order less than p so |c| = p. THE DECOMPOSITION OF FINITE ABELIAN GROUPS 51 Proposition 5. Let c = a−j b. |xα | = Therefore |bp | = |b| p |x| α for any α such that α | |x| (proposition 2. Given an abelian group G such that |G| = pn where p is a prime and k ∈ N . Therefore ai does not generate a because only an element with order pm would. For all x ∈ G. i and pm must therefore have a common divisor. and so bp has smaller order than b. If m = n then a generates G and the theorem is proved we simply let K = {e} and G ∼ a ⊕ {e}. . i = pj for some j and therefore bp = ai = apj .4. We will now show that a ∩ b = {e}. Since p is the only possible divisor of pm . If n = 1 then |G| = p and by Lagrange G is cyclic with order p.12). If ai did generate a its exponent would have to be relatively prime to the order of a (proposition 2.

Therefore ¯ ¯ |¯| = pm and a must have maximal order in G. ¯ ¯ ¯ and deﬁne K = ψ −1 (K). m−1 ¯ Let G = G / b and let x = x b . Suppose that x ∈ a ∩ K then x = a ∩ K = e = ¯ ¯ ¯ b (using our induction hypothesis) which implies that x ∈ b as well as x ∈ a by assumption. Example 5. = The following is an example of this prime power decomposition. This contridicts the fact that |a| = pm ¯ and so |¯| ≥ |a| = pm but no element in the quotient group G can have order a larger than the element with the largest order in G (proposition 4. the result follows by induction.2. g→g b . but b ∈ a . |G| b = pn p = pn−1 and ¯ ψ : G → G. let G be a ﬁnite abelian group such that |G| = 252 = 22 32 71 .1. |G| = a ¯ using our induction hypothesis. Both subgroups are normal in G since G is abelian and all that is left to show is that | a K| = |G| = pn . ¯= ¯ ¯ G∼ a ⊕K ¯ We can form the following homomorphism from G to G.52 CHAPTER 5.2). so a ∩ K = {e}. |K| = n−1 |K| | b | and ¯ so |K| = | b ||K| = p ppm = ppn−1−m = pn−m therefore | a ||K| = pm pn−m = pn . CLASSIFICATION OF FINITE ABELIAN GROUPS We can now conclude that a ∩ b = {e} because if there were to exist some element in the intersection then every element of b must also be contained in the intersection including b itself. . ¯ (a b )p m−1 = ap m−1 b = b and so ap m−1 ∈ b and since it is also a power of a it must be in a ∩ b = {e}. ¯ The order of a K is given by | a K| = | a ||K| = pm |K|. We can now conclude that G ∼ a ⊕K. Suppose |¯| < |a| = pm then (¯)p ¯ a a = e.

it could either have order 32 or order 31 . = = We now have. THE DECOMPOSITION OF FINITE ABELIAN GROUPS Using proposition 5. = |S1 | = 22 . G ∼ Z 4Z ⊕ Z 9Z ⊕ S3 = or G ∼ Z 2Z ⊕ Z 2Z ⊕ Z 9Z ⊕ S3 = or G ∼ Z 2Z ⊕ Z 2Z ⊕ Z 3Z ⊕ Z 3Z ⊕ S3 = . 53 We will begin by using proposition 5. |S3 | = 71 . In the second S2 ∼ Z / 3Z ⊕ K where |K| = 3 and therefore = = K ∼ Z / 3Z and so S1 ∼ Z / 3Z ⊕ Z / 3Z.3 to decompose S1 into an interior direct product of cyclic subgroups. it could either have order 22 or order 21 . |S2 | = 32 . In the second S1 ∼ Z / 2Z ⊕ K where |K| = 2 and = = therefore K ∼ Z / 2Z and so S1 ∼ Z / 2Z ⊕ Z / 2Z. There are two possibilities for the order of the element with largest order in S1 . again there are two possibilities for the order of the element with largest order. In the ﬁrst case S1 ∼ Z / 4Z .2.5. G ∼ S1 ⊕ S2 ⊕ S3 where. In the ﬁrst case S2 ∼ Z / 9Z. = = So far we have. G ∼ Z 4Z ⊕ S2 ⊕ S3 = or G ∼ Z 2Z ⊕ Z 2Z ⊕ S2 ⊕ S3 = We move on to S2 .2.

We will show that the following map satisﬁes the properties of an isomorphism. [a]n ) . They are. Z ∼Z mnZ = mZ ⊕ nZ Z Proof. n) = 1 then. CLASSIFICATION OF FINITE ABELIAN GROUPS G ∼ Z 4Z ⊕ Z 3Z ⊕ ⊕Z 3Z ⊕ S3 = The ﬁnal Sylow subgroup S3 can only have elements of order 7 or 1 and so S3 ∼ Z / 7Z. G ∼ Z 4Z ⊕ Z 9Z ⊕ Z 7Z = or G ∼ Z 2Z ⊕ Z 2Z ⊕ Z 9Z ⊕ Z 7Z = or G ∼ Z 2Z ⊕ Z 2Z ⊕ Z 3Z ⊕ Z 3Z ⊕ Z 7Z = or G ∼ Z 4Z ⊕ Z 3Z ⊕ Z 3Z ⊕ Z 7Z = In order to show the existence of the second canonical form we will need to use a result known as the Chinese remainder theorem. So ﬁnally we can conclude that there are four abelian groups of = order 252 upto isomorphism. f : Z mnZ → Z mZ ⊕ Z nZ [a]mn → ([a]m .3 (Chinese Remainder Theorem).54 or CHAPTER 5. Given a cyclic group Z / mnZ if gcd(m. Theorem 5.

G = Z a Z ⊕ . We must show that if f (x) = f (y) then x = y. Using this result we can collect together cyclic groups whose orders are relatively prime into a single cyclic group. THE DECOMPOSITION OF FINITE ABELIAN GROUPS 55 The orders of the two groups are equal since |Z / mZ⊕Z / nZ| = |Z / mZ||Z / nZ| = mn = |Z / mnZ|.2. Starting from the prime power decomposition of a ﬁnite abelian group G we can collect together cyclic groups whose orders are relatively prime in such a way as to reach the second canonical form previously outlined. using the Chinese remainder theorem we can collect together the cyclic factors with the highest power for each prime in the decomposition and then move onto the second highest power until all the cyclic factors have been collected together. .. G = Z pki Z ⊕ .2. Due to this fact all that it is necessary to show for the map to be an isomorphism is that the mapping is one-to-one. ≤ pn . x − y = k3 mn and so x and y must be in the same congruence class modulo mn and therefore x = y. n) = 1.5. Since gcd(m. This will lead to the second canonical decomposition as is shown in the next example.2. That is. We saw before that there exist four abelian groups G of order . ⊕ Z a Z 1 n where ai | ai+1 .. Example 5. if the image of x and y are equal then this means that x − y = k1 m (x and y are in the same congruence class modulo m) and x − y = k2 n (x and y are in the same congruence class modulo n). We start by writing G as a direct product of cyclic groups with prime power order. . . ⊕ Z pkn Z n i we can arrange the cyclic factors so that p1 ≤ p2 ≤ . .

CLASSIFICATION OF FINITE ABELIAN GROUPS 252 we will convert each into the second canonical form. G ∼ Z 2Z ⊕ Z 2Z ⊕ Z 3Z ⊕ Z 3Z ⊕ Z 7Z = Z ∼Z = 6Z ⊕ 42Z and the last.56 CHAPTER 5. G ∼ Z 4Z ⊕ Z 3Z ⊕ Z 3Z ⊕ Z 7Z = Z ∼Z = 84Z 3Z ⊕ . G ∼ Z 4Z ⊕ Z 9Z ⊕ Z 7Z = ∼Z = 252Z The second is. The ﬁrst isomorphism class is. G ∼ Z 2Z ⊕ Z 2Z ⊕ Z 9Z ⊕ Z 7Z = Z ∼Z = 2Z ⊕ 126Z the third.

x = ki gi + . . gi ∈ G for i = 1. (6. (6. gn There are three elementary transformations that can be applied to a gen57 . . S = {g1 . G = g1 . gn } the following notation is sometimes used. . n. . .1 Generators An abelian group G is ﬁnitely generated if there exists a ﬁnite set. . . . n. . ki ∈ Z for i = 1. If a group G is generated by the set S = {g1 . . . by deﬁnition the trivial group has generating set S = {} and so has rank 0. . . .Chapter 6 Generators and Relations 6.2) Given a generating set S for a group G the rank of G is deﬁned to be the cardinality of S. + kn gn . . . .1) such that any arbitrary element x ∈ G can be expressed as. . . . gn }. . .

. . . + ki gi + . + (ki − kj b)gi + . . . Multiplying a generator by −1 If gi is multiplied by −1. gi . . . . . gn } → S = {g1 . gj + bgi . . . + kn gn . gj . . . gn } any x ∈ G can now be expressed using the new generating set S as. gi . x = k1 g1 + . . . gn } any x ∈ G can now be expressed using the new generating set S as. + (−ki )(−gi ) + . . Reordering of generators If gi is swapped with gj . x = k1 g1 + . . . . . . . . . . . . . gi . + kj (gj + bgi ) + . . S = {g1 . . . . S = {g1 . . . GENERATORS AND RELATIONS erating set S for an abelian group G. . . . 1. .58 CHAPTER 6. gi . . . . . . Adding a multiple of one generator to another If b times gi is added to gj . gn } → S = {g1 . . gj . . . . . . . . . gn } any x ∈ G can now be expressed using the new generating set S as. . . . . . S = {g1 . gn } → S = {g1 . . + kn gn 2. . . . gj . . . . . . . . . gi . . . . . . x = k1 g1 + . . −gi . . . . . . + kn gn 3. + kj gj + .

. . . . 1. .3) It is possible to apply the elementary transformations 1. gn )T (6. . the following vector can be formed.4) 2. Multiplying a generator by −1 Let Eφ(i) be the matrix obtained by multiplying the ith row of the n × n identity matrix. .1.5) 3. .j. . gn )T (6. . . Given a generating set. The transformation of the generating set leads to a corresponding transformation of the coeﬃcients for a general element x ∈ G. gi . . . as in (6. −gi . . Adding a multiple of one generator to another Let Eτ (i.1).j) be the matrix obtained by swapping the ith and j th rows (i < j) of the n × n identity matrix.6. . Eλ(i. gn )T (6. Reordering of generators Let Eλ(i. . Eφ(i) g = (g1 .j) g = (g1 . GENERATORS 59 These three transformations to the generating set S produce a new set S which is also a generating set for G. . this will be made clearer shortly. . It should be noted that there exists an inverse transformation for each elementary transformation and that it is possible to compose transformations. . It is possible to use the tools of linear algebra in order to transform a generating set. . . gj . .b) be the matrix obtained by adding b ∈ Z times the ith row to . . g = (g1 . 2 and 3 by left multiplication by certain elementary n × n matrices. .

. . . .i) = I. . . mn ). the following proposition makes this clear. x = (kP −1 )(P g) = mg’ where g’ = P g and m = kP −1 = (m1 . as in (6. x = kg where k = (k1 . . kn ). Proof. . .1).j. . mi ∈ Z for i = 1. n. Eτ (i. then P g is also a generating set for G where P is a product of the elementary matrices Eλ(i. Eφ(i) Eφ(i) = I. n.60 CHAPTER 6. Therefore any element x ∈ G can expressed in terms of the generating set P g.j. GENERATORS AND RELATIONS the j th row of the n × n identity matrix. . . . gn )T (6. ki ∈ Z for i = 1. . gj + bgi . . . .b) . Any x ∈ G can be expressed as. gi . Proposition 6. . Eφ(i) and Eτ (i. Eτ (i. . . Eλ(i.6) The determinant of each of these matrices is ±1.1. . .j. . . Using the fact that P has an inverse whose entries are all integers this is equivalent to.−b) = I Any product of these elementary matrices has a determinant of ±1 and is itself a legitimate transformation of the generating set g.b) Eτ (i.j.b) g = (g1 . . . Given an abelian group G with generating set g. . . this means that they all have inverses and that the inverse contains only integers.j) . .j) Eλ(j.

Given a free group F . + kn fn → (k1 . . kn fn . .2 Relations Given a generating set g for an abelian group G. .7) It is clear that every generating set satisﬁes at least one relation that is the trivial relation. . .8) then it is known as a free group. kn ) Given two elements x. it is possible to form the following map. 0g = 0g1 + .8) It is however possible that a given group satisﬁes non-trivial relations. y ∈ F where. . a relation is any linear combination of generators that is equal to the identity. kg = k1 g1 + . .6. .2. . If a group satisﬁes only the trivial relation (6. . freely generated by S = {f1 . fn }. + 0gn = ex (6. . . RELATIONS 61 6. . . . . φ : F → Zn k1 f1 + . . in fact this is the case for most groups. x = k1 f1 + . kn fn y = k1 f1 + . . + kn gn = e (6.

. . . kn ) =⇒ (k1 . GENERATORS AND RELATIONS φ(x + y) = φ(k1 f1 + . .62 then. the homomorphism φ is also clearly onto. . . . . . . . . F ∼ Zn = where F is a free group generated by {f1 . φ(x) = φ(y) =⇒ (k1 . . (kn + kn )) = (k1 . . . kn ) = (k1 . . . . . kn ) = φ(x) + φ(y) and so φ is a homomorphism. kn fn ) = φ((k1 + k1 )f1 + . . . . . . . 0) =⇒ ki − ki = 0 for i = 1. . . . . CHAPTER 6. . . . . n =⇒ ki = ki for i = 1. . . . . . . . . . . . (6. (kn + kn )fn ) = ((k1 + k1 ). . Therefore φ is an isomorphism and we can conclude that. . kn ) + (k1 . . .9) . kn fn + k1 f1 + . . 0) =⇒ ((k1 − k1 ). . n =⇒ x = y The above chain of implications shows that φ is a one-to-one map. kn ) − (k1 . . . . This homomorphism is also bijective as will now be shown. . . fn }. (kn − kn )) = (0. . kn ) = (0.

The subgroup K of Zn has inﬁnite order since if x ∈ K then so is ax for a ∈ Z. and so using the ﬁrst isomorphism theorem (proposition 4. since S is a generating set for G. . . . . kn ) → k1 g1 + . The kernel K of this homomorphism is in one-to-one correspondence with all relations satisﬁed by the generators of G. The following homomorphism can be formed. 63 . Proposition 7. . . .4) G ∼ Zn / K = where K = Ker(τ ). . . The following result shows that any subgroup of a ﬁnitely generated free abelian group is itself a ﬁnitely generated free abelian group. Let F be a ﬁnitely generated free abelian group of rank n then any subgroup R of F is also a ﬁnitely generated free abelian group of at most rank n.1.Chapter 7 Group Presentations Given an abelian group G with generating set S = {g1 . + kn gn (7. .1) This homomorphism has the whole of G as its image. = τ : Zn → G (k1 . gn } and a free group F ∼ Zn .

+ kn fn → k1 We can restrict θ to a homomorphism φ from R onto Z. . our base case is proved and we will assume the result holds for all ﬁnitely generated free abelian groups of rank n − 1 or less. The kernal K of φ is a subgroup of F generated by {f2 .7). We will now argue by induction. The Image of R.64 CHAPTER 7. θ:F →Z k1 f1 + . R = r0 + K . .7) for some positive integer m. Let F be freely generated by {f1 . If we form the following homomorphism. is a subgroup of Z and so is either {0} or mZ (proposition 2. This means that any element r ∈ R can be expressed as the sum of an element in r0 and an element in K. φ(R). . For a general element r ∈ R. . . . GROUP PRESENTATIONS Proof. . fn } with rank n − 1 and so by our induction hypothesis is a ﬁnitely generated free abelain group of at most rank n − 1. . r = qr0 + (r − qr0 ) where φ(r − qr0 ) = qm − qm = 0 and so r − qr0 ∈ K. . fn }. If n = 1 then F ∼ Z and = any subgroup is either itself inﬁnite cyclic and so has rank 1 or is the trivial subgroup and so has rank 0 (proposition 2. If φ(R) = {0} then K = R and so R is a ﬁnitely generated free abelian group of at most rank n − 1. φ(r) = qm where q ∈ Z and r can be expressed as. . If φ(R) = mZ then there exists some r0 ∈ R such that φ(r0 ) = m. We must show that the result holds for groups of rank n.

0.3) where A = (kij ) is an r × n matrix and f = {f1 . . . k1s f1 + . . .65 If cr0 ∈ K then φ(cr0 ) = 0 and so cm = 0 which means that c = 0. . . Given a relation matrix. . + kn1 fn . . The generators of the kernel K in (7.1) are linear combinations of the generating elements of F . . rs }T = {k11 f1 + . rn } can be represented as a column vector. fn }T is the generating set for the free group F . . ri = k1i f1 + . The entries in each row of the matrix determine the generating set for K. f2 . + kns fn }T = Af (7. f3 }. it contains all the information necessary to construct the group G as a quotient group F / K.   7 A= 1 21 5  27   8 The number of columns is equal to the rank of the free group F and so in this case F is freely generated by the set {f1 . . . . Therefore R = r0 ⊕ K and R is a ﬁnitely generated free abelian group of at most rank n. Example 7. . . The matrix A is known as the relation matrix for the group G. . . . . . . This shows that the only element in both r0 and K is 0 and so r0 ∩ K = {0}. in this case K is freely generated by . . + kni fn for i = 1. s (7.1. r = {r1 .2) The generating set {r1 . . . . .

In the next chapter the matrices P and Q will be chosen so that the relation matrix P AQ has a very simple form. the matrix P A still represents the same group G.5 and 6.2) for a ﬁnite abelian group. GROUP PRESENTATIONS {7f1 + 21f2 + 27f3 . The left multiplication of A by P results in a series of row operations being applied to A. G ∼ f1 . 6.6 ).5) The relation matrix P AQ still represents the same group G but is now in terms of a diﬀerent generating set for F which is now freely generated by f ’ = Q−1 f. f3 = 7f1 + 21f2 + 27f3 .4.66 CHAPTER 7.4) This transformation of the generating set r results in a corresponding transformation of the relation matrix A and since the set P r still generates the kernel K. P r = P Af (7. In order for this multiplication on the right to have no eﬀect on the structure of the kernel K a corresponding left multiplication by Q−1 must be applied to the generating set f. if multiplication on the right by an n × n matrix Q is introduced this results in a series of column operations being applied to A. . this form will be similar to the second canonical form (equation 5. f1 + 5f2 + 8f3 }. f2 . P r = P AQ(Q−1 f) (7. f1 + 5f2 + 8f3 The generating set r of K can be transformed using left multiplication by an s × s matrix P (equations 6. The group G represented by A is therefore.

. .j) .. .Chapter 8 Smith Normal Form 8. . 1). . Eφ(i) and Eτ (i. Using elementary row/column operations which correspond to matrix multiplication on the left/right by Eλ(i. .Initial step . Proof.j) to bring the element with smallest absolute value in the ﬁrst row/column of A into position (1. 0 0 a2 .1... . ak  0 0 0             (8.m (a1 .1) such that a1 |a2 | . . . . .1 Smith Normal Form algorithm Proposition 8. 0 0 . . |ak . 0 ..b) any n×m matrix A can be reduced to the form. ak ) =       0 . .. . this element is known as the pivot.Begin by using row/column operations of type Eλ(i. . . . 67 . If this element is negative multiply the ﬁrst row/column by −1 using Eφ(i) .  a1       diagn.j. (1) ..

b) it is possible to clear ﬁrst row and ﬁrst column of A leaving a matrix of the following form. Repeated application of (3) will produce a decreasing sequence of positive pivot elements and so this process will terminate after a ﬁnite number of steps. j).j.   a1 A= 0 A    (8.After repeated application of steps (1) and (3) and a single application of step (2).If the pivot divides all other elements in the ﬁrst row/column of A.68 CHAPTER 8. If the new pivot divides all the elements in the ﬁrst row/column of A then it is possible to clear the ﬁrst row/column as above (2). (3) .2) 0 where A is an (n − 1) × (m − 1) matrix. a matrix of the form (8. j). SMITH NORMAL FORM (2) . if not then the Euclidian algorithm is again applied (3). This operation will leave the value r in position (1.Euclidian Algorithm . then it is possible to express a1j as. The whole . a1j = qa11 + r.It may sometimes be the case that an element in the ﬁrst row/column of A is not divisible by the pivot.j.b) . 0 ≤ r < a11 Using column operations of type Eτ (i. (4) . If this element is a1j in the ﬁrst row of A at position (1. Returning to the initial step (1) the element in position (i. then using operations of type Eτ (i. this element will be strictly less than a11 .2) is achieved.Clear rows/columns .Induction .j. j) will become the new pivot element. If the element that was not divisible by the pivot was in the ﬁrst column of A then a similar process can be applied as above except using row operations of type Eτ (i.b) it is possible to subtract q times the ﬁrst column from the q th column.

  r  0    0   r s  →  s 0 s (5b) . not necessarily satisfying the divisibility condition.   g  bs  0   as where b and a are positive integers. subtracting the smaller element from the larger. until the ﬁrst row is of the form (0 g) or (g 0). s) and l = lcm(r. SMITH NORMAL FORM ALGORITHM 69 process is now repeated inductively on the matrix A .Divisibility -For any two positive integers r and s. of the desired form (8. s) then g|bs and so a suitable multiple of the ﬁrst row can be subtracted from the second so that the second row is of the form (0 l) the matrix has now been reduced to the necessary form. . (5) . (5c) .   r  0    0   l 0   g ∼ 0 s where g = gcd(r. Eventually a matrix. Since g = gcd(r.Assuming r < s.1. Repeat this process.If the ﬁrst row is (0 g) swap columns and multiply the second column by −1 so that the matrix is now of the form.1) will be achieved. s). The following steps achieve the disired form. then subtract as many lots of the ﬁrst column from the second whilst keeping s ≥ 0. (5a) .Add the second row to the ﬁrst row. the use of row/column operations will have no eﬀect on cleared rows/columns of A.8.

. r’ = P r = P AQf ’ where f ’ = Q−1 f. . (2. P AQ =  ..4) . (1. 8. 0fk+1 . . 2). . .. j) = (1. kn ).. 0 0 . This will lead to a diagonal matrix that satisﬁes the divisibility condition.1) is generated by the following set. n. . . The homomorphism τ can be deﬁned in the following way. .   a1   0    . . ak fk . ak  0 0 0             and therefore K is generated by r’ = (a1 f1 ... . . (1. let r = ai and s = aj then taking (i. .70 CHAPTER 8. .2 Application of Smith form to a relation matrix The kernel K of the homomorphism τ (7. 3).   0   0 a2 . 3). . SMITH NORMAL FORM (6) . . . (2. 0fn )T . .  . . This is equivalent to. . . . . k).3) where k = (k1 . 0 . . (kQ)(Q−1 f) → (kQ)(Q−1 g) (8.. . k) . . Using the smith normal algorithm it is possible to ﬁnd matrices P and Q such that. . . . . . ki ∈ Z for i = 1.. . .The process in (5) can be applied to the matrix A by taking r and s to be the non-zero diagonal elements in a systematic way. . kf → kg (8. . .

. gi ∩ g1 . . . . . . . . . . . Assume that αgi ∈ g1 . . . . . gn then. b1 g1 + . . . . where ei is the ith standard basis vector for Zn . . . . . .6) . ⊕ Z a Z ⊕ Zn−k = 1 k where a1 |a2 | . . . . This means that |gi | = ai for i = 1. . . . . . . . gi−1 . gn is trivial. n. . bi−1 fi−1 − αfi + bi+1 fi+1 + . If it can be shown that the intersection between gi and g1 . . . gi+1 . . . it is clear that mfi ∈ K if and only if ai |m and so mgi = e if and only if ai |m.5) where g’ = Q−1 g. Letting k = mei for i = 1. This shows that. . . G ∼ Z a Z ⊕ . Using the above deﬁnition of τ it follows that kg’ = e if and only if kf ’ ∈ K.8. + bn fn ∈ K and so ai |α and αgi = e. gi+1 . . + bn gn = e therefore. . . gi+1 . APPLICATION OF SMITH FORM TO A RELATION MATRIX and since k is an arbitary vector. then this is exactly the condition for G to be the interior direct sum of the subgroups gi for i = 1. k and |gi | = ∞ for i = k + 1. gi−1 . |ak . . . . . (8.2. . . . gi−1 . n. b1 f1 + . . n. gn = {e} and so. . 71 kf ’ → kg’ (8. bi−1 gi−1 − αgi + bi+1 gi+1 + .

.

this for loop will increment 73 . 9.Chapter 9 Smith Normal Algorithm in Matlab In this chapter a detailed explanation of the Matlab code found in Appendix B will be outlined. this is the length of the main diagonal of A and will be used in the main loop of the program. this will be used to terminate the program.1 Code Analysis The code begins (lines 2 .5) by ﬁrst initialising the necessary global variables. Line 3 saves the number of rows in the variable I and the number of columns in the variable J. Line 4 saves min(I. This chapter will conclude with a discussion of the strengths and weakness’ of this particular program for ﬁnding the Smith normal form of an integer matrix. On line 2 the size of the input matrix A is stored as 1 × 2 vector containing the number of rows/columns in A. The code will ﬁrst be examined line by line and then the program will be applied to a sample matrix. J) in the variable t. Line 5 initialises the break condition. The main loop of the program begins on line 7.

along with the position of these elements in A. line 21 tests if there were any non-zero elements found. SMITH NORMAL ALGORITHM IN MATLAB along the main diagonal of A starting at k = 1 and terminating at k = t. If the condition on line 38 is not met then the program moves on to line . Line 16 checks if the pivot is equal to zero. This leaves the k th row/column of A consisting entirely of zeros except for the element in position (k. lines 18 and 19 move this element into the pivot position. this loop will continue until certain break conditions are met. Line 11 saves the element in position (k. are divisible by the pivot. If none were found then line 22 sets the variable ﬁnish now to true. except the pivot. Line 38 checks if all the elements in the k th row/column of A. Line 34 again resets the value of the variable pivot in order to take account of any changes made by lines 30 to 32. If this is the case then lines 40 to 48 clear the k th row/column of A using elementary row/column operations. this break condition causes k to increment and so the algorithm moves down the diagonal. Lines 13 and 14 ﬁrst check if the pivot is negative and if this is the case the k th column is multiplied by −1 in order to make the pivot positive. On lines 21 to 24 the ﬁrst break condition is tested and applied. Line 36 creates a new variable B this variable is a three row matrix that contains the values of all elements on the k th row/column of A. this is necessary because lines 13 to 26 could have changed the element in the pivot position. k) to the variable pivot. k) and lines 30 to 32 check if it is positive and if not makes sure it is. Line 26 resets the pivot to the value of the element in position (k. if this is the case line 17 ﬁnds the ﬁrst non-zero element in the section of A that is to the right and below the pivot. k).74 CHAPTER 9. On line 23 the program breaks out of the unconditional while loop. Line 50 breaks out of the unconditional while loop. except the pivot. On line 9 an unconditional while loop is begun.

i) if there is a zero at position (i.1. Lines 72 to 74 check if the variable ﬁnish now is set to true if this is the case then the program brakes out of the main for loop.9. in the variable j1. except the pivot) that are not divisible by the pivot. Lines 79 to 103 take care of the divisibility condition of the smith normal form. if it is then lines 64 and 65 subtract q times the k th row from the row containing the element and then swaps this row with the k th row. This line creates a new matrix variable j that contains the column number of the elements in B (k th row/column of A. If the element is in the k th row then the same thing happens except using column operations (lines 67 and 68). i) in the matrix A. i) = gcd(A(i. If the element is negative then line 60 works out how many times it is necessary to add the pivot to the element to make it positive and saves this value in the variable q. On lines 93 to 95 the variable b is set to zero if no zeros appear on the diagonal of A. the column location in B of the element with smallest absolute value that does not divide the pivot. The zeros will always appear in the bottom section of the diagonal due to lines 16 to 19. and so it is possible to ignore these entries when making the matrix satisfy the divisibility condition. Lines 89 to 91 counts how many times one appears in B and therefore how many zeros appear on the diagonal of A. On line 79 an empty matrix B is created. Line 55 extracts the position in the matrix A of this element from the matrix B. this value is saved in the variable b. Line 54 saves. CODE ANALYSIS 75 53. i). Line 63 checks if the element with smallest absolute value that does not divide the pivot is in the k th column. k)) and . Line 57 checks if this element is positive. lines 81 to 87 populate B with a one in position (1. if it is then line 58 works out how many times the pivot can be subtracted from the element whilst leaving it positive and saves this value in the variable q. Lines 97 to 103 systematically apply the divisibility condition by setting A(i. A(k.

(1.   26 A= 40  80   124 The program begins by initialising the global variables. . The ﬁnal line of the program sets the matrix A equal to the output variable res. j) = (1. 3). (2. 9. SMITH NORMAL ALGORITHM IN MATLAB A(k. (t − b − 1. . . Line 11 creates the variable pivot and sets it equal to the value of the element in position (1. k) = lcm(A(i. . A(k. (i. . . . k)) for. . (2.76 CHAPTER 9. t − b). . 1). pivot = 26 The program then checks if the variable pivot is less than zero or equal to zero. t − b). . pivot = A(k. t − b) This divisibility condition could be applied using elementary row/column operations but this would be computationally ineﬃcient when there exist inbuilt gcd and lcm operations in matlab. J = 2. The for loop begins with k = 1 and the unconditional while loop also begins. t = 2 and ﬁnish now = false.k). . The ﬁrst example will show the steps taken in the application of the program to the following 2 × 2 matrix.2 Application to sample matrices This section will show the individual steps taken by the program when applied to particular matrices. both these tests return false and so the program moves on to line 37. . . I = 2. i). 2).

k+1:J) A(k+1:I. Line 58 extracts from the matrix B the position of this element in the matrix A. the ﬁrst row of this matrix contains the values of the elements in the 1st row/column of A. The 2nd and 3rd rows of B contain each entries position in the matrix A. [i j]=ind2sub(size(B(1. location = 2 1 . this is clearly not the case and so the program moves on to line 56.k)’.k*ones(1. location = B(2:3.find(rem(B(1. B = 80 1 2 40 2 1 On this line the matrix B is created. in this case 40.k+1:J k*ones(1.pivot) ~= 0)).I-k)].:).9.J-k) k+1:I. The next line selects the element with minimum absolute value that does not divide the pivot.:)). this matrix stores the column numbers of all the elements in the top row of B that are not divisible by the pivot.j1)’. In this case none of the elements are divisible by the pivot.2. i = 1 j = 1 2 1 Line 56 creates a new matrix j. APPLICATION TO SAMPLE MATRICES 77 B = [A(k. On line 41 the program checks if all the elements in the top row of B are divisible by the pivot.

the 2nd row and 1st column of A.:). A(location(1). In this case the above process was repeated two more times resulting in the following matrix.:)=A([k location(1)]. Line 60 checks if the entry in position (2. A = 14 26 44 80 The pivot element now has a value of 14 which is less than 26. 1).:)=A(location(1). in this case since the element in position (2. Since this is true the program now rounds down the value of variable q. A = 26 14 80 44 A([location(1) k].:)-q*A(k. SMITH NORMAL ALGORITHM IN MATLAB The entry is therefore in position (2. q = floor(A(location(1).location(2))/pivot). resulting in 1 and saves this in the 1 Line 66 checks whether to use row or column operations to reduce the pivot. . 1) is in the 1st column row operations will be used. this process is repeated until the pivot element divides all the elements in the 1st row/column.:). q = 40 26 . 1) is positive.78 CHAPTER 9.

2. . A = 2 0 0 -12 On line 50 the program breaks out of the unconditional while loop and the value of k is incremented. The pivot is now set equal to the entry in position (2. APPLICATION TO SAMPLE MATRICES 79 A = 2 12 8 36 The test on line 38 now returns true and the following row/column operations (lines 40 to 48) clear the 1st row/column of A. A = 2 0 8 -12 and then 4 times column one are subtracted from column two. pivot = A(k. Firstly six times row one are subtracted from row two resulting in.9. 2). pivot = -12 The test on line 13 returns true since the pivot is negative and so the 2nd column is multiplied by −1.k).

80

CHAPTER 9. SMITH NORMAL ALGORITHM IN MATLAB

A(:,k)=-A(:,k); A =

2 0

0 12

The program now continues up until line 38, the test on this line returns true. The for loops on lines 40 and 45 both loop over the range 3 : 2, but this range returns the following value, 3:2 ans =

Empty matrix: 1-by-0 and so these loops are skipped over and the program moves on to line 50. On this line the program breaks out of the unconditional while loop and since the main for loop, over the diagonal of A, has been completed the program moves on to line 79. Lines 79 to 110 have no eﬀect on this matrix since it is already in the necessary form. In this next example it will be shown what happens when the program cannot ﬁnd any non-zero entries to move to the pivot position on line 17. The program was applied to the following matrix;   36  A =  156   252 84 364 588  36   156    252

After completing the ﬁrst iteration of the main loop, k = 2, the following matrix has been achieved;

9.2. APPLICATION TO SAMPLE MATRICES A =

81

4 0 0

0 0 0

0 0 0

The program tries to ﬁnd a non-zero entry to move into the pivot at position (2, 2), clearly no such element exists. On line 21 the test returns true and so ﬁnish now is set to true, the program then breaks out of the unconditional while loop. On line 72 this test also returns true and so the program breaks out of the main for loop and moves on to line 79. Lines 79 to 110 have no eﬀect on the matrix since it is already in the desired form. The next example will show one of the main drawbacks of this method for ﬁnding the smith normal form. The method tends to lead to entry explosion [2], this means that even if the ﬁnal smith form has comparatively small values along the diagonal the intermediary steps may result in extremely large entries. If these entries become greater than the maximum ﬂoating point value then the result of the program may not be accurate. The following matrix;

B =

1494 17814 1118 1318 3504

274 2874 178 214 564

342 7806 518 578 1548

284 3836 244 280 756

6164 72332 4532 5372 14224

was obtained by applying a series of row/column operations to the following diagonal matrix;

82 A =

CHAPTER 9. SMITH NORMAL ALGORITHM IN MATLAB

2 0 0 0 0

0 4 0 0 0

0 0 8 0 0

0 0 0 16 0

0 0 0 0 32

When the program was applied to the matrix B the following intermediary matrices were found; A =

2 0 0 0 0

0 131633088 387436 -767236 26863764

0 22885776 67360 -133392 4670544

0 25206104 74188 -146916 5144076

0 547018760 1610048 -3188352 111635944

A =

1.0e+010 *

0.0000 0 0 0 0

0 0.0000 0 0 0

0 0 -1.3996 0.0041 -0.2856

0 0 -0.0015 0.0000 -0.0003

0 0 -5.8182 0.0169 -1.1871

0000 A = 2 0 0 0 0 0 4 0 0 0 0 0 8 0 0 0 0 0 16 0 32 0 0 0 0 As can be seen the values in the matrix reached an absolute value of ≈ 1013 .0004 -0.0000 0 0 0 0 0 -0.0000 0 0 0 -1.0000 0 0 0 0 0 0.2.0000 0 0 0 0 0 0. It is conceivable that for some matrix the values could become as large as the largest ﬂoating point value at which point the usual arithmetic operations would not be properly deﬁned. . This would result in an inaccurate result for the ﬁnal smith form.4434 -0.0e+013 * 0.9. APPLICATION TO SAMPLE MATRICES A = 83 1.

.

each group can be realised as a quotient group. . . gn } respectively. such that S = P XQ. . The matrix S. ”Given two ﬁnitely generated abelian groups G and G .Chapter 10 The decision problem All the necessary theory has now been outlined in order to answer the following question. are these groups isomorphic?” It has been shown that given the groups G and G . . It has also has been shown that given any relation matrix X there exists an equivalent matrix S. . . with generating sets {g1 . which deﬁne respectively the groups G and G . These quotient groups can be completely deﬁned by the relation matrices R and R . This means that the relation matrices R and R . each have an associated smith form S = P RQ and S = P R Q . In order to show that G is isomorphic to G . as a relation matrix. the smith form of X. deﬁnes a group which is isomorphic to the group deﬁned by the relation matrix X. it must be shown 85 . . . gn } and {g1 .

It is sometimes the case that the smith form contains multiple ones in the ﬁrst entries of the diagonal. Z Z 2Z ⊕ 6Z and the group represented by R2 is isomorphic to. If we assume that S = S then. This process is not as simple as just checking if the two matrices are the same. these entries represent the direct product of multiple copies of the cyclic group of order one. Z Z Z Z Z ∼Z 6Z = 2Z ⊕ 6Z Z⊕ Z⊕ 2Z ⊕ . S = S =⇒ P RQ = P R Q =⇒ P R = P R Q Q−1 =⇒ R = P −1 P R Q Q−1 =⇒ R = P R Q where P = P −1 P and Q = Q Q−1 The program found in Appendix B takes two relation matrices and determines if their smith forms are equal. S2 =   6  0  0   0     0   6 These relation matrices represent isomorphic groups since the group represented by R1 is isomorphic to. The following relation matrices in smith form make this clear.86 CHAPTER 10. THE DECISION PROBLEM that R = P R Q . However the cyclic group of order one is simply the identity and can be ignored.    2 S1 =  0  1 0 1 0 0 0 0 2 0 0     0 0    . and therefore represent isomorphic groups.

Lines 4 and 5 store the dimensions of the smith forms and lines 6 and 7 create an empty vector that will store the isomorphism class for each group. Lines 9 to 28 deal with the matrix B1. 10. 4Z Z 2Z ⊕ Z⊕Z⊕Z So when the initial relation matrix has more columns than rows.1. lines 2 and 3 store the smith forms of A1 and A2 in the variables B1 and B2 respectively. n equals the diﬀerence between the number of columns and the number of rows.10. the group represented by the smith form must have n copies. The next.   2 S= 0 0 4 0 0  0   0 880 160 54  176   10 32 This relation matrix represents the following group. CODE ANALYSIS 87 Sometimes a relation matrix. of Z added on. has more columns than rows. The ﬁrst. checks if B1 has more columns than rows.   396 R= 72 The smith form of the matrix R is.1 Code Analysis This section will analyse line by line how the program in Appendix B works. before it is put into smith form. on line 9. The program takes as its input two relation matrices A1 and A2 and returns the isomorphism class for each and a truth value of one if the groups represented by the relation matrices are isomorphic or zero if they are not. these lines contain three tests. on line 16. . Lines 2 to 7 initialise the global variables.

10. THE DECISION PROBLEM checks if there are more rows than columns and ﬁnally line 22 checks if there are an equal amount of rows and columns. As the loop progresses each diagonal element is checked to see if it is equal to one. if it is not then the element is added to the vector which stores the isomorphism class. Lines 51 and 52 store the dimensions of the isomorphism class vector for each relation matrix.2. If the dimensions agree then line 57 checks if the vectors contents are equal and sets val to one if this is true and zero if it is not. Line 54 checks if the matrices dimensions are unequal.2 Examples Example 10.1. Lines 30 to 49 repeat this process but for the matrix B2.88 CHAPTER 10. B1 = 10 0 15 0 3 30 5 46 20 9 3 0 5 0 1 40 0 60 4 12 50 2 75 10 15 B2 = 58 192 6 20 . if this is the case the groups are not isomorphic and so val is set to zero. These tests simply allow the program to decide the size of the diagonal and choose a suitable range to loop over.

10. G1 ∼ G2 ∼ Z 2Z ⊕ Z 4Z = = . EXAMPLES 89 [val c1 c2] = iso(B1.B2) val = 1 c1 = 2 4 c2 = 2 4 The groups G1 and G2 represented by the relation matrices B1 and B2 are both isomorphic.2.

2. G1 ∼ Z 3Z ⊕ Z 6Z ⊕ Z 12Z = . THE DECISION PROBLEM The next example shows two relation matrices which represent non-isomorphic groups.B2) val = 0 c1 = 3 c2 = 6 12 6 12 48 The group G1 represented by the relation marix B1 is. B1 = 534 222 540 84 36 84 273 114 276 B2 = 48 204 60 6 114 6 192 864 240 [val c1 c2] = iso(B1.2. Example 10.90 CHAPTER 10.

EXAMPLES and the group G2 represented by the relation marix B2 is.2. 91 . G2 ∼ Z 6Z ⊕ Z 12Z ⊕ Z 48Z = these groups are not isomorphic.10.

.

neglecting cyclic factors of order one. The problem of 93 . As this project has merely scraped the surface of modern group theory there are many possible avenues for further investigation. The main question of the project has been answered using the tools of linear algebra and an algorithmic approach has been implemented in Matlab in order to provide a solution. It has been shown that any ﬁnitely generated abelian group can be represented by a relation matrix and that using the smith normal diagonalisation process this matrix can be put into a particularly simple form. by building upon the group axioms. This form corresponds to an abelian group in terms of cyclic factors and is similar. It has also been shown that if the smith normal form of two relation matrices is identical. The project has investigated two diﬀerent aspects of modern group theory. with the addition of inﬁnite cyclic factors. the foundational results in group theory. ﬁrstly it has shown the abstract proof driven nature of group theory and secondly it has touched upon the extremely large ﬁeld of computational group theory. to the proven form for abelian groups of ﬁnite order. then the relation matrices represent isomorphic groups.Chapter 11 Conclusion This project has laid out.

investigating particular algorithms used in group theory. .94 CHAPTER 11. CONCLUSION deciding when two non-abelian groups are isomorphic has been shown to be undecidable for all but certain classes of groups [1] and so it would be interesting to investigate some of these particular classes of group. A more in depth study of computational group theory could also be undertaken. The classiﬁcation of ﬁnitely generated abelian groups is a particular instance of a more general result about ﬁnitely generated modules over principal ideal domains and so this area could also warrant investigation.

[3] Euclid Euclids Elements 2002: Green Lion Press [4] Michael Artin Algebra 1991: Prentice-Hall [5] David S. Durbin Modern algebra: An Introduction 2000: Wiley [8] Israel Kliener A History of Abstract Algebra 2007: Birkhauser 95 . Sacerdote Some Undecidable Problems in Group Theory 1972: Proceedings of the American Mathematical Society [2] George Havas and Bohdan S. Dummit and Richard M. Foote Abstract Algebra 2004: John Wiley and Sons [6] Walter Ledermann and Alan J. Majewskii Integer Matrix Diagonalization 1997: Journal of Symbolic Computation.Bibliography [1] George S. Weir Introduction to Group Theory 1996: Longman [7] John R.

.

[ j +(k−1) k ] ) . if pivot < 0 A ( : . [ k : J ] ) ) >= 1 . e l s e i f p i v o t ==0 [i j] = i n d 2 s u b ( s i z e (A ( [ k : I ] . ’ f i r s t ’ ) ) . 1 . [ k j +(k−1) ] ) = A ( : . : ) = A ( [ i +(k−1) k ] . t = min ( s z ) . : ) . for k = 1: t while 1 p i v o t = A( k . k )=−A ( : . [ I J ] = s i z e (A) .m 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 f u n c t i o n r e s = smithnormal (A) s z = s i z e (A) . [ k . A ( [ k i +(k−1) ] . finish now = f a l s e .Appendix A smithnormal. k ) . 97 . k ) . f i n d ( abs (A ( [ k : I ] . J ] ) ) . 18 19 A ( : .

k +1: J ) A( k +1: I . end p i v o t = A( k . p i v o t ) ˜= 0 ) ) . h )−q∗A ( : . h ) / p i v o t .98 APPENDIX A. p i v o t ) ) == 0 f o r h = k +1: I q = A( h . finish now = true . k ) . : ) ) . end break end [ i j ]= i n d 2 s u b ( s i z e (B ( 1 . break end end p i v o t = A( k . k +1: J k∗ o n e s ( 1 . if pivot < 0 A ( : . I−k ) ] . : ) . k ) . k ) . : ) .M 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 i f i s e m p t y ( i )== 1 . A ( : . k∗ o n e s ( 1 . : ) . k ) ’ . f i n d ( rem (B ( 1 . k ) . 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 i f any ( rem (B ( 1 . k ) / p i v o t . SMITHNORMAL. J−k ) k +1: I . : ) −q∗A( k . h )=A ( : . : ) =A( h . k )=−A ( : . . A( h . end f o r h = k +1: J q = A( k . B = [A( k .

end end if f i n i s h n o w == t r u e break end end B = []. i )==0 B( i ) =1. A ( [ l o c a t i o n ( 1 ) k ] . : ) . : ) =A ( [ k l o c a t i o n ( 1 ) ] .99 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 j 1=f i n d ( abs (B ( 1 . ’ f i r s t ’ ) . 1 . : ) )==min ( abs (B( 1 . end end . l o c a t i o n ( 2 ) )>0 q = f l o o r (A( l o c a t i o n ( 1 ) . else A ( : . end if l o c a t i o n ( 2 ) == k A( l o c a t i o n ( 1 ) . : )−q∗A( k . l o c a t i o n ( 2 ) )=A ( : . [ k l o c a t i o n ( 2 ) ] ) . for i = 1: t i f A( i . j 1 ) ’ . : ) . k ) . l o c a t i o n ( 2 ) ) / p i v o t ) . l o c a t i o n ( 2 ) )− q∗A ( : . else q = c e i l (A( l o c a t i o n ( 1 ) . : )=A( l o c a t i o n ( 1 ) . [ l o c a t i o n ( 2 ) k ] )=A ( : . l o c a t i o n = B( 2 : 3 . l o c a t i o n ( 2 ) ) / p i v o t ) . i f A( l o c a t i o n ( 1 ) . A ( : . j ) ) ) .

i ) . h ) ) ] . i ) . end f o r i = 1 : t−b f o r h = i +1: t−b A ( [ i h ] .A( h . [ i h ] ) =[ gcd (A( i .100 APPENDIX A.m . 101 102 103 104 end end r e s = A.M 89 90 91 92 93 94 95 96 97 98 99 100 i f i s e m p t y (B) == 0 z e r o p o s=f i n d (B==1) .A( h . else b = 0. smithnormal. 0 lcm (A( i . SMITHNORMAL. h ) ) 0 . [ a b]= s i z e ( z e r o p o s ) .

J1−I 1 ) ] . k ) ˜= 1 c l a s s 1 = [ c l a s s 1 B1 ( k . B2 = smithnormal (A2) . class1 = [ ] . [ I 2 J2 ] = s i z e ( B2 ) . end end 101 . end end c l a s s 1 = [ c l a s s 1 z e r o s ( 1 . [ I 1 J1 ] = s i z e ( B1 ) . k ) ] . A2) B1 = smithnormal (A1) .Appendix B iso. k ) ] . e l s e i f I 1 > J1 f o r k =1: J1 i f B1 ( k .m 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 f u n c t i o n [ v a l c l a s s 1 c l a s s 2 ] = i s o (A1 . i f I 1 < J1 f o r k =1: I 1 i f B1 ( k . class2 = [ ] . k ) ˜= 1 c l a s s 1 = [ c l a s s 1 B1 ( k .

ISO. k ) ] . k ) ] . else . [ I 2 J2 ] = s i z e ( c l a s s 2 ) . e l s e i f I 2 > J2 f o r k =1: J2 i f B2 ( k . end end end i f I 2 < J2 f o r k =1: I 2 i f B1 ( k . k ) ˜= 1 c l a s s 1 = [ c l a s s 1 B1 ( k . end end e l s e i f I 2 == J2 f o r k =1: J2 i f B2 ( k . end end c l a s s 2 = [ c l a s s 2 z e r o s ( J2 − I 2 ) ] . k ) ] . k ) ] .M 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 e l s e i f I 1 == J1 f o r k =1: J1 i f B1 ( k . end end end [ I 1 J1 ] = s i z e ( c l a s s 1 ) . i f J1 ˜= J2 val = 0. k ) ˜= 1 c l a s s 2 = [ c l a s s 2 B2 ( k .102 APPENDIX B. k ) ˜= 1 c l a s s 2 = [ c l a s s 2 B2 ( k . k ) ˜= 1 c l a s s 2 = [ c l a s s 2 B2 ( k .

103 57 58 59 60 val = isequal ( class1 .m . end end iso. class2 ) .