© 1990 by Oxford University Press
Original Articles |
A Proof-Theoretic Approach to Logic Programming. I. Clauses as Rules

*Programming Methodology Group, Department of Computer Science, Chalmers University of Technology and University of Göteborg 412 96 Goteborg, Sweden
Seminar für natürlich-sprachliche Systeme, Universität Tubingen 7400 Tubingen, FRG
In this paper definite Horn clause programs are investigated within a proof-theoretic framework; program clauses being considered rules of a formal system. Based on this approach, the soundness and completeness of SLD-resolution is established by purely proof-theoretic methods. Extended Horn clauses are defined as rules of higher levels and related to an approach based on implication formulae in the bodies of clauses. In a further extension, which is treated in Part II of this series, program clauses are viewed as clauses in inductive definitions of atoms, justifying an additional inference schema: a reflection principle that roughly corresponds to interpreting the program clauses as introduction rules in the sense of natural deduction. The evaluation procedures for queries with respect to the defined extensions of definite Horn clause programs are shown to be sound and complete. The sequent calculus with the general elimination schema even permits the introduction of a genuine notion of falsity which is not defined via a meta-rule.
Keywords: Logic programming; proof theory; rule; inductive definition