McScM: A General Framework for the Verification of Communicating Machines

  • Alexander Heußner
  • Tristan Le Gall
  • Grégoire Sutre
Part of the Lecture Notes in Computer Science book series (LNCS, volume 7214)


We present McScM, a platform for implementing and comparing verification algorithms for the class of finite-state processes exchanging messages over reliable, unbounded FIFO channels. McScM provides tools for the safety verification and controller synthesis of these infinite-state models. Our verification tool implements several model-checking techniques: CEGAR with different abstraction-refinement methods, abstract interpretation, abstract regular model checking, and lazy abstraction. Seen as a general framework for the class of transition systems with finite control/infinite data, McScM delivers the basic infrastructure for implementing verification algorithms, and privileges to conveniently implement new ideas on a high level of abstraction. It also allows us to compare and benchmark different algorithmic approaches with the same backend.


Model Check Linear Temporal Logic Abstract Interpretation Modular Architecture Symbolic Model Check 
These keywords were added by machine and not by the authors. This process is experimental and the keywords may be updated as the learning algorithm improves.


  1. 1.
    Aziz Abdulla, P., Jonsson, B.: Undecidable verification problems for programs with unreliable channels. Information and Computation 130(1), 71–90 (1996)MathSciNetzbMATHCrossRefGoogle Scholar
  2. 2.
    Bouajjani, A., Habermehl, P., Vojnar, T.: Abstract Regular Model Checking. In: Alur, R., Peled, D.A. (eds.) CAV 2004. LNCS, vol. 3114, pp. 372–386. Springer, Heidelberg (2004)CrossRefGoogle Scholar
  3. 3.
    Brand, D., Zafiropulo, P.: On Communicating Finite-State Machines. J. ACM 30(2), 323–342 (1983)MathSciNetzbMATHCrossRefGoogle Scholar
  4. 4.
    Clarke, E., Grumberg, O., Jha, S., Lu, Y., Veith, H.: Counterexample-guided Abstraction Renement for Symbolic Model Checking. J. ACM 50(5), 752–794 (2003)MathSciNetCrossRefGoogle Scholar
  5. 5.
    Henzinger, T., Majumdar, R., Raskin, J.-F.: A classification of symbolic transition systems. ACM Transactions on Computational Logic 6, 1–32 (2005)MathSciNetCrossRefGoogle Scholar
  6. 6.
    Heußner, A., Le Gall, T., Sutre, G.: Extrapolation-Based Path Invariants for Abstraction Refinement of Fifo Systems. In: Păsăreanu, C.S. (ed.) SPIN 2009. LNCS, vol. 5578, pp. 107–124. Springer, Heidelberg (2009)Google Scholar
  7. 7.
    Kalyon, G., Le Gall, T., Marchand, H., Massart, T.: Global State Estimates for Distributed Systems. In: Bruni, R., Dingel, J. (eds.) FORTE 2011 and FMOODS 2011. LNCS, vol. 6722, pp. 198–212. Springer, Heidelberg (2011)CrossRefGoogle Scholar
  8. 8.
    Le Gall, T., Jeannet, B., Jéron, T.: Verification of Communication Protocols Using Abstract Interpretation of FIFO Queues. In: Johnson, M., Vene, V. (eds.) AMAST 2006. LNCS, vol. 4019, pp. 204–219. Springer, Heidelberg (2006)CrossRefGoogle Scholar
  9. 9.
    McMillan, K.L.: Lazy Abstraction with Interpolants. In: Ball, T., Jones, R.B. (eds.) CAV 2006. LNCS, vol. 4144, pp. 123–136. Springer, Heidelberg (2006)CrossRefGoogle Scholar
  10. 10.
  11. 11.
  12. 12.
  13. 13.
  14. 14.
  15. 15.
  16. 16.
  17. 17.
  18. 18.

Copyright information

© Springer-Verlag Berlin Heidelberg 2012

Authors and Affiliations

  • Alexander Heußner
    • 1
  • Tristan Le Gall
    • 2
  • Grégoire Sutre
    • 3
  1. 1.Université Libre de BruxellesBrusselsBelgium
  2. 2.CEA, LIST, DILS/LMeASI, Gif-sur-YvetteFrance
  3. 3.LaBRI, UMR 5800Univ. Bordeaux & CNRSTalenceFrance

Personalised recommendations