Generalized substring compression

Orgad Keller, Tsvi Kopelowitz, Shir Landau Feibish, Moshe Lewenstein

Research output: Contribution to journalArticlepeer-review


In substring compression one is given a text to preprocess so that, upon request, a compressed substring is returned. Generalized substring compression is the same with the following twist. The queries contain an additional context substring (or a collection of context substrings) and the answers are the substring in compressed format, where the context substring is used to make the compression more efficient. We focus our attention on generalized substring compression and present the first non-trivial correct algorithm for this problem. Inherent to our algorithm is a new method for finding the bounded longest common prefix of substrings, which may be of independent interest. In addition, we propose an efficient algorithm for substring compression which makes use of range successor queries. We present several tradeoffs for both problems. For compressing the substring S[i..j] (possibly with the substring S[α..β] as a context), the best query times we achieve are O(C) and O(Clog(j-i/C)) for substring compression query and generalized substring compression query, respectively, where C is the number of phrases encoded. A preliminary version of this paper has been presented in [21].

Original languageEnglish
Pages (from-to)42-54
Number of pages13
JournalTheoretical Computer Science
StatePublished - 13 Mar 2014


  • Data compression
  • Lempel-Ziv compression
  • Range searching
  • Suffix tree


Dive into the research topics of 'Generalized substring compression'. Together they form a unique fingerprint.

Cite this