Discovery of invariants through automated theory formation

Maria Teresa Llano, Andrew Ireland, Alison Pease

Research output: Contribution to journalArticleResearchpeer-review

7 Citations (Scopus)

Abstract

Refinement is a powerful mechanism for mastering the complexities that arise when formally modelling systems. Refinement also brings with it additional proof obligations - requiring a developer to discover properties relating to their design decisions. With the goal of reducing this burden, we have investigated how a general purpose automated theory formation tool, HR, can be used to automate the discovery of such properties within the context of the Event-B formal modelling framework. This gave rise to an integrated approach to automated invariant discovery. In addition to formal modelling and automated theory formation, our approach relies upon the simulation of system models as a key input to the invariant discovery process. Moreover we have developed a set of heuristics which, when coupled with automated proof-failure analysis, have enabled us to effectively tailor HR to the needs of Event-B developments. Drawing in part upon case study material from the literature, we have achieved some promising experimental results. While our focus has been on Event-B, we believe that our approach could be applied more widely to formal modelling frameworks which support simulation.

Original languageEnglish
Pages (from-to)203-249
Number of pages47
JournalFormal Aspects of Computing
Volume26
Issue number2
DOIs
Publication statusPublished - Mar 2014
Externally publishedYes

Keywords

  • Automated invariant discovery
  • Automated theory formation
  • Event-B
  • Formal modelling and refinement
  • Heuristic approaches to invariant discovery
  • HR
  • Discovery of invariants through automated theory formation

    Llano, M. T., Ireland, A. & Pease, A., 17 Jun 2011, Proceedings 15th International Refinement Workshop. Vol. 55. p. 1-19 19 p. (Electronic Proceedings in Theoretical Computer Science, EPTCS).

    Research output: Chapter in Book/Report/Conference proceedingConference PaperResearchpeer-review

    Open Access
    5 Citations (Scopus)

Cite this