Higher-Order Recursion Abstraction: How to Make Ackermann, Knuth and Conway Look Like a Bunch of Primitives, Figuratively Speaking
Baltasar Tranc\'on y Widemann

TL;DR
This paper explores advanced recursion abstraction techniques to transform complex recursive functions like Ackermann, Knuth, and Conway into primitive recursive forms, enhancing understanding of their computational power.
Contribution
It introduces methods for analyzing and converting intricate recursive functions into primitive recursive forms using functional program transformation.
Findings
Ackermann function can be expressed as primitive recursive through abstraction.
Techniques applied to Knuth's and Conway's notations reveal their primitive recursive forms.
Framework facilitates understanding of complex recursion in terms of primitive recursion.
Abstract
The Ackermann function is a famous total recursive binary function on the natural numbers. It is the archetypal example of such a function that is not primitive recursive, in the sense of classical recursion theory. However, and in seeming contradiction, there are generalized notions of total recursion, for which the Ackermann function is in fact primitive recursive, and often featured as a witness for the additional power gained by the generalization. Here, we investigate techniques for finding and analyzing the primitive form of complicated recursive functions, namely also Knuth's and Conway's arrow notations, in particular by recursion abstraction, in a framework of functional program transformation.
Peer Reviews
No public reviews on file for this paper yet. If you reviewed it on a platform where reviews are public (OpenReview, ICLR, NeurIPS, ICML), you can paste yours below so the community can read it here.
Videos
No videos yet. Explain this paper in a talk, walkthrough, or lecture? Add one.
Taxonomy
TopicsLogic, programming, and type systems · Artificial Intelligence in Games · Computability, Logic, AI Algorithms
