This unique book provides concepts and background necessary to understand and build algorithms for computing the elementary functions. The author presents and structures the algorithms (hardware-oriented as well as software-oriented), and also discusses issues related to accurate floating-point implementation. The purpose is not to give "cookbook recipes" that allow one to implement a given function, but rather to provide the reader with tools necessary to build, or adapt, algorithms to their specific computing environment.
The expanded second edition contains a number of revisions and additions, which incorporate numerous new results obtained during the last few years. New algorithms invented since 1997 – such as Matula’s bipartite method, another table-based method due to Ercegovac, Lang, Tisserand, and Muller – as well as a new chapter on multiple-precision arithmetic have been added. In addition, the section on correct rounding of elementary functions has been fully reworked, also in the context of new results. Finally, the introductory presentation of floating-point arithmetic has been expanded, with more emphasis given to the use of the fused multiply-accumulate instruction. The book is an up-to-date presentation of information needed to understand and accurately use mathematical functions and algorithms in computational work and design. Graduates, professionals, and researchers in scientific computing, software engineering, and computer engineering will find the book a useful reference and resource.