Annotated Stack Trees

Annotated pushdown automata provide an automaton model of higher-order recursion schemes, which may in turn be used to model higher-order programs for the purposes of verification. We study Ground Annotated Stack Tree Rewrite Systems -- a tree rewrite system where each node is labelled by the configuration of an annotated pushdown automaton. This allows the modelling of fork and join constructs in higher-order programs and is a generalisation of higher-order stack trees recently introduced by Penelle. We show that, given a regular set of annotated stack trees, the set of trees that can reach this set is also regular, and constructible in n-EXPTIME for an order-n system, which is optimal. We also show that our construction can be extended to allow a global state through which unrelated nodes of the tree may communicate, provided the number of communications is subject to a fixed bound.

[1]  Antoine Meyer,et al.  Symbolic Reachability Analysis of Higher-Order Context-Free Processes , 2004, FSTTCS.

[2]  Naoki Kobayashi Higher-Order Model Checking: From Theory to Practice , 2011, 2011 IEEE 26th Annual Symposium on Logic in Computer Science.

[3]  Pawel Urzyczyn,et al.  Higher-Order Pushdown Trees Are Easy , 2002, FoSSaCS.

[4]  Igor Walukiewicz,et al.  Krivine machines and higher-order schemes , 2011, Inf. Comput..

[5]  Kazutaka Matsuda,et al.  Pairwise Reachability Analysis for Higher Order Concurrent Programs by Higher-Order Model Checking , 2014, CONCUR.

[6]  Walter S. Brainerd,et al.  Tree Generating Regular Systems , 1969, Inf. Control..

[7]  Helmut Seidl,et al.  Join-Lock-Sensitive Forward Reachability Analysis for Concurrent Programs with Dynamic Process Creation , 2011, VMCAI.

[8]  Naoki Kobayashi Model-checking higher-order functions , 2009, PPDP '09.

[9]  C.-H. Luke Ong,et al.  A traversal-based algorithm for higher-order model checking , 2012, ICFP '12.

[10]  Mahesh Viswanathan,et al.  Decidability Results for Well-Structured Transition Systems with Auxiliary Storage , 2007, CONCUR.

[11]  Naoki Kobayashi A Practical Linear Time Algorithm for Trivial Automata Model Checking of Higher-Order Recursion Schemes , 2011, FoSSaCS.

[12]  Atsushi Igarashi,et al.  Model-Checking Higher-Order Programs with Recursive Types , 2013, ESOP.

[13]  Anthony Widjaja Lin,et al.  Weakly-Synchronized Ground Tree Rewriting - (with Applications to Verifying Multithreaded Programs) , 2012, MFCS.

[14]  Olivier Serre,et al.  C-SHORe: a collapsible approach to higher-order verification , 2013, ICFP.

[15]  Pawel Parys Collapse Operation Increases Expressive Power of Deterministic Higher Order Pushdown Automata , 2011, STACS.

[16]  V. Cody Infinite Graphs Generated by Tree Rewriting , 2003 .

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

[18]  Vojtech Rehák,et al.  Extended Process Rewrite Systems: Expressiveness and Reachability , 2004, CONCUR.

[19]  Javier Esparza,et al.  Reachability Analysis of Pushdown Automata: Application to Model-Checking , 1997, CONCUR.

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

[21]  Arnaud Carayol,et al.  The Caucal Hierarchy of Infinite Graphs in Terms of Logic and Higher-Order Pushdown Automata , 2003, FSTTCS.

[22]  Igor Walukiewicz,et al.  The Complexity of Games on Higher Order Pushdown Automata , 2007, ArXiv.

[23]  C.-H. Luke Ong,et al.  A type-directed abstraction refinement approach to higher-order model checking , 2014, POPL.

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

[25]  Tayssir Touili,et al.  Regular Symbolic Analysis of Dynamic Networks of Pushdown Systems , 2005, CONCUR.

[26]  Olivier Serre,et al.  A Saturation Method for Collapsible Pushdown Systems , 2012, ICALP.

[27]  Vincent Penelle Rewriting Higher-Order Stack Trees , 2015, CSR.

[28]  Stefan Schwoon,et al.  Model checking pushdown systems , 2002 .

[29]  Anil Seth Games on Higher Order Multi-stack Pushdown Systems , 2009, RP.

[30]  Javier Esparza,et al.  jMoped: A Test Environment for Java Programs , 2007, CAV.

[31]  Philippe Schnoebelen,et al.  The regular viewpoint on PA-processes , 1998, Theor. Comput. Sci..

[32]  C.-H. Luke Ong,et al.  On Model-Checking Trees Generated by Higher-Order Recursion Schemes , 2006, 21st Annual IEEE Symposium on Logic in Computer Science (LICS'06).

[33]  Matthew Hague,et al.  Senescent ground tree rewrite systems , 2013, CSL-LICS.

[34]  Naoki Kobayashi,et al.  Saturation-Based Model Checking of Higher-Order Recursion Schemes , 2013, CSL.

[35]  Andrzej S. Murawski,et al.  Collapsible Pushdown Automata and Recursion Schemes , 2008, 2008 23rd Annual IEEE Symposium on Logic in Computer Science.