Realizability of concurrent recursive programs

We study the realizability problem for concurrent recursive programs: given a distributed system architecture and a sequential specification over words, find a distributed automata implementation that is equivalent to the specification. This problem is well-studied as far as finite-state processes are concerned, and it has a solution in terms of Zielonka’s Theorem. We lift Zielonka’s Theorem to the case where processes are recursive and modeled as visibly pushdown (or, equivalently, nested-word) automata. However, contrarily to the finite-state case, it is undecidable whether a specification is realizable or not. Therefore, we also consider suitable underapproximation techniques from the literature developed for multi-pushdown systems, and we show that they lead to a realizability framework with effective algorithms.

[1]  Pierre Wolper,et al.  An Algorithmic Approach for Checking Closure Properties of Temporal Logic Specifications and Omega-Regular Languages , 1998, Theor. Comput. Sci..

[2]  A. Mazurkiewicz Concurrent Program Schemes and their Interpretations , 1977 .

[3]  Dietrich Kuske,et al.  Regular sets of infinite message sequence charts , 2003, Inf. Comput..

[4]  R. Alur,et al.  Adding nesting structure to words , 2006, JACM.

[5]  Roy Mennicke,et al.  Model Checking Concurrent Recursive Programs Using Temporal Logics , 2014, MFCS.

[6]  Salvatore La Torre,et al.  A Robust Class of Context-Sensitive Languages , 2007, 22nd Annual IEEE Symposium on Logic in Computer Science (LICS 2007).

[7]  Madhavan Mukund,et al.  A theory of regular MSC languages , 2005, Inf. Comput..

[8]  Volker Diekert,et al.  The Book of Traces , 1995 .

[9]  Kousha Etessami,et al.  Recursive Markov chains, stochastic grammars, and monotone systems of nonlinear equations , 2005, JACM.

[10]  Alin Stefanescu,et al.  Automatic synthesis of distributed transition systems , 2006 .

[11]  Benedikt Bollig,et al.  Emptiness of Multi-pushdown Automata Is 2ETIME-Complete , 2008, Developments in Language Theory.

[12]  Wolfgang Thomas,et al.  Languages, Automata, and Logic , 1997, Handbook of Formal Languages.

[13]  Gennaro Parlato,et al.  The tree width of auxiliary storage , 2011, POPL '11.

[14]  D. Kuske,et al.  The Complexity of Model Checking Multi-stack Systems , 2013, LICS 2013.

[15]  Salvatore La Torre,et al.  An Infinite Automaton Characterization of Double Exponential Time , 2008, CSL.

[16]  Benedikt Bollig,et al.  On the Expressive Power of 2-Stack Visibly Pushdown Automata , 2008, Log. Methods Comput. Sci..

[17]  Luca Breveglieri,et al.  Multi-Push-Down Languages and Grammars , 1996, Int. J. Found. Comput. Sci..

[18]  Wieslaw Zielonka,et al.  Notes on Finite Asynchronous Automata , 1987, RAIRO Theor. Informatics Appl..

[19]  Anca Muscholl,et al.  Reachability Analysis of Communicating Pushdown Systems , 2010, FoSSaCS.

[20]  Dietrich Kuske,et al.  Weighted asynchronous cellular automata , 2006, Theor. Comput. Sci..

[21]  Margherita Napoli,et al.  A Unifying Approach for Multistack Pushdown Automata , 2014, MFCS.

[22]  Anca Muscholl,et al.  Message Sequence Graphs and Decision Problems on Mazurkiewicz Traces , 1999, MFCS.

[23]  Anca Muscholl,et al.  Constructing Exponential-Size Deterministic Zielonka Automata , 2006, ICALP.

[24]  Sebastian Rudolph,et al.  Type-elimination-based reasoning for the description logic SHIQbs using decision diagrams and disjunctive datalog , 2012, Log. Methods Comput. Sci..

[25]  Anca Muscholl,et al.  On Communicating Automata with Bounded Channels , 2007, Fundam. Informaticae.

[26]  Anca Muscholl,et al.  Synthesis of Distributed Algorithms Using Asynchronous Automata , 2003, CONCUR.

[27]  C. Aiswarya,et al.  Controllers for the Verification of Communicating Multi-pushdown Systems , 2014, CONCUR.

[28]  Edward Ochmanski Recognizable Trace Languages , 1995, The Book of Traces.

[29]  C. Aiswarya,et al.  MSO Decidability of Multi-Pushdown Systems via Split-Width , 2012, CONCUR.

[30]  Margherita Napoli,et al.  Scope-Bounded Pushdown Languages , 2014, Developments in Language Theory.

[31]  Tayssir Touili,et al.  Interprocedural Analysis of Concurrent Programs Under a Context Bound , 2008, TACAS.

[32]  Anca Muscholl,et al.  A Kleene theorem and model checking algorithms for existentially bounded communicating automata , 2006, Inf. Comput..

[33]  Anca Muscholl,et al.  Optimal Zielonka-Type Construction of Deterministic Asynchronous Automata , 2010, ICALP.

[34]  Aiswarya Cyriac,et al.  Verification of communicating recursive programs via split-width , 2014 .

[35]  Salvatore La Torre,et al.  Scope-bounded Multistack Pushdown Systems: Fixed-Point, Sequentialization, and Tree-Width , 2012, FSTTCS.

[36]  Stéphane Demri,et al.  Model-Checking Bounded Multi-Pushdown Systems , 2013, CSR.

[37]  Salvatore La Torre,et al.  Context-Bounded Analysis of Concurrent Queue Systems , 2008, TACAS.

[38]  Rémi Morin,et al.  Synthesis of Safe Message-Passing Systems , 2007, FSTTCS.

[39]  Margherita Napoli,et al.  Reachability of Multistack Pushdown Systems with Scope-Bounded Matching Relations , 2011, CONCUR.

[40]  Anca Muscholl,et al.  Über die Erkennbarkeit unendlicher Spuren , 1994 .

[41]  Benedikt Bollig,et al.  Realizability of concurrent recursive programs , 2009, FoSSaCS.

[42]  Friedrich Otto,et al.  On Visibly Pushdown Trace Languages , 2015, SOFSEM.

[43]  Jakob Rehof,et al.  Context-Bounded Model Checking of Concurrent Software , 2005, TACAS.

[44]  C. Aiswarya,et al.  Verifying Communicating Multi-pushdown Systems via Split-Width , 2014, ATVA.

[45]  Anca Muscholl,et al.  Bounded MSC communication , 2002, Inf. Comput..

[46]  Reiko Heckel,et al.  Bisimilarity and Behaviour-Preserving Reconfigurations of Open Petri Nets , 2007, Log. Methods Comput. Sci..

[47]  C. Aiswarya,et al.  Temporal logics for concurrent recursive programs: Satisfiability and model checking , 2014, J. Appl. Log..