Implementing a Rigorous ODE Solver Through Literate Programming
Implementing a Rigorous ODE Solver Through Literate Programming
复制标题
通过文字编程实现严格的 ODE 求解器
DOI:
10.1007/978-3-642-15956-5_1
复制
发表时间:
2011
期刊:
影响因子:
--
通讯作者:
N. Nedialkov
中科院分区:
文献类型:
--
作者:
N. Nedialkov
Interval numerical methods produce results that can have the power of a mathematical proof. Although there is a substantial amount of theoretical work on these methods, little has been done to ensure that an implementation of an interval method can be readily verified. However, when claiming rigorous numerical results, it is crucial to ensure that there are no errors in their computation. Furthermore, when such a method is used in a computer assisted proof, it would be desirable to have its implementation published in a form that is convenient for verification by human experts. We have applied Literate Programming (LP) to produce VNODE-LP, a C++ solver for computing rigorous bounds on the solution of an initial-value problem (IVP) for an ordinary differential equation (ODE).We have found LP well suited for ensuring that an implementation of a numerical algorithm is a correct translation of its underlying theory into a programming language: we can split the theory into small pieces, translate each of them, and keep mathematical expressions and the corresponding code close together in a unified document. Then it can be reviewed and checked for correctness by human experts, similarly to how a scientific work is examined in a peer-review process.