Abstract
We studylazy structure sharing as a tool for optimizing equivalence testing on complex data types. We investigate a number of strategies for implementing lazy structure sharing and provide upper and lower bounds on their performance (how quickly they effect ideal configurations of our data structure). In most cases when the strategies are applied to a restricted case of the problem, the bounds provide nontrivial improvements over the naïve linear-time equivalence-testing strategy that employs no optimization. Only one strategy, however, which employs path compression, seems promising for the most general case of the problem.
Similar content being viewed by others
References
Allen, J.: Anatomy of LISP. McGraw-Hill Computer Science Series. New York: McGraw-Hill 1978
Boyer, R.S., Moore, J.S.: The sharing of structure in theorem-proving programs. Machine Intelligence7, 101–116 (1972)
Cordin, J., Bidoit, M.: A rehabilitation of Robinson's unification algorithm. In Proc. 9th IFIP World Computer Cong., pp. 909–914 (1983)
Flickinger, D., Pollard, C., Wasow, T.: Structure-sharing in lexical representation. In Proc. 23rd Ann. Mtg. of the Asso. for Computational Linguistics, pp. 262–267, 1985
Greene, D.H., Knuth, D.E.: Mathematics for the analysis of algorithms 2nd edn. Boston: Birkhäuser, 1982
Karttunen, L., Kay, M.: Structure sharing with binary trees. In Proc. 23rd Ann. Mtg. of the Asso. for Computational Linguistics, pp. 133–136a, 1985
Martelli, A., Montanari, U.: Theorem proving with structure sharing and efficient unification. In Proc. 5th Int. Joint Conf. on Artificial Intelligence, pp. 543, 1977
Pereira, F.C.N.: A structure-sharing representation for unification-based grammar functions. In Proc. 23rd Ann. Mtg. of the Asso. for Computational Linguistics, pp 137–144, 1985
Pugh, W.W.: Incremental computation and the incremental evaluation of functional programs. Ph.D. Thesis, Department of Computer Science, Cornell University, 1988
Spitzer, J.M., Levitt, K.N., Robinson, L.: An example of hierarchical design and proof. Commun. ACM21 (12), 1064–1075 (1978)
Tarjan, R.E.: Efficiency of a good but not linear set union algorithm. J. ACM22 (2), 215–225 (1975)
Yellin, D.M.: Algorithms for subset testing and finding maximal sets. In Proc. 3rd ACM-SIAM Symp. on Discrete Algorithms, pp. 386–92, 1992
Author information
Authors and Affiliations
Additional information
Work completed while at Princeton University and supported by a Fannie and John Hertz Foundation Fellowship, National Science Foundation Grant No. CCR-8920505, and the Center for Discrete Mathematics and Theoretical Computer Science (DIMACS) under NSF-STC-91-19999.
Work completed while at Princeton University and DIMACS and supported by DIMACS under NSF-STC-91-19999.
Research at Princeton University partially supported by the National Science Foundation, Grant No. CCR-8920505, the Office of Naval Research, Contract No. N00014-91-J-1463, and by DIMACS under NSF-STC-91-19999.
Rights and permissions
About this article
Cite this article
Buchsbaum, A.L., Sundar, R. & Tarjan, R.E. Lazy structure sharing for query optimization. Acta Informatica 32, 255–270 (1995). https://doi.org/10.1007/BF01178261
Received:
Issue Date:
DOI: https://doi.org/10.1007/BF01178261