Suppose I have a family of elliptic curves $E_{n}/\mathbb{Q}$. I would like to determine the torsion subgroup of $E_{n}(\mathbb{Q})$ denoted by $E_{n}(\mathbb{Q})_{\textrm{tors}}$. Two ways to do this are using Nagell-Lutz and computing the number of points over $\mathbb{F}_{\ell}$ for various $\ell$. Are there other ways to determine the torsion subgroup of an elliptic curve?
[Math] Other ways to compute the torsion subgroup of elliptic curves
elliptic-curvesnumber theory
Best Answer
The two ways that you mention, plus looking your curve up in a database (as Matt E. suggests), are the most practical and efficient ways I can think of. Here are two other ways to do this, one practical (but not as efficient) and one which is by no means practical (I think):
Use division polynomials. If $E$ is defined over $\mathbb{Q}$, then $E(\mathbb{Q})$ can only have torsion points of order up to certain bounds. If $P$ is a point of prime order, then the order is $2$, $3$, $5$, or $7$ (by Mazur's theorem). You can find the division polynomials for each of these primes, and see if they have any roots in $\mathbb{Q}$. A root in $\mathbb{Q}$ would give you a rational $x$-coordinate of a torsion point of said order. You can also find the division polynomials of order $p^n$. If a point $P$ has order $p^n$, then the order is at most $8$, $9$, $5$, or $7$, so you only really need to find the $8$th, $9$th, $5$th and $7$th division polynomials, and factor those, to find all the torsion points on $E(\mathbb{Q})$.
Not practical, and conjectural: Use the Birch and Swinnerton-Dyer conjecture. BSD provides a conjectural formula for a certain Taylor coefficient of the $L$-series of the elliptic curve in question. The size of the torsion subgroup appears in the denominator of the coefficient... However, this coefficient is a real number. The real period $\Omega_E$ can always be calculated. If you could calculate the regulator $R_E$ of your elliptic curve (for instance, if you know the rank is $0$, then $R_E=1$), then you could calculate $\Omega_E\cdot R_E$, calculate the coefficient computationally, divide the result by $\Omega_E\cdot R_E$ and obtain a rational number, whose denominator is a divisor of the square of the size of the torsion subgroup of $E$ (notice that there may be some cancellation with the numerator!). This information would then allow you to find the torsion points on $E$ (see previous bullet point).
Example (with division polynomials): Let $E$ be the curve
53b3
in Cremona's database, with Weierstrass equation $$E: y^2 +xy+y= x^3-x^2-14x+29.$$ Let us first find division polynomials:($p=2$) The 2nd division polynomial, defining the $x$-coordinates of $2$-torsion points, is given by $4x^3 - 3x^2 - 54x + 117$. This is irreducible, so there are no $2$-torsion points defined over $\mathbb{Q}$.
($p=3$) The 3rd division polynomial is $$3x^4 - 3x^3 - 81x^2 + 351x - 270,$$ and it factors as $3(x - 1)(x^3 - 27x + 90)$. Thus, there is a point of order $3$ with $x$-coordinate $1$. By plugging into the equation of $E$, we find that $(1,3)$ and $(1,-5)$ are points of order $3$ on $E$. Since we found a point of order $3$, we need to keep going and look for points modulo $9$, $27$ (can't happen over $\mathbb{Q}$), etc...
($9$) The $9$ division polynomial has degree $40$ so we won't reproduce it here. However, it has a bunch of linear factors in its factorization: $$(x - 9)(x - 3)(x - 1)(x + 3)\cdot (\text{higher order factors}).$$ The points with $x=1$ are of no interest to us, since they are points of order $3$. The other coordinates $x=\pm 3$ and $x=9$ correspond to points of order exactly 9, so we need to check if their $y$-coordinates are in $\mathbb{Q}$. Indeed, they do correspond to points of order $9$, namely $$(3,1), (-3,7), (9,-29),(9,19),(-3,-5), (3,-5).$$ Notice, however, that $(3,1)$ generates all of them. We move on to order $27$, since we found points of order $9$.
($p=5$) The 5th division polynomial is of degree $12$ and irreducible. Thus, there are no points of order $5$.
($p=7$) The 7th division polynomial is of degree $24$ and irreducible. Thus, there are no points of order $7$.
Hence, $E(\mathbb{Q})_\text{tors} \cong \mathbb{Z}/9\mathbb{Z}$.
Example (with BSD and L-functions): Let $E$ be the curve
53b3
in Cremona's database, with Weierstrass equation $$E: y^2 +xy+y= x^3-x^2-14x+29.$$ First, we perform a $2$-descent on $E$ to calculate the $2$-Selmer group. It turns out to be trivial. This means two things: the rank is $0$, and Sha is trivial. In particular, the regulator is $R_E=1$. Moreover:Thus, since $(\# E(\mathbb{Q})_\text{tors})^2$ must be an integer, it must be $81$, and $\# E(\mathbb{Q})_\text{tors} = 9$. Since $ E(\mathbb{Q})_\text{tors}$ is an abelian group, there are only two options: $\mathbb{Z}/3\mathbb{Z}\times \mathbb{Z}/3\mathbb{Z}$ or $\mathbb{Z}/9\mathbb{Z}$. However, the former is imposible because if $E[n]$ is defined over a field $F$, then $F$ must contain the $n$th roots of unity. But $\mathbb{Q}$ does not contain $\sqrt{-3}$. Hence, it must be $\mathbb{Z}/9\mathbb{Z}$.
Magma code Here is Magma code for all I did above: