Interval Semantics for Standard Floating-Point Arithmetic

Reading time: 6 minute
...

📝 Original Info

  • Title: Interval Semantics for Standard Floating-Point Arithmetic
  • ArXiv ID: 0810.4196
  • Date: 2008-10-24
  • Authors: Researchers from original ArXiv paper

📝 Abstract

If the non-zero finite floating-point numbers are interpreted as point intervals, then the effect of rounding can be interpreted as computing one of the bounds of the result according to interval arithmetic. We give an interval interpretation for the signed zeros and infinities, so that the undefined operations 0*inf, inf - inf, inf/inf, and 0/0 become defined. In this way no operation remains that gives rise to an error condition. Mathematically questionable features of the floating-point standard become well-defined sets of reals. Interval semantics provides a basis for the verification of numerical algorithms. We derive the results of the newly defined operations and consider the implications for hardware implementation.

💡 Deep Analysis

Deep Dive into Interval Semantics for Standard Floating-Point Arithmetic.

If the non-zero finite floating-point numbers are interpreted as point intervals, then the effect of rounding can be interpreted as computing one of the bounds of the result according to interval arithmetic. We give an interval interpretation for the signed zeros and infinities, so that the undefined operations 0*inf, inf - inf, inf/inf, and 0/0 become defined. In this way no operation remains that gives rise to an error condition. Mathematically questionable features of the floating-point standard become well-defined sets of reals. Interval semantics provides a basis for the verification of numerical algorithms. We derive the results of the newly defined operations and consider the implications for hardware implementation.

📄 Full Content

arXiv:0810.4196v1 [cs.NA] 23 Oct 2008 Interval Semantics for Standard Floating-Point Arithmetic W.W. Edmonson North Carolina State University M.H. van Emden University of Victoria Research Report DCS-323-IR Department of Computer Science, University of Victoria Abstract If the non-zero finite floating-point numbers are interpreted as point intervals, then the effect of rounding can be interpreted as computing one of the bounds of the result according to interval arithmetic. We give an interval interpretation for the signed zeros and infinities, so that the undefined operations ±0 ∗±∞, ±∞−±∞, ±∞/ ± ∞, and ±0/ ± 0 become defined. In this way no operation remains that gives rise to an error condition. Mathemat- ically questionable features of the floating-point standard become well-defined sets of reals. Interval semantics provides a basis for the verification of numerical algorithms. We derive the results of the newly defined operations and consider the implications for hardware implementation. Keywords: IEEE floating-point standard, interval arithmetic, NaNs, exceptions 1 Introduction IEEE Standard 754-1985 for Binary Floating-Point Arithmetic [4]1 achieved great success by finding a synthesis of the best features of the existing processors and causing these to be widely adopted in a short time. It was not to be expected that IEEE Standard 754 had a remedy for the fact that none of the existing processors was based on a coherent approach to the fundamental problem of how to approximate on digital processors the operations of arithmetic on reals. An example of the ad-hoc approach taken in IEEE Standard 754 is the introduction of the infinities. Mathematically, there is one advantage: division of a non- zero number by zero becomes defined. But it introduces more exceptions than it removes: 0 ∗±∞, ±∞−±∞, ±∞/ ± ∞, while 0/0 remains undefined. Any improvement to the standard needs to be based on a mathematically convincing approach to the following problem: 1Its successor, IEEE Standard 754-2008 for Floating-Point Arithmetic[5], does not make changes that are relevant to this paper. 1 How to map the arithmetical structure of the reals to a closed, exception-free algebra on a set of computer-representable quantities. In this paper we review results from [3] (see there for earlier references) that allow such an algebra to be based on intervals. Surprisingly, most of the standard carries over unchanged to our algebra. What does not carry over are the error conditions: there are none. Our proposal is based on the idea of interpreting floating-point numbers as sets of reals. The sets of reals include the reals themselves by identifying the singleton sets {x} with x itself, for all reals x. As we will show, this defines an arithmetic that is compatible with arithmetic on the reals. Where it deviates is that division by zero becomes defined. But there is a more important advantage. Any arithmetic that intends to approximate real arithmetic with a finite set of values necessarily introduces uncertainty. For example, in binary floating-point arithmetic the result of dividing 1 by 10 leaves uncertainty concerning the digits from a certain point onwards. Also, as there is necessarily a greatest floating- point number M, there has to be uncertainty about any result that exceeds this maximum. Hence there need to be floating-point numbers that are interpreted as {x ∈R | M ≤x} and as {x ∈R | −M ≥x}. In Section 2 we show how the theoretical advantages of arithmetic on sets of reals becomes practical by restricting these sets to be intervals. We also establish notation and terminology for intervals and floating-point numbers. In Section 3 we define the central feature of this paper: an interval interpretation of each floating-point number. Here we take the view that zero has finite precision. In Section 4 we state theorems that establish that to a large extent the existing floating-point standard already implements the arithmetic operations on floating-point numbers interpreted as intervals. Section 5 treats the case where interval semantics changes the existing definition; Section 6 derives the undefined cases according to interval semantics. Section 7 is a short discussion of infinite-precision zeroes. Finally, in Section 8 we survey the consequences of the new semantics for hardware implementation. 2 Preliminaries 2.1 Floating-point numbers If x is a floating-point number greater than −∞(less than +∞), then x−(x+) is the next smaller (greater) floating-point number. The constant m is defined as the least positive floating-point number and M as the greatest finite floating-point number. 2.2 Intervals “Real intervals” are to be interpreted according to the following definition: a real interval is a closed, connected set of reals. According to a well-known result in topology, such sets take the following forms: {x ∈R | x ≤b}, {x ∈R | a ≤x ≤b}, {x ∈R | a ≤x}, R and 2 ∅. Here a and b are reals such that a ≤b. We denote these sets as (−∞, b], [a, b], [a, +∞), (−∞, +∞)

…(Full text truncated)…

📸 Image Gallery

cover.png page_2.webp page_3.webp

Reference

This content is AI-processed based on ArXiv data.

Start searching

Enter keywords to search articles

↑↓
ESC
⌘K Shortcut