Join-Lock-Sensitive Forward Reachability Analysis for Concurrent Programs with Dynamic Process Creation

  • Thomas Martin Gawlitza
  • Peter Lammich
  • Markus Müller-Olm
  • Helmut Seidl
  • Alexander Wenner
Conference paper
Part of the Lecture Notes in Computer Science book series (LNCS, volume 6538)


Dynamic Pushdown Networks (DPNs) are a model for parallel programs with (recursive) procedures and dynamic process creation. Constraints on the sequences of spawned processes allow to extend the basic model with joining of created processes [2]. Orthogonally DPNs can be extended with nested locking [9]. Reachability of a regular set R of configurations in presence of stable constraints as well as reachability without constraints but with nested locking are based on computing the set of predecessors pre *(R). In the present paper, we present a forward-propagating algorithm for deciding reachability for DPNs. We represent sets of executions by sets of execution trees and show that the set of all execution trees resulting in configurations from R which either allow a lock-sensitive execution or a join-sensitive execution, is regular. Here, we rely on basic results about macro tree transducers. As a second contribution, we show that reachability is decidable also for DPNs with both nested locking and joins.


Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.


  1. 1.
    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, pp. 135–150. Springer, Heidelberg (1997)CrossRefGoogle Scholar
  2. 2.
    Bouajjani, A., Müller-Olm, M., Touili, T.: Regular symbolic analysis of dynamic networks of pushdown systems. In: Jayaraman, K., de Alfaro, L. (eds.) CONCUR 2005. LNCS, vol. 3653, pp. 473–487. Springer, Heidelberg (2005)CrossRefGoogle Scholar
  3. 3.
    Engelfriet, J., Vogler, H.: Macro tree transducers. J. Comput. Syst. Sci. 31(1), 71–146 (1985)MathSciNetCrossRefzbMATHGoogle Scholar
  4. 4.
    Esparza, J., Podelski, A.: Efficient algorithms for pre* and post* on interprocedural parallel flow graphs. In: POPL, pp. 1–11 (2000)Google Scholar
  5. 5.
    Gawlitza, T.M., Lammich, P., Müller-Olm, M., Seidl, H., Wenner, A.: Join-locksensitive forward reachability analysis for concurrent programs with dynamic process creation, (extended version)
  6. 6.
    Kahlon, V., Gupta, A.: An automata-theoretic approach for model checking threads for LTL properties. In: Proc. of LICS 2006, pp. 101–110. IEEE Computer Society, Los Alamitos (2006)Google Scholar
  7. 7.
    Kahlon, V., Ivančić, F., Gupta, A.: Reasoning about threads communicating via locks. In: Etessami, K., Rajamani, S.K. (eds.) CAV 2005. LNCS, vol. 3576, pp. 505–518. Springer, Heidelberg (2005)CrossRefGoogle Scholar
  8. 8.
    Kidd, N., Lal, A., Reps, T.W.: Language strength reduction. In: Alpuente, M., Vidal, G. (eds.) SAS 2008. LNCS, vol. 5079, pp. 283–298. Springer, Heidelberg (2008)CrossRefGoogle Scholar
  9. 9.
    Lammich, P., Müller-Olm, M., Wenner, A.: Predecessor sets of dynamic pushdown networks with tree-regular constraints. In: Bouajjani, A., Maler, O. (eds.) CAV 2009. LNCS, vol. 5643, pp. 525–539. Springer, Heidelberg (2009)CrossRefGoogle Scholar
  10. 10.
    Müller-Olm, M., Seidl, H.: On optimal slicing of parallel programs. In: STOC, pp. 647–656 (2001)Google Scholar
  11. 11.
    Seidl, H., Steffen, B.: Constraint-based inter-procedural analysis of parallel programs. Nord. J. Comput. 7(4), 375 (2000)MathSciNetzbMATHGoogle Scholar

Copyright information

© Springer-Verlag Berlin Heidelberg 2011

Authors and Affiliations

  • Thomas Martin Gawlitza
    • 1
  • Peter Lammich
    • 2
  • Markus Müller-Olm
    • 2
  • Helmut Seidl
    • 3
  • Alexander Wenner
    • 2
  1. 1.CNRS/VERIMAGFrance
  2. 2.Institut für InformatikWestfälische Wilhelms-Universität MünsterGermany
  3. 3.Technische Universität MünchenGermany

Personalised recommendations