#5976: [with patch; needs work] Add an Elliptic Curve Isogeny object
---------------------------+------------------------------------------------
Reporter: shumow | Owner: shumow
Type: enhancement | Status: assigned
Priority: major | Milestone: sage-4.0
Component: number theory | Keywords: Elliptic Curves
---------------------------+------------------------------------------------
Comment(by cremona):
Michael is quite right (of course). I went for dinner and realised too
late that I had forgotten to complain about the <100% coverage. I will be
happy to review it again when that is seen to.
I have another problem:
{{{
sage: E=EllipticCurve('11a1')
sage:
phi=EllipticCurveIsogeny(E,E.division_polynomial(2).list(),algorithm='kohel')
sage: phi
Isogeny of degree 4 from Elliptic Curve defined by y^2 + y = x^3 - x^2 -
10*x - 20 over Rational Field to Elliptic Curve defined by y^2 + y = x^3 -
x^2 - 1260*x - 13797 over Rational Field
sage: phi.domain_curve().j_invariant()
-122023936/161051
sage: phi.range_curve().j_invariant()
221401204903936/40810683805
}}}
Here, I was expecting that phi would be the multiplication-by-2 map from E
to itself. but it clearly is not:
{{{
sage: phi.rational_maps()
((64*x^7 - 192*x^6 - 1088*x^5 - 80*x^4 + 10240*x^3 + 17312*x^2 + 3476*x -
24628)/(16*x^6 - 32*x^5 - 304*x^4 - 312*x^3 + 2232*x^2 + 6320*x + 6241),
(1024*x^9*y + 512*x^9 - 3584*x^8*y - 1792*x^8 - 20992*x^7*y - 10496*x^7 +
15744*x^6*y + 7864*x^6 + 265728*x^5*y + 132880*x^5 + 329152*x^4*y +
164728*x^4 - 821728*x^3*y - 410708*x^3 - 2809920*x^2*y - 1406076*x^2 -
2932320*x*y - 1469320*x - 1259724*y - 1265965/2)/(64*x^9 - 192*x^8 -
1728*x^7 - 16*x^6 + 24864*x^5 + 52848*x^4 - 64948*x^3 - 454092*x^2 -
748920*x - 493039))
}}}
so I think this is actually wrong.
When this is fixed it would be nice to make it easier to construct this
multiplication as an isgeny from E to itself (and not just from E to an
isomorphic curve). Which would suggest making the isogeny code work
alongside the weierstrass map code (since weierstrass isomorphisms
[u,r,s,t] are nothing other than isogenies of degree 1), for example by
allowing the construction of an isogeny from a urst and vice versa for
isogenies of degree 1.
--
Ticket URL: <http://trac.sagemath.org/sage_trac/ticket/5976#comment:7>
Sage <http://sagemath.org/>
Sage - Open Source Mathematical Software: Building the Car Instead of
Reinventing the Wheel
--~--~---------~--~----~------------~-------~--~----~
You received this message because you are subscribed to the Google Groups
"sage-trac" group.
To post to this group, send email to [email protected]
To unsubscribe from this group, send email to
[email protected]
For more options, visit this group at
http://groups.google.com/group/sage-trac?hl=en
-~----------~----~----~----~------~----~------~--~---