Abstract
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.
- ABH+10 Rodin: an open toolset for modelling and reasoning in Event-BSTTT201012644746610.1007/s10009-010-0145-yGoogle ScholarCross Ref
- Abr10 Modeling in Event-B—system and software engineering2010CambridgeCambridge University Press10.1017/CBO97811391958811213.68214Google Scholar
- Baa88 A cognitive theory of consciousness1988CambridgeCambridge University PressGoogle Scholar
- Baa97 In the theater of consciousness: the workspace of the mind1997New YorkOxford University Press10.1093/acprof:oso/9780195102659.001.1Google Scholar
- BGA67 A study of thinking1967New YorkScience EditionsGoogle Scholar
- Bol05 Using the Alloy analyzer to verify data refinementZ Electron Notes Theoret Comput Sci20051372234410.1016/j.entcs.2005.04.023Google ScholarDigital Library
- BS10 Atomic actions, and their refinements to isolated protocolsFormal Aspects Comput2010221336110.1007/s00165-009-0103-11183.68362Google ScholarDigital Library
- Buc75 Buchanan B (1975) Applications of artificial intelligence to scientific reasoning. In: Second USA–Japan computer conference, Tokyo, AFIPS and IPS I, pp 189–194Google Scholar
- BY08 An incremental development of the Mondex system in Event-BFormal Aspects Comput2008201617710.1007/s00165-007-0061-4Google ScholarDigital Library
- CBW99 Colton S, Bundy A, Walsh T (1999) Automatic concept formation in pure mathematics. In: Proceedings of the 16th international joint conference on artificial intelligence, pp 786–793Google Scholar
- CBW00a Colton S, Bundy A, Walsh T (2000) Automatic identification of mathematical concepts. In: Proceedings of the 17th international conference on machine learning. Morgan Kaufmann, San Francisco, pp 183–190Google Scholar
- CBW00b Colton S, Bundy A, Walsh T (2000) Automatic invention of integer sequences. In: Proceedings of the 17th national conference on artificial intelligence, pp 558–563Google Scholar
- CBW00c On the notion of interestingness in automated mathematical discoveryInt J Human Comput Stud200053335137510.1006/ijhc.2000.03941011.68621Google ScholarDigital Library
- CC08 Charnley J, Colton S (2008) A global workspace framework for combining reasoning systems. In: Proceedings of the symposium on the integration of symbolic computation and mechanised reasoning, pp 261–265Google Scholar
- CCM06 Charnley J, Colton S, Miguel I (2006) Automatic generation of implied constraints. In: Proceedings of the 17th European conference on AI, pp 73–77Google Scholar
- Cha10 Charnley J (2010) A global workspace framework for combined reasoning. PhD thesis, Imperial College, LondonGoogle Scholar
- CM01 Colton S, Miguel I (2001) Constraint generation via automated theory formation. In: 7th international conference on the principles and practice of constraint programming, pp 575–579Google Scholar
- CM06 Mathematical applications of inductive logic programmingMach Learn200664256410.1007/s10994-006-8259-x1103.68438Google ScholarDigital Library
- Col99 Colton S (1999) Refactorable numbers—a machine invention. J Integer Sequen 2Google Scholar
- Col02a Automated theory formation in pure mathematics2002BerlinSpringer10.1007/978-1-4471-0147-51219.68141Google Scholar
- Col02b Colton S (2002) The HR program for theorem generation. In: CADE’18. Lecture notes in computer science, vol 2392. Springer, Berlin, pp 37–61Google Scholar
- CP04 Colton S, Pease A (2004) The TM system for repairing non-theorems. In Workshop on Disproving, Proceedings of IJCAR’04, pages 13–26Google Scholar
- CP05 Colton S, Pease A (2005) The TM system for repairing non-theorems. In: Selected papers from IJCAR’04 disproving workshop. Electron Notes Theoret Comput Sci vol 125(3):87–101Google Scholar
- CS02 Colton S, Sutcliffe G (2002) Automatic generation of benchmark problems for automated theorem proving systems. In: Proceedings of the 7th AI and maths symposiumGoogle Scholar
- Dam10 Damchoom K (2010) An incremental refinement approach to a development of a flash-based file system in Event-B. PhD thesis, University of SouthamptonGoogle Scholar
- EPG+07 The Daikon system for dynamic detection of likely invariantsSci Comput Program2007691–3354510.1016/j.scico.2007.01.0151161.683902412577Google ScholarDigital Library
- GIL12 Grov G, Ireland A, Llano MT (2012) Refinement plans for informed formal design. In: ABZ. Lecture notes in computer science. Springer, Berlin, pp 208–222Google Scholar
- HJG08 Holzmann GJ, Joshi R, Groce A (2008) 25 years of model checking. In: New challenges in model checking. Springer, Berlin, pp 65–76Google Scholar
- IEC+06 An integrated approach to high integrity software verificationJ Autom Reason (special issue on Empirically Successful Automated Reasoning)20063643794101107.680322287520Google ScholarDigital Library
- JDB10 Johansson M, Dixon L, Bundy A (2010) Case-analysis for rippling and inductive proof. In: 1st international conference on interactive theorem proving. LNCS, vol 6127. Springer, Berlin, pp 291–306Google Scholar
- Lak76 Proofs and refutations1976CambridgeCambridge University Press10.1017/CBO97811391714720334.00022Google ScholarCross Ref
- LB03 Leuschel M, Butler M (2003) ProB: a model checker for B. In: International symposium of formal methods Europe. LNCS, vol 2805. Springer, Berlin, pp 855–874Google Scholar
- Len77 Lenat D (1977) Automated theory formation in mathematics. In: Proceedings of the 5th international joint conference on artificial intelligence. Morgan Kaufmann, San Francisco, pp 833–842Google Scholar
- LIP11 Llano MT, Ireland A, Pease A (2011) Discovery of invariants through automated theory formation. In: Proceedings of the 15th international refinement workshop. In: Electronic proceedings in theoretical computer science, vol 55. Open Publishing Association, pp 1–19Google Scholar
- MBA07 McCasland R, Bundy A, Autexier S (2007) Automated discovery of inductive theorems. In: From insight to proof: festschrift in honour of Andrzej Trybulec. Studies in logic, grammar and rhetoric, vol 10(23). University of Białystok, pp 135–149Google Scholar
- McC94a McCune W (1994) A Davis–Putnam program and its application to finite first-order model search. Technical Report ANL/MCS-TM-194, Argonne National LaboratoriesGoogle Scholar
- McC94b McCune WW (1994) Otter 3.0 Reference Manual and Guide. Technical report ANL-94/6, Argonne National Laboratory, Argonne, USAGoogle Scholar
- McC03 McCune W (2003) Otter 3.3 reference manual. CoRR, cs.SC/0310056Google Scholar
- McC10 McCune W.: Prover9 and MACE4. http://www.cs.unm.edu/~mccune/prover9/, 2005–2010.Google Scholar
- MIDA09 Maclean E, Ireland A, Dixon L, Atkey R (2009) Refinement and term synthesis in loop invariant generation. In: 2nd international workshop on invariant generation (WING’09), a satellite workshop of ETAPS’09Google Scholar
- MIG11 Maclean E, Ireland A, Grov G (2011) The CORE system: Animation and functional correctness of pointer programs. In: Proceedings of the 16th IEEE conference on automated software engineering (ASE 2011): Tool demonstration paper. Lawrence, Kansas, pp 588–591Google Scholar
- MRMDB11 Scheme-based theorem discovery and concept inventionExpert Syst Appl2011391637164610.1016/j.eswa.2011.06.055Google ScholarDigital Library
- MSC02 Meier A, Sorge V, Colton S (2002) Employing theory formation to guide proof planning. In: AISC/Calculemus’02. LNAI, vol 2385. Springer, Berlin, pp 275–289Google Scholar
- PCCng Pease A, Colton S, Charnley J (2012) Automated theory formation: the next generation. IFCoLog lectures in computational logic, (Forthcoming)Google Scholar
- Pea07 Pease A (2007) A computational model of Lakatos-style reasoning. PhD thesis, School of Informatics, University of Edinburgh, Online http://hdl.handle.net/1842/2113Google Scholar
- PL07 Plagge D, Leuschel M (2007) Validating Z specifications using the ProB animator and model checker. In: Integrated formal methods. Lecture notes in computer science, vol 4591. Springer, Berlin, pp 480–500Google Scholar
- PSC+10 Pease A, Smaill A, Colton S, Ireland A, Llano M, Ramezani R, Grov G, Guhe M (2010) Applying Lakatos-style reasoning to AI problems. In: Thinking machines and the philosophy of computer science: concepts and principles. IGI Global, pp 149–174Google Scholar
- RH90 Ritchie G, Hanna F (1990) AM a case study in methodology. In: The foundations of AI: a sourcebook. Cambridge University Press, Cambridge, pp 247–265Google Scholar
- SB06 UML-B: Formal modeling and design aided by UMLACM Trans Softw Eng Methodol20061519212210.1145/1125808.1125811Google ScholarDigital Library
- SCMM08 Classification results in quasigroup and loop theory via a combination of automated reasoning toolsComment Math Univ Carolin20084923193391192.200622426896Google Scholar
- SMMC08 Automatic construction and verification of isotopy invariantsJ Autom Reason2008402–322124310.1007/s10817-007-9093-y1139.680502418647Google ScholarDigital Library
- WD96 Using Z: specification, refinement and proof1996New JerseyPrentice-Hall0855.68060Google Scholar
- Win70 Winston P (1970) Learning structural descriptions from examples. Technical Report TR-231, MITGoogle Scholar
- ZFCS02 Zimmer J, Franke A, Colton S, Sutcliffe G (2002) Integrating HR and tptp2X into MathWeb to compare automated theorem provers. In: Proceedings of the CADE’02 workshop on problems and problem setsGoogle Scholar
Index Terms
- Discovery of invariants through automated theory formation
Recommendations
Towards the Composition of Specifications in Event-B
The development of a system can start with the creation of a specification. Following this viewpoint, we claim that often a specification can be constructed from the combination of specifications which can be seen as composition. Event-B is a formal ...
A method of refinement in UML-B
UML-B is a `UML-like' graphical front-end for Event-B that provides support for object-oriented and state machine modelling concepts, which are not available in Event-B. In particular, UML-B includes class diagram and state machine diagram editors with ...
Building traceable Event-B models from requirements
Bridging the gap between informal requirements and formal specifications is a key challenge in systems engineering. Constructing appropriate abstractions in formal models requires skill and managing the complexity of the relationships between ...
Comments