40
Untangling Celtic Knots Imogen Isabella Morris 2 nd October 2015 1 Knots and Celtic Knots Definition (Knots). A mathematical knot is a circle in 3-dimensional space. Definition (Links). A link is a collection of knots, which may or may not be intertwined. Definition (Alternating). If a strand of an alternating knot or link is chosen, and followed, con- secutive crossings along this path will alternate between ‘over’ and ‘under’. Definition (Celtic Plaits). A Celtic plait is an alternating knot or link constructed on a grid in a particular way. Example: A 2 × 3 Celtic plait. 2 Seifert Surfaces Definition (Seifert Surfaces). A Seifert surface of a knot is an orientable surface bounded by the knot. Definition (Seifert’s Algorithm). Seifert’s algorithm is a method for constructing a Seifert surface for any knot. Definition (Seifert Circles). The Seifert circles of a knot are closed paths along a projection of the knot, constructed as part of Seifert’s algorithm. Definition (Closed Curve). A closed curve is a loop on the Seifert surface which is topologically non-trivial; that is, it encloses a ‘hole’ and so it cannot be continuously deformed to a point. Definition (Linking Numbers). A linking number is an integer value determining how twisted together two closed curves are. 1

Untangling Celtic Knotsv1ranick/ImogenMorrisreport.pdf · Untangling Celtic Knots Imogen Isabella Morris 2nd October 2015 1 Knots and Celtic Knots De nition (Knots). A mathematical

Embed Size (px)

Citation preview

Page 1: Untangling Celtic Knotsv1ranick/ImogenMorrisreport.pdf · Untangling Celtic Knots Imogen Isabella Morris 2nd October 2015 1 Knots and Celtic Knots De nition (Knots). A mathematical

Untangling Celtic Knots

Imogen Isabella Morris

2nd October 2015

1 Knots and Celtic Knots

Definition (Knots). A mathematical knot is a circle in 3-dimensional space.

Definition (Links). A link is a collection of knots, which may or may not be intertwined.

Definition (Alternating). If a strand of an alternating knot or link is chosen, and followed, con-secutive crossings along this path will alternate between ‘over’ and ‘under’.

Definition (Celtic Plaits). A Celtic plait is an alternating knot or link constructed on a grid in aparticular way.

Example: A 2 × 3 Celtic plait.

2 Seifert Surfaces

Definition (Seifert Surfaces). A Seifert surface of a knot is an orientable surface bounded by theknot.

Definition (Seifert’s Algorithm). Seifert’s algorithm is a method for constructing a Seifert surfacefor any knot.

Definition (Seifert Circles). The Seifert circles of a knot are closed paths along a projection ofthe knot, constructed as part of Seifert’s algorithm.

Definition (Closed Curve). A closed curve is a loop on the Seifert surface which is topologicallynon-trivial; that is, it encloses a ‘hole’ and so it cannot be continuously deformed to a point.

Definition (Linking Numbers). A linking number is an integer value determining how twistedtogether two closed curves are.

1

Page 2: Untangling Celtic Knotsv1ranick/ImogenMorrisreport.pdf · Untangling Celtic Knots Imogen Isabella Morris 2nd October 2015 1 Knots and Celtic Knots De nition (Knots). A mathematical

3 General Seifert Matrix of Celtic Plaits

A Seifert matrix of an m× n Celtic plait is given by:A(1, 1) A(1, 2) · · · A(1, n2 − 1)

A(2, 1) A(2, 2) · · · A(2, n2 − 1)...

.... . .

...

A(n2 − 1, 1) A(n2 − 1, 2) · · · A(n2 − 1, n2 − 1)

where A(1, 1) to A(n2 − 1, n2 − 1) are given by the (m2 − 1) × (m2 − 1) matrix

2 0 · · · · · · 0

1 2. . .

. . ....

0 1. . .

. . ....

.... . .

. . .. . . 0

0 · · · 0 1 2

A(2, 1) to A(n2 − 1, n2 − 2) are given by the (m2 − 1) × (m2 − 1) matrix

1 0 · · · 0

0 1. . .

......

. . .. . . 0

0 · · · 0 1

and all other submatrices are (m2 − 1) × (m2 − 1) zero matrices.

4 Alexander Polynomial

Definition (Alexander Polynomial). If M is a Seifert matrix for a knot K, then the Alexanderpolynomial of K is calculated by det(M − tMT ).

Example. The Alexander Polynomial of the 74 Knot (or 2 × 3 Celtic plait) is

4t + 4t−1 − 7.

Further Reading

General Seifert Matrices of Celtic Knots

See my summer project for more precise definitions than those given here, the code for theMatlab program for drawing links in Celtic plaits, and the Seifert matrix of a more generalclass of Celtic knots, as well as proofs of some of the facts asserted:

http://www.maths.ed.ac.uk/~aar/ImogenMorrisreport.pdf

Seifert View

This is a (free) program for drawing Seifert surfaces of knots.

http://www.win.tue.nl/~vanwijk/seifertview/

Knot Atlas

A database of knots and links.

http://katlas.org/wiki/Main_Page

Thanks to Dr Julia Collins and Professor Andrew Ranicki for all their help with my projectand this presentation.

2

Page 3: Untangling Celtic Knotsv1ranick/ImogenMorrisreport.pdf · Untangling Celtic Knots Imogen Isabella Morris 2nd October 2015 1 Knots and Celtic Knots De nition (Knots). A mathematical

General Seifert Matrices of Celtic Knots

Imogen Isabella Morris

6th of July 2015

Page 4: Untangling Celtic Knotsv1ranick/ImogenMorrisreport.pdf · Untangling Celtic Knots Imogen Isabella Morris 2nd October 2015 1 Knots and Celtic Knots De nition (Knots). A mathematical

Contents

0.1 Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1

1 Celtic Plaits 21.1 Definition of Celtic Plaits . . . . . . . . . . . . . . . . . . . . . . 21.2 Seifert Surfaces . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5

1.2.1 Seifert’s Algorithm . . . . . . . . . . . . . . . . . . . . . . 51.2.2 Finding the Seifert Surfaces of Celtic Plaits . . . . . . . . 7

1.3 Seifert Matrix of Celtic Plaits . . . . . . . . . . . . . . . . . . . . 91.3.1 Seifert Graphs and Closed Curves . . . . . . . . . . . . . 91.3.2 Linking Numbers . . . . . . . . . . . . . . . . . . . . . . . 101.3.3 Seifert Matrix of a 2n× 2m Celtic Plait . . . . . . . . . . 12

1.4 Result of Changing the Orientations . . . . . . . . . . . . . . . . 131.4.1 Review of Conventions . . . . . . . . . . . . . . . . . . . . 13

2 Celtic Knots with Vertical Barriers 142.0.2 Definition of a Celtic Knot with Barriers . . . . . . . . . . 142.0.3 Seifert Matrix of a Subset of Celtic Knots with Vertical

Barriers . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15

3 Finding the Seifert Matrices of General Celtic Knots 243.0.4 General Celtic Knots . . . . . . . . . . . . . . . . . . . . . 243.0.5 Algorithm for Finding Closed Curves . . . . . . . . . . . . 24

Appendices 27.1 Program for Drawing Link Components of Celtic Plaits . . . . . 27

.1.1 Main UI Program . . . . . . . . . . . . . . . . . . . . . . 27

.1.2 UI Helper Programs . . . . . . . . . . . . . . . . . . . . . 31.2 The Number of Links that make up a Celtic Plait . . . . . . . . . 36

0.1 Introduction

The purpose of this article is to give a general Seifert matrix of a simple kind ofCeltic knot which we will call ‘Celtic plaits’ and a slightly more complex kind ofCeltic knot with vertical barriers. This will involve finding the Seifert surfaces,finding the closed curves and calculating their linking numbers.

1

Page 5: Untangling Celtic Knotsv1ranick/ImogenMorrisreport.pdf · Untangling Celtic Knots Imogen Isabella Morris 2nd October 2015 1 Knots and Celtic Knots De nition (Knots). A mathematical

