#3416: Weierstrass form and Jacobian for cubics and certain other genus-one
curves
-------------------------------------+-------------------------------------
Reporter: moretti | Owner: was
Type: enhancement | Status: needs_review
Priority: major | Milestone: sage-5.12
Component: elliptic curves | Resolution:
Keywords: nagell, | Merged in:
weierstrass, cubic, elliptic | Reviewers: John Cremona, Marco
curves, editor_wstein | Streng, Nils Bruin
Authors: Niels Duif, | Work issues:
Volker Braun | Commit:
Report Upstream: N/A | Stopgaps:
Branch: |
Dependencies: #12553, #13084, |
#13458 |
-------------------------------------+-------------------------------------
Changes (by vbraun):
* status: needs_work => needs_review
Old description:
> Implement transformations to put a general cubic (with a point) into
> Weierstrass form:
> {{{
> sage: R.<u,v,w> = QQ[]
> sage: EllipticCurve(u^3+v^3+w^3, [1,-1,0])
> Elliptic Curve defined by y^2 + 2*x*y - 1/3*y = x^3 - x^2 + 1/3*x - 1/27
> over Rational Field
> sage: EllipticCurve_from_cubic(u^3+v^3+w^3, [1,-1,0])
> Scheme morphism:
> From: Closed subscheme of Projective Space of dimension 2 over Rational
> Field defined by:
> u^3 + v^3 + w^3
> To: Elliptic Curve defined by y^2 + 2*x*y - 1/3*y = x^3 - x^2 + 1/3*x
> - 1/27 over Rational Field
> Defn: Defined on coordinates by sending (u : v : w) to
> (w : -v - w : -3*u - 3*v)
> }}}
> Also, Jacobians (without specifying point):
> {{{
> sage: R.<u,v,w> = QQ[]
> sage: Jacobian(u^3+v^3+w^3)
> Elliptic Curve defined by y^2 = x^3 - 27/4 over Rational Field
> sage: Jacobian(u^3+v^3+w^3, morphism=True)
> Scheme morphism:
> From: Projective Curve over Rational Field defined by u^3 + v^3 + w^3
> To: Elliptic Curve defined by y^2 = x^3 - 27/4 over Rational Field
> Defn: Defined on coordinates by sending (u : v : w) to
> (u*v^7*w + u*v^4*w^4 + u*v*w^7 : v^9 + 3/2*v^6*w^3 - 3/2*v^3*w^6
> - w^9 : -v^6*w^3 - v^3*w^6)
> }}}
>
> Apply:
>
> * [attachment:trac_3416_elliptic_curve_from_cubic_vb.patch]
> * [attachment:trac_3416_jacobians.patch]
> * [attachment:trac_3416_fixes.patch]
>
> See [attachment:cubic_to_weierstrass_documentation.pdf] for details on
> how the algorithm works.
New description:
Implement transformations to put a general cubic (with a point) into
Weierstrass form:
{{{
sage: R.<u,v,w> = QQ[]
sage: EllipticCurve(u^3+v^3+w^3, [1,-1,0])
Elliptic Curve defined by y^2 + 2*x*y - 1/3*y = x^3 - x^2 + 1/3*x - 1/27
over Rational Field
sage: EllipticCurve_from_cubic(u^3+v^3+w^3, [1,-1,0])
Scheme morphism:
From: Closed subscheme of Projective Space of dimension 2 over Rational
Field defined by:
u^3 + v^3 + w^3
To: Elliptic Curve defined by y^2 + 2*x*y - 1/3*y = x^3 - x^2 + 1/3*x
- 1/27 over Rational Field
Defn: Defined on coordinates by sending (u : v : w) to
(w : -v - w : -3*u - 3*v)
}}}
Also, Jacobians (without specifying point):
{{{
sage: R.<u,v,w> = QQ[]
sage: Jacobian(u^3+v^3+w^3)
Elliptic Curve defined by y^2 = x^3 - 27/4 over Rational Field
sage: Jacobian(u^3+v^3+w^3, morphism=True)
Scheme morphism:
From: Projective Curve over Rational Field defined by u^3 + v^3 + w^3
To: Elliptic Curve defined by y^2 = x^3 - 27/4 over Rational Field
Defn: Defined on coordinates by sending (u : v : w) to
(u*v^7*w + u*v^4*w^4 + u*v*w^7 : v^9 + 3/2*v^6*w^3 - 3/2*v^3*w^6 -
w^9 : -v^6*w^3 - v^3*w^6)
}}}
Apply:
* [attachment:trac_3416_elliptic_curve_from_cubic_vb.patch]
* [attachment:trac_3416_jacobians.patch]
* [attachment:trac_3416_fixes.patch]
* [attachment:trac_3416_magma.patch]
See [attachment:cubic_to_weierstrass_documentation.pdf] for details on how
the algorithm works.
--
--
Ticket URL: <http://trac.sagemath.org/ticket/3416#comment:82>
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 unsubscribe from this group and stop receiving emails from it, send an email
to [email protected].
To post to this group, send email to [email protected].
Visit this group at http://groups.google.com/group/sage-trac.
For more options, visit https://groups.google.com/groups/opt_out.