Skip to main navigation Skip to search Skip to main content

Fixed Block Compression Boosting in FM-Indexes: Theory and Practice

  • Simon Gog
  • , Juha Kärkkäinen
  • , Dominik Kempa
  • , Matthias Petri
  • , Simon J. Puglisi
  • Karlsruhe Institute of Technology
  • University of Helsinki
  • School of Computing and Information Systems

Research output: Contribution to journalArticlepeer-review

27 Scopus citations

Abstract

The FM index (Ferragina and Manzini in J ACM 52(4):552–581, 2005) is a widely-used compressed data structure that stores a string T in a compressed form and also supports fast pattern matching queries. In this paper, we describe new FM-index variants that combine nice theoretical properties, simple implementation and improved practical performance. Our main theoretical result is a new technique called fixed block compression boosting, which is a simpler and faster alternative to optimal compression boosting and implicit compression boosting used in previous FM-indexes. We also describe several new techniques for implementing fixed-block boosting efficiently, including a new, fast, and space-efficient implementation of wavelet trees. Our extensive experiments show the new indexes to be consistently fast and small relative to the state-of-the-art, and thus they make a good “off-the-shelf” choice for many applications.

Original languageEnglish
Pages (from-to)1370-1391
Number of pages22
JournalAlgorithmica (New York)
Volume81
Issue number4
DOIs
StatePublished - Apr 1 2019

Keywords

  • Compression boosting
  • FM-index
  • Pattern matching
  • Suffix array
  • Text indexing
  • Wavelet tree

Fingerprint

Dive into the research topics of 'Fixed Block Compression Boosting in FM-Indexes: Theory and Practice'. Together they form a unique fingerprint.

Cite this