CALIFORNIA STATE UNIVERSITY SAN MARCOS
MASTER’S THESIS
Data of Modular Curves
Author: Supervisor: Steven NEWBERG Dr. Shahed SHARIF
A thesis submitted in fulfillment of the requirements for the degree of Master of Science in the
Department of Mathematics California State University San Marcos
December 14, 2017 i Acknowledgements
I would like to begin by thanking my thesis advisor, Dr. Shahed Sharif, for his oft needed mathematical insight and enduring support. He holds signifi- cant responsibility for making the writing of this thesis such an enjoyable and fulfilling process. I would also like to thank my committee members, Dr. Wayne Aitken and Dr. Badal Joshi, for their contribution to this thesis as well as my mathematical education. I am grateful to my parents, Nick and Bella, for supporting my decision to pursue a graduate degree and for their unwavering encouragement at every step of the way. To my sister, Nicole, for assisting with my thesis submission and listening to my explanations of problems that I was working on. Lastly, I would like to thank my best friend and wife, Heidi, for her un- conditional love and encouragement. She allowed me to spend countless days and nights buried in a book or huddled over my keyboard. She has kept me grounded during the writing of this thesis. ii
Data of Modular Curves
Steven NEWBERG
Abstract
A moduli problem seeks to find a bijection between a class of objects and a topological space that describes the parameters of the class of objects. We will present the moduli problem for a type of curve used in cryptography, elliptic curves. The topological space describing elliptic curves is the quotient of the com- plex plane by the action of matrices in SL2(Z), which we call a modular curve. Taking a quotient of the upper half of the complex plane by subgroups of SL2(Z) also give moduli spaces of elliptic curves but include some extra struc- ture. There are special points on modular curves, which we will discuss and give methods for finding. iii
Contents
Abstract ii
1 Introduction 1 1.1 Moduli problem ...... 1 1.2 Elliptic curves ...... 2 1.3 Complex upper half-plane ...... 3 1.3.1 Action of SL2(Z) on H ...... 4 1.4 Modular curves ...... 7 1.5 Elliptic points ...... 8 1.6 Modular curve as a Riemann surface ...... 10 1.7 Degree ...... 10 1.7.1 Properties of maps between compact Riemann surfaces . 10 1.8 Genus ...... 12
2 Cusps 13 2.1 Definitions ...... 13 2.2 Computing cusps of X(1) ...... 14 2.3 Computing cusps of X(Γ) ...... 15 2.3.1 Computing cusps of X(N) ...... 16 2.3.2 Algorithm for cusps of X(N) ...... 18 2.3.3 Algorithm in Sage ...... 20 2.3.4 Computing cusps of X1(N) ...... 21 2.3.5 Algorithm for cusps of X1(N) ...... 22 2.3.6 Algorithm in Sage ...... 25 2.3.7 Computing cusps of X0(N) ...... 27 2.3.8 Algorithm for cusps of X0(N) ...... 31 2.3.9 Algorithm in Sage ...... 33
3 Elliptic Points 35 3.1 Definitions ...... 35 3.2 Elliptic points of X(N) ...... 35 3.3 Elliptic points of X1(N) ...... 36 3.4 Elliptic points of X0(N) ...... 40
4 Genus and Ramification Degree 43 4.1 Ramification degree ...... 43 4.1.1 Ramification degree formula ...... 43 4.1.2 Ramification degrees of elliptic points ...... 45 4.1.3 Ramification degree of cusps ...... 45 4.2 Genera of modular curves ...... 47 iv
4.3 Cuspidal trees ...... 50 4.3.1 Degree of a map between modular curves ...... 50 4.3.2 Cuspidal trees ...... 51 4.3.3 Sage code for creating cuspidal trees ...... 52
Bibliography 55 1
Chapter 1
Introduction
1.1 Moduli problem
We first present the idea of a moduli problem. A moduli problem seeks to find a bijection between a class of objects and a topological space that describes the parameters of the class of objects. The key steps in solving a moduli problem are (1) defining the class of objects that we hope to describe; (2) determining the parameters, or what dis- tinguishes one object from another; and (3) defining an equivalence relation for our parameter space. For clarity, we will show a few examples of moduli problems. 2 Example 1.1. We want to describe all the circles in R . We know that given any three distinct points we can define a circle. Unfor- tunately there are infinitely many points on any circle in the plane, so there are infinite triples of points that describe the same circle. This means 3 points do not uniquely define a circle, but we require uniqueness for our moduli space. Instead we can describe distinct circles by their center and their radius. Since the center and radius can be represented by a triple (a, b, r) for a, b, r ∈ R and r > 0, the moduli space of circles is
3 M = {(a, b, r) ∈ R |r > 0}.
2 The map f which takes M to circles in R is clearly bijective. So the topo- 2 logical space M is a moduli space for the set of circles in R . Example 1.2. We want to describe all the triangles in the real plane. We first observe that a triangle depends on the coordinates of its vertices 2 a1, a2 and a3, with each ai ∈ R . The question we need to ask is when do these points not specify a triangle. The only condition we need for our three points is that they are not collinear. We define the space C to be
C = {(a1, a2, a3)|ai’s are collinear}.
2 3 We see that any triangle can be represented by at least one point in (R ) − C, but it is possible that one triangle corresponds to multiple points in this topological space. Notice that (a1, a2, a3) and (a2, a1, a3) both give the same triangle in the plane. It does not matter what order we list the vertices of the triangle, so all such permutations of the points a1, a2 and a3 give the same triangle. Chapter 1. Introduction 2
Recall that S3 is the set of permutations on a set of size 3. We will de- 2 3 fine a group action on the set (R ) − C. For σ ∈ S3, define σ(a1, a2, a3) = (aσ(1), aσ(2), aσ(3)). We would now like to prove the following proposition:
2 3 Proposition 1.3. Two triples (a1, a2, a3) and (b1, b2, b3) in (R ) − C give the same triangle if and only if there exists σ ∈ S3 such that σ((a1, a2, a3)) = (b1, b2, b3).
Proof. To prove the forward direction let (a1, a2, a3) and (b1, b2, b3) give the 2 3 same triangle in (R ) −C. Since a triangle has exactly 3 vertices then (a1, a2, a3) and (b1, b2, b3) contain the same points but permuted in some manner. There- fore for some σ ∈ S3 we have that σ((a1, a2, a3)) = (b1, b2, b3). For the reverse direction let σ((a1, a2, a3)) = (b1, b2, b3) for some σ ∈ S3. 2 Then (a1, a2, a3) and (b1, b2, b3) contain the same points ai and bj in R . In the plane these sets of vertices are identical and hence give the same triangle.
We have shown that different points give the same triangle if and only if they are permutations of each other. In our moduli space we require that distinct points give distinct objects so points that differ by a permutation are equivalent. We achieve this equivalence by modding out by the group action 2 3 on ((R ) − C):
2 3 2 3 S3\((R ) − C) = {{σ(α): σ ∈ S3} : α ∈ ((R ) − C)}.
Since we have shown triples give the same triangle only when permuted 2 then this gives us a moduli space for all triangles in R . In our second example we saw the importance of finding all possible equiv- alences in our topological space and how to translate such an equivalence to our moduli space. The goal of this chapter will be to find the moduli space for elliptic curves.
1.2 Elliptic curves
To begin discussing the moduli problem for elliptic curves we first need to explore the types of objects that we would like to describe. We must first define the notion of a lattice.
Definition 1.4. A lattice Λ ⊂ C is a set of the form
Λ = ω1Z ⊕ ω2Z = {ω1α + ω2β : α, β ∈ Z} where ω1, ω2 are R-independent elements of C and are called a basis of Λ. Note that a basis of a lattice is not unique.
Definition 1.5. Fix a lattice Λ with basis ω1 and ω2. An elliptic curve, E(Λ), is 0 the quotient space C/Λ. Two points z, z ∈ C are equivalent if and only if there exist m, n ∈ Z such that 0 z = z + mω1 + nω2. Chapter 1. Introduction 3
Definition 1.6. Given a topological space X under a group action G, we define a fundamental domain to be a set of representatives for orbits in X. Notice that the elliptic curve E(Λ) contains infinitely many orbits and each orbit contains infinitely many points. Given an elliptic curve E(Λ) and lattice Λ with basis ω1 and ω2 we define the fundamental parallelogram to be the set
P = {aω1 + bω2 : 0 ≤ a < 1, 0 ≤ b < 1}.
Topologically this gives a parallelogram in the complex plane with opposite sides "glued" together. One can show that this is a fundamental domain. From our discussion of moduli spaces, the first step in finding a moduli space is determining when two elliptic curves are isomorphic. Definition 1.7. Two elliptic curves are isomorphic if there exists a holomorphic group isomorphism between them; that is, they are isomorphic as groups with the extra condition that the isomorphism between them is holomorphic.
Let Λ(ω1, ω2) be the lattice formed by the basis ω1 and ω2. Let Λ1 = Λ(1, i) and Λ2 = Λ(2, 2i). By observation we can see that one lattice can be mapped to the other by stretching the smaller lattice using the function φ :Λ1 → Λ2 given by z 7→ 2z. Notice that Λ1 and Λ2 are in fact different lattices since (0, i) ∈ Λ1 but (0, i) 6∈ Λ2.
Definition 1.8. Two lattices Λ1 and Λ2 are homothetic if and only if Λ1 = αΛ2 for some α ∈ C. We will denote two homothetic lattices by Λ1 ∼ Λ2. Homothety of lattices is actually the property that defines isomorphic el- liptic curves.
Theorem 1.9. The elliptic curves C/Λ1 and C/Λ2 are isomorphic if and only if there exists α ∈ C such that αΛ1 = Λ2; that is, Λ1 and Λ2 are homothetic. Proof. [DS05, Corollary 1.3.3]
1.3 Complex upper half-plane
From the previous section we saw that two elliptic curves are isomorphic if the associated lattices are homothetic. The goal of this section will be to give a map from the upper half-plane under a group action to the set of elliptic curves. Consider the elliptic curve E(Λ) where Λ is a lattice with basis elements ω1 and ω2. Both basis elements are nonzero since they are R-linearly independent. Therefore we get the following homothety: 1 ω2 Λ(ω1, ω2) ∼ (Λ(ω1, ω2)) = Λ 1, . ω1 ω1
We can see that any lattice is homothetic to a lattice of the form Λ(1, τ). ω ω τ = ω2 Since 1 and 2 are linearly independent over R then ω1 must have a nonzero imaginary part. The next lemma will show that, in fact, we can choose τ in the upper half-plane. Chapter 1. Introduction 4
Lemma 1.10. Given a lattice Λ(ω1, ω2) there is a lattice of the form Λ(1, τ) with Im(τ) > 0 such that Λ(ω1, ω2) ∼ Λ(1, τ). Proof. Λ(ω , ω ) Λ(ω , ω ) ∼ Λ 1, ω2 Consider the lattice 1 2 . Above we saw that 1 2 ω1 Λ(ω , ω ) ∼ Λ(1, τ) τ = ω2 and so 1 2 where ω1 . If Im(τ) < 0 then Im(−τ) > 0. Therefore either τ or −τ is in the upper half-plane. Observe that for any complex number α ∈ C with Im(α) 6= 0, the lattices Λ(1, α) and Λ(1, −α) are equal since negating a basis element does not change the lattice. Therefore Λ(ω1, ω2) ∼ Λ (1, τ) and Λ(ω1, ω2) ∼ Λ (1, −τ) with either τ or −τ in the upper half-plane.
The above lemma shows that every elliptic curve is isomorphic to an ellip- tic curve E(Λ(1, τ)) where Im(τ) > 0.
1.3.1 Action of SL2(Z) on H The basis of a lattice is not unique and so two different bases can represent the same lattice. Two bases give the same lattice if and only if they are Z-linear 0 0 combinations of each other. More explicitly two bases ω1, ω2 and ω1, ω2 give the same lattice if and only if
0 ω1 a b ω1 0 = (1.1) ω2 c d ω2
a b for some matrix c d ∈ GL2(Z). We denote the set of points in the upper half-plane as
H = {τ ∈ C : Im(τ) > 0}.
a b Given A = c d ∈ SL2(Z) and τ ∈ H, define the action of SL2(Z) on H by aτ + b Aτ = for τ ∈ . (1.2) cτ + d H One checks that this is a well-defined action. We would like to verify that the action of SL2(Z) on H is closed, that is, given a point τ ∈ H, Aτ ∈ H for every A ∈ SL2(Z).
a b 0 0 Lemma 1.11. Let z ∈ H and A = c d ∈ SL2(Z). If Az = z then z ∈ H. Chapter 1. Introduction 5
Proof. Observe that
az + b Im(z0) = Im(Az) = Im cz + d (az + b)(cz¯ + d) = Im (cz + d)(cz¯ + d) Im(aczz¯ + azd + bcz¯ + bd) = |cz + d|2 (ad − bc)Im(z) = |cz + d|2 Im(z) = . |cz + d|
0 By our assumption, A ∈ SL2(Z), and so ad − bc = 1. Therefore Im(z ) > 0.
0 0 0 Lemma 1.12. If Λ(1, τ) ∼ Λ(1, τ ) for τ, τ ∈ H then Aτ = τ for some A ∈ SL2(Z). 0 0 Proof. Let Λ(1, τ) ∼ Λ(1, τ ). Therefore Λ(1, τ ) = Λ(α, ατ) for some α ∈ C with a b α 6= 0. This gives us that for some c d ∈ GL2(Z)
ατ a b τ 0 = α c d 1 aτ 0 + b = . cτ 0 + d
ατ h aτ 0+b i Hence [ α ] = cτ 0+d and this implies that
aτ 0 + b = ατ (1.3) cτ 0 + d = α. (1.4)
a b Let A = c d . Since α 6= 0, we may divide (1.3) by (1.4) which gives
Aτ 0 = τ. 0 Im(τ) Using the formula Im(τ ) = |cτ+d| , we conclude that ad − bc > 0 since 0 τ, τ ∈ H. Therefore A ∈ SL2(Z), which proves the lemma. We would like to give a map between the set of isomorphism classes of elliptic curves to the quotient of the upper half-plane by SL2(Z). Let SL2(Z)τ denote the orbit of τ under the action of SL2(Z). Consider the set
SL2(Z)\H = {SL2(Z)τ : τ ∈ H}. We now define the function
f : SL2(Z)\H −→ {elliptic curves}/ ∼ Chapter 1. Introduction 6 by
f(SL2(Z)τ) = E(Λ(1, τ)). Theorem 1.13. The map f is well-defined.
0 0 a b Proof. Let SL2(Z)τ = SL2(Z)τ and so Aτ = τ for some A = c d ∈ SL2(Z). We have that
f(SL2(Z)τ) = E(Λ(1, τ)) and 0 0 f(SL2(Z)τ ) = E(Λ(1, τ )) = E(Λ(1, Aτ)).
If Λ(1, τ) ∼ Λ(1, Aτ) then E(Λ(1, τ)) is isomorphic to E(Λ(1, Aτ)). Therefore it suffices to show the claim that Λ(1, τ) ∼ Λ(1, Aτ). Notice that
aτ + b Λ 1, ∼ Λ(cτ + d, aτ + b). (1.5) cτ + d
We will show that Λ(1, τ) = Λ(cτ + d, aτ + b). First we have
a b τ aτ + b = . (1.6) c d 1 cτ + d
Observe that d −b aτ + b τ = . (1.7) −c a cτ + d 1
By (1.6) and (1.7), the bases τ, 1 and cτ +d, aτ +b are Z-linear combinations of each other. Therefore Λ(1, τ) = Λ(cτ + d, aτ + b). Combining (1.5) and Λ(1, τ) = Λ(cτ + d, aτ + b) we get that Λ(1, τ) ∼ Λ(1, Aτ) which proves the theorem.
To show that SL2(Z)\H is a moduli space we need to show that f is a bijection.
Theorem 1.14. The map f is a bijection.
Proof. First we will show that the map is surjective. Let E(Λ(ω1, ω2)) be an elliptic curve. By Lemma 1.10 there is τ ∈ H such that Λ(ω1, ω2) ∼ Λ(1, τ). Therefore f(SL2(Z)τ) = E(Λ(1, τ)) and since E(Λ(ω1, ω2)) is isomorphic to E(Λ(1, τ)), this proves surjectivity. 0 0 Now we will show injectivity. Let f(SL2(Z)τ) = f(SL2(Z)τ ) for τ, τ ∈ H. Therefore E(Λ(1, τ)) and E(Λ(1, τ 0)) are in the same isomorphism class and so Λ(1, τ) ∼ Λ(1, τ 0). By Lemma 1.12, if Λ(1, τ) ∼ Λ(1, τ 0) then τ = Aτ 0 for some 0 A ∈ SL2(Z) and so SL2(Z)τ = SL2(Z)τ which proves injectivity.
Since f is a bijection then SL2(Z)\H is a moduli space for the set of elliptic curves. Chapter 1. Introduction 7
1.4 Modular curves
The previous section showed that every elliptic curve is represented by a point in the moduli space SL2(Z)\H. Although it will not be covered in this thesis, one can study the moduli space to find general properties of elliptic curves. Additionally, restricting the group action to certain subgroups of SL2(Z) gives rise to moduli spaces for the set of elliptic curves with some additional infor- mation. This thesis will only discuss the moduli spaces that arise; the details regarding their relationship to elliptic curves can be found in [DS05, Section 1.4]. The following definitions will be used to define the different moduli spaces. Definition 1.15. The principal congruence subgroup of level N, denoted Γ(N), is given by
a b a b 1 0 Γ(N) = ∈ SL ( ): ≡ (modN) . c d 2 Z c d 0 1
Definition 1.16. A subgroup Γ of SL2(Z) is a congruence subgroup if Γ(N) ⊂ Γ + for some N ∈ Z . The two such congruence subgroups that will be studied in this thesis are a b a b ?? Γ (N) = ∈ SL ( ): ≡ (mod N) and 0 c d 2 Z c d 0 ? a b a b 1 ? Γ (N) = ∈ SL ( ): ≡ (mod N) 1 c d 2 Z c d 0 1 where ? denotes an entry in the matrix that is not restricted. Definition 1.17. Let Γ be a congruence subgroup. The corresponding modular curve is defined as Y (Γ) = Γ\H = {Γτ : τ ∈ H}; that is, the orbits of elements in H under the action of Γ. We will write
π : H → Y (Γ) (1.8) for the natural surjection given by τ 7→ Γτ. For brevity we will denote Y (Γ(N)) as Y (N) and we will define Y (1) = SL2(Z)\H. Similarly, we denote Y (Γ0(N)) and Y (Γ1(N)) as Y0(N) and Y1(N) respectively. Since these topological spaces are abstract and hard to visualize, one can give a fundamental domain for each modular curve. The fundamental domain for Y (1) is given by the following proposition. Proposition 1.18. A fundamental domain of Y (1) is the space
M = {z = x+iy : −1/2 ≤ x < 1/2, |z| > 1}∪{z ∈ H : |z| = 1, −1/2 ≤ Re(z) ≤ 0}.
Proof. See [DS05] Lemma 2.3.1 and Lemma 2.3.2. Chapter 1. Introduction 8
1.5 Elliptic points
One of the goals of this thesis is to identify important points on modular curves. A type of point that we are interested in finding is called an elliptic point. These are defined as points in the upper half-plane with nontrivial stabilizers. Since −I and I act trivially on the upper half-plane, we refer to {±I} as the trivial stabilizer.
Definition 1.19. Given a congruence subgroup Γ, a point z ∈ H is an elliptic point of Γ if there exists γ ∈ Γ, γ 6= ±I such that γz = z.
The following lemma will be used to find the cusps of Y (1):
Lemma 1.20. Let γ ∈ SL2(Z). 0 1 (a) If γ has order 3 then γ is conjugate to −1 −1 in SL2(Z). 0 −1 (b) If γ has order 4 then γ is conjugate to 1 0 in SL2(Z). 0 −1 (c) If γ has order 6 then γ is conjugate to 1 1 in SL2(Z). Proof. See [DS05] Proposition 2.3.3
For the first example we will find the elliptic points of Y (1).
Theorem 1.21. The modular curve Y (1) = SL2(Z)\H has two elliptic points, the orbits of i and ρ = e2πi/3.
a b Proof. We want to find points τ ∈ H such that there exists γ = c d ∈ SL2(Z), γ 6= ±I for which γτ = τ. We need to satisfy the condition aτ + b = τ. cτ + d Therefore we want to solve
cτ 2 + (d − a)τ − b = 0.
If c = 0 and a = d then b = 0 which forces a = d = ±1. Therefore γ = ±I. Recall that τ is an elliptic point when γτ = τ for some γ 6= ±I. If c = 0 and a 6= d, then τ = b/(d − a). We assumed that b, d, a ∈ Z which implies that τ ∈ Q. This contradicts that τ is in H. Therefore c 6= 0. The discriminant is
(a − d)2 + 4bc.
Since τ ∈ H then there is a nonzero imaginary part so the discriminant is negative and must satisfy (a − d)2 + 4bc < 0. Rearranging these terms we get
(a − d)2 + 4bc = a2 − 2ad + d2 + 4bc = (a + d)2 − 4ad + 4bc = (a + d)2 − 4 since ad − bc = 1. Chapter 1. Introduction 9
Therefore (a + d)2 < 4 and
|a + d| < 2.
The characteristic polynomial of γ is
(a − x)(d − x) − bc = x2 − (a + d)x + 1.
Our condition for a + d implies that the characteristic polynomial is either x2 + 1, x2 + x + 1, or x2 − x + 1. Notice that x2 + x + 1 and x2 − x + 1 are both factors of x6 − 1 so γ must satisfy the equation γ6 − I = 0 or γ6 = I. Therefore in these cases γ has order 6, 3, or 2. Similarly x2 + 1 is a factor of x4 − 1 and so by the same argument in this case γ satisfies γ4 = I and so γ has order 4 or 2. Therefore γ has order 2, 3, 4, or 6. If γ2 = I then γ2 − I = 0 and so the minimal polynomial p(t) of γ is either t + 1, t − 1, or t2 − 1. If the minimal polynomial is t2 − 1 then the determinant of γ is −1, which is a contradiction. If the minimal polynomial of γ is t + 1 then γ = −I and if the minimal polynomial of γ is t − 1 then γ = I. Hence if γ2 = I then γ = ±I and so γ must have order 3, 4 or 6. 0 1 0 −1 By Lemma 1.20 we know that γ is conjugate to either −1 −1 , 1 0 or 0 −1 1 1 . 0 1 We can now compute the fixed elements of the above matrices. For −1 −1 0 1 we want to find z ∈ H such that −1 −1 z = z so we want to solve the equation 1 = z or −z − 1 z2 + z + 1 = 0. √ Solving this quadratic gives the solutions z = (−1 ± i 3)/2, and since√ we are finding points in the upper half-plane we get one solution, z = (−1 + i 3)/2. 0 −1 Now we find the point fixed by the matrix 1 0 : −1 = z so z z2 + 1 = 0.
This gives z = i. 0 −1 0 −1 −1 If γ has order 4 then it is conjugate to 1 0 and so it has the form α 1 0 α . If a point z is fixed by γ then
0 −1 α α−1(z) = z so 1 0 0 −1 α−1(z) = α−1(z). 1 0 Chapter 1. Introduction 10
0 −1 −1 We found that i is the fixed element of 1 0 and so α (z) = i. Therefore z = α(i) which shows that the fixed point of γ is α(i). A similar argument can be used to show that if γ has order 3 then it fixes some point in the orbit of ρ. For the case where γ has order six, notice that if γ is in the stabilizer of some point z, then so is γ2. Since γ2 has order three, then the set of points fixed by γ is a subset of the elements from the order three case, which we have already solved. The points i and ρ are distinct since they both lie in our fundamental do- main for Y (1) and therefore we get the elliptic points of Y (1) as the orbits of i and ρ.
1.6 Modular curve as a Riemann surface
We will now introduce the concept of a compact Riemann surface. A Riemann surface looks like the complex plane locally but globally can have a different topology.
Definition 1.22. A Riemann surface is a topological surface X that satisfies the following properties:
1. X is Hausdorff : if τ1, τ2 ∈ H, there exist respective neighborhoods U1 and U2 of τ1 and τ2 such that if τ1 6= τ2 then π(U1) ∩ π(U2) = ∅. S 2. has a complex structure, which is a covering X = i∈I Uα by open subsets along with homeomorphisms zi : Ui → Vi where Vi is a connected open −1 subset of C. Additionally we require that Ui ∩Uj 6= ∅ implies that zj ◦zi : zi(Ui∩Uj) → zj(Ui∩Uj) is holomorphic. If Ui is a neighborhood of a point x ∈ X, we define a chart for x to be a pair (Ui, zi).
The details of the proof that Y (Γ) is a Riemann surface can be found in [DS05, Chapter 2].
1.7 Degree
1.7.1 Properties of maps between compact Riemann surfaces We would like to define the notion of the degree of maps between Riemann surfaces. Specifically we will be looking at maps between modular curves. For the purposes of this thesis we will be using a topologically motivated definition of degree and ramification degree.
Theorem 1.23. Let g : X → Y be an analytic, nonconstant function between con- nected compact Riemann surfaces X and Y . Given x ∈ X with y = g(x) there exists an integer mx such that for every neighborhood V of x there is a neighborhood U ⊂ V of x such that every point, except possibly y, in g(U) has mx preimages in U.
Proof. See the Open-Mapping Theorem [Mir95, Proposition 3.8] and [Mir95, Proposition 4.1]. Chapter 1. Introduction 11
Definition 1.24. Given an analytic, nonconstant function f : X → Y between connected compact Riemann surfaces X and Y , the integer mx from the above theorem is called the ramification degree of x.
Definition 1.25. Let f : X → Y be an analytic, nonconstant function between connected compact Riemann surfaces X and Y . Choose some y ∈ Y . Then the degree of f at y, denoted degy(f), is the number of preimages of a point y counting ramification degree. More explicitly we have X degy(f) = mx. x∈f −1(y)
Proposition 1.26. The degree of f at y is independent of y.
Proof. [Mir95, Proposition 4.8]
Due to Proposition 1.26, we can denote the degree deg(f).
Definition 1.27. Let f : X → Y be an analytic, nonconstant function between connected compact Riemann surfaces X and Y . A point x ∈ X is a ramification point if mx ≥ 2.
Lemma 1.28. Let f : X → Y be an analytic, nonconstant function between connected compact Riemann surfaces X and Y . The number of ramification points is finite.
Proof. By [Mir95, Lemma 4.4] the number of ramifications points is discrete and since X is a compact the number of ramifications points is finite.
The degree of the maps between modular curves can be found explicitly.
Theorem 1.29. Let Γ1 and Γ2 be congruence subgroups of SL2(Z) with Γ1 ⊂ Γ2. We define the map f : Y (Γ1) → Y (Γ2) given by Γ1τ 7→ Γ2τ. The degree of f is given by ( [Γ :Γ ]/2 if − I ∈ Γ and − I 6∈ Γ deg(f) = 2 1 2 1 [Γ2 :Γ1] otherwise. S Proof. Let {±I}Γ2 = j{±I}Γ1γj be a coset decomposition. Since Γ1 and Γ2 are finite index subgroups of SL2(Z) then [{±I}Γ2 : {±I}Γ1] is finite. Observe that the number of cosets is [{±I}Γ2 : {±I}Γ1] and that
( [Γ2 :Γ1]/2 if − I ∈ Γ2 and − I 6∈ Γ1 [{±I}Γ2 : {±I}Γ1] = [Γ2 :Γ1] otherwise.
Therefore it suffices to show that the number of preimages for most points in the codomain is [{±I}Γ2 : {±I}Γ1]. −1 Let Γ2τ be an orbit in Y (Γ2). Then f (Γ2τ) = {Γ1γjτ} for all j. We claim that if τ is not an elliptic point for Γ2 then Γ1γiτ 6= Γ1γjτ for all i 6= j. We prove the contrapositive, so assume that Γ1γiτ = Γ1γjτ. Then −1 −1 αγiτ = γjτ for some α ∈ Γ1. This implies that γj αγiτ = τ with γj αγi ∈ Γ2. Chapter 1. Introduction 12
−1 −1 We show that γj αγi 6= ±I. If γj αγi = ±I then αγi = ±γj which is a −1 contradiction since the cosets {±I}Γ1γj are disjoint. Therefore γj αγi 6= ±I and so τ is an elliptic point, which proves the claim. We showed that if τ is not an elliptic point for Γ2 then Γ1γiτ 6= Γ1γjτ for all i 6= j. Therefore the number of preimages of Γ2τ equals [{±I}Γ2 : {±I}Γ1] which proves the theorem.
1.8 Genus
Another important invariant of Riemann surfaces is the genus. In this thesis we will be using the topological definition of genus.
Proposition 1.30. Every compact and connected Riemann surface is homeo- morphic to a sphere with g handles, where g is a nonnegative integer.
Proof. See [Mir95, Proposition 1.23].
Definition 1.31. The integer g from Proposition 1.30 is called the genus.
In order to compute the genus we will use the following formula
Theorem 1.32. (Riemann-Hurwitz Formula) Let f : X → Y be a nonconstant map between connected, compact Riemann surfaces. Let gX be the genus of X, gY the genus of Y , d the degree of f, and mx be the ramification degree of x ∈ X. The following formula holds: X 2gX − 2 = d(2gY − 2) + (mx − 1). x∈X Proof. [Mir95, Theorem 4.11] P For Theorem 1.32 note that the sum x∈X (mx − 1) is finite since the num- ber of ramifications points is finite. The goal of this thesis is to tabulate important properties of various mod- ular curves. These include elliptic points and cusps with their ramification degrees as well as the genera of different modular curves. 13
Chapter 2
Cusps
2.1 Definitions
In Section 1.6 we discussed the fact that Y (Γ) is a Riemann surface, but many results pertaining to Riemann surfaces require that they be compact. Since Y (Γ) is not compact then we will make the surface compact by adding a "point at infinity" as well as points in the orbit of infinity under the action of SL2(Z). ? Denote the set Q = Q∪{∞}. We would like to define the action of SL2(Z) ? m a b on Q . For n ∈ Q and c d ∈ SL2(Z), define the action by
a b m am + bn = . c d n cm + dn
a b If cm + dn = 0 then c d (m/n) is the point ∞. a b Define the action of c d ∈ SL2(Z) on ∞ as a b a ∞ = . c d c 1 We can represent the point ∞ by 0 . Definition 2.1. Given a congruence subgroup Γ, the cusps of Γ are the orbits of ? Q under the action of Γ. In general, we add cusps to the modular curve Y (Γ) and the result will ∗ ? be a compact Riemann surface, which we will denote X(Γ). Let H = H ∪ Q . Then we define ∗ X(Γ) = Γ\H . ∗ We define X(1) to be the modular curve SL2(Z)\H . We will use similar notation to Y (Γ) and denote X(Γ(N)) as X(N), and X(Γ0(N)) and X(Γ1(N)) as X0(N) and X1(N) respectively. The modular curve X(Γ) is a Riemann surface; see [DS05, Chapter 2]. For any real number k define the set
? Vk = {z ∈ H : Im(z) > k}.
These sets will serve as a basis for the neighborhoods of ∞. Theorem 2.2. X(1) is compact. Proof. Recall the fundamental domain for Y (1) which is given by Chapter 2. Cusps 14
M = {z = x+iy : −1/2 ≤ x < 1/2, |z| > 1}∪{z ∈ H : |z| = 1, −1/2 ≤ Re(z) ≤ 0}.
Let M denote the closure of M. The topology of X(1) is the quotient ? topology from H and so it is sufficient to show that M = M∪{∞} is compact. ? Consider an open covering of {Ui} of M . There is an element of the open ? cover that contains ∞, say U0. Clearly M − U0 is compact since it is closed and bounded and so there is a finite subcover {U1,...,Un} that covers this set. ? ? The set {U0,U1,...,Un} is a finite covering of M and so M is compact.
2.2 Computing cusps of X(1)
? Recall that cusps are defined as the orbits of points in Q under the action of a congruence subgroup Γ. Therefore we will refer to a cusp as an element of ? Γ\Q . We would like to give a system of representatives for the cusps of X(N), X1(N), and X0(N). In order to compute a system of representatives we need some conditions ? for when points in Q represent the same cusp. The following theorem will be useful in giving explicit equivalence conditions. 0 ? 0 0 0 Proposition 2.3. Let s, s ∈ Q be given by s = (a/c) and s = (a /c ) with gcd(a, c) = gcd(a0, c0) = 1. Then
a0 a SL ( )s0 = SL ( )s ⇐⇒ = ±γ 2 Z 2 Z c0 c for some γ ∈ SL2(Z). Proof. See [DS05, Lemma 3.8.1]
? Recall that cusps are elements of Γ\Q . Denote the set
2 ? a 2 (Z ) = {[ c ] ∈ Z : gcd(a, c) = 1}.
2 ? a a0 Define an equivalence relation ∼ on (Z ) where [ c ] ∼ c0 if and only if Γ(a/c) = Γ(a0/c0). Define the map
2 ? ? ϕ :(Z ) / ∼→ Γ\Q a by [ c ] 7→ Γ(a/c). Proposition 2.4. The map ϕ is a bijection.
a a0 2 ? a a0 Proof. To show that ϕ is well-defined let c , c0 ∈ (Z ) with [ c ] ∼ c0 . 0 0 a a0 By our hypothesis, Γ(a/c) = Γ(a /c ) and therefore ϕ([ c ]) = ϕ c0 . So ϕ is well-defined. ? ? To show that ϕ is surjective, first let Γ(a/c) ∈ Γ\Q . Since a/c ∈ Q , we can a 2 ? assume that the fraction is reduced which implies that [ c ] ∈ (Z ) . Therefore a ϕ([ c ]) = Γ(a/c) which proves the map is surjective. Chapter 2. Cusps 15
a a0 To show that ϕ is injective assume that ϕ([ c ]) = ϕ( c0 ), which implies 0 0 0 0 a a0 that Γ(a/c) = Γ(a /c ). By our hypothesis, if Γ(a/c) = Γ(a /c ) then [ c ] ∼ c0 , and so ϕ is injective.
2 ? Thus the map ϕ gives a correspondence between elements of (Z ) / ∼ and cusps of X(Γ). We will develop methods for computing a system of represen- 2 ? tatives for (Z ) / ∼ which will then give representatives for the cusps of X(Γ). ? We will now determine the cusps of X(1); that is, the elements of SL2(Z)\Q . 2 ? a a0 Define an equivalence relation ∼ on (Z ) by [ c ] ∼ c0 if and only if a a0 [ c ] = ±γ c0 for some γ ∈ SL2(Z). So applying Proposition 2.4,
2 ? ? ϕ :(Z ) / ∼→ SL2(Z)\Q is a bijection. The following proposition shows that there is one element of 2 ? ? (Z ) / ∼ and hence one cusp for SL2(Z)\Q . Proposition 2.5. There is one cusp in X(1). 2 ? a 2 ? Proof. We want to show that there is one element in (Z ) / ∼. Let [ c ] ∈ (Z ) , so a and c are relatively prime. There exist x, y ∈ Z such that ax + cy = 1. We compute
x y a ax + cy = −c a c −ac + ac 1 = . 0
x y We check that ax − (c)(−y) = 1 so −c a ∈ SL2(Z). a 1 a Therefore [ c ] ∼ [ 0 ] for any [ c ] so there is one cusp in X(1).
2.3 Computing cusps of X(Γ)
We have similar results for cusps of X(N),X1(N) and X0(N). 0 0 ? 0 0 Proposition 2.6. Let (a/c), (a /c ) be in Q with gcd(a, c) = gcd(a , c ) = 1. Then a0 a a0 a = γ for some γ ∈ Γ(N) ⇐⇒ ≡ (mod N). c0 c c0 c
Proof. The forward direction is obvious. a 1 To show the reverse direction, we first assume [ c ] = [ 0 ], which implies that a0 ≡ 1 (mod N) and c0 ≡ 0 (mod N). This implies that there exists an 0 0 0 integer ` such that ` = (1 − a )/N. Since gcd(a , c ) = 1 there exist x, y ∈ Z such that a0x − c0y = 1. Then
a0x` − c0y` = ` = (1 − a0)/N. Chapter 2. Cusps 16
h 0 i δ = x` β = y` a0δ − c0β = (1 − a0)/N γ = a βN If we let and then . Let c0 1+δN . By assumption a0 ≡ 1 (mod N) and c0 ≡ 0 (mod N). Therefore γ ∈ Γ(N) and a0 1 c0 = γ [ 0 ]. a a0 Consider the general case. Assume that [ c ] ≡ c0 (mod N) with gcd(a, c) = gcd(a0, c0) = 1. By the Euclidean algorithm we can choose b, d such that γ = a b 1 a c d is in SL2(Z). Observe that γ [ 0 ] = [ c ], so we get
−1 a0 −1 a γ c0 ≡ γ [ c ] (mod N) 1 = [ 0 ] .
−1 a0 1 Hence γ c0 ≡ [ 0 ] (mod N). By the first case, there exists α ∈ Γ(N) −1 a0 1 such that αγ c0 = [ 0 ]. Multiplying by γ on both sides gives
−1 a0 1 γαγ c0 = γ [ 0 ] a = [ c ] .
−1 a0 a Therefore γαγ c0 = [ c ]. Let ϕ : SL2(Z) → SL2(Z/NZ) be the homomorphism given by reduction mod N. The kernel is Γ(N). Therefore Γ(N) is a normal subgroup of SL2(Z). Therefore γαγ−1 ∈ Γ(N), which completes the proof.
0 0 0 ? 0 0 Theorem 2.7. Let s = (a/c), s = (a /c ) be in Q with gcd(a, c) = gcd(a , c ) = 1. Then
0 a a0 Γ(N)s = Γ(N)s ⇐⇒ [ c ] ≡ ± c0 (mod N), (2.1)
h 0 i Γ (N)s = Γ (N)s0 ⇐⇒ [ a ] ≡ ± a +jc (mod N), 1 1 c c0 (2.2)
0 ya h a0+jc i Γ0(N)s = Γ0(N)s ⇐⇒ [ c ] ≡ yc0 (mod N) (2.3) for some j, y ∈ Z with gcd(y, N) = 1. Proof. [DS05, Proposition 3.8.3] The remainder of the chapter will give algorithms for computing cusps for the modular curves X(N),X1(N), and X0(N). Theorem 2.7 gives us a corre- 2 ? spondence between cusps and equivalence classes of (Z ) . The next section will make this correspondence more explicit. We will need the following lemma in the next section. Lemma 2.8. Let integers a, c ∈ {0,...,N − 1} have images a,¯ c¯ in Z/nZ. Then a¯ a0 2 0 0 [ c¯ ] has a lift c0 ∈ Z with gcd(a , c ) = 1 if and only if gcd(a, c, N) = 1. Proof. [DS05, Lemma 3.8.4]
2.3.1 Computing cusps of X(N) Recall 2 ? a 2 (Z ) = {[ c ] ∈ Z : gcd(a, c) = 1}. Chapter 2. Cusps 17
2 ? Define an equivalence relation ∼1 on (Z ) by
a a0 a a0 [ c ] ∼1 c0 ⇐⇒ [ c ] ≡ ± c0 (mod N). By equation (2.1)
a a0 0 0 [ c ] ∼1 c0 ⇐⇒ Γ(N)(a/c) = Γ(N)(a /c ) and so Proposition 2.4 proves that
2 ? ? ϕ :(Z ) / ∼1−→ Γ(N)\Q 2 ? is a bijection. Therefore the elements of (Z ) / ∼1 correspond to cusps of X(N). This section will give an algorithm for finding a system of representatives for 2 ? the equivalence classes of (Z ) . For a,¯ c¯ ∈ Z/NZ, define gcd(¯a, c¯) = gcd(x, y) where x, y are the smallest positive representatives of a,¯ c¯ respectively. We will use the following lemma. Lemma 2.9. Fix an integer N and let a, c be integers with gcd(a, c) = 1. Let a0, c0 be integers such that a ≡ a0 (mod N) and c ≡ c0 (mod N). Then gcd(a0, c0,N) = 1. Proof. The congruences a ≡ a0 (mod N) and c ≡ c0 (mod N) imply that a = 0 0 a + Nk1 and c = c + Nk2 for some integers k1, k2. Therefore gcd(a, c) = 1 0 0 0 0 implies that gcd(a + Nk1, c + Nk2) = 1 and so gcd(a , c ,N) = 1.
Let a,¯ c¯ be elements of Z/NZ. Define the set
2 ? a¯ ((Z/NZ) ) = {[ c¯ ] :a, ¯ c¯ ∈ (Z/NZ), gcd(¯a, c,¯ N) = 1}. Now we define the map
2 ? 2 ? ψ : ((Z/NZ) ) −→ (Z ) / ∼1 a¯ a a a¯ 2 ? by ψ ([ c¯ ]) = [ c ] where [ c ] is a lift of [ c¯ ] to (Z ) . This lift is guaranteed to exist by the condition gcd(¯a, c,¯ N) = 1. Theorem 2.10. The map ψ is independent of the choice of lift and surjective.
a0 a00 Proof. To show that ψ is independent of the choice of lift, let c0 and c00 be a¯ 2 ? 0 00 0 00 lifts of [ c¯ ] to (Z ) . Since a ≡ a (mod N) and c ≡ c (mod N), we have that a0 a00 c0 ∼1 c00 . Therefore the map ψ is independent of the choice of lift from 2 ? 2 ? ((Z/NZ) ) to (Z ) . a 2 ? Next we show ψ is surjective. Let [ c ] ∈ (Z ) and a,¯ c¯ be the images of a a¯ a, c in Z/NZ. Since [ c ] is a lift of [ c¯ ] and ψ is independent of the choice of a¯ a a 2 ? a¯ lift, we have that ψ ([ c¯ ]) = [ c ]. By Lemma 2.9, [ c ] ∈ (Z ) implies that [ c¯ ] ∈ 2 ? ((Z/NZ) ) and so ψ is surjective. The following lemma will be used to prove the algorithm.
a¯ x¯ 2 ? a¯ x¯ Lemma 2.11. Let [ c¯ ] and y¯ be elements of ((Z/NZ) ) and [ c¯ ] 6= y¯ . Then a¯ x¯ a¯ x¯ ψ ([ c¯ ]) = ψ y¯ if and only if [ c¯ ] = − y¯ . Chapter 2. Cusps 18
a¯ x¯ Proof. We will first show the forward direction. Assume that ψ ([ c¯ ]) = ψ y¯ . a¯ x¯ a x Let ψ ([ c¯ ]) and ψ y¯ be the respective classes of [ c ] and [ y ]. a x a x By our assumptions, [ c ] ∼1 [ y ] and so [ c ] ≡ ± [ y ] (mod N). This implies a¯ x¯ a¯ x¯ a¯ x¯ that [ c¯ ] = ± y¯ . We assumed that [ c¯ ] 6= y¯ , and hence [ c¯ ] = − y¯ . a¯ x¯ a¯ To prove the reverse direction assume that [ c¯ ] = − y¯ . Let ψ ([ c¯ ]) and x¯ a x a¯ x¯ a x ψ y¯ be the respective classes of [ c ] and [ y ]. If [ c¯ ] = − y¯ then [ c ] ≡ − [ y ] a¯ x¯ (mod N) and so ψ ([ c¯ ]) = ψ y¯ . This proves the lemma.
2.3.2 Algorithm for cusps of X(N) The algorithm for computing cusps of X(N) is as follows:
a 1. For integers a, c ∈ {0,...,N − 1}, list out all elements [ c ] such that gcd(a, c, N) = 1.
a x a x 2. Compute sets {[ c ] , [ y ]} where [ c ] ≡ − [ y ] (mod N) from elements found in Step 1.
3. Choose one element from each set computed in Step 2 and output these elements as a list.
2 ? Theorem 2.12. The above algorithm outputs a set of elements in ((Z/NZ) ) that lift 2 ? to a system of representatives for the equivalence classes of (Z ) with respect to ∼1. a¯ x¯ 2 ? Proof. By Lemma 2.11, [ c¯ ] and y¯ in ((Z/NZ) ) lift to the same equivalence 2 ? a¯ x¯ class in (Z ) if and only if [ c¯ ] = ± y¯ . a¯ x¯ a¯ x¯ Therefore choosing one element from each pair [ c¯ ] , y¯ with [ c¯ ] = − y¯ , 2 ? gives a subset of ((Z/NZ) ) that lifts to a system of representatives for the 2 ? equivalence classes of (Z ) with respect to ∼1.
Corollary 2.13. The algorithm outputs a set that is in bijection with the cusps of X(N).
Proof. By Theorem 2.12 the algorithm outputs a set that is in bijection with 2 ? (Z ) / ∼1. By Proposition 2.4, the map
2 ? ? ϕ :(Z ) / ∼1→ Γ\Q
a where ϕ ([ c ]) = Γ(a/c), is a bijection. Hence the algorithm outputs a set in bijection with the cusps of X(N).
We will give an example of the implementation of the algorithm.
Example 2.14. Find the cusps of X(4). The list from Step 1 is given by: Chapter 2. Cusps 19
1 3 , , 0 0 0 1 2 3 , , , , 1 1 1 1 1 3 , , 2 2 0 1 2 3 , , , . 3 3 3 3
Next we compute the sets for Step 2. This gives us the following sets:
0 0 1 3 1 3 1 3 1 3 2 2 {[ 1 ] , [ 3 ]}, {[ 0 ] , [ 0 ]}, {[ 1 ] , [ 3 ]}, {[ 3 ] , [ 1 ]}, {[ 2 ] , [ 2 ]}, {[ 1 ] , [ 3 ]}.
Now we choose the first element from each set and this gives the system of representatives for the cusps of X(4) as
0 1 1 1 1 2 , , , , , . 1 0 1 3 2 1
Lemma 2.15. Let N be a positive integer and d a divisor of N. Let c ∈ {1,...,N− 1}. There are φ(N/d) values of c such that gcd(c, N) = 1. Proof. Let P (M) = {x : 1 ≤ x ≤ M − 1, gcd(M, x) = 1}. It suffices to show that the map
P (N/d) → {c : gcd(c, N) = d} defined by x 7→ xd is a bijection. If gcd(x, N/d) = 1 then gcd(xd, N) = d and so the map is well-defined. Consider the map
{c : gcd(c, N) = d} → P (N/d) given by y 7→ y/d. If gcd(y, N) = d then gcd(y/d, N/d) = 1 and so this map is well-defined. Clearly these maps are inverses of each other and so they are bijections. The order of P (N/d) is φ(N/d) and the claim follows.
Theorem 2.16. For N > 2, the modular curve X(N) has
1 X (N/d)φ(d)φ(N/d) 2 d|N cusps. Additionally X(2) has 3 cusps. Proof. We will count the number of representatives by counting at each step in the algorithm given in this section. Fix c ∈ {0,...,N − 1} and define gcd(c, N) = d. We want to find the number of elements a ∈ {0,...,N − 1} Chapter 2. Cusps 20 such that gcd(a, d) = 1. The number of such values of a is (N/d)φ(d). By Lemma 2.15 there are φ(N/d) values of c such that gcd(c, N) = d. Hence there P are d|N (N/d)φ(d)φ(N/d) elements in the list after Step 1. To count the possible system of representatives after Step 2 we observe that we pair possible representatives by equivalence by −I. The only elements h i h i h i [ a ] ≡ − [ a ] (mod N) N/2 , 0 , N/2 N that satisfy c c are N/2 N/2 and 0 . Clearly if is odd there are no such elements. If N > 2 is even, then none of those elements satisfy the gcd condition and therefore do not appear in Step 1. Therefore for N > 2 we halve the number of representatives found in Step 1. In total X(N) has 1 X (N/d)φ(d)φ(N/d) 2 d|N cusps for N > 2. If N = 2 the system of representatives is
0 1 1 , , . 1 0 1
Clearly none of these are equivalent by −I and so this gives a system of representatives of the cusps of X(2) which proves the theorem.
2.3.3 Algorithm in Sage Sage is an open source mathematical software package that is based on Python. The following program implements the algorithm from the previous section. def cusplist(N): """List all [a,b] where gcd(a,b,N)=1.""" l = [] for b in range(N): d= gcd(b,N) for a in range(N): if gcd(d,a)==1: l.append([a,b]) return l def cusps(N): """Output cusps of X(N).
Creates list of [a,b] from cusplist and remove [c,d] if [a,b]=[-c,-d].""" l = cusplist(N) k=[] while len(l)>0: a = l.pop(0) k.append(a) Chapter 2. Cusps 21
for i in range(0,len(l)): if (a[0]+l[i][0])%N==0 and (a[1]+l[i][1])%N ,→ ==0: l.pop(i) break return k
2.3.4 Computing cusps of X1(N)
We will now give an algorithm for finding the cusps of X1(N). Define an equiv- 2 ? alence relation ∼2 on (Z ) by
h 0 i [ a ] ∼ a0 ⇐⇒ [ a ] ≡ ± a +jc (mod N) c 2 c0 c c0 for some j ∈ Z. By equation (2.2)
a a0 0 0 [ c ] ∼2 c0 ⇐⇒ Γ1(N)(a/c) = Γ1(N)(a /c ) and so Proposition 2.4 proves that the map
2 ? ? ϕ :(Z ) / ∼2 −→ Γ1(N)\Q . is a bijection. Recall we define the set
2 ? a¯ ((Z/NZ) ) = {[ c¯ ] :a, ¯ c¯ ∈ (Z/NZ), gcd(¯a, c,¯ N) = 1}. Now define the map,
2 ? 2 ? ψ : ((Z/NZ) ) −→ (Z ) / ∼2
a¯ a0 a0 a¯ 2 ? by ψ ([ c¯ ]) = c0 where c0 is a lift of [ c¯ ] to (Z ) . Theorem 2.17. The map ψ is independent of the choice of lift and is well-defined and surjective. The proof of Theorem 2.17 is analogous to the proof of Theorem 2.10. Now 2 ? a a0 define an equivalence relation '2 on (Z ) where two elements [ c ] , c0 are h 0 i [ a ] ≡ a +jc (mod N) j ∈ equivalent if and only if c c0 for some Z. Observe that this is the equivalence ∼2 without the negation. For the following lemmas when a,¯ c¯ ∈ Z/NZ take a, c to be the smallest nonnegative representative of a,¯ c¯, which will be in the set {0,...,N − 1}. a¯ x¯ 2 ? Lemma 2.18. Fix c¯ ∈ (Z/NZ). Let [ c¯ ] and [ c¯ ] be elements of ((Z/NZ) ) with a0 x0 2 ? lifts c0 and c0 in (Z ) . Let d = gcd(c, N). Then a ≡ x (mod d) if and only a0 x0 if c0 '2 c0 . Proof. First we prove the forward direction. Let gcd(c, N) = d and a ≡ x (mod d). There exist integers `, k, and w such that
c` + Nk = d (2.4) x − a = dw. (2.5) Chapter 2. Cusps 22
If we multiply through equation (2.4) by w, then we get c(`w) + N(kw) = dw. Plugging into equation (2.5) and rearranging gives
c(w`) + N(wk) = x − a a + c(w`) = x − N(wk) ≡ x (mod N).
Observe that a0 ≡ a (mod N), x ≡ x0 (mod N), and c ≡ c0 (mod N). Since a + c(w`) ≡ x (mod N), we have that
a0 + c0(w`) x0 ≡ (mod N). c0 c0
a0 x0 Therefore c0 '2 c0 which proves the forward direction. a0 x0 Now to prove the reverse direction assume that c0 '2 c0 . Therefore
a0 + c0j x0 ≡ (mod N) c0 c0 for some integer j. Thus a0 + c0j ≡ x0 (mod N) and so a + cj ≡ x (mod N). Hence a+cj ≡ x (mod d) since d | N. Therefore a ≡ x (mod N) since d | c.
2.3.5 Algorithm for cusps of X1(N) 2 ? We will now give an algorithm for finding a set of elements in ((Z/NZ) ) that 2 ? lift to a set of representatives for the equivalence classes of (Z ) / ∼2. Define P (n) = {x : 0 ≤ x < n, gcd(x, n) = 1}.
1. For each c ∈ {0, 1,...,N − 1}, define d = gcd(c, N). For each a ∈ P (d), a add [ c ] to the list.
a 2. Choose an element [ c ] from the list in Step 1 and let d = gcd(c, N). If x possible, find a different element [ y ] from the list in Step 1 such that y ≡ a x −c (mod N) and x ≡ −a (mod d). Create the set {[ c ] , [ y ]} if there is x a such an element [ y ], otherwise create the set {[ c ]}.
3. Create a list choosing one element from each set found in Step 2. Output this list.
2 ? Theorem 2.19. The above algorithm gives a set of elements in ((Z/NZ) ) that lift to 2 ? a set of representatives for the equivalence classes of (Z ) with respect to ∼2. 2 ? Proof. We claim that Step 1 gives a set of ((Z/NZ) ) that lifts to a system of 2 ? representatives for equivalence classes of (Z ) with respect to '2. Recall that h 0 i [ a ] , a0 ∈ ( 2)?/ ' [ a ] ≡ a +jc two elements c c0 Z 2 are equivalent if and only if c c0 a a0 (mod N) for some j ∈ Z. Observe that [ c ] and c0 are equivalent if and only 0 a¯ x¯ 2 ? if c ≡ c (mod N). Therefore [ c¯ ] and y¯ lift to different elements of (Z ) / ∼2 if and only if c¯ 6=y ¯. Chapter 2. Cusps 23
a¯ Fix c ∈ {0,...,N − 1} and define d = gcd(c, N). By Lemma 2.18, [ c¯ ] and x¯ 2 ? [ c¯ ] lift to the same equivalence class in (Z ) if and only if a ≡ x (mod d) for a and x relatively prime to d. Observe that if a is not relatively prime to d then a¯ 2 ? [ c¯ ] does not have a lift to (Z ) . a¯ Therefore for each c ∈ {0,...,N − 1} choosing all elements [ c¯ ] where a ∈ {0, . . . , d − 1} and gcd(a, d) = 1 gives a set that lifts to a system of repre- 2 ? sentatives of equivalence classes of (Z ) with respect to '2. This set is given by Step 1 of the algorithm. Observe that the equivalence '2 is a refinement of the equivalence ∼2. If 2 ? we take a system of representatives of equivalence classes of (Z ) with respect to '2 and apply the equivalence by −I then this gives a system of representa- tives with respect to ∼2. a Choose an element [ c ] from Step 1 and let d = gcd(c, N). A different x −a element [ y ] from Step 1 is in the same orbit as −c if x ≡ −a (mod d) and y ≡ a x −c (mod N). The set {[ c ] , [ y ]} gives elements from Step 1 that are equivalent by −I. Choosing one such element from each set gives a set that reduces to a 2 ? system of representatives of (Z ) / ∼2.
Corollary 2.20. The algorithm outputs a set that is in bijection with the cusps of X1(N).
Proof. By Theorem 2.17 the algorithm outputs a set that is in bijection with 2 ? (Z ) / ∼2. By Proposition 2.4, the map
2 ? ? ϕ :(Z ) / ∼2→ Γ\Q ,
a where ϕ ([ c ]) = Γ(a/c), is a bijection. Hence the algorithm outputs a set in bijection with the cusps of X1(N).
Example 2.21. We will find the cusps of X1(10). First choose all c ∈ {0,...,N − 1} such that gcd(c, 10) = 1. This is the set {1, 3, 7, 9}. Applying Step 1 of the algorithm, we add the following elements to our list: 0 0 0 0 , , , . 1 3 7 9
Let c = 0. Then gcd(0, 10) = 10. Observe that P (10) = {1, 3, 7, 9}. Apply- ing Step 1, we add the following elements to our list:
1 3 7 9 . 0 0 0 0
If c = 2, then gcd(2, 10) = 2. Since P (2) = {1}, we add the following element to our list: 1 . 2 Chapter 2. Cusps 24
If c = 4 then gcd(4, 10) = 2. Since P (2) = {1}, we add the following element to our list: 1 . 4
If b = 5 then gcd(5, 10) = 5, and repeating the previous steps we add the following elements to our list:
1 2 3 4 . 5 5 5 5
For both c = 6 and c = 8, gcd(c, 10) = 2, so we add the following element to our list: 1 1 , . 6 8
We have now completed the list of elements for Step 1. For Step 2, we a x directly compute the sets {[ c ] , [ y ]} with y ≡ −c (mod N) and x ≡ −a (mod d) where d = gcd(c, N):
1 9 3 7 0 0 , , , 0 0 0 0 1 9 1 1 0 0 1 1 , , , 2 8 3 7 4 6 1 4 2 3 , , . 5 5 5 5
We can now choose one representative from each of the sets above. There- fore the following list gives representatives of the cusps of X1(10):
1 3 0 1 0 1 1 2 , , , , , , , . 0 0 1 2 3 4 5 5
Theorem 2.22. For N = 3,N ≥ 5, the number of cusps in X1(N) is
1 X φ(d)φ(N/d) 2 d|N
Proof. We will count the number of cusps that are found for each step in the algorithm. Given N, fix c ∈ {0,...,N − 1} and let d = gcd(c, N). We would a 2 like to count the elements [ c ] ∈ (Z/NZ) from Step 1. For each c, there are φ(d) possible representatives. For each divisor d of N we want to determine how many 0 ≤ c < N there are for which gcd(c, N) = d. We claim that the appropriate number is φ(N/d). If c satisfies gcd(c, N) = d it must be of the form `d for some ` ∈ {1, 2, . . . , N/d}. Then c = `d satisfies gcd(c, N) = d exactly when gcd(`, N/d) = 1. The number of choices of ` that Chapter 2. Cusps 25 satisfy gcd(`, N/d) = 1 is φ(N/d). For each divisor d of N, there are φ(d)φ(N/d) possible representatives from Step 1. a x In Step 2 we create the set {[ c ] , [ y ]} where x ≡ −a (mod d) and y ≡ −c (mod N). If this set is a singleton then c is equal to 0 or N/2. If c = 0 then a = N/2. Therefore if N is odd there are no singletons in Step 2. Assume that N is even. 0 2 ? Since N/2 is in ((Z/NZ) ) only when N = 2 we cannot have that c = 0. 0 If c = N/2 then a ≡ −a (mod N/2) and so a = 0 or N/4. The element N/2 is 2 ? N/4 2 ? in ((Z/NZ) ) only when N = 2 and N/2 is in ((Z/NZ) ) only when N = 4. Therefore there are only singletons in Step 2 when N = 2 and N = 4. Thus we can halve the number of elements found in Step 1 which gives the total number of cusps as
1 X φ(d)φ(N/d). 2 d|N
2.3.6 Algorithm in Sage The following program implements the algorithm from the previous section. def cusps1(N): """List all cusps of X_1(N).
Creates list of [a,b] with a coprime to gcd(b,N), ,→ then removes [c,d] from cusplist if there is a [a,b] with [a,b]=[-c,-d].""" l = [] for b in range(N): d = gcd(b,N) for k in range(0,d): if gcd(k,d)==1: l.append([k,b]) r=[] while len(l)>0: a = l.pop(0) r.append(a) d=gcd(a[1],N) for i in range(len(l)): if (a[0]+l[i][0])%d==0 and (a[1]+l[i][1])%N ,→ ==0: l.pop(i) break return r Chapter 2. Cusps 26
Using the algorithm defined in this section we can compute the cusps of the modular curves X1(N) for 2 ≤ N ≤ 12. The computations are given in Table 2.1.
N Cusps of X1(N)
1 1 0
1 0 2 , 0 1
1 0 3 , 0 1
1 0 1 4 , , 0 1 2
1 2 0 0 5 , , , 0 0 1 2
1 0 1 1 6 , , , 0 1 2 3
0 0 0 1 2 3 7 , , , , , 1 2 3 0 0 0
0 0 1 3 1 1 8 , , , , , 1 3 0 0 2 4
1 2 4 0 0 1 2 0 9 , , , , , , , 0 0 0 1 2 3 3 4
1 3 0 1 0 1 1 2 10 , , , , , , , 0 0 1 2 3 4 5 5
1 2 3 4 5 0 0 0 0 0 11 , , , , , , , , , 0 0 0 0 0 1 2 3 4 5
1 5 0 1 1 2 1 3 0 1 12 , , , , , , , , , 0 0 1 2 3 3 4 4 5 6
TABLE 2.1: Cusps of X1(N) Chapter 2. Cusps 27
2.3.7 Computing cusps of X0(N)
We will proceed as in the previous sections. Define an equivalence relation ∼3 2 ? on (Z ) by
a a0 ya h a0+jc i [ c ] ∼3 c0 ⇐⇒ [ c ] ≡ yc0 (mod N) for some integers j, y with gcd(y, N) = 1. By equation (2.2) of Theorem 2.7,
a a0 0 0 [ c ] ∼3 c0 ⇐⇒ Γ0(N)(a/c) = Γ0(N)(a /c ) and so Proposition 2.4 proves that the map
2 ? ? ϕ :(Z ) / ∼3 −→ Γ0(N)\Q is a bijection. Recall that if a,¯ c¯ are elements of Z/NZ then we define the set
2 ? a¯ ((Z/NZ) ) = {[ c¯ ] :a, ¯ c¯ ∈ (Z/NZ), gcd(¯a, c,¯ N) = 1}. Now define the map
2 ? 2 ? ψ : ((Z/NZ) ) −→ (Z ) / ∼3
a¯ a0 a0 a¯ 2 ? 0 0 by ψ ([ c¯ ]) = c0 where c0 is a lift of [ c¯ ] to (Z ) with gcd(a , c ) = 1. Theorem 2.23. The map ψ is independent of the choice of lift and is well-defined and surjective. The proof of this Theorem is analogous to the proof of Theorem 2.10. As in the previous section when a,¯ c,¯ d¯ ∈ Z/NZ take a, c, d to be the smallest non- negative representative of a,¯ c,¯ d¯, which will be in the set {0,...,N − 1}.
Theorem 2.24. There are two cusps in X0(p) for p prime. 2 ? Proof. Let p be prime. We will show that there are two elements in (Z ) / ∼3. 0¯ 1¯ More specifically we will show that 1¯ and 0¯ lift to a system of representa- 2 ? tives for equivalence classes of (Z ) with respect to ∼3. a¯ 2 ? ¯ We will first show that for a¯ ∈ Z/NZ, if 0¯ ∈ ((Z/NZ) ) and a¯ 6= 0 then a¯ 1¯ ψ 0¯ = ψ 0¯ . Since a is nonzero, then it has an inverse mod p. Choose an integer y such that ya ≡ 1 (mod p). Observe that
ya 1 + j(0) ≡ (mod p). p y(0)
a 1 Therefore [ p ] ∼3 [ 0 ]. Recall that ψ is independent of the choice of lift. a 1 a¯ 1¯ 2 ? a¯ Since [ p ] , [ 0 ] are respective lifts of 0¯ and 0¯ to (Z ) , we have that ψ 0¯ = 1¯ ψ 0¯ . ¯ a¯ Now assume that c¯ 6= 0. We will show that for all a¯ ∈ Z/pZ, ψ ([ c¯ ]) = 0¯ ψ 1¯ . Since c is nonzero, gcd(c, p) = 1. Choose an integer y such that y ≡ c (mod p) and so gcd(y, p) = 1. Choose an integer j such that j ≡ a (mod p). Chapter 2. Cusps 28
Then we have the congruence
ya 0 + jc ≡ (mod p). c y · 1
a0 0 a0 a¯ Therefore c0 ∼3 [ 1 ] where c0 is a lift of [ c¯ ]. Recall that ψ is indepen- a0 0 a¯ 0¯ dent of the choice of lift. Since c0 , [ 1 ] are respective lifts of [ c¯ ] and 1¯ to 2 ? a¯ 0¯ (Z ) , we have that ψ ([ c¯ ]) = ψ 1¯ . 1 0 1 0 Lastly we need to show that [ 0 ] 6∼3 [ 1 ]. By Theorem 2.7, if [ 0 ] ∼3 [ 1 ] then
y(1) 0 + j(0) ≡ (mod p) 0 y(1) for integers y, j with gcd(y, p) = 1. Since gcd(y, p) = 1 then y 6≡ 0 (mod p) 1 0 which contradicts that y(1) ≡ 0 + j(0) (mod p). Therefore [ 0 ] 6∼3 [ 1 ]. Since the 1¯ 0¯ map ψ is independent of lift, ψ 0¯ 6= ψ 1¯ . 1¯ 0¯ Therefore X0(p) has two cusps and they are represented by 0¯ and 1¯ .
+ Lemma 2.25. Let c ∈ Z and d a divisor of a positive integer N. Then
gcd(c, N) = d ⇐⇒ cy ≡ d (mod N) (2.6) for some y ∈ Z with gcd(y, N) = 1. Proof. For the reverse direction let cy ≡ d (mod N), so there exists an integer k such that cy + Nk = d. Therefore gcd(c, N) | d. Since gcd(y, N) = 1 there is y0 such that yy0 ≡ 1 (mod N). Observe that c ≡ dy0 (mod N) and so c = dy0 + Nm for some integer m. Hence gcd(d, N) | c. Recall that d is a divisor of N so gcd(d, N) = d and so d | c and d | N. Therefore d | gcd(c, N) and so gcd(c, N) = d. To show the forward direction assume gcd(c, N) = d. Hence d | c and so c = d` with gcd(`, N/d) = 1. Since gcd(`, N/d) = 1, ` has an inverse mod N/d, call it y. Observe that
cy = d`y ≡ d (mod N).
This proves the forward direction.
a¯ 2 ? ¯ Lemma 2.26. Let [ c¯ ] ∈ ((Z/NZ) ) . There exist d, x¯ ∈ Z/NZ with d a divisor a¯ x¯ of N such that ψ ([ c¯ ]) = ψ d¯ . a¯ 2 ? a¯ a Proof. To prove the lemma let [ c¯ ] ∈ ((Z/NZ) ) and ψ ([ c¯ ]) be the class of [ c ]. Observe that gcd(a, c, N) = 1 and define d = gcd(c, N). By Lemma 2.25, there is y ∈ Z with gcd(y, N) = 1 such that
cy ≡ d (mod N). Chapter 2. Cusps 29
Choose x such that yx ≡ a (mod N). Then we have that
a yx ≡ (mod N). yc d
x¯ 2 ? We need to check that d¯ ∈ ((Z/NZ) ) . Since yx ≡ a (mod N), we have that gcd(x, N) | a. Recall that gcd(a, c, N) = 1 and gcd(c, N) = d, and so gcd(a, d) = 1. Therefore gcd(x, d, N) | gcd(a, d) = 1 which implies that x¯ 2 ? gcd(x, d, N) = 1. Hence d¯ is in ((Z/NZ) ) . a¯ x¯ By Theorem 2.7, ψ ([ c¯ ]) = ψ d¯ .
Lemma 2.27. The divisor d in Lemma 2.26 is unique.
Proof. Given a positive integer N, let d1 and d2 be divisors of N. It suffices to h i h i ψ a¯1 = ψ a¯2 d = d show that d¯1 d¯2 implies that 1 2. a1 Observe that if gcd(a1, d1,N) = 1 then gcd(a1, d1) = 1. Therefore d and h i h i 1 a2 a¯1 a¯2 ( 2)? d2 are lifts of d¯1 and d¯2 to Z . h i h i ψ a¯1 = ψ a¯2 If d¯1 d¯2 then
ya a + jd 1 ≡ 2 1 (mod N) d1 yd2 for some integers j, y with gcd(y, N) = 1. By Lemma 2.25 if d1 ≡ yd2 (mod N) then gcd(d1,N) = d2. Clearly gcd(d1,N) = d1 and so d1 = d2 which proves the lemma.
Given d | N, let ` = gcd(d, N/d).