The Complexity of Model Checking Multi-Stack Systems

We study the linear-time model checking problem for boolean concurrent programs with recursive procedure calls. While sequential recursive programs are usually modeled as pushdown automata, concurrent recursive programs involve several processes and can be naturally abstracted as pushdown automata with multiple stacks. Their behavior can be understood as words with multiple nesting relations, each relation connecting a procedure call with its corresponding return. To reason about multiply nested words, we consider the class of all temporal logics as defined in the book by Gabbay, Hodkinson, and Reynolds (18). The unifying feature of these temporal logics is that their modalities are defined in monadic second-order (MSO) logic. In particular, this captures numerous temporal logics over concurrent and/or recursive programs that have been defined so far. Since the general model checking problem is undecidable, we restrict attention to phase bounded executions as proposed by La Torre, Madhusudan, and Parlato (LICS 24). While the MSO model checking problem in this case is non-elementary, our main result states that the model checking (and satisfiability) problem for all MSO-definable temporal logics is decidable in elementary time. More precisely, it is solvable in time exponential in the formula and (n+2)-fold exponential in the number of phases where n is the maximal level of the MSO modalities in the monadic quantifier alternation hierarchy (which is a vast improvement over the conference version of this paper from LICS 2013 where the space was also (n+2)-fold exponential in the size of the temporal formula). We complement this result and provide, for each level n, a temporal logic whose model checking problem is n-EXPSPACE-hard.

[1]  Larry Joseph Stockmeyer,et al.  The complexity of decision problems in automata theory and logic , 1974 .

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

[3]  Moshe Y. Vardi,et al.  On Monadic NP vs. Monadic co-NP (Extended Abstract) , 1993, SCT.

[4]  D. Gabbay,et al.  Temporal Logic Mathematical Foundations and Computational Aspects , 1994 .

[5]  Dov M. Gabbay,et al.  Temporal logic (vol. 1): mathematical foundations and computational aspects , 1994 .

[6]  Jörg Flum,et al.  Finite model theory , 1995, Perspectives in Mathematical Logic.

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

[8]  Wolfgang Thomas,et al.  The monadic quantifier alternation hierarchy over graphs is infinite , 1997, Proceedings of Twelfth Annual IEEE Symposium on Logic in Computer Science.

[9]  Igor Walukiewicz,et al.  Difficult Configurations—On the Complexity of LTrL , 1998, Formal Methods Syst. Des..

[10]  Edmund M. Clarke,et al.  Model Checking , 1999, Handbook of Automated Reasoning.

[11]  Klaus Reinhardt,et al.  The Complexity of Translating Logic to Finite Automata , 2001, Automata, Logics, and Infinite Games.

[12]  Ullrich Hustadt,et al.  Temporal Logic: Mathematical Foundations and Computational Aspects, Volume 2, Dov M. Gabbay, Mark A. Reynolds, and Marcelo Finger , 2001, J. Log. Lang. Inf..

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

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

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

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

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

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

[19]  Christel Baier,et al.  Principles of model checking , 2008 .

[20]  Christel Baier,et al.  Principles of Model Checking (Representation and Mind Series) , 2008 .

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

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

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

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

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

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

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

[28]  Anthony Widjaja Lin,et al.  Concurrency Makes Simple Theories Hard , 2012, STACS.

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

[30]  Mohamed Faouzi Atig,et al.  Linear-Time Model-Checking for Multithreaded Programs under Scope-Bounding , 2012, ATVA.

[31]  Benedikt Bollig,et al.  An optimal construction of Hanf sentences , 2011, J. Appl. Log..

[32]  Mohamed Faouzi Atig,et al.  Model-Checking of Ordered Multi-Pushdown Automata , 2012, Log. Methods Comput. Sci..

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

[34]  Margherita Napoli,et al.  A Temporal Logic for Multi-threaded Programs , 2012, IFIP TCS.

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

[36]  Mohamed Faouzi Atig,et al.  Model checking Branching-Time Properties of Multi-Pushdown Systems is Hard , 2012, ArXiv.

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

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

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

[40]  W. Hanf MODEL-THEORETIC METHODS IN THE STUDY OF ELEMENTARY LOGIC , 2014 .

[41]  Roy Mennicke,et al.  Model Checking Concurrent Systems Using Temporal Logics , 2015 .