Predecessor Sets of Dynamic Pushdown Networks with Tree-Regular Constraints

Dynamic Pushdown Networks (DPNs) are a model for parallel programs with (recursive) procedures and process creation. The goal of this paper is to develop generic techniques for more expressive reachability analysis of DPNs. In the first part of the paper we introduce a new tree-based view on executions. Traditional interleaving semantics model executions by totally ordered sequences. Instead, we model an execution by a partially ordered set of rule applications, that only specifies the per-process ordering and the causality due to process creation, but no ordering between rule applications on processes that run in parallel. Tree-based executions allow us to compute predecessor sets of regular sets of DPN configurations relative to (tree-) regular constraints on executions. The corresponding problem for interleaved executions is not effective. In the second part of the paper, we extend DPNs with (well-nested) locks. We generalize Kahlon and Gupta's technique of acquisition histories to DPNs, and apply the results of the first part of this paper to compute lock-sensitive predecessor sets.

[1]  Julian Dolby,et al.  Finding concurrency-related bugs using random isolation , 2008, International Journal on Software Tools for Technology Transfer.

[2]  Markus Müller-Olm,et al.  Conflict Analysis of Programs with Procedures, Dynamic Thread Creation, and Monitors , 2008, SAS.

[3]  Sundar Sarukkai,et al.  FSTTCS 2005: Foundations of Software Technology and Theoretical Computer Science, 25th International Conference, Hyderabad, India, December 15-18, 2005, Proceedings , 2005, FSTTCS.

[4]  Derick Wood,et al.  Regular tree and regular hedge languages over unranked alphabets , 2001 .

[5]  Somesh Jha,et al.  Weighted pushdown systems and their application to interprocedural dataflow analysis , 2003, Sci. Comput. Program..

[6]  Javier Esparza,et al.  Reachability Analysis of Multithreaded Software with Asynchronous Communication , 2005, FSTTCS.

[7]  Vineet Kahlon,et al.  An Automata-Theoretic Approach for Model Checking Threads for LTL Propert , 2006, 21st Annual IEEE Symposium on Logic in Computer Science (LICS'06).

[8]  Tayssir Touili,et al.  Regular Symbolic Analysis of Dynamic Networks of Pushdown Systems , 2005, CONCUR.

[9]  Vincent Danos,et al.  Transactions in RCCS , 2005, CONCUR.

[10]  M. O'connell Research Report 2001 , 2001 .

[11]  Vineet Kahlon,et al.  Reasoning About Threads Communicating via Locks , 2005, CAV.

[12]  Tobias Nipkow,et al.  Isabelle/HOL , 2002, Lecture Notes in Computer Science.

[13]  Thomas W. Reps,et al.  Language Strength Reduction , 2008, SAS.

[14]  Tayssir Touili,et al.  A decision procedure for detecting atomicity violations for communicating processes with locks , 2009, International Journal on Software Tools for Technology Transfer.

[15]  P. Lammich Isabelle Formalization of Hedge-Constrained pre * and DPNs with Locks , 2009 .