Skip to main content

The power of QDDs (extended abstract)

  • Concurrency
  • Conference paper
  • First Online:
Static Analysis (SAS 1997)

Part of the book series: Lecture Notes in Computer Science ((LNCS,volume 1302))

Included in the following conference series:

Abstract

Queue-content Decision Diagrams (QDDs) are finite-automaton based data structures for representing (possibly infinite) sets of contents of a finite collection of unbounded FIFO queues. Their intended use is to serve as a symbolic representation of the possible queue contents that can occur in the state space of a protocol modeled by finite-state machines communicating through unbounded queues. This is done with the help of a loop-first search, a state-space exploration technique that attempts whenever possible to compute symbolically the effect of repeatedly executing a loop any number of times, making it possible to analyze protocols with infinite state spaces though without the guarantee of termination. This paper first solves a key problem concerning the use of QDDs in this context: it precisely characterizes when, and shows how, the operations required by a loop-first search can be applied to QDDs. Then, it addresses the problem of exploiting QDDs and loop-first searches to broaden the range of properties that can be checked from simple state reachability to temporal logic. Finally, a sufficient criterion for the termination of a loop-first search using QDDs is given.

“Aspirant” (Research Assistant) for the National Fund for Scientific Research (Belgium). The work of this author was done partly while visiting Bell Laboratories.

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

Access this chapter

Institutional subscriptions

Preview

Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.

References

  1. P. A. Abdulla and B. Jonsson. Undecidable verification problems for programs with unreliable channels. In Proc. ICALP-94, volume 820 of Lecture Notes in Computer Science, pages 316–327. Springer-Verlag, 1994.

    Google Scholar 

  2. B. Boigelot and P. Godefroid. Symbolic verification of communication protocols with infinite state spaces using QDDs. In Proc. 8th Conference on Computer Aided Verification, volume 1102 of Lecture Notes in Computer Science, pages 1–12, New Brunswick, August 1996. Springer-Verlag.

    Google Scholar 

  3. B. Boigelot, P. Godefroid, B. Willems and P. Wolper.The Power of QDDs. Full paper, available at http://vvv.montefiore.ulg.ac.be/boigelot/research/BGWW97.ps.

    Google Scholar 

  4. J.R. Büchi. On a decision method in restricted second order arithmetic. In Proc. Internat. Congr. Logic, Method and Philos. Sci. 1960, pages 1–12, Stanford, 1962. Stanford University Press.

    Google Scholar 

  5. B. Boigelot and P. Wolper. Symbolic verification with periodic sets. In Proc. 6th Conference on Computer Aided Verification, volume 818 of Lecture Notes in Computer Science, pages 55–67, Stanford, June 1994. Springer-Verlag.

    Google Scholar 

  6. D. Brand and P. Zafiropulo. On communicating finite-state machines. Journal of the ACM, 2(5):323–342, 1983.

    Google Scholar 

  7. P. Cousot and R. Cousot. Abstract Interpretation: A Unified Lattice Model for Static Analysis of Programs by Construction or Approximation of Fixpoints. In Proc..4th ACM Symposium on Principles of Programming Languages, 1977.

    Google Scholar 

  8. E.M. Clarke, E.A. Emerson and A.P. Sistla. Automatic verification of finitestate concurrent systems using temporal logic specifications. ACM Transactions on Programming Languages and Systems, 8(2):244–263, January 1986.

    Google Scholar 

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

    Google Scholar 

  10. P. Godefroid and D. E. Long.Symbolic protocol verification with Queue BDDs. In Proceedings of the 11th IEEE Symposium on Logic in Computer Science, pages 198–206, New Brunswick, July 1996.

    Google Scholar 

  11. P. Godefroid Partial-order methods for the verification of concurrent systems — An approach to the state-explosion problem. In Volume 1032 of Lecture Notes in Computer Science, Springer-Verlag, 1996.

    Google Scholar 

  12. G. Holzmann. Design and Validation of Computer Protocols. Prentice-Hall International Editions, 1991.

    Google Scholar 

  13. T. Jéron. Testing for unboundedness of FIFO channels. In Proc. STACS-91: Symposium on Theoretical Aspects of Computer Science, 2701 0699 V 2 volume 480 of Lecture Notes in Computer Science, pages 322–333, Hamburg, 1991. Springer-Verlag.

    Google Scholar 

  14. H. R. Lewis and C. H. Papadimitriou. Elements of the theory of computation. Prentice Hall, 1981.

    Google Scholar 

  15. Z. Manna and A. Pnueli. The Temporal logic of reactive and concurrent systems: Specification. Springer-Verlag, 1992.

    Google Scholar 

  16. J. K. Pachl. Protocol description and analysis based on a state transition model with channel expressions. In Proc. 7th IFIP WG 6.1 International Symposium on Protocol Specification, Testing, and Verification. North-Holland, 1987.

    Google Scholar 

  17. D. Peled. Combining partial order reductions with on-the-fly model-checking. In Computer Aided Verification, Proc. 6th Int. Workshop, Stanford, California, June 1994. Lecture Notes in Computer Science, Springer-Verlag.

    Google Scholar 

  18. Y.-M. Quemener and Th. Jéron. Model-checking of CTL on infinite Kripke structures defined by simple graph grammars. Research Report 2563, IRRIA, June 1995.

    Google Scholar 

  19. Y.-M. Quemener and Th. Jéron. Finitely representing infinite reachability graphs of CFSMs with graph grammars. Internal Publication 994, IRISA, March 1996.

    Google Scholar 

  20. S. Safra. On the complexity of omega-automata. In Proceedings of the 29th IEEE Symposium on Foundations of Computer Science, White Plains, October 1988.

    Google Scholar 

  21. A.P. Sistla, M.Y. Vardi, and P. Wolper. The complementation problem for Büchi automata with applications to temporal logic. Theoretical Computer Science, 49:217–237, 1987.

    Google Scholar 

  22. K. J. Turner et al. Using Formal Description Techniques — An Introduction to Estelle, Lotos and SDL. Wiley, 1993.

    Google Scholar 

  23. A. Valmari. A stubborn attack on state explosion. Formal Methods in System Design, 1:297–322, 1992.

    Google Scholar 

  24. M.Y. Vardi and P. Wolper. An automata-theoretic approach to automatic program verification. In Proceedings of the First Symposium on Logic in Computer Science, pages 322–331, Cambridge, June 1986.

    Google Scholar 

  25. M.Y. Vardi and P. Wolper. Reasoning about infinite computations. Information and Computation, 115(1):1–37, November 1994.

    Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Editor information

Pascal Van Hentenryck

Rights and permissions

Reprints and permissions

Copyright information

© 1997 Springer-Verlag Berlin Heidelberg

About this paper

Cite this paper

Boigelot, B., Godefroid, P., Willems, B., Wolper, P. (1997). The power of QDDs (extended abstract). In: Van Hentenryck, P. (eds) Static Analysis. SAS 1997. Lecture Notes in Computer Science, vol 1302. Springer, Berlin, Heidelberg. https://doi.org/10.1007/BFb0032741

Download citation

  • DOI: https://doi.org/10.1007/BFb0032741

  • Published:

  • Publisher Name: Springer, Berlin, Heidelberg

  • Print ISBN: 978-3-540-63468-3

  • Online ISBN: 978-3-540-69576-9

  • eBook Packages: Springer Book Archive

Publish with us

Policies and ethics