These are course notes for the course 304 Elementary Number Theory, which I taught at Johns Hopkins University in the Spring 2025 and Fall 2025 semesters.
[Download the course notes (pdf, 336 pages)]

Elementary Number Theory is a designated “Introduction to Proofs” course at the Johns Hopkins Mathematics Department. The course is taken by students with a variety of majors, including mathematics, computer science, chemistry, history, or music.
The beginning of the course focuses on proof writing, and covers topics such as induction, unique existence proofs, bijections, counting with bijections, and the well-ordering theorem. These topics are approached from three angles:
The course then develops topics such as divisibility, greatest common divisors, rational numbers, Pythagorean triples, and infinite descent. In the historical development, these lectures take us from ancient mathematics to the time of Fermat. The purpose here is to build a solid foundation in proof-writing skills, before moving on to the more typical number-theoretic topics. After this foundational part of the course, we cover topics such as modular arithmetic, the Chinese Remainder Theorem, primes, multiplicative functions, Fermat’s Little Theorem, Fermat’s Two-Squares theorem, polynomials, primitive roots, quadratic residues, and quadratic reciprocity.
The notes contain extensive references to historical aspects of number theory. I have made use of many sources to learn about the history of number theory, particularly Andre Weil’s Number Theory: An Approach Through History from Hammurapi to Legendre and Carl Friedrich Gauss’s Disquisitiones Arithmeticae. I have also read historical sources such as Fibonacci’s Liber Quadratorum, the works of Leonhard Euler, and I have benefitted from many online sources. In particular, the Internet Archive hosts scans of many original texts in number theory. Finally, I have learned from many textbooks in number theory, including LeVeque’s Topics in Number Theory, Hardy and Wright’s An Introduction to the Theory of Numbers, Silverman’s A Friendly Introduction to Number Theory, and many more. Furthermore, Keith Conrad’s various notes on topics in number theory have been invaluable.
Each chapter corresponds roughly to one lecture, although many chapters cover optional topics. At the end of each chapter, there is a set of exercises which are categorized along three tiers: starter exercises, routine-building exercises, and challenge exercises. The starter exercises are meant to test the student’s understanding of the central concept of a chapter, or their ability to make the essential computations with that concept. The routine-building exercises are designed to develop the student’s routine with a subject. A student might find them challenging at first, while they are still learning the subject, but they are designed so that most students attempting these will eventually find their solutions. These exercises are designed to bring the student to the intended level of skill for the course. The challenge exercises are designed to be harder, and require more creative solutions. Some of them are modified versions of contest problems. A weekly homework assignment consists typically of multiple routine-building exercises and one challenge problem.
For the pedagogical development of this course, I have made use of the textbook Teaching for Quality Learning at University by Biggs and Tang. While not specifically about mathematics education, this book offers valuable advice on how to foster a productive and inspiring learning environment for students.