Location via proxy:   [ UP ]  
[Report a bug]   [Manage cookies]                
skip to main content
research-article

Collapsible Pushdown Automata and Recursion Schemes

Published: 11 August 2017 Publication History

Abstract

We consider recursion schemes (not assumed to be homogeneously typed, and hence not necessarily safe) and use them as generators of (possibly infinite) ranked trees. A recursion scheme is essentially a finite typed deterministic term rewriting system that generates, when one applies the rewriting rules ad infinitum, an infinite tree, called its value tree. A fundamental question is to provide an equivalent description of the trees generated by recursion schemes by a class of machines.
In this article, we answer this open question by introducing collapsible pushdown automata (CPDA), which are an extension of deterministic (higher-order) pushdown automata. A CPDA generates a tree as follows. One considers its transition graph, unfolds it, and contracts its silent transitions, which leads to an infinite tree, which is finally node labelled thanks to a map from the set of control states of the CPDA to a ranked alphabet.
Our contribution is to prove that these two models, higher-order recursion schemes and collapsible pushdown automata, are equi-expressive for generating infinite ranked trees. This is achieved by giving effective transformations in both directions.

References

[1]
Klaus Aehlig. 2006. A finite semantics of simply-typed lambda terms for infinite runs of automata. In Proceedings of Computer Science Logic (CSL’06) 20th Annual Conference of the EACSL (Lecture Notes in Computer Science), Vol. 4207. Springer-Verlag, 104--118
[2]
Klaus Aehlig, Jolie de Miranda, and C.-H. Luke Ong. 2004. Safety is not a Restriction at Level 2 for String Languages. Technical Report PRG-RR-04-023. Oxford University Computing Laboratory.
[3]
Klaus Aehlig, Jolie de Miranda, and C.-H. Luke Ong. 2005. Safety is not a restriction at level 2 for string languages. In Proceedings of the 8th International Conference on Foundations of Software Science and Computational Structures (FoSSaCS’05) (Lecture Notes in Computer Science), Vol. 3411. Springer-Verlag, 490--501.
[4]
André Arnold and Damian Niwiński. 2001. Rudiments of -Calculus. Studies in Logic and the Foundations of Mathematics, Vol. 146. Elsevier.
[5]
Vince Bárány, Erich Grädel, and Sasha Rubin. 2011. Automata-Based Presentations of Infinite Structures. London Mathematical Society Lecture Notes Series, Vol. 379. Cambridge University Press, 1--76.
[6]
William Blum. 2017. Type homogeneity is not a restriction for safe recursion schemes. CoRR abs/1701.02118 (2017). https://arxiv.org/abs/1701.02118
[7]
William Blum and C.-H. Luke Ong. 2009. The safe lambda calculus. Logical Methods in Computer Science 5, 1 (2009).
[8]
Christopher Broadbent. 2011. On Collapsible Pushdown Automata, their Graphs and the Power of Links. Ph.D. Dissertation. University of Oxford.
[9]
Christopher Broadbent, Arnaud Carayol, C.-H. Luke Ong, and Olivier Serre. 2010. Recursion schemes and logical reflexion. In Proceedings of the 25th Annual IEEE Symposium on Logic in Computer Science (LICS’10). IEEE Computer Society, 120--129.
[10]
Christopher Broadbent and Naoki Kobayashi. 2013. Saturation-based model checking of higher-order recursion schemes. In Proceedings of Computer Science Logic (CSL’13) 27th Annual Conference of the EACSL (LIPIcs’13), Vol. 23. Schloss Dagstuhl -- Leibniz-Zentrum für Informatik, 129--148.
[11]
Christopher H. Broadbent, Arnaud Carayol, Matthew Hague, and Olivier Serre. 2012. A saturation method for collapsible pushdown systems. In Proceedings of the 39th International Conference on Automata, Languages, and Programming (ICALP’12) (Lecture Notes in Computer Science), Vol. 7392. Springer-Verlag, 165--176.
[12]
Christopher H. Broadbent, Arnaud Carayol, Matthew Hague, and Olivier Serre. 2013. C-SHORe: A collapsible approach to higher-order verification. In Proceedings of the 18th ACM SIGPLAN International Conference on Functional Programming (ICFP’13). ACM, 13--24.
[13]
Thierry Cachat. 2003. Higher order pushdown automata, the caucal hierarchy of graphs and parity games. In Proceedings of the 30th International Conference on Automata, Languages, and Programming (ICALP’03) (Lecture Notes in Computer Science), Vol. 2719. Springer-Verlag, 556--569.
[14]
Arnaud Carayol, Antoine Meyer, Matthew Hague, C.-H. Luke Ong, and Olivier Serre. 2008. Winning regions of higher-order pushdown games. In Proceedings of the 23rd Annual IEEE Symposium on Logic in Computer Science (LICS’08). IEEE Computer Society, 193--204.
[15]
Arnaud Carayol and Olivier Serre. 2012. Collapsible pushdown automata and labeled recursion schemes: Equivalence, safety and effective selection. In Proceedings of the 27th Annual IEEE Symposium on Logic in Computer Science (LICS’12). IEEE Computer Society, 165--174.
[16]
Arnaud Carayol and Stefan Wöhrle. 2003. The caucal hierarchy of infinite graphs in terms of logic and higher-order pushdown automata. In Proceedings of 23rd IARCS Annual Conference on Foundations of Software Technology and Theoretical Computer Science (FST&TCS’’03) (Lecture Notes in Computer Science), Vol. 2914. Springer-Verlag, 112--123.
[17]
Didier Caucal. 2002. On infinite terms having a decidable monadic theory. In Proceedings 27th Symposium, Mathematical Foundations of Computer Science (MFCS’02) (Lecture Notes in Computer Science), Vol. 2420. Springer-Verlag, 165--176.
[18]
Alonzo Church and J. Barkley Rosser. 1936. Some properties of conversion. Trans. Amer. Math. Soc. 39, 3 (Mar 1936), 472--472.
[19]
Bruno Courcelle. 1978a. A representation of trees by languages I. Theoret. Comput. Sci. 6 (1978), 255--279.
[20]
Bruno Courcelle. 1978b. A representation of trees by languages II. Theoret. Comput. Sci. 7 (1978), 25--55.
[21]
Bruno Courcelle. 1995. The monadic second-order logic of graphs IX: Machines and their behaviours. Theoret. Comput. Sci. 151 (1995), 125--162.
[22]
Bruno Courcelle and Maurice Nivat. 1978. The algebraic semantics of recursive program schemes. In Proceedings of the 7th Symposium, Mathematical Foundations of Computer Science (MFCS’78) (Lecture Notes in Computer Science), Vol. 64. Springer-Verlag, 16--30.
[23]
Werner Damm. 1977a. Higher type program schemes and their tree languages. In Proceedings of the 3rd Conference on Theoretical Computer Science (Lecture Notes in Computer Science), Vol. 48. Springer-Verlag, 51--72.
[24]
Werner Damm. 1977b. Languages defined by higher type program schemes. In Proceedings 4th International Conference on Automata, Languages, and Programming (ICALP’77) (Lecture Notes in Computer Science), Vol. 52. Springer-Verlag, 164--179.
[25]
Werner Damm. 1982. The IO- and OI-hierarchies.Theoret. Comput. Sci. 20 (1982), 95--207.
[26]
Werner Damm and Andreas Goerdt. 1986. An automata-theoretical characterization of the oi-hierarchy. Info. Comput. 71 (1986), 1--32.
[27]
Jolie de Miranda. 2006. Structures Generated by Higher-Order Grammars and the Safety Constraint. Ph.D. Dissertation. University of Oxford.
[28]
Joost Engelfriet and Erik Meineche Schmidt. 1977. IO and OI. I. J. Comput. Syst. Sci. 15, 3 (1977), 328--353.
[29]
Joost Engelfriet and Erik Meineche Schmidt. 1978. IO and OI. II. J. Comput. Syst. Sci. 16, 1 (1978), 67--99.
[30]
Jörg Flum, Erich Grädel, and Thomas Wilke. 2007. Logic and Automata: History and Perspectives. Amsterdam University Press.
[31]
Stephen Garland and David Luckham. 1973. Program schemes, recursion schemes and formal languages. J. Comput. Syst. Sci. 7, 2 (1973), 119--160.
[32]
Erich Grädel, Wolfgang Thomas, and Thomas Wilke (Eds.). 2002. Automata, Logics, and Infinite Games: A Guide to Current Research [outcome of a Dagstuhl seminar, February 2001]. Lecture Notes in Computer Science, Vol. 2500. Springer-Verlag.
[33]
Matthew Hague. 2013. Saturation of concurrent collapsible pushdown systems. In Proceedings of the 33rd International Conference on Foundations of Software Technology and Theoretical Computer Science (FST&TCS’’13) (LIPIcs’13), Vol. 24. Schloss Dagstuhl—Leibniz-Zentrum für Informatik, 313--325.
[34]
Matthew Hague, Andrzej S. Murawski, C.-H. Luke Ong, and Olivier Serre. 2008. Collapsible pushdown automata and recursion schemes. In Proceedings of the 23th Annual IEEE Symposium on Logic in Computer Science (LICS’08). IEEE Computer Society, 452--461.
[35]
J. Martin, E. Hyland, and C.-H. Luke Ong. 2000. On full abstraction for PCF: i. models, observables and the full abstraction problem, ii. dialogue games and innocent strategies, iii. A fully abstract and universal game model. Info. Comput. 163 (2000), 285--408.
[36]
Klaus Indermark. 1976. Schemes with recursion on higher types. In Proceedings 5th Symposium, Mathematical Foundations of Computer Science (MFCS’76) (Lecture Notes in Computer Science), Vol. 45. Springer-Verlag, 352--358.
[37]
Alexander Kartzow. 2010. Collapsible pushdown graphs of level 2 are tree-automatic. In Proceedings 26th Symposium on Theoretical Aspects of Computer Science (STACS’10) (LIPIcs’10), Vol. 5. Schloss Dagstuhl—Leibniz-Zentrum fuer Informatik, 501--512.
[38]
Alexander Kartzow and Pawel Parys. 2012. Strictness of the collapsible pushdown hierarchy. In Proceedings 37th Symposium, Mathematical Foundations of Computer Science (MFCS’12) (Lecture Notes in Computer Science), Vol. 7464. Springer-Verlag, 566--577.
[39]
Teodor Knapik, Damian Niwiński, and Paweł Urzyczyn. 2001. Deciding monadic theories of hyperalgebraic trees. In Proceedings of Typed Lambda Calculi and Applications, 5th International Conference (TLCA’01) (Lecture Notes in Computer Science), Vol. 2044. Springer-Verlag, 253--267.
[40]
Teodor Knapik, Damian Niwiński, and Paweł Urzyczyn. 2002. Higher-order pushdown trees are easy. In Proceedings of the 5th International Conference on Foundations of Software Science and Computational Structures (FoSSaCS’02) (Lecture Notes in Computer Science), Vol. 2303. Springer-Verlag, 205--222.
[41]
Teodor Knapik, Damian Niwiński, Pawel Urzyczyn, and Igor Walukiewicz. 2005. Unsafe grammars and panic automata. In Proceedings 32nd International Conference on Automata, Languages, and Programming (ICALP’05) (Lecture Notes in Computer Science), Vol. 3580. Springer-Verlag, 1450--1461.
[42]
Naoki Kobayashi. 2009a. Model-checking higher-order functions. In Proceedings of the 11th International ACM SIGPLAN-SIGACT Conference on Principles and Practice of Declarative Programming (PPDP’09). ACM, 25--36.
[43]
Naoki Kobayashi. 2009b. Types and higher-order recursion schemes for verification of higher-order programs. In Proceedings of the 36th ACM SIGPLAN-SIGACT Symposium on Principles of Programming Languages (POPL’09). ACM, 416--428.
[44]
Naoki Kobayashi. 2011. A practical linear time algorithm for trivial automata model checking of higher-order recursion schemes. In Proceedings of the 14th International Conference on Foundations of Software Science and Computational Structures (FoSSaCS’11) (Lecture Notes in Computer Science), Vol. 6604. Springer-Verlag, 260--274.
[45]
Naoki Kobayashi. 2012. GTRecS2: A Model Checker for Recursion Schemes Based on Games and Types. A tool available at http://www-kb.is.s.u-tokyo.ac.jp/∼koba/gtrecs2/. (2012).
[46]
Naoki Kobayashi and C.-H. Luke Ong. 2009. A type system equivalent to the modal mu-calculus model checking of higher-order recursion schemes. In Proceedings of the 24th Annual IEEE Symposium on Logic in Computer Science (LICS’09). IEEE Computer Society, 179--188.
[47]
Jean-Louis Krivine. 2007. A call-by-name lambda-calculus machine. Higher-Order and Symbolic Computation 20, 3 (2007), 199--207.
[48]
A. N. Maslov. 1974. The hierarchy of indexed languages of an arbitrary level. Soviet Math. Doklady 15 (1974), 1170--1174.
[49]
A. N. Maslov. 1976. Multilevel stack automata. Probl. Info. Trans.n 12 (1976), 38--43.
[50]
Eugenio Moggi. 1989. Notions of computation and monads. Info. Comput. 93 (1989), 55--92.
[51]
Robin P. Neatherway, Steven J. Ramsay, and C.-H. Luke Ong. 2012. A traversal-based algorithm for higher-order model checking. In Proceedings of the 17th ACM SIGPLAN International Conference on Functional Programming (ICFP’12). ACM, 353--364.
[52]
Maurice Nivat. 1972. On the interpretation of recursive program schemes. In Symposia Mathematica.
[53]
C.-H. Luke Ong. 2006a. On model-checking trees generated by higher-order recursion schemes. In Proceedings of the 21st Annual IEEE Symposium on Logic in Computer Science (LICS’06). IEEE Computer Society, 81--90.
[54]
C.-H. Luke Ong. 2006b. On Model-Checking Trees Generated by Higher-Order Recursion Schemes. (2006). Preprint.
[55]
C.-H. Luke Ong. 2015a. Higher-order model checking: An overview. In Proceedings of the 30th Annual IEEE Symposium on Logic in Computer Science (LICS 2015). IEEE Computer Society, 1--15.
[56]
C.-H. Luke Ong. 2015b. Normalisation by traversals. CoRR abs/1511.02629 (2015). Retrieved from http://arxiv.org/abs/1511.02629
[57]
Paweł Parys. 2011. Collapse operation increases expressive power of deterministic higher order pushdown automata. In Proceedings 28th Symposium on Theoretical Aspects of Computer Science (STACS’11) (LIPIcs’11), Vol. 9. Schloss Dagstuhl—Leibniz-Zentrum fuer Informatik, 603--614.
[58]
Paweł Parys. 2012. On the significance of the collapse operation. In Proceedings of the 27th Annual IEEE Symposium on Logic in Computer Science (LICS’12). IEEE Computer Society, 521--530.
[59]
Michael Rabin. 1969. Decidability of second-order theories and automata on infinite trees. Trans. Amer. Math. Soc. 141 (1969), 1--35.
[60]
Steven J. Ramsay, Robin P. Neatherway, and C.-H. Luke Ong. 2014. A type-directed abstraction refinement approach to higher-order model checking. In Proceedings of the 41st ACM SIGPLAN-SIGACT Symposium on Principles of Programming Languages (POPL’14). ACM, 61--72.
[61]
Sylvain Salvati and Igor Walukiewicz. 2011. Krivine machines and higher-order schemes. In Proceedings 38th International Conference on Automata, Languages, and Programming (ICALP’11) (Lecture Notes in Computer Science), Vol. 6756. Springer-Verlag, 162--173.
[62]
Sylvain Salvati and Igor Walukiewicz. 2012. Recursive schemes, krivine machines, and collapsible pushdown automata. In Proceedings of Reachability Problems—6th International Workshop (RP’12) (Lecture Notes in Computer Science), Vol. 7550. Springer-Verlag, 6--20.
[63]
Sylvain Salvati and Igor Walukiewicz. 2014. Krivine machines and higher-order schemes. Info. Comput. 239 (2014), 340--355.
[64]
Sylvain Salvati and Igor Walukiewicz. 2015. Simply typed fixpoint calculus and collapsible pushdown automata. Math. Struct. Comput. Sci. 26, 7 (2015), 1304--1350. 1469-8072http://journals.cambridge.org/article_S0960129514000590
[65]
Stefan Schwoon. 2002. Model-Checking Pushdown Systems. Ph.D. Dissertation. Technical University of Munich.
[66]
Géraud Sénizergues. 1997. The equivalence problem for deterministic pushdown automata is decidable. In Proceedings 24th International Conference on Automata, Languages, and Programming (ICALP’97) (Lecture Notes in Computer Science), Vol. 1256. Springer-Verlag, 671--681.
[67]
Géraud Sénizergues. 2002. L(A)=L(B)? A simplified decidability proof. Theoret. Comput. Sci. 281, 1--2 (2002), 555--608.
[68]
Colin Stirling. 2005. Higher-order matching and games. In Proceedings of Computer Science Logic (CSL’05), 19th Annual Conference of the EACSL (Lecture Notes in Computer Science), Vol. 3634. Springer-Verlag, 119--134.
[69]
Colin Stirling. 2009. Decidability of higher-order matching. Logic. Meth. Comput. Sci. 5, 3 (2009).
[70]
Dejvuth Suwimonteerabuth, Felix Berger, Stefan Schwoon, and Javier Esparza. 2007. jMoped: A test environment for java programs. In Proceedings of the 19th International Conference on Computer Aided Verification (CAV’07) (Lecture Notes in Computer Science), Vol. 4590. Springer-Verlag, 164--167.
[71]
Dejvuth Suwimonteerabuth, Javier Esparza, and Stefan Schwoon. 2005. jMoped: A java bytecode checker based on moped. In Proceedings of 11th International Conference on Tools and Algorithms for the Construction and Analysis of Systems (TACAS’05) (Lecture Notes in Computer Science), Vol. 3440. Springer-Verlag, 541--545.
[72]
Wolfgang Thomas. 1997. Languages, automata, and logic. In Handbook of Formal Language Theory, G. Rozenberg and A. Salomaa (Eds.). Vol. III. Springer-Verlag, 389--455.
[73]
Igor Walukiewicz. 2001. Pushdown processes: Games and model-checking. Info. Comput. 157 (2001), 234--263.

