Results 1 - 10
of
26
A Comparison of Labeling Schemes for Ancestor Queries
, 2002
"... Motivated by a recent application in XML search engines we study the problem of labeling the nodes of a tree (XML file) such that given the labels of two nodes one can determine whether one node is an ancestor of the other. We describe several new prefix-based labeling schemes, where an ancestor que ..."
Abstract
-
Cited by 91 (7 self)
- Add to MetaCart
Motivated by a recent application in XML search engines we study the problem of labeling the nodes of a tree (XML file) such that given the labels of two nodes one can determine whether one node is an ancestor of the other. We describe several new prefix-based labeling schemes, where an ancestor query roughly amounts to testing whether one label is a prefix of the other. We compare our new schemes to a simple interval-based scheme currently used by search engines, as well as, to schemes with the best theoretical guarantee on the maximum label length. We performed our experimental evaluation on real XML data and on some families of random trees.
Nearest Common Ancestors: A survey and a new distributed algorithm
, 2002
"... Several papers describe linear time algorithms to preprocess a tree, such that one can answer subsequent nearest common ancestor queries in constant time. Here, we survey these algorithms and related results. A common idea used by all the algorithms for the problem is that a solution for complete ba ..."
Abstract
-
Cited by 65 (8 self)
- Add to MetaCart
Several papers describe linear time algorithms to preprocess a tree, such that one can answer subsequent nearest common ancestor queries in constant time. Here, we survey these algorithms and related results. A common idea used by all the algorithms for the problem is that a solution for complete balanced binary trees is straightforward. Furthermore, for complete balanced binary trees we can easily solve the problem in a distributed way by labeling the nodes of the tree such that from the labels of two nodes alone one can compute the label of their nearest common ancestor. Whether it is possible to distribute the data structure into short labels associated with the nodes is important for several applications such as routing. Therefore, related labeling problems have received a lot of attention recently.
The Level Ancestor Problem Simplified
"... We present a very simple algorithm for the Level Ancestor Problem. A Level Ancestor Query LA(v; d) requests the depth d ancestor of node v. The Level Ancestor Problem is thus: preprocess a given rooted tree T to answer level ancestor queries. While optimal solutions to this problem already exist ..."
Abstract
-
Cited by 31 (0 self)
- Add to MetaCart
We present a very simple algorithm for the Level Ancestor Problem. A Level Ancestor Query LA(v; d) requests the depth d ancestor of node v. The Level Ancestor Problem is thus: preprocess a given rooted tree T to answer level ancestor queries. While optimal solutions to this problem already exist, our new optimal solution is simple enough to be taught and implemented.
Lowest common ancestors in trees and directed acyclic graphs
- J. Algorithms
, 2005
"... We study the problem of finding lowest common ancestors (LCA) in trees and directed acyclic graphs (DAGs). Specifically, we extend the LCA problem to DAGs and study the LCA variants that arise in this general setting. We begin with a clear exposition of Berkman and Vishkin’s simple optimal algorithm ..."
Abstract
-
Cited by 30 (0 self)
- Add to MetaCart
We study the problem of finding lowest common ancestors (LCA) in trees and directed acyclic graphs (DAGs). Specifically, we extend the LCA problem to DAGs and study the LCA variants that arise in this general setting. We begin with a clear exposition of Berkman and Vishkin’s simple optimal algorithm for LCA in trees. The ideas presented are not novel theoretical contributions, but they lay the foundation for our work on LCA problems in DAGs. We present an algorithm that finds all-pairs-representative LCA in DAGs in Õ(n 2.688) operations, provide a transitive-closure lower bound for the all-pairs-representative-LCA problem, and develop an LCA-existence algorithm that preprocesses the DAG in transitive-closure time. We also present a suboptimal but practical O(n 3) algorithm for all-pairs-representative LCA in DAGs that uses ideas from the optimal algorithms in trees and DAGs. Our results reveal a close relationship between the LCA, all-pairs-shortest-path, and transitive-closure problems. We conclude the paper with a short experimental study of LCA algorithms in trees and DAGs. Our experiments and source code demonstrate the elegance of the preprocessing-query algorithms for LCA in trees. We show that for most trees the suboptimal Θ(n log n)-preprocessing Θ(1)-query algorithm should be preferred, and demonstrate that our proposed O(n 3) algorithm for allpairs-representative LCA in DAGs performs well in both low and high density DAGs.
Short and Simple Labels for Small Distances and Other Functions
- IN WORKSHOP ON ALGORITHMS AND DATA STRUCTURES
, 2001
"... We present a labeling scheme for rooted trees which allows to compute, from the label of v alone, unique identi ers for the ancestors of v that are at distance at most d from v. For any constant d our labeling scheme produce labels of length log n+O( log n), and for d 2 O( the labels are s ..."
Abstract
-
Cited by 16 (0 self)
- Add to MetaCart
We present a labeling scheme for rooted trees which allows to compute, from the label of v alone, unique identi ers for the ancestors of v that are at distance at most d from v. For any constant d our labeling scheme produce labels of length log n+O( log n), and for d 2 O( the labels are still of length O(log n). In particular,
A graphical presentation of MLF types with a linear-time unification algorithm
- In TLDI’07: Proceedings of the 2007 ACM SIGPLAN International Workshop on Types in Languages Design and Implementation
, 2007
"... apport de recherche ISSN 0249-6399 ISRN INRIA/RR--????--FR+ENG A graphical presentation of MLF types with a linear-time local unification algorithm. ..."
Abstract
-
Cited by 14 (7 self)
- Add to MetaCart
apport de recherche ISSN 0249-6399 ISRN INRIA/RR--????--FR+ENG A graphical presentation of MLF types with a linear-time local unification algorithm.
Maximum Agreement and Compatible Supertrees
- IN PROCEEDINGS OF CPM
, 2004
"... Given a collection of trees on leaves with identical leaf set, the MAST, resp. MCT, problem consists in finding a largest subset of the leaves such that all input trees restricted to this set are identical, resp. have a common refinement. For MAST, resp. MCT, on rooted trees, we give an ..."
Abstract
-
Cited by 14 (5 self)
- Add to MetaCart
Given a collection of trees on leaves with identical leaf set, the MAST, resp. MCT, problem consists in finding a largest subset of the leaves such that all input trees restricted to this set are identical, resp. have a common refinement. For MAST, resp. MCT, on rooted trees, we give an algorithm, where and is the smallest number of leaves whose removal leads to the existence of an agreement subtree, resp. a compatible tree. This improves on [13] for MAST and proves fixed parameter tractability for MCT. We then extend these problems to the case of supertrees where input trees can have non-identical leaf sets. For the obtained problems, SMAST and SMCT, we give an time algorithm for the special case of two input trees is the time bound for solving MAST, resp. MCT, on two -leaf trees). Finally, we show that SMAST and SMCT parametrized in "! #%$ -hard and cannot be approximated in polynomial time within a constant factor unless &('*)& , even when the input trees are rooted triples. We also extend the above results to the case of unrooted input trees.
Finding Least Common Ancestors in Directed Acyclic Graphs
- PROC. 12TH ANNUAL ACM-SIAM SYMPOSIUM ON DISCRETE ALGORITHMS (SODA’01
, 2001
"... ..."
General Compact Labeling Schemes for Dynamic Trees
- In Proc. 19th Int. Symp. on Distributed Computing
, 2005
"... Let F be a function on pairs of vertices. An F- labeling scheme is composed of a marker algorithm for labeling the vertices of a graph with short labels, coupled with a decoder algorithm allowing one to compute F (u, v) of any two vertices u and v directly from their labels. As applications for labe ..."
Abstract
-
Cited by 13 (9 self)
- Add to MetaCart
Let F be a function on pairs of vertices. An F- labeling scheme is composed of a marker algorithm for labeling the vertices of a graph with short labels, coupled with a decoder algorithm allowing one to compute F (u, v) of any two vertices u and v directly from their labels. As applications for labeling schemes concern mainly large and dynamically changing networks, it is of interest to study distributed dynamic labeling schemes. This paper investigates labeling schemes for dynamic trees. We consider two dynamic tree models, namely, the leaf-dynamic tree model in which at each step a leaf can be added to or removed from the tree and the leaf-increasing tree model in which the only topological event that may occur is that a leaf joins the tree. A general method for constructing labeling schemes for dynamic trees (under the above mentioned dynamic tree models) was previously developed in [29]. This method is based on extending an existing static tree labeling scheme to the dynamic setting. This approach fits many natural functions on trees, such as distance, separation level, ancestry relation, routing (in both the adversary and the designer port models), nearest common ancestor etc.. Their
Discrete and lexicographic Helly theorems and their relations to LP-type problems
- IN PROC. 45TH IEEE SYMPOSIUM ON FOUNDATIONS OF COMPUTER SCIENCE (FOCS
, 2004
"... ..."

