Additional Resources for Topics in Knot Theory 
This page will contain some Python code to experiment with the constructions that we cover in class.
Week 2:
Here we can  experiment with Bridge positions, Kauffman States and the Alexander polynomial. You will need the file  alexander.py
Its use is explained in a pdf file   Alexander.pdf 
 
Click here to download all the files for Week 2.
  
A simple way is to use a Python shell: python, ipython,  python3 or ipython3.
Using Python: Download alexander.py into a directory. 
 In the same directory start Python by typing python or python3. 
In the python shell you can import the functions by typing   from alexander import *
Then you can start experimenting, for example by typing Alexander(Torus(5,6)) or Alexander(Pretzel(-3,5,7)) or NumberOfKauffmanStates(Torus(5,9))
A modern (and interactive) way is to work in a Jupyter notebook (for that you need to have jupyter installed). 
In this case download alexander.py and in the same directory type jupyter notebook 
Then open the notebook Alexander.ipynb, or in a fresh notebook import alexander: from alexander import *
An alternative is to work in Google Colab. 
Upload alexander.py and Alexander_Colab.ipynb to Google Drive. 
Here you can use Google Colab to open and run Alexander_Colab.ipynb
Week 3:
The new functions include knot signature, knot  determinant, Seifert algorithm, bounds for the Seifert genus and bigraded generators for knot Floer homology.  
The usage is explained in a pdf file   Week3.pdf 
Click here to download all the files for Week 3.
Week 6:
The new functions include Kauffman Bracket, Jones polynomial, Khovanov Homology and the Khovanov Lee homology.
The usage is explained in a pdf file   Week6.pdf 
Click here to download all the files for Week 6.