Thread Links Date Links
Thread Prev Thread Next Thread Index Date Prev Date Next Date Index

Re: Information



Am 05.09.2013 13:59, schrieb Ralph Baker Kearfott:
Can someone please clarify or confirm to me how we view
the EDP?  In particular, the only practical difference I see
between the EDP and a correctly rounded dot product
(the present state of P-1788's plan) is that a possible
EDP operation must return some representation of
the exact result (not a standard floating point number),
whereas the correctly rounded dot product must return
a floating point number the same AS IF the dot product
were first computed exactly, then rounded according to
the rounding mode in effect.

Thus, if my interpretation is right, the only additional requirement
of the EDP over the correctly rounded DP is that a representation
from which the exact result can be recovered be available. Wouldn't
whether or not that result is subsequently rounded into a floating point
number then be up to the programmer or user?

Baker



Baker,


Let R = R(b, l, e1, e2) be the floating-point system, b the base, l the number of matissa digits.
A variable of type "complete" would be a fixed-point variable with d = t + 2
e2+2l+|2e1| digits of base b. For n<= bt , every sum of n floating-point products can be represented as a variable of type complete. Moreover, every such sum can be computed in a (local) store (or register) of length d without loss of information.
If A is a variable of type complete and x and y are floating-point numbers, the function call

dotadd(A, x, y) or the assignment A := A + xy  adds the double length product xy to the variable A exactly. The EDP of two vectors x = x[i] and y = y[i] is now easily implemented with a variable A of type complete as follows:

A := 0;
for i:= 1 to n do dotadd( A, x[i], y[i]);
z := ○(A);

The last statement then rounds the value of type complete (to nearest, upward, downward, or to the least including interval depending on the rounding symbol o) to the type of z. Here z could be of any higher precision.

For example the method of defect correction requires highly accurate computation of expressions of the form
a
b + cd + ef  with vectors  a, b, c, d, e, f.  The result involving 3n multiplications and 3n -1 additions is produced with no roundings after the additions and multiplications. Digit cancellations as in a conventional floating-point computation do no occur here. Then the exact result can be rounded to a desired precision.

Best regards
Ulrich

P.S.: I shall be out of town for a couple of days.



-- 
Karlsruher Institut für Technologie (KIT)
Institut für Angewandte und Numerische Mathematik
D-76128 Karlsruhe, Germany
Prof. Ulrich Kulisch

Telefon: +49 721 608-42680
Fax: +49 721 608-46679
E-Mail: ulrich.kulisch@xxxxxxx
www.kit.edu
www.math.kit.edu/ianm2/~kulisch/

KIT - Universität des Landes Baden-Württemberg 
und nationales Großforschungszentrum in der 
Helmholtz-Gesellschaft