Handbook of Floating-Point Arithmetic

  • Jean-Michel Muller
  • Nicolas Brisebarre
  • Florent de Dinechin
  • Claude-Pierre Jeannerod
  • Vincent Lefèvre
  • Guillaume Melquiond
  • Nathalie Revol
  • Damien Stehlé
  • Serge Torres

Table of contents

  1. Front Matter
    Pages i-xxiii
  2. Introduction, Basic Definitions, and Standards

    1. Front Matter
      Pages 1-1
    2. Jean-Michel Muller, Nicolas Brisebarre, Florent de Dinechin, Claude-Pierre Jeannerod, Vincent Lefèvre, Guillaume Melquiond et al.
      Pages 3-12
    3. Jean-Michel Muller, Nicolas Brisebarre, Florent de Dinechin, Claude-Pierre Jeannerod, Vincent Lefèvre, Guillaume Melquiond et al.
      Pages 13-53
    4. Jean-Michel Muller, Nicolas Brisebarre, Florent de Dinechin, Claude-Pierre Jeannerod, Vincent Lefèvre, Guillaume Melquiond et al.
      Pages 55-116
  3. Cleverly Using Floating-Point Arithmetic

    1. Front Matter
      Pages 117-117
    2. Jean-Michel Muller, Nicolas Brisebarre, Florent de Dinechin, Claude-Pierre Jeannerod, Vincent Lefèvre, Guillaume Melquiond et al.
      Pages 119-150
    3. Jean-Michel Muller, Nicolas Brisebarre, Florent de Dinechin, Claude-Pierre Jeannerod, Vincent Lefèvre, Guillaume Melquiond et al.
      Pages 151-179
    4. Jean-Michel Muller, Nicolas Brisebarre, Florent de Dinechin, Claude-Pierre Jeannerod, Vincent Lefèvre, Guillaume Melquiond et al.
      Pages 181-204
    5. Jean-Michel Muller, Nicolas Brisebarre, Florent de Dinechin, Claude-Pierre Jeannerod, Vincent Lefèvre, Guillaume Melquiond et al.
      Pages 205-235
  4. Implementing Floating-Point Operators

    1. Front Matter
      Pages 237-237
    2. Jean-Michel Muller, Nicolas Brisebarre, Florent de Dinechin, Claude-Pierre Jeannerod, Vincent Lefèvre, Guillaume Melquiond et al.
      Pages 239-267
    3. Jean-Michel Muller, Nicolas Brisebarre, Florent de Dinechin, Claude-Pierre Jeannerod, Vincent Lefèvre, Guillaume Melquiond et al.
      Pages 269-320
    4. Jean-Michel Muller, Nicolas Brisebarre, Florent de Dinechin, Claude-Pierre Jeannerod, Vincent Lefèvre, Guillaume Melquiond et al.
      Pages 321-372
  5. Elementary Functions

    1. Front Matter
      Pages 373-373
    2. Jean-Michel Muller, Nicolas Brisebarre, Florent de Dinechin, Claude-Pierre Jeannerod, Vincent Lefèvre, Guillaume Melquiond et al.
      Pages 375-404
    3. Jean-Michel Muller, Nicolas Brisebarre, Florent de Dinechin, Claude-Pierre Jeannerod, Vincent Lefèvre, Guillaume Melquiond et al.
      Pages 405-459
  6. Extensions

    1. Front Matter
      Pages 461-461
    2. Jean-Michel Muller, Nicolas Brisebarre, Florent de Dinechin, Claude-Pierre Jeannerod, Vincent Lefèvre, Guillaume Melquiond et al.
      Pages 463-491
    3. Jean-Michel Muller, Nicolas Brisebarre, Florent de Dinechin, Claude-Pierre Jeannerod, Vincent Lefèvre, Guillaume Melquiond et al.
      Pages 493-516

About this book

Introduction

Floating-point arithmetic is by far the most widely used way of implementing real-number arithmetic on modern computers. Although the basic principles of floating-point arithmetic can be explained in a short amount of time, making such an arithmetic reliable and portable, yet fast, is a very difficult task. From the 1960s to the early 1980s, many different arithmetics were developed, but their implementation varied widely from one machine to another, making it difficult for nonexperts to design, learn, and use the required algorithms. As a result, floating-point arithmetic is far from being exploited to its full potential.

This handbook aims to provide a complete overview of modern floating-point arithmetic, including a detailed treatment of the newly revised (IEEE 754-2008) standard for floating-point arithmetic. Presented throughout are algorithms for implementing floating-point arithmetic as well as algorithms that use floating-point arithmetic. So that the techniques presented can be put directly into practice in actual coding or design, they are illustrated, whenever possible, by a corresponding program.

Key topics and features include:

* Presentation of the history and basic concepts of floating-point arithmetic and various aspects of the past and current standards

* Development of smart and nontrivial algorithms, and algorithmic possibilities induced by the availability of a fused multiply-add (fma) instruction, e.g., correctly rounded software division and square roots

* Implementation of floating-point arithmetic, either in software—on an integer processor—or hardware, and a discussion of issues related to compilers and languages

* Coverage of several recent advances related to elementary functions: correct rounding of these functions and computation of very accurate approximations under constraints

* Extensions of floating-point arithmetic such as certification, verification, and big precision

Handbook of Floating-Point Arithmetic is designed for programmers of numerical applications, compiler designers, programmers of floating-point algorithms, designers of arithmetic operators, and more generally, students and researchers in numerical analysis who wish to better understand a tool used in their daily work and research.
 

Keywords

Algorithms Hardware algorithm computer number theory numerical analysis operator verification

Authors and affiliations

  • Jean-Michel Muller
    • 1
  • Nicolas Brisebarre
    • 2
  • Florent de Dinechin
    • 3
  • Claude-Pierre Jeannerod
    • 4
  • Vincent Lefèvre
    • 5
  • Guillaume Melquiond
    • 6
  • Nathalie Revol
    • 7
  • Damien Stehlé
    • 8
  • Serge Torres
    • 9
  1. 1.CNRS, Labo. Informatique du Parallélisme (LIP)École Normale Supérieure de LyonLyon CX 07France
  2. 2.CNRS, Labo. Informatique du Parallélisme (LIP)École Normale Supérieure de LyonLyon CX 07France
  3. 3.CNRS UMR 5668, Labo. Informatique du Parallelisme (LIP)Ecole Normale Supérieure de LyonLyon CX 07France
  4. 4.Labo. Informatique du Parallélisme (LIP), INRIAEcole Normale Supérieure de LyonLyon CX 07France
  5. 5.Labo. Informatique du Parallélisme (LIP), INRIAEcole Normale Supérieure de LyonLyon CX 07France
  6. 6.INRIA Saclay - Île-de-FranceOrsay CXFrance
  7. 7.Labo. Informatique du Parallélisme (LIP), INRIAEcole Normale Supérieure de LyonLyon CX 07France
  8. 8.University of Sydney, School of Mathematics and StatisticsCNRS, Macquarie University, andSydneyAustralia
  9. 9.CNRS UMR 5668, Labo. Informatique du Parallelisme (LIP)Ecole Normale Supérieure de LyonLyon CX 07France

Bibliographic information

  • DOI https://doi.org/10.1007/978-0-8176-4705-6
  • Copyright Information Birkhäuser Boston 2010
  • Publisher Name Birkhäuser Boston
  • eBook Packages Mathematics and Statistics
  • Print ISBN 978-0-8176-4704-9
  • Online ISBN 978-0-8176-4705-6
  • About this book