Cited By

View all
  • (2021)Collapsible Pushdown Parity GamesACM Transactions on Computational Logic10.1145/345721422:3(1-51)Online publication date: 28-Jun-2021
  • (2021)Higher-order Recursion Schemes and Collapsible Pushdown Automata: Logical PropertiesACM Transactions on Computational Logic10.1145/345291722:2(1-37)Online publication date: 15-May-2021
  • (2020)How Good Is a Strategy in a Game with Nature?ACM Transactions on Computational Logic10.1145/337713721:3(1-39)Online publication date: 20-Feb-2020
  • Show More Cited By

Recommendations

Comments

Information & Contributors

Information

Published In

cover image ACM Transactions on Computational Logic
ACM Transactions on Computational Logic  Volume 18, Issue 3
July 2017
273 pages
ISSN:1529-3785
EISSN:1557-945X
DOI:10.1145/3130378
  • Editor:
  • Orna Kupferman
Issue’s Table of Contents
Permission to make digital or hard copies of all or part of this work for personal or classroom use is granted without fee provided that copies are not made or distributed for profit or commercial advantage and that copies bear this notice and the full citation on the first page. Copyrights for components of this work owned by others than ACM must be honored. Abstracting with credit is permitted. To copy otherwise, or republish, to post on servers or to redistribute to lists, requires prior specific permission and/or a fee. Request permissions from [email protected]

