| Karim BELABAS on Fri, 21 Feb 2003 20:08:07 +0100 (MET) |
[Date Prev] [Date Next] [Thread Prev] [Thread Next] [Date Index] [Thread Index]
| Re: peculiar zeta() behavior |
On Tue, 18 Feb 2003, Igor Schein wrote:
> ? for(k=70,100,print(k" "zeta(1-1/2^k-2^18)))
[...]
> 79 9.206091509744517478696623193 E1097349
> *** user interrupt after 23,496 ms.
>
> looks like bad things start happening near a large negative odd
> integer.
Well, when the input becomes undistinguishable from an integer, zeta starts
using the standard formula zeta(k) = -B_(1-k)/(1-k). Unfortunately, this
triggers the computation of the whole table of Bernoulli numbers, instead of
using the asymptotic approximation for B_n ( \pm 2 n!/(2Pi)^n, n even ),
which is precise enough in this range... [ using approximate values,
the computation is done using the functional equation, with the approximation
zeta(n) = 1 if n is large, so no problem occurs... ]
Fixed.
> This is very related:
>
> http://www.math.mcgill.ca/goren/ZetaValues/zeta.html#explanations
If you can reproduce some of the bugs he found out, I'm interested.
Karim.
--
Karim Belabas Tel: (+33) (0)1 69 15 57 48
Dép. de Mathématiques, Bât. 425 Fax: (+33) (0)1 69 15 60 19
Université Paris-Sud Email: Karim.Belabas@math.u-psud.fr
F-91405 Orsay (France) http://www.math.u-psud.fr/~belabas/
--
PARI/GP Home Page: http://www.parigp-home.de/