English

Faster Approximate Pattern Matching in Compressed Repetitive Texts

Data Structures and Algorithms 2012-11-01 v4

Abstract

Motivated by the imminent growth of massive, highly redundant genomic databases, we study the problem of compressing a string database while simultaneously supporting fast random access, substring extraction and pattern matching to the underlying string(s). Bille et al. (2011) recently showed how, given a straight-line program with rr rules for a string ss of length nn, we can build an \Ohr\Oh{r}-word data structure that allows us to extract any substring of length mm in \Ohlogn+m\Oh{\log n + m} time. They also showed how, given a pattern pp of length mm and an edit distance (k \leq m), their data structure supports finding all \occ approximate matches to pp in ss in \Ohr(min(mk,k4+m)+logn)+\occ\Oh{r (\min (m k, k^4 + m) + \log n) + \occ} time. Rytter (2003) and Charikar et al. (2005) showed that rr is always at least the number zz of phrases in the LZ77 parse of ss, and gave algorithms for building straight-line programs with \Ohzlogn\Oh{z \log n} rules. In this paper we give a simple \Ohzlogn\Oh{z \log n}-word data structure that takes the same time for substring extraction but only \Ohzmin(mk,k4+m)+\occ\Oh{z \min (m k, k^4 + m) + \occ} time for approximate pattern matching.

Keywords

Cite

@article{arxiv.1109.2930,
  title  = {Faster Approximate Pattern Matching in Compressed Repetitive Texts},
  author = {Travis Gagie and Paweł Gawrychowski and Christopher Hoobin and Simon J. Puglisi},
  journal= {arXiv preprint arXiv:1109.2930},
  year   = {2012}
}

Comments

Journal version of ISAAC '11 paper

R2 v1 2026-06-21T19:04:23.982Z