Source author record

Takaaki Nishimoto

Explore this author’s publications, collaborators and research topics. This catalog record has not been claimed by its author.

ResearcherUnclaimed source record

Catalog footprint

Research overview

6works
1topics
4close collaborators

Published work

6 publications

preprint2022arXiv

An Optimal-Time RLBWT Construction in BWT-runs Bounded Space

The compression of highly repetitive strings (i.e., strings with many repetitions) has been a central research topic in string processing, and quite a few compression methods for these strings have been proposed thus far. Among them, an efficient compression format gathering increasing attention is the run-length Burrows--Wheeler transform (RLBWT), which is a run-length encoded BWT as a reversible permutation of an input string on the lexicographical order of suffixes. State-of-the-art construction algorithms of RLBWT have a serious issue with respect to (i) non-optimal computation time or (ii) a working space that is linearly proportional to the length of an input string. In this paper, we present \emph{r-comp}, the first optimal-time construction algorithm of RLBWT in BWT-runs bounded space. That is, the computational complexity of r-comp is O(n+rlog⁡r)O(n + r \log{r}) time and O(rlog⁡n)O(r\log{n}) bits of working space for the length nn of an input string and the number rr of equal-letter runs in BWT. The computation time is optimal (i.e., O(n)O(n)) for strings with the property r=O(n/log⁡n)r=O(n/\log{n}), which holds for most highly repetitive strings. Experiments using a real-world dataset of highly repetitive strings show the effectiveness of r-comp with respect to computation time and space.

preprint2022arXiv

Computing NP-hard Repetitiveness Measures via MAX-SAT

Repetitiveness measures reveal profound characteristics of datasets, and give rise to compressed data structures and algorithms working in compressed space. Alas, the computation of some of these measures is NP-hard, and straight-forward computation is infeasible for datasets of even small sizes. Three such measures are the smallest size of a string attractor, the smallest size of a bidirectional macro scheme, and the smallest size of a straight-line program. While a vast variety of implementations for heuristically computing approximations exist, exact computation of these measures has received little to no attention. In this paper, we present MAX-SAT formulations that provide the first non-trivial implementations for exact computation of smallest string attractors, smallest bidirectional macro schemes, and smallest straight-line programs. Computational experiments show that our implementations work for texts of length up to a few hundred for straight-line programs and bidirectional macro schemes, and texts even over a million for string attractors.

preprint2021arXiv

R-enum: Enumeration of Characteristic Substrings in BWT-runs Bounded Space

Enumerating characteristic substrings (e.g., maximal repeats, minimal unique substrings, and minimal absent words) in a given string has been an important research topic because there are a wide variety of applications in various areas such as string processing and computational biology. Although several enumeration algorithms for characteristic substrings have been proposed, they are not space-efficient in that their space-usage is proportional to the length of an input string. Recently, the run-length encoded Burrows-Wheeler transform (RLBWT) has attracted increased attention in string processing, and various algorithms for the RLBWT have been developed. Developing enumeration algorithms for characteristic substrings with the RLBWT, however, remains a challenge. In this paper, we present r-enum (RLBWT-based enumeration), the first enumeration algorithm for characteristic substrings based on RLBWT. R-enum runs in O(nlog⁡log⁡(n/r))O(n \log \log (n/r)) time and with O(rlog⁡n)O(r \log n) bits of working space for string length nn and number rr of runs in RLBWT, where rr is expected to be significantly smaller than nn for highly repetitive strings (i.e., strings with many repetitions). Experiments using a benchmark dataset of highly repetitive strings show that the results of r-enum are more space-efficient than the previous results. In addition, we demonstrate the applicability of r-enum to a huge string by performing experiments on a 300-gigabyte string of 100 human genomes.

preprint2016arXiv

Dynamic index and LZ factorization in compressed space

In this paper, we propose a new \emph{dynamic compressed index} of O(w)O(w) space for a dynamic text TT, where w=O(min⁡(zlog⁡Nlog⁡∗M,N))w = O(\min(z \log N \log^*M, N)) is the size of the signature encoding of TT, zz is the size of the Lempel-Ziv77 (LZ77) factorization of TT, NN is the length of TT, and M≥3NM \geq 3N is an integer that can be handled in constant time under word RAM model. Our index supports searching for a pattern PP in TT in O(∣P∣fA+log⁡wlog⁡∣P∣log⁡∗M(log⁡N+log⁡∣P∣log⁡∗M)+occlog⁡N)O(|P| f_{\mathcal{A}} + \log w \log |P| \log^* M (\log N + \log |P| \log^* M) + \mathit{occ} \log N) time and insertion/deletion of a substring of length yy in O((y+log⁡Nlog⁡∗M)log⁡wlog⁡Nlog⁡∗M)O((y+ \log N\log^* M)\log w \log N \log^* M) time, where fA=O(min⁡{log⁡log⁡Mlog⁡log⁡wlog⁡log⁡log⁡M,log⁡wlog⁡log⁡w})f_{\mathcal{A}} = O(\min \{ \frac{\log\log M \log\log w}{\log\log\log M}, \sqrt{\frac{\log w}{\log\log w}} \}). Also, we propose a new space-efficient LZ77 factorization algorithm for a given text of length NN, which runs in O(NfA+zlog⁡wlog⁡3N(log⁡∗N)2)O(N f_{\mathcal{A}} + z \log w \log^3 N (\log^* N)^2) time with O(w)O(w) working space.

