#10999: Elliptic curve generators from the database lie on the wrong curve
-------------------------------+--------------------------------------------
Reporter: gagansekhon | Owner: cremona
Type: defect | Status: new
Priority: minor | Milestone: sage-4.7
Component: elliptic curves | Keywords: Cremona database, integral
points, gens
Author: | Upstream: N/A
Reviewer: | Merged:
Work_issues: |
-------------------------------+--------------------------------------------
Description changed by cremona:
Old description:
> After installing the large cremona database. The following code produces
> an error.
> {{{
>
> E=EllipticCurve('389a1')
> G=E.gens()
> P1=E.point((-1,1,1))
> P2=E.point((0,0,1))
> print E.integral_points([P1,P2])
> print E.integral_points(G)
> }}}
>
> [(-2 : 0 : 1), (-1 : 1 : 1), (0 : 0 : 1), (1 : 0 : 1), (3 : 5 : 1), (4 :
> 8 : 1), (6 : 15 : 1), (39 : 246 : 1), (133 : 1539 : 1), (188 : 2584 : 1)]
> Traceback (most recent call last):
> File "<stdin>", line 1, in <module>
> File "_sage_input_3.py", line 10, in <module>
> exec compile(u'open("___code___.py","w").write("# -*- coding: utf-8
> -*-\\n" +
> _support_.preparse_worksheet_cell(base64.b64decode("RT1FbGxpcHRpY0N1cnZlKCczODlhMScpCkc9RS5nZW5zKCkKUDE9RS5wb2ludCgoLTEsMSwxKSkKUDI9RS5wb2ludCgoMCwwLDEpKQpwcmludCBFLmludGVncmFsX3BvaW50cyhbUDEsUDJdKQpwcmludCBFLmludGVncmFsX3BvaW50cyhHKQ=="),globals())+"\\n");
> execfile(os.path.abspath("___code___.py"))
> File "", line 1, in <module>
>
> File
> "/private/var/folders/rt/rtyQ7RPsHRCDmvOBf9SYwU+++TI/-Tmp-/tmpwbmbeK/___code___.py",
> line 8, in <module>
> exec compile(u'print E.integral_points(G)
> File "", line 1, in <module>
>
> File "/Users/sekhon/Documents/sage-4.7.alpha2/local/lib/python2.6/site-
> packages/sage/schemes/elliptic_curves/ell_rational_field.py", line 5310,
> in integral_points
> raise ValueError, "points are not on the correct curve"
> ValueError: points are not on the correct curve
New description:
After installing the large cremona database. The following code
shows something strange (which then causes a failure in
E.integral_points()(:
{{{
sage: E=EllipticCurve('389a1')
sage: [P.curve() is E for P in E.gens()]
[False, False]
sage: [P.curve() == E for P in E.gens()]
[True, True]
}}}
There is no problem when the database is not installed, since then the
generators are computed on E itself. But with the database, an
isomorphism is applied to the generators on the database curve to this
curve (in this case it is the identity map) and somewhere in that process
E is replaced by a copy.
--
--
Ticket URL: <http://trac.sagemath.org/sage_trac/ticket/10999#comment:1>
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.