The refinement calculus for the development of programs from specifications is well suited to mechanised support. We review the requirements for tool support of refinement as gleaned from our experience with a number of existing refinement tools, and report on the design and implementation of a new tool to support refinement based on these requirements. Themain features of the newtool are close integration of refinementand proof in a single tool (the samemechanism is used for both), good management of the refinement context, an extensible theory base that allows the tool to be adapted to new application domains, and a flexible user interface.
Author and article information
Software Verification Research Centre
Department of Computer Science
The University of Queensland
Queensland 4072, Australia