Skip to main content

Enabling Analysis for Event-B

  • Conference paper
  • First Online:
Book cover Abstract State Machines, Alloy, B, TLA, VDM, and Z (ABZ 2016)

Part of the book series: Lecture Notes in Computer Science ((LNTCS,volume 9675))

Abstract

In this paper we present a static analysis to determine how events influence each other in Event-B models. The analysis, called an enabling analysis, uses syntactic and constraint-based techniques to compute the effect of executing one event on the guards of another event. We describe the foundations of the approach along with the realisation in ProB. The output of the analysis can help a user to understand the control flow of a formal model. Additionally, we discuss how the information of the enabling analysis can be used to obtain a new optimised model checking algorithm. We evaluate both the performance of the enabling analysis and the new model checking technique on a variety of models. The technique is also applicable to B, \(\mathrm{TLA}^{+}\), and Z models.

This is a preview of subscription content, log in via an institution to check access.

Access this chapter

Chapter
USD 29.95
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
eBook
USD 39.99
Price excludes VAT (USA)
  • Available as EPUB and PDF
  • Read on any device
  • Instant download
  • Own it forever
Softcover Book
USD 54.99
Price excludes VAT (USA)
  • Compact, lightweight edition
  • Dispatched in 3 to 5 business days
  • Free shipping worldwide - see info

Tax calculation will be finalised at checkout

Purchases are for personal use only

Institutional subscriptions

Notes

  1. 1.

    Note: we include the invariant \( Inv \) here, meaning that all results are only valid so-long as the invariant remains true. In practice, this is usually ok: animation and model checking with ProB will detect invariant violations. Adding the invariant is often important to help the constraint solver. On the other hand, it is possible to remove the invariant from Definition 3 and one would then obtain an analysis that is also valid for states which do not satisfy the invariant.

  2. 2.

    In addition, we illustrate some of the enabling relations on concrete examples in https://www3.hhu.de/stups/prob/index.php/Tutorial_Enabling_Analysis.

  3. 3.

    The models and the results of the enabling analysis can be obtained from the following web page http://nightly.cobra.cs.uni-duesseldorf.de/enabling_analysis/.

  4. 4.

    The models and their evaluations can be obtained from the following web page http://nightly.cobra.cs.uni-duesseldorf.de/pge/.

  5. 5.

    Ideally the present paper should have been published before [9].

