# Uniform Proofs as a Foundation for Logic Programming

@article{Miller1991UniformPA,
title={Uniform Proofs as a Foundation for Logic Programming},
author={Dale A. Miller and G. Nadathur and F. Pfenning and A. Scedrov},
journal={Ann. Pure Appl. Log.},
year={1991},
volume={51},
pages={125-157}
}
Abstract Miller, D., G. Nadathur, F. Pfenning and A. Scedrov, Uniform proofs as a foundation for logic programming, Annals of Pure and Applied Logic 51 (1991) 125–157. A proof-theoretic characterization of logical languages that form suitable bases for Prolog-like programming languages is provided. This characterization is based on the principle that the declarative meaning of a logic program, provided by provability in a logical system, should coincide with its operational meaning, provided by… Expand
760 Citations

#### Figures and Topics from this paper

Semantics of Concurrent Logic Programming as Uniform Proofs
The LC fragment is proved to be an abstract logic programming language that is any sequent can be derived by uniform proofs, and can be viewed in terms of multiset rewriting and is reminiscent of the computations arising in the Chemical Abstract Machine and in the Gamma model. Expand
Proofs as computations in linear logic
• Mathematics, Computer Science
• Theor. Comput. Sci.
• 2001
An extension of hereditary Harrop formulas and a corresponding logical system which are the foundations of the logic programming language are presented. Expand
Uniform proofs and disjunctive logic programming
• Mathematics, Computer Science
• Proceedings of Tenth Annual IEEE Symposium on Logic in Computer Science
• 1995
It is shown that the requirement of uniform provability can be realized in a logic which is more general than that of DLP under a modest, sound modification of programs. Expand
Structural Proof Theory and Logic Programming An extended abstract
The semantics of logic programming languages, particularly those based on first-order Horn clauses, have traditionally been given a denotational semantics using model theory and an operationalExpand
A Uniform Proof-Theoretic Investigation of Linear Logic Programming
• Mathematics, Computer Science
• J. Log. Comput.
• 1994
This analysis builds on a notion of goal-directed provability, characterized by the so-called uniform proofs, previously introduced for minimal and intuitionistic logic, that is identiied by an analysis of the permutability of inferences in the linear sequent calculus. Expand
Uniform Algebras: a Complete Semantics for the Hohh Logic of -prolog
The problem of nding sound and complete semantics for the logic underlying the lambda-Prolog programming language: Higher Order Hereditarily Harrop formulas with resolution (uniform) proofs has beenExpand
On goal-directed provability in classical logic
This paper shows how logic programs may contain disjunctions in this setting, and provides a proof-theoretic basis for disjunctive logic programs, as well as characterising the ''disjunctive'' nature of answer substitutions for such programs in terms of the provability properties of the classical connectives @L and @L. Expand
Regular Search Spaces as a Foundation of Logic Programming
• Computer Science
• ELP
• 1993
The 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. Expand
Specifying and implementing theorem provers in a higher-order logic programming language
• Computer Science
• 1989
It is shown that it is sometimes possible to obtain a theorem prover that is complete under depth-first control by making only slight modifications to a specification, and shown how tactics and tacticals, which provide a framework for high-level control over search, can be directly implemented in the extended language. Expand
The Uniform Proof-Theoretic Foundation of Linear Logic Programming
• Mathematics, Computer Science
• ISLP
• 1991
A translation of the intuitionistic hereditary Harrop formulae and intuitionistic uniform proofs of Girard's linear logic are considered, and it is shown that certain properties are preserved under this translation. Expand

#### References

SHOWING 1-10 OF 59 REFERENCES
A higher-order logic as the basis for logic programming
The objective of this thesis is to provide a formal basis for higher-order features in the paradigm of logic programming. Towards this end, a non-extensional form of higher-order logic that is basedExpand
A Logical Analysis of Modules in Logic Programming
A logical language which extends the syntax of positive Horn clauses by permitting implications in goals and in the bodies of clauses is presented and it is shown how to build a Kripke-like model for programs by a fixed-point construction and shown that the operational meaning of implication is sound and complete for intuitionistic logic. Expand
Specifying Theorem Provers in a Higher-Order Logic Programming Language
• Mathematics, Computer Science
• 1988
An extended logic programming language where first-order terms are replaced with simply-typed λ-terms, higher-order unification replaces first- order unification, and implication and universal quantification are allowed in queries and the bodies of clauses is presented. Expand
AN OVERVIEW OF PROLOG
• Mathematics
• 1988
λProlog is a logic programming language that extends Prolog by incorporating notions of higher-order functions, λ-terms, higher-order unification, polymorphic types, and mechanisms for buildingExpand
A Logic Programming Approach to Manipulating Formulas and Programs
• Mathematics, Computer Science
• SLP
• 1987
This paper shows how a simple natural deduction theorem prover may be implemented in $\lambda$Prolog, and how some simple program transformers for a functional programming language may be written in this language. Expand
Contributions to the Theory of Logic Programming
• Mathematics, Computer Science
• JACM
• 1982
It is shown that nondeterministic flowchart schemata of bounded nondeterminacy are modeled by this special case of Hom clauses, and the connection between finite failure and greatest fixpoint is used to give a semantic characterization of termination, blocking, and nontermination of such flowchart Schemata. Expand
A Kripke-Kleene Semantics for Logic Programs
• M. Fitting
• Computer Science, Mathematics
• J. Log. Program.
• 1985
The use of conventional classical logic is misleading for characterizing the behavior of logic programs because a logic program, when queried, will do one of three things: succeed with the query,Expand
Hornlog: A Graph-Based Interpreter for General Horn Clauses
• Mathematics, Computer Science
• J. Log. Program.
• 1987
Abstract This paper presents hornlog , a general Horn-clause proof procedure that can be used to interpret logic programs. The system is based on a form of graph rewriting, and on the linear-timeExpand
Some Uses of Higher-Order Logic in Computational Linguistics
• Computer Science
• ACL
• 1986
A higher-order logic programming language is described, called λProlog, which represents programs as higher- order definite clauses and interprets them using a depth-first interpreter and claims that its use makes the task of providing formal justifications for the computations specified much more direct. Expand
Natural Deduction as Higher-Order Resolution
An interactive theorem prover, Isabelle, is under development, which has been used to prove theorems in Martin-Lof's constructive type theory and may have potential for logic programming. Expand