Skip to main content
Log in

Using Forward Reachability Analysis for Verification of Lossy Channel Systems

  • Published:
Formal Methods in System Design Aims and scope Submit manuscript

Abstract

We consider symbolic on-the-fly verification methods for systems of finite-state machines that communicate by exchanging messages via unbounded and lossy FIFO queues. We propose a novel representation formalism, called simple regular expressions (SREs), for representing sets of states of protocols with lossy FIFO channels. We show that the class of languages representable by SREs is exactly the class of downward closed languages that arise in the analysis of such protocols. We give methods for computing (i) inclusion between SREs, (ii) an SRE representing the set of states reachable by executing a single transition in a system, and (iii) an SRE representing the set of states reachable by an arbitrary number of executions of a control loop. All these operations are rather simple and can be carried out in polynomial time.

With these techniques, one can straightforwardly construct an algorithm which explores the set of reachable states of a protocol, in order to check various safety properties. We also show how one can perform model-checking of LTL properties, using a standard automata-theoretic construction. It should be noted that all these methods are by necessity incomplete, even for the class of protocols with lossy channels.

To illustrate the applicability of our methods, we have developed a tool prototype and used the tool for automatic verification of (a parameterized version of) the Bounded Retransmission Protocol.

This is a preview of subscription content, log in via an institution to check access.

Access this article

Price excludes VAT (USA)
Tax calculation will be finalised during checkout.

Instant access to the full article PDF.

Similar content being viewed by others

