A Survey of the Proof-Theoretic Foundations of Logic Programming
Dale Miller

TL;DR
This survey reviews how structural proof theory has been used over 35 years to develop advanced, expressive logic programming languages that incorporate higher-order features, statefulness, and abstractions, enriching the field.
Contribution
It highlights the evolution of logic programming foundations from classical logic to proof-theoretic approaches, emphasizing recent proof-theoretic results and their impact.
Findings
Extended logic programming languages enable higher-order and stateful computations.
Proof theory provides high-level insights into inference strategies like forward and backward chaining.
Connections between logic programming, functional programming, and model checking are clarified.
Abstract
Several formal systems, such as resolution and minimal model semantics, provide a framework for logic programming. In this paper, we will survey the use of structural proof theory as an alternative foundation. Researchers have been using this foundation for the past 35 years to elevate logic programming from its roots in first-order classical logic into higher-order versions of intuitionistic and linear logic. These more expressive logic programming languages allow for capturing stateful computations and rich forms of abstractions, including higher-order programming, modularity, and abstract data types. Term-level bindings are another kind of abstraction, and these are given an elegant and direct treatment within both proof theory and these extended logic programming languages. Logic programming has also inspired new results in proof theory, such as those involving polarity and focused…
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.
