Stochastic formal correctness of numerical algorithms.

We provide a framework to bound the probability that accumulated errors were never above a given threshold on numerical algorithms. Such algorithms are used for example in aircraft and nuclear power plants. This report contains simple formulas based on Levy's and Markov's inequalities and it presents a formal theory of random variables with a special focus on producing concrete results. We selected four very common applications that fit in our framework and cover the common practices of systems that evolve for a long time. We compute the number of bits that remain continuously significant in the first two applications with a probability of failure around one out of a billion, where worst case analysis considers that no significant bit remains. We are using PVS as such formal tools force explicit statement of all hypotheses and prevent incorrect uses of theorems.

[1]  Christine Paulin-Mohring,et al.  Proofs of randomized algorithms in Coq , 2006, Sci. Comput. Program..

[2]  Donald E. Knuth The Art of Computer Programming 2 / Seminumerical Algorithms , 1971 .

[3]  Donald E. Knuth,et al.  The art of computer programming. Vol.2: Seminumerical algorithms , 1981 .

[4]  Sylvie Boldo,et al.  Representable correcting terms for possibly underflowing floating point operations , 2003, Proceedings 2003 16th IEEE Symposium on Computer Arithmetic.

[5]  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..

[6]  John Harrison,et al.  Formal Verification of Floating Point Trigonometric Functions , 2000, FMCAD.

[7]  Christine Paulin-Mohring,et al.  The Coq Proof Assistant : A Tutorial : Version 7.2 , 1997 .

[8]  Panagiotis Manolios,et al.  Computer-Aided Reasoning: An Approach , 2011 .

[9]  Seppo Linnainmaa,et al.  Improved Trailing Digits Estimates Applied to Optimal Computer Arithmetic , 1979, JACM.

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

[11]  Joe Hurd,et al.  Formal verification of probabilistic algorithms , 2003 .

[12]  Christine Paulin-Mohring,et al.  Proofs of randomized algorithms in Coq , 2006, Sci. Comput. Program..

[13]  César A. Muñoz,et al.  Verified Real Number Calculations: A Library for Interval Arithmetic , 2007, IEEE Transactions on Computers.

[14]  Guillaume Melquiond,et al.  Certification of bounds on expressions involving rounded operators , 2007, TOMS.

[15]  David R. Lester,et al.  Stochastic Formal Methods: An Application to Accuracy of Numeric Software , 2006, 2007 40th Annual Hawaii International Conference on System Sciences (HICSS'07).

[16]  Christine Paulin-Mohring,et al.  The Coq Proof Assistant A Tutorial , 2005 .

[17]  Richard Goodman,et al.  Convergence Estimates for the Distribution of Trailing Digits , 1976, JACM.

[18]  Natarajan Shankar,et al.  PVS: A Prototype Verification System , 1992, CADE.

[19]  Robert L. Smith,et al.  An American National Standard- IEEE Standard for Binary Floating-Point Arithmetic , 1985 .

[20]  J. Neveu,et al.  Martingales à temps discret , 1973 .