Regular Search Spaces as a Foundation of Logic Programming

First, we aim to provide a proof-theoretic reconstruction of logic programming, both for definite and for normal programs. This leads us to a better understanding of negation-as-failure (NF) [5] and of other proof-theoretically well-founded extensions of Prolog. Our ambition is to show that almost everything in the vulgate of logic programming can be carried out in a style close to natural deduction, and in particular in a restricted fragment of minimal logic. Secondly, we embark on a generalization and abstraction of the nice properties of SLD-resolution. The outcome is our formulation of the concept of regular search space. Here many logics can be expressed and provided they can be shown to be regular, they are then guaranteed to enjoy an analogue of the very features that make Prolog a feasible and successful implementation of logic. This can also serve as a basis of a fairly general new logic programming language, similarly to what is done in [11].

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

[2]  Frank Pfenning,et al.  Dependent Types in Logic Programming , 1992, Types in Logic Programming.

[3]  Frank Pfenning,et al.  Types in Logic Programming , 1992, ICLP.

[4]  Gopalan Nadathur,et al.  Uniform Proofs as a Foundation for Logic Programming , 1991, Ann. Pure Appl. Log..

[5]  Daniel Fredholm,et al.  Partial inductive definitions as type-systems for λ-terms , 1992, BIT.

[6]  Lars Hallnäs,et al.  A Proof-Theoretic Approach to Logic Programming. I. Clauses as Rules , 1990, J. Log. Comput..

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

[8]  Adrian Walker,et al.  Towards a Theory of Declarative Knowledge , 1988, Foundations of Deductive Databases and Logic Programming..

[9]  John W. Lloyd,et al.  Partial Evaluation in Logic Programming , 1991, J. Log. Program..

[10]  Roy Dyckhoff,et al.  Contraction-free sequent calculi for intuitionistic logic , 1992, Journal of Symbolic Logic.

[11]  Lars Hallnäs,et al.  A Proof-Theoretic Approach to Logic Programming. II. Programs as Definitions , 1991, J. Log. Comput..

[12]  Frank Pfenning,et al.  Unification and anti-unification in the calculus of constructions , 1991, [1991] Proceedings Sixth Annual IEEE Symposium on Logic in Computer Science.

[13]  Wayne Snyder,et al.  Goal Directed Strategies for Paramodulation , 1991, RTA.

[14]  Franco Turini,et al.  A Transformational Approach to Negation in Logic Programming , 1990, J. Log. Program..

[15]  Dale Miller,et al.  A Logical Analysis of Modules in Logic Programming , 1989, J. Log. Program..

[16]  Robert F. Stark,et al.  The Proof Theory of Logic Programs with Negation , 1992 .

[17]  James Harland,et al.  On hereditary Harrop formulae as a basis for logic programming , 1991 .

[18]  John C. Shepherdson,et al.  Negation in Logic Programming , 1988, Foundations of Deductive Databases and Logic Programming..

[19]  Jean H. Gallier,et al.  Logic for Computer Science: Foundations of Automatic Theorem Proving , 1985 .

[20]  J. Lloyd Foundations of Logic Programming , 1984, Symbolic Computation.

[21]  Robert F. Stärk Cut-Property and Negation as Failure , 1994, Int. J. Found. Comput. Sci..

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

[23]  Michael J. Maher,et al.  Unification Revisited , 1988, Foundations of Deductive Databases and Logic Programming..

[24]  Krzysztof R. Apt,et al.  Introduction to Logic Programming , 1988 .

[25]  Keith L. Clark,et al.  Negation as Failure , 1987, Logic and Data Bases.

[26]  Jack Minker,et al.  Logic and Data Bases , 1978, Springer US.