Succinct Data Structures for Representing Equivalence Classes

Abstract

Given a partition of an n element set into equivalence classes, we consider time-space tradeoffs for representing it to support the query that asks whether two given elements are in the same equivalence class. This has various applications including for testing whether two vertices are in the same connected component in an undirected graph or in the same strongly connected component in a directed graph. We consider the problem in several models. – Concerning labeling schemes where we assign labels to elements and the query is to be answered just by examining the labels of the queried elements (without any extra space): if each vertex is required to have a unique label, then we show that a label space of ∑ n i=1 ⌊ i ⌋ is necessary and sufficient. In other words, lg n+lg lg n+O(1) bits of space are necessary and sufficient for representing each of the labels. This slightly strengthens the known lower bound and is in contrast to the known necessary and sufficient bound of ⌈lg n⌉ for the label length, if each vertex need not get a unique label. – Concerning succinct data structures for the problem when the n elements are to be uniquely assigned labels from label set {1, . . . , n}, we first show that Θ( √ n) bits are necessary and sufficient to represent the equivalence class information. This space includes the space for implicitly encoding the vertex labels. We can support the query in such a structure in O(lg n) time in the standard word RAM model. We then develop structures where the queries can be answered • in O(lg lg n) time using O(√n lg n/ lg lgn) bits, and • in O(1) time using O(√n lgn) bits of space. En route, we provide an interesting method to compute the integer nearest to the square root of integers up to n using a table look up. We believe that this method can be of independent interest. We also develop a dynamic structure that uses O( √ n lgn) bits to support equivalence queries and unions in O(lg n/ lg lgn) worst case time or O(α(n)) expected amortized time where α(n) is the inverse Ackermann function. ⋆ Work done while the first and the third authors were on sabbatical at the University of Waterloo, Canada

DOI: 10.1007/978-3-642-45030-3_47

Extracted Key Phrases

Cite this paper

@inproceedings{Lewenstein2013SuccinctDS, title={Succinct Data Structures for Representing Equivalence Classes}, author={Moshe Lewenstein and J. Ian Munro and Venkatesh Raman}, booktitle={ISAAC}, year={2013} }