## D'ej`a vu in fixpoints of logic programs (1989)

Venue: | in Proceedings of the North American Conference on Logic Programming |

Citations: | 27 - 5 self |

### BibTeX

@INPROCEEDINGS{Maher89d'ej`avu,

author = {Michael J. Maher and Raghu Ramakrishnan},

title = {D'ej`a vu in fixpoints of logic programs},

booktitle = {in Proceedings of the North American Conference on Logic Programming},

year = {1989},

pages = {963--980},

publisher = {The MIT Press}

}

### Years of Citing Articles

### OpenURL

### Abstract

We investigate properties of logic programs that permit refinements in their fixpoint evaluation and shed light on the choice of control strategy. A fundamental aspect of a bottom-up computation is that we must constantly check to see if the fixpoint has been reached. If the computation iteratively applies all rules, bottom-up, until the fixpoint is reached, this amounts to checking if any new facts were produced after each iteration. Such a check also enhances efficiency in that duplicate facts need not be re-used in subsequent iterations, if we use the Seminaive fixpoint evaluation strategy. However, the cost of this check is a significant component of the cost of bottom-up fixpoint evaluation, and for many programs the full check is unnecessary. We identify properties of programs that enable us to infer that a much simpler check (namely, whether any fact was produced in the previous iteration) suffices. While it is in general undecidable whether a given program has these properties, we develop techniques to test sufficient conditions, and we illustrate these techniques on some simple programs that have these properties. The significance of our results lies in the significantly larger class of programs for which bottom-up evaluation methods, enhanced with the optimizations that we propose, become competitive with standard (top-down) implementations of logic programs. This increased efficiency is achieved without compromising the completeness of the bottom-up approach; this is in contrast to the incompleteness that accompanies the depth-first search strategy that is central to most top-down implementations.

### Citations

1105 |
Principles of database and knowledge-base systems, volume 2
- Ullman
- 1989
(Show Context)
Citation Context ... the paper with discussions of the sufficient conditions and future work. 2 Definitions We will assume the usual definitions of terms, facts, Horn rules, relations, functional dependencies, etc. (See =-=[27, 17]-=-.) In general, we admit function symbols in the alphabet of symbols. However our results also hold when there are no function symbols (i.e. Datalog); terms are then either constants or variables. We a... |

736 | Predicate Logic as a Programming Language
- Kowalski
- 1974
(Show Context)
Citation Context ...reatment of bottom-up evaluation of logic programs (or Datalog programs) in the literature has considered the evaluation as a computation of relations, and hence has used sets to describe the process =-=[29, 4, 7, 3, 2]-=-. Since our interest is in the occurrence of duplicate atoms (tuples) during the computation, we first extend portions of the existing theory to use multisets of atoms, rather than sets. We also exten... |

314 |
Magic sets and other strange ways to implement logic programs
- Bancilhon, Maier, et al.
- 1986
(Show Context)
Citation Context ...nd derived – are ground, and function symbols are not used. Such programs are referred to as deductive databases, and bottom-up evaluation methods were originally developed with such programs in mind =-=[5, 6, 8, 13, 20, 22, 23, 26]-=-. In principle, bottom-up methods can also be used to evaluate programs with function symbols and few, possibly non-ground, facts [20, 26]. Our central thesis, and the motivation for this work, is tha... |

253 | On the power of magic
- Beeri, Ramakrishnan
- 1991
(Show Context)
Citation Context ...nd derived – are ground, and function symbols are not used. Such programs are referred to as deductive databases, and bottom-up evaluation methods were originally developed with such programs in mind =-=[5, 6, 8, 13, 20, 22, 23, 26]-=-. In principle, bottom-up methods can also be used to evaluate programs with function symbols and few, possibly non-ground, facts [20, 26]. Our central thesis, and the motivation for this work, is tha... |

227 |
Unification revisited
- Lassez, Maher, et al.
- 1987
(Show Context)
Citation Context ...se I → J does not hold over R, that is, there are facts f and g in R and a variable renaming σ such that f[I]σ = g[I], but f[I,J] and g[I,J] are not equal modulo variable renaming. By corollary 12 of =-=[16]-=- there is a grounding substitution α for one of the facts, say g, such that g[I,J]α is not an instance of f[I,J]. Let β be a ground extension of α to all variables of fσ and g. So fσβ and gβ are in gr... |

204 |
An amateur’s introduction to recursive query processing strategies
- Bancilhon, Ramakrishnan
- 1986
(Show Context)
Citation Context ...nd derived – are ground, and function symbols are not used. Such programs are referred to as deductive databases, and bottom-up evaluation methods were originally developed with such programs in mind =-=[5, 6, 8, 13, 20, 22, 23, 26]-=-. In principle, bottom-up methods can also be used to evaluate programs with function symbols and few, possibly non-ground, facts [20, 26]. Our central thesis, and the motivation for this work, is tha... |

119 |
Foundations of Logic Programming, 2nd Edition
- LLOYD
- 1987
(Show Context)
Citation Context ... the paper with discussions of the sufficient conditions and future work. 2 Definitions We will assume the usual definitions of terms, facts, Horn rules, relations, functional dependencies, etc. (See =-=[27, 17]-=-.) In general, we admit function symbols in the alphabet of symbols. However our results also hold when there are no function symbols (i.e. Datalog); terms are then either constants or variables. We a... |

119 | Magic templates: A spellbinding approach to logic programs
- Ramakrishnan
- 1988
(Show Context)
Citation Context |

72 | Bottom-up beats top-down for datalog - Ullman - 1989 |

68 |
A generalization of the differential approach to recursive query evaluation
- Balbin, Ramamohanarao
- 1987
(Show Context)
Citation Context ...t applying optimizing program transformations and then evaluating the fixpoint of the rewritten program bottom-up. It is generally proposed that the fixpoint be computed using the Seminaive algorithm =-=[4, 7, 3]-=-, which avoids repeating inferences. However, this method requires that the new facts computed in each iteration be compared with previously generated facts to eliminate duplicates, and this is a cost... |

62 | The magic of duplicates and aggregates
- Pirahesh, Mumick, et al.
- 1990
(Show Context)
Citation Context ... shows that the class of subsumption-free programs is not identical to the class of functional programs expressed in logic program notation, since the above definition 1 This follows from a result in =-=[18]-=-. The rewritten program in general contains additional filter predicates, rules defining these new predicates, and all the original rules with a filter literal added to the body. If the original progr... |

60 | Recursive axioms in deductive databases : the query-sub-query approach - Vieille - 1987 |

57 |
E.: Fully Abstract Compositional Semantics for Logic Programs
- Gaifman, Shapiro
- 1989
(Show Context)
Citation Context ...tes the set GC generated by a set (or multiset) computation and GCn denotes the set generated at step n of such a computation. GC is the minimal S-model of P as defined by [10]. It was recently shown =-=[11, 12]-=- that GC and IGC are fully abstract semantics for logic programs under an operational (respectively, declarative) definition of observable program behaviors. 9sWe present algebraic definitions of some... |

46 |
The alexander method : a technique for the processing of recursive axioms in deductive databases
- Rohmer, Lescoeur, et al.
- 1986
(Show Context)
Citation Context |

43 |
On the Power of Alexander Templates
- Seki
- 1989
(Show Context)
Citation Context |

34 |
A framework for testing safety and effective computability
- Krishnamurthy, Ramakrishnan, et al.
- 1996
(Show Context)
Citation Context ...e ˜t-relation R, this proof also demonstrates that the axioms are sound and complete for inferring finiteness dependencies or finiteness constraints. The following definition adapts the definition in =-=[14]-=- to ˜t relations. Definition 8.3 Finiteness Constraints A finiteness constraint I → J where I,J ⊆ S is said to hold over a ˜t-relation R iff for every fact f in R, the set {g[I,J] | g ∈ R,for some var... |

33 | Transformation of Logic Programs into Functional Programs - Reddy - 1984 |

27 |
Data functions, datalog and negation
- Abiteboul, Hull
- 1988
(Show Context)
Citation Context ... finite. When we wish to determine FDs using only the IDB and FDs on the EDB these problems are undecidable, even in the case of Datalog programs. This follows from a result due to Abiteboul and Hull =-=[1]-=-. Faced with uncomputability, we suggest the following methodology for establishing FDs: To establish an FD d over the ˜t-relation R corresponding to a rule r, find a set T of FDs over relations of GC... |

26 |
A new declarative semantics for logic languages
- FALASCHI, LEVI, et al.
- 1988
(Show Context)
Citation Context ...ring the computation, we first extend portions of the existing theory to use multisets of atoms, rather than sets. We also extend most treatments by generating non-ground atoms in a manner similar to =-=[10]-=-. This involves a further extension, since we must now consider the possibility that newly generated atoms might be subsumed by previously generated atoms. We denote by ground(X) the set of ground ins... |

23 | A framework for an efficient implementation of deductive databases
- Kifer, Lozinskii
- 1986
(Show Context)
Citation Context |

23 | The Generalized Counting Method for Recursive Logic Queries
- Sacca, Zaniolo
- 1986
(Show Context)
Citation Context |

17 |
Query evaluation and recursion in deductive database systems
- Bayer
- 1985
(Show Context)
Citation Context ...t applying optimizing program transformations and then evaluating the fixpoint of the rewritten program bottom-up. It is generally proposed that the fixpoint be computed using the Seminaive algorithm =-=[4, 7, 3]-=-, which avoids repeating inferences. However, this method requires that the new facts computed in each iteration be compared with previously generated facts to eliminate duplicates, and this is a cost... |

16 |
Compiling exploratory and goaldirected deduction into sloppy delta iteration
- Schmidt, Kiessling, et al.
- 1987
(Show Context)
Citation Context ...e that inference of new facts from this set is performed simultaneously by all rules in the program. Refinements of this analysis are possible for more flexible inference strategies, such as those of =-=[15, 24, 2]-=-. However we do not pursue this point further. 3 F consists of the EDB and rules from the IDB which have empty bodies. 7sWe now define the class of evaluation strategies that we consider, and some rel... |

13 |
Closure and fairness in the semantics of programming logic
- Lassen, Maher
- 1984
(Show Context)
Citation Context ...e that inference of new facts from this set is performed simultaneously by all rules in the program. Refinements of this analysis are possible for more flexible inference strategies, such as those of =-=[15, 24, 2]-=-. However we do not pursue this point further. 3 F consists of the EDB and rules from the IDB which have empty bodies. 7sWe now define the class of evaluation strategies that we consider, and some rel... |

9 |
Proof theory and semantics of logic programs
- Gaifman, Shapiro
- 1989
(Show Context)
Citation Context ...tes the set GC generated by a set (or multiset) computation and GCn denotes the set generated at step n of such a computation. GC is the minimal S-model of P as defined by [10]. It was recently shown =-=[11, 12]-=- that GC and IGC are fully abstract semantics for logic programs under an operational (respectively, declarative) definition of observable program behaviors. 9sWe present algebraic definitions of some... |

8 |
Horn clause programs for recursive functions
- Šebelík, Štěpánek
- 1982
(Show Context)
Citation Context ...ate-free (subsumption-free, etc.) for every instance of the EDB that satisfies the integrity constraints? We conjecture that this is undecidable, but leave it as an open problem. Sebelik and Stepanek =-=[25]-=- showed that every partial recursive function can be expressed as a logic program, by encoding standard rules (e.g. [31]) for defining partial recursive functions into definite clauses. We use their e... |

3 |
A Note on the Performance of Rule Based Systems
- Bancilhon
- 1985
(Show Context)
Citation Context ...t applying optimizing program transformations and then evaluating the fixpoint of the rewritten program bottom-up. It is generally proposed that the fixpoint be computed using the Seminaive algorithm =-=[4, 7, 3]-=-, which avoids repeating inferences. However, this method requires that the new facts computed in each iteration be compared with previously generated facts to eliminate duplicates, and this is a cost... |

3 |
On logic programs, functional dependencies, and types
- Zobel, Dart
- 1990
(Show Context)
Citation Context ...erparts, and this may allow the detection of functionality — extended suitably in terms of GC, by not requiring the “input” arguments to be ground — in some additional cases. Recently, Zobel and Dart =-=[32]-=- have proposed a method for computing FDs over M. They combine a type analysis with the inference of finiteness dependencies to obtain a function T D P which maps sets of FDs to sets of FDs. The great... |

2 |
Efficient Computing of Least Fixpoints
- Apt
- 1988
(Show Context)
Citation Context ...reatment of bottom-up evaluation of logic programs (or Datalog programs) in the literature has considered the evaluation as a computation of relations, and hence has used sets to describe the process =-=[29, 4, 7, 3, 2]-=-. Since our interest is in the occurrence of duplicate atoms (tuples) during the computation, we first extend portions of the existing theory to use multisets of atoms, rather than sets. We also exten... |

2 |
Functional Compositions in Logic Programs
- Debray, Warren
- 1989
(Show Context)
Citation Context ...of GC, and define Tb and Th to be FDs over ground(R). Clearly it can also be modified to establish sets of FDs over M. Our work in this section generalizes results of Reddy [21] and Debray and Warren =-=[9]-=-, who also present techniques for inferring FDs. Reddy infers FDs over M; we generalize his results by inferring FDs over GC and R, in addition to M. Debray and Warren infer FDs in which a set of argu... |

2 |
A Unified Approach to Logic Program Evaluation
- Naughton, Ramakrishnan
- 1989
(Show Context)
Citation Context ...tifying classes of programs for which Prolog’s evaluation strategy is complete, and in studying the choice of different control strategies that are now viable alternatives in logic program evaluation =-=[19]-=-. The rest of this paper is organized as follows. Section 2 gives some preliminary definitions. In Section 3, we extend parts of the theory of logic programs to deal with multisets rather than sets, w... |