Indexed Grammars—An Extension of Context-Free Grammars
Journal of the ACM (JACM)
On Infinite Terms Having a Decidable Monadic Theory
MFCS '02 Proceedings of the 27th International Symposium on Mathematical Foundations of Computer Science
Higher-Order Pushdown Trees Are Easy
FoSSaCS '02 Proceedings of the 5th International Conference on Foundations of Software Science and Computation Structures
Models of LCF.
On Model-Checking Trees Generated by Higher-Order Recursion Schemes
LICS '06 Proceedings of the 21st Annual IEEE Symposium on Logic in Computer Science
A call-by-name lambda-calculus machine
Higher-Order and Symbolic Computation
Collapsible Pushdown Automata and Recursion Schemes
LICS '08 Proceedings of the 2008 23rd Annual IEEE Symposium on Logic in Computer Science
Types and higher-order recursion schemes for verification of higher-order programs
Proceedings of the 36th annual ACM SIGPLAN-SIGACT symposium on Principles of programming languages
Applications of infinitary lambda calculus
Information and Computation
Unsafe grammars and panic automata
ICALP'05 Proceedings of the 32nd international conference on Automata, Languages and Programming
The monadic second order theory of trees given by arbitrary level-two recursion schemes is decidable
TLCA'05 Proceedings of the 7th international conference on Typed Lambda Calculi and Applications
LICS '12 Proceedings of the 2012 27th Annual IEEE/ACM Symposium on Logic in Computer Science
On the Significance of the Collapse Operation
LICS '12 Proceedings of the 2012 27th Annual IEEE/ACM Symposium on Logic in Computer Science
C-SHORe: a collapsible approach to higher-order verification
Proceedings of the 18th ACM SIGPLAN international conference on Functional programming
The IO and OI hierarchies revisited
ICALP'13 Proceedings of the 40th international conference on Automata, Languages, and Programming - Volume Part II
Hi-index | 0.00 |
Higher-order recursive schemes are an interesting method of approximating program semantics. The semantics of a scheme is an infinite tree labeled with built-in constants. This tree represents the meaning of the program up to the meaning of built-in constants. It is much easier to reason about properties of such trees than properties of interpreted programs. Moreover some interesting properties of programs are already expressible on the level of these trees. Collapsible pushdown automata (CPDA) give another way of generating the same class of trees. We present a relatively simple translation from recursive schemes to CPDA using Krivine machines as an intermediate step. The later are general machines for describing computation of the weak head normal form in the lambda-calculus. They provide the notions of closure and environment that facilitate reasoning about computation.