Computing with Hereditarily Finite Sequences
Paul Tarau

TL;DR
This paper demonstrates how hereditarily finite sequences can be represented as trees and used to perform efficient arbitrary-length integer computations within Prolog, bridging symbolic and numeric computation paradigms.
Contribution
It introduces a novel approach to represent and compute with hereditarily finite sequences using tree structures, enabling efficient symbolic arbitrary-length integer arithmetic.
Findings
Representations are isomorphic to natural numbers and combinatorial objects.
Arithmetic operations on symbolic structures are asymptotically efficient.
Prolog implementations perform comparably to bitstring-based arbitrary-length arithmetic.
Abstract
e use Prolog as a flexible meta-language to provide executable specifications of some fundamental mathematical objects and their transformations. In the process, isomorphisms are unraveled between natural numbers and combinatorial objects (rooted ordered trees representing hereditarily finite sequences and rooted ordered binary trees representing G\"odel's System {\bf T} types). This paper focuses on an application that can be seen as an unexpected "paradigm shift": we provide recursive definitions showing that the resulting representations are directly usable to perform symbolically arbitrary-length integer computations. Besides the theoretically interesting fact of "breaking the arithmetic/symbolic barrier", the arithmetic operations performed with symbolic objects like trees or types turn out to be genuinely efficient -- we derive implementations with asymptotic performance…
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
