English
Related papers

Related papers: Computing LZ77 in Run-Compressed Space

200 papers

Indexing highly repetitive texts - such as genomic databases, software repositories and versioned text collections - has become an important problem since the turn of the millennium. A relevant compressibility measure for repetitive texts…

Data Structures and Algorithms · Computer Science 2020-12-17 Travis Gagie , Gonzalo Navarro , Nicola Prezza

In this paper we present a really simple linear-time algorithm constructing a context-free grammar of size O(g log (N/g)) for the input string, where N is the size of the input string and g the size of the optimal grammar generating this…

Data Structures and Algorithms · Computer Science 2014-03-19 Artur Jeż

We present an efficient algorithm for computing the LZ78 factorization of a text, where the text is represented as a straight line program (SLP), which is a context free grammar in the Chomsky normal form that generates a single string.…

Data Structures and Algorithms · Computer Science 2013-05-27 Hideo Bannai , Shunsuke Inenaga , Masayuki Takeda

We present a new on-line algorithm for computing the Lempel-Ziv factorization of a string that runs in $O(N\log N)$ time and uses only $O(N\log\sigma)$ bits of working space, where $N$ is the length of the string and $\sigma$ is the size of…

Data Structures and Algorithms · Computer Science 2013-05-28 Jun'ichi Yamamoto , Tomohiro I , Hideo Bannai , Shunsuke Inenaga , Masayuki Takeda

For both the Lempel Ziv 77- and 78-factorization we propose algorithms generating the respective factorization using $(1+\epsilon) n \lg n + O(n)$ bits (for any positive constant $\epsilon \le 1$) working space (including the space for the…

Data Structures and Algorithms · Computer Science 2015-04-13 Johannes Fischer , Tomohiro I , Dominik Köppl

We introduce a compressed suffix array representation that, on a text $T$ of length $n$ over an alphabet of size $\sigma$, can be built in $O(n)$ deterministic time, within $O(n\log\sigma)$ bits of working space, and counts the number of…

Data Structures and Algorithms · Computer Science 2017-09-05 J. Ian Munro , Gonzalo Navarro , Yakov Nekrich

The Lempel-Ziv parsing of a string (LZ77 for short) is one of the most important and widely-used algorithmic tools in data compression and string processing. We show that the Lempel-Ziv parsing of a string of length $n$ on an alphabet of…

Data Structures and Algorithms · Computer Science 2015-07-28 Djamal Belazzougui , Simon J. Puglisi

We generalize Karp-Rabin string matching to handle multiple patterns in $\mathcal{O}(n \log n + m)$ time and $\mathcal{O}(s)$ space, where $n$ is the length of the text and $m$ is the total length of the $s$ patterns, returning correct…

Data Structures and Algorithms · Computer Science 2015-09-11 Johannes Fischer , Travis Gagie , Paweł Gawrychowski , Tomasz Kociumaka

We investigate two closely related LZ78-based compression schemes: LZMW (an old scheme by Miller and Wegman) and LZD (a recent variant by Goto et al.). Both LZD and LZMW naturally produce a grammar for a string of length $n$; we show that…

Data Structures and Algorithms · Computer Science 2017-07-26 Golnaz Badkobeh , Travis Gagie , Shunsuke Inenaga , Tomasz Kociumaka , Dmitry Kosolobov , Simon J. Puglisi

We describe how, given a text $T [1..n]$ and a positive constant $\epsilon$, we can build a simple $O (z \log n)$-space index, where $z$ is the number of phrases in the LZ77 parse of $T$, such that later, given a pattern $P [1..m]$, in $O…

Data Structures and Algorithms · Computer Science 2022-12-06 Nick Fagan , Jorge Hermo González , Travis Gagie

We introduce a new approach to LZ77 factorization that uses O(n/d) words of working space and O(dn) time for any d >= 1 (for polylogarithmic alphabet sizes). We also describe carefully engineered implementations of alternative approaches to…

Data Structures and Algorithms · Computer Science 2020-12-11 Juha Kärkkäinen , Dominik Kempa , Simon J. Puglisi

We present a new semi-external algorithm that builds the Burrows--Wheeler transform variant of Bauer et al. (a.k.a., BCR BWT) in linear expected time. Our method uses compression techniques to reduce computational costs when the input is…

Data Structures and Algorithms · Computer Science 2023-08-15 Diego Díaz-Domínguez , Gonzalo Navarro

This paper investigates the size in bits of the LZ77 encoding, which is the most popular and efficient variant of the Lempel-Ziv encodings used in data compression. We prove that, for a wide natural class of variable-length encoders for…

Discrete Mathematics · Computer Science 2018-01-10 Dmitry Kosolobov

The field of succinct data structures has flourished over the last 16 years. Starting from the compressed suffix array (CSA) by Grossi and Vitter (STOC 2000) and the FM-index by Ferragina and Manzini (FOCS 2000), a number of generalizations…

Data Structures and Algorithms · Computer Science 2016-09-22 Djamal Belazzougui , Fabio Cunial , Juha Kärkkäinen , Veli Mäkinen

Burrows-Wheeler transform (BWT) is an invertible text transformation that, given a text $T$ of length $n$, permutes its symbols according to the lexicographic order of suffixes of $T$. BWT is one of the most heavily studied algorithms in…

Data Structures and Algorithms · Computer Science 2020-12-09 Dominik Kempa , Tomasz Kociumaka

In this paper, we present the following results: (1) We propose a new \emph{dynamic compressed index} of $O(w)$ space, that supports searching for a pattern $P$ in the current text in $O(|P| f(M,w) + \log w \log |P| \log^* M (\log N + \log…

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

Mauer et al. [A Lempel-Ziv-style Compression Method for Repetitive Texts, PSC 2017] proposed a hybrid text compression method called LZ-LFS which has both features of Lempel-Ziv 77 factorization and longest first substitution. They showed…

Data Structures and Algorithms · Computer Science 2018-06-14 Akihiro Nishi , Yuto Nakashima , Shunsuke Inenaga , Hideo Bannai , Masayuki Takeda

We propose a new approach for calculating the Lempel-Ziv factorization of a string, based on run length encoding (RLE). We present a conceptually simple off-line algorithm based on a variant of suffix arrays, as well as an on-line algorithm…

Data Structures and Algorithms · Computer Science 2015-03-20 Jun'ichi Yamamoto , Hideo Bannai , Shunsuke Inenaga , Masayuki Takeda

We consider the problem of decompressing the Lempel--Ziv 77 representation of a string $S$ of length $n$ using a working space as close as possible to the size $z$ of the input. The folklore solution for the problem runs in $O(n)$ time but…

Data Structures and Algorithms · Computer Science 2019-11-05 Philip Bille , Mikko Berggren Ettienne , Travis Gagie , Inge Li Gørtz , Nicola Prezza

Consider a text $T [1..n]$ prefixed by a reference sequence $R = T [1..\ell]$. We show how, given $R$ and the $z'$-phrase relative Lempel-Ziv parse of $T [\ell + 1..n]$ with respect to $R$, we can build the LZ77 parse of $T$ in…

Data Structures and Algorithms · Computer Science 2022-12-06 Travis Gagie