Here are the notes for part one of the module "Topics in Discrete Mathematics" for 2017/18 in Bristol. These notes present a basic course in coding theory. Exercise Sheet 1, Solutions 1Exercise Sheet 2, Solutions 2, Practice Exam, Practice Exam Solutions.

During my PhD in Sheffield I lectured the module MAS430 - Analytic Number Theory. Here are the course notes, exercises and solutions.


I also gave many tutorials and group sessions in a wide variety of pure maths modules. While tutoring the module MAS208 - Topics in Number Theory I wrote a short revision aid for proving infinitude of primes in arithmetic progressions for small parameters.


As part of the module MAS328 - Codes and Cryptography I offered two cipher challenges on classical techniques (Challenge 1, Challenge 2). I also created a sheet on simple RSA weaknesses. Here are the solutions.


Here are the notes for an unofficial set of Galois theory lectures that I gave. Here are some (incomplete) exercises.


Here are some exercises on group theory that I prepared for some of my undergrad students.


A short note on the inversion formula for Hilbert-Siegel theta series.

A short note on modular forms.

A short note on how to solve the cannonball problem using elliptic curves.

My masters thesis on Global Class Field Theory. Part 1 is an introduction to the main theorems. Part 2 contains all of the proofs and some applications. Here is a short overview of the theory in terms of ideals.