ASKSAGE: Sage Q&A Forum - RSS feedhttps://ask.sagemath.org/questions/Q&A Forum for SageenCopyright Sage, 2010. Some rights reserved under creative commons license.Sat, 19 Jun 2021 14:49:48 +0200Compute elements of n-torsion group of elliptic curve over finite fieldhttps://ask.sagemath.org/question/57626/compute-elements-of-n-torsion-group-of-elliptic-curve-over-finite-field/Suppose $F_q$ is a prime field and $E/F_q$ is an elliptic curve over that field with order $k= n\cdot ...$ and assume that $E$ has embedding degree $l$. Then the $n$-torsion group of $E$ is in $F_{q^l}$. Now assume that $n$ and $l$ are reasonably small, such that the $n$-torsion group contains only a few elements and can be listed.
How can I compute that group and list the elements? Planet MacroSat, 19 Jun 2021 14:49:48 +0200https://ask.sagemath.org/question/57626/finding 4-torsion point on elliptic curvehttps://ask.sagemath.org/question/35333/finding-4-torsion-point-on-elliptic-curve/ Hi I have the following:
E=EllipticCurve(Qp,[0,0,0,-3267,45630])
P=E([-21,324])
Is there some coding I can use to get the 4-torsion point of this elliptic curve. I reckon it might have something to do with the nth divisional polynomial but I couldn't find it.ShaWed, 02 Nov 2016 05:03:48 +0100https://ask.sagemath.org/question/35333/n-torsion subgroups on Elliptic Curves defined on some fieldhttps://ask.sagemath.org/question/36487/n-torsion-subgroups-on-elliptic-curves-defined-on-some-field/if E an elliptic is defined on K, then E[n] is a subgroup of an Elliptic curve defined on an algebraic closure of K, its the set of points P of this curve whose order is dividing n
G = E.torsion_subgroup()
gives the torsion subgroup in E(K), but is there a method giving the E[n] ?
For example, for the Elliptic Curve y^2=x^3-2 defined on Q
if we denote by alpha the cubic root of 2 and J a complex cubic root of unity, and O the point at infinity
E[2] = {O,(alpha,0), (alpha * J,0),(alpha * J^2,0)}
I tried the following
> E = EllipticCurve(CC,[0,-2])
> O = E(0)
> O.division_points(2)
and got [pretty close but not the right result, and not in an algebraic form anyway]
[(0.000000000000000 : 1.00000000000000 : 0.000000000000000),
(1.25992104989487 : 0.000000000000000 : 1.00000000000000)]
thanksfaguiWed, 08 Feb 2017 15:26:56 +0100https://ask.sagemath.org/question/36487/Working on a 3-torsion point on an elliptic curvehttps://ask.sagemath.org/question/35513/working-on-a-3-torsion-point-on-an-elliptic-curve/I am working on a 3-torsion point (`T_3`) as follows. My aim is to find the addition on curve for `T_3 + [51,108]`. I have done the following. First I find `(x,y)` coordinate for my `T_3` which is the following :
E=EllipticCurve([0,0,0,-3267,45630])
E3=E.division_polynomial(3);E3
list(E3.factor())
p = E3.factor()[0][0]; p
p.parent()
P.<x> = QQbar[]
p = P(p); p
p.parent()
p.factor()
p.roots()
roots = p.roots(multiplicities=False); roots
q = x^3 - 3267*x + 45630; q
q.parent()
for (x, y) in [(r, sqrt(q(r))) for r in roots]:
print 'xr = {} = {}'.format(x, x.radical_expression())
print 'yr = {} = {}\n'.format(y, y.radical_expression())
which gives
xr = -94.19483056089681? = -3*sqrt(12*612^(1/3)*(-1)^(1/3) + 121) - 1/2*sqrt(-432*612^(1/3)*(-1)^(1/3) + 60840/sqrt(12*612^(1/3)*(-1)^(1/3) + 121) + 8712)
yr = 694.5464483276473?*I = sqrt(-108*sqrt(78408*1734^(1/3)*(-1)^(1/3) + 1507177) - 1/2*sqrt(-3658203648*1734^(1/3)*(-1)^(1/3) + 150108334945920/sqrt(78408*1734^(1/3)*(-1)^(1/3) + 1507177) + 140637700224) - 91260)
xr = 67.96049831231529? = 3*sqrt(12*612^(1/3)*(-1)^(1/3) + 121) + 1/2*sqrt(-432*612^(1/3)*(-1)^(1/3) - 60840/sqrt(12*612^(1/3)*(-1)^(1/3) + 121) + 8712)
yr = 370.7929379838096? = sqrt(108*sqrt(78408*1734^(1/3)*(-1)^(1/3) + 1507177) + 1/2*sqrt(-3658203648*1734^(1/3)*(-1)^(1/3) - 150108334945920/sqrt(78408*1734^(1/3)*(-1)^(1/3) + 1507177) + 140637700224) - 91260)
xr = 13.11716612429076? - 19.58845998947787?*I = -3*sqrt(12*612^(1/3)*(-1)^(1/3) + 121) + 1/2*sqrt(-432*612^(1/3)*(-1)^(1/3) + 60840/sqrt(12*612^(1/3)*(-1)^(1/3) + 121) + 8712)
yr = 161.4836552080483? + 190.1138813616981?*I = sqrt(108*sqrt(78408*1734^(1/3)*(-1)^(1/3) + 1507177) - 1/2*sqrt(-3658203648*1734^(1/3)*(-1)^(1/3) - 150108334945920/sqrt(78408*1734^(1/3)*(-1)^(1/3) + 1507177) + 140637700224) - 91260)
xr = 13.11716612429076? + 19.58845998947787?*I = 3*sqrt(12*612^(1/3)*(-1)^(1/3) + 121) - 1/2*sqrt(-432*612^(1/3)*(-1)^(1/3) - 60840/sqrt(12*612^(1/3)*(-1)^(1/3) + 121) + 8712)
yr = 161.4836552080483? - 190.1138813616981?*I = sqrt(-108*sqrt(78408*1734^(1/3)*(-1)^(1/3) + 1507177) + 1/2*sqrt(-3658203648*1734^(1/3)*(-1)^(1/3) + 150108334945920/sqrt(78408*1734^(1/3)*(-1)^(1/3) + 1507177) + 140637700224) - 91260)
I chose the first coordinate `P=(xr,yr)` of `T_3` to perform the addition as follows :
k.<a> = NumberField(x^4 - 6534*x^2 +182520*x-3557763)
kX.<X>=FunctionField(K)
R.<Y> = kX[]
kY.<Y> = kX.extension(Y^2-X^3+3267*X-45630)
E=EllipticCurve(kY,[0,0,0,-3267,45630])
P=E(-3*sqrt(12*612^(1/3)*(-1)^(1/3) + 121) - 1/2*sqrt(-432*612^(1/3)*(-1)^(1/3) + 60840/sqrt(12*612^(1/3)*(-1)^(1/3) + 121) + 8712),sqrt(-108*sqrt(78408*1734^(1/3)*(-1)^(1/3) + 1507177) - 1/2*sqrt(-3658203648*1734^(1/3)*(-1)^(1/3) + 150108334945920/sqrt(78408*1734^(1/3)*(-1)^(1/3) + 1507177) + 140637700224) - 91260))
Q=E(51,108)
P+Q
and obtained the following error :
TypeError: unable to convert -6*sqrt(2)*sqrt(-(6*612^(1/3)*(-1)^(1/3)*sqrt(12*612^(1/3)*(-1)^(1/3) + 121) - 121*sqrt(12*612^(1/3)*(-1)^(1/3) + 121) - 845)/sqrt(12*612^(1/3)*(-1)^(1/3) + 121)) - 6*sqrt(12*612^(1/3)*(-1)^(1/3) + 121) to a rational
Is there a way to fix this? I really need to find the addition of `T_3 + [51,108]`.
ShaFri, 11 Nov 2016 00:05:07 +0100https://ask.sagemath.org/question/35513/point addition on elliptic curvehttps://ask.sagemath.org/question/35343/point-addition-on-elliptic-curve/ I have the following code where I want to add a 4-torsion point given by
`P=[15+36*B, 27*a*(a^2-4*B-5)]` with `B^2=-2` and `a^4-5*a^2-32=0`
and `Q=[r,s]` on my elliptic curve `E` as given below:
E=EllipticCurve([-3267,45630])
k.<B>=NumberField(x^2-2)
k.<a>=NumberField(x^4-5*x^2-32)
kr.<r>=FunctionField(k);
krS.<S>=kr[]
R.<s>=krS.quo(S^2-(r^3-3267*r+45630))
P=E(R)(15+36*B, 27*a*(a^2-4*B-5))
Q=E(R)(r,s)
P+Q
but it keeps giving error such as :
TypeError: unsupported operand parent(s) for '-': 'Number Field in a with defining polynomial x^4 - 5*x^2 - 32' and 'Number Field in B with defining polynomial x^2 - 2'
Can someone please advise me what is wrong in my coding.
ShaWed, 02 Nov 2016 09:40:58 +0100https://ask.sagemath.org/question/35343/Find all n-torsion of an elliptic curvehttps://ask.sagemath.org/question/33055/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? Lee WangMon, 11 Apr 2016 10:25:03 +0200https://ask.sagemath.org/question/33055/division_polynomial with integer coefficients?!https://ask.sagemath.org/question/23928/division_polynomial-with-integer-coefficients/Hi, I would like to get a Division-polynomial for an elliptic curve. The curve is
E=EllipticCurve(CC,[-35/4,-49/4])
I used the commands
E3 = E.change_ring(QQbar)
p = E3.division_polynomial(3, two_torsion_multiplicity=0)
and I obtained
3*x^4 - 105/2*x^2 - 147*x - 1225/16
Is there a way to get a division-polynomial which has integer coefficients and which is normalized?
pittersenMon, 25 Aug 2014 17:55:29 +0200https://ask.sagemath.org/question/23928/