Temporal logics for concurrent recursive programs: Satisfiability and model checking

We develop a general framework for the design of temporal logics for concurrent recursive programs. A program execution is modeled as a partial order with multiple nesting relations. To specify properties of executions, we consider any temporal logic whose modalities are definable in monadic second-order logic and that, in addition, allows PDL-like path expressions. This captures, in a unifying framework, a wide range of logics defined for ranked and unranked trees, nested words, and Mazurkiewicz traces that have been studied separately. We show that satisfiability and model checking are decidable in EXPTIME and 2EXPTIME, depending on the precise path modalities.

[1]  Madan Musuvathi,et al.  Iterative context bounding for systematic testing of multithreaded programs , 2007, PLDI '07.

[2]  Paul Gastin,et al.  Uniform satisfiability problem for local temporal logics over Mazurkiewicz traces , 2005, Inf. Comput..

[3]  Rajeev Alur,et al.  A Temporal Logic of Nested Calls and Returns , 2004, TACAS.

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

[5]  Moe K VaMi The Taming of Converse: Reasoning about Two-Way Computations , 2005 .

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

[7]  Paul Gastin,et al.  Pure future local temporal logics are expressively complete for Mazurkiewicz traces , 2004, Inf. Comput..

[8]  Wojciech Zielonka,et al.  The Book of Traces , 1995 .

[9]  Roy Mennicke Propositional Dynamic Logic with Converse and Repeat for Message-Passing Systems , 2012, CONCUR.

[10]  Neil Immerman,et al.  First-Order and Temporal Logics for Nested Words , 2007, 22nd Annual IEEE Symposium on Logic in Computer Science (LICS 2007).

[11]  Parosh Aziz Abdulla Global Model Checking of Ordered Multi-Pushdown Systems , 2010 .

[12]  M. Rabin Decidability of second-order theories and automata on infinite trees , 1968 .

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

[14]  Roy Mennicke,et al.  Propositional Dynamic Logic with Converse and Repeat for Message-Passing Systems , 2012, CONCUR.

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

[16]  Leonid Libkin,et al.  Logics for Unranked Trees: An Overview , 2005, Log. Methods Comput. Sci..

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

[18]  Paul Gastin,et al.  Uniform satisfiability problem for local temporal logics over Mazurkiewicz traces , 2010, Inf. Comput..

[19]  Paul Gastin,et al.  LTL Is Expressively Complete for Mazurkiewicz Traces , 2000, J. Comput. Syst. Sci..

[20]  Mohamed Faouzi Atig,et al.  Global Model Checking of Ordered Multi-Pushdown Systems , 2010, FSTTCS.

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

[22]  Richard E. Ladner,et al.  Propositional Dynamic Logic of Regular Programs , 1979, J. Comput. Syst. Sci..

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

[24]  Christian Dax,et al.  Alternation Elimination for Automata over Nested Words , 2011, FoSSaCS.

[25]  Carsten Lutz,et al.  2-Exp Time lower bounds for propositional dynamic logics with intersection , 2005, Journal of Symbolic Logic.

[26]  Fred Kröger,et al.  Temporal Logic of Programs , 1987, EATCS Monographs on Theoretical Computer Science.

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

[28]  Paul Gastin,et al.  Satisfiability and Model Checking for MSO-definable Temporal Logics are in PSPACE , 2003, CONCUR.

[29]  Moshe Y. Vardi Reasoning about The Past with Two-Way Automata , 1998, ICALP.

[30]  Diego Calvanese,et al.  An Automata-Theoretic Approach to Regular XPath , 2009, DBPL.

[31]  Daniel Brand,et al.  On Communicating Finite-State Machines , 1983, JACM.

[32]  Salil P. Vadhan,et al.  Computational Complexity , 2005, Encyclopedia of Cryptography and Security.

[33]  Johan Anthory Willem Kamp,et al.  Tense logic and the theory of linear order , 1968 .

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

[35]  Carsten Lutz,et al.  PDL with intersection and converse: satisfiability and infinite-state model checking , 2009, The Journal of Symbolic Logic.

[36]  Benedikt Bollig,et al.  Propositional Dynamic Logic for Message-Passing Systems , 2010, Log. Methods Comput. Sci..

[37]  Edmund M. Clarke,et al.  Design and Synthesis of Synchronization Skeletons Using Branching Time Temporal Logic , 2008, 25 Years of Model Checking.

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

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

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