Chapter 1

Celtic Plaits

1.1 Definition of Celtic Plaits

Definition 1.1.1 (Celtic Plaits). A 2n × 2m Celtic plait is a knot or linkconstructed in the following manner:

• A 2n× 2m, where n,m ∈ Z+, grid is drawn

• A point is placed at every coordinate (x, y) on the grid such that x, y ∈ Z+

and x + y is odd.

Figure 1.1: Celtic Plait Grid

• Through each point in the grid (except at the edge of the grid) draw twoline segments that cross such that they lie at 45◦ to the x-axis. If the pointhas an odd x-coordinate, then let the line segment which comes from thetop right cross above the other. If the point has an odd y-coordinate, thenlet the line segment which comes from the top left cross above the other.

2

Page 6: Untangling Celtic Knotsv1ranick/ImogenMorrisreport.pdf · Untangling Celtic Knots Imogen Isabella Morris 2nd October 2015 1 Knots and Celtic Knots De nition (Knots). A mathematical

Figure 1.2: Incomplete Celtic Plait

• Where two line segments can be extended such that they will merge, ex-tend them.

• If extending a line segment would cause it to hit the edge of the grid,instead turn it so it curves slightly away from the edge.

• Where two curves can be extended such that they will merge, extend them.

Figure 1.3: Completed Celtic Plait

1

Definition 1.1.2 (Crossings). We will call the places where we let one linesegment cross above another ‘crossings’.

1This method of construction of a Celtic plait is taken from http://www.cs.columbia.edu/

~cs6204/files/Lec7,8a-CelticKnots.pdf

3

Page 7: Untangling Celtic Knotsv1ranick/ImogenMorrisreport.pdf · Untangling Celtic Knots Imogen Isabella Morris 2nd October 2015 1 Knots and Celtic Knots De nition (Knots). A mathematical

Remark. Some sizes of grids give links rather than knots. 2 We will not treatlinks differently here.

Proposition 1. All crossings in a Celtic plait have the same orientation.Ad Hoc: At least when the strands are orientated regularly.

Proof. In order to simplify the problem, let us assume that each odd strandof the Celtic plait is orientated with a downwards right diagonal arrow overtheir first crossing (the crossing in the top left hand corner of each strand), andeach even strand is oriented with a downwards left diagonal arrow under theirfirst crossing. Is this possible? We only need to think about the way strandsreturn along one direction, because the plait is symmetrical. A strand goingdiagonally left (or diagonally right) returns an odd number of strands later, bysymmetrical properties of the plait (see Figure 1.5). This means there is noconflict in choosing the orientation of the strands as above. So we can deducethat the structure of a general Celtic plait looks as it does in Figure 1.6 oncewe have chosen an orientation for each of the strands. We can see that only twokinds of crossing occur in a general Celtic plait (see Figure 1.7) and both kindsof crossings are the same under rotation.

Figure 1.4: Celtic plait as diagonal lines

Figure 1.5: Symmetrical properties of a Celtic plait

2See Appendix .1

4

Page 8: Untangling Celtic Knotsv1ranick/ImogenMorrisreport.pdf · Untangling Celtic Knots Imogen Isabella Morris 2nd October 2015 1 Knots and Celtic Knots De nition (Knots). A mathematical

Figure 1.6: Orientation of strands in a general Celtic plait

Figure 1.7: The two kinds of crossing in a Celtic plait orientated according tothe conventions

1.2 Seifert Surfaces

Definition 1.2.1 (Seifert Surfaces). The Seifert surface of a knot or link is anorientable surface with the knot or link as its boundary.

Theorem 1.2.1. Every knot and link has a Seifert surface.

1.2.1 Seifert’s Algorithm

Remark. Seifert’s Algorithm provides a proof by construction for Theorem 1.2.1.

• We take a particular projection of a knot or link onto the plane.

• We orientate a knot by giving its strand a direction. We orientate a linkby giving each separate strand an independent direction.

• We pick an arbitrary point on the projection of the knot or link. Wefollow the strand from this point in the direction that we chose. Everytime we reach a crossing, we don’t choose to follow the strand that we areon, but instead we choose the other strand. We choose to travel in thedirection that is not opposed to the direction we were previously travellingin. Every time we complete a loop, we pick a new arbitrary point to startfrom, but it must not be a point we have previously passed. When wehave run out of new points to pick, we stop. The loops we have found wecall ‘Seifert circles’.

5

Page 9: Untangling Celtic Knotsv1ranick/ImogenMorrisreport.pdf · Untangling Celtic Knots Imogen Isabella Morris 2nd October 2015 1 Knots and Celtic Knots De nition (Knots). A mathematical

• The Seifert circles are joined by crossings. We replace each crossing withan equivalent band.

Definition 1.2.2 (Bands). A band equivalent to a crossing is a finitesmooth surface bounded on two edges by the crossing.

We replace each Seifert circle with a disk, after we have chosen differentheights for any nested circles so that they won’t intersect. We now havea smooth surface bounded by the knot.

Theorem 1.2.2. The Seifert surface is orientable.

Proof. Once all the Seifert circles have been constructed, their boundary willbe orientated either clockwise or anticlockwise, if we choose a single viewpointon the circles which we can think of as being either ‘above’ or ‘below’.

After the circles have been placed in three dimensions and have been spannedby disks, we choose the disks with the clockwise boundary orientation to be the‘top’ of the surface and the disks with the anticlockwise boundary orientation tobe the ‘bottom’ of the surface. Since this is just a label, it is completely arbitrarywhich we decide to call ‘top’ and which we decide to call ‘bottom’. Notice thatif we change our viewpoint from ‘above’ to ‘below’ the disk boundaries changefrom clockwise to anticlockwise and vice-versa, so ‘top’ becomes ‘bottom’ as youwould expect. To prove that the surface is orientable, we need to prove thatthe labelling is consistent, i.e. that each disk is labelled ‘top’ or ‘bottom’ butnot both at the same time. We can do this by examining how the surface isconstructed.

• If two Seifert disks are joined, it is always by a band that only goes throughone twist. If it had been through a second twist, that would have createdanother Seifert circle/disk.

• Because of the way the Seifert circles were created, the disks can eitherbe nested or adjacent.

• Adjacent disks have consistent orientation: Disks that are adjacent andjoined by a band will always have opposite orientations, because the cross-ing that the band was formed from will mean that the circles had oppositeorientations. Since the band joining them goes through a single twist, thisis consistent with the orientations.

• Nested disks have consistent orientation: Disks that are nested and joinedby a band will always have the same orientation, because the crossingthat the band was formed from will mean that the circles had the sameorientation. Since the band joining them goes through a single twist andthen flips sides, this is consistent with the orientations.

Since every part of the surface has consistent orientations locally, we deducethat the whole surface has consistent orientations. So the surface is orientable.

6

Page 10: Untangling Celtic Knotsv1ranick/ImogenMorrisreport.pdf · Untangling Celtic Knots Imogen Isabella Morris 2nd October 2015 1 Knots and Celtic Knots De nition (Knots). A mathematical

1.2.2 Finding the Seifert Surfaces of Celtic Plaits

Remark. We will use the convention that the first crossing (the crossing in thetop left hand corner) is ‘over’, and that each strand of the Celtic plait is orient-ated with a downwards diagonal arrow over their first crossing (the crossing inthe top left hand corner of each strand). We will also use the convention thatthe first Seifert disk (the disk in the top left hand corner) is on the bottom ofthe surface. Diagrams will show the top of the surface as shaded with diagonallines. The effect of changing these conventions will be discussed in Section 1.4.

Finding the Seifert Surface of the 4× 6 Celtic plait

Once the plait is orientated (see Figure 1.8) we find the Seifert circles accordingto Seifert’s algorithm (see Figure 1.9). Once the circles are found, it is easy tosee what the Seifert surface must look like (see Figure 1.10).

Figure 1.8: 4 × 6 plait with orientation

Figure 1.9: Seifert circles of a 4 × 6 plait

7

