A Proof-Theoretic Approach to Logic Programming. II. Programs as Definitions

We introduce a definitional extension of logic programming by means of an inference schema (PV), which, in a certain sense, is dual to the (\-P) schema of rule application discussed in Part I. In the operational semantics, this schema is dual to the resolution principle. We prove soundness and completeness for the extended system, discuss the computation of substitutions that this new schema gives rise to, and also consider the notion of negation intrinsic to the system and its relation to negation by failure. 1. The definitional reading of logic programs When one writes a logic program, one intends to define somehow the predicates involved, i.e., to give them a meaning via those rules whose heads start with the predicates in question. This is reflected in the terminology used in several PROLOG textbooks and manuals, where the set of rules for a predicate p is called the 'definition' of p. The proof-theoretic approach can be used to obtain an extension of definite Horn clause programming, which makes this definitional reading of logic programs precise. Prooftheoretically, we can look at a program rule X^A as an introduction rule for A or as a clause in an inductive definition. The corresponding analogy is that in ordinary natural deduction, the introduction rules for a logical constant a can be viewed as rules giving meaning to a, whereas the elimination rule for a is uniquely determined by the introduction rules for a in the following sense: the elimination rule for a states that everything that can be derived from the premises of each introduction rule for a can be derived from the conclusion of these introduction rules (which is the same for all introduction rules). For example, in the case of a disjunction Ex v E2, This paper continues 'A Proof-Theoret ic Approach to Logic Programming. I. Clauses as Rules', which appeared in Vol. 1 No. 2 of this journal. In the following this first part is referred to as 'Part I'.

[1]  P. Schroeder-Heister Structural frameworks, substructural logics, and the role of elimination inferences , 1991 .

[2]  P. Lorenzen Einführung in die operative Logik und Mathematik , 1955 .

[3]  Peter Schroeder-Heister Hypothetical Reasoning and Definitional Reflection in Logic Programming , 1989, ELP.

[4]  Lars Hallnäs Partial inductive definitions , 1991 .

[5]  G. Gentzen Untersuchungen über das logische Schließen. II , 1935 .

[6]  Dale Miller,et al.  Abstractions in Logic Programs , 1989 .

[7]  Peter Schroeder-Heister,et al.  A natural extension of natural deduction , 1984, Journal of Symbolic Logic.

[8]  Michael Beeson,et al.  Some Applications of Gentzen's Proof Theory in Automated Deduction , 1991, ELP.

[9]  Peter Schroeder-Heister,et al.  Generalized rules for quantifiers and the completeness of the intuitionistic operators &, ν, ⊃, λ, ∀, ε , 1984 .

[10]  Daniel Fredholm On function definitions I : basic notions and primitive recursive function definitions , 1990 .

[11]  Dov M. Gabbay,et al.  N-Prolog: An Extension of Prolog with Hypothetical Implications I , 1984, J. Log. Program..

[12]  Lars-Henrik Eriksson,et al.  A Survey of GCLA: A Definitional Approach to Logic Programming , 1989, ELP.

[13]  Peter Schroeder-Heister,et al.  Structural Frameworks with Higher-Level Rules , 1987 .

[14]  D. Prawitz Proofs and the Meaning and Completeness of the Logical Constants , 1979 .

[15]  Dag Prawitz Formulation des bétons autoplaçants : Optimisation du squelette granulaire par la méthode graphique de Dreux - Gorisse , 1974 .

[16]  L. Hallnäs,et al.  A Note on Non-Monotonic Reasoning , 1987 .

[17]  Dag Prawitz,et al.  On the idea of a general proof theory , 1974, Synthese.

[18]  Furio Honsell,et al.  A framework for defining logics , 1993, JACM.

[19]  Stig Kanger,et al.  A Simplified Proof Method for Elementary Logic , 1959 .

[20]  Kenneth Kunen,et al.  Negation in Logic Programming , 1987, J. Log. Program..

[21]  P. Martin-Lof,et al.  ON THE MEANINGS OF THE LOGICAL CONSTANTS AND THE JUSTIFICATIONS OF THE LOGICAL LAWS(Logic and the Foundations of Mathematics) , 1986 .

[22]  D.M. Gabbay,et al.  N-Prolog: An Extension of Prolog with Hypothetical Implication II - Logical Foundations, and Negation as Failure , 1985, J. Log. Program..

[23]  Patrick Suppes,et al.  Introduction To Logic , 1958 .

[24]  Patrick Suppes,et al.  Introduction To Logic , 1958 .