Formal System Modelling Using Abstract Data Types in Event-B
Abstract
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.
Keywords
Event-B refinement abstract data typesPreview
Unable to display preview. Download preview PDF.
References
- 1.Abrial, J.-R.: The B-book: Assigning Programs to Meanings. Cambridge University Press (1996)Google Scholar
- 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.Abrial, J.-R.: Modeling in Event-B: System and Software Engineering. Cambridge University Press (2010)Google Scholar
- 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.Abrial, J.-R., Hallerstede, S.: Refinement, Decomposition, and Instantiation of Discrete Models: Application to Event-B. Fundam. Inform. 77(1-2), 1–28 (2007)MATHMathSciNetGoogle Scholar
- 6.European Railway Agency. ERTMS/ETCS Functional Requirements Specification. European Railway Agency, Valencinnes, France (2007)Google Scholar
- 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.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.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.Breitman, K., Cavalcanti, A. (eds.): ICFEM 2009. LNCS, vol. 5885. Springer, Heidelberg (2009)Google Scholar
- 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.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.Fürst, A., Desai, K., Hoang, T.S., Sato, N.: Generic Instantiation Plug-in, http://sourceforge.net/projects/gen-inst/
- 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.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.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.Platzer, A., Quesel, J.-D.: European Train Control System: A Case Study in Formal Verification. In: Breitman, Cavalcanti [10], pp. 246–265Google Scholar
- 18.Sannella, D., Tarlecki, A.: Essential Concepts of Algebraic Specification and Program Development. Formal Asp. Comput. 9(3), 229–269 (1997)CrossRefMATHGoogle Scholar
- 19.Silva, R., Butler, M.: Supporting Reuse of Event-B Developments through Generic Instantiation. In: Breitman, Cavalcanti [10], pp. 466–484Google Scholar