The calculation was done on MECCAH using the program Magma. Some of the data on this site was generated using the original version of the program, but anyone interested in using this code for further calculations should use the new version which has been cleaned up slightly, explained better, and to which has been added the dividing up into isogeny classes bit. The structure of the program is outlined below.

Let *K* be a number field generated by a root *a* of an
irreducible polynomial *m*(*x*) of degree *n*.

We
enumerate curves defined over the number field as follows: we take
curves in the form
*y*^{2} = *x*^{3} + *Ax* +* B*, where
*A* and
*B* are elements of *K* written as linear combinations of the
power basis (1, *a*, ..., *a*^{n-1}): so
*A* = *A*_{0} + *A*_{1} *a* + ... + *A*
_{n-1} *a*^{n-1}
and
*B* = *B*_{0} + *B*_{1} *a* + ... + *B*
_{n-1} *a*^{n-1}.
We choose some
integer
*N* as a "bound," by which we mean that the coefficients
*A _{i}* and

It may also be useful to access the data directory; if these
are saved in a directory marked "newdata" the program will access them and will
not need to recompute data (if it has already been computed). The first number in
the name of one of these files gives the degree of the field extension, call that
*n*. Then the
next *n*+1 digits give the coefficients of the polynomial that generates the
extension (e.g., 2_0_1 is *x*^{2}+2;); and the last digit gives the
"bound," *N*; so curves in that file are those whose coefficients have
"bound" *N* but not "bound" *N*-1. This directory is currently slightly
less extensive than the tables on the prior page might indicate; this is again
because much of that data was computed with a slightly older version of the
program, so the new version will not read it correctly; the old data
directory is here; it will work with the old version of the program if saved
in a directory marked "data."

Finally, these tables will hopefully be useful to people interested in elliptic curves over number fields, but it is important to make clear the strengths and weaknesses of this program; it is able to enumerate many many curves and calculate the things one might want to know about these curves; however, the way we are choosing to enumerate the curves is not exhaustive and so we miss a lot of curves. Following is a comparison to some information John Cremona calculated which will illustrate just how many curves we do miss.

We consider page 7 of the paper *Modular Forms and Elliptic Curves
over Imaginary Quadratic Number Fields* listed on
Cremona's
website.
The table at the bottom of that page gives the number of curves we should be
finding in
a selection of number fields whose conductor has norm less than some integer; complex
conjugate norms are thrown out:

- For
*x*^{2}+1, Cremona found 39 curves with norm-of-conductor less than 500; we found 7. (bound = 8) - For
*x*^{2}+ 2, Cremona found 36 curves with norm-of-conductor less than 300; we found 3. (bound = 6) - For
*x*^{2}+3, Cremona found 27 curves with norm-of-conductor less than 500; we found 3. (bound = 7) - For
*x*^{2}+7, Cremona found 17 curves with norm-of-conductor less than 300; we found 1. (bound = 5) - For
*x*^{2}+11, Cremona found 17 curves with norm-of-conductor less than 200; we found 0. (bound = 6)

Another table of elliptic curves over number fields can be found in
Dominic
Lemelin's thesis, on page 97 of the file (page 89 of the
thesis). Here Lemelin gives curves with norm of conductor 297 over
the
field generated by a root of *x*^{2} + 2; we have no such
curves.
For the field generated by a root of *x*^{2} + 1, he gives
a
curves with norms of conductor 72 and 233 which we also do not have;
and curves over *x*^{2} + 3 which we also do not have.

So, if you use these tables, it is important to keep in mind that we miss a lot of curves. On the other hand, our tables contain hundreds of thousands of curves.