Compilation-Based List Processing in Deductive Databases

List functions occur frequently in deductive database applications. We study efficient evaluation of linear recursions with list functions in deductive databases. Since most linear recursions can be compiled into chain forms, a chain-based query evaluation method is developed, which selects an efficient query evaluation algorithm based on the analysis of compiled forms and finiteness, termination and query constraints. Interesting techniques, such as chain-split, existence checking and constraint-based evaluation, are developed to improve the performance. Moreover, chain-based evaluation can be generalized to the complex recursions compilable to chain forms.

[1]  Carlo Zaniolo,et al.  The LDL System Prototype , 1990, IEEE Trans. Knowl. Data Eng..

[2]  Jeffrey D. Ullman,et al.  Principles Of Database And Knowledge-Base Systems , 1979 .

[3]  Catriel Beeri,et al.  On the power of magic , 1987, J. Log. Program..

[4]  Michael J. Maher,et al.  Expanding Query Power in Constraint Logic Programming Languages , 1989, NACLP.

[5]  Yehoshua Sagiv,et al.  On Termination of Datalog Programs , 1989, DOOD.

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

[7]  Tomasz Imielinski,et al.  Intelligent Query Answering in Rule Based Systems , 1988, J. Log. Program..

[8]  Tomasz Imeilinski Intelligent query answering in rule based systems , 1987 .

[9]  Umeshwar Dayal,et al.  Traversal recursion: a practical approach to supporting recursive applications , 1986, SIGMOD '86.

[10]  Abraham Silberschatz,et al.  Safety of recursive Horn clauses with infinite relations , 1987, PODS '87.

[11]  Yehoshua Sagiv,et al.  Safety of datalog queries over infinite databases , 1989, PODS '89.

[12]  Leon Sterling,et al.  The Art of Prolog , 1987, IEEE Expert.

[13]  Qiang Wang,et al.  Evaluation of functional linear recursions: a compilation approach , 1991, Inf. Syst..

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

[15]  Jiawei Han,et al.  Asynchronous Chain Recursions , 1989, IEEE Trans. Knowl. Data Eng..

[16]  Jiawei Han,et al.  Multi-way counting method , 1989, Inf. Syst..

[17]  Jiawei Han,et al.  Constraint-based reasoning in deductive databases , 1991, [1991] Proceedings. Seventh International Conference on Data Engineering.

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

[19]  Bin Jiang,et al.  A suitable algorithm for computing partial transitive closures in databases , 1990, [1990] Proceedings. Sixth International Conference on Data Engineering.

[20]  Carlo Zaniolo,et al.  Optimization in a Logic Based Language for Knowledge and Data Intensive Applications , 1988, EDBT.

[21]  Joxan Jaffar,et al.  Constraint logic programming , 1987, POPL '87.

[22]  JIAWEI HAN,et al.  Compiling general linear recursions by variable connection graph analysis , 1989, Comput. Intell..

[23]  Lawrence J. Henschen,et al.  On compiling queries in recursive first-order databases , 1984, JACM.