This book presents a graduate student-level introduction to the classical theory of modular forms and computations involving modular forms, including modular functions and the theory of Hecke operators. It also includes applications of modular forms to such diverse subjects as the theory of quadratic forms, the proof of Fermat s last theorem and the approximation of pi . It provides a balanced overview of both the theoretical and computational sides of the subject, allowing a variety of courses to be taught from it. Contents: Historical Overview; Introduction to Modular Forms; Results on Finite-Dimensionality; The Arithmetic of Modular Forms; Applications of Modular Forms; Modular Forms in Characteristic p ; Computing with Modular Forms; Appendices: ; MAGMA Code for Classical Modular Forms; SAGE Code for Classical Modular Forms; Hints and Answers to Selected Exercises. Contents 10 Acknowledgements 8 Introduction 10 This book 14 Possible courses 14 An overview of this book1 16 1. Historical overview 18 1.1 18th Century — a prologue 18 1.2 19th century — the classical period 19 1.3 Early 20th century — arithmetic applications 20 1.4 Later 20th century — the link to elliptic curves 21 1.5 The 21st century — the Langlands Program 22 2. Introduction to modular forms 24 2.1 Modular forms for SL2(Z) 24 2.2 Eisenstein series for the full modular group 28 2.3 Computing Fourier expansions of Eisenstein series 30 2.4 Congruence subgroups 34 2.5 Fundamental domains 38 2.6 Modular forms for congruence subgroups 41 2.7 Eisenstein series for congruence subgroups 45 2.8 Derivatives of modular forms 48 2.8.1 Quasi-modular forms 50 2.9 Exercises 51 3. Results on finite-dimensionality 54 3.1 Spaces of modular forms are finite-dimensional 54 3.2 Explicit formulae for the dimensions of spaces of modular forms 59 3.2.1 Formulae for the full modular group 59 3.2.2 Formulae for congruence subgroups 62 3.3 The Sturm bound 65 3.4 Exercises 68 4. The arithmetic of modular forms 70 4.1 Hecke operators 71 4.1.1 Motivation for the Hecke operators 71 4.1.2 Hecke operators for Mk(SL2(Z)) 72 4.1.3 Hecke operators for congruence subgroups 76 4.2 Bases of eigenforms 82 4.2.1 The Petersson scalar product 82 4.2.2 The Hecke operators are Hermitian 88 4.2.3 Integral bases 92 4.3 Oldforms and newforms 93 4.3.1 Multiplicity one for newforms 98 4.4 Exercises 101 5. Applications of modular forms 106 5.1 Modular functions 107 5.2 η-products and η-quotients 111 5.3 The arithmetic of the j-invariant 116 5.3.1 The j-invariant and the Monster group 119 5.3.2 “Ramanujan’s Constant” 120 5.4 Applications of the modular function λ(z) 121 5.4.1 Computing digits of π using λ(z) 122 5.4.2 Proving Picard’s Theorem 124 5.5 Identities of series and products 125 5.6 The Ramanujan-Petersson Conjecture 126 5.7 Elliptic curves and modular forms 129 5.7.1 Fermat’s Last Theorem 132 5.8 Theta functions and their applications 133 5.8.1 Representations of n by a quadratic form in an even number of variables 134 5.8.2 Representations of n by a quadratic form in an odd number of variables 141 5.8.3 The Shimura correspondence 144 5.9 CM modular forms 146 5.10 Lacunary modular forms 148 5.11 Exercises 151 6. Modular forms in characteristic p 156 6.1 Classical treatment 156 6.1.1 The structure of the ring of mod p forms 157 6.1.2 The θ operator on mod p modular forms 163 6.1.3 Hecke operators and Hecke eigenforms 164 6.2 Galois representations attached to mod p modular forms 165 6.3 Katz modular forms 169 6.4 The Sturm bound in characteristic p 171 6.5 Computations with mod p modular forms 172 6.6 Exercises 174 7. Computing with modular forms 176 7.1 Historical introduction to computations in number theory 176 7.2 Magma 180 7.2.1 Magma philosophy 183 7.2.2 Magma programming 184 7.3 Sage 186 7.3.1 Sage philosophy 188 7.3.2 Sage programming 188 7.3.3 The Sage interface 189 7.3.4 Sage graphics 190 7.4 Pari and other systems 190 7.4.1 Pari 190 7.4.2 Other systems and solutions 192 7.5 Discussion of computation 193 7.5.1 Computation today 193 7.5.2 Expected running times 195 7.5.3 Using computation effectively 196 7.5.4 The limits of computation 197 7.5.4.1 Explicit examples of limitations 199 7.5.5 Guy’s law of small numbers 200 7.5.6 How hard is it to calculate Fourier coe cients of modular forms? 202 7.6 Exercises 202 7.6.1 Magma 203 7.6.2 Sage 204 7.6.3 Pari 206 7.6.4 Maple 206 Appendix A Magma code for classical modular forms 208 Appendix B Sage code for classical modular forms 210 Appendix C Hints and answers to selected exercises 212 Bibliography 218 List of Symbols 230 Index 234 1. Historical overview. 1.1. 18th century - a prologue. 1.2. 19th century - the classical period. 1.3. Early 20th century - arithmetic applications. 1.4. Later 20th century - the link to elliptic curves. 1.5. The 21st century - the Langlands program -- 2. Introduction to modular forms. 2.1. Modular forms for [symbol]. 2.2. Eisenstein series for the full modular group. 2.3. Computing Fourier expansions of Eisenstein series. 2.4. Congruence subgroups. 2.5. Fundamental domains. 2.6. Modular forms for congruence subgroups. 2.7. Eisenstein series for congruence subgroups. 2.8. Derivatives of modular forms. 2.9. Exercises -- 3. Results on finite-dimensionality. 3.1. Spaces of modular forms are finite-dimensional. 3.2. Explicit formulae for the dimensions of spaces of modular forms. 3.3. The Sturm bound. 3.4. Exercises -- 4. The arithmetic of modular forms. 4.1. Hecke operators. 4.2. Bases of eigenforms. 4.3. Oldforms and newforms. 4.4. Exercises -- 5. Applications of modular forms. 5.1. Modular functions. 5.2. [symbol]-products and [symbol]-quotients. 5.3. The arithmetric of the [symbol]-invariant. 5.4. Applications of the modular function [symbol]. 5.5. Identities of series and products. 5.6. The Ramanujan-Petersson conjecture. 5.7. Elliptic curves and modular forms. 5.8. Theta functions and their applications. 5.9. CM modular forms. 5.10. Lacunary modular forms. 5.11. Exercises -- 6. Modular forms in characteristic [symbol]. 6.1. Classical treatment. 6.2. Galois representations attached to mod [symbol] modular forms. 6.3. Katz modular forms. 6.4. The Sturm bound in characteristic [symbol]. 6.5. Computations with mod [symbol] modular forms. 6.6. Exercises -- 7. Computing with modular forms. 7.1. Historical introduction to computations in number theory. 7.2. MAGMA. 7.3. SAGE. 7.4. PARI and other systems. 7.5. Discussion of computation. 7.6. Exercises "This book presents a graduate student-level introduction to the classical theory of modular forms and computations involving modular forms, including modular functions and the theory of Hecke operators. It also includes applications of modular forms to such diverse subjects as the theory of quadratic forms, the proof of Fermat's last theorem and the approximation of pi. It provides a balanced overview of both the theoretical and computational sides of the subject, allowing a variety of courses to be taught from it."--Jacket