#8003: EllipticCurve('522j1').sha().an_padic(13) fails
-------------------------------+--------------------------------------------
   Reporter:  rlm              |       Owner:  cremona   
       Type:  defect           |      Status:  new       
   Priority:  major            |   Milestone:  sage-4.3.2
  Component:  elliptic curves  |    Keywords:            
     Author:                   |    Upstream:  N/A       
   Reviewer:                   |      Merged:            
Work_issues:                   |  
-------------------------------+--------------------------------------------
Description changed by rlm:

Old description:

> This is because the quadratic twist parameter `D` needs to be cast to an
> integer, but after the following patch it still fails.
> {{{
> diff -r 0133676998bd sage/schemes/elliptic_curves/sha_tate.py
> --- a/sage/schemes/elliptic_curves/sha_tate.py  Tue Jan 19 10:28:48 2010
> -0800
> +++ b/sage/schemes/elliptic_curves/sha_tate.py  Tue Jan 19 13:05:47 2010
> -0800
> @@ -424,7 +424,7 @@
>                  if Et.conductor() < Nmin and valuation(Et.conductor(),2)
> <= valuation(DD,2):
>                      Nmin = Et.conductor()
>                      Dmax = DD
> -            D = Dmax
> +            D = ZZ(Dmax)
>              Et = self.E.quadratic_twist(D)
>              lp = Et.padic_lseries(p)
>          else :
> }}}
> This time the failure is:
> {{{
> sage: EllipticCurve('522j1').sha().an_padic(13)
> ---------------------------------------------------------------------------
> ValueError                                Traceback (most recent call
> last)
>
> /Users/rlmill/sage-4.3.1.rc1/devel/sage-main/<ipython console> in
> <module>()
>
> /Users/rlmill/sage-4.3.1.rc1/local/lib/python2.6/site-
> packages/sage/schemes/elliptic_curves/sha_tate.pyc in an_padic(self, p,
> prec, use_twists)
>     504             not_yet_enough_prec = True
>     505             while not_yet_enough_prec:
> --> 506                 lps =
> lp.Dp_valued_series(n,quadratic_twist=D,prec=r+1)
>     507                 lstar = [lps[0][r],lps[1][r]]
>     508                 verbose("the leading terms : %s"%lstar)
>
> /Users/rlmill/sage-4.3.1.rc1/local/lib/python2.6/site-
> packages/sage/schemes/elliptic_curves/padic_lseries.pyc in
> Dp_valued_series(self, n, quadratic_twist, prec)
>    1038         E = self._E
>    1039         p = self._p
> -> 1040         lps = self.series(n, quadratic_twist=quadratic_twist,
> prec=prec)
>    1041
>    1042         # now split up the series in two lps = G + H * alpha
>
> /Users/rlmill/sage-4.3.1.rc1/local/lib/python2.6/site-
> packages/sage/schemes/elliptic_curves/padic_lseries.pyc in series(self,
> n, quadratic_twist, prec)
>     934                     raise ValueError, "quadratic_twist (=%s) must
> be a fundamental discriminant of a quadratic field"%D
>     935             if gcd(D,self._p*self._E.conductor()) != 1:
> --> 936                 raise ValueError, "quadratic twist (=%s) must be
> coprime to p (=%s) and the conductor of the curve (%s)
> "%(D,self._p,self._E.conductor())
>     937
>     938         p = self._p
>
> ValueError: quadratic twist (=-3) must be coprime to p (=13) and the
> conductor of the curve (174)
> }}}

New description:

 This is because the quadratic twist parameter `D` needs to be cast to an
 integer, but after [attachment:trac_8003-make_D_in_ZZ_only.patch] it still
 fails:
 {{{
 sage: EllipticCurve('522j1').sha().an_padic(13)
 ---------------------------------------------------------------------------
 ValueError                                Traceback (most recent call
 last)

 /Users/rlmill/sage-4.3.1.rc1/devel/sage-main/<ipython console> in
 <module>()

 /Users/rlmill/sage-4.3.1.rc1/local/lib/python2.6/site-
 packages/sage/schemes/elliptic_curves/sha_tate.pyc in an_padic(self, p,
 prec, use_twists)
     504             not_yet_enough_prec = True
     505             while not_yet_enough_prec:
 --> 506                 lps =
 lp.Dp_valued_series(n,quadratic_twist=D,prec=r+1)
     507                 lstar = [lps[0][r],lps[1][r]]
     508                 verbose("the leading terms : %s"%lstar)

 /Users/rlmill/sage-4.3.1.rc1/local/lib/python2.6/site-
 packages/sage/schemes/elliptic_curves/padic_lseries.pyc in
 Dp_valued_series(self, n, quadratic_twist, prec)
    1038         E = self._E
    1039         p = self._p
 -> 1040         lps = self.series(n, quadratic_twist=quadratic_twist,
 prec=prec)
    1041
    1042         # now split up the series in two lps = G + H * alpha

 /Users/rlmill/sage-4.3.1.rc1/local/lib/python2.6/site-
 packages/sage/schemes/elliptic_curves/padic_lseries.pyc in series(self, n,
 quadratic_twist, prec)
     934                     raise ValueError, "quadratic_twist (=%s) must
 be a fundamental discriminant of a quadratic field"%D
     935             if gcd(D,self._p*self._E.conductor()) != 1:
 --> 936                 raise ValueError, "quadratic twist (=%s) must be
 coprime to p (=%s) and the conductor of the curve (%s)
 "%(D,self._p,self._E.conductor())
     937
     938         p = self._p

 ValueError: quadratic twist (=-3) must be coprime to p (=13) and the
 conductor of the curve (174)
 }}}

--

-- 
Ticket URL: <http://trac.sagemath.org/sage_trac/ticket/8003#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.


Reply via email to