Page 11: Untangling Celtic Knotsv1ranick/ImogenMorrisreport.pdf · Untangling Celtic Knots Imogen Isabella Morris 2nd October 2015 1 Knots and Celtic Knots De nition (Knots). A mathematical

Figure 1.10: Seifert surface of a 4 × 6 plait

Finding the Seifert Surface of the 2n× 2m Celtic plait

Once the plait is orientated (see Figure 1.11) we find the Seifert circles accordingto Seifert’s algorithm (see Figure 1.12). Due to the structure of a Celtic plait,we can generalise the circles from a small part of the knot to the whole of theknot. Since the circles follow a regular pattern, so do the bands and disks thatmake up the Seifert surface (see Figure 1.13).

Figure 1.11: 2n× 2m plait with orientation

Figure 1.12: Seifert circles of 2n× 2m plait

8

Page 12: Untangling Celtic Knotsv1ranick/ImogenMorrisreport.pdf · Untangling Celtic Knots Imogen Isabella Morris 2nd October 2015 1 Knots and Celtic Knots De nition (Knots). A mathematical

Figure 1.13: Seifert surface of 2n× 2m plait

1.3 Seifert Matrix of Celtic Plaits

1.3.1 Seifert Graphs and Closed Curves

Definition 1.3.1 (Seifert Graphs). A Seifert graph of a knot is found from aSeifert surface of that knot by replacing bands by edges and disks by vertices.

We use the Seifert graph to find ‘closed curves’ on the Seifert surface.

Definition 1.3.2 (Closed Curves). A closed curve on the Seifert surface is theboundary of a face of the Seifert graph, placed on the surface so that it travelsthrough the disks that were its vertices and the bands that were its edges.3

Remark. We will use the convention that all closed curves of Celtic plaits areorientated clockwise. This will be important in Section 1.3.2. Again, the effectof changing these orientations will be discussed in Section 1.4.

Seifert Graph and Closed Curves of a 4× 6 Celtic Plait

Figure 1.14: Seifert graph of 4× 6 plait

3When using the closed curves to find the Seifert matrix, we will always reject the closedcurve which can be thought of as the face containing infinity, i.e. the outer boundary of theSeifert graph

9

Page 13: Untangling Celtic Knotsv1ranick/ImogenMorrisreport.pdf · Untangling Celtic Knots Imogen Isabella Morris 2nd October 2015 1 Knots and Celtic Knots De nition (Knots). A mathematical

Figure 1.15: Seifert surface of 4× 6 plait with closed curves overlaid

Seifert Graph and Closed Curves of a 2n× 2m Celtic Plait

Figure 1.16: Seifert graph of 2n× 2m plait

Figure 1.17: Seifert surface of 2n× 2m plait with closed curves overlaid

1.3.2 Linking Numbers

As mentioned in the previous section, we will choose to orientate the closedcurves clockwise.

Let us label the closed curves the same way we would label the elements ofa matrix. The closed curve in the ith row and jth column (measured from thetop left corner), will be called li,j .

Since the closed curves are the same everywhere, there is a limited numberof ways that the curves can link with each other. Only closed curves that are

10

Page 14: Untangling Celtic Knotsv1ranick/ImogenMorrisreport.pdf · Untangling Celtic Knots Imogen Isabella Morris 2nd October 2015 1 Knots and Celtic Knots De nition (Knots). A mathematical

next to each other will have non-zero linking numbers. We can see from Figure1.18 that la,b is next to la−1,b, la+1,b, la,b−1 and la,b+1.

Figure 1.18: Seifert surface of 2nx2m knot with closed curves labelled

Figures 1.19 to 1.21 show the ways in which the closed curves can link. InFigure 1.19 the linking number is 2; in Figure 1.20 the linking number is 0, andin Figure 1.21 the linking number is 1.4

Figure 1.19: Closed curve linking with itself

4‘T’ and ‘B’ in figures 1.20 and 1.21 refers to ‘top’ and ‘bottom’.

11

Page 15: Untangling Celtic Knotsv1ranick/ImogenMorrisreport.pdf · Untangling Celtic Knots Imogen Isabella Morris 2nd October 2015 1 Knots and Celtic Knots De nition (Knots). A mathematical

Figure 1.20: Closed curve linkingwith its neighbour (1)

Figure 1.21: Closed curve linkingwith its neighbour (2)

1.3.3 Seifert Matrix of a 2n× 2m Celtic Plait

We arrange the linking numbers of closed curves la,b and lc,d in a matrix of theform

A(1, 1) A(1, 2) · · · A(1, n2 − 1)

A(2, 1) A(2, 2) · · · A(2, n2 − 1)

......

. . ....

A(n2 − 1, 1) A(n

2 − 1, 2) · · · A(n2 − 1, n

2 − 1)

where each (m

2 − 1)× (m2 − 1) submatrix is given by

A(i, j) =

