English
Related papers

Related papers: Improved Grammar-Based Compressed Indexes

200 papers

Given a string $T$ of length $N$, the goal of grammar compression is to construct a small context-free grammar generating only $T$. Among existing grammar compression methods, RePair (recursive paring) [Larsson and Moffat, 1999] is notable…

Data Structures and Algorithms · Computer Science 2018-11-06 Kensuke Sakai , Tatsuya Ohno , Keisuke Goto , Yoshimasa Takabatake , Tomohiro I , Hiroshi Sakamoto

In the last decades, the necessity to process massive amounts of textual data fueled the development of compressed text indexes: data structures efficiently answering queries on a given text while occupying space proportional to the…

Data Structures and Algorithms · Computer Science 2024-09-24 Dominik Kempa , Tomasz Kociumaka

We show how, given a straight-line program with $g$ rules for a binary string $B$ of length $n$, in $O(g^{2 / 3} n^{4 / 3})$ time we can build a linear-space index such that, given $m$ and $c$, in O(1) time we can determine whether there is…

Data Structures and Algorithms · Computer Science 2012-11-16 Travis Gagie

Let $T [1..n]$ be a text over an alphabet of size $\sigma \in \mathrm{polylog} (n)$, let $r^*$ be the sum of the numbers of runs in the Burrows-Wheeler Transforms of $T$ and its reverse, and let $z$ be the number of phrases in the LZ77…

Data Structures and Algorithms · Computer Science 2025-08-19 Travis Gagie

Let $\D = $$ \{d_1,d_2,...d_D\}$ be a given set of $D$ string documents of total length $n$, our task is to index $\D$, such that the $k$ most relevant documents for an online query pattern $P$ of length $p$ can be retrieved efficiently. We…

Data Structures and Algorithms · Computer Science 2012-04-03 Wing-Kai Hon , Rahul Shah , Sharma V. Thankachan

We consider the problem of computing the q-gram profile of a string \str of size $N$ compressed by a context-free grammar with $n$ production rules. We present an algorithm that runs in $O(N-\alpha)$ expected time and uses $O(n+q+\kq)$…

Data Structures and Algorithms · Computer Science 2014-06-09 Philip Bille , Patrick Hagge Cording , Inge Li Gørtz

We consider the problem of computing the Maximal Exact Matches (MEMs) of a given pattern $P[1 .. m]$ on a large repetitive text collection $T[1 .. n]$, which is represented as a (hopefully much smaller) run-length context-free grammar of…

Data Structures and Algorithms · Computer Science 2023-09-06 Gonzalo Navarro

A Longest Common Extension (LCE) query on a text $T$ of length $N$ asks for the length of the longest common prefix of suffixes starting at given two positions. We show that the signature encoding $\mathcal{G}$ of size $w = O(\min(z \log N…

Data Structures and Algorithms · Computer Science 2016-06-28 Takaaki Nishimoto , Tomohiro I , Shunsuke Inenaga , Hideo Bannai , Masayuki Takeda

In this paper we present a new parsing algorithm for linear indexed grammars (LIGs) in the same spirit as the one described in (Vijay-Shanker and Weir, 1993) for tree adjoining grammars. For a LIG $L$ and an input string $x$ of length $n$,…

cmp-lg · Computer Science 2008-02-03 Pierre Boullier

A compressed self-index stores a string in compressed form while supporting locate queries without decompression. For highly repetitive strings (arising in web crawls, versioned documents, and genomic collections), static self-indexes can…

Data Structures and Algorithms · Computer Science 2026-04-29 Takaaki Nishimoto , Yasuo Tabei

Given a string $S$ of $n$ integers in $[0,\sigma)$, a range minimum query RMQ$(i, j)$ asks for the index of the smallest integer in $S[i \dots j]$. It is well known that the problem can be solved with a succinct data structure of size $2n +…

Data Structures and Algorithms · Computer Science 2019-05-30 Paweł Gawrychowski , Seungbum Jo , Shay Mozes , Oren Weimann

Can we analyze data without decompressing it? As our data keeps growing, understanding the time complexity of problems on compressed inputs, rather than in convenient uncompressed forms, becomes more and more relevant. Suppose we are given…

Computational Complexity · Computer Science 2018-03-05 Amir Abboud , Arturs Backurs , Karl Bringmann , Marvin Künnemann

The string indexing problem is a fundamental computational problem with numerous applications, including information retrieval and bioinformatics. It aims to efficiently solve the pattern matching problem: given a text T of length n for…

Data Structures and Algorithms · Computer Science 2025-09-03 Waseem Akram , Takuya Mieno

We solve an open problem related to an optimal encoding of a straight line program (SLP), a canonical form of grammar compression deriving a single string deterministically. We show that an information-theoretic lower bound for representing…

Data Structures and Algorithms · Computer Science 2013-06-18 Yasuo Tabei , Yoshimasa Takabatake , Hiroshi Sakamoto

Given $d$ strings over the alphabet $\{0,1,\ldots,\sigma{-}1\}$, the classical Aho--Corasick data structure allows us to find all $occ$ occurrences of the strings in any text $T$ in $O(|T| + occ)$ time using $O(m\log m)$ bits of space,…

Data Structures and Algorithms · Computer Science 2019-04-02 Dmitry Kosolobov , Nikita Sivukhin

Given a string of length $n$ that is composed of $r$ runs of letters from the alphabet $\{0,1,\ldots,\sigma{-}1\}$ such that $2 \le \sigma \le r$, we describe a data structure that, provided $r \le n / \log^{\omega(1)} n$, stores the string…

Data Structures and Algorithms · Computer Science 2018-02-27 José Fuentes-Sepúlveda , Juha Kärkkäinen , Dmitry Kosolobov , Simon J. Puglisi

We show that the compressed suffix array and the compressed suffix tree for a string of length $n$ over an integer alphabet of size $\sigma\leq n$ can both be built in $O(n)$ (randomized) time using only $O(n\log\sigma)$ bits of working…

Data Structures and Algorithms · Computer Science 2016-05-24 Djamal Belazzougui

The circular dictionary matching problem is an extension of the classical dictionary matching problem where every string in the dictionary is interpreted as a circular string: after reading the last character of a string, we can move back…

Data Structures and Algorithms · Computer Science 2025-04-07 Nicola Cotumaccio

Packing several characters into one computer word is a simple and natural way to compress the representation of a string and to speed up its processing. Exploiting this idea, we propose an index for a packed string, based on a {\em sparse…

Data Structures and Algorithms · Computer Science 2015-03-19 Roman Kolpakov , Gregory Kucherov , Tatiana Starikovskaya

In grammar-based compression a string is represented by a context-free grammar, also called a straight-line program (SLP), that generates only that string. We refine a recent balancing result stating that one can transform an SLP of size…

Data Structures and Algorithms · Computer Science 2021-07-02 Moses Ganardi