logo inria

Information de meme niveau :

| INédit | Conferences and Events | Press Releases |

-----------------------
DISCRETE MATHEMATICS : Improving computer arithmetic
-----------------------

Version française

Version française

Contents INédit n° 27
Write to the editor

 

By Vincent Lefèvre, Jean-Michel Muller, Laurent Théry and Paul Zimmermann

Polynomials, proofs and efficient algorithms are being used to improve the arithmetic currently available on computers.

Programmers of scientific software who make calls to simple mathematical functions expect to obtain very precise results. They also hope that numerical codes will behave in similar fashion on different machines. These apparently simple expectations sometimes turn out to be very difficult to meet. The reason is that in floating point arithmetic, which is by far the most commonly used because it is fast and can represent large and small values, the result of an addition, a multiplication or division of two machine numbers is not necessarily a machine number. It needs to be rounded off at one of the two machine numbers that surround the exact result.

Since 1985, the IEEE-754 standard has been demanding the "correct round off" in the case of the addition, subtraction, multiplication, division and square root. The point is to adopt an active round off mode towards the closest machine number below or above, in such a way that each machine operation returns the same result as what would have been obtained if the exact result had first been computed with infinite precision and then been rounded off following the active round off mode.

For a long time, however, such a demand remained impossible to meet, in a reasonable amount of time, in the case of elementary functions like the exponential, logarithm, sine etc. With a few exceptions, it is impossible to obtain the exact result for such a function by performing a finite number of arithmetical operations. So, an approximation would have to be computed that, after round off, would give the value that would have been obtained by rounding off the exact result. This problem is called the Table Maker Dilemma since it faced publishers of numerical function tables long before the era of microprocessor design. To solve this problem, it was necessary to approximate the function by polynomials, to determine the points closest to the function whose coordinates are floating point numbers and to find very efficient algorithms. These results will make it possible to write computing programs that guarantee the correct round off and, in a few years, the extension of this demand to elementary functions. At this point, all the arithmetical building blocks (operations and usual functions) of the common programming languages­C, Fortran, Pascal or Ada­will be entirely specified. The numerical quality and portability of programs will thus be improved.

 

Jean-Michel Muller, researcher at CNRS,
project Arénaire at Lyon
Tel.: +33 4 76 61 54 71,
Jean-Michel.Muller@inria.fr

Laurent Théry, researcher at INRIA,
project Lemme at Sophia Antipolis
Tel.: +33 4 92 38 78 16,
Laurent.Thery@inria.fr
Paul Zimmermann, researcher at INRIA,
project Polka at Nancy
Tel.: +33 3 83 59 20 62,
Paul.Zimmermann@inria.fr

Contents INedit 27

 

--------------------------------
© INRIA - Updated 16/01/2001 webmaster@inria.fr Back to top | next | Home page