Lk(li,1, l

#j,1) Lk(li,1, l

#j,2) · · · Lk(li,1, l

#j,m2 −1)

Lk(li,2, l#j,1) Lk(li,2, l

#j,2) · · · Lk(li,2, l

#j,m2 −1)

......

. . ....

Lk(li,m2 −1, l#j,1) Lk(li,m2 −1, l

#j,2) · · · Lk(li,m2 −1, l

#j,m2 −1)

.

Theorem 1.3.1 (General Seifert matrix of Celtic plaits). We can now put thelinking numbers that we calculated in the previous section into the matrix

A(1, 1) A(1, 2) · · · A(1, n2 − 1)

A(2, 1) A(2, 2) · · · A(2, n2 − 1)

......

. . ....

A(n2 − 1, 1) A(n

2 − 1, 2) · · · A(n2 − 1, n

2 − 1)

where A(1, 1) to A(n

2 − 1, n2 − 1) are given by the (m

2 − 1)× (m2 − 1) matrix

2 0 · · · · · · 0

1 2. . .

. . ....

0 1. . .

. . ....

.... . .

. . .. . . 0

0 · · · 0 1 2

12

Page 16: Untangling Celtic Knotsv1ranick/ImogenMorrisreport.pdf · Untangling Celtic Knots Imogen Isabella Morris 2nd October 2015 1 Knots and Celtic Knots De nition (Knots). A mathematical

A(2, 1) to A(n2 − 1, n

2 − 2) are given by the (m2 − 1)× (m

2 − 1) matrix1 0 · · · 0

0 1. . .

......

. . .. . . 0

0 · · · 0 1

and all other submatrices are (m

2 − 1)× (m2 − 1) zero matrices.

1.4 Result of Changing the Orientations

1.4.1 Review of Conventions

The arbitrary conventions for the orientations we chose in the previous sectionsare listed below:

• We will use the convention that the first crossing (the crossing in the topleft hand corner) is ‘over’,

• We will choose each strand of the Celtic plait to be orientated with adownwards diagonal arrow over their first crossing (the crossing in the topleft hand corner of each strand).

• We will also use the convention that the first Seifert disk (the disk in thetop left hand corner) is on the bottom of the surface.

• We will choose to orientate the closed curves clockwise.

• Changing orientation of the strands: Reversing the orientation of all thestrands swaps the orientation of the crossings and therefore the bands,from positive to negative. So it reverses the sign of the Seifert matrix.

• Changing orientation of first crossing: Since Celtic knots are alternating,this changes the orientation all the crossings. Therefore it also changesthe orientation of the bands from positive to negative, and reverses thesign of the Seifert matrix.

• Changing the orientation of the Seifert surface: We change the ‘top’ ofthe surface to the ‘bottom’ and vice-versa. This affects the closed curveswherever they cross each other, except if the crossing was the result oftwisting by a band.

• Changing the orientation of a single closed curve: Reversing the orienta-tion of the curve will not change linking numbers that are zero. However,any linking numbers that are not zero of that curve with an adjacent curvewill be the negative of what they were. The linking number of the curvewith itself remains unchanged.

Changing the orientation of a single curve only has a local effect on theSeifert Matrix, because it only affects the linking numbers of that curvewith its neighbours.

13

Page 17: Untangling Celtic Knotsv1ranick/ImogenMorrisreport.pdf · Untangling Celtic Knots Imogen Isabella Morris 2nd October 2015 1 Knots and Celtic Knots De nition (Knots). A mathematical

Chapter 2

Celtic Knots with VerticalBarriers

2.0.2 Definition of a Celtic Knot with Barriers

We define a general Celtic knot the same way as we defined a Celtic plait above,but with the insertion of ‘barriers’.

Definition 2.0.1 (Barriers). A barrier is a two-unit line segment that can beplaced vertically or horizontally at any point

Definition 2.0.2 (Celtic Knot with Barriers). A Celtic knot with barriers isthe same as a Celtic plait defined in Section 1.1 except a barrier may be placedat any point before constructing the crossings. Then the crossings are placed onevery free point. When the crossings are extended to form the knot, the barriersare treated as though they are an edge of the grid.

Remark. All Celtic knots can be defined as Celtic knots with barriers.

Figure 2.1: Celtic Knot with Barriers

We will consider only Celtic knots with vertical barriers, because the Seifertmatrix of these is simpler than that of a general Celtic knot with barriers.

14

Page 18: Untangling Celtic Knotsv1ranick/ImogenMorrisreport.pdf · Untangling Celtic Knots Imogen Isabella Morris 2nd October 2015 1 Knots and Celtic Knots De nition (Knots). A mathematical

Figure 2.2: Celtic Knot with only Vertical Barriers

2.0.3 Seifert Matrix of a Subset of Celtic Knots with Ver-tical Barriers

Remark. If we know the Seifert matrix of any Celtic knot with vertical barriers,we also know the Seifert matrix of the same knots rotated through 90◦, i.e. anyCeltic knot with horizontal barriers.

It would be difficult to find the general Seifert matrix of any knot withvertical barriers, because when the vertical barriers are placed randomly theknot doesn’t have much structure in its Seifert circles. Let us define a certaintype of Celtic knot with vertical barriers, that has a more rigid structure, inorder to find the general Seifert matrix of this type of knot.

Definition 2.0.3 (Horizontally Unchanging Celtic Knot). We define a ‘hori-zontally unchanging’ Celtic knot to be a Celtic knot that horizontally repeatsitself every four units. Note that a HUC ‘knot’ may actually be a link.

We will only discuss HUC knots that are created using vertical barriers.

15

Page 19: Untangling Celtic Knotsv1ranick/ImogenMorrisreport.pdf · Untangling Celtic Knots Imogen Isabella Morris 2nd October 2015 1 Knots and Celtic Knots De nition (Knots). A mathematical

Figure 2.3: An Example of a HUC Knot

Figure 2.4: General Form of a HUC Knot

Finding the Seifert Circles of HUC knots

Proposition 2. We can orientate any HUC knot so that the strands alongthe top line, which may or may not be separate strands, are alternating inorientation.

Proof. Any Celtic plait can be orientated so that the strands along the top line

16

Page 20: Untangling Celtic Knotsv1ranick/ImogenMorrisreport.pdf · Untangling Celtic Knots Imogen Isabella Morris 2nd October 2015 1 Knots and Celtic Knots De nition (Knots). A mathematical

are alternating in orientation. Any HUC knot can be reduced to a plait withoutchanging the orientation of the top strands (and vice-versa) by using a movewhich is illustrated below in three different contexts.

Figure 2.5: Moves reducing HUC Knot to a Plait

Let us orientate our general HUC so that the strands along the top line arealternating in orientation, as we have just proved is possible. Now the Seifertcircles are easily deducible from the diagram.

Figure 2.6: HUC Knot with Seifert Circles Highlighted

The Seifert surface, as before, is the Seifert circles joined by bands thatreplace each crossing.

17

Page 21: Untangling Celtic Knotsv1ranick/ImogenMorrisreport.pdf · Untangling Celtic Knots Imogen Isabella Morris 2nd October 2015 1 Knots and Celtic Knots De nition (Knots). A mathematical

Figure 2.7: Seifert Surface of HUC Knot

Finding the Seifert Graph and Closed Curves of HUC knots

Replacing the Seifert circles by vertices and the bands by edges, we produce thefollowing Seifert graph.

Figure 2.8: Seifert Graph of HUC Knot

Overlaying this onto the Seifert surface and then dividing the Seifert graphinto faces, we find the closed curves of the Seifert surface.

Finding the Linking Numbers

Let us orientate all the closed curves clockwise.

18

Page 22: Untangling Celtic Knotsv1ranick/ImogenMorrisreport.pdf · Untangling Celtic Knots Imogen Isabella Morris 2nd October 2015 1 Knots and Celtic Knots De nition (Knots). A mathematical

We can see that there are two kinds of closed curve. Therefore there are fivekinds of link that can occur.

1. a type 1 with another type 1

2. a type 1 with a type 2 (identical to a type 2 with a type 1)

3. a type 2 with another type 2

4. a type 1 with itself

5. a type 2 with itself

Figure 2.9: Type 1 with another Type 1

Figure 2.10: Type 1 with Type 2

19

Page 23: Untangling Celtic Knotsv1ranick/ImogenMorrisreport.pdf · Untangling Celtic Knots Imogen Isabella Morris 2nd October 2015 1 Knots and Celtic Knots De nition (Knots). A mathematical

Figure 2.11: Type 2 with another Type 2

Figure 2.12: Type 1 with Itself

20

Page 24: Untangling Celtic Knotsv1ranick/ImogenMorrisreport.pdf · Untangling Celtic Knots Imogen Isabella Morris 2nd October 2015 1 Knots and Celtic Knots De nition (Knots). A mathematical

Figure 2.13: Type 2 with Itself

The linking numbers for each of these cases are:

1. 1 or 0 (depending on the circle orientations)

2. 1 or 0 (depending on the circle orientations)

3. 1 or 0 (depending on the circle orientations)

4. -1

5. -2

Let us label the closed curves the same way we would label the elements ofa matrix. The closed curve in the ith row and jth column (measured from thetop left corner), will be called li,j .

Only closed curves that are next to each other will have non-zero linkingnumbers. We can see that la,b is next to la−1,b, la+1,b, la,b−1 and la,b+1. Thelinking numbers of la,b with each of its neighbours are given below:

• For la,b and la,b+1 (which is equivalent to la,b−1 and la,b):

This pair of closed curves will always either be both of type 1 or both oftype 2, because they are adjacent horizontally. When they are both oftype 1, then they do not link and therefore always have a linking numberof 0. When they are both of type 2, they link across one band, and havea linking number of either 1 or 0 depending on the circle orientations.

• For la,b and la+1,b (which is equivalent to la−1,b and la,b):

This pair of closed curves can be both type 1, both type 2 or type 1 andtype 2. Whichever type they are, they link across one band, and have alinking number of either 1 or 0 depending on the circle orientations.

21

Page 25: Untangling Celtic Knotsv1ranick/ImogenMorrisreport.pdf · Untangling Celtic Knots Imogen Isabella Morris 2nd October 2015 1 Knots and Celtic Knots De nition (Knots). A mathematical

Seifert Matrix of a n×m HUC Knot

The linking numbers calculated in the previous section may be put in a matrix.However their layout is slightly tricky and depends on the length of the barriersand vertical spacing in the HUC knot, as well as the dimensions of the grid.The matrix will be given for HUC knots that have a fixed barrier length andfixed amount of vertical spacing between barriers. Let us call a barrier ‘of lengthk’ when it is is the same length as 2k grid squares, and ditto for the verticalspacing. Let b be the barrier length and s be the length of vertical spacing.h = m

2 is the number of vertical barriers horizontally and v = n+2s2b+2s is the

number of vertical barriers horizontally. The matrix takes the formA(1, 1) A(1, 2) · · · A(1, vb + (v − 1)s)A(2, 1) A(2, 2) · · · A(2, vb + (v − 1)s)

......

. . ....

A(vb + (v − 1)s, 1) A(vb + (v − 1)s, 2) · · · A(vb + (v − 1)s, vb + (v − 1)s)

where each h× h i.e. (m

2 − 1)× (m2 − 1) submatrix is given by

A(i, j) =

Lk(li,1, l

#j,1) Lk(li,1, l

#j,2) · · · Lk(li,1, l

#j,m2 −1)

Lk(li,2, l#j,1) Lk(li,2, l

#j,2) · · · Lk(li,2, l

#j,m2 −1)

......

. . ....

Lk(li,m2 −1, l#j,1) Lk(li,m2 −1, l

#j,2) · · · Lk(li,m2 −1, l

#j,m2 −1)

.

We can now put the linking numbers that we calculated in the previous sectioninto the matrix

A(1, 1) A(1, 2) · · · A(1, vb + (v − 1)s)A(2, 1) A(2, 2) · · · A(2, vb + (v − 1)s)

......

. . ....

A(vb + (v − 1)s, 1) A(vb + (v − 1)s, 2) · · · A(vb + (v − 1)s, vb + (v − 1)s)

where A(1, 1) to A(b, b) are given by the (m

2 − 1)× (m2 − 1) matrix

−1 0 · · · · · · 0

0or1 −1. . .

. . ....

0 0or1. . .

. . ....

.... . .

. . .. . . 0

0 · · · 0 0or1 −1

A(b + 1, b + 1) to A(b + s, b + s) are given by the (m

2 − 1)× (m2 − 1) matrix

−2 0 · · · · · · 0

0or1 −2. . .

. . ....

0 0or1. . .

. . ....

.... . .

. . .. . . 0

0 · · · 0 0or1 −2

22

Page 26: Untangling Celtic Knotsv1ranick/ImogenMorrisreport.pdf · Untangling Celtic Knots Imogen Isabella Morris 2nd October 2015 1 Knots and Celtic Knots De nition (Knots). A mathematical

and so on until A((v−1)b+ (v−1)s, (v−1)b+ (v−1)s) to A(vb+ (v−1)s, vb+(v − 1)s) are given by the (m

2 − 1)× (m2 − 1) matrix

−2 0 · · · · · · 0

0or1 −2. . .

. . ....

0 0or1. . .

. . ....

.... . .

. . .. . . 0

0 · · · 0 0or1 −2

Furthermore A(2, 1) to A(vb+ (v− 1)s, vb+ (v− 1)s− 1) and A(1, 2) to A(vb+(v − 1)s− 1, vb + (v − 1)s) are given by the (m

2 − 1)× (m2 − 1) matrix

0or1 0 · · · 0

0 0or1. . .

......

. . .. . . 0

0 · · · 0 0or1

and all other submatrices are (m

2 − 1)× (m2 − 1) zero matrices.

23

Page 27: Untangling Celtic Knotsv1ranick/ImogenMorrisreport.pdf · Untangling Celtic Knots Imogen Isabella Morris 2nd October 2015 1 Knots and Celtic Knots De nition (Knots). A mathematical

Chapter 3

Finding the Seifert Matricesof General Celtic Knots

3.0.4 General Celtic Knots

Since all alternating knots have a Celtic representation, finding the Seifert mat-rix of a general Celtic knot is equivalent to finding the Seifert matrix of a generalalternating knot. We can create any Celtic knot if we can use both vertical andhorizontal barriers. However, once we try to introduce horizontal barriers atthe same time as vertical barriers, the Seifert circles no longer follow an easilydiscernible pattern, and calculating the general Seifert matrix would not be aneasy task. But their Seifert matrices can easily be calculated individually, soit seems the way to proceed might be to write an algorithm to find them, thatworks for a general knot, and can be executed by computer. Since we alreadyknow how to find their Seifert matrices this seems simple in theory. But thecomputer must use matrices and matrix operations rather than the visual rep-resentations that humans use, and unfortunately the visual representations aredifficult to translate into those terms.

3.0.5 Algorithm for Finding Closed Curves

Remark. This algorithm works for all knots, even those that are not alternating.

We take a projection of the knot onto the plane and choose an arbitrarypoint on the knot. We follow the strand in either direction, and each time wecome to a crossing we give it a number. If we return to the same crossing, wegive it a second number. We continue in this way until every crossing has an(i, j, ) tuple associated with it.

Finding the Seifert Circles

Let us label the tuples from 1 to n where n is the number of crossings in theknot. We will choose the 1st tuple to be the tuple containing 1, and the k + 1th

tuple to be the tuple containing the smallest integer greater than k such thatthe tuple containing that integer has not been labelled already.

Let a1 be the segment from the 1st tuple to the 2nd, and let ak be the segmentfrom the kth tuple to the k + 1th tuple, except if k = n, in which case let an be

24

Page 28: Untangling Celtic Knotsv1ranick/ImogenMorrisreport.pdf · Untangling Celtic Knots Imogen Isabella Morris 2nd October 2015 1 Knots and Celtic Knots De nition (Knots). A mathematical

the segment from the nth tuple to the 1st tuple.Let o(i) mean ’the other entry in the tuple containing i’.Let us ‘join’ ai to aj , where aj is the segment from the tuple containing

o(i + 1) to the tuple containing o(i + 1) + 1.We will obtain groups of segments that are joined to each other, directly or

indirectly. We put each group in a separate array. Eg:

(a1, · · · , ap)

(aq, · · · , ar)

...

(at, · · · , au)

Just to be standard, we start each array with the ai for which i is lowest in thatarray, and then order the arrays so that the is of the ais that start the arraysare ordered from lowest to highest.

These are the Seifert circles, and their standard ordering can provide a wayto give the circles different heights, which would be needed if the algorithm wereto be extended to find the linking numbers of the closed curves.

Finding the Closed Curves

Label the arrays (the circles) c1, c2, · · · , cs where s is the number of circles.Label the crossing tuples b1, b2, · · · , bn where bi is the ith tuple. These tupleswill now be called ‘bands’ rather than crossings.

We are going to create an ordering of the bands inside the circles. We willcall each ordering ocj where cj is the circle within which we are ordering thebands.

To create each ocj we take the cj and replace each ai within that cj withthe bk such that bk is the tuple containing i.

Now we take each ocj and divide it into pairs of bands that are adjacent inthe ordering. We allow bands at opposite ends of the ordering to be adjacent.Eg for the ordering (br, · · · , bq), br is adjacent to bq.

For convenience we notate the pairs as follows, appending a small ci to eachband tuple to show which circle they are adjacent in:

(b1, bp)c1

...

(bq, br)cs

We order the pairs by circle first, placing those from c1 first and so on until cs.Within this ordering we order the pairs by the value of the ‘i’ first bi in eachpair, from lowest to highest. This ordering is arbitrary and only for convenience.

Starting with the first entry bi in the first pair, next the second entry inthat pair, and progressing through all entries in all pairs in order, we searchsystematically for another pair containing that bi . Then we search for anotherpair containing the o(bi) from that pair. We continue this process until we hita pair that is tagged with a circle that a pair we passed through before wastagged with. We may call this ‘returning to a circle’. There are two conditionsthat must be obeyed throughout this process:

25

Page 29: Untangling Celtic Knotsv1ranick/ImogenMorrisreport.pdf · Untangling Celtic Knots Imogen Isabella Morris 2nd October 2015 1 Knots and Celtic Knots De nition (Knots). A mathematical

1. We may not return to a circle if it was the circle we just left.

2. If we cannot find any of the required pairs, the process must be stoppedand deemed ‘unsuccessful’. Then we should try the process with the nextentry on the list.

If we achieve a ‘successful’ result, i.e. if we return to a circle, we record in anarray the circle that was repeated, then the band that came next, the othercircle that the band was tagged with, the band that came next after that etc.until the last band before the circle was returned to. The arrays we produce inthis way are the closed curves, described by which bands and circles they passthrough.

Remark. One closed curve must be discarded as the ‘face at infinity’. Any ofthe closed curves may be chosen for this purpose.

26

Page 30: Untangling Celtic Knotsv1ranick/ImogenMorrisreport.pdf · Untangling Celtic Knots Imogen Isabella Morris 2nd October 2015 1 Knots and Celtic Knots De nition (Knots). A mathematical

.1 Program for Drawing Link Components ofCeltic Plaits

Figure 1: Screenshot of Matlab Program for Drawing Link Components

.1.1 Main UI Program

function Cplaitgui(n,m)% CPLAITGUI displays the Celtic plait for the 2nx2m grid, highlighting link% components in different colours.% The menu in the interface allows the user to add and remove the link% components seperately.% Helper functions are firstlink, linkcalc and linkC.

if n > msaven = n;n = m;m = saven;

elsen = n;

end

% Sets units to pixelsset(0,'units','pixels')% Obtains screen size in pixelspix ss = get(0,'screensize');

% Figure dimensionsfig w = 1200;fig h = 700;

% Position set to open centrally% Visibility is to 'off' until the basic UI stuff is set up.f = figure('Visible','off','Position',[(pix ss(3)-fig w)/2,...

(pix ss(4)-fig h)/2,fig w,fig h]);

27

Page 31: Untangling Celtic Knotsv1ranick/ImogenMorrisreport.pdf · Untangling Celtic Knots Imogen Isabella Morris 2nd October 2015 1 Knots and Celtic Knots De nition (Knots). A mathematical

% Construct the components

% Button dimensionsbton w = 100;bton h = 40;

addi = uicontrol('Style','pushbutton',...'String','Add Link','Position',[4*fig w/5,7*fig h/10,bton w,bton h],...'Callback',{@addbutton Callback}); % why 7 not 6? confused.

remi = uicontrol('Style','pushbutton',...'String','Remove Last Link','Position',[4*fig w/5,5*fig h/10,bton w,bton h],...'Callback',{@rembutton Callback});

counti = uicontrol('Style','pushbutton',...'String','Count Links','Position',[4*fig w/5,4*fig h/10,bton w,bton h],...'Callback',{@countbutton Callback});

texti = uicontrol('Style','text','String','','Position',...[4*fig w/5,3*fig h/10,2*bton w,bton h]);

% Axesai = axes('Units','pixels','Position',[fig w/10,fig h/10,fig w/1.5,...

5*fig h/6]);

% Aligns all components (except axes) along their centres

align([addi,remi,counti,texti],'Center','None');

% Initialization tasks% Change units to normalized so components resize automatically.f.Units = 'normalized';ai.Units = 'normalized';addi.Units = 'normalized';

% Create a plot in the axes.[current X,tv] = firstlink(n,m); % (turquoise because variable spans multiple% functions)current X = current X(:,(1:end-2));howmany = length(current X);current X(:,end+1) = current X(:,1);p = plot(current X(1,:),current X(2,:),'.-','markersize',18,...

'linewidth',2);hold on;

if tv == 2set(texti,'String',...

'This size of grid contains multiple link components');if m >= 5*n

set(texti,'String',...'Wow, this is a long one! This size of grid contains multiple link components.');

end

elseset(texti,'String','This size of grid contains a knot');if m >= 5*n

set(texti,'String',...'Wow, this is a long one! This size of grid contains a knot.');

endend

28

Page 32: Untangling Celtic Knotsv1ranick/ImogenMorrisreport.pdf · Untangling Celtic Knots Imogen Isabella Morris 2nd October 2015 1 Knots and Celtic Knots De nition (Knots). A mathematical

tv = 1;

% Button count% initialize the counter for number of times pressed for addbuttonaddbuttonPressCount = 0;rembuttonPressCount = 0;

prev X = current X;

while tv == 1

[current X,prev X,tv] = linkcalc(current X,prev X,n,m);% plot current linkcurrent X(:,end+1) = current X(:,1);plot(current X(1,:),current X(2,:),'.-','markersize',18,...

'linewidth',2);

addbuttonPressCount = addbuttonPressCount + 1;end

truelinknum = addbuttonPressCount-rembuttonPressCount;

% Assign a name to appear in the window title.f.Name = 'Celtic Plait GUI';

% Move the window to the center of the screen.movegui(f,'center');

% Axes - aesthetic% Grid partgrid onai.XTick = 0:1:2*m;ai.YTick = 0:1:2*n;axis tightpbaspect([2*m 2*n 1]) % To keep it in proportion - check if this does anything

% % Colour% ai = gca; % current axes% h = @(x) x/260;% ai.Color = [h(191) h(239) h(255)]; % RGB colour values out of 0 to 1% % 1 being the palest.

% Labelstitle(['Link Grid for a ',num2str(2*n),' by ',num2str(2*m),' Plait']);

% Make the UI visiblef.Visible = 'on';p = plot(0);

% Callbacksfunction addbutton Callback(source,eventdata)

% if addbuttonPressCount-rembuttonPressCount == 0% % Create a plot in the axes.% [current X,tv] = firstlink(n,m); % (turquoise because variable spans multiple% % functions)% current X(:,end+1) = current X(:,1);% plot(current X(1,:),current X(2,:),'.-','markersize',18,...% 'linewidth',2,'color',rand(1,3));% prev X = current X;% hold on;

29

Page 33: Untangling Celtic Knotsv1ranick/ImogenMorrisreport.pdf · Untangling Celtic Knots Imogen Isabella Morris 2nd October 2015 1 Knots and Celtic Knots De nition (Knots). A mathematical

% addbuttonPressCount = addbuttonPressCount + 1;% else

if addbuttonPressCount - rembuttonPressCount >= truelinknum

set(texti,'String','All links have been calculated')else

% Create a plot in the axes.[current X,tv] = firstlink(n,m); % (turquoise because variable spans multiple% functions)current X = current X(:,(1:end-2));prev X = current X;current X(:,end+1) = current X(:,1);hold offp = plot(current X(1,:),current X(2,:),'.-','markersize',18,...

'linewidth',2);hold on;% Axes - aesthetic% Grid partgrid onai.XTick = 0:1:2*m;ai.YTick = 0:1:2*n;axis tightpbaspect([2*m 2*n 1]) % To keep it in proportion - check if this does anything% Labelstitle(['Link Grid for a ',num2str(2*n),' by ',num2str(2*m),' Plait']);addbuttonPressCount = addbuttonPressCount + 1;fixcount = addbuttonPressCount - rembuttonPressCount;for i = 2:fixcount

[current X,prev X,tv] = linkcalc(current X,prev X,n,m);% plot current linkcurrent X(:,end+1) = current X(:,1);p = plot(current X(1,:),current X(2,:),'.-','markersize',18,...

'linewidth',2);

end

end

% endend

function rembutton Callback(source,eventdata)% undo(1) % works but unsatisfactorily since it doesn't let you add% them back in.

% This should be exactly the same as addbutton callback, except it% racks up the number of rembuttonPressCount.

if addbuttonPressCount - rembuttonPressCount == 1hold offdelete(p);% Axes - aesthetic% Grid partgrid onai.XTick = 0:1:2*m;ai.YTick = 0:1:2*n;axis tightpbaspect([2*m 2*n 1]) % To keep it in proportion - check if this does anything% Labelstitle(['Link Grid for a ',num2str(2*n),' by ',num2str(2*m),' Plait']);

30

Page 34: Untangling Celtic Knotsv1ranick/ImogenMorrisreport.pdf · Untangling Celtic Knots Imogen Isabella Morris 2nd October 2015 1 Knots and Celtic Knots De nition (Knots). A mathematical

rembuttonPressCount = rembuttonPressCount + 1;elseif addbuttonPressCount - rembuttonPressCount == 0

set(texti,'String','No links to remove.');else

% Create a plot in the axes.[current X,tv] = firstlink(n,m); % (turquoise because variable spans multiple% functions)current X = current X(:,(1:end-2));prev X = current X;current X(:,end+1) = current X(:,1);hold offp = plot(current X(1,:),current X(2,:),'.-','markersize',18,...

'linewidth',2);hold on;% Axes - aesthetic% Grid partgrid onai.XTick = 0:1:2*m;ai.YTick = 0:1:2*n;axis tightpbaspect([2*m 2*n 1]) % To keep it in proportion - check if this does anything% Labelstitle(['Link Grid for a ',num2str(2*n),' by ',num2str(2*m),' Plait']);rembuttonPressCount = rembuttonPressCount + 1;fixcount = addbuttonPressCount - rembuttonPressCount;for i = 2:fixcount

[current X,prev X,tv] = linkcalc(current X,prev X,n,m);% plot current linkcurrent X(:,end+1) = current X(:,1);p = plot(current X(1,:),current X(2,:),'.-','markersize',18,...

'linewidth',2);end

endend

function countbutton Callback(source,eventdata)x = addbuttonPressCount-rembuttonPressCount;nolink = ['The number of links is ',num2str(x)];set(texti,'String',nolink);

end

end

.1.2 UI Helper Programs

These must each be also put on the Matlab path with the correct ‘.m’ filenames.

firstlink.m

function [current X,tv] = firstlink(n,m)% firstlink displays the first link of the Celtic plait for the 2nx2m grid.% Plotting a Link Componentx0 = 0;y0 = 1;B = [x0;y0]; % 'Previous' value: exists for every knotx1 = 1;y1 = 0;S = [x1;y1]; % Starting value: exists for every knot

31

Page 35: Untangling Celtic Knotsv1ranick/ImogenMorrisreport.pdf · Untangling Celtic Knots Imogen Isabella Morris 2nd October 2015 1 Knots and Celtic Knots De nition (Knots). A mathematical

% Write each stage into a vector so that the values can be used to find the% starting point for the next linkX = [B,S];p = [];

while or(isequal(X(:,end),S) == false,length(X) == 2)% We want to continue until the last column is the starting value EXCEPT% if the last column is also the first column (not equal to the first% column but ACTUALLY the first column)% xi = X(1,end);% yi = X(2,end);% xi 1 = X(1,end-1); % `end-1' means `second to last'% yi 1 = X(2,end-1); % need to keep redefining these.% Those would be handy for notation, but they need to be active.% p is the 'visiting matrix' that tells you which conditionals you have visited

if X(1,end) == 0if X(1,end-1) == X(2,end) && X(2,end-1) == 0 % because one of the new points is the point last

% visitedX = [X,[2*n-X(2,end);2*n]]; %p = [p,1]

elseX = [X,[X(2,end);0]]; %p = [p,2];

endelseif X(1,end) == 2*m

if X(1,end-1) == 2*m-X(2,end) && X(2,end-1) == 0X = [X,[2*m-(2*n-X(2,end));2*n]]; %p = [p,3]

elseX = [X,[2*m-X(2,end);0]]; %p = [p,4]

endelseif X(2,end) == 0

if X(1,end) < 2*n && 2*m < X(1,end)+2*nif X(1,end-1) == 0 && X(2,end-1) == X(1,end)

X = [X,[2*m;2*m-X(1,end)]]; %p = [p,5]else

X = [X,[0;X(1,end)]]; %p = [p,6]end

elseif X(1,end) < 2*n && 2*m > X(1,end)+2*nif X(1,end-1) == 0 && X(2,end-1) == X(1,end)

X = [X,[X(1,end)+2*n;2*n]]; %p = [p,7]else

X = [X,[0;X(1,end)]]; %p = [p,8]end

elseif X(1,end) > 2*n && 2*m < X(1,end)+2*nif X(1,end-1) == X(1,end)-2*n && X(2,end-1) == 2*n

X = [X,[2*m;2*m-X(1,end)]]; %p = [p,9]else

X = [X,[X(1,end)-2*n;2*n]]; %p = [p,10]end

elseif X(1,end-1) == X(1,end)-2*n && X(2,end-1) == 2*n

X = [X,[X(1,end)+2*n;2*n]]; %p = [p,11]else

X = [X,[X(1,end)-2*n;2*n]]; %p = [p,12]end

endelse

if X(1,end) < 2*n && 2*m < X(1,end)+2*nif X(1,end-1) == 0 && X(2,end-1) == 2*n-X(1,end)

X = [X,[2*m;2*n-(2*m-X(1,end))]]; %p = [p,13]else

X = [X,[0;2*n-X(1,end)]]; %p = [p,14]end

32

Page 36: Untangling Celtic Knotsv1ranick/ImogenMorrisreport.pdf · Untangling Celtic Knots Imogen Isabella Morris 2nd October 2015 1 Knots and Celtic Knots De nition (Knots). A mathematical

elseif X(1,end) < 2*n && 2*m > X(1,end)+2*nif X(1,end-1) == 0 && X(2,end-1) == 2*n-X(1,end)

X = [X,[X(1,end)+2*n;0]]; %p = [p,15]else

X = [X,[0;2*n-X(1,end)]]; %p = [p,16]end

elseif X(1,end) > 2*n && 2*m < X(1,end)+2*nif X(1,end-1) == X(1,end)-2*n && X(2,end-1) == 0

X = [X,[2*m;2*n-(2*m-X(1,end))]]; %p = [p,17]else

X = [X,[X(1,end)-2*n;0]]; %p = [p,18]end

elseif X(1,end-1) == X(1,end)-2*n && X(2,end-1) == 0

X = [X,[X(1,end)+2*n;0]]; %p = [p,19]else

X = [X,[X(1,end)-2*n;0]]; %p = [p,20]end

endend%X% pause(2)% (Useful for debugging)

endcurrent X = X;saveX = X;

tf = saveX(2,:) == 0; % Creates a logical array 'true' where the 'y' row of X% is zeroind = find(tf == 1);%if ~isempty(ind)Y = zeros(1,m);for i = 1:length(ind)

x = saveX(1,ind(i));fx = (x+1)/2;Y(fx) = 1;

end

% Will this size of grid give a link? and where shall we start next?

if any(Y==0)tv = 2;

yind = find(Y == 0);xcoor = 2*yind(1)-1; % ycoor = 0S = [xcoor;0];X = S;if X(1,end) == 0

X = [X,[2*n-X(2,end);2*n]]; %p = [p,1]elseif X(1,end) == 2*m

X = [X,[2*m-(2*n-X(2,end));2*n]]; %p = [p,3]elseif X(2,end) == 0

if X(1,end) < 2*n && 2*m < X(1,end)+2*nX = [X,[0;X(1,end)]]; %p = [p,6]

elseif X(1,end) < 2*n && 2*m > X(1,end)+2*nX = [X,[0;X(1,end)]]; %p = [p,8]

elseif X(1,end) > 2*n && 2*m < X(1,end)+2*nX = [X,[X(1,end)-2*n;2*n]]; %p = [p,10]

elseX = [X,[X(1,end)-2*n;2*n]]; %p = [p,12]

endelse

33

Page 37: Untangling Celtic Knotsv1ranick/ImogenMorrisreport.pdf · Untangling Celtic Knots Imogen Isabella Morris 2nd October 2015 1 Knots and Celtic Knots De nition (Knots). A mathematical

if X(1,end) < 2*n && 2*m < X(1,end)+2*nX = [X,[0;2*n-X(1,end)]]; %p = [p,14]

elseif X(1,end) < 2*n && 2*m > X(1,end)+2*nX = [X,[0;2*n-X(1,end)]]; %p = [p,16]

elseif X(1,end) > 2*n && 2*m < X(1,end)+2*nX = [X,[X(1,end)-2*n;0]]; %p = [p,18]

elseX = [X,[X(1,end)-2*n;0]]; %p = [p,20]

endend

elsetv = 3;

end

end

linkcalc.m

function [current X,prev X,tv] = linkcalc(current X,prev X,n,m)

saveX = [current X,prev X];tf = saveX(2,:) == 0; % Creates a logical array 'true' where the 'y' row of X% is zeroind = find(tf == 1);%if ~isempty(ind)Y = zeros(1,m);for i = 1:length(ind)

x = saveX(1,ind(i));fx = (x+1)/2;Y(fx) = 1;

end% Will this size of grid give a link? and where shall we start next?X = current X;if any(Y==0)

tv = 1;yind = find(Y == 0);xcoor = 2*yind(1)-1; % ycoor = 0S = [xcoor;0];X = S;if X(1,end) == 0

X = [X,[2*n-X(2,end);2*n]]; %p = [p,1]elseif X(1,end) == 2*m

X = [X,[2*m-(2*n-X(2,end));2*n]]; %p = [p,3]elseif X(2,end) == 0

if X(1,end) < 2*n && 2*m < X(1,end)+2*nX = [X,[0;X(1,end)]]; %p = [p,6]

elseif X(1,end) < 2*n && 2*m > X(1,end)+2*nX = [X,[0;X(1,end)]]; %p = [p,8]

elseif X(1,end) > 2*n && 2*m < X(1,end)+2*nX = [X,[X(1,end)-2*n;2*n]]; %p = [p,10]

elseX = [X,[X(1,end)-2*n;2*n]]; %p = [p,12]

endelse

if X(1,end) < 2*n && 2*m < X(1,end)+2*nX = [X,[0;2*n-X(1,end)]]; %p = [p,14]

elseif X(1,end) < 2*n && 2*m > X(1,end)+2*nX = [X,[0;2*n-X(1,end)]]; %p = [p,16]

elseif X(1,end) > 2*n && 2*m < X(1,end)+2*nX = [X,[X(1,end)-2*n;0]]; %p = [p,18]

34

Page 38: Untangling Celtic Knotsv1ranick/ImogenMorrisreport.pdf · Untangling Celtic Knots Imogen Isabella Morris 2nd October 2015 1 Knots and Celtic Knots De nition (Knots). A mathematical

elseX = [X,[X(1,end)-2*n;0]]; %p = [p,20]

endendp = [];current X = linkC(S,X,n,m);prev X = saveX;

elsetv = 0;

end

linkC.m

function X = linkC(S,X,n,m)% Possibly input argument S is redundant (it's just the second column of X)% and n and m will be defined everywhere Clink is used, so are possibly% also redundant.while or(isequal(X(:,end),S) == false,length(X) == 2)% We want to continue until the last column is the starting value EXCEPT% if the last column is also the first column (not equal to the first% column but ACTUALLY the first column)% xi = X(1,end);% yi = X(2,end);% xi 1 = X(1,end-1); % `end-1' means `second to last'% yi 1 = X(2,end-1); % need to keep redefining these.% Those would be handy for notation, but they need to be active.% p is the 'visiting matrix' that tells you which conditionals you have visited

if X(1,end) == 0if X(1,end-1) == X(2,end) && X(2,end-1) == 0 % because one of the new points is the point last

% visitedX = [X,[2*n-X(2,end);2*n]]; %p = [p,1]

elseX = [X,[X(2,end);0]]; %p = [p,2];

endelseif X(1,end) == 2*m

if X(1,end-1) == 2*m-X(2,end) && X(2,end-1) == 0X = [X,[2*m-(2*n-X(2,end));2*n]]; %p = [p,3]

elseX = [X,[2*m-X(2,end);0]]; %p = [p,4]

endelseif X(2,end) == 0

if X(1,end) < 2*n && 2*m < X(1,end)+2*nif X(1,end-1) == 0 && X(2,end-1) == X(1,end)

X = [X,[2*m;2*m-X(1,end)]]; %p = [p,5]else

X = [X,[0;X(1,end)]]; %p = [p,6]end

elseif X(1,end) < 2*n && 2*m > X(1,end)+2*nif X(1,end-1) == 0 && X(2,end-1) == X(1,end)

X = [X,[X(1,end)+2*n;2*n]]; %p = [p,7]else

X = [X,[0;X(1,end)]]; %p = [p,8]end

elseif X(1,end) > 2*n && 2*m < X(1,end)+2*nif X(1,end-1) == X(1,end)-2*n && X(2,end-1) == 2*n

X = [X,[2*m;2*m-X(1,end)]]; %p = [p,9]else

X = [X,[X(1,end)-2*n;2*n]]; %p = [p,10]end

35

Page 39: Untangling Celtic Knotsv1ranick/ImogenMorrisreport.pdf · Untangling Celtic Knots Imogen Isabella Morris 2nd October 2015 1 Knots and Celtic Knots De nition (Knots). A mathematical

elseif X(1,end-1) == X(1,end)-2*n && X(2,end-1) == 2*n

X = [X,[X(1,end)+2*n;2*n]]; %p = [p,11]else

X = [X,[X(1,end)-2*n;2*n]]; %p = [p,12]end

endelse

if X(1,end) < 2*n && 2*m < X(1,end)+2*nif X(1,end-1) == 0 && X(2,end-1) == 2*n-X(1,end)

X = [X,[2*m;2*n-(2*m-X(1,end))]]; %p = [p,13]else

X = [X,[0;2*n-X(1,end)]]; %p = [p,14]end

elseif X(1,end) < 2*n && 2*m > X(1,end)+2*nif X(1,end-1) == 0 && X(2,end-1) == 2*n-X(1,end)

X = [X,[X(1,end)+2*n;0]]; %p = [p,15]else

X = [X,[0;2*n-X(1,end)]]; %p = [p,16]end

elseif X(1,end) > 2*n && 2*m < X(1,end)+2*nif X(1,end-1) == X(1,end)-2*n && X(2,end-1) == 0

X = [X,[2*m;2*n-(2*m-X(1,end))]]; %p = [p,17]else

X = [X,[X(1,end)-2*n;0]]; %p = [p,18]end

elseif X(1,end-1) == X(1,end)-2*n && X(2,end-1) == 0

X = [X,[X(1,end)+2*n;0]]; %p = [p,19]else

X = [X,[X(1,end)-2*n;0]]; %p = [p,20]end

endend%X% pause(2)% (Useful for debugging)

endsaveX = X;% X(:,end+1) = X(:,1);% link 1 = plot(X(1,:),X(2,:),'.-','markersize',18,'linewidth',2);hold onX = saveX;end

.2 The Number of Links that make up a CelticPlait

In the previous Appendix .1 a program was given for drawing link compon-ents of Celtic plaits. When the program is used for several examples of Celticplaits, a conjecture naturally presents itself. This ‘conjecture’ is expressed inthe following theorem:

Theorem .2.1 (Number of Links in a Celtic Plait). The number of links in aCeltic plait is given by the highest common factor (hcf) of n and m.1

1The proof of this is due to Gwen Fisher and Blake Mellor and can be found at http:

//www.mi.sanu.ac.rs/vismath/fisher/

36

Page 40: Untangling Celtic Knotsv1ranick/ImogenMorrisreport.pdf · Untangling Celtic Knots Imogen Isabella Morris 2nd October 2015 1 Knots and Celtic Knots De nition (Knots). A mathematical

Proof. Let us first simplify the Celtic knot to a 2n× 2m grid filled only by di-agonal lines (such as the diagrams drawn by the Matlab program in Appendix.1 ). Since the crossing orientations and the pretty curves make no differenceto the links of the plait, this is sufficient for the purposes of the proof. Let usimagine that there is an ant which travels along the strands of the plait. If theant travels along the whole plait, the ant has travelled through every square ofthe grid, i.e. 2n × 2m squares. Now let us consider how the ant may travelany link in this plait. To travel a link, the ant must return to a square it hasbeen before. We can separate its journey back to this square into horizontal andvertical dimensions. To return to its starting square, it must travel a multipleof 2n units vertically and a multiple of 2m units horizontally. But since the antcan only travel one unit vertically when it travels one unit horizontally (becauseof the diagonal lines the plait is made up of), it is the lowest common multiple(lcm) of 2n and 2m that first brings the ant back to where its journey started,and thus completes the link. Note that this is true of every link in the plait,i.e. every single link in the plait takes the ant lcm(2n, 2m) squares to travel.Therefore the number of links in the plait is 2n×2m

lcm(2n,2m) = hcf(2n, 2m).

37