Menu

#4963 zeta overflows in the float path although the answer is an ordinary double

None
open
nobody
zeta (6)
5
16 hours ago
16 hours ago
No

zeta(-171.5) raises a raw Lisp FLOATING-POINT-OVERFLOW although the value is about 4.7e172

Maxima 5.49post, SBCL 2.6.7.

(%i1) display2d:false$
(%i2) print(errcatch(zeta(-171.5)))$
arithmetic error FLOATING-POINT-OVERFLOW signalled
Operation was (* 2.8058498116293125e117 2.3113331555690383e192).
[]
(%i3) print(errcatch(block([fpprec:30], bfloat(zeta(-343/2)))))$
[4.73930233055054501360661283736b172]
(%i4) print(errcatch(zeta(-200.5)))$
arithmetic error FLOATING-POINT-OVERFLOW signalled
Operation was (* 1.1730174409425867e144 3.798766268157843e231).
[]

Expected: (%o2) = 4.7393023305505450e172, comfortably inside double range, as the bigfloat path in (%i3) shows.

An intermediate gamma/factorial factor overflows even though the product does not.

Discussion


Log in to post a comment.