References

  1. Abrial, J.-R.: The B-Book: Assigning Programs to Meanings. Cambridge University Press, New York (1996)

    Google Scholar 

  2. Abrial, J.R.: Modeling in Event-B: System and Software Engineering, 1st edn. Cambridge University Press, New York (2010)

    Book  MATH  Google Scholar 

  3. Bendisposto, J., Leuschel, M.: Proof assisted model checking for B. In: Breitman, K., Cavalcanti, A. (eds.) ICFEM 2009. LNCS, vol. 5885, pp. 504–520. Springer, Heidelberg (2009)

    Chapter  Google Scholar 

  4. Bendisposto, J., Leuschel, M.: Automatic flow analysis for Event-B. In: Giannakopoulou, D., Orejas, F. (eds.) FASE 2011. LNCS, vol. 6603, pp. 50–64. Springer, Heidelberg (2011)

    Chapter  Google Scholar 

  5. Bert, D., Cave, F.: Construction of finite labelled transition systems from B abstract systems. In: Grieskamp, W., Santen, T., Stoddart, B. (eds.) IFM 2000. LNCS, vol. 1945, pp. 235–254. Springer, Heidelberg (2000)

    Chapter  Google Scholar 

  6. Bert, D., Potet, M.-L., Stouls, N.: Genesyst: a tool to reason about behavioral aspects of B event specifications. application to security properties. In: ZB , pp. 299–318 (2005)

    Google Scholar 

  7. Clarke, E., Enders, R., Filkorn, T., Jha, S.: Exploiting symmetry in temporal logic model checking. Formal Methods Syst. Des. 9(1–2), 77–104 (1996)

    Article  Google Scholar 

  8. Clarke, E., Grumberg, O., Minea, M., Peled, D.: State space reduction using partial order techniques. Int. J. STTT 2(3), 279–287 (1999)

    Article  MATH  Google Scholar 

  9. Dobrikov, I., Leuschel, M.: Optimising the ProB model checker for B using partial order reduction. In: Giannakopoulou, D., Salaün, G. (eds.) SEFM 2014. LNCS, vol. 8702, pp. 220–234. Springer, Heidelberg (2014)

    Google Scholar 

  10. Dobrikov, I., Leuschel, M.: Enabling analysis for Event-B (technical report). Technical report, Institut für Informatik, University of Düsseldorf (2016). http://stups.hhu.de/w/Special:Publication/LeuschelDobrikov-EnablingTR

  11. Donaldson, A.F., Miller, A.: Exact and approximate strategies for symmetry reduction in model checking. In: Misra, J., Nipkow, T., Sekerinski, E. (eds.) FM 2006. LNCS, vol. 4085, pp. 541–556. Springer, Heidelberg (2006)

    Chapter  Google Scholar 

  12. Fekih H, Ayed LJ, Merz S.: Transformation of B specifications into UML class diagrams and state machines. ACM Symposium on Applied Computing - SAC 2006, vol. 2, pp. 1840–1844. Dijon, France (Apr. 2006)

    Google Scholar 

  13. Godefroid, P. (ed.): Partial-Order Methods for the Verification of Concurrent Systems. LNCS, vol. 1032. Springer, Heidelberg (1996)

    MATH  Google Scholar 

  14. Hammad, A., Tatibouët, B., Voisinet, J.-C., Wu, W.-P.: From a B specification to UML statechart diagrams. In: George, C.W., Miao, H. (eds.) ICFEM 2002. LNCS, vol. 2495, pp. 511–522. Springer, Heidelberg (2002)

    Chapter  Google Scholar 

  15. Hansen, D., Ladenberger, L., Wiegard, H., Bendisposto, J., Leuschel, M.: Validation of the ABZ landing gear system using ProB. In: Boniol, F., Wiels, V., Ait Ameur, Y., Schewe, K.-D. (eds.) ABZ 2014. CCIS, vol. 433, pp. 66–79. Springer, Heidelberg (2014)

    Chapter  Google Scholar 

  16. Hansen, D., Leuschel, M.: Translating TLA\(^ \text{+ } \) to B for validation with ProB. In: Derrick, J., Gnesi, S., Latella, D., Treharne, H. (eds.) IFM 2012. LNCS, vol. 7321, pp. 24–38. Springer, Heidelberg (2012)

    Chapter  Google Scholar 

  17. Ladenberger, L., Leuschel, M.: Mastering the visualization of larger state spaces with projection diagrams. In: Butler, M., Conchon, S., Zaïïdi, F. (eds.) Formal Methods and Software Engineering. LNCS, pp. 153–169. Springer, Switzerland (2015)

    Chapter  Google Scholar 

  18. Lamport, L.: Specifying Systems: The TLA+ Language and Tools for Hardware and Software Engineers. Addison-Wesley Longman Publishing Co., Inc, Boston (2002)

    Google Scholar 

  19. Legeard, B., Peureux, F., Utting, M.: Automated boundary testing from Z and B. In: Eriksson, L.-H., Lindsay, P.A. (eds.) FME 2002. LNCS, vol. 2391, pp. 21–40. Springer, Heidelberg (2002)

    Chapter  Google Scholar 

  20. Leuschel, M., Butler, M.: ProB: a model checker for B. In: Araki, K., Gnesi, S., Mandrioli, D. (eds.) FME 2003: Formal Methods. LNCS, pp. 855–874. Springer, Heidelberg (2003)

    Chapter  Google Scholar 

  21. Leuschel, M., Butler, M.: ProB: an automated analysis toolset for the B method. STTT 10(2), 185–203 (2008)

    Article  Google Scholar 

  22. Leuschel, M., Turner, E.: Visualising larger state spaces in Pro B. In: Treharne, H., King, S., C. Henson, M., Schneider, S. (eds.) ZB 2005. LNCS, vol. 3455, pp. 6–23. Springer, Heidelberg (2005)

    Chapter  Google Scholar 

  23. McMillan, K.L.: Symbolic Model Checking: An Approach to the State Explosion Problem. Ph. D. thesis, Carnegie Mellon University, Pittsburgh, PA, USA, UMI Order No. GAX92-24209 (1992)

    Google Scholar 

  24. Plagge, D., Leuschel, M.: Validating Z specifications using the ProB animator and model checker. In: Davies, J., Gibbons, J. (eds.) IFM 2007. LNCS, vol. 4591, pp. 480–500. Springer, Heidelberg (2007)

    Chapter  Google Scholar 

  25. Savary, A., Frappier, M., Leuschel, M., Lanet, J.-L.: Model-based robustness testing in Event-B using mutation. In: Calinescu, R., Rumpe, B. (eds.) SEFM 2015. LNCS, vol. 9276, pp. 132–147. Springer, Heidelberg (2015)

    Chapter  Google Scholar 

  26. Snook, C., Butler, M.: Verifying Dynamic Properties of UML Models by Translation to the B Language and Toolkit. In: UML 2000 WORKSHOP Dynamic Behaviour in UML Models: Semantic Questions, October 2000

    Google Scholar 

  27. Spivey, J.M.: The Z Notation: A Reference Manual. Prentice-Hall Inc, Upper Saddle River (1989)

    MATH  Google Scholar 

  28. Su, W., Abrial, J.-R.: Aircraft landing gear system: approaches with Event-B to the modeling of an industrial system. In: Boniol, F., Wiels, V., Ait Ameur, Y., Schewe, K.-D. (eds.) ABZ 2014. CCIS, vol. 433, pp. 19–35. Springer, Heidelberg (2014)

    Chapter  Google Scholar 

  29. Turner, E., Leuschel, M., Spermann, C., Butler, M.: Symmetry reduced model checking for B. In: Proceedings TASE, pp. 25–34. IEEE (2007)

    Google Scholar 

Download references

Acknowledgements

We would like to thank the reviewers of ABZ’16 for their very useful suggestions, e.g., concerning Fig. 2. We also thank Jens Bendisposto for very useful feedback and ideas.

Author information

Authors and Affiliations

Authors

Corresponding author

Correspondence to Ivaylo Dobrikov .

Editor information

Editors and Affiliations

Rights and permissions

Reprints and permissions

Copyright information

© 2016 Springer International Publishing Switzerland

About this paper

Cite this paper

Dobrikov, I., Leuschel, M. (2016). Enabling Analysis for Event-B. In: Butler, M., Schewe, KD., Mashkoor, A., Biro, M. (eds) Abstract State Machines, Alloy, B, TLA, VDM, and Z. ABZ 2016. Lecture Notes in Computer Science(), vol 9675. Springer, Cham. https://doi.org/10.1007/978-3-319-33600-8_6

Download citation

  • DOI: https://doi.org/10.1007/978-3-319-33600-8_6

  • Published:

  • Publisher Name: Springer, Cham

  • Print ISBN: 978-3-319-33599-5

  • Online ISBN: 978-3-319-33600-8

  • eBook Packages: Computer ScienceComputer Science (R0)

Publish with us

Policies and ethics