Querying datalog with arrays: Design and implementation issues

This paper deals with the implementation of logic queries where array structures are manipulated. Both top-down and bottom-up implementations of the presented logic language, called DatalogA, are considered. Indeed, SLD-resolution is generalized to realize DatalogA top-down query answering. Further, a fixpoint based evaluation of DatalogA queries is introduced, which forms the basis for efficient bottom-up implementation of queries obtained by generalizing rewriting techniques such as magic set method to the case of DatalogA programs.

[1]  Shamim A. Naqvi,et al.  A Logical Language for Data and Knowledge Bases , 1989 .

[2]  David Maier,et al.  Magic sets and other strange ways to implement logic programs (extended abstract) , 1985, PODS '86.

[3]  Kenneth A. Ross,et al.  The well-founded semantics for general logic programs , 1991, JACM.

[4]  Robert A. Di Paola The Recursive Unsolvability of the Decision Problem for the Class of Definite Formulas , 1969, JACM.

[5]  Catriel Beeri,et al.  On the power of magic , 1987, PODS '87.

[6]  Jeffrey F. Naughton,et al.  A Counting Algorithm for a Cyclic Binary Query , 1991, J. Comput. Syst. Sci..

[7]  Raghu Ramakrishnan,et al.  Performance Evaluation of Data Intensive Logic Programs , 1988, Foundations of Deductive Databases and Logic Programming..

[8]  David J. DeWitt,et al.  Algebraic support for complex objects with arrays, identity, and inheritance , 1991, SIGMOD '91.

[9]  Wolfgang Nejdl,et al.  Recursive Strategies for Answering Recursive Queries - The RQA/FQI Strategy , 1987, VLDB.

[10]  J. Lloyd Foundations of Logic Programming , 1984, Symbolic Computation.

[11]  Thomas Eiter,et al.  Querying Disjunctive Database Through Nonmonotonic Logics , 1995, ICDT.

[12]  Alfred V. Aho,et al.  The Design and Analysis of Computer Algorithms , 1974 .

[13]  M. A. Jenkins,et al.  Logic Programming with Arrays , 1991, IEEE Trans. Knowl. Data Eng..

[14]  Domenico Saccà,et al.  Comparison of Methods for Logic-Query Implementation , 1991, J. Log. Program..

[15]  Teodor C. Przymusinski Perfect Model Semantics , 1988, ICLP/SLP.

[16]  Sergio Greco,et al.  Optimization of Linear Logic Programs Using Counting Methods , 1992, EDBT.

[17]  Alfred V. Aho,et al.  Universality of data retrieval languages , 1979, POPL.

[18]  Carlo Zaniolo,et al.  The Generalized Counting Method for Recursive Logic Queries , 1986, Theor. Comput. Sci..

[19]  Catriel Beeri,et al.  On the power of languages for manipulation of complex objects , 1987, VLDB 1987.

[20]  Oded Shmueli,et al.  Decidability and expressiveness aspects of logic queries , 1987, XP7.52 Workshop on Database Theory.

[21]  Georg Gottlob,et al.  Default Logic as a Query Language , 1997, IEEE Trans. Knowl. Data Eng..

[22]  Mike Paterson,et al.  Linear unification , 1976, STOC '76.

[23]  Jeffrey F. Naughton,et al.  Argument Reduction by Factoring , 1989, VLDB.

[24]  R. Ramakrishnan,et al.  A framework for testing safety and effective computability of extended datalog , 1988, SIGMOD '88.

[25]  Jeffrey F. Naughton,et al.  Efficient evaluation of right-, left-, and multi-linear rules , 1989, SIGMOD '89.

[26]  Trenchard More,et al.  Axioms and Theorems for a Theory of Arrays , 1973, IBM J. Res. Dev..

[27]  Krzysztof R. Apt,et al.  Introduction to Logic Programming , 1988 .

[28]  Sergio Greco,et al.  Extending Datalog with Arrays , 1995, Data Knowl. Eng..

[29]  Serge Abiteboul,et al.  Object identity as a query language primitive , 1989, SIGMOD '89.

[30]  Sergio Greco,et al.  The PushDown Method to Optimize Chain Logic Programs (Extended Abstract) , 1995, ICALP.

[31]  L. Vielle,et al.  Recursive query processing: the power of logic , 1989 .