Labeling Schemes for Tree Representation
This paper deals with compact label-based representations for trees. Consider an n-node undirected connected graph G with a predefined numbering on the ports of each node. The all-ports tree labeling L(all) gives each node v of G a label containing the port numbers of all the tree edges incident to v. The upward tree labeling L(up) labels each node v by the number of the port leading from v to its parent in the tree. Our measure of interest is the worst case and total length of the labels used by the scheme, denoted M(up)(T) and S(up)(T) for L(up) and M(all)(T) and S(all)(T) for L(all). The problem studied in this paper is the following: Given a graph G and a predefined port labeling for it, with the ports of each node upsilon numbered by 0, ..., deg(upsilon) - 1, select a rooted spanning tree for G minimizing ( one of) these measures. We show that the problem is polynomial for M(up)(T), S(up)(T) and S(all)(T) but NP-hard for M(all)(T) (even for 3-regular planar graphs). We show that for every graph G and port labeling there exists a spanning tree T for which S(up)(T) = O(n log log n). We give a tight bound of O(n) in the cases of complete graphs with arbitrary labeling and arbitrary graphs with symmetric port labeling. We conclude by discussing some applications for our tree representation schemes.
labeling scheme tree representation spanning tree