Download:
|
by Weidong Chen, David S. Warren
in the Proceedings of the 12th PODS
ftp://ftp.cs.sunysb.edu/pub/TechReports/warren/slg_full.ps.Z
Add To MetaCart
Abstract:
SLD resolution with negation as finite failure (or SLDNF) reflects the procedural interpretation of Horn-clause predicate logic as a programming language and forms the computational basis for Prolog systems. Despite its advantages in memory management, SLDNF is often not appropriate for query evaluation for three reasons: a) it may not terminate due to infinite positive recursion; b) it may not terminate due to infinite recursion through negation; and c) it may repeatedly evaluate the same clause body literal, leading to unacceptable performance. We address all three problems for goal-oriented query evaluation of arbitrary programs by presenting an extension of SLDNF, called SLG resolution, with the following distinctive features: (i) SLG resolution is a partial deduction procedure, consisting of several transformations. Each query is transformed step by step into a set of answer clauses; (ii) SLG resolution is sound and search space complete for all non-floundering queries with respect to the well founded partial model, and preserves all three-valued stable models; (iii) SLG resolution allows an arbitrary computation rule and an arbitrary control strategy for selecting transformations to apply; (iv) SLG resolution avoids both positive and negative loops and always terminates for programs with the bounded-term-size property; (v) SLG resolution has a polynomial time data complexity for well founded negation of function-free programs. Restricted forms of SLG resolution are identified for definite, locally stratified, and modularly stratified programs, thereby shedding light on the role each transformation plays. To provide answers to a query under different three-valued stable models, SLG resolution can be enhanced by further processing of the derived set of answer clauses.
Citations
|
1706
|
Foundations of logic programming
– Lloyd
- 1987
|
|
1172
|
The stable model semantics for logic programming
– Gelfond, Lifschitz
- 1988
|
|
817
|
Negation as failure
– Clark
- 1978
|
|
723
|
The Well-Founded Semantics for General Logic Programs
– Gelder, Ross, et al.
- 1991
|
|
639
|
The Semantics of Predicate Logic as a Programming Language
– Emden, Kowalski
- 1976
|
|
585
|
Towards a Theory of Declarative Knowledge
– Apt, Blair, et al.
- 1988
|
|
484
|
The complexity of relational query languages
– Vardi
- 1982
|
|
301
|
An efficient unification algorithm
– Martelli, Montanari
- 1982
|
|
263
|
Magic sets and other strange ways to implement logic programs
– Bancilhon, Maier, et al.
- 1986
|
|
239
|
On the declarative semantics of deductive databases and logic programs
– Przymusinski
- 1988
|
|
234
|
Partial Evaluation in Logic Programming
– Lloyd, Shepherdson
- 1991
|
|
214
|
On the Power of Magic
– Beeri, Ramakrishnan
- 1987
|
|
192
|
Old Resolution with Tabulation
– Tamaki, Sato
- 1986
|
|
191
|
Autoepistemic Logic
– Marek, Truszczynski
- 1991
|
|
179
|
Contributions to the theory of logic programming
– Apt, Emden
- 1982
|
|
141
|
The well-founded semantics coincides with the three-valued stable semantics
– Przymusinski
- 1990
|
|
130
|
Magic Templates: A Spellbinding Approach to Logic Programs
– Ramakrishnan
- 1988
|
|
127
|
Every logic program has a natural stratification and an iterated least fixed point model
– Przymusinski
- 1989
|
|
121
|
Negation as failure using tight derivations for general logic programs
– Gelder
- 1988
|
|
69
|
Recursive query processing: The power of logic
– Vieille
- 1989
|
|
64
|
On the declarative and procedural semantics of logic programs
– Przymusinski
- 1989
|
|
63
|
Extension tables: Memo Relations in Logic Programming
– Dietrich
- 1987
|
|
57
|
Query evaluation in recursive databases: bottom-up and top-down reconciled
– Bry
- 1990
|
|
56
|
A procedural semantics for well-founded negation in logic programs
– Ross
- 1989
|
|
49
|
On the Power of Alexander Templates
– Seki
- 1989
|
|
47
|
Weakly perfect model semantics for logic programs
– Przymusinska, Przymusinski
- 1988
|
|
40
|
A goal-oriented approach to computing well founded semantics
– Chen, Warren
- 1992
|
|
38
|
Controlling the search in bottom-up evaluation
– Ramakrishnan, Srivastava, et al.
- 1992
|
|
35
|
Magic Sets and Bottom-Up Evaluation of Well-Founded Models
– Kemp, Stuckey, et al.
- 1991
|
|
28
|
Database-complete proof procedures based on SLD resolution
– Vieille
- 1987
|
|
27
|
An alternating fixpoint tailored to magic programs
– Morishita
- 1993
|
|
25
|
A query evaluation method for stratified programs under the extended CWA
– Seki, Itoh
- 1988
|
|
24
|
Completeness of a top-down query evaluation procedure for stratified databases
– Kemp, Topor
- 1988
|
|
21
|
Efficient bottom-up computation of queries on stratified databases
– Balbin, Port, et al.
- 1991
|
|
19
|
Query Restricted Bottom-up Evaluation of Normal Logic Programs
– Kemp, Stuckey, et al.
- 1992
|
|
17
|
Towards a programming methodology founded on partial deduction
– Komorowski
- 1990
|
|
15
|
The Semantics of Deductive Databases
– Ross
- 1991
|
|
11
|
WELL!: An evaluation procedure for all logic programs
– Bidoit, Legay
- 1990
|
|
2
|
Literature list for partial evaluation and mixed computation
– Sestoft, Zamulin
- 1987
|
|
1
|
Implementations of the well founded semantics
– Chen, Swift, et al.
|