This Article 
 Bibliographic References 
 Add to: 
Reasoning About Equations and Functional Dependencies on Complex Objects
June 1994 (vol. 6 no. 3)
pp. 455-469

Virtually all semantic or object-oriented data models assume that objects have an identity separate from any of their parts, and allow users to define complex object types in which part values may be any other objects. This often results in a choice of query language in which a user can express navigating from one object to another by following a property value path. We consider a constraint language in which one may express equations and functional dependencies over complex object types. The language is novel in the sense that component attributes of individual constraints may correspond to property paths. The kind of equations we consider are also important, because they are a natural abstraction of the class of conjunctive queries for query languages that support property value navigation. In our introductory comments, we give an example of such a query and outline two applications of the constraint theory to problems relating to a choice of access plan for the query. We present a sound and complete axiomatization of the constraint language for the case in which interpretations are permitted to be infinite, where interpretations themselves correspond to a form of directed labeled graph. Although the implication problem for our form of equational constraint alone over arbitrary schema is undecidable, we present decision procedures for the implication problem for both kinds of constraints when the problem schema satisfies a stratification condition, and when all input functional dependencies are keys.

[1] S. Abiteboul and S. Grumbach, "COL: A logic-based language for complex objects," inProc. Int. Conf. Extending Data Base Technology, Mar. 1988.
[2] S. Abiteboul and P. C. Kanellakis, "Object identity as a query language primitive," inProc. 1989 ACM-SIGMOD Int. Conf. on Management of Data(Portland, OR), May 1989.
[3] A. V. Aho, J. E. Hopcroft, and J. D. Ullman,The Design and Analysis of Computer Algorithms. Menlo Park, CA: Addison-Wesley, 1974.
[4] A. V. Aho, Y. Sagiv, and J. D. Ullman, "Efficient optimization of a class of relational expressions,"ACM Trans. Database Syst., vol. 4, no. 4, pp. 435-454, Dec. 1979.
[5] C. Beeri, "Formal models for object-oriented databases," inProc. 1st Int. Conf. Deductive and Object-Oriented Databases, 1989, pp. 370-395.
[6] C. Beeri, "A formal approach to object-oriented databases,"Data Knowl. Eng., vol. 5, pp. 353-382, 1990.
[7] J. Bentley, "Programming pearls,"Commun. ACM, vol. 26, no. 9, pp. 623-628, Sept. 1983.
[8] E. Bertino, "An indexing technique for object-oriented databases," inProc. 7th Int. Conf. Data Eng., 1991, pp. 160-170.
[9] E. Bertino and W. Kim, "Indexing techniques for queries on nested objects,"IEEE Trans. Knowl. Data Eng., vol. 1, pp. 196-214, June 1989.
[10] G. Birkhoff, "On the structure of abstract algebras,"Proc. Cambridge Philisophical Soc., vol. 31, no. 4, pp. 433-454, Oct. 1935.
[11] A. Bogida, "Features of languages for the development of information systems at the conceptual level,"IEEE Software, vol. 2, no. 1, pp. 63-72, Jan. 1985.
[12] S. Ceri, G. Gottlob, and L. Tanca, "What you always wanted to know about datalog (and never dared to ask),"IEEE Trans. Knowl. Data Eng., vol. 1, pp. 146-166, Mar. 1989.
[13] U. S. Chakravarthy, J. Grant, and J. Minker, "Foundations of semantic query optimization for deductive databases," inProc. Int. Workshop Foundations Deductive Databases Logic Programming, J. Minker, Ed., Aug. 1986.
[14] U.S. Chakravarthy, J. Grant, and J. Minker, "Logic-based approach to semantic query optimization,"ACM Trans. Database Syst., vol. 15, pp. 162-207, 1990.
[15] S. Cluet, C. Delobel, C. Lécluse, and P. Richard, "Reloop, an algebra based query language for an object-oriented database system," inProc. 1st Int. Conf. in Deductive and Object-Oriented Databases, 1989, pp. 294-313.
[16] Computer Corp. of Am., ADAPLEX.Rational and Reference Manual, cca-83-08 ed., May 1983.
[17] U. Dayal, "Queries and views in an object-oriented data model," inProc. 2nd Int. Work. on Database Programming Languages, June 1989.
[18] S. K. Debray and D. S. Warren, "Functional computation in logic programs,"ACM Trans. Programming Languages and Syst., vol. 11, no. 3, pp. 451-481, July 1989.
[19] P. J. Downey, R. Sethi, and R.E. Tarjan, "Variations on the common subexpression problem,"J. ACM, vol. 27, pp. 758-771, Oct. 1990.
[20] G. Huet and D. Oppen, "Equations and rewrite rules: A survey," in R. Book, Ed.,Formal Language Perspectives and Open Problems. New York: Academic Press, 1980.
[21] M. Machtey and P. Young,An Introduction to the General Theory of Algorithms. Amsterdam: North-Holland, 1978.
[22] D. Maier,The Theory of Relational Databases. New York: Computer Science Press, 1983.
[23] D. Maier and J. Stein, "Indexing in an object-oriented DBMS," inProc. Int. Workshop Object-Oriented Database Syst., Asilomar, CA, Sept. 23-26, 1986, pp. 171-182.
[24] A. O. Mendelzon, "Functional dependencies in logic programs," inProc. 11th Int. Conf. Very Large Data Bases, 1985, pp. 324-330.
[25] A. O. Mendelzon and P. T. Wood, "Functional dependencies in horn clause queries,"ACM Trans. Database Syst., vol. 16, pp. 31-55, Mar. 1991.
[26] J. Mylopoulos,et al., "A language facility for designing database intensive applications,"ACM Trans. Database Syst., vol. 5, no. 2, June 1980.
[27] G. Nelson and D. C. Oppen, "Fast decision procedures based on congruence closure,"J. ACM, vol. 27, pp. 356-364, Apr. 1980.
[28] C. G. Nelson and D. C. Oppen, "Fast decision procedures based on UNION and FIND," inProc. 18th Ann. Symp. Foundations of Comput. Sci., 1977.
[29] D. J. Rosenkrantz and H. B. Hunt, "Processing conjunctive predicates and queries," inProc. 6th Int. Conf. on Very Large Data Bases, Oct. 1980.
[30] S. T. Shenoy and Z. M. Ozsoyoglu, "Design and implementation of a semantic query optimizer,"IEEE Trans. Knowl. Data Eng., vol. 1, pp. 344-361, Sept. 1989.
[31] B. Stroustrup,The C++ Programming Language. Reading, MA: Addison-Wesley, 1986.
[32] J. D. Ullman,Principles of Databases Systems. Rockville, MD: Computer Science Press, 1982.
[33] J. D. Ullman,Database and Knowledge-base Systems. Rockville, MD: Computer Science Press, 1988.
[34] M. F. van Bommel, "Theory and applications of join conditions and path functional dependencies for object-oriented data models," Dept. of Comput. Sci., Univ. of Waterloo, ON, Canada, 1989.
[35] M. F. van Bommel and G. E. Weddell, "Reasoning about equations and functional dependencies on complex objects," Res. Rep. CS-90-45, Dept. of Comput. Sci., Univ. of Waterloo, ON, Canada, 1990.
[36] G. E. Weddell, "Selection of indices to memory-resident entities for semantic data models,"IEEE Trans. Knowl. Data Eng., vol. 1, pp. 274-284, June 1989.
[37] G. E. Weddell, "A theory of functional dependencies for object-oriented data models," inProc. 1st Int. Conf. Deductive and Object-Oriented Databases, 1989, pp. 150-169.
[38] G. E. Weddell, "Reasoning about functional dependencies generalized for semantic data models,"ACM Trans. Database Syst., vol. 17, pp. 32-64, Mar. 1992.
[39] C. Zaniolo, "The database language GEM," inProc. 1983 ACMSIGMOD Int. Conf. Management of Data, San Jose, CA, May 1983.

Index Terms:
object-oriented databases; query languages; query processing; data structures; database management systems; constraint theory; directed graphs; database theory; reasoning; equations; functional dependencies; complex objects; semantic data models; object-oriented data models; complex object types; query language; property value path; constraint language; property paths; conjunctive queries; query languages; property value navigation; constraint theory; directed labeled graph; equational constraint; undecidable; decision procedures; stratification condition
M.F. van Bommel, G.E. Weddell, "Reasoning About Equations and Functional Dependencies on Complex Objects," IEEE Transactions on Knowledge and Data Engineering, vol. 6, no. 3, pp. 455-469, June 1994, doi:10.1109/69.334857
Usage of this product signifies your acceptance of the Terms of Use.