Verification of Communication Protocols Using Abstract Interpretation of FIFO Queues

  • Tristan Le Gall
  • Bertrand Jeannet
  • Thierry Jéron
Part of the Lecture Notes in Computer Science book series (LNCS, volume 4019)


We address the verification of communication protocols or distributed systems that can be modeled by Communicating Finite State Machines (CFSMs), i.e. a set of sequential machines communicating via unbounded FIFO channels. Unlike recent related works based on acceleration techniques, we propose to apply the Abstract Interpretation approach to such systems, which consists in using approximated representations of sets of configurations. We show that the use of regular languages together with an extrapolation operator provides a simple and elegant method for the analysis of CFSMs, which is moreover often as accurate as acceleration techniques, and in some cases more expressive. Last, when the system has several queues, our method can be implemented either as an attribute-independent analysis or as a more precise (but also more costly) attribute-dependent analysis.


Regular Language Widening Operator Reachability Analysis Acceleration Technique FIFO Queue 
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.


Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.


  1. 1.
    Brand, D., Zafiropulo, P.: On communicating finite-state machines. J. ACM 30(2), 323–342 (1983)zbMATHCrossRefMathSciNetGoogle Scholar
  2. 2.
    Bochmann, G.V.: Finite state description of communication protocols. IEEE Computer Society Press, Los Alamitos (1995)Google Scholar
  3. 3.
    Turner, K.J.: Using Formal Description Techniques: An Introduction to Estelle, Lotos, and SDL. John Wiley & Sons, Inc., New York (1993)Google Scholar
  4. 4.
    Nielsen, M., Plotkin, G., Winskel, G.: Petri nets, event structures and domains, part 1. Theoretical Computer Science 13 (1981)Google Scholar
  5. 5.
    ITU-TS: ITU-TS Recommendation Z.120: Message Sequence Chart (MSC) (1999)Google Scholar
  6. 6.
    Reniers, M., Mauw, S.: High-level message sequence charts. In: Cavalli, A., Sarma, A. (eds.) Proc. of the 8th SDL Forum (1997)Google Scholar
  7. 7.
    Cécé, G., Finkel, A., Iyer, S.P.: Unreliable channels are easier to verify than perfect channels. Information and Computation 124(1), 20–31 (1996)zbMATHCrossRefMathSciNetGoogle Scholar
  8. 8.
    Abdulla, P., Bouajjani, A., Jonsson, B.: On-the-fly analysis of systems with unbounded, lossy FIFO channels. In: Y. Vardi, M. (ed.) CAV 1998. LNCS, vol. 1427, Springer, Heidelberg (1998)Google Scholar
  9. 9.
    Bardin, S., Finkel, A., Leroux, J., Petrucci, L.: FAST: Fast Acceleration of Symbolic Transition systems. In: Hunt Jr., W.A., Somenzi, F. (eds.) CAV 2003. LNCS, vol. 2725, Springer, Heidelberg (2003)CrossRefGoogle Scholar
  10. 10.
    Boigelot, B., Godefroid, P., Willems, B., Wolper, P.: The power of QDDs. In: Van Hentenryck, P. (ed.) SAS 1997. LNCS, vol. 1302, Springer, Heidelberg (1997)CrossRefGoogle Scholar
  11. 11.
    Finkel, A., Iyer, S.P., Sutre, G.: Well-abstracted transition systems: application to FIFO automata. Information and Computation 181(1), 1–31 (2003)zbMATHCrossRefMathSciNetGoogle Scholar
  12. 12.
    Boigelot, B., Godefroid, P.: Symbolic verification of communication protocols with infinite state spaces using QDDs. FMSD 14(3), 237–255 (1997)Google Scholar
  13. 13.
    Bouajjani, A., Habermehl, P.: Symbolic reachability analysis of FIFO-channel systems with nonregular sets of configurations. Theor. Comp. Science 221(1-2) (1999)Google Scholar
  14. 14.
    Abdulla, P., Jonsson, B., Nilsson, M., Saksena, M.: A survey of regular model checking. In: Gardner, P., Yoshida, N. (eds.) CONCUR 2004. LNCS, vol. 3170, Springer, Heidelberg (2004)CrossRefGoogle Scholar
  15. 15.
    Bouajjani, A., Jonsson, B., Nilsson, M., Touili, T.: Regular model checking. In: Emerson, E.A., Sistla, A.P. (eds.) CAV 2000. LNCS, vol. 1855, Springer, Heidelberg (2000)CrossRefGoogle Scholar
  16. 16.
    Boigelot, B., Legay, A., Wolper, P.: Iterating transducers in the large. In: Hunt Jr., W.A., Somenzi, F. (eds.) CAV 2003. LNCS, vol. 2725, Springer, Heidelberg (2003)Google Scholar
  17. 17.
    Bouajjani, A., Habermehl, P., Vojnar, T.: Abstract regular model checking. In: Alur, R., Peled, D.A. (eds.) CAV 2004. LNCS, vol. 3114, Springer, Heidelberg (2004)CrossRefGoogle Scholar
  18. 18.
    Memmi, G., Finkel, A.: An introduction to FIFO nets-monogeneous nets: a subclass of FIFO nets. Theoretical Computer Science 31(2-3) (1985)Google Scholar
  19. 19.
    Finkel, A., Rosier, L.: A survey on the decidability questions for classes of FIFO nets. In: Rozenberg, G. (ed.) APN 1988. LNCS, vol. 340, Springer, Heidelberg (1988)Google Scholar
  20. 20.
    Cécé, G., Finkel, A.: Verification of programs with half-duplex communication. Information and Computation 202(2) (2005)Google Scholar
  21. 21.
    Abdulla, P., Jonsson, B.: Verifying programs with unreliable channels. Information and Computation 127(2) (1996)Google Scholar
  22. 22.
    Abdulla, P., Bertrand, N., Rabinovich, A., Schnoebelen, P.: Verification of probabilistic systems with faulty communication. Inf. and Comp. 202(2) (2005)Google Scholar
  23. 23.
    Peng, W., Puroshothaman, S.: Data flow analysis of communicating finite state machines. ACM Trans. Program. Lang. Syst. 13(3), 399–442 (1991)CrossRefGoogle Scholar
  24. 24.
    Lesens, D., Halbwachs, N., Raymond, P.: Automatic verification of parameterized linear networks of processes. In: Principles of Programming Languages (POPL 1997), ACM Press, New York (1997)Google Scholar
  25. 25.
    Cousot, P., Cousot, R.: Abstract interpretation and application to logic programs. Journal of Logic Programming 13(2–3) (1992)Google Scholar
  26. 26.
    Brzozowski, J.A.: Derivatives of regular expressions. Journal of the ACM 1(4) (1964)Google Scholar
  27. 27.
    Feret, J.: Abstract interpretation-based static analysis of mobile ambients. In: Cousot, P. (ed.) SAS 2001. LNCS, vol. 2126, Springer, Heidelberg (2001)Google Scholar
  28. 28.
    Jeannet, B., Jeron, T., Le Gall, T.: Abstracting interpretation of FIFO channels. Technical Report 5784, INRIA (2005)Google Scholar
  29. 29.
    Jones, N., Muchnick, S.: Complexity of flow analysis, inductive assertion synthesis, and a language due to Dijkstra. In: Jones, N., Muchnick, S. (eds.) Program Flow Analysis: Theory and Applications, Prentice-Hall, Englewood Cliffs (1981)Google Scholar
  30. 30.
    Wolper, P., Boigelot, B.: An automata-theoretic approach to Presburger arithmetic constraints. In: Mycroft, A. (ed.) SAS 1995. LNCS, vol. 983, Springer, Heidelberg (1995)Google Scholar
  31. 31.
    Bourdoncle, F.: Efficient chaotic iteration strategies with widenings. In: Pottosin, I.V., Bjorner, D., Broy, M. (eds.) FMP&TA 1993. LNCS, vol. 735, Springer, Heidelberg (1993)CrossRefGoogle Scholar
  32. 32.
    Abdulla, P.A., Annichini, A., Bouajjani, A.: Symbolic verification of lossy channel systems: Application to the bounded retransmission protocol. In: Cleaveland, W.R. (ed.) ETAPS 1999 and TACAS 1999. LNCS, vol. 1579, Springer, Heidelberg (1999)CrossRefGoogle Scholar
  33. 33.
    Su, Z., Wagner, D.: A class of polynomially solvable range constraints for interval analysis without widenings and narrowings. In: Jensen, K., Podelski, A. (eds.) TACAS 2004. LNCS, vol. 2988, Springer, Heidelberg (2004)CrossRefGoogle Scholar
  34. 34.
    Jeannet, B., Halbwachs, N., Raymond, P.: Dynamic partitioning in analyses of numerical properties. In: Cortesi, A., Filé, G. (eds.) SAS 1999. LNCS, vol. 1694, Springer, Heidelberg (1999)CrossRefGoogle Scholar

Copyright information

© Springer-Verlag Berlin Heidelberg 2006

Authors and Affiliations

  • Tristan Le Gall
    • 1
  • Bertrand Jeannet
    • 1
  • Thierry Jéron
    • 1
  1. 1.IRISA/INRIA RennesRennesFrance

Personalised recommendations