Abstract
We study several problems related to computing ancestors in dynamic trees on pure pointer machines, i.e., pointer machines with no arithmetic capabilities. The problems are motivated by those that arise in implementation of declarative and search-based programming languages. We provide a data structure that allows us to solve many of these problems including the computation of the nearest common ancestor, determination of precedence in the in-order traversal of the tree and membership of two nodes in the same path in worst-case O(lg h) time per operation where h is the height of the tree. Our solutions work for the fully dynamic case (no preprocessing) and do not use any arithmetic.
This work is partially supported by NSF grants CCR9875279, CCR9900320, CDA9729848, EIA9810732, EIA0130887,CCR9820852, and HRD9906130.
Access this chapter
Tax calculation will be finalised at checkout
Purchases are for personal use only
Preview
Unable to display preview. Download preview PDF.
References
S. Alstrup and M. Thorup. Optimal Pointer Algorithms for Finding Nearest Common Ancestors in Dynamic Trees. Journal of Algorithms, 35:169–188, 2000.
A.M. Ben-Amram. What is a Pointer Machine? Tech. Rep., U. Copenhagen, 1995.
M.A. Bender and M. Farach-Colton. The LCA Problem Revisited. In LATIN 2000, Springer Verlag, 2000.
O. Berkman and U. Vishkin. Recursive *-tree Parallel Data-structure. In FOCS, IEEE Computer Society, 1989.
R. Cole and R. Hariharan. Dynamic LCA Queries on Trees. In Proceedings of the Symposium on Discrete Algorithms (SODA), pages 235–244. ACM/SIAM, 1999.
A. Dal Palú, E. Pontelli, D. Ranjan. An Optimal Algorithm for Finding NCA on Pure Pointer Machines. Tech. Rep. NMSU-TR-CS-007/2001, 2001.
H.N. Gabow. Data structures for weighted matching and nearest common ancestor. In ACM Symp. on Discrete Algorithms, pages 434–443, 1990.
G. Gupta, E. Pontelli, et al. Parallel Execution of Prolog Programs: a Survey. ACM TOPLAS, 2002. (to appear).
D. Gusfield. Algorithms on Strings, Trees, and Sequences. Cambridge University Press, 1999.
D. Harel and R.E. Tarjan. Fast Algorithms for Finding Nearest Common Ancestor. SIAM Journal of Computing, 13(2):338–355, 1984.
D.E. Knuth. The Art of Computer Programming, volume 1. Addison-Wesley, 1968.
E. Pontelli, D. Ranjan, and G. Gupta. On the Complexity of Parallel Implementation of Logic Programs. In FSTTCS, 1997. Springer Verlag.
D. Ranjan, E. Pontelli, and G. Gupta. Data Structures for Order-Sensitive Predicates in Parallel Nondetermistic Systems. ACTA Informatica, 37(1):21–43, 2000.
D. Ranjan, E. Pontelli, L. Longpre, and G. Gupta. The Temporal Precedence Problem. Algorithmica, 28, 2000.
B. Schieber and U. Vishkin. On Finding Lowest Common Ancestors. SIAM J. Computing, 17:1253–1262, 1988.
A.K. Tsakalidis. The Nearest Common Ancestor in a Dynamic Tree. ACTA Informatica, 25:37–54, 1988.
Author information
Authors and Affiliations
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 2002 Springer-Verlag Berlin Heidelberg
About this paper
Cite this paper
Pontelli, E., Ranjan, D. (2002). Ancestor Problems on Pure Pointer Machines. In: Rajsbaum, S. (eds) LATIN 2002: Theoretical Informatics. LATIN 2002. Lecture Notes in Computer Science, vol 2286. Springer, Berlin, Heidelberg. https://doi.org/10.1007/3-540-45995-2_26
Download citation
DOI: https://doi.org/10.1007/3-540-45995-2_26
Published:
Publisher Name: Springer, Berlin, Heidelberg
Print ISBN: 978-3-540-43400-9
Online ISBN: 978-3-540-45995-8
eBook Packages: Springer Book Archive