# Solving an equation in charcateristic 2 in sage OR finding 3-torsion points of an elliptic curve over field with char 2

Problem: show that an elliptic curve over a field of char 2 has nontrivial 3-torsion points

Method: I used SAGE to unwind the duplication formula for an elliptic curve given in short Weierstrass form $$y^2=4x^3+b_2x^2+2b_4x+b_6$$ to a duplication formula for a curve given in general Weierstrass form $$y^2+a_1xy+a_3y=x^3 +a_2x^2+a_4x+a_6.$$ This gave me the following expression for the x coordinate of the point $[2]P$, where $P=(x,y)$:

$$x_2=\frac{x^{4} - a_{2} a_{3}^{2} + a_{1} a_{3} a_{4} - a_{1}^{2} a_{6} - {\left(a_{1} a_{3} + 2 \, a_{4}\right)} x^{2} + a_{4}^{2} - 4 \, a_{2} a_{6} - 2 \, {\left(a_{3}^{2} + 4 \, a_{6}\right)} x}{{\left(a_{1}^{2} + 4 \, a_{2}\right)} x^{2} + 4 \, x^{3} + a_{3}^{2} + 2 \, {\left(a_{1} a_{3} + 2 \, a_{4}\right)} x + 4 \, a_{6}}$$

To find a 3-torsion point, I need to get $[2]P=-P$, which is equivalent to $(x_2,y_2)=(x,-y$). So, in particular, I want to solve the equation $x-x_2=0$, but when I ask SAGE to do it, I get some factors with $2$ in the denominator, which is not allowed. How can I get SAGE to solve my equation in characteristic 2? ${ }$

## 1 Answer

What you want is the general 3-division polynomial (whose roots are the x-coordinates of the points of order 3). Here's how you can compute it in characteristic 2 in Sage:

sage: F2 = GF(2)
sage: R.<a1,a2,a3,a4,a6,x> = F2[]
sage: E = EllipticCurve([a1,a2,a3,a4,a6])
sage: f3 = E.division_polynomial(3,x)
sage: f3.factor()
a1^2*x^3 + a1*a3*x^2 + x^4 + a2*a3^2 + a1*a3*a4 + a1^2*a6 + a3^2*x + a4^2


The last line shows that it does not factor over F2.