Contributions to the Formal Verification of Arithmetic Algorithms

Erik Martin-Dorel 1, 2
2 ARIC - Arithmetic and Computing
Inria Grenoble - Rhône-Alpes, LIP - Laboratoire de l'Informatique du Parallélisme
Abstract : The Floating-Point (FP) implementation of a real-valued function is performed with correct rounding if the output is always equal to the rounding of the exact value, which has many advantages. But for implementing a function with correct rounding in a reliable and efficient manner, one has to solve the ``Table Maker's Dilemma'' (TMD). Two sophisticated algorithms (L and SLZ) have been designed to solve this problem, relying on some long and complex calculations that are performed by some heavily-optimized implementations. Hence the motivation to provide strong guarantees on these costly pre-computations. To this end, we use the Coq proof assistant. First, we develop a library of ``Rigorous Polynomial Approximation'', allowing one to compute an approximation polynomial and an interval that bounds the approximation error in Coq. This formalization is a key building block for verifying the first step of SLZ, as well as the implementation of a mathematical function in general (with or without correct rounding). Then we have implemented, formally verified and made effective 3 interrelated certificates checkers in Coq, whose correctness proof derives from Hensel's lemma that we have formalized for both univariate and bivariate cases. In particular, our ``ISValP verifier'' is a key component for formally verifying the results generated by SLZ. Then, we have focused on the mathematical proof of ``augmented-precision'' FP algorithms for the square root and the Euclidean 2D norm. We give some tight lower bounds on the minimum non-zero distance between sqrt(x²+y²) and a midpoint, allowing one to solve the TMD for this bivariate function. Finally, the ``double-rounding'' phenomenon can typically occur when several FP precision are available, and may change the behavior of some usual small FP algorithms. We have formally verified in Coq a set of results describing the behavior of the Fast2Sum algorithm with double-roundings.
Document type :
Complete list of metadatas

Cited literature [168 references]  Display  Hide  Download
Contributor : Abes Star <>
Submitted on : Thursday, October 25, 2012 - 5:07:11 PM
Last modification on : Friday, April 20, 2018 - 3:44:26 PM
Long-term archiving on : Saturday, January 26, 2013 - 8:05:10 AM


Version validated by the jury (STAR)


  • HAL Id : tel-00745553, version 1


Erik Martin-Dorel. Contributions to the Formal Verification of Arithmetic Algorithms. Other [cs.OH]. Ecole normale supérieure de lyon - ENS LYON, 2012. English. ⟨NNT : 2012ENSL0742⟩. ⟨tel-00745553⟩



Record views


Files downloads