Verified Numerical Methods for Ordinary Differential Equations

被引:3
作者
Kellison, Ariel E. [1 ]
Appel, Andrew W. [2 ]
机构
[1] Cornell Univ, Ithaca, NY 14850 USA
[2] Princeton Univ, Princeton, NJ 08544 USA
来源
SOFTWARE VERIFICATION AND FORMAL METHODS FOR ML-ENABLED AUTONOMOUS SYSTEMS, FOMLAS 2022, NSV 2022 | 2022年 / 13466卷
关键词
INITIAL-VALUE PROBLEMS; VALIDATED SOLUTIONS; ERROR ESTIMATION; INTEGRATORS;
D O I
10.1007/978-3-031-21222-2_9
中图分类号
TP18 [人工智能理论];
学科分类号
081104 ; 0812 ; 0835 ; 1405 ;
摘要
Ordinary differential equations (ODEs) are used to model the evolution of the state of a system over time. They are ubiquitous in the physical sciences and are often used in computational models with safety-critical applications. For critical computations, numerical solvers for ODEs that provide useful guarantees of their accuracy and correctness are required, but do not always exist in practice. In this work, we demonstrate how to use the Coq proof assistant to verify that a C program correctly and accurately finds the solution to an ODE initial value problem (IVP). Our verification framework is modular, and concisely disentangles the high-level mathematical properties expected of the system being modeled from the low-level behavior of a particular C program. Our approach relies on the construction of two simple functional models in Coq: a floating-point valued functional model for analyzing the intermediate-level behavior of the program, and a real-valued functional model for analyzing the high-level mathematical properties of the system being modeled by the IVP. Our final result is a proof that the floatingpoint solution returned by the C program is an accurate solution to the IVP, with a good quantitative bound. Our framework assumes only the operational semantics of C and of IEEE-754 floating point arithmetic.
引用
收藏
页码:147 / 163
页数:17
相关论文
共 32 条
  • [1] Appel A.W., 2022, COQ DRAFT
  • [2] Appel A.W., 2014, Program Logics for Certified Compilers
  • [3] Appel AW, 2011, LECT NOTES COMPUT SC, V6602, P1, DOI 10.1007/978-3-642-19718-5_1
  • [4] Abstraction and subsumption in modular verification of C programs
    Beringer, Lennart
    Appel, Andrew W.
    [J]. FORMAL METHODS IN SYSTEM DESIGN, 2021, 58 (1-2) : 322 - 345
  • [5] NUMERICAL INTEGRATORS FOR THE HYBRID MONTE CARLO METHOD
    Blanes, Sergio
    Casas, Fernando
    Sanz-Serna, J. M.
    [J]. SIAM JOURNAL ON SCIENTIFIC COMPUTING, 2014, 36 (04) : A1556 - A1580
  • [6] Boldo S., 2017, COMPUTER ARITHMETIC
  • [7] Round-off Error Analysis of Explicit One-Step Numerical Integration Methods
    Boldo, Sylvie
    Faissole, Florian
    Chapoutot, Alexandre
    [J]. 2017 IEEE 24TH SYMPOSIUM ON COMPUTER ARITHMETIC (ARITH), 2017, : 82 - 89
  • [8] Coquelicot: A User-Friendly Library of Real Analysis for Coq
    Boldo, Sylvie
    Lelay, Catherine
    Melquiond, Guillaume
    [J]. MATHEMATICS IN COMPUTER SCIENCE, 2015, 9 (01) : 41 - 62
  • [9] Trusting computations: A mechanized proof from partial differential equations to actual program
    Boldo, Sylvie
    Clement, Francois
    Filliatre, Jean-Christophe
    Mayero, Micaela
    Melquiond, Guillaume
    Weis, Pierre
    [J]. COMPUTERS & MATHEMATICS WITH APPLICATIONS, 2014, 68 (03) : 325 - 352
  • [10] Geometric integrators and the Hamiltonian Monte Carlo method
    Bou-Rabee, Nawaf
    Sanz-Serna, J. M.
    [J]. ACTA NUMERICA, 2018, 27 : 113 - 206