Updated 2012-01-13
This site contains various data files concerning modular elliptic curves, in a standard format to make them easily readable by other programs. For a typeset version of the same data (with some extra data about local reduction data) for conductors up to 1000, you can refer to the book Algorithms for modular elliptic curves , CUP 1992, second revised edition 1997. See the book's web site for more information, including errata for the current (2nd) edition, and errata to the first edition (not maintained since the appearance of the second edition). The errata lists include errors and omissions in the tables. The files here have the corrected data in them.
Note: As of 2000 the book is out of print, and CUP have no plans to reprint it.
The files correspond to tables 1-5 in the book (Table 5 is not in the First Edition), with additional tables: Table 6 gives the isogeny matrices between curves in each isogeny class, and Table 7 lists the integral points on each curve. They are compressed with gzip, which adds the suffix ".gz" to the filename.; You may need to uncompress after transfer using gunzip, or your browser might uncompress the files automatically for you to view them.
The tables currently contain data for conductors up to 220000.
From September 2005: New labelling scheme introduced for isogeny classes. The old scheme started A,B,...,Z,AA,BB,...,ZZ,AAA,BBB,... and had become unwieldy. The new scheme is a straight base 26 encoding with a=0, b=1 etc., with the classes numbered from 0 amd leading a's deleted: a,b,...,z,ba,bb,...bz,ca,cb,... . The change to lower case is to make codes such as bb unambiguous between the old and new systems. For conductors less than 1728 the number of isogeny classes is at most 25 and the only change is from upper to lower case.
We give all curves in each isogeny class. For levels (or conductors) up to 60000, the first one listed in each class is the so-called "optimal" or "strong Weil" curve attached to each newform (referred to as optimal curves from now on). For levels above 60000 we have not yet determined which curve in each class is optimal (except, of course, where the class has only one curve); but thanks to Mark Watkins's program, we can say that the first curve listed is optimal conditional if the Stevens' conjecture is valid. The optimal curve can be determined in any individual case, but this would take a long time to do for all remaining cases. Hence the numbering of the curves within each class may change for conductors over 60000 --but only if Stevens's conjecture is false. Some of the data is common to all curves in the isogeny class.
The modular degrees for conductors over 12000 were computed using Mark Watkins's program.
Generators for many rank 1 curves were computed using Magma's HeegnerPoint function written by Mark Watkins.
The integral points for all curves were computed using Sage (version 3.1) in a new implementation due to Michael Mardaus, Tobias Nagel and JEC. For conductors up to 1000 we have checked that these agree with Magma (version V2.14-14). N.B. It is known that these lists are in some cases incomplete, due to bugs in the program mentioned; they need to be corrected.
One entry for each isomorphism class of curves, giving conductor N, letter id for isogeny class, number of the curve in the class, coefficients of minimal Weierstrass equation, rank r, order of torsion subgroup |T|. For all N up to 60000 the optimal Gamma_0(N) curve is the one labelled 1 (except for class 990h when it is the curve labelled 3). For N>60000, this is true conditional on Stevens' Conjecture.
Data format with sample line:
| N | C | # | curve | r | t |
|---|---|---|---|---|---|
| 2730 | bd | 1 | [1,0,0,-25725,1577457] | 0 | 12 |
Simple searches may be carried out with the unix/linux utility awk. For example:
awk '$6==12' allcurves.* | sort -n -k 1
awk '$6==16' allcurves.*
awk '$5==3' allcurves.* | sort -n -k 1
sed 's/[]\[,]/ /g' allcurves.00000-10000
For every curve, generators are given for the Mordell group, in projective coordinates. N.B. In all cases I have checked that the point(s) given are indeed generators. Each entry consists of conductor N, isogeny class code, number of curve in class, curve coefficients, rank r, torsion structure (as a list of t structure constants for t=0,1 or 2, i.e. in the form [] or [t] or [t1,t2]) and r+t points in projective coordinates (torsion last). For example, the entry
| 389 | a | 1 | [0,1,1,-2,0] | 2 | [] | [0:0:1] | [1:0:1] |
means that curve 389a1 = [0,1,1,-2,0] has rank 2 and trivial torsion, with generators [0:0:1]=(0,0) and [1:0:1]=(1,0), while the entry
| 4602 | a | 1 | [1,1,0,-37746035,-89296920339] | 1 | [2] | [175781888357266265777015693706802984972253428834450486976370 : 19575260230015313702261379022151675961965157108920263594545223 : 11451799510178287699130942513632433218384249076487302907] | [7094:-3547:1] |
means that curve 4602a1 = [1,1,0,-37746035,-89296920339] has rank 1 with generator
77985922458974949246858229195945103471590 19575260230015313702261379022151675961965157108920263594545223 [----------------------------------------- , -------------------------------------------------------------- ] 2254020761884782243^2 2254020761884782243^3together with torsion of order 2 generated by [7094:-3547:1] = (7094,-3547).
N.B. From April 2011 the format of these files was changed to include information about the torsion; there is therefore now a line in the allgens files for every curve, not just those of positive rank. The files for N<130000 were updated accordingly on 15/4/11.
| 101 | a | 0 | -2 | -1 | -2 | -2 | 1 | 3 | -5 | 1 | -4 | -9 | -2 | 8 | -8 | 7 | -2 | -14 | 4 | 2 | 13 | 8 | -9 | -4 | 14 | 2 | +(101) |
| 10201 | a | 0 | 2 | -1 | 2 | 2 | 1 | 3 | -5 | 1 | 4 | -9 | -2 | -8 | -8 | 7 | 2 | 14 | -4 | -2 | 13 | -8 | -9 | 4 | -14 | 2 | +(101) |
| 19153 | a | 2 | 0 | -1 | 0 | -4 | 7 | -3 | -3 | -6 | 3 | 8 | -2 | 0 | 1 | 1 | 0 | 15 | 6 | -13 | 12 | -2 | 2 | 9 | -9 | -10 | +(107) | -(179) |
Birch--Swinnerton-Dyer data for the first (strong Weil or optimal) curve in each class, exactly as in the book. Column headings: Conductor, class id letter, rank, real period w, L^(r)(1)/r!, regulator R, rational factor, S. Here the rational factor is L^(r)(1)/wRr!; when r=0 this is exact and given as a pair of integers (numerator denominator); when r>0 it is approximate, but easily recognisable. Lastly, S is the value of the order of the Tate-Shafarevich group as predicted by B-SD (the "analytic order of Sha"), given the previous data and also the local factors and torsion. When r=0 this is exact; when r>0 it is approximate, and was computed to several places but to save space is just entered as 1.0. (S>1 in only 4 cases, where S=4 or 9).
| N | C | # | curve | r | t | cp | om | L | R | S |
|---|---|---|---|---|---|---|---|---|---|---|
| 11 | a | 1 | [0,-1,1,-10,-20] | 0 | 5 | 5 | 1.269209304 | 0.25384186 | 1 | 1 |
| 5077 | a | 1 | [0,0,1,-7,6] | 3 | 1 | 1 | 4.151687983 | 1.73184990 | 0.41714355 | 1.00000000 |
| N | id | degree | primes | curve |
|---|---|---|---|---|
| 5077 | a 1 | 1984 | {2,31} | [0,0,1,-7,6] |
| N | class | # | [a1,a2,a3,a4,a6] | curves in the class | isogeny matrix |
|---|---|---|---|---|---|
| 14 | a | 1 | [1,0,1,4,-6] | [[1,0,1,4,-6],[1,0,1,-36,-70],[1,0,1,-171,-874],[1,0,1,-1,0],[1,0,1,-2731,-55146],[1,0,1,-11,12]] | [[0,2,3,3,0,0],[2,0,0,0,3,3],[3,0,0,0,2,0],[3,0,0,0,0,2],[0,3,2,0,0,0],[0,3,0,2,0,0]] |
| Curve | [a1,a2,a3,a4,a6] | x-coordinates of integral points |
|---|---|---|
| 114114bz1 | [1,0,0,-858375,380956041] | [-1098,-1042,-990,-954,-756,-522,-426,-72,36,102,270,354,414,498,596,630,726,918,960,1334,1590,1818,1974,2702,3006,3690,5250,6966,8352,9702,18054,24438,31848,48150,119988,295254,913014] |
Recent update notes: January 2012