Computing

, Volume 30, Issue 3, pp 189–199

# Least significant bit evaluation of arithmetic expressions in single-precision

• S. M. Rump
• H. Böhm
Article

## Abstract

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.

65G05 65F99

## Key words

Inclusion automatic verification of correctness roundig error high accuracy error estimation

# Bestmögliche Einschließung des Wertes eines arithmetischen Ausdrucks in einfachgenauer Rechnung

## Zusammenfassung

Durch 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.

## References

1. [1]
Alefeld, G., Herzberger, J.: Einführung in die Intervallrechnung. Mannheim-Wien-Zürich: Bibliographisches Institut 1974.Google Scholar
2. [2]
Bohlender, G.: Floating-point computation of functions with maximum accuracy. IEEE Trans. on Computers1977.Google Scholar
3. [3]
Kulisch, U.: Grundlagen des numerischen Rechnens. (Reihe Informatik, 19.) Mannheim-Wien-Zürich: Bibliographisches Institut 1976.Google Scholar
4. [4]
Kulisch, U., Miranker, W. L.: Computer arithmetic in theory and practice. Academic Press 1982.Google Scholar
5. [5]
Rump, S. M.: Solving non-linear systems with least significant bit accuracy. Computing29, 183–200 (1982).
6. [6]
Stoer, J.: Einführung in die Numerische Mathematik I. (Heidelberger Taschenbücher, Bd. 105.) Berlin-Heidelberg-New York: Springer 1972.Google Scholar