Vladimir_M comments on Specification failure - Less Wrong Discussion
You are viewing a comment permalink. View the original post to see all comments and the full post content.
You are viewing a comment permalink. View the original post to see all comments and the full post content.
Comments (18)
cousin_it:
That depends on the concrete numerical application. Typically you'd define some threshold for the difference, and use "abs(x-y)<threshold" instead of "x==y", or some variation on that theme. But exact bit-by-bit equality comparisons of floats practically never make sense, since even very simple arithmetic will likely produce rounding errors, so seeing '==' between floats almost always means that something nonsensical is going on. (See e.g. here for some elaboration.)
These issues with limited floating point precision make numerical programming extremely tricky. You have a whole alternative set of rules for arithmetic, very different from those you normally follow on paper.