Superfiniteness of Query Answers in Deductive Databases: An Automata-Theoretic Approach

Deciding finiteness of query answers is a problem of fundamental importance to query systems supporting declarative logic based languages with function symbols. Unfortunately, this problem is undecidable in general. One of the recently proposed techniques for coping with this situation consists in (i) approximating the original program with function symbols by a datalog program with infinite base relations, together with finiteness constraints (fcs) acting on them (fcs say that if certain columns of a relation are finite, so are other columns), and (ii) using an approximation for finiteness, called superfiniteness. A query is finite if it has finite answers in the least fixpoint model of the program, whereas it is superfinite if it has a finite answer in every fixpoint model of the program. While superfiniteness is decidable, the only known procedure for it takes time exponential in the size of the program and associated constraints. The main contribution of this paper is the development of automata-theoretic techniques for superfiniteness analysis and polynomial time decision procedures for certain classes of linear programs in the presence of unary fcs.

[1]  Shalom Tsur,et al.  Deductive databases in action , 1991, PODS '91.

[2]  Yehoshua Sagiv,et al.  On Testing Effective Computability of Magic Programs , 1991, DOOD.

[3]  Yehoshua Sagiv,et al.  Inference of Inequality Constraints in Logic Programs. , 1991, PODS 1991.

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

[5]  Michael Kifer,et al.  SYGRAF: Implementing Logic Programs in a Database Style , 1988, IEEE Trans. Software Eng..

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

[7]  Yehoshua Sagiv,et al.  Inference of inequality constraints in logic programs (extended abstracts) , 1991, PODS '91.

[8]  Jan Chomicki,et al.  Temporal deductive databases and infinite objects , 1988, PODS.

[9]  Moshe Y. Vardi Invited talk: automata theory for database theoreticians , 1989, PODS '89.

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

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

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

[13]  Yehoshua Sagiv,et al.  Inference of Monotonicity Constraints in Datalog Programs , 1989, PODS.

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

[15]  Moshe Y. Vardi Automata Theory for Database Theoreticans , 1991, Theoretical Studies in Computer Science.

[16]  Allen Van Gelder,et al.  Termination detection in logic programs using argument sizes (extended abstract) , 1991, PODS.