There are two possibilities:  either Sage is sending the wrong input
to Simon's script and/or reading its output wrongly;  or there's a bug
in his script.  Both of these have occurred in the past!

One thing you should definitely do in the latter case is to email
Denis Simon directly (his web page is http://www.math.unicaen.fr/~simon/).
But first you should make sure that the problem is there and not with
the Sage interface.  Looking at the error messages (and checking that
there is still a problem in sage-4.6.1.alpha3 -- you did not say which
version you were using!)  it looks as if it is caused by the upgrade
in Sage from an older pari version to the newer one which happened
with sage-4.6.  If I am right, then the problem would be solved by
changing Simon's script, which seems to mean that this is his bug and
not Sage's.

John Cremona

On Jan 5, 2:28 am, Iwao Kimura <i...@sci.u-toyama.ac.jp> wrote:
> Hi list,
>
> I have noticed that D. Simon's algebraic 2-descent does not
> work properly for some elliptic curves defined over real quadratic
> fields. So I'd like to forward his message to this list.
>
> I think that this defect seems similar to those reported in ticket #9322, 
> #8829,
> but I'm not a specialist in these topics, am greatly appreciate your help.
>
> best regards.
>
>
>
>
>
>
>
> ---------- Forwarded message ----------
> From:  <s-yokoy...@math.kyushu-u.ac.jp>
> Date: 2011/1/5
> To: Iwao Kimura <i...@sci.u-toyama.ac.jp>
>
> Bug-report: Simon's two-descent alg.
>
> this algorithm does return bounds on the rank of
> Mordell-Weil group, and a list of independent points.
> So I want to compute when K=QQ(sqrt(43)) : real quad.
> However, it doesn't work (nor on Sage Notebook).
>
> > Q43.<a>=QuadraticField(43);
> > eps = UnitGroup(Q43).fundamental_units()[0];
> > E = EllipticCurve(Q43, [0, 1728*eps]);
> > dscnt = E.simon_two_descent(verbose=1); dscnt
>
> ::
>
> courbe elliptique : Y^2 = x^3 + Mod(917568*y - 6016896, y^2 - 43)
>
> [ omitted ]
>
>  ***   array index (1) out of allowed range [none]:
>  ***   ...iv,r=nfsqrt(nf,norm(zc))[1];if(DEBUGLEVEL_ell
>                                    ^--------------------
> ------------------------------------------------------------------------
> ---
> NameError                                 Traceback (most recent call
> last)
>
> /Users/yokoemon/<ipython console> in <module>()
>
> /Applications/sage/local/lib/python2.6/site-packages/sage/schemes/
> elliptic_curves/ell_number_field.pyc in simon_two_descent(self, verbose,
> lim1, lim3, limtriv, maxprob, limbigprime)
>    196         t = simon_two_descent(self,
>    197                               verbose=verbose, lim1=lim1, lim3=
> lim3, limtriv=limtriv,
> --> 198                               maxprob=maxprob, limbigprime=
> limbigprime)
>    199         prob_rank = Integer(t[0])
>    200         two_selmer_rank = Integer(t[1])
>
> /Applications/sage/local/lib/python2.6/site-packages/sage/schemes/
> elliptic_curves/gp_simon.pyc in simon_two_descent(E, verbose, lim1, lim3,
>  limtriv, maxprob, limbigprime)
>    110     def _gp_mod(*args):
>    111         return args[0]
> --> 112     ans = sage_eval(v, {'Mod': _gp_mod, 'y': K.gen(0)})
>    113     inv_transform = F.isomorphism_to(E)
>    114     ans[2] = [inv_transform(F(P)) for P in ans[2]]
>
> /Applications/sage/local/lib/python2.6/site-packages/sage/misc/sage_eval.
> pyc in sage_eval(source, locals, cmds, preparse)
>    197         return locals['_sage_eval_returnval_']
>    198     else:
> --> 199         return eval(source, sage.all.__dict__, locals)
>    200
>    201
>
> /Applications/sage/local/lib/python2.6/site-packages/sage/all.pyc in <
> module>()
> NameError: name 'ans' is not defined
>
> ::
>
> if K=QQ(sqrt(41)), it works well.
>
> > Q41.<a>=QuadraticField(41);
> > eps = UnitGroup(Q41).fundamental_units()[0];
> > E = EllipticCurve(Q41, [0, 1728*eps]);
> > dscnt = E.simon_two_descent(verbose=1); dscnt
>
> courbe elliptique : Y^2 = x^3 + Mod(8640*y + 55296, y^2 - 41)
> points triviaux sur la courbe = [[1, 1, 0]]
>  point trouve = [Mod(-377788/93025*y - 1952448/93025, y^2 - 41),
> Mod(-205379776/28372625*y - 1032512096/28372625, y^2 - 41)]
> #S(E/K)[2]    = 4
> #E(K)/2E(K)  >= 2
> #III(E/K)[2] <= 2
> rang(E/K)    >= 1
>  III devrait etre un carre, donc
> #E(K)/2E(K)  = 4
> #III(E/K)[2] = 1
> rang(E/K)    = 2
> listpointsmwr = [[Mod(-377788/93025*y - 1952448/93025, y^2 - 41),
> Mod(-205379776/28372625*y - 1032512096/28372625, y^2 - 41)]]
> (2, 2, [(-377788/93025*a - 1952448/93025 : -205379776/28372625*a -
> 1032512096/28372625 : 1)])
>
> If someone have any comments,
> would you mind telling me about the problem??
>
> Best wishes,
>
> Shun'ichi Yokoyama
> Faculty of Mathematics, Kyushu University, Japan
> s-yokoy...@math.kyushu-u.ac.jp
>
> --
> ---
> Iwao KIMURA
> Dept. Math. University of Toyama, Japan.

-- 
To post to this group, send email to sage-support@googlegroups.com
To unsubscribe from this group, send email to 
sage-support+unsubscr...@googlegroups.com
For more options, visit this group at 
http://groups.google.com/group/sage-support
URL: http://www.sagemath.org

Reply via email to