Projects per year
Abstract
ArcAngel is a tactic language devised to facilitate and automate program developments using Morgan’s refinement calculus. It is especially well suited for the specification of high-level refinement strategies, and equipped with a formal semantics that additionally permits reasoning about tactics. In this paper, we present an implementation of ArcAngel for the ProofPower theorem prover. We discuss the underlying design, explain how it implements the semantics of ArcAngel, and examine the interplay between ArcAngel tactics and the native reasoning support of the prover. We also discuss several extensions of ArcAngel that have been entailed by our implementation effort. They are of practical importance and provide a unification of the related tactic languages Angel and ArcAngelC. Our main result is a mechanisation that reflects directly the ArcAngel semantics, and can be used with any programming model for refinement. The approach can be used to support other formal tactic languages using other theorem provers.
Original language | English |
---|---|
Pages (from-to) | 127-160 |
Number of pages | 34 |
Journal | Formal Aspects of Computing |
Volume | 24 |
Issue number | 1 |
DOIs | |
Publication status | Published - 1 Jan 2012 |
Projects
- 2 Finished
-
hiJaC: HIJAC: High-Integrity Java applications using circus
Cavalcanti, A. L. C., Wellings, A. J. & Woodcock, J.
22/06/10 → 30/10/15
Project: Research project (funded) › Research
-
ProCLaws: Programming from Control Laws
1/07/07 → 30/09/11
Project: Research project (funded) › Research