next up previous
Next: Geometric Burrows-Wheeler Transform: Linking Up: DATA COMPRESSION Previous: Dynamic Rank/Select Dictionaries with

   
A Framework for Dynamizing Succinct Data Structures

A. Gupta, W.-K. Hon, R. Shah, and J. S. Vitter. ``A Framework for Dynamizing Succinct Data Structures,'' Proceedings of the 34th Annual International Colloquium on Automata, Languages, and Programming (ICALP '07), Wroc\law, Poland, July 2007, published in Lecture Notes in Computer Science, 4596 Springer-Verlag, Berlin, Germany, 521-532.

Full text (Adobe pdf format)

We present a framework to dynamize succinct data structures, to encourage their use over non-succinct versions in a wide variety of important application areas. Our framework can dynamize most state-of-the-art succinct data structures for dictionaries, ordinal trees, labeled trees, and text collections. Of particular note is its direct application to XML indexing structures that answer $\mathit{subpath}$ queries. Our framework focuses on achieving information-theoretically optimal space along with near-optimal update/query bounds.

As the main part of our work, we consider the following problem central to text indexing: Given a text T over an alphabet $\Sigma$, construct a compressed data structure answering the queries $\mathop{access}(i)$, $\mathop{ranks}(i)$, and $\mathop{selects}(i)$ for a symbol  $s \in \Sigma$. Many data structures consider these queries for static text T. We build on these results and give the best known query bounds for the dynamic version of this problem, supporting arbitrary insertions and deletions of symbols in T.

Specifically, with an amortized update time of $O(n^\epsilon)$, any static succinct data structure D for T, taking t(n) time for queries, can be converted by our framework into a dynamic succinct data structure that supports $\mathop{ranks}(i)$, $\mathop{selects}(i)$, and $\mathop{access}(i)$queries in $O(t(n) + \log\log n)$ time, for any constant $\epsilon > 0$. When $\vert\Sigma\vert = \mathop{\rm polylog}(n)$, we achieve O(1) query times. Our update/query bounds are near-optimal with respect to the lower bounds.


next up previous
Next: Geometric Burrows-Wheeler Transform: Linking Up: DATA COMPRESSION Previous: Dynamic Rank/Select Dictionaries with
Jeff Vitter
2009-10-31