7,052 research outputs found
On relative errors of floating-point operations: optimal bounds and applications
International audienceRounding error analyses of numerical algorithms are most often carried out via repeated applications of the so-called standard models of floating-point arithmetic. Given a round-to-nearest function fl and barring underflow and overflow, such models bound the relative errors E 1 (t) = |t − fl(t)|/|t| and E 2 (t) = |t − fl(t)|/|fl(t)| by the unit roundoff u. This paper investigates the possibility and the usefulness of refining these bounds, both in the case of an arbitrary real t and in the case where t is the exact result of an arithmetic operation on some floating-point numbers. We show that E 1 (t) and E 2 (t) are optimally bounded by u/(1 + u) and u, respectively, when t is real or, under mild assumptions on the base and the precision, when t = x ± y or t = xy with x, y two floating-point numbers. We prove that while this remains true for division in base β > 2, smaller, attainable bounds can be derived for both division in base β = 2 and square root. This set of optimal bounds is then applied to the rounding error analysis of various numerical algorithms: in all cases, we obtain significantly shorter proofs of the best-known error bounds for such algorithms, and/or improvements on these bounds themselves
Parallel Algorithms for Summing Floating-Point Numbers
The problem of exactly summing n floating-point numbers is a fundamental
problem that has many applications in large-scale simulations and computational
geometry. Unfortunately, due to the round-off error in standard floating-point
operations, this problem becomes very challenging. Moreover, all existing
solutions rely on sequential algorithms which cannot scale to the huge datasets
that need to be processed.
In this paper, we provide several efficient parallel algorithms for summing n
floating point numbers, so as to produce a faithfully rounded floating-point
representation of the sum. We present algorithms in PRAM, external-memory, and
MapReduce models, and we also provide an experimental analysis of our MapReduce
algorithms, due to their simplicity and practical efficiency.Comment: Conference version appears in SPAA 201
Computing hypergeometric functions rigorously
We present an efficient implementation of hypergeometric functions in
arbitrary-precision interval arithmetic. The functions , ,
and (or the Kummer -function) are supported for
unrestricted complex parameters and argument, and by extension, we cover
exponential and trigonometric integrals, error functions, Fresnel integrals,
incomplete gamma and beta functions, Bessel functions, Airy functions, Legendre
functions, Jacobi polynomials, complete elliptic integrals, and other special
functions. The output can be used directly for interval computations or to
generate provably correct floating-point approximations in any format.
Performance is competitive with earlier arbitrary-precision software, and
sometimes orders of magnitude faster. We also partially cover the generalized
hypergeometric function and computation of high-order parameter
derivatives.Comment: v2: corrected example in section 3.1; corrected timing data for case
E-G in section 8.5 (table 6, figure 2); adjusted paper siz
Modern Computer Arithmetic (version 0.5.1)
This is a draft of a book about algorithms for performing arithmetic, and
their implementation on modern computers. We are concerned with software more
than hardware - we do not cover computer architecture or the design of computer
hardware. Instead we focus on algorithms for efficiently performing arithmetic
operations such as addition, multiplication and division, and their connections
to topics such as modular arithmetic, greatest common divisors, the Fast
Fourier Transform (FFT), and the computation of elementary and special
functions. The algorithms that we present are mainly intended for
arbitrary-precision arithmetic. They are not limited by the computer word size,
only by the memory and time available for the computation. We consider both
integer and real (floating-point) computations. The book is divided into four
main chapters, plus an appendix. Our aim is to present the latest developments
in a concise manner. At the same time, we provide a self-contained introduction
for the reader who is not an expert in the field, and exercises at the end of
each chapter. Chapter titles are: 1, Integer Arithmetic; 2, Modular Arithmetic
and the FFT; 3, Floating-Point Arithmetic; 4, Elementary and Special Function
Evaluation; 5 (Appendix), Implementations and Pointers. The book also contains
a bibliography of 236 entries, index, summary of notation, and summary of
complexities.Comment: Preliminary version of a book to be published by Cambridge University
Press. xvi+247 pages. Cite as "Modern Computer Arithmetic, Version 0.5.1, 5
March 2010". For further details, updates and errata see
http://wwwmaths.anu.edu.au/~brent/pub/pub226.html or
http://www.loria.fr/~zimmerma/mca/pub226.htm
Toward accurate polynomial evaluation in rounded arithmetic
Given a multivariate real (or complex) polynomial and a domain ,
we would like to decide whether an algorithm exists to evaluate
accurately for all using rounded real (or complex) arithmetic.
Here ``accurately'' means with relative error less than 1, i.e., with some
correct leading digits. The answer depends on the model of rounded arithmetic:
We assume that for any arithmetic operator , for example or , its computed value is , where is bounded by some constant where , but
is otherwise arbitrary. This model is the traditional one used to
analyze the accuracy of floating point algorithms.Our ultimate goal is to
establish a decision procedure that, for any and , either exhibits
an accurate algorithm or proves that none exists. In contrast to the case where
numbers are stored and manipulated as finite bit strings (e.g., as floating
point numbers or rational numbers) we show that some polynomials are
impossible to evaluate accurately. The existence of an accurate algorithm will
depend not just on and , but on which arithmetic operators and
which constants are are available and whether branching is permitted. Toward
this goal, we present necessary conditions on for it to be accurately
evaluable on open real or complex domains . We also give sufficient
conditions, and describe progress toward a complete decision procedure. We do
present a complete decision procedure for homogeneous polynomials with
integer coefficients, {\cal D} = \C^n, and using only the arithmetic
operations , and .Comment: 54 pages, 6 figures; refereed version; to appear in Foundations of
Computational Mathematics: Santander 2005, Cambridge University Press, March
200
- …