Temporal logics for concurrent recursive programs: Satisfiability and model checking

Abstract 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 which, 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]  Margherita Napoli,et al.  Reachability of Multistack Pushdown Systems with Scope-Bounded Matching Relations , 2011, CONCUR.

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

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

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

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

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

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

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

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

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

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

[12]  Amir Pnueli,et al.  The temporal logic of programs , 1977, 18th Annual Symposium on Foundations of Computer Science (sfcs 1977).

[13]  Alexandra Silva,et al.  Non-Deterministic Kleene Coalgebras , 2010, Log. Methods Comput. Sci..

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

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

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

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

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

[19]  Edmund M. Clarke,et al.  Design and Synthesis of Synchronization Skeletons Using Branching-Time Temporal Logic , 1981, Logic of Programs.

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

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

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

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

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

[25]  Sanjeev Arora,et al.  Computational Complexity: A Modern Approach , 2009 .

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

[27]  Thomas Wilke,et al.  Unifying Büchi Complementation Constructions , 2013, Log. Methods Comput. Sci..

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

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

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

[31]  Naoki Kobayashi,et al.  Resource Usage Analysis for the p-Calculus , 2006, Log. Methods Comput. Sci..

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

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

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

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

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

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

[38]  Moshe Y. Vardi The Taming of Converse: Reasoning about Two-way Computations , 1985, Logic of Programs.