Scope-Bounded Pushdown Languages

We study the formal language theory of multistack pushdown automata (Mpa) restricted to computations where a symbol can be popped from a stack S only if it was pushed within a bounded number of contexts of S (scoped Mpa). We contribute to show that scoped Mpa are indeed a robust model of computation, by focusing on the corresponding theory of visibly Mpa (Mvpa). We prove the equivalence of the deterministic and nondeterministic versions and show that scope-bounded computations of an n-stack Mvpa can be simulated, rearranging the input word, by using only one stack. These results have several interesting consequences, such as, the closure under complement, the decidability of universality, inclusion and equality, and a Parikh theorem. We also give a logical characterization and compare the expressiveness of the scope-bounded restriction with Mvpa classes from the literature.

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

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

[3]  Salvatore La Torre,et al.  The Language Theory of Bounded Context-Switching , 2010, LATIN.

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

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

[6]  Zvonimir Rakamaric,et al.  Delay-bounded scheduling , 2011, POPL '11.

[7]  Anca Muscholl,et al.  Safety of Parametrized Asynchronous Shared-Memory Systems is Almost Always Decidable , 2015, CONCUR.

[8]  Alex Aiken,et al.  Proceedings of the 30th ACM SIGPLAN-SIGACT symposium on Principles of programming languages , 1999, POPL 2003.

[9]  Rohit Parikh,et al.  On Context-Free Languages , 1966, JACM.

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

[11]  K. Mehlhorn Pebbling Moutain Ranges and its Application of DCFL-Recognition , 1980, ICALP.

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

[13]  Thomas W. Reps,et al.  Reducing Concurrent Analysis Under a Context Bound to Sequential Analysis , 2008, CAV.

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

[15]  Rajeev Alur,et al.  Visibly pushdown languages , 2004, STOC '04.

[16]  Salvatore La Torre,et al.  Reducing Context-Bounded Concurrent Reachability to Sequential Reachability , 2009, CAV.

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

[18]  Rupak Majumdar,et al.  Parameterized Verification of Asynchronous Shared-Memory Systems , 2016, J. ACM.

[19]  Mohamed Faouzi Atig,et al.  Adjacent Ordered Multi-Pushdown Systems , 2013, Int. J. Found. Comput. Sci..

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

[21]  Sagar Chaki,et al.  Time-bounded analysis of real-time systems , 2011, 2011 Formal Methods in Computer-Aided Design (FMCAD).

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

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

[24]  Anil Seth Global Reachability in Bounded Phase Multi-stack Pushdown Systems , 2010, CAV.

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

[26]  Aniello Murano,et al.  2-Visibly Pushdown Automata , 2007, Developments in Language Theory.

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

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

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

[30]  Ahmed Bouajjani,et al.  On Sequentializing Concurrent Programs , 2011, SAS.

[31]  Salvatore La Torre,et al.  Unbounded Lazy-CSeq: A Lazy Sequentialization Tool for C Programs with Unbounded Context Switches - (Competition Contribution) , 2015, TACAS.

[32]  Salvatore La Torre,et al.  Lazy-CSeq: A Context-Bounded Model Checking Tool for Multi-threaded C-Programs , 2015, 2015 30th IEEE/ACM International Conference on Automated Software Engineering (ASE).

[33]  Salvatore La Torre,et al.  Bounded Model Checking of Multi-threaded C Programs via Lazy Sequentialization , 2014, CAV.

[34]  Salvatore La Torre,et al.  Verifying Concurrent Programs by Memory Unwinding , 2015, TACAS.

[35]  Margherita Napoli,et al.  Scope-Bounded Pushdown Languages , 2016, Int. J. Found. Comput. Sci..

[36]  Matthew Hague,et al.  Saturation of Concurrent Collapsible Pushdown Systems , 2013, FSTTCS.

[37]  Alexander Okhotin,et al.  Descriptional Complexity of Input-Driven Pushdown Automata , 2012, Languages Alive.

[38]  Matthew Hague,et al.  Parameterised Pushdown Systems with Non-Atomic Writes , 2011, FSTTCS.