Discovery of invariants through automated theory formation

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.

[1]  Christie Bolton,et al.  Using the Alloy Analyzer to Verify Data Refinement in Z , 2005 .

[2]  Patrick Henry Winston,et al.  Learning structural descriptions from examples , 1970 .

[3]  Robert Atkey,et al.  Refinement and Term Synthesis in Loop Invariant Generation , 2010, WING@ETAPS/IJCAR.

[4]  Toby Walsh,et al.  Automatic Invention of Integer Sequences , 2000, AAAI/IAAI.

[5]  Roman. Matuszewski,et al.  From insight to proof : Festschrift in honour of Andrzej Trybulec , 2007 .

[6]  Simon Colton,et al.  Automatic Generation of Implied Constraints , 2006, ECAI.

[7]  MSc PhD Simon Colton BSc Automated Theory Formation in Pure Mathematics , 2002, Distinguished Dissertations.

[8]  Simon Colton,et al.  The HR Program for Theorem Generation , 2002, CADE.

[9]  Stephen Muggleton,et al.  Mathematical applications of inductive logic programming , 2006, Machine Learning.

[10]  Toby Walsh,et al.  On the notion of interestingness in automated mathematical discovery , 2000, Int. J. Hum. Comput. Stud..

[11]  Alison Pease,et al.  A computational model of Lakatos-style reasoning , 2007 .

[12]  Alan Bundy,et al.  Case-Analysis for Rippling and Inductive Proof , 2010, ITP.

[13]  Helmut Veith,et al.  25 Years of Model Checking - History, Achievements, Perspectives , 2008, 25 Years of Model Checking.

[14]  Simon Colton,et al.  Automated Theory Formation: The Next Generation , 2013 .

[15]  William McCune,et al.  OTTER 3.0 Reference Manual and Guide , 1994 .

[16]  B. Baars In the theater of consciousness : the workspace of the mind , 1997 .

[17]  Simon Colton,et al.  Classification results in quasigroup and loop theory via a combination of automated reasoning tools , 2008 .

[18]  Alison Pease,et al.  Discovery of Invariants through Automated Theory Formation , 2011 .

[19]  Simon Colton,et al.  Automatic Construction and Verification of Isotopy Invariants , 2007, Journal of Automated Reasoning.

[20]  Stephen McCamant,et al.  The Daikon system for dynamic detection of likely invariants , 2007, Sci. Comput. Program..

[21]  William M. Smith,et al.  A Study of Thinking , 1956 .

[22]  A. Bundy,et al.  Automated Discovery of Inductive Theorems , 2007 .

[23]  Jean-Raymond Abrial,et al.  Modeling in event-b - system and software engineering by Jean-Raymond Abrial , 2010, SOEN.

[24]  Gudmund Grov,et al.  Refinement Plans for Informed Formal Design , 2012, ABZ.

[25]  Toby Walsh,et al.  Automatic Identification of Mathematical Concepts , 2000, ICML.

[26]  Simon Colton,et al.  Employing Theory Formation to Guide Proof Planning , 2002, AISC.

[27]  Simon Colton,et al.  Constraint Generation via Automated Theory Formation , 2001, CP.

[28]  Jim Woodcock,et al.  Using Z - specification, refinement, and proof , 1996, Prentice Hall international series in computer science.

[29]  Douglas B. Lenat,et al.  Automated Theory Formation in Mathematics , 1977, IJCAI.

[30]  Gudmund Grov,et al.  The CORE system: Animation and functional correctness of pointer programs , 2011, 2011 26th IEEE/ACM International Conference on Automated Software Engineering (ASE 2011).

[31]  Simon Colton,et al.  The TM System for Repairing Non-Theorems , 2005, D/PDPAR@IJCAR.

[32]  B. Baars A cognitive theory of consciousness , 1988 .

[33]  Michael J. Butler,et al.  An incremental development of the Mondex system in Event-B , 2007, Formal Aspects of Computing.

[34]  S. Colton,et al.  Applying Lakatos-style reasoning to AI problems , 2009 .

[35]  Toby Walsh,et al.  Automatic Concept Formation in Pure Mathematics , 1999, IJCAI.

[36]  Alan Bundy,et al.  Scheme-Based Synthesis of Inductive Theories , 2010, MICAI.

[37]  I. Lakatos,et al.  Proofs and Refutations: Frontmatter , 1976 .

[38]  G. D. Ritchie,et al.  The foundations of artificial intelligence: AM: a case study in AI methodology , 1990 .

[39]  Edmund M. Clarke,et al.  25 Years of Model Checking , 2014, Ershov Memorial Conference.

[40]  Simon Colton,et al.  A Global Workspace Framework for Combining Reasoning Systems , 2008, AISC/MKM/Calculemus.

[41]  Alex Groce,et al.  New Challenges in Model Checking , 2008, 25 Years of Model Checking.

[42]  John William Charnley,et al.  A global workspace framework for combined reasoning , 2009 .

[43]  Colin F. Snook,et al.  UML-B: Formal modeling and design aided by UML , 2006, TSEM.

[44]  Simon Colton,et al.  Applying Lakatos-style reasoning to AI domains , 2010 .

[45]  Michael Leuschel,et al.  Validating Z Specifications Using the ProBAnimator and Model Checker , 2007, IFM.

[46]  Kriangsak Damchoom,et al.  An incremental refinement approach to a development of a flash-based file system in Event-B , 2010 .

[47]  Simon Colton,et al.  Refactorable Numbers - A Machine Invention , 1999 .

[48]  Gudmund Grov,et al.  Reasoned modelling critics: Turning failed proofs into modelling guidance , 2013, Sci. Comput. Program..

[49]  Thai Son Hoang,et al.  Rodin: an open toolset for modelling and reasoning in Event-B , 2010, International Journal on Software Tools for Technology Transfer.

[50]  Richard Banach,et al.  Atomic actions, and their refinements to isolated protocols , 2009, Formal Aspects of Computing.

[51]  Simon Colton,et al.  Automatic Generation of Benchmark Problems for Automated Theorem Proving Systems , 2002, ISAIM.

[52]  Michael J. Butler,et al.  ProB: A Model Checker for B , 2003, FME.

[53]  Christie Marr,et al.  Using the Alloy Analyzer to Verify Data Refinement in Z , 2005, Electron. Notes Theor. Comput. Sci..

[54]  Douglas B. Lenat,et al.  AM, an artificial intelligence approach to discovery in mathematics as heuristic search , 1976 .

[55]  Douglas B. Lenat,et al.  EURISKO: A Program That Learns New Heuristics and Domain Concepts , 1983, Artif. Intell..

[56]  Andrew Ireland,et al.  An Integrated Approach to High Integrity Software Verification , 2006, Journal of Automated Reasoning.

[57]  I. Lakatos PROOFS AND REFUTATIONS (I)*† , 1963, The British Journal for the Philosophy of Science.

[58]  Alan Bundy,et al.  Scheme-based theorem discovery and concept invention , 2012, Expert Syst. Appl..

[59]  William McCune,et al.  OTTER 3.3 Reference Manual , 2003, ArXiv.

[60]  Gérard Boudol Atomic actions , 1989, Bull. EATCS.