[Cryptography] floating point

Henry Baker hbaker1 at pipeline.com
Wed Dec 24 14:48:21 EST 2014


At 07:03 PM 12/23/2014, John Denker wrote:
>On 12/23/2014 02:05 PM, Dave Horsfall wrote:
>
>> I still remain astonished, that, since Babbage/Lovelace/Turing/etc, that 
>> many alleged programmers still do not know that 0.0 != 0.
>> 
>> Never compare floating-point numbers for equality; I think Henry Spencer 
>> said that (I've actually shook hands with him, and a better bloke you 
>> would never meet).
>
>I have no idea what that is trying to say, but whatever it is,
>that's not the right way to say it.

"Either IEEE = is not an identity predicate or *** IEEE atan is not a function, ***
because 0.0=-0.0, but atan(0.0,-0.0)!=atan(-0.0,-0.0); due to this and other reasons,
IEEE -0.0 is an *** algebraic abomination. ***"  [Not a function because x=y, but
f(x) != f(y); a.k.a. not "referentially transparent".]

http://home.pipeline.com/~hbaker1/ObjectIdentity.html

IEEE floating point representation of x is basically a braindamaged approximation
to asinh(x) [including the "gradual underflow" part!], e.g., braindamaged because
in floating point, the exponent & the mantissa are in different number bases. 
The astronomers get this one right (Google astronomy + asinh); the audio engineers
(mu-law&A-law) screwed this one up.



More information about the cryptography mailing list