Evolving Recursive Definitions with Applications to Dynamic Programming
Keehang Kwon

TL;DR
This paper introduces a novel approach to recursive definitions inspired by computability logic, distinguishing between static and evolving forms, and proposes a new object-oriented language leveraging these concepts for automatic memoization.
Contribution
It refines recursive function definitions into evolving and non-evolving types and develops a new object-oriented language based on these ideas.
Findings
Evolving recursive definitions enable automatic memoization.
Distinction between blindly-quantified and parallel universally quantified definitions.
Proposal of a new high-level object-oriented language incorporating these concepts.
Abstract
Inspired by computability logic\cite{Jap03}, we refine recursive function definitions into two kinds: blindly-quantified (BQ) ones and parallel universally quantified (PUQ) ones. BQ definitions corresponds to the traditional ones where recursive definitions are evolving. PUQ definitions are {\it evolving} in the course of computation, leading to automatic memoization. In addition, based on this idea, we propose a new, high-level object-oriented language.
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 · Computability, Logic, AI Algorithms · Logic, Reasoning, and Knowledge
