## Formal Verification of Floating Point Trigonometric Functions (2000)

### Cached

### Download Links

- [www.cl.cam.ac.uk]
- [www.cl.cam.ac.uk]
- [www.cl.cam.ac.uk]
- DBLP

### Other Repositories/Bibliography

Venue: | Formal Methods in Computer-Aided Design: Third International Conference FMCAD 2000, volume 1954 of Lecture Notes in Computer Science |

Citations: | 32 - 5 self |

### BibTeX

@INPROCEEDINGS{Harrison00formalverification,

author = {John Harrison},

title = {Formal Verification of Floating Point Trigonometric Functions},

booktitle = {Formal Methods in Computer-Aided Design: Third International Conference FMCAD 2000, volume 1954 of Lecture Notes in Computer Science},

year = {2000},

pages = {217--233},

publisher = {Springer-Verlag}

}

### Years of Citing Articles

### OpenURL

### Abstract

Abstract. We have formal verified a number of algorithms for evaluating transcendental functions in double-extended precision floating point arithmetic in the Intel ® IA-64 architecture. These algorithms are used in the Itanium TM processor to provide compatibility with IA-32 (x86) hardware transcendentals, and similar ones are used in mathematical software libraries. In this paper we describe in some depth the formal verification of the sin and cos functions, including the initial range reduction step. This illustrates the different facets of verification in this field, covering both pure mathematics and the detailed analysis of floating point rounding. 1

### Citations

548 |
Concrete Mathematics: A Foundation for Computer Science
- Graham, Knuth, et al.
- 1994
(Show Context)
Citation Context ...erating this generative procedure starting with just 0/1 and 1/1 generates all rational numbers between 0 and 1 in their lowest terms; this can be presented as the Farey sequence or Stern-Brocot tree =-=[6]-=-. We can now easily generate convergents to any real number x by binary chop: if we have p1/q1 < x < p2/q2 with p2q1 = p1q2 + 1, we simply form the mediant fraction p/q and iterate either with p1/q1 a... |

120 |
A Floating-Point Technique for Extending the Available Precision
- Dekker
- 1971
(Show Context)
Citation Context ...he best-known instance is subtraction of nearby quantities; cf. Theorem 4.3.1 of [14]: |- a ∈ iformat fmt ∧ b ∈ iformat fmt ∧ a / &2 <= b ∧ b <= &2 * a =⇒ (b - a) ∈ iformat fmt Another classic result =-=[12, 4]-=- shows that we can obtain the sum of two floating point numbers exactly in two parts, one a rounding error in the other, by performing the floating point addition then subtracting both summands from t... |

103 | On The Rapid Computation of Various Polylogarithmic Constants
- Bailey, Borwein, et al.
- 1997
(Show Context)
Citation Context ...quate for the accuracies we needed for this proof, but for more precise approximations to π, we would probably need to exploit more efficient approximation methods for π such as the remarkable series =-=[1]-=- which we have already formally verified in HOL: π = Σ ∞ m=0 1 4 ( 16m 8m + 1 − 2 8m + 4 − 1 8m + 5 − 1 8m + 6 ) 4.2 Bounding the reduced argument Armed with the ability to find arbitrarily good ratio... |

92 | Theorem Proving with the Real Numbers
- Harrison
- 1998
(Show Context)
Citation Context ...ed. 3 HOL floating point theory The verification described here is conducted in the HOL Light theorem prover [7], and the formal proofs are founded on formalized HOL theories of mathematical analysis =-=[9]-=- and floating point arithmetic [10]. Because of space limitations, we cannot describe these theories in great detail here, but we will sketch a few highlights, particularly of the floating point mater... |

88 |
C.P.: Edinburgh LCF: A Mechanised Logic
- Gordon, Milner, et al.
- 1979
(Show Context)
Citation Context ...pe this will suffice for the reader to follow the explicit HOL theorems given below. HOL Light is a highly foundational theorem proving system using the methodology first established by Edinburgh LCF =-=[5]-=-. ‘LCF style’ provers explicitly generate proofs in terms of extremely low-level primitive inferences, in order to provide a high level of assurance that the proofs are valid. In HOL Light, as in most... |

71 | HOL light: A tutorial introduction
- Harrison
- 1996
(Show Context)
Citation Context ...arithmetic, however, require some care if unacceptably high rounding errors are to be avoided. 3 HOL floating point theory The verification described here is conducted in the HOL Light theorem prover =-=[7]-=-, and the formal proofs are founded on formalized HOL theories of mathematical analysis [9] and floating point arithmetic [10]. Because of space limitations, we cannot describe these theories in great... |

50 |
The Functional Approach to Programming
- COUSINEAU, MAUNY
- 1998
(Show Context)
Citation Context ...sually stored permanently, but the strict reduction to primitive inferences is maintained by the abstract type system of the interaction and implementation language, which for HOL Light is CAML Light =-=[3, 17]-=-. The primitive inference rules of HOL Light, which implements a simply typed classical higher order logic, are very simple. However CAML Light also serves as a programming medium allowing higher-leve... |

