Experiments in Formal Modelling of a Deadlock Avoidance Algorithm for a CBTC System

This paper presents a set of experiments in formal modelling and verification of a deadlock avoidance algorithm of an Automatic Train Supervision System (ATS). The algorithm is modelled and verified using four formal environment, namely UMC, Promela/SPIN, NuSMV, and mCRL2. The experience gained in this multiple modelling/verification experiments is described. We show that the algorithm design, structured as a set of concurrent activities cooperating through a shared memory, can be replicated in all the formal frameworks taken into consideration with relative effort. In addition, we highlight specific peculiarities of the various tools and languages, which emerged along our experience.

[1]  Franco Mazzanti,et al.  Deadlock Avoidance in Train Scheduling: A Model Checking Approach , 2014, FMICS.

[2]  Franco Mazzanti,et al.  Designing a Deadlock-Free Train Scheduler: A Model Checking Approach , 2014, NASA Formal Methods.

[3]  Stefania Gnesi,et al.  An Abstract, on the Fly Framework for the Verification of Service-Oriented Systems , 2011, Results of the SENSORIA Project.

[4]  Alessio Ferrari,et al.  From commercial documents to system requirements: an approach for the engineering of novel CBTC solutions , 2014, International Journal on Software Tools for Technology Transfer.

[5]  Jan Friso Groote,et al.  Modeling and Analysis of Communicating Systems , 2014 .

[6]  Maurice H. ter Beek,et al.  From EU Projects to a Family of Model Checkers - From Kandinsky to KandISTI , 2015, Software, Services, and Systems.

[7]  Franco Mazzanti An Experience in Ada Multicore Programming: Parallelisation of a Model Checking Engine , 2016, Ada-Europe.

[8]  Stefania Gnesi,et al.  A logical verification methodology for service-oriented computing , 2012, TSEM.

[9]  Marco Pistore,et al.  NuSMV 2: An OpenSource Tool for Symbolic Model Checking , 2002, CAV.

[10]  Gerard J. Holzmann,et al.  The SPIN Model Checker , 2003 .

[11]  Maurice H. ter Beek,et al.  A state/event-based model-checking approach for the analysis of abstract system properties , 2011, Sci. Comput. Program..

[12]  Fausto Giunchiglia,et al.  NUSMV: a new symbolic model checker , 2000, International Journal on Software Tools for Technology Transfer.