A theoretical basis for stepwise refinement and the programming calculus
Science of Computer Programming
Programming from specifications
Programming from specifications
Introduction to HOL: a theorem proving environment for higher order logic
Introduction to HOL: a theorem proving environment for higher order logic
A behavioral notion of subtyping
ACM Transactions on Programming Languages and Systems (TOPLAS)
Using Z: specification, refinement, and proof
Using Z: specification, refinement, and proof
The B-book: assigning programs to meanings
The B-book: assigning programs to meanings
Object-oriented software construction (2nd ed.)
Object-oriented software construction (2nd ed.)
Specification in B: An Introduction Using the B Toolkit
Specification in B: An Introduction Using the B Toolkit
Refinement Calculus: A Systematic Introduction
Refinement Calculus: A Systematic Introduction
Testing Formal Specifications to Detect Design Errors
IEEE Transactions on Software Engineering
Data Refinement: Model-Oriented Proof Methods and their Comparison
Data Refinement: Model-Oriented Proof Methods and their Comparison
Reasoning about comprehensions with first-order SMT solvers
Proceedings of the 2009 ACM symposium on Applied Computing
Design of a proof repository architecture
Proceedings of the 1st Workshop on Modules and Libraries for Proof Assistants
Formal development of a cardiac pacemaker: from specification to code
SBMF'10 Proceedings of the 13th Brazilian conference on Formal methods: foundations and applications
Hi-index | 0.00 |
Perfect Developer is a software tool that supports the formal development of object-oriented programs by refinement, including formal verification of code. It is built around a single language that supports both specification and implementation. We critically examine how Perfect Developer supports programming by refinement, focusing on three refinement techniques: algorithm refinement, data re- finement and delta refinement. In particular we examine the extent to which Perfect Developer provides formal verification for these techniques. We assess it as a tool for software construction and compare it with related tools.