Elementary Functions

Algorithms and Implementation

  • Jean-Michel Muller

Table of contents

  1. Front Matter
    Pages i-xxii
  2. Introduction

    1. Pages 1-7
  3. Some Basic Things About Computer Arithmetic

  4. Algorithms Based on Polynomial Approximation and/or Table Lookup, Multiple-Precision Evaluation of Functions

  5. Shift-and-Add Algorithms

    1. Front Matter
      Pages 101-101
    2. Pages 133-156
  6. Range Reduction, Final Rounding and Exceptions

    1. Front Matter
      Pages 171-171
    2. Pages 173-191
    3. Pages 193-216
    4. Pages 217-223
  7. Back Matter
    Pages 233-265

About this book


"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 functions—sine, 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 1997—such as Matula’s bipartite method, another table-based method due to Ercegovac, Lang, Tisserand, and Muller—as 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.


Computer science Hardware algorithms computer ksa numerical analysis scientific computing

Authors and affiliations

  • Jean-Michel Muller
    • 1
  1. 1.CNRS-Laboratoire LIPEcole Normale Superieure de LyonLyon Cedex 07France

Bibliographic information