Elementary Functions: Algorithms and Implementation
By addebook • Jul 3rd, 2008 • Category: Mathematics •
Elementary Functions: Algorithms and Implementation

Elementary Functions: Algorithms and Implementation
By Jean-Michel Muller
Publisher: Birkhäuser Boston
Number Of Pages: 266
Publication Date: 2005-10-24
ISBN-10 / ASIN: 0817643729
ISBN-13 / EAN: 9780817643720
Binding: Hardcover
“An important topic, which is on the boundary between numerical analysis and computer science. I found the book well written and containing much interesting material, most of the time disseminated in specialized papers published in specialized journals difficult to find. Moreover, there are very few books on these topics and they are not recent.”
Numerical Algorithms (review of the first edition)
This unique book provides concepts and background necessary to understand and build algorithms for computing the elementary functionssine, cosine, tangent, exponentials, and logarithms. 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 for their specific computing environment.
This 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 1997such as Matulas bipartite method, another table-based method due to Ercegovac, Lang, Tisserand, and Mulleras well as new chapters on multiple-precision arithmetic and examples of implementation 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. Graduate and advanced undergraduate students, professionals, and researchers in scientific computing, numerical analysis, software engineering, and computer engineering will find the book a useful reference and resource.
Summary: Excelent book
Rating: 5
For those interested in computer arithmetics this is the right book to start with…Excelent references to the state of the art and related work.
Summary: When every bit matters
Rating: 5
Most people use floating point arithmetic in a fairly cavalier way. They treat double precision numbers as exact. And, although people use commercial libraries for transcendentals and the like, they seem unconcerned when they need to implement an offbeat function or approximation. Everyone knows the Taylor series for exp(x), for example, so how hard could it be to code that up? (Answer: easy to code, and equally easy to do very badly.)
In fact, IEEE standard arithmetic can not even represent 1/3 exactly. (If that’s news to you, or if you think the difference doesn’t matter, you should back off and find some introductory material before attacking this book). Also, orthogonal polynomials will give better accuracy and more controllable error than Taylor series, for polynomial approximations of given degree - over a decimal digit more accuracy, in a project I worked on recently. The first three chapters go over those basics, then get into the book’s real content.
The next chapters address table-based methods - and tables appear at one point or another in many implementations.Then the author presents iterative techniques for square roots (and 1/sqrt, which is often more convenient), logs exponentials, and trig functions. Although accuracy is paramount, these algorithms also emphasize fast convergence using inexpensive operations. The next section, on shift-and-add algorithms, presents advanced, accurate, efficient algorithms including CORDIC. This section requires close attention, since this book is about principles rather than cut-and-paste coding, so people without immediate implementation needs might come back to it to give it the effort it requires. The book’s last section deals with range reduction, i.e. converting the problem to a more tightly bounded one, where the algorithm’s behavior can be better undestood and controlled. It also deals with rounding and other quirky cases in floating point arithmetic.
This book isn’t for everyone - in fact, not many people these days need to implement “library” functions on their own. As a result, knowledge of implementing them well is increasingly scarce. If you end up in the unusual position of having to implement them yourself, possibly using an exotic computing technology, then this book will help you get the last possible bit of accuracy, and to get it as fast as possible.
– wiredweird
Summary: Clear and complete
Rating: 5
The book clearly explains the most important algorithms used by computers to compute many mathematical functions, with plenty of actual examples.
It is not a list of algorithms and tables, but rather a recipe book; actual computation of values and tables is left to the reader, better equipped with some numerical analysis package.
Despite the title, the methods can be applied (with some effort) to a broad set of functions (including many that are not usually considered “elementary”, like Bessel or Gudermannian functions).
An extensive bibliography is included.
A must for those who are involved in designing and implementing such functions for a computer, but also an enjoyable reading for those who wonder how some functions can be computed.
Free Download Links
http://rapidshare.com/files/71979361/Elementary_Functions_Algorithms_and_Implementation.pdf


