Edinburgh Research Explorer

Specification refinements: calculi, tools, and applications

Research output: Contribution to journalArticle

Original languageEnglish
Pages (from-to)1-49
Number of pages48
JournalScience of Computer Programming
Early online date26 Apr 2017
StatePublished - 15 Sep 2017


We propose and study a framework for systematic development of software systems (or models) from their formal specifications. We introduce a language for formal development by refinement and decomposition, as an extension to CASL. We complement it with a notion of refinement tree and present proof calculi for checking correctness of refinements as well as their consistency. Both calculi have been implemented in the Heterogeneous Tool Set (Hets), and have been integrated with other tools like model finders and conservativity checkers.

ID: 35467199