Knot classification and enumeration
Nicholas James Jackson
Supervised by Dr Brian Sanderson
30th September 1997
Joseph Leslie Slack (1908-1996)
Wilfred Leslie Jackson (1932-1997)
Contents
1 Introduction
1.1 Knots, links and diagrams . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
1.2 Acknowledgements . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
2 Notations
2.1 Tait’s notation . . . . . . . . . . . . .
2.2 Dowker and Thistlethwaite’s notation
2.3 Conway’s notation . . . . . . . . . . .
2.3.1 Tangles . . . . . . . . . . . . .
2.3.2 Polyhedra . . . . . . . . . . . .
2.3.3 Tangle equivalences . . . . . .
2.3.4 Orientation and string-labelling
6
6
7
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
8
8
10
10
11
13
13
15
3 Invariants
3.1 The Seifert pairing . . . . . . . . . . . . . . . . . . . . . . . .
3.2 Determinant, signature and nullity . . . . . . . . . . . . . . .
3.3 The Alexander polynomial . . . . . . . . . . . . . . . . . . . .
3.4 The Conway potential function . . . . . . . . . . . . . . . . .
3.4.1 Kauffman’s approach — the single-variable polynomial
3.4.2 Conway’s approach — the many-variable polynomial .
3.5 The Kauffman bracket and the Jones polynomial . . . . . . .
3.5.1 The Kauffman bracket . . . . . . . . . . . . . . . . . .
3.5.2 The L-polynomial . . . . . . . . . . . . . . . . . . . .
3.5.3 The Jones polynomial . . . . . . . . . . . . . . . . . .
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
17
17
20
20
21
21
23
23
23
25
26
4 Rational tangles, 4-plaits and two-bridge knots
4.1 Schubert’s normal form . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
4.2 Plaits and braids . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
4.3 Conway’s normal form . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
27
27
29
31
5 Slice knots and Cobordism
5.1 Slice knots . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
5.2 Cobordism . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
38
38
42
6 Machine computation
6.1 Preliminaries . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
6.1.1 The vector class . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
6.1.2 String-manipulation functions . . . . . . . . . . . . . . . . . . . . . . . .
44
44
44
44
2
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
6.2
6.3
Laurent polynomials . . . . . . . . . . .
Conway’s normal form . . . . . . . . . .
6.3.1 Determinant . . . . . . . . . . .
6.3.2 The Kauffman bracket . . . . . .
6.3.3 The writhe . . . . . . . . . . . .
6.3.4 The Kauffman L-polynomial and
A C++ sourcecode
A.1 vector . . . . . . . . . . .
A.1.1 vector.h . . . . .
A.1.2 vector.cc . . . .
A.2 String-handling functions
A.3 polynomial . . . . . . . .
A.3.1 polynomial.h . .
A.3.2 polynomial.cc . .
A.4 cnf . . . . . . . . . . . . .
A.4.1 cnf.h . . . . . . .
A.4.2 cnf.cc . . . . . .
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
3
.
.
.
.
.
.
.
.
.
.
. .
. .
. .
. .
. .
the
. . . . . . . . . . .
. . . . . . . . . . .
. . . . . . . . . . .
. . . . . . . . . . .
. . . . . . . . . . .
Jones polynomial
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
45
45
45
46
46
47
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
i
i
i
i
iii
iv
iv
v
viii
viii
ix
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
List of Figures
1.1
Reidemeister moves . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
2.1
2.2
2.3
2.4
2.5
2.6
2.7
2.8
2.9
2.10
Tait’s notation for the knot 63
Dowker-Thistlethwaite notation
Example tangles . . . . . . . .
Tangle symmetries . . . . . . .
Elementary tangles . . . . . . .
Tangle operations . . . . . . . .
A transcendental tangle . . . .
Basic polyhedra . . . . . . . . .
Flyping . . . . . . . . . . . . .
Positive and negative crossings
.
.
.
.
.
.
.
.
.
.
9
11
11
11
12
12
13
14
15
16
3.1
3.2
The Seifert algorithm . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Crossing change . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
18
18
4.1
4.2
4.3
4.4
4.5
4.6
4.7
4.8
4.9
4.10
4.11
4.12
4.13
4.14
4.15
4.16
Bridge labelling . . . . . . . . . . . . . . . . . . . . . . .
The two-bridge knot S(3, −1) . . . . . . . . . . . . . . .
Construction of a plait from a braid . . . . . . . . . . .
Geometric interpretation of the braid group Bm . . . . .
Deformation of a 2m-plait into an m-bridge presentation
4-plait presentation of a rational knot . . . . . . . . . .
Deformation of a rational knot . . . . . . . . . . . . . .
Conway’s normal form . . . . . . . . . . . . . . . . . . .
Regular diagram of a 4-plait . . . . . . . . . . . . . . . .
Deformed diagram of a 4-plait . . . . . . . . . . . . . . .
Horizontal rotation . . . . . . . . . . . . . . . . . . . . .
Effect of an odd horizontal rotation . . . . . . . . . . . .
Vertical rotation . . . . . . . . . . . . . . . . . . . . . .
Final horizontal rotation . . . . . . . . . . . . . . . . . .
The numerator of two rational tangles . . . . . . . . . .
N (A + B) in Conway’s normal form . . . . . . . . . . .
5.1
5.2
5.3
5.4
The reef knot 31 #3∗1 as a section through a knotted 2-sphere in
K#K ∗ is a slice knot . . . . . . . . . . . . . . . . . . . . . . .
Ribbon singularity . . . . . . . . . . . . . . . . . . . . . . . . .
The reef knot as a ribbon knot . . . . . . . . . . . . . . . . . .
6.1
6.2
. .
for
. .
. .
. .
. .
. .
. .
. .
. .
. . . . .
the knot
. . . . .
. . . . .
. . . . .
. . . . .
. . . . .
. . . . .
. . . . .
. . . . .
. . .
819
. . .
. . .
. . .
. . .
. . .
. . .
. . .
. . .
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
28
28
30
30
31
31
32
32
32
33
33
34
34
35
37
37
S4
. .
. .
. .
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
38
40
41
41
Plait ends . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Calculation of the writhe of the knot 52 . . . . . . . . . . . . . . . . . . . . . .
45
47
4
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
7
Chapter 1
Introduction
This dissertation is based mostly on John Conway’s 1970 paper An enumeration of knots and
links and some of their algebraic properties [5] and follows, broadly, the structure of that paper.
I have attempted to expand and expound upon the material therein, referring in many cases
to other papers or books which are listed in the bibliography.
It should be stated that none of the material in this dissertation, with the possible exception
of the C++ sourcecode in the appendix, is original work. My aim is to provide an expository
work examining a number of topics in classical knot theory.
1.1
Knots, links and diagrams
This section is intended to serve as a very brief introduction to the mathematical theory of
knots, defining some basic concepts and terminology. More thorough introductions may be
found in [4], [17] and [9] amongst others. Some more traditional (non-mathematical) texts on
knots include [2], [8] and [10].
`n
A knot is an embedding K : S 1 → S 3 and a link is an embedding L : i=1 S 1 → S 3 , that is,
a finite number of (possibly linked) knots. In practice, the distinction between the embeddings
and their images is often not made, and the terms ‘knot’ and ‘link’ will be used to refer to
either unless stated otherwise.
A knot K is usually depicted by means of a projection p : K → R2 . A point P ∈ p(K) is said to
be a multiple point if the preimage p−1 (P ) is not a single point. A projection is regular if it
has only a finite number of multiple points, all of which are double points, and no vertex of K
is mapped onto a double point. The minimal number of double points in a regular projection of
a knot K is called the order or crossing number of K. The image p(K) is called a diagram
for K.
Two embeddings f0 : X → Y and f1 : X → Y are isotopic if there is an embedding F :
X × I → Y × I such that F (x, t) = (f (x, t), t) for x ∈ X and t ∈ I = [0, 1] with f (x, 0) = f0 (x)
and f (x, 1) = f1 (x). F is called a level-preserving isotopy between f0 and f1 .
Two embeddings are said to be ambient isotopic if there is a level-preserving isotopy H :
Y × I → Y × I with H(y, t) = (ht (y), t) such that f1 = h1 f0 and h0 = idY . H is called an
ambient isotopy.
Two knots, K1 , K2 are then said to be equivalent, or of the same knot type, denoted K1 ≈K2
if they are ambient isotopic.
Two knot diagrams D1 , D2 are said to be equivalent, written D1 ∼ D2 , if one can be transformed into the other by an ambient isotopy of the plane, and a finite sequence of Reidemeis-
5
ter moves, as depicted in figure 1.1.
−1
✛R1
✲
R1
−1
✛R2
✲
R2
−1
✛R3
✲
R3
Figure 1.1: Reidemeister moves
Theorem 1.1 (Reidemeister 1932)
Given two knots (or links) K1 and K2 with diagrams D1 and D2 respectively, K1 is ambient
isotopic to K2 iff D0 ∼ D2 .
1.2
Acknowledgements
I would like to thank my supervisor, Dr Brian Sanderson, for his help and encouragement, and
for introducing me to the mathematical theory of knots. I would also like to thank my fellow
graduate students for interesting discussions and helpful advice, in particular Michael Greene
for his help with proofreading, and Neil Gamble and family for getting me interested in knots
in the first place, several years ago.
6
Chapter 2
Notations
Perhaps the most fundamental question in knot theory, at least historically, is that of classification and enumeration — that is, to devise a method of cataloguing all essentially different
knots of a given degree of complexity. This is usually approached by classifying knot diagrams,
with a particular number of crossings, up to invariance under the Reidemeister moves and
ambient isotopy of the plane. What is required, then, is some concise and consistent notation
for describing a knot diagram. In this chapter we describe and examine three different systems
of notation.
2.1
Tait’s notation
The first serious attempt at an exhaustive enumeration of knots was undertaken by the Victorian physicist Peter Guthrie Tait in the late nineteenth century [20].
Tait’s motivation and inspiration for this study came from Kelvin’s theory of vortex atoms,
which regarded atoms as, in some sense, knots in the vortex lines of the æther. The lack
of any detailed correlation between the knot tables compiled by Tait (and his collaborators
Kirkman and Little) and Mendeleev’s periodic table of the elements was a serious problem for
this theory; the coup de grâce was dealt by Michelson and Morley’s 1881 experiment disproving
the existence of the æther itself.
The fundamental idea behind Tait’s system of notation for alternating knots is to label each
crossing point in an alternating diagram according to some prearranged algorithm, and then to
read off the sequence of labels by following the string round the knot. Each label is then given
a subscript + or − to denote whether the crossing is an overcrossing or an undercrossing. This
sequence is called a scheme.
Tait’s method requires one to start at an arbitrary crossing point and follow the string of the
knot, labelling every alternate (odd-numbered) crossing sequentially. Since the odd-numbered
crossings will always be labelled A, B, . . ., the knot in question is then completely determined by
the letters in the even places in the scheme. For example, the knot in figure 2.1 may be described
by the sequence A+ D− B+ A− C+ F− D+ B− E+ C− F+ E− , which abbreviates to DAFBCE.
The problem is now that of tabulation of appropriate sequences of letters, subject to certain
restrictions. We wish to discount sequences such as EABCD which don’t represent a valid knot,
by requiring that each label in the scheme occurs exactly twice, as an undercrossing and as an
overcrossing. Additionally, we require that if we delete both occurrences of a label L together
with both occurrences of any labels between the Ls, the resulting sequence must satisfy the
given requirement.
7
C
E
A
B
F
D
Figure 2.1: Tait’s notation for the knot 63
As an example of this condition, consider the sequence EABCD, which corresponds to a scheme
A+ E− B+ A− C+ B− D+ C− E+ D− . We may delete the crossing B, and both occurrences of the
labels (in this case A and C) which occur between B+ and B− , as follows:
A+ E− B+ A− C+ B− D+ C− E+ D−
A
6 + E− B
6 + A
6 − C
6 + B
6 − D+ C
6 − E+ D−
E
D
E
D
The sequence EDED, though, does not correspond to a valid knot, however, since attaching
+ and − subscripts to the labels alternately gives E+ D− E+ D− , which would require E and
D to consist of two undercrossings and two overcrossings, respectively. Hence EABCD cannot
correspond to a valid knot.
The reason for this condition is clear: If we eliminate an arbitrary crossing and then discard
one of the components of the resulting link, the remaining component must still be a (possibly
trivial) knot. If, then, we perform the analogous operation on a sequence which supposedly
represents a valid knot, we expect that the resultant sequence still satisfies the fundamental
condition — that each label occurs twice, once as an undercrossing and once as an overcrossing.
Note that this condition is necessary, but not sufficient to determine whether a given sequence
corresponds to a valid knot — for example the sequence EDIHGJBACF satisfies the required
condition for every label, but does not correspond to a valid knot diagram.
We may eliminate nugatory crossings as follows: A crossing C is nugatory if, between both
occurrences of C in the scheme, there are an even (possibly zero) number of labels, each of
which occurs exactly twice.
In enumerating knots of a particular crossing number, then, we may disallow any sequence with
A in the second or last place, B in the second or fourth place, C in the fourth or sixth place,
and so on, since these give rise to nugatory crossings.
There are essentially four different ways of relabelling a knot in order to derive an equivalent,
and possibly different, sequence:
i. We may relabel the crossing B as A, and proceed as usual. This has the effect of replacing
each letter by the one preceding it in the alphabet and then moving the first letter to the
end. A sequence is said to be unique if, as DEABC, it is unchanged under this operation
— that is, if the letters are in cyclic order. For a sequence of n letters, the order of the
sequence under this operation will be a factor of n. In particular, if n is prime then any
such sequence will either be unique or will be reproduced after n such operations.
For example, considering the knot DAFBCE as depicted in figure 2.1:
A
F
D
B
A
A
C
B
F
D
C
B
E
D
C
F
E
E
We now interpolate the appropriate letters (for example, B has been relabelled as A, C
as B, and so on) in the odd places to get FCAFBECADBED, or FEABDC.
ii. We may begin from crossing A in the even places and label as before, but by the other
8
branch of the string. For example:
A
A
D
F
F
B
C
A
A
A
C
D
F
B
B
D
F
B
C
C
E
E
C
D
D
F
B
E
E
E
Hence, DAFBCE becomes DFEBAC under this operation, which has five other equivalents by the first operation.
iii. We may also reverse the direction of labelling in the first case, so (for example) DAFBCE
becomes CEFBAD, which is equivalent to DFEBAC under repeated application of the
first operation.
iv. Finally, we may reverse the direction of labelling in the second case, DAFBCE in this
case becoming EAFCBD.
2.2
Dowker and Thistlethwaite’s notation
Dowker and Thistlethwaite devised a modified form of Tait’s notation which has proved particularly suitable for use in computer programs — see for example [1].
For an n-crossing knot, we follow the string round numbering each crossing sequentially. This
process constructs a pairing of odd numbers with even numbers, the symbol for the knot in
question being the sequence of even numbers 2, . . . , 2n matched with 1, . . . , 2n − 1. The choice
of initial crossing point may result in different symbols for the same knot, so we choose the
sequence least in numerical order as the standard symbol for the knot.
We wish only to consider prime knots and hence disallow any sequence such that, for a subinterval of the numbers 1, . . . , 2n, the odd numbers in that subinterval are paired with the even
numbers in the same subinterval.
In order to reject nugatory crossings, we eliminate any sequence where an odd number is paired
with an adjacent even number (mod 2n). Furthermore, a crossing (i, j) is nugatory if every odd
number in the interval (i, j) is paired with an even number in the same interval — sequences
of this type will have been discarded, however, as representing composite knots.
As with Tait’s notation, not every sequence corresponds to a valid knot, so we further require
that any two loops intersect in an even number of points. For example, the sequence 4 6 8 10 2
is invalid since it represents a pairing {(1, 4), (3, 6), (5, 8), (7, 10), (9, 2)}, corresponding to two
loops 1, 2, 3, 4 and 5, 6, 7, 8 which intersect at only one point, namely (3, 6). Note that, as with
Tait’s system, this condition is necessary but not sufficient for determining whether a sequence
corresponds to a valid knot.
We adopt the convention that 1 represents an undercrossing, so that, if we consider only
alternating knots, the even numbers correspond to the overcrossings of the knot. To extend
this notation to alternating knots (which begin to appear when one considers knots of eight
crossings and greater), we denote an undercrossing by a minus sign prefixed to the even number
in question. The knot 819 (figure 2.2), for example, is represented by the sequence 4 8 -12 2
-14 -6 -16 -10.
2.3
Conway’s notation
Conway’s motivation for introducing his notation for knots and links [5] was to facilitate computer enumeration of knots and to enable machine calculation of invariants, something which
had been hampered until then by the lack of a suitable notation. In the event, such computation was rendered unnecessary by considering various symmetries and other relations between
9
5
12
13
16
6
11
10
15
9
14
4
1
3
8
7
2
Figure 2.2: Dowker-Thistlethwaite notation for the knot 819
the knots in his survey, although Trotter [21] used Conway’s notation for this purpose with
some success, and in chapter 6 we examine its use in a C++ program to calculate invariants for
a particular class of knots — the two-bridge knots discussed in chapter 4. Conway’s system of
notation has the advantage (not entirely shared by either Tait’s or Dowker and Thistlethwaite’s
scheme) that a diagram for the knot or link may be readily obtained from the encoded form.
2.3.1
Tangles
Let a tangle be a portion of a knot diagram with four emerging arcs, as in figure 2.3. The
northwest arc is called the leading string of the tangle, and the northwest-southeast axis is
called the principal diagonal.
❆
❆
❆
❆
3231
(3, 2, 3̄)
Figure 2.3: Example tangles
An arbitrary tangle may be represented as a circle containing an L-symbol. From this we may
obtain fifteen others by various combinations of reflections and rotations, generated by the three
operations shown in figure 2.4. Given a tangle t, we denote by th and tv the tangles obtained
by rotation about a horizontal (east-west) or vertical (north-south) axis, by tr = thv = tvh that
obtained by a 180◦ rotation in the plane and by −t the tangle obtained by reflecting t in the
plane of the paper. To visualise this more readily we may regard the tangle symbol as a coin
with the L symbol representing the obverse and the broken L representing the reverse.
✬✩
✬✩
✬✩
✬✩
✬✩
✫✪
✫✪
✫✪
✫✪
✫✪
t
th
tv
tr
−t
Figure 2.4: Tangle symmetries
10
❅
❅
0
❅
❅
1
∞
❅
❅
❅
❅
−1 = 1̄
Figure 2.5: Elementary tangles
Figure 2.5 shows the four elementary tangles. Note, however, that Conway’s notation follows
the opposite of the usual convention by which a right -handed crossing is considered ‘positive’.
Any tangle which may be constructed from the tangles 0 or ∞ by means of the four operations
shown in figure 2.6 is said to be algebraic.
✬✩
✬✩
❅
❅
✬✩
✬✩
✬✩
✬✩
❅
❅
✫✪
✫✪
a
a
❅
❅
❅
✫✪
✫✪
✫✪
✫✪
❅
❅
❅
a
b
a
b
❅
❅
❅
❅
(a + b)
(ab)
(a+)
(a−)
Figure 2.6: Tangle operations
a + b is formed by joining the northeast string of a to the northwest string of b and the southeast
string of a to the southwest string of b.
ab is formed by reflecting a in its leading diagonal and joining the northeast string of the
resultant tangle to the northwest string of b and the southeast string to b’s southwest
string.
a+ is formed by performing a left-handed twist on the southeast and southwest strings of
the tangle a.
a− is formed by performing a right-handed twist on the southeast and southwest strings of
the tangle a.
We can define the integral tangles, n = 1 + . . . + 1 and −n = n̄ = 1̄ + . . . + 1̄, which consist
simply of n left- or right-handed twists.
We call a tangle rational if it is of the form ((. . . ((ab)c) . . .)d), usually written abc . . . d, the
parentheses being associated to the left.
The rational tangles are particularly important — as will be seen later, there is a one-to-one
correspondence between the rational tangles and the rational numbers (hence the name). They
are also deeply connected with the two-bridge knots and 4-plaits discussed in chapter 4
A rational tangle a1 a2 . . . an is essentially the result of starting with the tangle ∞ (if n is even)
or 0 (if n is odd) and applying the required number of twists alternately to the southwest and
southeast strings, and to the northeast and southeast strings, in such a way that we end up
applying an twists to the northeast and southeast strings.
Furthermore, the notation (a, b, . . . , c) is shorthand for a0 + b0 + . . . + c0, but is only used with
two or more terms between the parentheses. From consideration of figures 2.5 and 2.6 we see
11
that a0 is equivalent to reflecting the tangle a in its principal diagonal, and that ab = a0 + b.
Lastly, it should be stated that the notation a − b denotes ab̄, rather than a + b̄ or (a−)b, where
b̄ denotes the tangle b reflected in the plane of the paper.
Figure 2.7 shows an example of a non-algebraic or transcendental tangle, in this case constructed from the polyhedron 8∗ .
Figure 2.7: A transcendental tangle
2.3.2
Polyhedra
Having constructed a notation for tangles, the next logical step is to extend this to a notation
for knots and links. To do this, we introduce the notion of a polyhedron — a 4-valent planar
graph inscribed on the surface of a sphere. We say a given polyhedron is basic if no region
has just two vertices adjacent to it. The essential idea is that we replace the vertices of a given
polyhedron with algebraic tangles in a clearly-defined, consistent way, in order to construct a
knot diagram. The reason for the restriction to basic polyhedra should now become apparent
— a region with only two adjacent vertices can be collapsed in a well-defined manner, replacing
the tangles at its vertices with a single algebraic tangle which is the sum of the previous two.
To enumerate all knots of eleven crossings or less, and all links of ten or fewer crossings, Conway
found that only eight basic polyhedra — depicted in figure 2.8 — were necessary. The six-vertex
polyhedron, though, has two forms: 6∗ and 6∗∗ .
The knot formed from the polyhedron P ∗ by inserting tangles a, b, . . . , c at the specified vertices
is denoted P ∗ a.b. . . . .c, subject to the following abbreviations:
i. Prefixes 1∗ , 6∗ and 6∗∗ are omitted, the last of these being denoted by an initial dot.
ii. Tangles of value 1 or −1 are omitted and the separating dots are ‘telescoped’ — two dots
are replaced by a colon and trailing dots are omitted.
iii. The symbol 10−∗∗∗ is shorthand for 10∗∗∗ 1̄.1̄.1̄.1̄.1̄.
So, for example, 8∗ 2 : 3.4 : .5 is an abbreviation for 8∗ 2.1.3.4.1.1.5.1.
2.3.3
Tangle equivalences
.
Two tangles a and b are said to be equivalent (denoted a=b) if we can obtain one from the
other by performing a finite sequence of Reidemeister moves.
A particularly striking result concerning the rational tangles is that any two tangles ijk . . . lm
and npq . . . st are equivalent if and only if the corresponding continued fractions m + l+1 1 and
...
t + s+1 1 are equal. Justification for this result may be found in chapter 4.
...
Conway’s notation is particularly effective in the sense that it includes Tait’s notion of ‘flyping’
(figure 2.9), in which a tangle 1 + t is replaced by th + 1, or 1̄ + t by th + 1̄. As will be seen
.
.
.
later, for any rational tangle t, we have t = th = tv = tr , so if a, b, . . . , c are all rational, the
position of terms 1 or 1̄ in a tangle of the form (a, b, . . . , c) is immaterial and hence the 1 and
.
.
1̄ may be collected together. For example, (1, 2 3, 1, 5) = (2 3, 1, 1, 5) = (2 3, 5, 1, 1). We may
further simplify this by using the operations a+ and a−, since, if a, b, . . . , c are rational:
12
x
a
a
c
e
d
1∗
f
y
6∗
6∗∗
g
d
a
e
c
a
f
d
b
e
b
h
g
h
f
c
8∗
c
a
c
d
b
i
g
h
f
b
e
h
b
x
j
10∗∗
c
d
e
f
h
b
g h
10∗∗∗
d
f
11∗
Figure 2.8: Basic polyhedra
13
i
g
a
e
i
g
c
y
j
f
d
10∗
a
i
9∗
a
e
d
c
b
a
b
j
k
and
.
.
.
(a, b, c, 1) = (a, b, c+) = (a, b+, c) = (a+, b, c)
(2.1)
.
.
.
(a, b, c, 1̄) = (a, b, c−) = (a, b−, c) = (a−, b, c)
(2.2)
So, we may collect these floating postscripts on the rightmost term, cancelling + and − signs
appropriately. If, however, this would leave us with just one tangle t followed by p plus signs
and q minus signs then we may further abbreviate the tangle as tn, where n = p − q.
1 + t ←→ th + 1
Figure 2.9: Flyping
In the late nineteenth century, Tait suggested the following conjecture which was finally proved
by Menasco and Thistlethwaite in 1991 [16]:
Theorem 2.1
Given two reduced, prime alternating diagrams D1 and D2 for a knot or link K, it is possible
to transform D1 to D2 solely by a finite sequence of flypes.
2.3.4
Orientation and string-labelling
We may assign an arbitrary orientation to a given proper knot K by specifying a preferred
direction along its string. If this is done, we say the knot is oriented. By means of simple
geometric operations we may obtain three alternative knots:
i. By reflecting the knot in a mirror we get the enantiomorph or obverse — Conway’s
paper denotes this by ¬K, other literature tends to denote the reflected knot by K ∗ .
ii. By reversing the string orientation we obtain another knot — Conway’s paper calls this
the reverse and denotes it by Kr whereas other literature usually calls this the inverse
and denotes it by K −1 .
iii. By reversing the orientation of the reflected knot we obtain a third knot which Conway
calls the inverse, denoted ¬Kr . This is different to what is usually meant by the inverse
of a knot, but corresponds to the inverse of K in the cobordism group described in chapter
5.
If K ≈ ¬K then K is said to be amphicheiral or achiral, chiral otherwise. If K ≈ Kr then
K is said to be reversible — more usually called invertible. If K ≈ ¬Kr then K is said to
be involutory.
The situation is more complex for links of two or more strings, and for this reason Conway
introduced an algorithm for labelling and orienting the components of a given knot or link.
Orient the leading string of the tangle a in the polyhedron diagrams in figure 2.8 so that the
arrow points into the tangle, and label this string r1 . Now follow the string in the direction of its
orientation, and label the other strings r2 , r3 , . . . in order of their first crossing with r1 . Orient
each of these strings in such a way that their first crossing with r1 is a positive crossing in the
14
sense of figure 2.10. If any strings remain unlabelled and unoriented then repeat this process
with string r2 , labelling any unlabelled strings as before, and then with r3 , . . . if necessary.
Note that, as before, this construction is contrary to the usual convention of a right-handed
crossing being regarded as ‘positive’.
❅
❅
❅
✒
❅
❅
❘
❅
ε = −1
✒
❅
❘
❅
ε = +1
Figure 2.10: Positive and negative crossings
Conway also introduces a notation to describe arbitrary relabelling of strings in a knot or link.
Let π be a function (not necessarily a permutation) from the labels r1 , r2 , . . . to the symbols
r1 , r1−1 , r2 , r2−1 , . . .. Then for a given labelled and oriented knot or link K, denote by Kπ the
knot or link obtained by relabelling all the ri strings in K as rj strings in Kπ if π(ri ) = rj and
as reversely-oriented rj strings in Kπ if π(ri ) = rj−1 . Define |π| to be the number of strings
whose orientations are reversed by π and |K| to be the number of components of K. Note that
two distinct strings may be given the same label, as is the case with Kauffman’s formulation
of Conway’s potential function.
15
Chapter 3
Invariants
In this chapter we define and examine a number of knot invariants — that is, a construct
(usually numeric or polynomial) derived in a well-defined way from a knot or link, which is
unchanged under ambient isotopy. The central requirement, then is that two isotopic links will
have equal or equivalent invariants associated with them.
3.1
The Seifert pairing
Given any knot or link K, we may construct a compact orientable surface V whose boundary is
K. We may then define a pairing H1 (V ) × H1 (V ) → Z and derive a number of useful invariants
from this.
Proposition 3.1
Any knot K may be considered as the boundary of some compact orientable surface embedded
in S 3 .
Proof
Consider any diagram D of K. Start at any point of D and move along the knot in the
direction of orientation. At each crossing point move onto the other strand and follow that in
the positive direction. Eventually, we return to the starting point, having traced out a closed
curve (a Seifert circuit). Repeat this procedure with all untraversed sections of the knot,
constructing a number of disjoint circles. We may consider each of these Seifert circuits to
be the boundaries of disjoint discs — if we have a number of concentric circles we may avoid
intersections by capping the circuits off with domes. We then join these discs together with
twisted bands at the crossing points, as depicted in figure 3.1.
We now have a surface V such that ∂V = K. As a consequence of this construction, V is
orientable. Each circuit inherits an orientation from the knot, which we may use to attach
a normal to each disc using a right-handed screw rule. In passing from one disc to another,
the normal is preserved, so there are no closed paths on V which reverse the normal direction.
Hence V is orientable.
✷
This surface V is called a Seifert surface for the knot K. We define the genus of a surface
2g
V to be g ∈ Z such that H1 (V ) ∼
= ⊕1 Z. We define the genus of the knot K, g(K), to be the
minimal genus over all possible Seifert surfaces for K.
16
❘
❅
❘ ✒
❅
❅✒
❘
❅
✒ ❅
✒
❘❅
❅⊕ ✒
❘
❅
❅
✒⊖ ❅
❘
Figure 3.1: The Seifert algorithm
Proposition 3.2
If V is a Seifert surface constructed from some knot diagram, then g(V ) = 12 (c − s + 1) where
c is the number of crossing points in the diagram and s is the number of Seifert circuits.
Proof
We may construct a handlebody decomposition of V with s 0-handles and c 1-handles, which
is equivalent to one with a single 0-handle and c − (s − 1) 1-handles, by cancelling 0-handles.
Hence 2g = c − s + 1.
✷
Given two oriented, disjoint, possibly linked copies of S 1 embedded in S 3 , u, v, we may define
the linking number of u and v, lk(u,v) as follows:
Assign an integer εi to each crossing point in a diagram of the link such that εi = +1 if it is a
right-handed crossing, −1 if it is a left-handed crossing,
and 0 if the crossing does not involve
P
strings of both u and v. Then define lk(u, v) = 12 i εi — half the sum of the εs over all the
crossings in the diagram.
Proposition 3.3
lk(u, v) is independent of the choice of diagram.
Proof
None of the Reidemeister moves change the linking number — R1 and R1−1 eliminate or create
an ε = 0 crossing, R2 and R2−1 eliminate or create either two 0-crossings, or a positive and a
negative crossing which cancel each other out, and R3 and R3−1 neither create nor eliminate any
crossings. Hence the linking number is unchanged by ambient isotopy, and thus independent
of the choice of diagram.
✷
Corollary 3.4
lk(u, v) = lk(v, u) for any link components u, v.
Proposition 3.5
lk(u, v) depends only of the homotopy class of u in S 3 \ v
Proof
If u′ ≃ u in the complement of v, then to pass from a diagram of u, v to a diagram of u′ , v
we have to use the Reidemeister moves and their inverses, together with the crossing change
shown in figure 3.1, none of which change lk(u, v).
✷
❅
❅
u
✲
❅u
❅
❅
u
❅
❅
❅u
Figure 3.2: Crossing change
17
Corollary 3.6
gv : π1 (S 3 \ v) → Z; u 7→ lk(u, v) is a well-defined homomorphism.
Let u, v ∈ π1 (V, ∗) for some Seifert surface V and let i+ u be the result of pushing u a small
distance along the positive normal to V . Define φ(u, v) = lk(i+ u, v).
Corollary 3.7
If v is fixed then fv : π1 (V, ∗) → Z; u 7→ φ(u, v) is a homomorphism.
Since Z is abelian, ker fv contains the commutator subgroup of π1 (V, ∗) and hence fv induces a
homomorphism H1 (V ) → Z. Similarly, we may fix u and vary v to get another homomorphism
from H1 (V ) to Z, which enables us to define a bilinear pairing θ : H1 (V ) × H1 (V ) → Z — the
Seifert pairing.
We may represent θ by a matrix A = [aij ] where aij = θ(xi , xj ) and {x1 , . . . , x2g } is a basis for
2g
H1 (V ) ∼
= ⊕1 Z. We say A is a Seifert matrix.
Two n × n integral matrices are said to be s-equivalent if one can be transformed into the
other by a finite sequence of the following operations and their inverses:
λ1
λ2
λ3
: A 7→ T AT T
A 0
: A 7→ 0 0
p 0
A 0
: A 7→ 0 0
0 1
0
1
0
q
0
0
where T is a unimodular integer matrix, p is a 1 × n integer matrix, and q is a n × 1 integer
matrix.
If two matrices are symmetric then they are said to be S-equivalent if one can be transformed
into the other by a finite sequence of the following two operations and their inverses:
Λ1
Λ2
: A 7→ T AT T
A 0 0
: A 7→ 0 0 1
0 1 0
Hence, if M, N are s-equivalent, then M + M T and N + N T are S-equivalent.
Proposition 3.8
If M is a Seifert matrix for a link L, then the s-equivalence class of M is an invariant of the
link type of L, and hence so is the S-equivalence class of M + M T .
Proof
If two link diagrams represent links of the same type then one may be deformed into the other
by a finite sequence of Reidemeister moves, none of which alter the linking number, and hence
none of these alters the s-equivalence class of the Seifert matrix M or the S-equivalence class
of M + M T .
✷
18
3.2
Determinant, signature and nullity
We define the signature of a knot or link K, denoted σ(K), to be the signature of M + M T ,
where M is a Seifert matrix for K.
Proposition 3.9
σ(K1 #K2 ) = σ(K1 ) + σ(K2 ).
Proof
We can obtain a Seifert surface for K1 #K2 by gluing together Seifert surfaces for K1 and
K2 along
a small section of the boundary. If M1 , M2 are Seifert matrices for K1 , K2 then
M1
0
is a Seifert matrix for K1 #K2 and hence σ(K1 #K2 ) = σ(M ) = σ(M1 ) +
M =
0 M2
σ(M2 ) = σ(K1 ) + σ(K2 ).
✷
We further define the nullity, n(K), of K to be the nullity of M + M T and the determinant,
det(K) to be det(M + M T ). By proposition 3.8, the determinant, signature and nullity are all
invariants of link type.
3.3
The Alexander polynomial
This section is a very brief outline of the Alexander polynomial, an invariant of ambient isotopy
for oriented knots. More detailed accounts can be found in [4] and [17].
◦
Let V be a Seifert surface for a knot K ⊂ S 3 and let N : V × (−1, 1) → S 3 be an open bicollar
◦
◦
of the interior V = V \ K of V , so V = N (V × 0).
Denote
N
◦
= N (V × (−1, 1))
◦
N+
= N (V × (0, 1))
N−
= N (V × (−1, 0))
Y
X
◦
= S3 \ V
= S3 \ K
+
−
+
−
Form`
countably many copies
`∞ of the triples (Ni , Ni , Ni ) and (Yi , Ni , Ni ) for i ∈ Z and let
∞
Ñ = i=0 Ni and Ỹ = i=0 Yi .
We now construct an identification space from these by identifying Ni+ ⊂ Yi with Ni+ ⊂ Ni ,
−
and Ni ⊂ Yi with Ni+1
⊂ Ni+1 , via the identity homeomorphism. This space, denoted X̃
is the infinite cyclic cover of X and is a path-connected open 3-manifold which depends
only on the knot type of K and is independent of the choice of Seifert surface V used in the
construction.
The homology, H∗ (X̃), of X̃ is hence an invariant (the Alexander invariant) of the knot type
of K and may be regarded as a module over the ring Λ = Z[t, t−1 ] of Laurent polynomials. In
the case of classical tame knots, we only consider the first homology, H1 (X̃), which is finitely
presentable. Any presentation matrix for H1 (X̃) is called an Alexander matrix for K. The
associated ideal in Λ is the Alexander ideal, and, if this is principal, a generator is called the
Alexander polynomial of K, denoted ∆K (t).
Finally, we state, without proof (q.v. [17]), the following theorem and an important corollary:
19
Theorem 3.10
If M is a Seifert matrix for a knot K, then M − tM T is an Alexander matrix for K.
Corollary 3.11
∆K (t) = det(M − tM T ), and hence det(K) = ∆K (−1).
3.4
The Conway potential function
In this section we examine a polynomial invariant introduced by Conway in [5]. We first consider
the approach adopted by Kauffman in [13] and then discuss Conway’s original formulation.
3.4.1
Kauffman’s approach — the single-variable polynomial
Given a knot or link K, let M be a Seifert matrix for K.
We define the Conway potential function, ΩK (x) = det(xM − x−1 M T ).
An immediate consequence of this definition, together with corollary 3.11 is:
Proposition 3.12
.
∆K (t2 ) = tΩK (t).
Theorem 3.13
i. ΩK (x) is an invariant of link type under ambient isotopy.
ii. ΩK (x) = 1 if K is the unknot.
iii. ΩL (x) = 0 if L is a split link.
iv. ΩK (x) obeys the following skein identity:
Ω
where Ω
(x), Ω
(x) − Ω
(x), and Ω
(x) = (x − x−1 )Ω
(x)
(x) denote the potentials of knots identical except
at one crossing, where they differ as indicated.
Proof
i. This part follows from proposition 3.8 since ΩK (x) is defined in terms of the Seifert
pairing.
ii. If K is the unknot then a Seifert surface V for K may be considered
to be a disc, and
0 1
hence H1 (V ) ∼
and so
= 0. Thus, any Seifert matrix for V is s-equivalent to
0 0
0 0
0 1
ΩK (x) = det x
− x−1
1 0
0 0
0
x
= det
x−1 0
= 1
3
iii. If L is split
` then there are disjoint oriented connected Seifert surfaces V1 , V2 ⊂ S where
L = L1 L2 and L1 = ∂V1 , L2 = ∂V2 . If we excise a small disc from both V1 and V2 and
connect the two surfaces by means of a short tube whose ends we glue to these circles,
20
then we have a single connected oriented surface V with boundary L. Let m ∈ H1 (V )
be the homology class of a meridian on the tube. L1 and L2 are non-empty, so m 6= 0.
But θ(m, α) = θ(α, m) = 0 for all α ∈ H1 (V ) and hence ΩL (x) = det(xθ − x−1 θ) = 0.
iv. Let each knot or link K come equipped with a specific diagram. ΩK (x) is then calculated
from the Seifert surface for this diagram. On such a surface V , the three crossings in the
skein identity are related by changing the twist on a band connecting two Seifert discs.
We denote the three links by K+ , K− , K0 and the corresponding surfaces by V+ , V− , V0 .
If the diagram K+ is split then so are the diagrams K− and K0 . Hence if either K+ or
K− is a split diagram then the result is trivial, since by part ii split links have vanishing
potential function.
It may happen that K0 is a split diagram while K+ and K− are not, in which case the
upper and lower strands of K0 must be in the split halves and so K+ and K− are ambient
isotopic, hence ΩK+ (x) = ΩK− (x), thus giving the required result.
∼ H1 (V− ) ∼
Finally, if none of K+ , K− , K0 are split diagrams then H1 (V+ ) =
= H1 (V0 ) ⊕ Z,
where the extra factor of Z is generated by α+ ∈ H1 (V+ ) and α− ∈ H1 (V− ), each represented by a curve passing once through the corresponding twisted band of the surface.
We may extend a basis for H1 (V0 ) to bases for H1 (V+ ) and H1 (V− ) we see that the Seifert
matrices θ+ and θ− for V+ and V− take the form:
a+1 µ
θ+ =
η
θ0
a µ
θ− =
η θ0
where η is a column matrix, µ is a row matrix, θ0 denotes a Seifert matrix for V0 and
a = θ− (α− , α− ) = θ+ (α+ , α+ )−1. By substituting this into the definition of the potential
function, we see:
ΩK+ (x) − ΩK− (x)
T
T
= det(xθ+ − x−1 θ+
) − det(xθ− − x−1 θ−
)
−1 T
−1
(x − x )(a + 1) xµ − x η
= det
xη − x−1 µT
xθ0 − x−1 θ0T
(x − x−1 )a xµ − x−1 η T
− det
xη − x−1 µT xθ0 − x−1 θ0T
= (x − x−1 ) det(xθ0 − x−1 θ0T )
= (x − x−1 )ΩK0
✷
This result may be used as a recursive definition of ΩK (x) for any knot or link K, but the
potential function is usually presented in the form of the Conway polynomial:
∇K (z) = ΩK (x − x−1 )
In this form, the axioms become:
i. ∇K (z) = 1 if K is the unknot.
ii. ∇L (z) = 0 if L is a split link.
iii. ∇
(z) − ∇
(z) = z∇
(z)
21
3.4.2
Conway’s approach — the many-variable polynomial
Given a knot or link K, label and orient each string by the process described in section 2.3.4.
Conway’s potential function ΩK (r, s, . . .) is then defined uniquely by the following conditions:
i. ΩK (r, s, . . .) = ΩK (−r−1 , −s−1 , . . .)
ii. ΩK (r, s, . . .) = (−1)|K| ΩK (−r, −s, . . .)
iii. ΩKπ (r, s, . . .) = (−1)|π| ΩK (π(r), π(s), . . .)
iv. Ω¬K (r, s, . . .) = (−1)|K|+1 ΩK (r, s, . . .)
The first of these conditions enables us to use the notation {f (r, s, . . .)} for f (r, s, . . .) +
f (−r−1 , −s−1 , . . .). In particular, {r} stands for r − r−1 .
If the knot or link K2 is obtained from a link K1 by removing a string labelled r, then
ΩK1 (1, s, t, . . .) = (slk(r,s) tlk(r,t) . . . − s− lk(r,s) t− lk(r,t) . . .)ΩK2 (s, t, . . .)
Finally, denote by K1 #r K2 the result of tying K2 in an r-labelled string of K1 , then
ΩK1 #r K2 = {r}ΩK1 ΩK2
The skein identity Ω
(r, s, . . .)−Ω
(r, s, . . .) = {r}Ω
(r, s, . . .) holds, as in the single-
variable case, when both strands of the crossing in question have the same label.
When considering crossings where both strands have different labels, we have the following
skein identity:
Ω
r (r, s, . . .)
s
+Ω
r (r, s, . . .)
s
= {rs}Ω
r (r, s, . . .)
s
Note, however, that since Conway’s definition adopts a left-handed crossing convention, Kauffman’s formulation of the potential function differs from Conway’s in certain cases.
From condition (iv), we see that adopting the more common right-handed convention results
in a change of sign for links with even numbers of components. The definitions agree, however,
for proper knots. Hence, the potential function (and therefore the Alexander polynomial) does
not distinguish between knots and their mirror-images.
3.5
The Kauffman bracket and the Jones polynomial
In this section we construct a polynomial invariant of regular isotopy, extend this to an invariant
of ambient isotopy, and then show how this may be used as a model for the Jones polynomial
(defined in [12]) using an approach described in [14].
Two diagrams are said to be regularly isotopic if one can be transformed into the other
by means of a finite sequence of Reidemeister moves of the second and third types and their
inverses.
3.5.1
The Kauffman bracket
The Kauffman bracket of a knot K, denoted hKi is an element of the ring Z[A, B, d], that
is, a polynomial in A, B, d, defined by the following three axioms:
i. h0i = 1
22
ii. h0 ∪ Ki = dhKi if K is non-empty.
iii. h
i = Ah
i + Bh
i
This bracket polynomial is invariant under orientation-preserving homomorphisms of the plane,
but not under regular or ambient isotopy. We now wish to choose appropriate values of B and
d so that the bracket is an invariant of regular isotopy.
Lemma 3.14
h i = ABh i + (ABd + A2 + B 2 )h
i
Proof
=
=
+
=
+B
+A
+A
2
2
(ABd + A + B )
A
A B
B B
+ AB
✷
Corollary 3.15
The Kauffman bracket is an invariant under application of the second Reidemeister move and
its inverse if B = A−1 and d = −A2 − A−2 .
Corollary 3.16
If B = A−1 and d = −A2 − A−2 then the Kauffman bracket is an invariant of regular isotopy
— in other words, invariance under R2 and R2−1 implies invariance under R3 and R3−1
Proof
=
=
=
A
A
+B
+B
✷
We now consider the effect of R1 and
R1−1
Proposition 3.17
If B = A−1 and d = −A2 − A−2 then
D
E
D
E
on the bracket polynomial:
D
=
−A3
=
−A−3
23
D
E
E
Proof
D
E
E
+ A−1
D
E
=
D
(A(−A2 − A−2 ) + A−1 )
E
D
−A3
D
D
E
E
A
+ A−1
D
(A + A−1 (−A2 − A−2 ))
D
E
−A−3
=
=
=
3.5.2
E
A
=
D
D
=
E
E
✷
The L-polynomial
Thus, to extend the Kauffman bracket so that it is invariant under Reidemeister moves of the
first type, we must incorporate this behaviour into a new invariant. This is done by means of
the writhe of the knot, denoted w(K), which is simply the sum of the crossing numbers in
the knot or link.
We define the Kauffman L-polynomial to be LK = (−A)−3w(K) hKi.
Theorem 3.18
The polynomial LK ∈ Z[A, A−1 ] is an invariant of ambient for oriented knots or links K.
Proof
Since LK combines the behaviour of the writhe and the bracket, it is invariant under all three
Reidemeister moves, and is hence an invariant of ambient isotopy.
✷
The power of the bracket and the L-polynomial may be seen from the following result:
Proposition 3.19
If K ∗ denotes the mirror-image of the knot or link K, then
hK ∗ i(A)
LK ∗ (A)
=
=
hKi(A−1 )
LK (A−1 )
Proof
Note that switching all the crossings results in the replacement of every occurrence of A by
A−1 in the expansion of hKi. The analogous result for LK follows from the fact that w(K ∗ ) =
−w(K).
✷
The importance of the L-polynomial lies in its ability to distinguish between a knot or link and
its mirror-image; for example L31 = A−4 + A−12 − A−16 , whereas L3∗1 = A4 + A12 − A16 (where
31 and 3∗1 denote the right- and left-handed trefoils). We thus obtain the following condition
on amphicheiral knots and links:
Corollary 3.20
A knot or link K is amphicheiral iff LK = LK ∗ ; that is, if LK is symmetric.
This is evident in the case of the figure-of-eight knot, 41 , since L41 = A8 − A4 + 1 − A−4 + A−8 .
24
3.5.3
The Jones polynomial
We end this section with a brief look at the connection between LK and the Jones polynomial
VK . This powerful tool, an ambient isotopy invariant of oriented knots and links, shares with
the L-polynomial the important property of being able to distinguish between a knot or link
and its mirror-image. Vaughan Jones’ original paper [12] constructs the polynomial via braid
theory and Von Neumann algebras and shows that it satisfies the following skein identity:
√
1
(t) − tV
(t) =
t− √ V
(t)
t−1 V
t
Together with the requirement that V0 (t) = 1, we may calculate VK for any oriented knot or
link K.
Theorem 3.21
1
VK (t) = LK (t− 4 ) for any oriented knot or link K.
Proof
h
h
i =
i =
Ah
−1
A
h
i + A−1 h
i + Ah
i
i
Hence
Ah
i − A−1 h
i = (A2 − A−2 )h
i
Multiplying this formula by the appropriate writhes gives:
A4 L
− A−4 L
= (A−2 − A2 )L
1
So, by substituting A = t− 4 we get the desired result.
✷
A currently unsolved problem concerning VK (t) is that it is as yet unknown whether VK (t) = 1
only if K is the unknot.
The similarities between the skein identities for the Jones and Conway polynomials led a number of mathematicians to try and generalise Jones’ work. Five independent groups (P. Freyd
and D. Yetter, J. Hoste, W.B.R. Lickorish and K. Millet, A. Ocneanu, and J. Prztycki and
P. Tracyk) succeeded in constructing a two-variable generalised polynomial PK , including the
Jones, Conway and Alexander polynomials as special cases [7]. This invariant, dubbed the
‘HOMFLY polynomial’ (Prztycki and Tracyk’s paper arrived some time after the others, delayed, it was said, by the Polish postal service, and for this reason the invariant is sometimes
named ‘HOMFLYPT’) obeys the following skein identity:
lP
(l, m) + l−1 P
(l, m) = mP
25
(l, m)
Chapter 4
Rational tangles, 4-plaits and
two-bridge knots
Given a knot K and a diagram D(K), let an overpass be a subarc of D(K) which contains
only over-crossings. Then the bridge number of D(K) is the number of overcrossings in D(K)
and the bridge number of the knot K, denoted b(K), is the minimal bridge number over all
possible diagrams for K.
Equivalently, a knot K admits an n-bridge presentation if it can be deformed so that it meets
a plane E ⊂ S 3 in 2n points in such a way that the arcs of K contained in the half-spaces E +
and E − have orthogonal projections onto E which are simple and disjoint.
Lemma 4.1
i. b(K) = 1 iff K is the unknot.
ii. b(K1 #K2 ) = b(K1 ) + b(K2 ) − 1.
Proposition 4.2
Two-bridge knots are prime.
Proof
Given two knots, K1 and K2 , both nontrivial, consider their connected sum K = K1 #K2 . If
K is a two-bridge knot, then from lemma 4.1 we see that b(K) = b(K1 ) + b(K2 ) − 1 = 2, so
b(K1 ) + b(K2 ) = 3, implying that only one of K1 and K2 is nontrivial.
✷
4.1
Schubert’s normal form
The two-bridge knots were classified by Schubert in 1956 [18] by means of their double branched
covering spaces, which will be seen to be the lens spaces L(α, β).
We define the knot S(α, β) as follows: Let α and β be two coprime integers such that:
α > 0, −α < β < α.
(4.1)
Without loss of generality we may assume that β is odd. Divide the two bridges of the knot
into α segments and label them from 0 to 2α − 1 modulo 2α as shown in figure 4.1.
Counting modulo 2α, an underpass starts at the 0 end of one bridge, passes under the other
bridge at β, under the first bridge at 2β, and so on. The next two results follow almost
immediately upon consideration of this construction.
26
Proposition 4.3
i. S(α, β) is a proper knot if α is odd.
ii. S(α, β) is a two-component link if α is even.
Proof
If α is odd, then the underpass starting at the end of each bridge terminates at the other end
of the other bridge, hence S(α, β) consists of one string. If α is even, the underpass starting
at the end of each bridge terminates at the other end of the same bridge and hence S(α, β)
consists of two possibly linked strings.
✷
Proposition 4.4
The mirror image, S(α, β)∗ of S(α, β) is equivalent to S(α, −β).
Proof
This may be seen by reflecting S(α, β) in a horizontal line along the bridges. As before, when
constructing the knot, we start at the 0 end of one bridge, but this time approach the other
bridge from the opposite side at the crossing labelled 2α − β ≡ −β (mod α), which is the
construction for S(α, −β).
✷
α
α + 1 ...
α − 1 ...
. . . 2α − 1
0
... 1
✲
Figure 4.1: Bridge labelling
Figure 4.1 shows the knot S(3, −1), a two-bridge presentation of a trefoil.
✬
✬
3
✬
4 ✲ 5
2
1
0
✩
0
✩
✫
✫
✫
✩
1
2
✛
5
4
✪
3
✪
✪
Figure 4.2: The two-bridge knot S(3, −1)
From the following result, we see that the 2-bridge knots cannot be completely classified by
their determinants.
27
Proposition 4.5
The determinant of S(α, β) is α.
The double branched cover of S 3 over the knot K is a space C, together with a map
p : C → S 3 such that the preimage p−1 (k) of any point k ∈ K consists of a single point, and
the preimage p−1 (s) of any point s ∈ S 3 \ K consists of two points.
Theorem 4.6
The double branched cover of S 3 over the knot K = S(α, β) is the lens space L(α, β)
Proof
3
3
Let B−
∪ B+
be a Heegaard splitting of S 3 into two 3-balls, identified along their boundaries
3
3
such that ∂B− = ∂B+
= S 2 , the equatorial 2-sphere of S 3 . Let K be embedded in S 3 such
3
3
that B− ∩ K consists of the underpasses v1 and v2 of K, and B+
∩ K consists of the bridges
2
w1 and w2 of K. Then S ∩ K consists of four points, the endpoints of the bridges.
3
3
The double branched covers of B−
and B+
with branch sets v1 ∪ v2 and w1 ∪ w2 , respectively,
are solid tori T− and T+ . Each of the lifts w˜1 and w˜2 , of the bridges of K to T+ , is a meridian
of T+ and hence each of the lifts v˜1 and v˜2 of v1 and v2 are homologous to αm + βl in ∂T+
where m and l are meridian and longitude generators of H1 (∂T+ ).
This is a Heegaard splitting of the lens space L(α, β).
✷
The classification of the two-bridge knots, then, follows from the classification of lens spaces, a
proof of which appears in [3]:
Theorem 4.7 (Brody 1960)
The lens spaces L(α, β) and L(α′ , β ′ ) are homeomorphic iff α = α′ and ±β ′ ≡ β ±1 (mod α).
From this well-known result, Schubert arrived at the following classification theorem for the
two-bridge knots:
Theorem 4.8 (Schubert 1956)
i. The two-bridge links S(α, β) and S(α′ , β ′ ) are equivalent as unoriented links iff α = α′
and β ≡ β ′ (mod α).
ii. The two-bridge, two-component links S(α, β) and S(α′ , β ′ ) are equivalent as oriented
links iff α = α′ and β ≡ β ′ (mod 2α).
Together with Proposition 4.4 we now get the following condition for amphicheiral knots:
Corollary 4.9
S(α, β) is amphicheiral iff β 2 ≡ −1 (mod α).
4.2
Plaits and braids
A braid may be considered as a generalisation of Conway’s notion of tangles, in the sense that
an n-braid consists of n incoming strings and n outgoing strings, subject to the condition that
the strings must run strictly downwards, as depicted in figure 4.3. Consider a rectangle (the
frame of the braid) with n points P1 , . . . , Pn along the top and n points Q1 , . . . , Qn along
the bottom, connected by n strings s1 , . . . , sn such that si joins Pi to Qπ(i) , where π (the
permutation of the braid) is a permutation on {1, . . . , n}.
A 2m-plait may be formed from a 2m-braid by adding 2m connecting segments as in figure
4.3.
28
✲
Figure 4.3: Construction of a plait from a braid
Given m-braids ζ1 , ζ2 , we can define another braid ζ2 ζ1 by joining each emerging strand Qi
of ζ1 to the strand Pi of ζ2 . Two braids ζ1 , ζ2 are said to be equivalent if they differ by an
ambient isotopy.
This operation of braid composition suggests the possibility of defining a group structure on
the set of m-braids, and this is what we now do:
The m-braid group, denoted Bm , is the group with generators {σ1 , . . . , σm−1 } subject to
relations:
i. σi σj = σj σi if |i − j| > 2
ii. σi+1 σi σi+1 = σi σi+1 σi
We may regard these geometrically by considering σi to be the operation of interchanging
strings i and i + 1 with a right-handed crossing, as depicted in figure 4.2. The second of these
relations, then, is a form of the third Reidemeister move R3 .
i i+1 i+2
i i+1
j j+1
i i+1
σj
j j+1
σi
σi
✛✲
σi
σi+1
i i+1 i+2
σi
✛✲ σi+1
σj
σi+1
σi σj = σj σi
σi
σi+1 σi σi+1 = σi σi+1 σi
Figure 4.4: Geometric interpretation of the braid group Bm
Theorem 4.10
The 4-plaits are exactly the 2-bridge knots.
Proof
29
Given a 2-bridge knot K with 4 points of intersection P1 , . . . , P4 with the projection plane
E ⊂ S 3 , arcs s1 , s2 in the upper half-space E + , and arcs t1 , t2 in the lower half-space E − ,
where si joins P2i−1 to P2i , and ti joins P2i to P2i+1 (where P5 = P1 ).
Arrange the points Pi so that the orthogonal projections of the upper arcs si lie in a straight
line. The lower arcs may then be deformed so that ti descends strictly downwards (away from
E) from P2i to a single minimum, and then ascends towards E, connecting to P2i+1 .
The arcs si then become the top ends of the plait, and the minima of the arcs ti become the
bottom ends. Hence every 2-bridge knot has a 4-plait presentation.
To prove the converse observe that we may inductively move the crossings of a 2m-plait by
means of the process illustrated in figure 4.2, eventually producing a knot with m bridges at
the end.
✷
✲
✲
Figure 4.5: Deformation of a 2m-plait into an m-bridge presentation
4.3
Conway’s normal form
Given a tangle t, we define the numerator of t, denoted N(t) to be the knot 1∗ t, and the
denominator of t, denoted D(t) to be the knot 1∗ t0. If t is a rational tangle, then N (t) and
D(t) are said to be rational knots.
Proposition 4.11
Every rational knot has a 4-plait presentation.
Proof
Given a rational tangle t, we may straighten out the knot N (t) as in figure 4.6. If t has an odd
number of terms then the resulting diagram is a 4-plait. If t has an even number of terms then
by a deformation of the type shown in figure 4.7 we may convert it into a 4-plait.
✷
✲
Figure 4.6: 4-plait presentation of a rational knot
We may thus think of a standard regular diagram for a rational knot as shown in figure 4.8.
Such a knot or link may be denoted by C(a1 , . . . , a2k+1 ) — this is Conway’s normal form.
30
Figure 4.7: Deformation of a rational knot
a4· · ·
a2
a1
a2k
· · · a2k−1
···
a3
a2k+1
Figure 4.8: Conway’s normal form
Proposition 4.12
i. C(a1 , . . . , an ) ≈ C(a1 , . . . , an ± 1, ∓1)
ii. C(a1 , . . . , an )∗ ≈ C(−a1 , . . . , −an )
Proof
The first part is a direct consequence of the deformation shown in figure 4.7. The second part
may be seen by observing that reflecting a knot C(a1 , . . . , an ) in the plane of the paper reverses
all the crossing points, turning a right-handed twist n into a left-handed twist −n, hence a term
ai becomes −ai .
✷
We now prove the converse of proposition 4.11:
Theorem 4.13
Every 4-plait (and hence every 2-bridge knot) has a presentation as a rational knot in Conway’s
normal form.
Proof
Given a diagram D of a 4-plait (figure 4.9), for convenience we deform it to the form shown in
figure 4.10. The proof does not rely on the crossing information at the crossing points, so we
shall not distinguish between under- and overcrossings.
c1
b1
···
···
···
c2
b2
a1
a2
cn
bn
bn+1
an
Figure 4.9: Regular diagram of a 4-plait
We wish to move all the crossing points on the left-hand side over to the right-hand side by a
finite sequence of ambient isotopies. For convenience, we adopt the convention that di = ai +ci ,
and denote the diagram D in figure 4.10 by:
D = (a1 , . . . , an |b1 , . . . , bn , bn+1 |c1 , . . . , cn )
31
an
an−1
···
a3
a2
a1 b 1 c1
b2
c2
c3
···
cn−1
cn
b3
..
.
bn
bn+1
Figure 4.10: Deformed diagram of a 4-plait
Our aim, then, is to deform a diagram of this type into a diagram of the form:
(0, . . . , 0|b1 , . . . , bn , bn+1 |d1 , . . . , dn )
Firstly, we eliminate the crossing an by rotating the interior part of the dotted line in figure
4.11 to move the crossing over to the right-hand side. We then continue with an−1 , an−2 and
so on.
an−1
···
a3
a2
a1 b 1 c1
b2
c2
c3
···
cn−1
dn
b3
..
.
bn
bn+1
Figure 4.11: Horizontal rotation
This operation transforms a diagram
(a1 , . . . , ai−1 , ai , 0, . . . , 0|b1 , b2 , . . . , bn , bn+1 |c1 , . . . , ci , di+1 , . . . , dn )
into a diagram
(a1 , . . . , ai−1 , 0, . . . , 0|b1 , b2 , . . . , bn , bn+1 |c1 , . . . , ci−1 , di , . . . , dn )
if ai is even, and a diagram
(a1 , . . . , ai−1 , 0, . . . , 0|b1 , b2 , . . . , bi , bi+1 , . . . , bn , bn+1 |c1 , . . . , ci−1 , di , . . . , dn )
if ai is odd, where bi means that the ith arm (with bi crossing points) is above the horizontal
axis as shown in figure 4.12
32
bi
b2
···
···
a1 b 1 c1
···
di
···
dn−1
dn
bn
bn+1
Figure 4.12: Effect of an odd horizontal rotation
To lower the arm bi , we form a new ith horizontal arm with no crossing points as in figure 4.13
and rotate the interior of the dotted line bi times around the vertical axis with the result that
the bi crossing points move to the lower arm, from the upper, which may then be removed.
b3
b2
···
···
a1 b 1 c1
···
di
···
dn−1
bn
bn+1
Figure 4.13: Vertical rotation
If bi is even, this produces a diagram
(a1 , . . . , ai−1 , 0, . . . , 0|b1 , b2 , . . . , bi , bi+1 , . . . , bn , bn+1 |c1 , . . . , ci−1 , di , . . . , dn )
and a diagram
(c1 , . . . , ci−1 , 0, . . . , 0|b1 , b2 , . . . , bi , bi+1 , . . . , bn , bn+1 |a1 , . . . , ai−1 , di , . . . , dn )
if bi is odd.
33
dn
By repeated applications of such horizontal and vertical rotations, we eventually obtain a
diagram
(a1 , 0, . . . , 0|b1 , . . . , bn , bn+1 |c1 , d2 , . . . , dn )
or
(c1 , 0, . . . , 0|b1 , . . . , bn , bn+1 |a1 , d2 , . . . , dn )
which may be converted to a diagram
(0, . . . , 0|b1 , . . . , bn , bn+1 |d1 , . . . , dn )
by a final horizontal rotation of the dotted area in figure 4.14
···
a1 b 1 c1
b2
d2
d3
···
dn−1
dn
b3
..
.
bn
bn+1
Figure 4.14: Final horizontal rotation
✷
Thus, the 4-plaits (and hence the 2-bridge knots) are precisely the rational knots.
Similarly, by performing appropriate horizontal and vertical rotations on a given rational tangle,
th , we see that:
Corollary 4.14
.
.
Given any rational tangle t, t = th = tv .
It is a well-known fact from number theory that any rational number r = pq may be written
in the form a1 + a2 + 1 1 , where a1 , . . . , an ∈ Z and n is finite. An expression of this type is
a3 +...
called a continued fraction and a1 , . . . , an its quotients. For convenience we may adopt the
notation [a1 , . . . , an ] to represent such a continued fraction.
We now prove a modified version of theorem 4.6 for knots and links in Conway’s normal form:
Theorem 4.15
The double branched cover of S 3 over C(a1 , . . . , an ) is the lens space L(α, β) where
[an , . . . , a1 ].
34
α
β
=
Proof
−a
The defining braid of K = C(a1 , . . . , an ) is ζ = σ2an σ3 n−1 . . . σ2a1 . Since K is a 2-bridge knot,
its double branched covering space is a lens space by theorem 4.6. The braid operations σ2 , σ3
lift to Dehn twists δ2 , δ3 such that
δ2 (m̂− ) = m̂− , δ3 (m̂− ) = m̂− + l̂−
δ2 (l̂− ) = m̂− − l̂− ,
δ3 (l̂− ) = l̂−
Thus we may assign to σ2 , σ3 matrices:
1 −1
1 0
σ2 7→ A2 =
σ3 7→ A3 =
0
1
1 1
describing linear mappings induced on H1 (∂T− ) by δ2 , δ3 with respect to the basis {m̂− , l̂− }.
Thus the braid ζ induces the transformation:
1
0
1 an−1
1 a2
1 0
A=
···
(4.2)
an 1
0 1
0 1
a1 1
If, as in theorem 4.6, the double branched covering of this 4-plait is given by a Heegaard splitting
M = T− ∪h T+ , then relative to bases {m̂− , l̂− } and {m̂+ , l̂+ } for H1 (∂T− ) and H1 (∂T+ ) the
isomorphism h∗ : H1 (∂T− ) → H1 (∂T+ ) is represented by the (integral, unimodular) matrix:
β α′
A=
α β′
The integers α′ , β ′ are determined up to changes α′ 7→ α′ + cβ, β ′ 7→ β ′ + cα, corresponding to
a substitution ζ 7→ ζσ2c which doesn’t alter the plait.
The product in (4.2) defines a sequence of equations:
= an rn + rn−1
rn+1
rn = an−1 rn−1 + rn−2
..
.
r2 = a1 r1 + 0
|r1 | = 1
where rn+1 = α, rn = β,
since:
1
0
ri
−ai 1
ri+1
ri
1 −ai−1
0 1
ri−1
∗
∗
∗
∗
=
=
ri
ri+1 − ai ri
ri − ai−1 ri−1
ri−1
∗
∗
∗
∗
=
ri
∗
ri−1 ∗
ri−2 ∗
=
ri−1 ∗
If we further require that 0 6 ri ≤ ri−1 then this sequence of equations describes a Euclidean
algorithm which is uniquely defined by the choice of α, β. Such an algorithm can be expressed
by a continued fraction:
1
rn+1
α
= an +
=
= [an , an−1 , . . . , a1 ]
β
rn
an−1 + an−21 +...
(4.3)
✷
35
From this result, and from the uniqueness of the continued fraction in (4.3) we derive the
following elegant result:
Theorem 4.16
There exists a 1-1 correspondence between the rational knots (and hence the rational tangles)
and the rational numbers; that is, C(a1 , . . . , an ) ≈ C(b1 , . . . , bm ) iff [an , . . . , a1 ] = [bm , . . . , b1 ].
Corollary 4.17
2-bridge knots are alternating.
Proof
This follows from a well-known result concerning continued fractions, namely that, given a
α
rational number α
β , it is always possible to find a continued fraction [an , . . . , a1 ] = β such
that the quotients ai all have the same sign. We may thus deform S(α, β) into the form
C(a1 , . . . , an ), which, from the construction of Conway’s normal form, and since a1 , . . . , an all
have the same sign, is alternating.
✷
Proposition 4.18
Given two rational tangles A = a1 a2 . . . an and B = b1 b2 . . . bm , the knot N (A + B) is a
two-bridge knot and is ambient isotopic to C(a1 , . . . , an−1 , an + bm , bm−1 , . . . , b1 ).
Proof
Recall that N (A + B) is constructed by joining the northeast and southeast strings of A to
the northwest and southwest strings of B, and the northwest and southwest strings of A to the
northeast and southeast strings of B, respectively, as in figure 4.15. Note that, by proposition
4.12, we can assume that both n and m are even.
···
···
···
a1
an
an−1
NE
NW
SE
SW
SW
SE bn
NW
NE
bn−1
···
···
···
b1
Figure 4.15: The numerator of two rational tangles
a1
···
···
···
an + b n
an−1
bn−1
···
···
···
b1
Figure 4.16: N (A + B) in Conway’s normal form
Then, by the process described in theorem 4.13 we may deform it into Conway’s normal form
to get the knot C(a1 , . . . , an−1 , an + bm , bm−1 , . . . , b1 ), as shown in figure 4.16.
✷
Finally, we state a result concerning the determinants of rational knots formed in this way:
Theorem 4.19
If a, b are rational tangles with fractions
|qs + pr|.
p
q
and
r
s
36
then det N (a+ b) = |ps+ qr|, and det N (ab) =
Chapter 5
Slice knots and Cobordism
5.1
Slice knots
A slice knot is a knot K which can arise as a 3-dimensional cross-section through a (possibly
knotted) 2-sphere in S 4 or R4 . Equivalently, K ⊂ S 3 = ∂D4 is slice if it bounds a 2-disc ∆2
in D4 which has a tubular neighbourhood ∆2 × D2 whose intersection with S 3 is a tubular
neighbourhood K × D2 of K. Note that every knot in S 3 bounds a disc in D4 , the important
point of the definition being the existence of the tubular neighbourhood — that is, ∆2 is
required to be locally flat.
The simplest nontrivial examples of slice knots are the stevedore’s knot 61 and the reef knot
31 #3∗1 , the latter shown in figure 5.1.
✓✏
✒✑
✓✏
t=0
t = ±1
t = ±2
t = ±3
✒✑
t = ±4
Figure 5.1: The reef knot 31 #3∗1 as a section through a knotted 2-sphere in S 4
We now state and prove a condition for a knot to be a slice knot — the proof follows [17], but
another approach is given in [6].
Lemma 5.1
If a slice knot K ⊂ S 3 bounds a locally flat disc ∆ ⊂ D4 and also bounds a Seifert surface
V ⊂ S 3 , then there exists a bicollared 3-manifold W ⊂ D4 such that W ∩ S 3 = V and
∂W = V ∪ ∆.
Proof
(Omitted — q.v. [17].)
✷
Lemma 5.2
If W is a closed, connected, orientable 3-manifold such that ∂W is a connected 2-manifold
37
of genus g, then there exists a basis for H1 (∂W ) represented by 1-cycles, half of which are
2-boundaries in W .
Proof
Consider the exact homology sequence of the pair (W, ∂W ):
∂
∂
. . . −→ H3 (W, ∂W ) −→ H2 (∂W ) −→ H2 (W ) −→ H2 (W, ∂W ) −→ H1 (∂W ) −→ H1 (W )
∂
−→ H1 (W, ∂W ) −→ H0 (∂W ) −→ H0 (W ) −→ H0 (W, ∂W )
Since H3 (W, ∂W ) ∼
= H2 (∂W ) ∼
= Z and H0 (∂W ) ∼
= H0 (W ) ∼
= Z, we have a short exact sequence:
h
h
h
h
h
h
5
4
3
2
1
0
0
H1 (W, ∂W ) −→
H1 (W ) −→
H1 (∂W ) −→
H2 (W, ∂W ) −→
H2 (W ) −→
0 −→
Since ∂W has genus g, it follows that H1 (∂W ) has rank 2g and so we must show that the
kernel of the inclusion homomorphism h3 : H1 (∂W ) −→ H1 (W ) has rank g.
Poincaré duality implies that H1 (W, ∂W ) ∼
= H 2 (W ) and H2 (W, ∂W ) ∼
= H 1 (W ). However,
2
1
rank H (W ) = rank H2 (W ) and rank H (W ) = rank H1 (W ) and so
rank H2 (W ) = rank H1 (W, ∂W )
(5.1)
rank H1 (W ) = rank H2 (W, ∂W )
(5.2)
Also, for any homomorphism of abelian groups h : G → H,
rank G = rank(ker h) + rank(im h)
From this, we see that rank H1 (W, ∂W ) = rank im h5 + rank ker h5 = rank ker h5 = rank im h4 ,
and so rank im h4 = rank H1 (W, ∂W ).
rank H1 (W ) = rank im h4 + rank ker h4 = rank H1 (W ) + rank im h3 ,
so rank im h3 = rank H1 (W ) − rank H1 (W, ∂W ).
rank H1 (∂W ) = rank im h3 + rank ker h3 , so rank ker h3 = 2g − rank H1 (W ) + rank H1 (W, ∂W ).
Starting from the other end of the sequence, we see that rank im h0 = rank ker h0 = 0 and
rank H2 (W ) = rank im h1 + rank ker h1 = rank im h1 + rank im h0 , so rank im h1 = rank H2 (W ).
rank H2 (W, ∂W ) = rank im h2 + rank ker h2 , so rank ker h3 = rank im h2 = rank H2 (W, ∂W ) −
rank H2 (W ).
By adding these two expressions for rank ker h3 together, and substituting equations 5.1 and
5.2, we see that rank ker h3 = g, as required.
✷
From these we can prove the following important condition on the Alexander polynomial of a
slice knot:
Theorem 5.3
.
If K ⊂ S 3 is a slice knot then ∆K (t) = p(t)p(t−1 ), where p(t) is a polynomial with integer
coefficients.
Proof
If K bounds a locally flat disc ∆, choose W 3 ⊂ D4 as in lemma 5.1. The inclusion homomor◦
phism H1 (V ) → H1 (V ∪ ∆) = H1 (∂W ) is an isomorphism and hence by lemma 5.2 there is a
◦
basis {a1 , . . . , a2g } for H1 (V ) such that ag+1 , . . . , a2g are 2-boundaries in W . If g +1 6 i, j 6 2g
then ai and i+ aj bound disjoint 2-chains in D4 , so lk(ai , i+ aj ) = 0, and hence the Seifert matrix
38
B C
, where B, C, D are square integral matrices. From the Seifert
D 0
matrix definition of the Alexander polynomial, we see:
for V has the form
∆K (t) =
=
=
=
det(V − tV T )
B − tB T
det
D − tC T
C − tDT
0
det(C − tDT ) det(D − tC T )
(−t)g det(C − tDT ) det(C − t−1 DT )
Thus, the Alexander polynomial of a slice knot has the required form.
✷
Theorem 5.4
i. K#K ∗ is a slice knot for any knot K.
ii. K1 #K2 is a slice knot if K1 , K2 are.
iii. If K1 and K1 #K2 are slice knots then so is K2 .
Proof
K#K ∗ may be situated in S 3 so as to be symmetric with respect to a plane P as in figure
4
5.2. We may then spin the knot through D+
, the upper 4-disc of S 4 bounded by S 3 , about the
plane P to produce the desired locally-flat disc. The proof of parts ii and iii is omitted, but
may be found in [6].
✷
K
K∗
P
Figure 5.2: K#K ∗ is a slice knot
Lemma 5.5
If a nonsingular inner product on Q2g vanishes on a subspace of dimension g, or (equivalently)
has a matrix of the form:
B C
CT 0
with respect to some basis, where B and C are square matrices, then its signature is zero.
Proof
(Omitted — q.v. [17].)
✷
With this linear algebra result, we can derive the following important condition on slice knots:
Theorem 5.6
If K is a slice knot then σ(K) = 0.
39
Proof
Given a slice knot K with Seifert matrix M , we regard A = M + M T as a matrix over Q. In
order to diagonalise it and determine its signature we consider it as representing a symmetric
bilinear form h, i (an inner product) on Q2g such that hX, Y i = XAY T . This inner product is
nonsingular if det(A) 6= 0. A, however, is nonsingular since K is a proper knot.
By the first part of theorem 5.3, the matrix V + V T has the form required by lemma 5.5 and
hence σ(K) = σ(V + V T ) = 0.
✷
Another interesting class of knots are the ribbon knots — K is a ribbon knot if it is the
boundary K = f (S 1 ) of a singular disc f : D2 → S 3 which intersects itself only in ribbon
singularities, as depicted in figure 5.3.
Figure 5.3: Ribbon singularity
Figure 5.4 demonstrates that the reef knot 31 #3∗1 is a ribbon knot, which suggests some connection between ribbon and slice knots:
Proposition 5.7
Every ribbon knot is a slice knot.
Proof
Given a ribbon knot, take a small disc around each of the singularities and push it off S 3
slightly into D4 . This removes the self-intersections, while still fulfilling the condition for the
knot to be slice.
✷
Figure 5.4: The reef knot as a ribbon knot
The converse, however, is still not known to be true in general, although no counterexample
has been found yet:
Conjecture 5.8
All slice knots are ribbon knots
40
It is possible to generalise the concepts of ribbon and slice knots to knotted n-spheres in S n+2
and in the case n > 2 it has been shown that not every slice n-knot is a ribbon n-knot — q.v.
[11].
Table 5.1 lists the slice knots with ten crossings or less (using Conway’s notation) together with
their Alexander polynomials.
K
01
61
88
89
820
927
941
946
103
1022
1035
1042
1048
1075
1087
1099
10123
10129
10137
10140
10153
10155
31 #3∗1
41 #4∗1
51 #5∗1
52 #5∗2
∞
42
2312
3113
(3, 2 1, 2–)
212112
20: 20: 20
(3, 3, 2 1–)
64
3313
2422
2211112
(4 1, 3, 2)
(2 1, 2 1, 2 1+)
·22·20
·2·2·20·20
10∗
(3 2, 2 1, 2–)
(2 2, 2 1 1, 2–)
(4, 3, 2 1–)
((3, 2)–(2 1, 2))
3̄ : 2 : 2
3 # 3̄
22#22
5 # 5̄
3 2 # 3̄ 2̄
∆K (t)
1
(t−1 − 2)(t − 2)
(t2 − 2t + 2)(t−2 − 2t−1 + 2)
(t3 − 2t2 + t − 1)(t−3 − 2t−2 + t−1 − 1)
(t2 − t + 1)(t−2 − t−1 + 1)
(t3 − 2t2 + 3t − 1)(t−3 − 2t−2 + 3t−1 − 1)
(3t2 − 3t + 1)(3t−2 − 3t−1 + 1)
(t−1 − 2)(t − 2)
(3t − 2)(3t−1 − 2)
(2t3 − 2t2 + 2t − 1)(2t−3 − 2t−2 + 2t − 1)
(t2 − 4t + 2)(t−2 − 4t−1 + 2)
(t3 − 3t2 + 4t − 1)(t−3 − 3t−2 + 4t−1 − 1)
(t4 − t3 + 2t2 + 1)(t−4 − t−3 + 2t−2 + 1)
(t3 − 3t2 + 4t − 1)(t−3 − 4t−2 + 3t−1 − 1)
(t − 2)(t2 − t + 1)(t−1 − 2)(t−2 − t−1 + 1)
(t2 − t + 1)2 (t−2 − t−1 + 1)2
(t4 − 3t3 + 3t2 − 3t + 1)(t−4 − 3t−3 + 3t−2 − 3t−1 + 1)
(t2 − 2t + 2)(t−2 − 2t−1 + 2)
(t2 − 3t + 1)(t−2 − 3t−1 + 1)
(t2 − t + 1)(t−2 − t−1 + 1)
(t3 − t2 + 1)(t−3 − t−2 + 1)
(t3 − t2 + 2t − 1)(t−3 − t−2 + 2t−2 − 1)
(t − 1 + t−1 )2
(t − 3 + t−1 )2
(t2 − t + 1 − t−1 + t−2 )2
(2t − 3 + 2t−1 )2
Table 5.1: Slice knots with ten crossings or less
5.2
Cobordism
Define a relation ∼ on the class of knot types such that K1 ∼ K2 iff K1 #K2∗ is a slice knot.
Proposition 5.9
The relation ∼ just defined is an equivalence relation.
Proof
K#K ∗ is slice by theorem 5.4, hence ∼ is reflexive. If K1 #K2∗ is a slice knot then so is
(K1 #K2∗ )∗ = K2 #K1∗ , and so ∼ is symmetric. If K1 #K2∗ and K2 #K3∗ are slice knots, then
so (by theorem 5.4) is (K1 #K2∗ )#(K2 #K3∗ ) = (K1 #K3∗ )#(K2 #K2∗ ), and hence (by theorem
5.4) K1 #K3∗ is slice. Thus, ∼ is transitive and therefore an equivalence relation.
✷
41
Theorem 5.10
K0 ∼ K1 iff ∃ in the 4-dimensional slab of R4 a locally flat annulus A with boundaries K0 , K1
such that K0 is homologous to K1 in A.
Proof
If such an annulus A exists then choose a vertex v below the hyperplane {x4 = 0} and a vertex
w above the hyperplane {x4 = 1}. The cones vK0 and wK1 are disjoint from each other
and the interior of A, and hence the union m = vK0 ∪ A ∪ wK1 is then a 2-sphere with two
singularities: K0 at v and K1∗ at w.
Conversely, given a 2-sphere with just two singularities, we may deform it in such a way that
it intersects the slab {0 6 x4 6 1} in a nonsingular annulus with boundary curves the required
knots.
✷
In view of this result we call the equivalence relation ∼ cobordism. Let G be the set of
equivalence classes of knot types under cobordism, and define [K1 ]#[K2 ] = [K1 #K2 ].
Proposition 5.11
The pair (G, #) forms a group (the knot cobordism group).
Proof
The identity element is [0] (the cobordism class of the unknot), the inverse of an element
[K] is [K]∗ = [K ∗ ]. Furthermore, the operation # is associative, since [[K1 ]#[K2 ]]#[K3 ] =
[K1 ]#[[K2 ]#[K3 ]].
✷
42
Chapter 6
Machine computation
In this chapter we investigate the applications of computer techniques, in particular objectoriented programming methods, to the calculation of knot invariants.
It is far beyond the scope of this dissertation to discuss object-oriented programming techniques
and design philosophy, but the interested reader may consult [19] for further details, as well as a
rather solid, if labyrinthine, introduction to the C++ programming language. Those unfamiliar
with the C language may wish to refer to [15].
We examine the construction of a C++ program to calculate the Kauffman bracket and Lpolynomial, the Jones polynomial, the determinant and the writhe for two-bridge knots in
Conway’s normal form, giving a very brief explanation of the sourcecode. Finally, we provide
a table of knot invariants calculated in this way.
6.1
Preliminaries
To begin with, we briefly describe the construction of a range-checked array class, and a number
of basic string-manipulation functions
6.1.1
The vector class
In C and C++, memory management — including use of arrays — is left entirely to the
responsibility of the programmer, with any inadvertent overstepping of array bounds usually
resulting in (at best) program termination with a segmentation fault or bus error, and (at worst)
silent failure with an erroneous answer. It was decided fairly early on that the polynomial
and cnf objects described later would need to make use of integer arrays, and so a simple
user-defined class was constructed for this purpose.
The vector consists of an int * pointer, together with an unsigned int giving the size of
the array. Constructor and destructor functions are provided, together with functionality for
querying the size of, and for resizing (if required) the array. Finally, the index operator [] and
assignment operator = are overloaded to behave appropriately.
6.1.2
String-manipulation functions
It was decided that the construction of a fully-specified string class could be easily avoided,
and hence any string-handling is achieved by means of NUL-terminated character arrays, as is
common in C.
43
Three such functions are provided; the first of which (string) makes a copy of its argument,
essentially duplicating the behaviour of the standard library function strdup, but using the
C++ new[] operator to allocate the required memory, rather than the more traditional C
malloc function. The remaining two functions, strntokens and strtoken are concerned with
splitting a given string into a number of tokens. The first of these returns the number of
tokens in the string with the specified delimiter characters, and the second returns a copy of a
particular token. Note that the memory for the strings returned by strtoken is dynamically
allocated and should ideally be freed when no longer required, by means of the C++ delete[]
operator.
6.2
Laurent polynomials
The polynomial class is intended to model Laurent polynomials and consists of an integer
(representing the constant term) and two vectors containing the coefficients of the positive and
negative powers. As well as the required constructor and destructor functions and overloaded
assignment operator, a range of other interface functionality is provided. In particular, direct
access to the coefficients is provided by an overloaded index operator, and the +, -, and *
operators are overloaded to enable more intuitive addition, subtraction and multiplication of
polynomials. A facility for raising a polynomial to a positive integer power is provided by the
pow member function, and the polynomial may be displayed in TEX format by means of the
TeXformat function, which takes an optional char argument, specifying the variable (with t as
default).
6.3
Conway’s normal form
The cnf class models a two-bridge knot in Conway’s normal form, by encapsulating a vector
object containing the crossing information, and an unsigned char describing how the braid is
joined together at the ends, as shown in figure 6.1.
✄
☛
✄
✟ ☛
✟
✂✄
✁
✄✂
✁
✂✄
✄✂
✁
✁
✂
✁
✡
✁
✂
✠ ✡
✠
0
1
2
3
Figure 6.1: Plait ends
Constructor functions are provided to enable creation of a knot with a specified number of
twists, creation of a knot from the Conway notation (making use of the string tokenising
functions described earlier), together with a copy constructor and an overloaded assignment
operator.
The index operator is overloaded to provide direct access to the twists, enabling examination
or alteration of the knot in this way.
6.3.1
Determinant
As mentioned earlier, the determinant of a knot C(a1 , . . . , an ) in Conway’s normal form is equal
to the numerator of the continued fraction [an , . . . , a1 ]. The member function det calculates
and returns this numerator.
44
6.3.2
The Kauffman bracket
To calculate the Kauffman bracket we use the recursive algorithm suggested by the axioms:
i. h0i = 1
ii. h0 ∪ Ki = (−A2 − A−2 )hKi if K is non-empty.
iii. h
i = Ah
i + A−1 h
i
If we represent a knot by C(a1 , . . . , an |e), where e describes the ends of the plait as before,
then:
i. C(0, . . . , 0, ai , . . . , aj , 0, . . . , 0|e) ≈ C(ai , . . . , aj |e)
ii. if e = 0, 2 then:
(a) if n is odd then
AhC(a1 + 1, . . . , an |e)i
+A−1 hC(a1 + 1, . . . , an |e + 1)i if
hC(a1 , . . . , an |e)i =
AhC(a1 − 1, . . . , an |e + 1)i
+A−1 hC(a1 − 1, . . . , an |e)i
if
2
−2
−A − A
if e = 0
(b) if n = 0 then hC(0|e) =
1
if e = 2
(c) if n > 0 and n is even,
(−A3 )−a1 hC(a2 , . . . , an |e)i if
then hC(a1 , . . . , an |e) =
(−A−3 )a1 hC(a2 , . . . , an |e)i if
a1 < 0
a1 > 0
a1 < 0
a1 > 0
iii. if e = 1, 3 then:
(a) if n is even and n >
0 then
AhC(a1 + 1, . . . , an |e − 1)i
+A−1 hC(a1 + 1, . . . , an |e)i
if
hC(a1 , . . . , an |e)i =
AhC(a
−
1,
.
.
.
,
a
|e)i
1
n
+A−1 hC(a1 − 1, . . . , an |e − 1)i if
1
if e = 1
(b) if n = 0 then hC(0|e) =
−A2 − A−2 if e = 3
a1 < 0
a1 > 0
(c) if n is odd,
then hC(a1 , . . . , an |e) =
(−A−3 )−a1 hC(a2 , . . . , an |e)i if
if
(−A3 )a1 hC(a2 , . . . , an |e)i
a1 < 0
a1 > 0
These observations (direct consequences of the definition of the bracket polynomial and the
construction of C(a1 , . . . , an |e)) are applied recursively to calculate hC(a1 , . . . , an |e)i.
Table 6.1 shows the Kauffman bracket polynomial computed by the algorithm for all two-bridge
knots in Conway’s normal form, with less than nine crossings.
6.3.3
The writhe
The calculation of the writhe is possibly the least elegant section of the program. The algorithm implemented here essentially follows the string round the knot or link and examines the
orientation at each set of crossings.
45
K
31
41
51
52
61
62
63
71
72
73
74
75
76
77
81
82
83
84
86
87
88
89
811
812
813
814
3
2
5
3
4
3
2
7
5
4
3
3
2
2
6
5
4
4
3
4
2
3
3
2
3
2
2
2
2
12
112
2
3
1
2
2
1
2
1
4
1
3
1
3
1
2
2
1
2
3
2
12
112
2
3
2
1
1
1
1
2
1
1
2
2
3
2
2
12
12
hKi
A7 − A3 − A−5
A8 − A4 + 1 − A−4 + A−8
A13 − A9 + A5 − A − A−7
A9 − A5 + A − 2A−3 + A−7 − A−11
A10 − A6 + A2 − 2A−2 + 2A−6 − A−10 + A−14
A14 − 2A10 + 2A6 − 2A2 + 2A−2 − A−6 + A−10
−A12 + 2A8 − 2A4 + 3 − 2A−4 + 2A−8 − A−12
A19 − A15 + A11 − A7 + A3 − A−1 − A−9
A11 − A7 + A3 − 2A−1 + 2A−5 − 2A−9 + A−13 − A−17
−A13 + A9 − 2A5 + 2A − 3A−3 + 2A−7 − A−11 + A−15
−A17 + 2A13 − 3A9 + 2A5 − 3A + 2A−3 − A−7 + A−11
A15 − 2A11 + 3A7 − 3A3 + 3A−1 − 3A−5 + A−9 − A−13
A15 − 2A11 + 3A7 − 4A3 + 3A−1 − 3A−5 + 2A−9 − A−13
A15 − 3A11 + 3A7 − 4A3 + 4A−1 − 3A−5 + 2A−9 − A−13
A12 − A8 + A4 − 2 + 2A−4 − 2A−8 + 2A−12 − A−16 + A−20
A20 − 2A16 + 2A12 − 3A8 + 3A4 − 2 + 2A−4 − A−8 + A−12
A16 − A12 + 2A8 − 3A4 + 3 − 3A−4 + 2A−8 − A−12 + A−16
A20 − 2A16 + 3A12 − 3A8 + 3A4 − 3 + 2A−4 − A−8 + A−12
A16 − 2A12 + 3A8 − 4A4 + 4 − 4A−4 + 3A−8 − A−12 + A−16
−A14 + 2A10 − 2A6 + 4A2 − 4A−2 + 4A−6 − 3A−10 + 2A−14 − A−18
−A18 + 2A14 − 3A10 + 5A6 − 4A2 + 4A−2 − 3A−6 + 2A−10 − A−14
A16 − 2A12 + 3A8 − 4A4 + 5 − 4A−4 + 3A−8 − 2A−12 + A−16
A16 − 2A12 + 3A8 − 5A4 + 5 − 4A−4 + 4A−8 − 2A−12 + A−16
A16 − 2A12 + 4A8 − 5A4 + 5 − 5A−4 + 4A−8 − 2A−12 + A−16
−A18 + 3A14 − 4A10 + 5A6 − 5A2 + 5A−2 − 3A−6 + 2A−10 − A−14
A16 − 3A12 + 4A8 − 5A4 + 6 − 5A−4 + 4A−8 − 2A−12 + A−16
Table 6.1: Kauffman bracket for two-bridge knots with less than nine crossings
✲ -3
✛
✛ ✛
✛ ✛
✲ -2
Figure 6.2: Calculation of the writhe of the knot 52
A value of +1 is assigned to each strand of the crossing if the direction of orientation is from
left to right, and -1 otherwise, and these values are multiplied together with the number of
crossings, as depicted in figure 6.2. The writhe numbers for each set of crossings are then added
to calculate the total writhe of the knot.
Table 6.2 lists the determinants and writhes for all two-bridge knots of less than nine crossings.
6.3.4
The Kauffman L-polynomial and the Jones polynomial
Having implemented the calculation of the Kauffman bracket and the writhe, together with
functionality for multiplication and addition of Laurent polynomials, calculating LK (A) and
VK (t), for a given two-bridge knot or link K, is elementary, following the procedure outlined
in chapter 3.
Table 6.3 lists Jones polynomials for two-bridge knots with less than nine crossings.
46
K
31
41
51
52
61
62
63
71
72
73
74
75
76
77
81
82
83
84
86
87
88
89
811
812
813
814
3
2
5
3
4
3
2
7
5
4
3
3
2
2
6
5
4
4
3
4
2
3
3
2
3
2
2
2
2
12
112
2
3
1
2
2
1
2
1
4
1
3
1
3
1
2
2
1
2
3
2
12
112
2
3
2
1
1
1
1
2
1
1
2
2
3
2
2
12
12
det(K)
3
5
5
7
9
11
13
7
11
13
15
17
19
21
13
17
17
19
23
23
25
25
27
29
29
31
w(K)
−3
0
−5
−5
−2
−2
0
−7
−7
7
7
−7
−3
1
−4
−4
0
0
−4
2
2
0
−4
0
2
−4
Table 6.2: Determinant and writhe for two-bridge knots with less than nine crossings
K
31
41
51
52
61
62
63
71
72
73
74
75
76
77
81
82
83
84
86
87
88
89
811
812
813
814
3
2
5
3
4
3
2
7
5
4
3
3
2
2
6
5
4
4
3
4
2
3
3
2
3
2
2
2
2
12
112
2
3
1
2
2
1
2
1
4
1
3
1
3
1
2
2
1
2
3
2
12
112
2
3
2
1
1
1
1
2
1
1
2
2
3
2
2
12
12
VK (t)
−t4 + t3 + t
t2 − t + 1 − t−1 + t−2
−t7 + t6 − t5 + t4 + t2
−t6 + t5 − t4 + 2t3 − t2 + t
t4 − t3 + t2 − 2t + 2 − t−1 + t−2
t5 − 2t4 + 2t3 − 2t2 + 2t − 1 + t−1
−t3 + 2t2 − 2t + 3 − 2t−1 + 2t−2 − t−3
−t10 + t9 − t8 + t7 − t6 + t5 + t3
−t8 + t7 − t6 + 2t5 − 2t4 + 2t3 − t2 + t
t−2 − t−3 + 2t−4 − 2t−5 + 3t−6 − 2t−7 + t−8 − t−9
t−1 − 2t−2 + 3t−3 − 2t−4 + 3t−5 − 2t−6 + t−7 − t−8
−t9 + 2t8 − 3t7 + 3t6 − 3t5 + 3t4 − t3 + t2
−t6 + 2t5 − 3t4 + 4t3 − 3t2 + 3t − 2 + t−1
−t3 + 3t2 − 3t + 4 − 4t−1 + 3t−2 − 2t−3 + t−4
t6 − t5 + t4 − 2t3 + 2t2 − 2t + 2 − t−1 + t−2
t8 − 2t7 + 2t6 − 3t5 + 3t4 − 2t3 + 2t2 − t + 1
t4 − t3 + 2t2 − 3t + 3 − 3t−1 + 2t−2 − t−3 + t−4
t5 − 2t4 + 3t3 − 3t2 + 3t − 3 + 2t−1 − t−2 + t−3
t7 − 2t6 + 3t5 − 4t4 + 4t3 − 4t2 + 3t − 1 + t−1
−t2 + 2t − 2 + 4t−1 − 4t−2 + 4t−3 − 3t−4 + 2t−5 − t−6
−t3 + 2t2 − 3t + 5 − 4t−1 + 4t−2 − 3t−3 + 2t−4 − t−5
t4 − 2t3 + 3t2 − 4t + 5 − 4t−1 + 3t−2 − 2t−3 + t−4
t7 − 2t6 + 3t5 − 5t4 + 5t3 − 4t2 + 4t − 2 + t−1
t4 − 2t3 + 4t2 − 5t + 5 − 5t−1 + 4t−2 − 2t−3 + t−4
−t3 + 3t2 − 4t + 5 − 5t−1 + 5t−2 − 3t−3 + 2t−4 − t−5
t7 − 3t6 + 4t5 − 5t4 + 6t3 − 5t2 + 4t − 2 + t−1
Table 6.3: Jones polynomials for two-bridge knots with less than nine crossings
47
Bibliography
[1] Charilaos Aneziris.
Computer programs for knot tabulation.
q-alg, 9701006, 1997.
[2] C.W. Ashley.
The Ashley book of knots.
Faber and Faber, 1947.
[3] E. J. Brody.
The topological classification of lens spaces.
Annals of Mathematics, 71, 1960.
[4] Gerhard Burde and Heinrich Zieschang.
Knots.
de Gruyter, 1985.
[5] J. H. Conway.
An enumeration of knots and links, and some of their algebraic properties.
In John Leech, editor, Computational Problems in Abstract Algebra. Pergamon Press, 1970.
[6] Ralph H. Fox and John W. Milnor.
Singularities of 2-spheres in 4-space and cobordism of knots.
Osaka Journal of Mathematics, 3, 1966.
[7] Peter Freyd, David Yetter, Jim Hoste, W.B.R. Lickorish, Kenneth C. Millett, and Alexander Ocneanu.
A new polynomial invariant of knots and links.
Bulletin of the American Mathematical Society, 12(2), 1985.
[8] Eric C. Fry and Peter J. Wilson.
The Shell Combined Book of Knots and Ropework: Practical and Decorative.
David and Charles, 1981.
[9] N.D. Gilbert and T. Porter.
Knots and Surfaces.
Oxford University Press, 1994.
[10] R. Hargreaves.
Mr Clever’s string book.
Price/Stern/Sloane, 1986.
[11] L.R. Hitt.
Examples of higher-dimensional slice knots which are not ribbon knots.
Proceedings of the American Mathematical Society, 77(2), 1979.
[12] Vaughan F. R. Jones.
48
A polynomial invariant for knots via Von Neumann algebras.
Bulletin of the American Mathematical Society, 12(1), 1985.
[13] Louis H. Kauffman.
The Conway polynomial.
Topology, 20, 1981.
[14] Louis H. Kauffman.
State models and the Jones polynomial.
Topology, 23(3), 1987.
[15] Brian W. Kernighan and Dennis M. Ritchie.
The C Programming Language.
Prentice Hall, second edition, 1988.
[16] William W. Menasco and Morwen B. Thistlethwaite.
The Tait flyping conjecture.
Bulletin of the American Mathematical Society, 25(2), October 1991.
[17] Dale Rolfsen.
Knots and Links.
Publish or Perish, 1976.
[18] H. Schubert.
Knoten mit zwei Brücken.
Mathematische Zeitschrift, 65, 1956.
[19] Bjarne Stroustrup.
The C++ Programming Language.
Addison Wesley, second edition, 1991.
[20] Peter Guthrie Tait.
On knots.
In Scientific Papers, volume 1. Cambridge University Press, 1898.
[21] H. F. Trotter.
Computations in knot theory.
In John Leech, editor, Computational Problems in Abstract Algebra. Pergamon Press, 1970.
49
Appendix A
C++ sourcecode
A.1
vector
A.1.1
vector.h
#ifndef
#define
#ifndef
#define
#endif
__vector_h__
__vector_h__
NULL
NULL 0
class vector
{
private:
int *ia;
unsigned int n;
public:
vector(unsigned int = 0, const int * = NULL);
vector(const vector&);
~vector(void);
unsigned int size(void) const;
void resize(unsigned int);
int& operator[](unsigned int);
int operator[](unsigned int) const;
vector& operator=(const vector&);
};
#endif
A.1.2
vector.cc
#include <stdlib.h>
#include "vector.h"
vector::~vector(void)
{
delete [] ia;
}
i
vector::vector(unsigned int sz, const int *ip) : n(sz)
{
ia = new int [n];
for (unsigned int i = 0; i < n; i++)
ia[i] = (ip == NULL ? 0 : ip[i]);
}
vector::vector(const vector& v) : n(v.n)
{
ia = new int [n];
for (unsigned int i = 0; i < n; i++)
ia[i] = v.ia[i];
}
unsigned int vector::size(void) const
{
return n;
}
void vector::resize(unsigned int sz)
{
int *ia2;
if (n == sz)
return;
ia2 = new int [sz];
for (unsigned int i = 0; i < sz; i++)
ia2[i] = (i < n ? ia[i] : 0);
delete [] ia;
ia = ia2;
n = sz;
}
int& vector::operator[](unsigned int i)
{
if
(i < n) return ia[i];
else
{
cerr << "Attempt to reference beyond bounds of array.\n";
exit(EXIT_FAILURE);
}
}
int vector::operator[](unsigned int i) const
{
if
(i < n) return ia[i];
else
{
cerr << "Attempt to reference beyond bounds of array.\n";
exit(EXIT_FAILURE);
}
}
ii
vector& vector::operator=(const vector& v)
{
delete [] ia;
n = v.n;
ia = new int [n];
for (unsigned int i = 0; i < n; i++)
ia[i] = v.ia[i];
return *this;
}
A.2
String-handling functions
char *strtoken(const char *str, unsigned int tokn, const char *delimit)
{
char *tstr, *rval, *rs;
int nt = -1, l, i;
unsigned int si = 0, intoken = 0;
if ((str == NULL) || (strcmp(str,"") == 0) || (delimit == NULL))
return string("");
tstr = string(str);
l = strlen(tstr);
if (tokn > strntokens(str,delimit) - 1)
return string("");
for (i=0; i<l; i++)
{
if (strchr(delimit,tstr[i]) != NULL)
intoken = 0;
else if (!intoken)
{
intoken = 1;
nt++;
}
if ((nt == (int) tokn) && (intoken))
{
si = i;
break;
}
}
rval = &tstr[si];
for (i=si+1; i<l; i++)
if (strchr(delimit,tstr[i]) != NULL)
{
tstr[i] = ’\0’;
break;
}
rs = string(rval);
delete [] tstr;
return rs;
}
iii
unsigned int strntokens(const char *str, const char *delimit)
{
unsigned int nt = 0, intoken = 0, l;
if (str == NULL || delimit == NULL)
return 0;
l = strlen(str);
for (unsigned int i=0; i<l; i++)
if (strchr(delimit, str[i]) != NULL)
intoken = 0;
else if (!intoken)
{
intoken = 1;
nt++;
}
return nt;
}
char *string(const char *s)
{
const char *cs, *r;
unsigned int l;
if (s == NULL)
cs = "";
else
cs = s;
l = strlen(cs);
r = new char [l+1];
strcpy(r,cs);
return r;
}
A.3
polynomial
A.3.1
polynomial.h
#ifndef __polynomial_h__
#define __polynomial_h__
#ifndef __vector_h__
#include "vector.h"
#endif
#ifndef _IOSTREAM_H
#include <iostream.h>
#endif
iv
class polynomial
{
private:
vector pos;
vector neg;
int
con;
public:
polynomial(int = 0, int = 0);
polynomial(const polynomial&);
char *TeXformat(char = ’t’) const;
int pdeg(void) const;
int ndeg(void) const;
ostream& display(ostream&) const;
polynomial operator+(const polynomial&) const;
polynomial operator-(const polynomial&) const;
polynomial operator*(const polynomial&) const;
polynomial operator*(const int) const;
polynomial pow(unsigned int) const;
int operator[](int) const;
int& operator[](int);
polynomial& operator=(const polynomial&);
};
ostream& operator<<(ostream&, polynomial&);
#endif
A.3.2
polynomial.cc
#include
#include
#include
#include
#include
#include
#include
<stddef.h>
<iostream.h>
<string.h>
<stdio.h>
<stdlib.h>
"vector.h"
"polynomial.h"
polynomial::polynomial(int p, int n) : pos(p), neg(n), con(0)
{
}
polynomial::polynomial(const polynomial& poly)
: pos(poly.pos), neg(poly.neg), con(poly.con)
{
}
polynomial& polynomial::operator=(const polynomial& poly)
{
pos = poly.pos;
neg = poly.neg;
v
con = poly.con;
return *this;
}
int polynomial::operator[](int i) const
{
if (i > 0)
return pos[i-1];
else if (i < 0)
return neg[-i-1];
else
return con;
}
int& polynomial::operator[](int i)
{
if (i > 0)
return pos[i-1];
else if (i < 0)
return neg[-i-1];
else
return con;
}
polynomial polynomial::operator+(const polynomial& p) const
{
int tp = (pdeg() < p.pdeg() ? p.pdeg() : pdeg());
int tn = (ndeg() < p.ndeg() ? p.ndeg() : ndeg());
polynomial s(tp,tn);
int i;
for (i=0;i<tp;i++)
s.pos[i] = (i < pdeg() ? pos[i] : 0) + (i < p.pdeg() ? p.pos[i] : 0);
s.con = con + p.con;
for (i=0;i<tn;i++)
s.neg[i] = (i < ndeg() ? neg[i] : 0) + (i < p.ndeg() ? p.neg[i] : 0);
return s;
}
polynomial polynomial::operator-(const polynomial& p) const
{
int tp = (pdeg() < p.pdeg() ? p.pdeg() : pdeg());
int tn = (ndeg() < p.ndeg() ? p.ndeg() : ndeg());
polynomial s(tp,tn);
int i;
for (i=0;i<tp;i++)
s.pos[i] = (i < pdeg() ? pos[i] : 0) - (i < p.pdeg() ? p.pos[i] : 0);
s.con = con - p.con;
for (i=0;i<tn;i++)
s.neg[i] = (i < ndeg() ? neg[i] : 0) - (i < p.ndeg() ? p.neg[i] : 0);
return s;
}
vi
polynomial polynomial::operator*(const polynomial& p) const
{
polynomial s(pdeg() + p.pdeg(), ndeg() + p.ndeg());
for (int i = -ndeg(); i <= pdeg(); i++)
for (int j = -p.ndeg(); j <= p.pdeg(); j++)
s[i+j] += (*this)[i] * p[j];
return s;
}
polynomial polynomial::operator*(const int n) const
{
polynomial s(*this);
for (int i=-s.ndeg(); i<=s.pdeg(); i++)
s[i] *= n;
return s;
}
polynomial polynomial::pow(unsigned int n) const
{
polynomial s(0,0);
s[0] = 1;
for (unsigned int i=0; i<n; i++)
s = (s * (*this));
return s;
}
int polynomial::pdeg(void) const
{
return pos.size();
}
int polynomial::ndeg(void) const
{
return neg.size();
}
ostream& polynomial::display(ostream& os) const
{
int i;
for (i=pdeg(); i>=-ndeg(); i--)
os << (*this)[i] << (i > -ndeg() ? " " : "");
return os;
}
ostream& operator<<(ostream &os, polynomial &p)
{
return p.display(os);
}
vii
char *polynomial::TeXformat(char v) const
{
int ft = 1;
char tmp[4096], term[64], ssc[64], *op, *s;
tmp[0] = ’\0’;
for (int i = pdeg(); i >= -ndeg(); i--)
{
if ((*this)[i] == 0)
continue;
if (ft == 1 && (*this)[i] > 0)
op = "";
else
op = ((*this)[i] > 0 ? "+" : "-");
ft = 0;
if (i == 1)
ssc[0] = ’\0’;
else
sprintf(ssc,"^{%d}", i);
if (i == 0)
sprintf(term, "%s%d", op, abs((*this)[i]));
else if (abs((*this)[i]) == 1)
sprintf(term, "%s%c%s", op, v, ssc);
else
sprintf(term, "%s%d%c%s", op, abs((*this)[i]), v, ssc);
sprintf(tmp,"%s%s",tmp,term);
}
s = new char [strlen(tmp)+1];
sprintf(s,"%s",tmp);
return s;
}
A.4
A.4.1
cnf
cnf.h
#ifndef __cnf_h__
#define __cnf_h__
#ifndef __vector_h__
#include "vector.h"
#endif
#ifndef __polynomial_h__
#include "polynomial.h"
#endif
#ifndef NULL
#define NULL 0
#endif
viii
class cnf
{
private:
vector twists;
unsigned char
ends;
void init(void);
int dir(int, int) const;
int sign(int, int, int) const;
public:
cnf(unsigned int = 0, unsigned char = 4);
cnf(const cnf &);
cnf(const char *);
unsigned int ntwists(void) const;
int det(void) const;
int writhe(void) const;
polynomial bracket(void) const;
polynomial kauffman(void) const;
polynomial jones(void) const;
ostream& display(ostream&) const;
int &operator[](unsigned int);
int operator[](unsigned int) const;
cnf &operator=(const cnf &);
};
ostream& operator<<(ostream&, const cnf&);
#endif
A.4.2
cnf.cc
#include
#include
#include
#include
"vector.h"
"polynomial.h"
"cnf.h"
"string.h"
#include <stdlib.h>
#define ODD(a) ((a)%2 == 1)
#define EVEN(a) ((a)%2 == 0)
static
static
static
static
static
static
static
polynomial
polynomial
polynomial
polynomial
polynomial
polynomial
char initK
KA(1,0);
KB(0,1);
Kd(2,2);
K1(0,0);
K3a(3,0);
K3b(0,3);
= 0;
ix
void cnf::init(void)
{
if (!initK)
{
KA[1] = 1;
KB[-1] = 1;
Kd[2] = -1; Kd[-2] = -1;
K1[0] = 1;
K3a[3] = -1; K3b[-3] = -1;
initK = 1;
}
cnf::cnf(unsigned int n, unsigned char e) : twists(n)
{
init();
if (e > 3)
ends = (n%2 ? 0 : 1);
else
ends = e;
}
cnf::cnf(const cnf &c) : twists(c.twists), ends(c.ends)
{
init();
}
cnf::cnf(const char *s) : twists(strntokens(s," \t\n"))
{
unsigned int nt = strntokens(s," \t\n");
init();
ends = (twists.size()%2 ? 0 : 1);
for (unsigned int i=0; i<nt; i++)
{
char *t = strtoken(s,i," \t\n");
twists[i] = atoi(t);
delete [] t;
}
}
cnf &cnf::operator=(const cnf &c)
{
twists = c.twists;
ends = c.ends;
return *this;
}
int &cnf::operator[](unsigned int i)
{
return twists[i];
}
x
int cnf::operator[](unsigned int i) const
{
return twists[i];
}
unsigned int cnf::ntwists(void) const
{
return twists.size();
}
polynomial cnf::bracket(void) const
{
cnf k(*this);
for (unsigned int i=0; i<k.twists.size() && k.twists[i] == 0; i++)
;
for (unsigned int j=k.twists.size(); j>0 && k.twists[j-1] == 0; j--)
;
vector v(j < i ? 0 : j-i);
for (unsigned int l=i;l<j;l++)
v[l-i] = k.twists[l];
k.twists = v;
cnf a(k), b(k);
switch
{
case
case
if
{
(k.ends)
0:
2:
(k.ntwists()%2)
if (a[0] < 0)
{
a[0] = a[0] + 1;
b[0] = b[0] + 1;
b.ends = b.ends + 1;
polynomial p1(a.bracket());
polynomial p2(b.bracket());
return (KA * p1) + (KB * p2);
}
else
{
a[0] = a[0] - 1;
b[0] = b[0] - 1;
a.ends = a.ends + 1;
polynomial p1(a.bracket());
polynomial p2(b.bracket());
return (KA * p1) + (KB * p2);
}
}
else if (k.ntwists() == 0)
return (k.ends == 0 ? Kd : K1);
else
xi
{
a[0] = 0;
polynomial ab(a.bracket());
if (k[0] < 0)
{
polynomial p(K3a.pow(-k[0]));
return (p * ab);
}
else
{
polynomial p(K3b.pow(k[0]));
return (p * ab);
}
}
break;
case 1:
case 3:
if (k.ntwists() == 0)
return (k.ends == 3 ? Kd : K1);
else if (k.ntwists()%2)
{
a[0] = 0;
polynomial ab(a.bracket());
if (k[0] < 0)
{
polynomial p(K3b.pow(-k[0]));
return (p * ab);
}
else
{
polynomial p(K3a.pow(k[0]));
return (p * ab);
}
}
else
{
if (a[0] < 0)
{
a[0] = a[0] + 1;
b[0] = b[0] + 1;
a.ends = a.ends - 1;
polynomial p1(a.bracket());
polynomial p2(b.bracket());
return (KA * p1) + (KB * p2);
}
else
{
a[0] = a[0] - 1;
b[0] = b[0] - 1;
b.ends = b.ends - 1;
polynomial p1(a.bracket());
polynomial p2(b.bracket());
return (KA * p1) + (KB * p2);
xii
}
}
break;
}
}
int cnf::det(void) const
{
int num = 0;
int den = 1;
int tmp;
unsigned int i;
for (unsigned int i=0; i<twists.size(); i++)
{
num += twists[i] * den;
tmp = num; num = den; den = tmp;
}
tmp = num; num = den; den = tmp;
return num;
}
ostream& cnf::display(ostream& os) const
{
os << "C(";
for (unsigned int i = 0; i < twists.size() - 1; i++)
os << twists[i] << ’,’;
os << twists[twists.size() - 1] << ’|’ << int(ends) << ’)’;
return os;
}
ostream& operator<<(ostream &os, const cnf &c)
{
return c.display(os);
}
int cnf::writhe(void) const
{
int w = 0;
for (unsigned int i = 0; i<ntwists(); i++)
if (ODD(ntwists()-i))
w -= dir(i,1) * dir(i,2) * twists[i];
else
w += dir(i,0) * dir(i,1) * twists[i];
return w;
}
polynomial cnf::kauffman(void) const
{
polynomial kb(bracket());
int wr(writhe());
int p = (wr < 0 ? 3 * -wr : 0);
int n = (wr > 0 ? 3 * wr : 0);
xiii
polynomial w(p,n);
if (wr < 0)
w[p] = (p%2 ? -1 : 1);
else
w[-n] = (n%2 ? -1 : 1);
return (kb * w);
}
polynomial cnf::jones(void) const
{
polynomial kl(kauffman());
polynomial v(kl.pdeg()/4,kl.ndeg()/4);
int i;
for (i = 4; i <= kl.pdeg(); i += 4)
v[i/4] = kl[i];
v[0] = kl[0];
for (i = -4; i >= -kl.ndeg(); i -= 4)
v[i/4] = kl[i];
return v;
}
int cnf::dir(int twist, int strand) const
{
int s1, s2, d;
if (EVEN(det()))
{
s1 = (ends & 1 ? 1 : 2);
s2 = (ends & 1 ? 0 : 1);
}
else
s1 = s2 = 1;
d = sign(s1, twist, strand);
if (d == 0)
d = sign(s2,twist,strand);
return d;
}
int cnf::sign(int start, int twist, int strand) const
{
if (twist == 0 && strand == start)
return 1;
for (int x=0, y = start, d = 1; !(x == twist && y == strand);)
{
int n = ntwists() - x;
if (n == 0 && d == 1)
{
switch (y)
{
case 0: y = (ends & 2 ? 3 : 1); break;
xiv
case 1: y = (ends & 2 ? 2 : 0); break;
case 2: y = (ends & 2 ? 1 : 3); break;
case 3: y = (ends & 2 ? 0 : 2); break;
}
d = -1;
}
else if (x == 0 && d == -1)
{
switch (y)
{
case 0: y = (ends & 1 ? 3 : 1); break;
case 1: y = (ends & 1 ? 2 : 0); break;
case 2: y = (ends & 1 ? 1 : 3); break;
case 3: y = (ends & 1 ? 0 : 2); break;
}
d = 1;
}
else if ((ODD(n) && d == 1) ||
(EVEN(n) && d == -1))
{
switch (y)
{
case 0: break;
case 1: y = ODD(twists[ODD(n) ? x : x-1]) ? 2 : 1; break;
case 2: y = ODD(twists[ODD(n) ? x : x-1]) ? 1 : 2; break;
case 3: break;
}
x += d;
}
else if ((EVEN(n) && d == 1) ||
(ODD(n) && d == -1))
{
switch (y)
{
case 0: y = ODD(twists[EVEN(n) ? x : x-1]) ? 1 : 0; break;
case 1: y = ODD(twists[EVEN(n) ? x : x-1]) ? 0 : 1; break;
case 2: break;
case 3: break;
}
x += d;
}
if (x == 0 && y == start)
return 0;
}
return d;
}
xv