Journal article icon

Journal article

Collapsible pushdown automata and recursion schemes

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 paper 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.

Publication status:
Published
Peer review status:
Peer reviewed

Actions


Access Document


Publisher copy:
10.1145/3091122

Authors


More by this author
Institution:
University of Oxford
Division:
MPLS
Department:
Computer Science
Oxford college:
Merton College
Role:
Author


Publisher:
Association for Computing Machinery
Journal:
ACM Transactions on Computational Logic More from this journal
Volume:
18
Issue:
3
Pages:
25
Publication date:
2017-08-01
Acceptance date:
2017-07-01
DOI:
EISSN:
1557-945X
ISSN:
1529-3785


Keywords:
Pubs id:
pubs:728975
UUID:
uuid:47fddd33-af21-4aa3-a9d6-e3e1711c8186
Local pid:
pubs:728975
Source identifiers:
728975
Deposit date:
2017-10-14

Terms of use



Views and Downloads






If you are the owner of this record, you can report an update to it here: Report update to this record

TO TOP