# Find all n-torsion of an elliptic curve

I'm sorry if this is a really easy question. I found out how to compute the n-torsion of an elliptic curve $E$ over a given field. But what if I would like to do is find a field $K$ such that all n-torsion points of $E$ are defined over $K$.

In effect compute the n-torsion part of the Tate module. Is this possible with Sagemath?

edit retag close merge delete

Sort by » oldest newest most voted

The exact answer to your question is to use the mehod division_field, for example

sage: E = EllipticCurve([0,-1,1,-10,-20])
sage: E.division_field(5,'a')
Number Field in a with defining polynomial x^4 - x^3 + x^2 - x + 1


so that

sage: len(E.change_ring(K).torsion_points())
25


but as Nils said the degree is in general very large -- I chose an example where the degree of the 5-division field is only 4, which is as small as possible over QQ.

more

this would get you close:

E.torsion_polynomial(n).splitting_field()


You're just some quadratic extensions away from the desired field (you just need to make sure that roots of the division polynomial are indeed x-coordinates of points).

Be careful, though: generally such explicit representations of splitting fields are entirely unworkable because they tend to have very high degrees.

more