Title
Wave Equation Numerical Resolution: A Comprehensive Mechanized Proof of a C Program
Abstract
We formally prove correct a C program that implements a numerical scheme for the resolution of the one-dimensional acoustic wave equation. Such an implementation introduces errors at several levels: the numerical scheme introduces method errors, and floating-point computations lead to round-off errors. We annotate this C program to specify both method error and round-off error. We use Frama-C to generate theorems that guarantee the soundness of the code. We discharge these theorems using SMT solvers, Gappa, and Coq. This involves a large Coq development to prove the adequacy of the C program to the numerical scheme and to bound errors. To our knowledge, this is the first time such a numerical analysis program is fully machine-checked.
Year
DOI
Venue
2013
10.1007/s10817-012-9255-4
J. Autom. Reasoning
Keywords
Field
DocType
Formal proof of numerical program,Convergence of numerical scheme,Proof of C program,Coq formal proof,Acoustic wave equation,Partial differential equation,Rounding error analysis
Discrete mathematics,Acoustic wave equation,Algorithm,Numerical resolution,Soundness,Wave equation,Numerical analysis,Partial differential equation,Mathematics,Computation
Journal
Volume
Issue
ISSN
50
4
Journal of Automated Reasoning 50, 4 (2013) 423-456
Citations 
PageRank 
References 
24
1.00
27
Authors
6
Name
Order
Citations
PageRank
Sylvie Boldo129226.85
François Clément2374.04
Jean-Christophe Filliâtre361545.86
Micaela Mayero48410.38
Guillaume Melquiond534524.82
Pierre Weis615119.20