Least significant bit evaluation of arithmetic expressions in single-precision

Single-precision floatingpoint computations may yield an arbitrary false result due to cancellation and rounding errors. This is true even for very simple, structured arithmetic expressions such as Horner's scheme for polynomial evaluation. A simple procedure will be presented for fast calculation of the value of an arithmetic expression to least significant bit accuracy in single precision computation. For this purpose in addition to the floating-point arithmetic only a precise scalar product (cf. [2]) is required. If the initial floatingpoint approximation is not too bad, the computing time of the new algorithm is approximately the same as for usual floating-point computation. If not, the essential progress of the presented algorithm is that the inaccurate approximation is recognized and corrected. The algorithm achieves high accuracy, i.e. between the left and the right bound of the result there is at most one more floating-point number. A rigorous estimation of all rounding errors introduced by floating-point arithmetic is given for general triangular linear systems. The theorem is applied to the evaluation of arithmetic expressions.ZusammenfassungDurch Auslöschung und Rundungsfehler können in Gleitpunktrechnungen beliebig große Fehler entstehen. Dies trifft bereits zu für sehr einfache, strukturierte Ausdrücke wie etwa das Horner Schema zur Auswertung von Polynomen. Hier wird ein einfacher Algorithmus vorgestellt zur schnellen Berechnung des Wertes eines arithmetischen Ausdrucks. Der Wert wird in einfacher Genauigkeit „eingeschlossen”, d. h. es werden Schranken für den Wert berechnet. Zu diesem Zweck wird zusätzlich zu den vier (Gleitpunkt-) Grundrechnungsarten nur ein genaues Skalarprodukt benötigt (s. [2]). Wenn die erste Gleitpunkt-Approximation nicht zu schlecht ist, ist die Rechenzeit des neuen Algorithmus von der gleichen Größenordnung wie die für gewöhnliche Gleitpunktrechnung. Andernfalls wird, und das ist der wesentliche Fortschritt, die Ungenauigkeit der Näherung festgestellt und korrigiert. Die Genauigkeit der Einschließung ist fast bestmöglich, d. h. zwischen linker und rechter Grenze liegt maximal eine weitere Gleitpunktzahl. Eine rigorose Fehlerabschätzung aller Rundungsfehler durch Gleitpunkt-Arithmetik für allgemeine lineare Gleichungssysteme mit Dreiecksmatrix wird gegeben. Der Satz wird auf die Auswertung arithmetischer Ausdrücke angewandt.