Implementing mathematics with the Nuprl proof development system
Implementing mathematics with the Nuprl proof development system
A mechanically verified language implementation
Journal of Automated Reasoning
The Z notation: a reference manual
The Z notation: a reference manual
Predicting program execution times by analyzing static and dynamic program paths
Real-Time Systems - Special issue: Real-time languages and language-level timing tools and analysis
The B-book: assigning programs to meanings
The B-book: assigning programs to meanings
Refinement Calculus: A Systematic Introduction
Refinement Calculus: A Systematic Introduction
Computer-Aided Reasoning: An Approach
Computer-Aided Reasoning: An Approach
Introduction To Automata Theory, Languages, And Computation
Introduction To Automata Theory, Languages, And Computation
An Approach to Verifiable Compiling Specification and Prototyping
PLILP '90 Proceedings of the 2nd International Workshop on Programming Language Implementation and Logic Programming
Compiler verification: a bibliography
ACM SIGSOFT Software Engineering Notes
Interactive Theorem Proving and Program Development
Interactive Theorem Proving and Program Development
Towards the Formal Verification of a C0 Compiler: Code Generation and Implementation Correctnes
SEFM '05 Proceedings of the Third IEEE International Conference on Software Engineering and Formal Methods
Formal certification of a compiler back-end or: programming a compiler with a proof assistant
Conference record of the 33rd ACM SIGPLAN-SIGACT symposium on Principles of programming languages
Isabelle/HOL: a proof assistant for higher-order logic
Isabelle/HOL: a proof assistant for higher-order logic
Formal verification of a c compiler front-end
FM'06 Proceedings of the 14th international conference on Formal Methods
Hi-index | 0.00 |
This paper investigates the application of the B method beyond the classical algorithmic level provided by the B0 sub-language, and presents refinements of B models at a level of precision equivalent to assembly language. We claim and justify that this extension provides a more reliable software development process as it bypasses two of the less trustable steps in the application of the B method: code synthesis and compilation. The results presented in the paper have a value as a proof of concept and may be used as a basis to establish an agenda for the development of an approach to build verifying compilers [Hoare, C. A. R., The verifying compiler, a grand challenge for computing research, in: VMCAI, 2005, pp. 78-78] based on the B method.