Download:
|
by Extended Abstract, S. Sudarshan, Raghu Ramakrishnan
ftp://ftp.cs.wisc.edu/coral/doc/ngopt.ps
Add To MetaCart
Abstract:
Memoization, such as that performed by bottom-up evaluation, helps detect loops, avoid repeated computation when subgoals are generated repeatedly, and in conjunction with a fair search strategy, ensures that evaluation is complete. Programs that generate non-ground facts (i.e., facts containing universally quantified variables) and also need memoization are important in several contexts. Current bottom-up evaluation techniques (and other memoization techniques), are very inefficient for programs that generate facts containing large non-ground terms. We present an efficient bottom-up evaluation technique for programs that generate non-ground facts. We show that bottom-up evaluation can be implemented with a time cost that is within a log log factor of (a model of) Prolog evaluation, for all queries on definite clause programs; conversely, there are programs where bottom-up evaluation is arbitrarily better than Prolog. These results significantly extend earlier results comparing bottomup evaluation and top-down evaluation, An implementation of our technique enables us to run some programs faster (asymptotically and practically) than using either Prolog or unoptimized bottom-up evaluation. 1
Citations
|
211
|
Making data structures persistent
– Driscoll, Sarnak, et al.
- 1989
|
|
204
|
R.: On the power of Magic
– Beeri, Ramakrishnan
- 1991
|
|
186
|
An amateur's introduction to recursive query processing strategies
– Bancilhon, Ramakrishnan
- 1989
|
|
183
|
OLDT resolution with tabulation
– Tamaki, Sato
- 1986
|
|
128
|
The Craft of Prolog
– O’KEEFE
- 1994
|
|
121
|
Magic templates: A spellbinding approach to logic programs
– RAMAKRISHNAN
- 1991
|
|
109
|
S.: Coral - control, relations and logic
– Ramakrishnan, Srivastava, et al.
- 1992
|
|
106
|
Memoing for logic programs
– Warren
- 1992
|
|
68
|
Bottom-up Beats Top-down for Datalog
– Ullman
|
|
59
|
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 Generalization of the Differential Approach to Recursive Query Evaluation
– Balbin, Ramamohanarao
- 1987
|
|
47
|
On the Power of Alexander Templates
– Seki
|
|
44
|
Aggregation and Relevance in Deductive Databases
– Sudarshan, Ramakrishnan
- 1991
|
|
43
|
Naive evaluation of recursively defined relations
– Bancilhon
- 1985
|
|
43
|
Recursive axioms in deductive databases: The query-subquery approach
– Vieille
- 1986
|
|
40
|
The Alexander method, a technique for the processing of recursive axioms in deductive databases,” New Generation Computing 4(3
– Rohmer, Lescoeur, et al.
- 1986
|
|
38
|
Rule Ordering in Bottom-up Fixpoint Evaluation of Logic Programs
– Ramakrishnan, Srivastava, et al.
- 1994
|
|
36
|
Controlling the search in bottom-up evaluation
– Ramakrishnan, Srivastava, et al.
- 1992
|
|
32
|
Minimum and Maximum Predicates in Logic Programming
– Ganguly, Greco, et al.
- 1991
|
|
31
|
A Structure-sharing representation for unificationbased grammar formalisms
– Pereira
- 1985
|
|
29
|
Fully persistent arrays
– Dietz
- 1989
|
|
26
|
Modular acyclicity and tail recursion in logic programs
– Ross
- 1991
|
|
23
|
Fully persistent lists with catenation
– Driscoll, Sleator, et al.
- 1994
|
|
20
|
Top-Down vs. Bottom-Up Revisited
– Ramakrishnan, Sudarshan
- 1991
|
|
16
|
From QSQ towards QoSaQ: Global optimization of recursive queries
– Vieille
- 1988
|
|
13
|
On Criteria for Or-Parallel Execution Models of Logic Programs
– Gupta, Jayaraman
- 1990
|
|
13
|
templates: A spellbinding approach to logic programs
– Magic
- 1988
|
|
8
|
A hashing method for fast set operations
– Sassa, Goto
- 1976
|
|
5
|
Logarithmic access arrays for prolog. Unpublished program
– Warren
- 1983
|
|
2
|
Optimizing Bottom-Up Evaluation for Deductive Databases
– Sudarshan
- 1992
|
|
1
|
and Raghu Ramakrishnan. Top-Down vs. Bottom-Up Revisited. Manuscript in preparation (full version of [RS91
– Sudarshan
- 1992
|