Formal Verification of IA-64 Division Algorithms

The IA-64 architecture defers floating point and integer division to software. To ensure correctness and maximum efficiency, Intel provides a number of recommended algorithms which can be called as subroutines or inlined by compilers and assembly language programmers. All these algorithms have been subjected to formal verification using the HOL Light theorem prover. As well as improving our level of confidence in the algorithms, the formal verification process has led to a better understanding of the underlying theory, allowing some significant efficiency improvements.

[1]  J. Strother Moore,et al.  A Mechanically Checked Proof of the AMD5K86TM Floating Point Division Program , 1998, IEEE Trans. Computers.

[2]  R. Petit A Tutorial Introduction , 1980 .

[3]  Bernhard Schölkopf,et al.  A Tutorial Introduction , 2001 .

[4]  Carole Dulong,et al.  The IA-64 Architecture at Work , 1998, Computer.

[5]  Peter W. Markstein,et al.  IA-64 and elementary functions - speed and precision , 2000 .

[6]  M. Gordon,et al.  Introduction to HOL: a theorem proving environment for higher order logic , 1993 .

[7]  John Robert Harrison,et al.  Theorem proving with the real numbers , 1998, CPHC/BCS distinguished dissertations.

[8]  Srinivas Nedunuri The functional approach to programming , 2000, SOEN.

[9]  John Harrison,et al.  A Machine-Checked Theory of Floating Point Arithmetic , 1999, TPHOLs.

[10]  David M. Russinoff A Mechanically Checked Proof of IEEE Compliance of the Floating Point Multiplication, Division and Square Root Algorithms of the AMD-K7™ Processor , 1998, LMS J. Comput. Math..

[11]  C. Seger,et al.  Formally Verifying IEEE Compliance of Floating-Point Hardware , 2022 .

[12]  MA John Harrison PhD Theorem Proving with the Real Numbers , 1998, Distinguished Dissertations.

[13]  Peter W. Markstein Computation of Elementary Functions on the IBM RISC System/6000 Processors , 1990, IBM J. Res. Dev..

[14]  Ansi Ieee,et al.  IEEE Standard for Binary Floating Point Arithmetic , 1985 .

[15]  Marius A. Cornea-Hasegan,et al.  Proving the IEEE Correctness of Iterative Floating-Point Square Root , Divide , and Remainder Algorithms , 1998 .

[16]  Matt Kaufmann,et al.  A Mechanically Checked Proof of the , 1998 .

[17]  Michael J. C. Gordon,et al.  Edinburgh LCF: A mechanised logic of computation , 1979 .

[18]  John Harrison,et al.  HOL Light: A Tutorial Introduction , 1996, FMCAD.