1.

Record Nr.

UNINA9910254091103321

Autore

Muller Jean-Michel

Titolo

Elementary Functions [[electronic resource] ] : Algorithms and Implementation / / by Jean-Michel Muller

Pubbl/distr/stampa

Boston, MA : , : Birkhäuser Boston : , : Imprint : Birkhäuser, , 2016

ISBN

1-4899-7983-2

Edizione

[3rd ed. 2016.]

Descrizione fisica

1 online resource (XXV, 283 p. 40 illus.)

Disciplina

515.0285

Soggetti

Computer mathematics

Algorithms

Numerical analysis

Applied mathematics

Engineering mathematics

Computational Science and Engineering

Numeric Computing

Applications of Mathematics

Lingua di pubblicazione

Inglese

Formato

Materiale a stampa

Livello bibliografico

Monografia

Nota di contenuto

Introduction -- Introduction to Computer Arithmetic -- Part I: Algorithms Based on Polynomial Approximation and/or Table Lookup, Multiple-Precision Evaluation of Functions -- The Classical Theory of Polynomial or Rational Approximations -- Polynomial Approximations with Special Constraints -- Polynomial Evaluation -- Table-Based Methods -- Multiple-Precision Evaluation of Functions -- Part II: Shift-and-Add Algorithms -- Introduction to Shift-and-Add Algorithms -- The CORDIC Algorithm -- Some Other Shift-and-Add Algorithms -- Part III: Range Reduction, Final Rounding, and Exceptions -- Range Reduction -- Final Rounding -- Miscellaneous -- Examples of Implementation -- References -- Index.

Sommario/riassunto

This textbook presents the concepts and tools necessary to understand, build, and implement algorithms for computing elementary functions (e.g., logarithms, exponentials, and the trigonometric functions). Both hardware- and software-oriented algorithms are included, along with issues related to accurate floating-



point implementation. This third edition has been updated and expanded to incorporate the most recent advances in the field, new elementary function algorithms, and function software. After a preliminary chapter that briefly introduces some fundamental concepts of computer arithmetic, such as floating-point arithmetic and redundant number systems, the text is divided into three main parts. Part I considers the computation of elementary functions using algorithms based on polynomial or rational approximations and using table-based methods; the final chapter in this section deals with basic principles of multiple-precision arithmetic. Part II is devoted to a presentation of “shift-and-add” algorithms (hardware-oriented algorithms that use additions and shifts only). Issues related to accuracy, including range reduction, preservation of monotonicity, and correct rounding, as well as some examples of implementation are explored in Part III. Numerous examples of command lines and full programs are provided throughout for various software packages, including Maple, Sollya, and Gappa. New to this edition are an in-depth overview of the IEEE-754-2008 standard for floating-point arithmetic; a section on using double- and triple-word numbers; a presentation of new tools for designing accurate function software; and a section on the Toom-Cook family of multiplication algorithms. The techniques presented in this book will be of interest to implementers of elementary function libraries or circuits and programmers of numerical applications. Additionally, graduate and advanced undergraduate students, professionals, and researchers in scientific computing, numerical analysis, software engineering, and computer engineering will find this a useful reference and resource. PRAISE FOR PREVIOUS EDITIONS “[T]his book seems like an essential reference for the experts (which I'm not). More importantly, this is an interesting book for the curious (which I am). In this case, you'll probably learn many interesting things from this book. If you teach numerical analysis or approximation theory, then this book will give you some good examples to discuss in class." — MAA Reviews (Review of Second Edition) "The rich content of ideas sketched or presented in some detail in this book is supplemented by a list of over three hundred references, most of them of 1980 or more recent. The book also contains some relevant typical programs." — Zentralblatt MATH (Review of Second Edition) “I think that the book will be very valuable to students both in numerical analysis and in computer science. I found [it to be] well written and containing much interesting material, most of the time disseminated in specialized papers published in specialized journals difficult to find." — Numerical Algorithms (Review of First Edition).