Persistency in suffix trees with applications to string interval problems

  • Authors:
  • Tsvi Kopelowitz;Moshe Lewenstein;Ely Porat

  • Affiliations:
  • Weizmann Institute of Science Rehovot, Israel;Bar-Ilan University, Ramat-Gan, Israel;Bar-Ilan University, Ramat-Gan, Israel

  • Venue:
  • SPIRE'11 Proceedings of the 18th international conference on String processing and information retrieval
  • Year:
  • 2011

Quantified Score

Hi-index 0.00

Visualization

Abstract

The suffix tree has proven to be an invaluable indexing data structure, which is widely used as a building block in many applications. We study the problem of making a suffix tree persistent. Specifically, consider a streamed text T where characters are prepended to the beginning of the text. The suffix tree is updated for each character prepended. We wish to allow access to any previous version of the suffix tree. While it is possible to support basic persistence for suffix trees using classical persistence techniques, some applications which can make use of this persistency cannot be solved efficiently using these techniques alone. A collection of such problems is that of queries on string intervals of the text indexed by the suffix tree. In other words, if the text T = t1...tn is indexed, one may want to answer different queries on string intervals, ti...tj, of the text. These types of problems are known as position-restricted and contain querying, reporting, rank, selection etc. Persistency can be utilized to obtain solutions for these problems on prefixes of the text, by solving these problems on previous versions of the suffix tree. However, for substrings it is not sufficient to use the standard persistency. We propose more sophisticated persistent techniques which yield solutions for position-restricted querying, reporting, rank, and selection problems.