Am 21.04.2015 um 22:36 schrieb Oliver Heimlich:
The only place, where IEEE 754 specific arithmetic is actually used in
the standard document, is in chapter 12.12.12 (reduction operations on
IEEE 754 data types), where arithmetic with NaNs and signed zeros is
required. Again, this only applies if the implementation supports IEEE
754 data types.
Oliver Heimlich
*Comment: *The entire section 12.12.12./Reduction operations /would be
superfluous if in the section 12.13.5 /Exact reduction operations/ the
*should* would be replaced by *shall*. All operations in 12.12.12. would
then be simple consequences.*
****
**The logic behind all this:* We have two problems:
Problem A: compute dot products exactly,
Problem B: compute dot products correctly rounded.
Evidently a method that solves A also solves B. The opposite is not true!
Problem B looks simpler than problem A. So P1788 requires B.
But in fact solving A is much simpler and faster than all known
solutions of B that ignore A.
In the document P1788 the dot product should already be mentioned in
/4.2 Definitions,/ in particular in:/
//4.2.6. arithmetic operations.*
**A basic arithmetic operation* /is one of the seven fuctions +, -, ×,
÷, fused multiply add (fma), dot product (dot), and square root (sqrt).
There is no reason why the dot product should be given less weight than
fused multiply-add, and there are good reasons for listing it under
basic arithmetic operations (speed and accuracy). In an early draft of
P1788 it was indeed listed here.
The dot product is a fundamental operation in Numerical Analysis. It
allows a simple and very fast implementation on computers. *The exact
dot product* is the key operation for variable precision interval and
floating-point arithmetic. It would be a highlight of P1788.
Best wishes
Ulrich