36 |
A Concise Introduction to the Theory of Numbers
- Baker
- 1984
(Show Context)
Citation Context ... can be found via an arbitrary method and the property checked formally by plugging the numbers into the above theorem. The most popular method for finding such ‘convergents’ uses continued fractions =-=[2]-=-. We use instead a procedure that is in general less efficient but is simpler to program in our context, creating convergents iteratively by calculating the mediant of two fractions. If we have two fr... |

36 |
Floating-point Computation
- Sterbenz
- 1974
(Show Context)
Citation Context ...ound fmt rc x = x) = x ∈ iformat fmt) There are a number of situations where arithmetic operations are exact. Perhaps the best-known instance is subtraction of nearby quantities; cf. Theorem 4.3.1 of =-=[14]-=-: |- a ∈ iformat fmt ∧ b ∈ iformat fmt ∧ a / &2 <= b ∧ b <= &2 * a =⇒ (b - a) ∈ iformat fmt Another classic result [12, 4] shows that we can obtain the sum of two floating point numbers exactly in two... |

35 | A Machine-Checked Theory of Floating Point Arithmetic
- Harrison
- 1999
(Show Context)
Citation Context ...e verification described here is conducted in the HOL Light theorem prover [7], and the formal proofs are founded on formalized HOL theories of mathematical analysis [9] and floating point arithmetic =-=[10]-=-. Because of space limitations, we cannot describe these theories in great detail here, but we will sketch a few highlights, particularly of the floating point material where there is less established... |

23 |
Table-lookup algorithms for elementary functions and their error analysis
- Tang
- 1991
(Show Context)
Citation Context ...lving as they do a sophisticated range reduction step followed by a tricky computation carefully designed to minimize rounding error. They are somewhat atypical in that they do not use a table lookup =-=[16]-=-, but otherwise seem to show off most of the interesting features. 2 Outline of the algorithm The algorithm is intended to provided accurate double-extended approximations for sin(x) and cos(x) where ... |

21 | The computation of transcendental functions on the IA-64 architecture
- Harrison, Kubaska, et al.
- 1999
(Show Context)
Citation Context .../fdlibm.serrors are much less a concern when the overall computation is for single or double precision. It is relatively easy to design simple, fast and accurate algorithms of the sort Intel provides =-=[11]-=-. For double-extended precision functions — such as the IA-32 hardware transcendentals — much more care and subtlety is required in the design [15] and the formal verifications are significantly more ... |

18 |
Quasi double-precision in floating-point addition
- Moller
- 1965
(Show Context)
Citation Context ...he best-known instance is subtraction of nearby quantities; cf. Theorem 4.3.1 of [14]: |- a ∈ iformat fmt ∧ b ∈ iformat fmt ∧ a / &2 <= b ∧ b <= &2 * a =⇒ (b - a) ∈ iformat fmt Another classic result =-=[12, 4]-=- shows that we can obtain the sum of two floating point numbers exactly in two parts, one a rounding error in the other, by performing the floating point addition then subtracting both summands from t... |

16 | New Algorithms for Improved Transcendental Function on
- Story, Tang
- 1999
(Show Context)
Citation Context ...t and accurate algorithms of the sort Intel provides [11]. For double-extended precision functions — such as the IA-32 hardware transcendentals — much more care and subtlety is required in the design =-=[15]-=- and the formal verifications are significantly more difficult. In the present paper, to avoid repetition and dilution, we focus on the formal verification of an algorithm for a particular pair of fun... |

11 | Verifying the accuracy of polynomial approximations in HOL
- Harrison
- 1997
(Show Context)
Citation Context ... automated in a regular way. In fact, the polynomialbounding routine can be used separately, and is used at another point in this proof. The approach used is a little different from that described in =-=[8]-=-, though the way it is used in the proof is the same. The fundamental fact underlying the polynomial bounding rule is that the maximum of a polynomial (as for any differentiable function) lies either ... |

10 |
Le langage Caml. Intereditions
- Leroy, Weis
- 1993
(Show Context)
Citation Context ...sually stored permanently, but the strict reduction to primitive inferences is maintained by the abstract type system of the interaction and implementation language, which for HOL Light is CAML Light =-=[3, 17]-=-. The primitive inference rules of HOL Light, which implements a simply typed classical higher order logic, are very simple. However CAML Light also serves as a programming medium allowing higher-leve... |

6 |
Sur le calcul effectif des polynomes d’approximation de Tchebychef
- Remes
- 1934
(Show Context)
Citation Context ...= 1 − x2 2! + x5 5! + x4 4! − x7 7! − x6 6! + . . . + . . . but with the pre-stored coefficients computed numerically to minimize the maximum error over r’s range, using the so-called Remez algorithm =-=[13]-=-. The actual evaluations of the truncated power series in floating point arithmetic, however, require some care if unacceptably high rounding errors are to be avoided. 3 HOL floating point theory The ... |

3 | A machine-checked theory of point arithmetic - Harrison - 1999 |

2 | Sur le calcul eectif des polynomes d'approximation de Tchebichef. Comptes Rendus Hebdomadaires des Seances de l'Academie des Sciences - Remes - 1934 |

1 | Quasi double-precision in addition - Mller - 1965 |