On Thu, 25 Mar 2010 05:26:12 am Alexander Belopolsky wrote:
> Mark, I wonder if you could describe an algorithm off the top of your
> head that relies on NaN == NaN being false.
I don't know whether "relies on" is appropriate, but consider:
def myfunc(x, y):
if x == y:
return 1.0
else:
return something_complicated**(x-y)
Optimising floating point code is fraught with dangers (the above fails
for x=y=INF as well as NAN) but anything that make Not A Numbers
pretend to be numbers is a bad thing.
I'd like to turn the question around ... what algorithms are there that
rely on NaN == NaN being True?
--
Steven D'Aprano