Re: Motion P1788.1/M004.01
On Sat, 14 May 2016 12:18:20 -0400, Lee Winter wrote, replying to John Pryce:
> > The 1788 standard *is* based on the mathematical real numbers, ...
>
> That will always be a point of ongoing debate. For example, can you
> present a finite sequence of numerical operations that produces a true
> mathematical infinity?
Obviously not, since there are no infinite Real numbers. What's the point?
> For example, '1788 states that "zero" times "infinity" is "zero".
No it doesn't. It says that this deviation from the 754 standard
would be useful for implementing interval arithmetic by computing
with the floating-numbers used for representing the bounds. The
reason is that 1788 is indeed based on Reals, and not on Extended
Reals (in the affine sense), which is the model underlying 754.
> But '754 does not have "zeros" or "infinities". It has underflows
> and overflows.
No -- 754 does have true (exact) zeros and infinities -- as well as
(inexact) zeroes and infinities resulting from underflow or overflow.
Unfortunately 754 has no easy way to track the distinction. It can
do so for a single operation by careful use of the IEEE flags, but
has no way (unlike Unum, for example) to track the distinction in the
value. The 1788 decorations are one way to address these issues, but
they are not available in 754, which compounds the issue by heavily
overloading the meaning of NaN (as well as zero and infinities).
> A narrow FP representation might produce an overflow, while a wider
> representation would not. If you misinterpret the overflows as a kind of
> infinity, then the narrow representation produces an "infinite" result, ...
No it does not. It produces a result stating that the upper bound is
not known, and this uncertainty is properly propagated.
Michel.
---Sent: 2016-05-14 16:44:04 UTC