preprint2016arXiv

Dynamic index, LZ factorization, and LCE queries in compressed space

In this paper, we present the following results: (1) We propose a new \emph{dynamic compressed index} of O(w)O(w) space, that supports searching for a pattern PP in the current text in O(∣P∣f(M,w)+log⁡wlog⁡∣P∣log⁡∗M(log⁡N+log⁡∣P∣log⁡∗M)+occlog⁡N)O(|P| f(M,w) + \log w \log |P| \log^* M (\log N + \log |P| \log^* M) + \mathit{occ} \log N) time and insertion/deletion of a substring of length yy in O((y+log⁡Nlog⁡∗M)log⁡wlog⁡Nlog⁡∗M)O((y+ \log N\log^* M)\log w \log N \log^* M) time, where NN is the length of the current text, MM is the maximum length of the dynamic text, zz is the size of the Lempel-Ziv77 (LZ77) factorization of the current text, f(a,b)=O(min⁡{log⁡log⁡alog⁡log⁡blog⁡log⁡log⁡a,log⁡blog⁡log⁡b})f(a,b) = O(\min \{ \frac{\log\log a \log\log b}{\log\log\log a}, \sqrt{\frac{\log b}{\log\log b}} \}) and w=O(zlog⁡Nlog⁡∗M)w = O(z \log N \log^*M). (2) We propose a new space-efficient LZ77 factorization algorithm for a given text of length NN, which runs in O(Nf(N,w′)+zlog⁡w′log⁡3N(log⁡∗N)2)O(N f(N,w') + z \log w' \log^3 N (\log^* N)^2) time with O(w′)O(w') working space, where w′=O(zlog⁡Nlog⁡∗N)w' =O(z \log N \log^* N). (3) We propose a data structure of O(w)O(w) space which supports longest common extension (LCE) queries on the text in O(log⁡N+log⁡ℓlog⁡∗N)O(\log N + \log \ell \log^* N) time, where ℓ\ell is the output LCE length. On top of the above contributions, we show several applications of our data structures which improve previous best known results on grammar-compressed string processing.

preprint2016arXiv

Fully dynamic data structure for LCE queries in compressed space

A Longest Common Extension (LCE) query on a text TT of length NN asks for the length of the longest common prefix of suffixes starting at given two positions. We show that the signature encoding G\mathcal{G} of size w=O(min⁡(zlog⁡Nlog⁡∗M,N))w = O(\min(z \log N \log^* M, N)) [Mehlhorn et al., Algorithmica 17(2):183-198, 1997] of TT, which can be seen as a compressed representation of TT, has a capability to support LCE queries in O(log⁡N+log⁡ℓlog⁡∗M)O(\log N + \log \ell \log^* M) time, where ℓ\ell is the answer to the query, zz is the size of the Lempel-Ziv77 (LZ77) factorization of TT, and M≥4NM \geq 4N is an integer that can be handled in constant time under word RAM model. In compressed space, this is the fastest deterministic LCE data structure in many cases. Moreover, G\mathcal{G} can be enhanced to support efficient update operations: After processing G\mathcal{G} in O(wfA)O(w f_{\mathcal{A}}) time, we can insert/delete any (sub)string of length yy into/from an arbitrary position of TT in O((y+log⁡Nlog⁡∗M)fA)O((y+ \log N\log^* M) f_{\mathcal{A}}) time, where fA=O(min⁡{log⁡log⁡Mlog⁡log⁡wlog⁡log⁡log⁡M,log⁡wlog⁡log⁡w})f_{\mathcal{A}} = O(\min \{ \frac{\log\log M \log\log w}{\log\log\log M}, \sqrt{\frac{\log w}{\log\log w}} \}). This yields the first fully dynamic LCE data structure. We also present efficient construction algorithms from various types of inputs: We can construct G\mathcal{G} in O(NfA)O(N f_{\mathcal{A}}) time from uncompressed string TT; in O(nlog⁡log⁡nlog⁡Nlog⁡∗M)O(n \log\log n \log N \log^* M) time from grammar-compressed string TT represented by a straight-line program of size nn; and in O(zfAlog⁡Nlog⁡∗M)O(z f_{\mathcal{A}} \log N \log^* M) time from LZ77-compressed string TT with zz factors. On top of the above contributions, we show several applications of our data structures which improve previous best known results on grammar-compressed string processing.

Research graph

See the researcher in context

Open full explorer

Inspect adjacent papers, topics, institutions and collaborators without losing the researcher page.

Building this map preview

BZPEER is loading the nearby papers, people, topics and institutions for this page.