Mechanised Refinement of Procedures
Electronic Notes in Theoretical Computer Science (ENTCS)
Type Checking Circus Specifications
Electronic Notes in Theoretical Computer Science (ENTCS)
ArcAngelC: a Refinement Tactic Language for Circus
Electronic Notes in Theoretical Computer Science (ENTCS)
Supporting ArcAngel in ProofPower
Electronic Notes in Theoretical Computer Science (ENTCS)
A tactic language for refinement of state-rich concurrent specifications
Science of Computer Programming
Automating refinement of circus programs
SBMF'10 Proceedings of the 13th Brazilian conference on Formal methods: foundations and applications
Taking our own medicine: applying the refinement calculus to state-rich refinement model checking
ICFEM'06 Proceedings of the 8th international conference on Formal Methods and Software Engineering
Hi-index | 0.00 |
Using Morgan's refinement calculus, we can write software in a precise and consistent way. Nevertheless, this may involve long and repetitive developments. Several refinement strategies are useful in different developments, and even in different points of a single development. A lot is gained by identifying these strategies, documenting them as tactics, and using them as single transformation rules. With this motivation, we have designed ArcAngel, a tactic language especially tailored for refinement; we have formalised its semantics and studied its algebraic laws. Even with the use of tactics, however, refinement can be a hard task and the use of tools is essential in practice. In this paper, we present Refine and Gabriel, interactive, user-friendly tools that allow us to use the refinement calculus with the support of ArcAngel tactics.