This Article 
 Bibliographic References 
 Add to: 
Linearization of Nonlinear Recursive Rules
September 1989 (vol. 15 no. 9)
pp. 1109-1119

The problem of converting a simple nonlinear recursive logic query into an equivalent linear one is considered. A general method is given to transform a nonlinear rule into a sequence of linear ones. For efficient processing it is necessary to convert a nonlinear rule into a single linear rule. For such a conversion, a necessary and sufficient condition is provided for a type of doubly recursive rule to be equivalent to the resulting linear rule. It is also shown that a restricted type of higher order recursive rule is equivalent to the linear rule obtained by its conversion.

[1] A. Aho and J. Ullman, "Universality of data retrieval languages," inProc. 6th ACM Symp: Principles of Programming Languages, San Antonio, TX, Jan. 1979.
[2] K. R. Apt and M. H. van Emden, "Contributions to the theory of logic programming,"JACM, vol. 29, pp. 841-862, 1982.
[3] F. Bancilhon and R. Ramakrishnan, "An amateur's introduction to recursive query processing strategies," inProc. 1986 ACM-SIGMOD Conf. Management of Data(Washington, DC), May 1986, pp. 16-52.
[4] C. Beeri et al., "On the Desirability of Acyclic Database Schemes,"J. ACM, Vol. 30, No. 3, July 1983, pp. 479- 513.
[5] C. Beeri, P. Kanellakis, F. Bancilhon, and R. Ramakrishnan, "Bounds on the propagation of selection into logic programs," inProc. 6th ACM Symp. Principles of Database Syst., San Diego, CA, Mar. 1987, pp. 214-226.
[6] F. Bancilhon, D. Maier, Y. Sagiv, and J. D. Ullman, "Magic sets and other strange ways to implement logic programs," inProc. 5th ACM Symp. Principles of Database Syst.(Cambridge, MA), Mar. 1986, pp. 1-15.
[7] S. Ceri, G. Gottlob, and L. Lavazza, "Translation and optimization of logic queries: The algebraic approach," inProc. VLDB Conf., Koto, Japan, Aug. 1986.
[8] C. Chang, "On the evaluation of queries containing derived Relations in relational databases," inAdvances in Data Base Theory, vol. 1, H. Gallaire, J. Minker, and J. Nicholas, Eds. New York: Plenum, pp. 235-260.
[9] M. H. van Emden and R. A. Kowalski, "The semantics of predicate logic as a programming language,"J. ACM, vol. 23, no. 4, pp. 733- 743, 1976.
[10] N. Goodman and O. Shmueli, "Syntactic characterization of tree database schemas,"J. ACM, vol. 30, no. 4, Oct. 1983.
[11] J. Han and H. Lu, "Some performance result on recursive query processing in relational database systems," inProc. IEEE Int. Conf. Data Engineering, 1986.
[12] J. Han and L. Henschen, "Stack-directed query computation of complex recursive rules in deductive database," Dep. EECS, Northwestern Univ., Tech. Rep., 1986.
[13] L. J. Henschen and S. Naqvi, "On compiling queries in recursive first-order databases,"J. ACM, vol. 1, no. 1, pp. 47-85, 1984.
[14] Y. Ioannidis, "A time bound on the materialization of some recursively defined views," inProc. Conf. VLDB, 1985.
[15] Y. Ioannidis and E. Wong, "An algebraic approach to recursive inference,"Expert Database Syst., 1986.
[16] P. Larson and H. Yang, "Computing queries from derived relations,"VLDB, pp. 259-269, 1985.
[17] J. W. Lloyd,Foundations of Logic Programming, New York: Springer, 1984.
[18] J. Naughton, "Data independent recursion in deductive databases," inProc. 5th Symp. Principles Database Syst., Cambridge, MA, Mar. 1986, pp. 267-279.
[19] R. Reiter, "Deductive question answering on relational database," inLogic and Databases, H. Gallaire and J. Minker, Eds. New York: Plenum, 1978, pp. 149-177.
[20] D. Sacca' and C. Zaniolo, "On the implementation of a simple class of logic queries for databases," inProc. ACM 1986 SIGMOD-SIGACT Symp. Principles Database Syst., Cambridge. MA, Mar. 1986.
[21] D. Troy and C. Yu, "Transforming nonlinear recursive rules to linear recursive rules," Dept. EECS, Univ. Illinois at Chicago, Tech. Rep., 1986.
[22] J. D. Ullman, "Implementation of logical query languages for databases,"ACM TODS, vol. 10, no. 3, pp. 289-321, 1985.
[23] J. D. Ullman,Principles of Databases Systems. Rockville, MD: Computer Science Press, 1982.
[24] M. Vardi, "Complexity of relational queries,"ACM SIGACT, pp. 137-145, 1982.
[25] C. Yu and M. Ozsoyoglu, "An algorithm for tree query membership for a distributed query,"IEEE COMPSAC, Nov. 1979, pp. 306-312.
[26] C. Yu and W. Zhang, "Efficient recursive query processing using wavefront methods,"IEEE Data Eng., pp. 652-657, 1987.
[27] C. Zaniolo, "Safety and compilation of non-recursive Horn clauses,"Expert Database Syst., pp. 167-178, 1986.
[28] W. Zhang, C. Yu, and D. Troy, "A necessary and sufficient condition to linearize doubly recursive programs in logic databases," Dep. EECS, Univ. Illinois at Chicago, Tech. Rep., 1988.
[29] W. Zhang and C. T. Yu, "A necessary condition for a doubly recursive rule to be equivalent to a linear recursive rule," inProc. 1987 ACM-SIGMOD Conf. Management of Data, San Francisco, CA, May 1987, pp. 345-356.
[30] W. Zhang, "A linearization of non-linear recursive programs in logic databases," Ph.D. dissertation, Dep. EECS, Univ. Illinois at Chicago, 1988.

Index Terms:
linearization; nonlinear recursive rules; nonlinear recursive logic query; necessary and sufficient condition; type; doubly recursive rule; equivalent; recursive functions
D.J. Troy, C.T. Yu, W. Zhang, "Linearization of Nonlinear Recursive Rules," IEEE Transactions on Software Engineering, vol. 15, no. 9, pp. 1109-1119, Sept. 1989, doi:10.1109/32.31368
Usage of this product signifies your acceptance of the Terms of Use.