This page focuses on the course 18.783 Elliptic Curves as it was taught by Dr. Andrew Sutherland in Spring 2013.
The course is a computationally focused introduction to elliptic curves, with applications to number theory and cryptography.
A key feature of the course that distinguishes it from most other introductory courses on elliptic curves is that it provides a rigorous mathematical treatment of the subject while at the same time addressing issues of algorithmic efficiency that are crucial to practical implementations. This includes, in particular, a thorough treatment of isogenies and the theory of complex multiplication, topics that are often not covered in a first course on the subject. These concepts are crucial to many theoretical and practical applications of elliptic curves.
The latter part of the course surveys some more advanced topics, including Galois representations, modular forms, and the proof of Fermat's Last Theorem.
Some of the theorems and algorithms presented in lecture are demonstrated using the Sage computer algebra system. Most of the problem sets contain at least one computationally-focused problem.
The goal of the course is to provide a thorough introduction to the theory of elliptic curves with a focus on computational applications. These include algorithms for factoring integers and proving primality, as well as elliptic curve cryptography.
Students who complete the course should be well prepared for more advanced study and even to begin research on topics related to elliptic curves. Indeed, an unstated goal of the course is to help prepare undergraduate students for graduate school. For students in pure mathematics this may include topics in number theory and algebraic geometry (and in particular, arithmetic geometry). Students in computer science will often pursue computational applications of elliptic curves, particularly in cryptography.
This course was first offered in Spring 2012, and again in Spring 2013. Going forward, it will be offered every other Spring semester.
While 18.783 is listed as a graduate-level class, it has been taken by a mix of students consisting primarily of juniors, seniors, and graduate students.
Most students are math majors, with a few computer science majors.
During an average week in the spring semester, students were expected to spend 12 hours on the course, roughly divided as follows:
Below, Dr. Andrew Sutherland describes various aspects of how he taught 18.783 Elliptic Curves.
I first taught this course in Spring 2012. Because it was a brand new course, I wanted to be able to adapt the material to the students as the course went along. A lot of the material is traditionally covered only in graduate courses, but I felt strongly that it could be made accessible to undergraduates if it was presented in the right way. In order to achieve this I knew it would be crucial to get feedback as I went along to make sure students weren't getting lost. I wanted to be sure I was actually getting feedback from everyone, not just those bold enough to speak up.
What I decided to do is include a survey at the end of each problem set, and students were required to submit feedback as part of the assignment. Here is a sample survey, taken from Problem Set 1:
I found the feedback so useful that I have continued this practice and even replicated it in other courses. It allows me to fine-tune the material, improve the course in each iteration, and adapt to the students’ needs and backgrounds (the mix of students varies from year to year). I actually do a post mortem on each problem set after I have graded it, reading all the surveys and taking note of specific improvements I want to make in the future. I also respond directly to students when appropriate, and this dialog definitely helps to keep the students engaged in the course.