Abstract
This paper presents an Event-B model of a speed control system, a part of the case study provided in the ABZ2020 conference. The case study describes how the system regulates the current speed of a car according to a set of criteria like the driver’s desired speed, the position of a possible preceding vehicle, but also a given speed limit that the driver must not exceed. For that purpose, this controller reads different information from the available sensors (key state, desired speed) and takes adequate actions by acting on the actuators of the car’s speed according to the information read. To formally model this system, we adopt a stepwise refinement approach with the Event-B method. We consider most of the features of the case study. All proof obligations of the invariant properties have been discharged using the Rodin provers. Our model has been validated using ProB by applying the different provided scenarios. This validation has permitted us to point out and correct some mistakes, ambiguities and oversights contained in the first versions of the case study.
Similar content being viewed by others
References
Abrial, J.R.: The B-book – Assigning Programs to Meanings. Cambridge University Press, Cambridge (1996)
Abrial, J.R.: Modeling in Event-B – System and Software Engineering. Cambridge University Press, Cambridge (2010)
Abrial, J.R., Butler, M., Hallerstede, S., Hoang, T.S., Mehta, F., Voisin, L.: Rodin: an open toolset for modelling and reasoning in Event-B. Int. J. Softw. Tools Technol. Transf. 12(6), 447–466 (2010)
Arcaini, P., Bonfanti, S., Gargantini, A., Riccobene, E., Scandurra, P.: Modelling an automotive software-intensive system with adaptive features using ASMETA. In: Rigorous State-Based Methods – 7th International Conference ABZ. Lecture Notes in Computer Science, vol. 12071, pp. 302–317. Springer, Berlin (2020)
Bendisposto, J., Geleßus, D., Jansing, Y., Leuschel, M., Pütz, A., Vu, F., Werth, M.: ProB 2-UI: a Java-based user interface for ProB. In: Proceedings FMICS (International Conference on Formal Methods for Industrial Critical Systems). Lecture Notes in Computer Science, vol. 12863, pp. 193–201. Springer, Berlin (2021)
Börger, E., Stärk, R.F.: Abstract State Machines. A Method for High-Level System Design and Analysis. Springer, Berlin (2003)
Butler, M., Maamria, I.: Practical Theory Extension in Event-B. In: Theories of Programming and Formal Methods: Essays Dedicated to Jifeng He on the Occasion of His 70th Birthday, pp. 67–81. Springer, Berlin (2013)
Clarke, E.M., Emerson, E.A.: Design and synthesis of synchronization skeletons using branching time temporal logic. In: 25 Years of Model Checking – History, Achievements, Perspectives. Lecture Notes in Computer Science, vol. 5000, pp. 196–215. Springer, Berlin (2008)
Clarke, E.M., Kroening, D., Lerda, F.: A tool for checking ANSI-C programs. In: Tools and Algorithms for the Construction and Analysis of Systems, 10th International Conference TACAS. Lecture Notes in Computer Science, vol. 2988, pp. 168–176. Springer, Berlin (2004)
Clearsy. https://www.atelierb.eu/en/presentation-of-the-b-method/formal-proof-presentation/
Event-B Consortium. http://www.event-b.org/
Event-B Consortium: SMT Solvers Plug-in. https://wiki.event-b.org/index.php/SMT_Solvers_Plug-in
Fotso, S.J.T., Frappier, M., Laleau, R., Mammar, A.: Modeling the hybrid ERTMS/ETCS level 3 standard using a formal requirements engineering approach. Int. J. Softw. Tools Technol. Transf. 22(3), 349–363 (2020)
Hoang, T.S., Dghaym, D., Snook, C., Butler, M.: A composition mechanism for refinement-based methods. In: 22nd International Conference on Engineering of Complex Computer Systems ICECCS, pp. 100–109. IEEE Comput. Soc., Los Alamitos (2017)
Hoang, T.S., Butler, M., Reichl, K.: The hybrid ERTMS/ETCS level 3 case study. In: Butler, M., Raschke, A., Hoang, T.S., Reichl, K. (eds.) Abstract State Machines, Alloy, B, TLA, VDM, and Z. Lecture Notes in Computer Science, pp. 251–261. Springer, Berlin (2018)
Houdek, F., Raschke, A.: Adaptive Exterior Light and Speed Control System (2019). https://abz2020.uni-ulm.de/case-study#Specification-Document
Krings, S., Körner, P., Dunkelau, J., Rutenkolk, C.: A verified low-level implementation of the adaptive exterior light and speed control system. In: Rigorous State-Based Methods – 7th International Conference ABZ. Lecture Notes in Computer Science, vol. 12071, pp. 382–397. Springer, Berlin (2020)
Leuschel, M., Butler, M.J.: ProB: an automated analysis toolset for the B method. Int. J. Softw. Tools Technol. Transf. 10(2), 185–203 (2008)
Leuschel, M., Bendisposto, J., Dobrikov, I., Krings, S., Plagge, D.: From animation to data validation: the ProB constraint solver 10 years on. In: Formal Methods Applied to Complex Systems: Implementation of the B Method, pp. 427–446. Wiley, New York (2014). Chap. 14
Mammar, A., Frappier, M.: Modeling of a speed control system using Event-B. In: Rigorous State-Based Methods – 7th International Conference ABZ. Lecture Notes in Computer Science, vol. 12071, pp. 367–381. Springer, Berlin (2020)
Mammar, A., Frappier, M.: An Event-B model of a speed control system (2023). Available at https://github.com/AmelMammar/SpeedControlSystem
Mammar, A., Laleau, R.: Modeling a landing gear system in Event-B. In: ABZ 2014: The Landing Gear Case Study – Case Study Track, Held at the 4th International Conference on Abstract State Machines, Alloy, B, TLA, VDM, and Z. Communications in Computer and Information Science, vol. 433, pp. 80–94. Springer, Berlin (2014)
Mammar, A., Laleau, R.: Modeling a landing gear system in Event-B. Int. J. Softw. Tools Technol. Transf. 19(2), 167–186 (2017)
Mammar, A., Frappier, M., Fotso, S.J.T., Laleau, R.: An Event-B model of the hybrid ERTMS/ETCS level 3 standard. In: Abstract State Machines, Alloy, B, TLA, VDM, and Z – 6th International Conference ABZ. Lecture Notes in Computer Science, vol. 10817, pp. 353–366. Springer, Berlin (2018)
Mammar, A., Frappier, M., Fotso, S.J.T., Laleau, R.: A formal refinement-based analysis of the hybrid ERTMS/ETCS level 3 standard. Int. J. Softw. Tools Technol. Transf. 22(3), 333–347 (2020)
Mammar, A., Frappier, M., Laleau, R.: An Event-B model of an automotive adaptive exterior light system. In: Rigorous State-Based Methods – 7th International Conference ABZ. Lecture Notes in Computer Science, vol. 12071, pp. 351–366. Springer, Berlin (2020)
Nakahori, K., Yamaguchi, S.: A support tool to design IoT services with NuSMV. In: IEEE International Conference on Consumer Electronics, (ICCE), pp. 80–83. IEEE (2017)
Parnas, D.L., Madey, J.: Functional documents for computer systems. Sci. Comput. Program. 25(1), 41–61 (1995)
Pnueli, A.: The temporal logic of programs. In: 18th Annual Symposium on Foundations of Computer Science, pp. 46–57. IEEE Computer Society, Providence (1977)
ProB: https://prob.hhu.de/
Snook, C.: http://wiki.event-b.org/index.php/Event-B_Statemachines
Snook, C., Butler, M.: UML-B: formal modeling and design aided by UML. ACM Trans. Softw. Eng. Methodol. 15(1), 92–122 (2006)
Werth, M., Leuschel, M.: VisB: a lightweight tool to visualize formal models with SVG graphics. In: Raschke, A., Méry, D., Houdek, F. (eds.) Proceedings ABZ 2020. Lecture Notes in Computer Science, pp. 260–265. Springer, Berlin (2020)
Acknowledgements
The authors would like to thank the case study authors, and Frank Houdek in particular, for his responsiveness and useful feedback during the modeling process when questions were raised or when ambiguities were found. The authors would also like to thank Michael Leuschel for his quick feedback on using ProB for this large case study. Since the first version of the paper, the very valuable reviewers’ comments have helped us improve the quality of the paper. We would like to sincerely thank them.
Funding
This work was supported in part by the DISCONT ANR French project and NSERC (Natural Sciences and Engineering Research Council of Canada).
Author information
Authors and Affiliations
Corresponding author
Additional information
Publisher’s Note
Springer Nature remains neutral with regard to jurisdictional claims in published maps and institutional affiliations.
Rights and permissions
Springer Nature or its licensor (e.g. a society or other partner) holds exclusive rights to this article under a publishing agreement with the author(s) or other rightsholder(s); author self-archiving of the accepted manuscript version of this article is solely governed by the terms of such publishing agreement and applicable law.
About this article
Cite this article
Mammar, A., Frappier, M. Modeling of a speed control system using Event-B. Int J Softw Tools Technol Transfer 26, 347–363 (2024). https://doi.org/10.1007/s10009-024-00749-y
Accepted:
Published:
Issue Date:
DOI: https://doi.org/10.1007/s10009-024-00749-y