4,702 research outputs found
Trusting Computations: a Mechanized Proof from Partial Differential Equations to Actual Program
Computer programs may go wrong due to exceptional behaviors, out-of-bound
array accesses, or simply coding errors. Thus, they cannot be blindly trusted.
Scientific computing programs make no exception in that respect, and even bring
specific accuracy issues due to their massive use of floating-point
computations. Yet, it is uncommon to guarantee their correctness. Indeed, we
had to extend existing methods and tools for proving the correct behavior of
programs to verify an existing numerical analysis program. This C program
implements the second-order centered finite difference explicit scheme for
solving the 1D wave equation. In fact, we have gone much further as we have
mechanically verified the convergence of the numerical scheme in order to get a
complete formal proof covering all aspects from partial differential equations
to actual numerical results. To the best of our knowledge, this is the first
time such a comprehensive proof is achieved.Comment: N° RR-8197 (2012). arXiv admin note: text overlap with
arXiv:1112.179
Theory Morphisms in Church's Type Theory with Quotation and Evaluation
is a version of Church's type theory with global
quotation and evaluation operators that is engineered to reason about the
interplay of syntax and semantics and to formalize syntax-based mathematical
algorithms. is a variant of that
admits undefined expressions, partial functions, and multiple base types of
individuals. It is better suited than as a logic for
building networks of theories connected by theory morphisms. This paper
presents the syntax and semantics of , defines a notion of
a theory morphism from one theory to another, and gives
two simple examples that illustrate the use of theory morphisms in .Comment: 17 page
- …