#3416: Weierstrass form for cubics
-----------------------------+----------------------------------------------
Reporter: moretti | Owner: was
Type: enhancement | Status: needs_work
Priority: major | Milestone: sage-4.7
Component: number theory | Keywords: nagell, weierstrass, cubic,
elliptic curves, editor_wstein
Author: | Upstream: N/A
Reviewer: | Merged:
Work_issues: |
-----------------------------+----------------------------------------------
Comment(by Niels):
Replying to [comment:17 cremona]:
> Replying to [comment:16 cremona]:
> > See #10297 for a separate report on this (and, soon, a patch).
>
> The patch is there, so please review it! The example I used there is
one of the examples from the patch here.
>
> Replacing the curve E used there with
> {{{
>
> sage: E=EllipticCurve([0,0,0,0,-6400/3])
> sage: H=C.Hom(E)
> sage: f = H([zbar,xbar-ybar,-(xbar+ybar)/80])
> sage: f
> Scheme morphism:
> From: Projective Curve over Rational Field defined by x^3^ + y^3^ +
60*z^3^
> To: Elliptic Curve defined by y^2^ = x^3^ - 6400/3 over Rational
Field
> Defn: Defined on coordinates by sending (x : y : z) to
> (zbar : xbar - ybar : -1/80*xbar - 1/80*ybar)
> }}}
> successfully defines the morphism. I recommend that the function here
just returns the morphism, since one can recover E from
> {{{
> sage: f.codomain()
> Elliptic Curve defined by y^2^ = x^3^ - 6400/3 over Rational Field
> }}}
>
> This will not be the end of the story, as I now cannot apply f to a
point on C to get a point on E, but that's because of another difficulty
like the one at #10297, so should be fixed separately.
The example you give almost works. However, the map f sending (x : y : z)
to (zbar : xbar - ybar : -1/80*xbar - 1/80*ybar) is the inverse of the map
we are looking for. The map f is from the Elliptic Curve defined by y^2^ =
x^3^ - 6400/3 to the Curve defined by x^3^ + y^3^ + 60*z^3^, not the other
way around.
I would like to include both the map f and its inverse f^-1^ as (optional)
output. Also, it would be nice to include the projective scaling necessary
after the rational transformation. Unfortunately, the map f^-1^ from "x^3^
+ y^3^ + 60*z^3^" to "y^2^ - x^3^ + 6400/3" is not homogeneous:
x -> 1/2*y - 40
y -> -1/2*y - 40
z -> x
Then multiply the equation with 1/60.
The map f is homogeneous, but I'm not sure I can get a homogeneous f^-1^
from there.
I suggest that I include the morphisms as an optional tuple of strings.
Does anyone have a better suggestion?
--
Ticket URL: <http://trac.sagemath.org/sage_trac/ticket/3416#comment:18>
Sage <http://www.sagemath.org>
Sage: Creating a Viable Open Source Alternative to Magma, Maple, Mathematica,
and MATLAB
--
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.