Systematic software development using VDM (2nd ed.)
Systematic software development using VDM (2nd ed.)
The Z notation: a reference manual
The Z notation: a reference manual
Refinement methods and refinement calculi
Software Engineering Journal
Programming from specifications (2nd ed.)
Programming from specifications (2nd ed.)
The B-book: assigning programs to meanings
The B-book: assigning programs to meanings
Refinement Calculus: A Systematic Introduction
Refinement Calculus: A Systematic Introduction
More Powerful Z Data Refinement: Pushing the State of the Art in Industrial Refinement
ZUM '98 Proceedings of the 11th International Conference of Z Users on The Z Formal Specification Notation
Retrenchment, Refinement, and Simulation
ZB '00 Proceedings of the First International Conference of B and Z Users on Formal Specification and Development in Z and B
Retrenchment: An Engineering Variation on Refinement
B '98 Proceedings of the Second International B Conference on Recent Advances in the Development and Use of the B Method
Retrenchment and Punctured Simulation
IFM '99 Proceedings of the 1st International Conference on Integrated Formal Methods
Evolution: A More Practical Approach than Refinement for Software Development
ICECCS '97 Proceedings of the Third IEEE International Conference on Engineering of Complex Computer Systems
Maximally Abstract Retrenchments
ICFEM '00 Proceedings of the 3rd IEEE International Conference on Formal Engineering Methods
Data Refinement: Model-Oriented Proof Methods and their Comparison
Data Refinement: Model-Oriented Proof Methods and their Comparison
Retrenchment: extending refinement for continuous and control systems
IW-FM'00 Proceedings of the 4th Irish conference on Formal Methods
3FACS'98 Proceedings of the 3rd BCS-FACS conference on Northern Formal Methods
Engineering and theoretical underpinnings of retrenchment
Science of Computer Programming
Hi-index | 0.00 |
The drawbacks of using refinement alone in the construction of specifications from simple abstract models is used as the spur for the introduction of retrenchment -- a method based on the main ideas of refinement but one which is more liberal in character. The basics of the retrenchment mechanism are reviewed in preparation for exploring its integration with refinement. The particular aspect of integration investigated in this paper is the factorisation of a retrenchment step from an abstract to a concrete model into a refinement followed by a retrenchment. The objective is to engineer a system which is at the level of abstraction of the concrete model, but is refinable from the abstract one. The construction given here solves the problem in a universal manner, there being a canonical factorisation of the original retrenchment into an I/O-filtered refinement to the universal system followed by a retrenchment. The universal property arises from the fact that the refinement component of any similar factorisation is refinable to the universal system. An idempotence property supports the claim that the construction is at the correct level of abstraction. A synopsis of an earlier result which factorised a retrenchment step into a canonical retrenchment to a universal system followed by a refinement is presented. A refinement relationship is then shown to exist between the two universal systems. Finally, the consequences of including termination criteria are briefly explored.