Formal System Modelling Using Abstract Data Types in Event-B

  • Andreas Fürst
  • Thai Son Hoang
  • David Basin
  • Naoto Sato
  • Kunihiko Miyazaki
Part of the Lecture Notes in Computer Science book series (LNCS, volume 8477)


We present a formal modelling approach using Abstract Data Types (ADTs) for developing large-scale systems in Event-B. The novelty of our approach is the combination of refinement and instantiation techniques to manage the complexity of systems under development. With ADTs, we model system components on an abstract level, specifying only the necessary properties of the components. At the same time, we postpone the introduction of their concrete definitions to later development steps. We evaluate our approach using a largescale case study in train control systems. The results show that our approach helps reduce system details during early development stages and leads to simpler and more automated proofs.


Event-B refinement abstract data types 


Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.


  1. 1.
    Abrial, J.-R.: The B-book: Assigning Programs to Meanings. Cambridge University Press (1996)Google Scholar
  2. 2.
    Abrial, J.-R.: Formal Methods in Industry: Achievements, Problems, Future. In: Osterweil, L.J., Rombach, H.D., Soffa, M.L. (eds.) ICSE, pp. 761–768. ACM (2006)Google Scholar
  3. 3.
    Abrial, J.-R.: Modeling in Event-B: System and Software Engineering. Cambridge University Press (2010)Google Scholar
  4. 4.
    Abrial, J.-R.: From Z to B and then Event-B: Assigning Proofs to Meaningful Programs. In: Johnsen, E.B., Petre, L. (eds.) IFM 2013. LNCS, vol. 7940, pp. 1–15. Springer, Heidelberg (2013)CrossRefGoogle Scholar
  5. 5.
    Abrial, J.-R., Hallerstede, S.: Refinement, Decomposition, and Instantiation of Discrete Models: Application to Event-B. Fundam. Inform. 77(1-2), 1–28 (2007)zbMATHMathSciNetGoogle Scholar
  6. 6.
    European Railway Agency. ERTMS/ETCS Functional Requirements Specification. European Railway Agency, Valencinnes, France (2007)Google Scholar
  7. 7.
    Basin, D., Fürst, A., Hoang, T.S., Miyazaki, K., Sato, N.: Abstract Data Types in Event-B - An Application of Generic Instantiation. CoRR (2012)Google Scholar
  8. 8.
    Behm, P., Benoit, P., Faivre, A., Meynadier, J.-M.: Météor: A Successful Application of B in a Large Project. In: Wing, J.M., Woodcock, J. (eds.) FM 1999. LNCS, vol. 1708, pp. 369–387. Springer, Heidelberg (1999)CrossRefGoogle Scholar
  9. 9.
    Bjørner, D.: New Results and Trends in Formal Techniques & Tools for the Development of Software for Transportation Systems. In: FORMS (2003)Google Scholar
  10. 10.
    Breitman, K., Cavalcanti, A. (eds.): ICFEM 2009. LNCS, vol. 5885. Springer, Heidelberg (2009)Google Scholar
  11. 11.
    Butler, M., Maamria, I.: Practical theory extension in Event-B. In: Liu, Z., Woodcock, J., Zhu, H. (eds.) Theories of Programming and Formal Methods. LNCS, vol. 8051, pp. 67–81. Springer, Heidelberg (2013)CrossRefGoogle Scholar
  12. 12.
    Ehrig, H., Mahr, B.: Fundamentals of Algebraic Specification 1: Equations und Initial Semantics. EATCS Monographs on Theoretical Computer Science, vol. 6. Springer (1985)Google Scholar
  13. 13.
    Fürst, A., Desai, K., Hoang, T.S., Sato, N.: Generic Instantiation Plug-in,
  14. 14.
    Haxthausen, A.E., Peleska, J.: Formal Development and Verification of a Distributed Railway Control System. In: Wing, J.M., Woodcock, J., Davies, J. (eds.) FM 1999. LNCS, vol. 1709, pp. 1546–1563. Springer, Heidelberg (1999)CrossRefGoogle Scholar
  15. 15.
    IEEE Std 1474.1-2004. IEEE Standard for Communications-Based Train Control (CBTC) Performance and Functional Requirements. IEEE, New York, USA (2005)Google Scholar
  16. 16.
    Liskov, B., Zilles, S.: Programming with Abstract Data Types. In: Proceedings of the ACM SIGPLAN Symposium on Very High Level Languages, pp. 50–59. ACM, New York (1974)CrossRefGoogle Scholar
  17. 17.
    Platzer, A., Quesel, J.-D.: European Train Control System: A Case Study in Formal Verification. In: Breitman, Cavalcanti [10], pp. 246–265Google Scholar
  18. 18.
    Sannella, D., Tarlecki, A.: Essential Concepts of Algebraic Specification and Program Development. Formal Asp. Comput. 9(3), 229–269 (1997)CrossRefzbMATHGoogle Scholar
  19. 19.
    Silva, R., Butler, M.: Supporting Reuse of Event-B Developments through Generic Instantiation. In: Breitman, Cavalcanti [10], pp. 466–484Google Scholar

Copyright information

© Springer-Verlag Berlin Heidelberg 2014

Authors and Affiliations

  • Andreas Fürst
    • 1
  • Thai Son Hoang
    • 1
  • David Basin
    • 1
  • Naoto Sato
    • 2
  • Kunihiko Miyazaki
    • 2
  1. 1.Institute of Information SecurityETH-ZurichSwitzerland
  2. 2.Yokohama Research Lab, Hitachi Ltd.Japan

Personalised recommendations