#15299: Incorrect results for analytic Sha due to low precision
-------------------------------------------------+-------------------------
       Reporter:  jdemeyer                       |        Owner:
           Type:  defect                         |       Status:
       Priority:  major                          |  positive_review
      Component:  elliptic curves                |    Milestone:  sage-
       Keywords:                                 |  pending
        Authors:  Jeroen Demeyer                 |   Resolution:
Report Upstream:  Fixed upstream, but not in a   |    Merged in:
  stable release.                                |    Reviewers:  Peter
         Branch:                                 |  Bruin
   Dependencies:  #15337                         |  Work issues:
                                                 |       Commit:
                                                 |     Stopgaps:
-------------------------------------------------+-------------------------
Changes (by jdemeyer):

 * upstream:  N/A => Fixed upstream, but not in a stable release.


Old description:

> See [https://groups.google.com/forum/#!topic/sage-support/rYQ4rWyncG4]
> {{{
> sage: E = EllipticCurve(QQ,[0, 0, 1, -79, 342]);
> E.sha().an(),E.sha().an_numerical()
> (0, 1.00000000000000)
> sage: E.lseries().deriv_at1(100*sqrt(E.conductor()) + 10)  # L1,
> error_bound
> (1.94655218772191e-15, 1.82478252135394e-270)
> }}}
>
> This seems to be due to inappropriate use of Python floats instead of
> more precise real numbers. After the patch:
> {{{
> sage: E = EllipticCurve(QQ,[0, 0, 1, -79, 342]);
> E.sha().an(),E.sha().an_numerical()
> (1.00000000000000, 1.00000000000000)
> sage: E.lseries().deriv_at1(100*sqrt(E.conductor()) + 10)  # L1,
> error_bound
> (-4.32787398660869448751904675450772492666840247314688171540527473331725818170217268435223462033366791557160872926179439894639315476270837428785657638252738603056742447337636326343956370276624493916496382120766160023620812331280787034239648552009947468067829864968026720015203778821069593806584e-277,
> 1.82478252137476307223140369768561190028055347258560054363485475966241792307587640145132294203994875344783110100551912347495775160520204557245032474939095251969168953786545612090565728262067746413119194690260652692254781091147749697957445424152473292233020112755190503925812425294821095313979e-270)
> }}}

New description:

 See [https://groups.google.com/forum/#!topic/sage-support/rYQ4rWyncG4]
 {{{
 sage: E = EllipticCurve(QQ,[0, 0, 1, -79, 342]);
 E.sha().an(),E.sha().an_numerical()
 (0, 1.00000000000000)
 sage: E.lseries().deriv_at1(100*sqrt(E.conductor()) + 10)  # L1,
 error_bound
 (1.94655218772191e-15, 1.82478252135394e-270)
 }}}

 This seems to be due to inappropriate use of Python floats instead of more
 precise real numbers. After the patch:
 {{{
 sage: E = EllipticCurve(QQ,[0, 0, 1, -79, 342]);
 E.sha().an(),E.sha().an_numerical()
 (1.00000000000000, 1.00000000000000)
 sage: E.lseries().deriv_at1(100*sqrt(E.conductor()) + 10)  # L1,
 error_bound
 
(-4.32787398660869448751904675450772492666840247314688171540527473331725818170217268435223462033366791557160872926179439894639315476270837428785657638252738603056742447337636326343956370276624493916496382120766160023620812331280787034239648552009947468067829864968026720015203778821069593806584e-277,
 
1.82478252137476307223140369768561190028055347258560054363485475966241792307587640145132294203994875344783110100551912347495775160520204557245032474939095251969168953786545612090565728262067746413119194690260652692254781091147749697957445424152473292233020112755190503925812425294821095313979e-270)
 }}}

 While working on this, we found an upstream PARI bug: the precision for
 `exponential_integal_1()` was not as good as it could be.

--

Comment:

 Reported the precision issue, they fixed it. There is supposed to be an
 absolute error bound (not relative), but I don't know what the bound is...

--
Ticket URL: <http://trac.sagemath.org/ticket/15299#comment:27>
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.

Reply via email to