Processing math: 100%

Author(s): Jean-Michel Muller
title: Handbook of floating point arithmetic
Publisher: Birkhäuser Verlag
Pages: xxii+572
Year: 2010
ISBN: 978-0-8176-4704-9 (hardcover)
Price (tentative): 160.93 € (net)
URL: www.springer.com/birkhauser/mathematics/book/978-0-8176-4704-9
Short description:
Everything and more that anyone should or would want to know about floating point arithmetic, nitpicking at bit level, the atoms of numerical computation.

Bull. BMS: vol. 22(1), p.174-175, 2015
MSC main category: 65
MSC category: 65Y99
previous | next | 
list this 25 ↑ BMS survey ↑ 

cover

Review:

Floating point arithmetic is at the heart of all numerical computations. Computers have a large, but finite memory, which means that only a finite set of (truncated) real numbers can be represented, and this will cause a rounding error in almost all elementary operations with real numbers in a digital (binary or decimal) computer. This handbook gives all what anybody would like to know about floating point computations. Some famous disasters caused by rounding errors give an immediate motivation. The complexity of the problem becomes clear when the different possible internal representations of real numbers and the different rounding rules are described. This explains the need for specifications known as IEEE standards (both 754-1985 as well as 754-2008 are described). This is the content of part 1. These standards specify in detail how any computer should react, under possible rounding rules. With this tool, it is then possible to estimate the rounding errors that will occur during the numerical computations, how one should best implement algorithms for any elementary operation (other than the most elementary shifts and adds) such as division and multiplication of real (or complex) numbers, sum of n reals, square root calculation, dot product, polynomial evaluation, etc. It is also explained how several compilers deal with these issues (C, C++, java, Fortran), and how the algorithms for the four basic arithmetic operations and the square root are implemented, both in hardware and in software. This is explained in parts 2 and 3. The next step (part 4) is to look at other elementary functions (sine, cosine, logarithm, exponential,...) which are transcendental, and hence need some approximation method (often polynomial or rational). One would like to have for these functions a result that is, within the allowable accuracy of the computer, the best possible result. However, being transcendent, it is impossible ingeneral to predict the number of digits needed in the intermediate results to guaranteean optimal accuracy in the final result. There is a special chapter dedicated to this mattershowing that for these functions, usually satisfactory solutions to this problem exist.Part 5 presents some extensions of the previous ideas (automatic proofs, double and multipleprecision, new internal representations, etc.). Finally in a short part 6, an outlook to the future, and an appendix of number theory tools(e.g., continued fractions) are give.

This is a book about the basics of numerical computations and it is nitpicking on bits, the atoms of computing,in each and every elementary step. Yet we meet a whole spectrum of tools, from formalmathematical proofs, approximation algorithms, software, hardware, and engineeringcraftsmanship. It is a book that should be in any library that has a section on numerics. It is a standard work that every numerical analyst, computer scientist, or in fact anybodywho needs floating point computing, should know, if not in detail, then he should atleast grasp its main ideas.`

Reviewer: A. Bultheel (KU Leuven) January 23, 2013