English

Static Analysis of Multithreaded Recursive Programs Communicating via Rendez-vous

Formal Languages and Automata Theory 2019-07-08 v1

Abstract

We present in this paper a generic framework for the analysis of multi-threaded programs with recursive procedure calls, synchronisation by rendez-vous between parallel threads, and dynamic creation of new threads. To this end, we consider a model called Synchronized Dynamic Pushdown Networks (SDPNs) that can be seen as a network of pushdown processes executing synchronized transitions, spawning new pushdown processes, and performing internal pushdown actions. The reachability problem for this model is unfortunately undecidable. Therefore, we tackle this problem by introducing an abstraction framework based on Kleene algebras in order to compute an abstraction of the execution paths between two regular sets of configurations. We combine an automata theoretic saturation procedure with constraint solving in a finite domain. We then apply this framework to an iterative abstraction refinement scheme, using multiple abstractions of increasing complexity and precision.

Keywords

Cite

@article{arxiv.1907.02834,
  title  = {Static Analysis of Multithreaded Recursive Programs Communicating via Rendez-vous},
  author = {Adrien Pommellet and Tayssir Touili},
  journal= {arXiv preprint arXiv:1907.02834},
  year   = {2019}
}

Comments

Full, corrected version of a paper first presented at APLAS'17

R2 v1 2026-06-23T10:13:12.103Z