An Efficient Rounding Boundary Test for (x, y) in Double Precision

The correct rounding of the function pow: (x, y) rarrx y is currently based on Ziv's iterative approximation process. In order to ensure its termination, cases when x y falls on a rounding-boundary must be filtered out. Such rounding-boundaries are floating-point numbers and midpoints between t...

Ausführliche Beschreibung

Gespeichert in:
Bibliographische Detailangaben
Veröffentlicht in:IEEE transactions on computers 2009-02, Vol.58 (2), p.197-207
Hauptverfasser: Lauter, C.Q., Lefevre, V.
Format: Artikel
Sprache:eng
Schlagworte:
Online-Zugang:Volltext bestellen
Tags: Tag hinzufügen
Keine Tags, Fügen Sie den ersten Tag hinzu!
Beschreibung
Zusammenfassung:The correct rounding of the function pow: (x, y) rarrx y is currently based on Ziv's iterative approximation process. In order to ensure its termination, cases when x y falls on a rounding-boundary must be filtered out. Such rounding-boundaries are floating-point numbers and midpoints between two consecutive floating-point numbers. Detecting rounding-boundaries for pow is a difficult problem. Previous approaches use repeated square root extraction followed by repeated square and multiply. This paper presents a new rounding-boundary test for pow in double precision, which reduces this to a few comparisons with precomputed constants. These constants are deduced from worst cases for the Table Maker's Dilemma, searched over a small subset of the input domain. This is a novel use of such worst-case bounds. The resulting algorithm has been designed for a fast-on-average correctly rounded implementation of pow, considering the scarcity of rounding-boundary cases. It does not stall average computations for rounding-boundary detection. This paper includes its correctness proof and experimental results.
ISSN:0018-9340
1557-9956
DOI:10.1109/TC.2008.202