# A Logical Analysis of Modules in Logic Programming

@article{Miller1989ALA, title={A Logical Analysis of Modules in Logic Programming}, author={Dale Miller}, journal={J. Log. Program.}, year={1989}, volume={6}, pages={79-108} }

Abstract We present a logical language which extends the syntax of positive Horn clauses by permitting implications in goals and in the bodies of clauses. The operational meaning of a goal which is an implication is given by the deduction theorem: a goal D ⊃ G is provable from a program P if the goal G is provable from the larger program P ∪ {D}. This paper explores the qualitative nature of this extension to logic programming. For example, if the formula D is the conjunction of universally… Expand

#### Topics from this paper

#### 341 Citations

A Structured Presentation of a Closure-Based Compilation Method for a Scoping Notion in Logic Programming

- Computer Science
- J. Univers. Comput. Sci.
- 1997

A systematic reconstruction of a compilation method for an extension to logic programming that permits procedure de nitions to be given a scope is presented and it is justified by showing that the essential notion of a computation is preserved by the compilation method and thus the re nement is a correct one. Expand

A Strong Logic Programming View for Static Embedded Implications

- Computer Science
- FoSSaCS
- 1999

A new characterization of the language in [8] is presented which shows that Horn clause extended with embedded implications, viewed as FO⊃-theories, preserves all the attractive mathematical and computational properties that Horn clauses satisfy as first-order-theory. Expand

Extending Horn Clause Logic with Implication Goals

- Computer Science, Mathematics
- Theor. Comput. Sci.
- 1992

A language with blocks in which, as in conventional block structured programming languages, static scope rules have been chosen for locally defined clauses, and it is argued that this kind of block structured language is a very natural extension of Horn clauses when used as a programming language. Expand

A Monotonic Declarative Semantics for Normal Logic Programs

- Computer Science
- APPIA-GULP-PRODE
- 1997

A declarative semantics for normal logic programs in terms of model classes that is monotonic in the sense that Mod( PUP') s Mod(P), for any programs P and P' is proposed. Expand

Structuring Logic Programs: A Modal Approach

- Computer Science
- J. Log. Program.
- 1994

Modal logic provides a unifying framework in which different logical languages with blocks and modules can be expressed by interpreting the different block languages within modal logic S4. Expand

Representing Objects in a Logic Programming Langueage with Scoping Constructs

- Computer Science
- ICLP
- 1990

A logic programming language is presented that uses implications and universal quantifiers in goals and in the bodies of clauses to provide a simple scoping mechanism for program clauses and constants and explores how object-oriented programming, where objects are viewed as abstractions with behaviors, state, and inheritance, might be accommodated. Expand

Structural Properties of Logic Programs

- 2007

Miller has shown that disjunctions are not necessary in a large fragment of hereditary Harrop formulae, a class of formulae which properly includes Horn clauses. In this paper we extend this result… Expand

N-Prolog and equivalence of logic programs

- Mathematics, Computer Science
- J. Log. Lang. Inf.
- 1992

A natural modal three-valued logic PK is introduced and it is proved that a goal is derivable from a propositional program if and only if it is implied by the completion of the program in the logic PK. Expand

Combining Negation as Failure and Embedded Implications in Logic Programs

- Mathematics, Computer Science
- J. Log. Program.
- 1998

This paper develops a top-down query evaluation procedure, a Kripke/Kleene fixed point semantics, and a logical interpretation by means of a completion construction for a language which combines embedded hypothetical implications and negation as failure (NAF). Expand

Structural Proof Theory and Logic Programming An extended abstract

- 2020

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 operational… Expand

#### References

SHOWING 1-10 OF 30 REFERENCES

A Theory of Modules for Logic Programming

- Mathematics, Computer Science
- SLP
- 1986

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 the operational meaning of implication is shown to be sound and complete for intuitionistic, but not classical, logic. 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-time… 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

- 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

Equality, Types, Modules, and (Why not ?) Generics for Logic Programming

- Computer Science, Mathematics
- J. Log. Program.
- 1984

The system suggested in this paper, hereafter called Eqlog, is the way it combines the technology of Prolog (its efficient implementation with unification and backtracing) with functional programming (in an efficient first-order rewrite rule implementation) to yield more than just their sum. Expand

Procedures in Horn-Clause Programming

- Computer Science
- ICLP
- 1986

In this paper we show the relevance of the notion of procedure to logic programming. We explain how this feature can be obtained by extending first-order logic programs to programs written in a… Expand

N-Prolog: An Extension of Prolog with Hypothetical Implications I

- Computer Science
- J. Log. Program.
- 1984

N-PROLOG is a self-reflecting language; it is equal to its own metalanguage and more suitable for expressing temporal behavior (change in time). Expand

The Art of Prolog

- Computer Science
- IEEE Expert
- 1987

An example of the advantage of intertwining generating and testing can be seen with programs solving the N queens problem, which requires the placement of N pieces on an Nby-N rectangular board so that no two pieces are on the same line. Expand

Metamathematical investigation of intuitionistic arithmetic and analysis

- Mathematics
- 1973

Intuitionistic formal systems.- Models and computability.- Realizability and functional interpretations.- Normalization theorems for systems of natural deduction.- Applications of Kripke models.-… Expand