From 275e4bef0c5027517163a50248cf417308d6bde7 Mon Sep 17 00:00:00 2001 From: Peter Bruin Date: Thu, 27 Mar 2014 10:56:16 +0000 Subject: [PATCH] fix a bug in Denis Simon's 2-descent program --- src/ext/pari/simon/ell.gp | 7 +++++-- src/sage/schemes/elliptic_curves/gp_simon.py | 7 +++++++ 2 files changed, 12 insertions(+), 2 deletions(-) diff --git a/src/ext/pari/simon/ell.gp b/src/ext/pari/simon/ell.gp index c93535adcd7..0d130f460cd 100644 --- a/src/ext/pari/simon/ell.gp +++ b/src/ext/pari/simon/ell.gp @@ -1776,8 +1776,11 @@ if( DEBUGLEVEL_ell >= 2, print(" reduced: Y^2 = ",lift(redq[1]))); \\ Search for a point on the quartic point = nfratpoint(nf,pol,LIM1,1); found = point != []; -\\ If no point is found, check if it is ELS - if( !found && !loc, + if( found, + loc = 1 + ); +\\ If the quartic is not known to be ELS, check if it is + if( !loc, if( bigflag, loc = nflocallysoluble(nf,pol,r,a,b) , loc = nflocallysoluble(nf,pol,0,1,1) diff --git a/src/sage/schemes/elliptic_curves/gp_simon.py b/src/sage/schemes/elliptic_curves/gp_simon.py index 19ce2db15fa..752dee76dba 100644 --- a/src/sage/schemes/elliptic_curves/gp_simon.py +++ b/src/sage/schemes/elliptic_curves/gp_simon.py @@ -60,6 +60,13 @@ def simon_two_descent(E, verbose=0, lim1=5, lim3=50, limtriv=10, maxprob=20, lim sage: E.simon_two_descent() (1, 1, [(-1 : 0 : 1)]) + Check that :trac:`16022` is fixed:: + + sage: K. = NumberField(x^4 + x^2 - 7); + sage: E = EllipticCurve(K, [1, 0, 5*y^2 + 16, 0, 0]) + sage: E.simon_two_descent(lim1=2, limtriv=3) # long time (about 3 s) + (1, 1, [(-369/25*y^3 + 539/25*y^2 - 1178/25*y + 1718/25 : -27193/125*y^3 + 39683/125*y^2 - 86816/125*y + 126696/125 : 1)]) + """ init()