Chain Programs for Writing Deterministic Metainterpreters
David A. Rosenblueth

TL;DR
This paper introduces a method to create deterministic metainterpreters by transforming logic programs into a restricted 'chain' form, simplifying clause selection and enabling applications like parallelism and resource reasoning.
Contribution
It presents two transformations converting logic programs into chain form, facilitating the development of deterministic metainterpreters for various logic programming applications.
Findings
Transformations for 'moded' and arbitrary definite programs are provided.
Examples demonstrate applications in parallelism, search strategies, and resource reasoning.
Deterministic metainterpreters are easier to implement using chain form.
Abstract
Many metainterpreters found in the logic programming literature are nondeterministic in the sense that the selection of program clauses is not determined. Examples are the familiar "demo" and "vanilla" metainterpreters. For some applications this nondeterminism is convenient. In some cases, however, a deterministic metainterpreter, having an explicit selection of clauses, is needed. Such cases include (1) conversion of OR parallelism into AND parallelism for "committed-choice" processors, (2) logic-based, imperative-language implementation of search strategies, and (3) simulation of bounded-resource reasoning. Deterministic metainterpreters are difficult to write because the programmer must be concerned about the set of unifiers of the children of a node in the derivation tree. We argue that it is both possible and advantageous to write these metainterpreters by reasoning in terms of…
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, Reasoning, and Knowledge · Logic, programming, and type systems · Advanced Algebra and Logic
