2 ms·
I can't see it. I've no idea what problem was solved by the current weird IEEE behavior. It must have been a biggy because this solution means your domain now
by derriz 4y ago
I can't see it. I've no idea what problem was solved by the current weird IEEE behavior.
It must have been a biggy because this solution means your domain now loses the property that, in general, x == x. This property is a fundamental axiomatic feature of any notion of equality. A non-reflexive equality isn't just weird - it's daft/stupid/surprising.
- morelisp 4y ago> I've no idea what problem was solved by the current weird IEEE behavior. The same problem that's solved by having a lot of proofs say "for all y != 0, ..." If NaN == NaN, then you can no longer assume that x/z == y/z implies x == y. Which is also a fundamental (though non-axiomatic) result of arithmetic! NaN is an effort to represent partial functions in code that usually expects totality. It's not the best way but it's pretty good, and making NaN == NaN is also not how we'd do it with decades of hindsight.