[squeak-dev] fdlibm 1.0 exp is not the closest approximation of E

Nicolas Cellier nicolas.cellier.aka.nice at gmail.com
Mon Dec 27 19:09:45 UTC 2010


It seems that
    1.0 exp = (Float classPool at: #E)
is now false with the fdlibm version, at leat on Cog/MacOSX.

(Float classPool at: #E) is the closest Float approximation of e,
which you can check with:
(1.0 asArbitraryPrecisionFloatNumBits: 200) exp asFloat = (Float
classPool at: #E)

It's bad that fdlibm be able to compute (1.0e32 cos) with less than
1/2 ulp error, but (1.0 exp) with more than 1/2 ulp !

Nicolas



More information about the Squeak-dev mailing list