Publisher

Association for Computing Machinery

New York, NY, United States

Publication History

Published: 11 August 2017
Accepted: 01 April 2017
Revised: 01 March 2017
Received: 01 November 2016
Published in TOCL Volume 18, Issue 3

Permissions

Request permissions for this article.

Check for updates

Author Tags

  1. Higher-order recursion schemes
  2. higher-order (collapsible) pushdown automata

Qualifiers

  • Research-article
  • Research
  • Refereed

Funding Sources

  • Engineering and Physical Sciences Research Council

Contributors

Other Metrics

Bibliometrics & Citations

Bibliometrics

Article Metrics

  • Downloads (Last 12 months)3
  • Downloads (Last 6 weeks)0
Reflects downloads up to 08 Feb 2025

Other Metrics

Citations

Cited By

View all
  • (2021)Collapsible Pushdown Parity GamesACM Transactions on Computational Logic10.1145/345721422:3(1-51)Online publication date: 28-Jun-2021
  • (2021)Higher-order Recursion Schemes and Collapsible Pushdown Automata: Logical PropertiesACM Transactions on Computational Logic10.1145/345291722:2(1-37)Online publication date: 15-May-2021
  • (2020)How Good Is a Strategy in a Game with Nature?ACM Transactions on Computational Logic10.1145/337713721:3(1-39)Online publication date: 20-Feb-2020
  • (2019)LambdaY-calculus with prioritiesProceedings of the 34th Annual ACM/IEEE Symposium on Logic in Computer Science10.5555/3470152.3470172(1-13)Online publication date: 24-Jun-2019
  • (2019)Lambda Y-Calculus With Priorities2019 34th Annual ACM/IEEE Symposium on Logic in Computer Science (LICS)10.1109/LICS.2019.8785674(1-13)Online publication date: Jun-2019

View Options

Login options

Full Access

View options

PDF

View or Download as a PDF file.

PDF

eReader

View online with eReader.

eReader

Figures

Tables

Media

Share

Share

Share this Publication link

Share on social media