Representing the suffix tree with the CDAWG
arXiv:1705.08640
Abstract
Given a string , it is known that its suffix tree can be represented using the compact directed acyclic word graph (CDAWG) with arcs, taking overall words of space, where is the reverse of , and supporting some key operations in time between and in the worst case. This representation is especially appealing for highly repetitive strings, like collections of similar genomes or of version-controlled documents, in which grows sublinearly in the length of in practice. In this paper we augment such representation, supporting a number of additional queries in worst-case time between and in the RAM model, without increasing space complexity asymptotically. Our technique, based on a heavy path decomposition of the suffix tree, enables also a representation of the suffix array, of the inverse suffix array, and of itself, that takes words of space, and that supports random access in time. Furthermore, we establish a connection between the reversed CDAWG of and a context-free grammar that produces and only , which might have independent interest.
16 pages, 1 figure. Presented at the 28th Annual Symposium on Combinatorial Pattern Matching (CPM 2017)