Regular Symbolic Analysis of Dynamic Networks of Pushdown Systems

  • Ahmed Bouajjani
  • Markus Müller-Olm
  • Tayssir Touili
Part of the Lecture Notes in Computer Science book series (LNCS, volume 3653)

Abstract

We introduce two abstract models for multithreaded programs based on dynamic networks of pushdown systems.We address the problem of symbolic reachability analysis for these models. More precisely, we consider the problem of computing effective representations of their reachability sets using finite-state automata. We show that, while forward reachability sets are not regular in general, backward reachability sets starting from regular sets of configurations are always regular. We provide algorithms for computing backward reachability sets using word/tree automata, and show how these algorithms can be applied for flow analysis of multithreaded programs.

Preview

Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.

References

  1. 1.
    Baeten, J., Weijland, W.: Process algebra. Cambridge Tracts in Theoretical Computer Science, vol. 18 (1990)Google Scholar
  2. 2.
    Bouajjani, A., Esparza, J., Maler, O.: Reachability Analysis of Pushdown Automata: Application to Model Checking. In: Mazurkiewicz, A., Winkowski, J. (eds.) CONCUR 1997. LNCS, vol. 1243. Springer, Heidelberg (1997)Google Scholar
  3. 3.
    Bouajjani, A., Esparza, J., Touili, T.: A generic approach to the static analysis of concurrent programs with procedures. In: POPL 2003. ACM, New York (2003)Google Scholar
  4. 4.
    Bouajjani, A., Esparza, J., Touili, T.: Reachability Analysis of Synchronised PA systems. In: INFINITY 2004 (2004) (to appear in ENTCS) Google Scholar
  5. 5.
    Bouajjani, A., Müller-Olm, M., Touili, T.: Regular Symbolic Analysis of Dynamic Networks of Pushdown Processes. Technical report, LIAFA lab No 2005-05, and University of Dortmund No 798 (June 2005) Google Scholar
  6. 6.
    Bouajjani, A., Touili, T.: Reachability Analysis of Process Rewrite Systems. In: Pandya, P.K., Radhakrishnan, J. (eds.) FSTTCS 2003. LNCS, vol. 2914, pp. 74–87. Springer, Heidelberg (2003)CrossRefGoogle Scholar
  7. 7.
    Bouajjani, A., Touili, T.: On Computing Reachability Sets of Process Rewrite Systems. In: Giesl, J. (ed.) RTA 2005. LNCS, vol. 3467, pp. 484–499. Springer, Heidelberg (2005)CrossRefGoogle Scholar
  8. 8.
    Bruggemann-Klein, A., Murata, M., Wood, D.: Regular tree and regular hedge languages over unranked alphabets. Research report (2001) Google Scholar
  9. 9.
    Esparza, J., Knoop, J.: An automata-theoretic approach to interprocedural data-flow analysis. In: Thomas, W. (ed.) FOSSACS 1999. LNCS, vol. 1578, pp. 14–30. Springer, Heidelberg (1999)CrossRefGoogle Scholar
  10. 10.
    Esparza, J., Podelski, A.: Efficient algorithms for pre ∗  and post ∗  on interprocedural parallel flow graphs. In: POPL 2000. ACM, New York (2000)Google Scholar
  11. 11.
    Finkel, A., Willems, B., Wolper, P.: A Direct Symbolic Approach to Model Checking Pushdown Systems. In: Infinity 1997, ENTCS 9. Elsevier Sci. Pub., Amsterdam (1997)Google Scholar
  12. 12.
    Lugiez, D., Schnoebelen, P.: The regular viewpoint on PA-processes. Theoretical Computer Science 274(1-2), 89–115 (2002)MATHCrossRefMathSciNetGoogle Scholar
  13. 13.
    Mayr, R.: Decidability and Complexity of Model Checking Problems for Infinite-State Systems. Phd. thesis, Technical University Munich (1998) Google Scholar
  14. 14.
    Müller-Olm, M.: Variations on Constants. Habilitationsschrift, Fachbereich Informatik, Universität Dortmund (2002)Google Scholar
  15. 15.
    Müller-Olm, M.: Precise interprocedural dependence analysis of parallel programs. Theoretical Computer Science 311, 325–388 (2004)MATHCrossRefMathSciNetGoogle Scholar
  16. 16.
    Qadeer, S., Rajamani, S., Rehof, J.: Procedure Summaries for Model Checking Multithreaded Software. In: POPL 2004 (2004)Google Scholar
  17. 17.
    Qadeer, S., Rehof, J.: Context-Bounded Model-Checking of Concurrent Software. In: Halbwachs, N., Zuck, L.D. (eds.) TACAS 2005. LNCS, vol. 3440, pp. 93–107. Springer, Heidelberg (2005)CrossRefGoogle Scholar
  18. 18.
    Seidl, H., Steffen, B.: Constraint-based inter-procedural analysis of parallel programs. In: Smolka, G. (ed.) ESOP 2000. LNCS, vol. 1782, p. 351. Springer, Heidelberg (2000)CrossRefGoogle Scholar
  19. 19.
    Touili, T.: Dealing with communication for dynamic multithreaded recursive programs. In: 1st VISSAS workshop (March 2005) (invited Paper)Google Scholar

Copyright information

© Springer-Verlag Berlin Heidelberg 2005

Authors and Affiliations

  • Ahmed Bouajjani
    • 1
  • Markus Müller-Olm
    • 2
  • Tayssir Touili
    • 1
  1. 1.LIAFAUniversity of Paris 7Paris cedex 5France
  2. 2.Universität DortmundDortmundGermany

Personalised recommendations