The design of divide and conquer algorithms
Science of Computer Programming
The Munich Project CIP: Volume I: the wide spectrum language CIP-L
The Munich Project CIP: Volume I: the wide spectrum language CIP-L
KIDS: A Semiautomatic Program Development System
IEEE Transactions on Software Engineering
A framework for defining logics
Journal of the ACM (JACM)
Using Z: specification, refinement, and proof
Using Z: specification, refinement, and proof
Compositional refinement of interactive systems
Journal of the ACM (JACM)
A Transformation System for Developing Recursive Programs
Journal of the ACM (JACM)
Refinement in Z and object-Z: foundations and advanced applications
Refinement in Z and object-Z: foundations and advanced applications
Program development schemata as derived rules
Journal of Symbolic Computation - Special Issue on Schemas
The Theory and Practice of Concurrency
The Theory and Practice of Concurrency
Refinement Calculus: A Systematic Introduction
Refinement Calculus: A Systematic Introduction
Program Development by Specification and Transformation: A Methodology Language Family System
Program Development by Specification and Transformation: A Methodology Language Family System
Generalization and Reuse of Tactic Proofs
LPAR '94 Proceedings of the 5th International Conference on Logic Programming and Automated Reasoning
Proof Transformations for Evolutionary Formal Software Development
AMAST '02 Proceedings of the 9th International Conference on Algebraic Methodology and Software Technology
The Development Graph Manager MAYA
AMAST '02 Proceedings of the 9th International Conference on Algebraic Methodology and Software Technology
TkWinHOL: A Tool for Window Inference in HOL
Proceedings of the 8th International Workshop on Higher Order Logic Theorem Proving and Its Applications
Reuse of Proofs in Software Verification
Proceedings of the 13th Conference on Foundations of Software Technology and Theoretical Computer Science
Algebraic Specification and Program Development by Stepwise Refinement
LOPSTR'99 Selected papers from the 9th International Workshop on Logic Programming Synthesis and Transformation
Handbook of automated reasoning
Data Refinement: Model-Oriented Proof Methods and their Comparison
Data Refinement: Model-Oriented Proof Methods and their Comparison
Isabelle/HOL: a proof assistant for higher-order logic
Isabelle/HOL: a proof assistant for higher-order logic
Structured formal development in Isabelle
Nordic Journal of Computing - Selected papers of the 17th nordic workshop on programming theory (NWPT'05), October 19-21, 2005
Hi-index | 0.01 |
Formal program development by stepwise refinement involves a lot of work discharging proof obligations. Transformational techniques can reduce this work: applying correct transformation rules removes the need for verifying the correctness of each refinement step individually. However, a crucial problem is how to identify appropriate transformation rules.In this paper, a method is proposed to incrementally construct a set of correctness preserving transformation rules for refinement relations in arbitrary specification formalisms. Transformational developments are considered as proofs, which are generalised. This results in a framework where specific example refinements can be systematically generalised to more applicable transformation rules. The method is implemented in the Isabelle theorem prover and demonstrated on an example of data refinement.