References

  1. Parosh Aziz Abdulla and Bengt Jonsson, “Undecidable verification problems for programs with unreliable channels,” Information and Computation, Vol. 130, No. 1, pp. 71–90, 1996.

    Google Scholar 

  2. Parosh Aziz Abdulla and Bengt Jonsson, “Verifying programs with unreliable channels,” Information and Computation, Vol. 127, No. 2, pp. 91–101, 1996.

    Google Scholar 

  3. A. Annichini, A. Bouajjani, and M. Sighireanu, “TReX: A tool for reachability analysis of complex systems,” in Proc. 13th Intern. Conf. on Computer Aided Verification (CAV'01), Paris, France, July 2001. Lecture Notes in Computer Science 2102, Springer-Verlag.

  4. S. Bensalem, A. Bouajjani, C. Loiseaux, and J. Sifakis, “Property-preserving simulations,” in CAV'92. LNCS 663, 1992.

  5. S. Bensalem, Y. Lakhnech, and S. Owre, “Invest: A tool for the verification of invariants,” in Computer Aided Verification, Alan J. Hu and Moshe Y. Vardi (Eds.), Vol. 1427 of Lecture Notes in Computer Science, Springer-Verlag, 1998, pp. 505-510.

  6. G.V. Bochman, “Finite state description of communicating protocols,” Computer Networks, Vol. 2, pp. 361–371, 1978.

    Google Scholar 

  7. B. Boigelot and P. Godefroid, “Symbolic verification of communication protocols with infinite state spaces using QDDs,” in Proc. 8th Int. Conf. on Computer Aided Verification, Alur and Henzinger (Eds.), Vol. 1102 of Lecture Notes in Computer Science, Springer Verlag, 1996, pp. 1-12.

  8. B. Boigelot, P. Godefroid, B. Willems, and P. Wolper, “The power of QDDs,” Available at http://www.montefiore.ulg.ac.be/~biogelot/research/BGWW97.ps.

  9. B. Boigelot, P. Godefroid, B. Willems, and P. Wolper, “The power of QDDs,” in Proc. of the Fourth International Static Analysis Symposium, Lecture Notes in Computer Science. Springer Verlag, 1997.

  10. B. Boigelot and P. Wolper, “Symbolic verification with periodic sets,” in Proc. 6th Int. Conf. on Computer Aided Verification, Vol. 818 of Lecture Notes in Computer Science, Springer Verlag, 1994, pp. 55-67.

  11. A. Bouajjani and P. Habermehl, “Symbolic reachability analysis of fifo-channel systems with nonregular sets of configurations,” http://www.imag.fr/VERIMAG/PEOPLE/Peter.Habermehl.

  12. A. Bouajjani and P. Habermehl, “Symbolic reachability analysis of Fifo-Channel Systems with Nonregular Sets of Configurations,” Theoretical Computer Science, Vol. 221, Nos. 1/2, 1999.

  13. D. Brand and P. Zafiropulo, “On communicating finite-state machines,” Journal of the ACM, Vol. 2, No. 5, pp. 323–342, 1983.

    Google Scholar 

  14. Gérard Cécé, Alain Finkel, and S. Purushothaman Iyer, “Unreliable channels are easier to verify than perfect channels,” Information and Computation, Vol. 124, No. 1, pp. 20–31, 1996.

    Google Scholar 

  15. A. Choquet and A. Finkel, “Simulation of linear FIFO nets having a structured set of terminal markings,” in Proc. 8th European Workshop on Applications and Theory of Petri Nets, 1987.

  16. C. Courcoubetis, M. Vardi, P. Wolper, and M. Yannakakis, “Memory efficient algorithms for the verification of temporal properties,” in Proc. Workshop on Computer Aided Verification, 1990.

  17. P. D'Argenio, J.-P. Katoen, T. Ruys, and G.J. Tretmans, “The bounded retransmission protocol must be on time,” in TACAS'97. LNCS 1217, 1997.

  18. J.-C. Fernandez, H. Garavel, A. Kerbrat, R. Mateescu, L. Mounier, and M. Sighireanu, “CADP: A protocol validation and verification toolbox,” in CAV'96. LNCS 1102, 1996.

  19. J.Cl. Fernandez and L. Mounier, “A tool set for deciding behavioural equivalences,” in CONCUR'91. LNCS 527, 1991.

  20. A. Finkel and O. Marcé, “Verification of infinite regular communicating automata,” Technical report, LIFAC, Ecole Normale Supérieure de Cachan, Technical Report, 1996.

  21. M.G. Gouda, E.M. Gurari, T.-H. Lai, and L.E. Rosier, “On deadlock detection in systems of communicating finite state machines,” Computers and Artificial Intelligence, Vol. 6, No. 3, pp. 209–228, 1987.

    Google Scholar 

  22. S. Graf and H. Saidi, “Construction of abstract state graphs with PVS,” in Proc. 9th Int. Conf. on Computer Aided Verification, Vol. 1254, Haifa, Israel, Springer Verlag, 1997.

    Google Scholar 

  23. J.F. Groote and J. van de Pol, “A bounded retransmission protocol for large data packets,” Technical report, Department of Philosophy, Utrecht University, Oct. 1993.

  24. O. Grumberg and D.E. Long, “Model checking and modular verification,” in Proc. CONCUR '91, Theories of Concurrency: Unification and Extension, J.C.M. Baseten and J.F. Groote (Eds.), Vol. 527 of Lecture Notes in Computer Science, Amsterdam, Holland, Springer Verlag, 1991, pp. 250–265.

    Google Scholar 

  25. K. Havelund and N. Shankar, “Experiments in theorem proving and model checking for protocol verification,” in FME'96. LNCS 1051, 1996.

  26. L. Helmink, M.P.A. Sellink, and F. Vaandrager, “Proof checking a data link protocol,” in Types for Proofs and Programs. LNCS 806, 1994.

  27. G. Higman, “Ordering by divisibility in abstract algebras,” Proc. London Math. Soc., Vol. 2, pp. 326–336, 1952.

    Google Scholar 

  28. G.J. Holzmann, Design and Validation of Computer Protocols, Prentice Hall, 1991.

  29. R. Mateescu, “Formal description and analysis of a bounded retransmission protocol,” Technical report no. 2965, INRIA, 1996.

  30. R. Mayr, “Undecidable problems in unreliable computations,” in Theoretical Informatics (LATIN'2000), number 1776 in Lecture Notes in Computer Science, 2000.

  31. J.K. Pachl, “Protocol description and analysis based on a state transition model with channel expressions,” in Protocol Specification, Testing, and Verification VII, May 1987.

  32. W. Peng and S. Purushothaman, “Data flow analysis of communicating finite state machines,” ACM Trans. on Programming Languages and Systems, Vol. 13, No. 3, pp. 399–442, 1991.

    Google Scholar 

  33. A.P. Sistla and L.D. Zuck, “Automatic temporal verification of buffer systems,” in Proc.Workshop on Computer Aided Verification, Larsen and Skou (Eds.), Vol. 575 of Lecture Notes in Computer Science, Springer Verlag, 1991.

  34. M.Y. Vardi and P.Wolper, “An automata-theoretic approach to automatic program verification,” in Proc. LICS'86, 1st IEEE Int. Symp. on Logic in Computer Science, June 1986, pp. 332-344.

Download references

Author information

Authors and Affiliations

Authors

Rights and permissions

Reprints and permissions

About this article

Cite this article

Abdulla, P.A., Collomb-Annichini, A., Bouajjani, A. et al. Using Forward Reachability Analysis for Verification of Lossy Channel Systems. Formal Methods in System Design 25, 39–65 (2004). https://doi.org/10.1023/B:FORM.0000033962.51898.1a

Download citation

  • Issue Date:

  • DOI: https://doi.org/10.1023/B:FORM.0000033962.51898.1a

Navigation