Opened 6 years ago

Last modified 21 months ago

#17903 new defect

Wrong approximation for taylor series of L-series for elliptic curves on 32 bits architecture.

Reported by: tmonteil Owned by:
Priority: major Milestone: sage-6.6
Component: elliptic curves Keywords: sdl
Cc: Merged in:
Authors: Reviewers:
Report Upstream: N/A Work issues:
Branch: Commit:
Dependencies: Stopgaps:

Status badges

Description (last modified by tmonteil)

On 32-bits systems, #16997 introduces the following behaviour:

sage: L = EllipticCurve('37a').lseries()
sage: L.taylor_series(10)
0.990010459847588 + 0.0191338632530789*z - 0.0197489006172923*z^2 + 0.0137240085327618*z^3 - 0.00703880791607153*z^4 + 0.00280906165766519*z^5 + O(z^6)

Which is very far from the value before #16997 (which stay unchanged on 64 bits architecture).

Note the following gap when increasing the precision by 1 bit (at 54 bits, the value coincides with the one before #16997):

sage: L.taylor_series(10, prec=53)
0.990010459847588 + 0.0191338632530789*z - 0.0197489006172923*z^2 + 0.0137240085327618*z^3 - 0.00703880791607153*z^4 + 0.00280906165766519*z^5 + O(z^6)

sage: L.taylor_series(10, prec=54)
0.997997869801216 + 0.00140712894524909*z - 0.000498127610959923*z^2 + 0.000118835596665833*z^3 - 0.0000215906522442074*z^4 + (3.20363155415891e-6)*z^5 + O(z^6)

Direct evaluation leads to the same problem:

sage: L.dokchitser(prec=53)(10)
0.990010459847588
sage: L.dokchitser(prec=54)(10)
0.997997869801216

Change History (3)

comment:1 Changed 6 years ago by tmonteil

  • Description modified (diff)

comment:2 Changed 6 years ago by vdelecroix

Did you do an upstream report to pari and/or Tim Dokchitser?

comment:3 Changed 21 months ago by tmonteil

  • Keywords sdl added
Note: See TracTickets for help on using tickets.