Fully compressed suffix trees
See where this sits in the topic map →Summary AI-generated
- TL;DR
- Suffix trees are essential data structures in stringology, but their large size has historically limited their adoption in practice.
- Problem
- Classical suffix tree representations require $\Theta(n \log n)$ bits of space—significantly more than the text itself—and recent compressed representations still rely on an unsatisfactory linear $\Theta(n)$ extra bits when the alphabet size is small.
- Method
- The authors introduce the Fully Compressed Suffix Tree (FCST), which uses sublinear space beyond the compressed text size, leverages lowest common ancestor (LCA) operations for tree navigation, and supports text updates dynamically.
- Results
- The FCST supports a wide set of navigational operations in almost logarithmic time, replaces the text using almost the same space as the compressed text, and is validated experimentally to be very effective in practice.
- Contributions
- The introduction of the first compressed suffix tree representation that breaks the $\Theta(n)$-bit space barrier, along with a dynamic version that can build the static FCST within optimal space and polylogarithmic time per symbol.
- Limitations
- Not specified in the abstract.
- Takeaways
- FCSTs successfully overcome longstanding space barriers for suffix trees while maintaining efficient navigation and practical effectiveness.
- Applications
- Bioinformatics and information retrieval.
- Topics
- Algorithms, data structures, and compressed text processing.
- For industry
- Bioinformatics and information retrieval sectors.
- Why it matters
- Enables broader adoption of suffix trees in data-intensive fields where storage overhead was previously a barrier.
Abstract
Suffix trees are by far the most important data structure in stringology, with a myriad of applications in fields like bioinformatics and information retrieval. Classical representations of suffix trees require Θ( n log n ) bits of space, for a string of size n . This is considerably more than the n log 2 σ bits needed for the string itself, where σ is the alphabet size. The size of suffix trees has been a barrier to their wider adoption in practice. Recent compressed suffix tree representations require just the space of the compressed string plus Θ( n ) extra bits. This is already spectacular, but the linear extra bits are still unsatisfactory when σ is small as in DNA sequences. In this article, we introduce the first compressed suffix tree representation that breaks this Θ( n )-bit space barrier. The Fully Compressed Suffix Tree (FCST) representation requires only sublinear space on top of the compressed text size, and supports a wide set of navigational operations in almost logarithmic time. This includes extracting arbitrary text substrings, so the FCST replaces the text using almost the same space as the compressed text. An essential ingredient of FCSTs is the lowest common ancestor (LCA) operation. We reveal important connections between LCAs and suffix tree navigation. We also describe how to make FCSTs dynamic, that is, support updates to the text. The dynamic FCST also supports several operations. In particular, it can build the static FCST within optimal space and polylogarithmic time per symbol. Our theoretical results are also validated experimentally, showing that FCSTs are very effective in practice as well.