from studying some algebraic geometry and algebraic num-
ber theory. (Milne’s book does not require as much algebraic
geometry as Silverman’s.)
(3) The theory of modular forms and L-functions is definitely
a graduate topic, and the reader will need a strong back-
ground in algebra to understand all the fine details. Dia-
mond and Shurman’s book [DS05] contains a neat, modern
and thorough account of the theory of modular forms (in-
cluding much information about the modularity theorem).
Koblitz’s book [Kob93] is also a very nice introduction to
the theory of elliptic curves and modular forms (and includes
a lot of information about the congruent number problem).
Chapter 5 in Milne’s book [Mil06] contains a good, concise
overview of the subject. Serre’s little book [Ser77] is always
worth reading and also contains an introduction to modular
forms. Miyake’s book [Miy06] is a very useful reference.
(4) Finally, if the reader is interested in computations, we rec-
ommend Cremona’s [Cre97] or Stein’s [Ste07] book. If the
reader wants to play with fundamental domains of modular
curves, try Helena Verrill’s applet [Ver05].
I would like to thank the organizers of the undergraduate summer
school at PCMI, Aaron Bertram and Andrew Bernoff, for giving me
the opportunity to lecture in such an exciting program. Also, I would
like to thank Ander Steele and Aaron Wood for numerous corrections
and comments of an early draft. Last, but not least, I would like to
express my gratitude to Keith Conrad, David Pollack and William
Stein, whose abundant comments and suggestions have improved this
manuscript much more than it would be safe to admit.