### Abstract

We address the problems of detecting and counting various forms of regularities in a string represented as a straight-line program (SLP) which is essentially a context free grammar in the Chomsky normal form. Given an SLP of size n that represents a string s of length N, our algorithm computes all runs and squares in s in O(n^{3}h) time and O(n^{2}) space, where h is the height of the derivation tree of the SLP. We also show an algorithm to compute all gapped-palindromes in O(n^{3}h + gnh log N) time and O(n^{2}) space, where g is the length of the gap. As one of the main components of the above solution, we propose a new technique called approximate doubling which seems to be a useful tool for a wide range of algorithms on SLPs. Indeed, we show that the technique can be used to compute the periods and covers of the string in O(n^{2}h) time and O(nh(n + log^{2} N)) time, respectively.

Original language | English |
---|---|

Pages (from-to) | 74-89 |

Number of pages | 16 |

Journal | Information and Computation |

Volume | 240 |

DOIs | |

Publication status | Published - Feb 1 2015 |

### Fingerprint

### All Science Journal Classification (ASJC) codes

- Theoretical Computer Science
- Information Systems
- Computer Science Applications
- Computational Theory and Mathematics

### Cite this

*Information and Computation*,

*240*, 74-89. https://doi.org/10.1016/j.ic.2014.09.009

**Detecting regularities on grammar-compressed strings.** / I, Tomohiro; Matsubara, Wataru; Shimohira, Kouji; Inenaga, Shunsuke; Bannai, Hideo; Takeda, Masayuki; Narisawa, Kazuyuki; Shinohara, Ayumi.

Research output: Contribution to journal › Article

*Information and Computation*, vol. 240, pp. 74-89. https://doi.org/10.1016/j.ic.2014.09.009

}

TY - JOUR

T1 - Detecting regularities on grammar-compressed strings

AU - I, Tomohiro

AU - Matsubara, Wataru

AU - Shimohira, Kouji

AU - Inenaga, Shunsuke

AU - Bannai, Hideo

AU - Takeda, Masayuki

AU - Narisawa, Kazuyuki

AU - Shinohara, Ayumi

PY - 2015/2/1

Y1 - 2015/2/1

N2 - We address the problems of detecting and counting various forms of regularities in a string represented as a straight-line program (SLP) which is essentially a context free grammar in the Chomsky normal form. Given an SLP of size n that represents a string s of length N, our algorithm computes all runs and squares in s in O(n3h) time and O(n2) space, where h is the height of the derivation tree of the SLP. We also show an algorithm to compute all gapped-palindromes in O(n3h + gnh log N) time and O(n2) space, where g is the length of the gap. As one of the main components of the above solution, we propose a new technique called approximate doubling which seems to be a useful tool for a wide range of algorithms on SLPs. Indeed, we show that the technique can be used to compute the periods and covers of the string in O(n2h) time and O(nh(n + log2 N)) time, respectively.

AB - We address the problems of detecting and counting various forms of regularities in a string represented as a straight-line program (SLP) which is essentially a context free grammar in the Chomsky normal form. Given an SLP of size n that represents a string s of length N, our algorithm computes all runs and squares in s in O(n3h) time and O(n2) space, where h is the height of the derivation tree of the SLP. We also show an algorithm to compute all gapped-palindromes in O(n3h + gnh log N) time and O(n2) space, where g is the length of the gap. As one of the main components of the above solution, we propose a new technique called approximate doubling which seems to be a useful tool for a wide range of algorithms on SLPs. Indeed, we show that the technique can be used to compute the periods and covers of the string in O(n2h) time and O(nh(n + log2 N)) time, respectively.

UR - http://www.scopus.com/inward/record.url?scp=85027953511&partnerID=8YFLogxK

UR - http://www.scopus.com/inward/citedby.url?scp=85027953511&partnerID=8YFLogxK

U2 - 10.1016/j.ic.2014.09.009

DO - 10.1016/j.ic.2014.09.009

M3 - Article

AN - SCOPUS:85027953511

VL - 240

SP - 74

EP - 89

JO - Information and Computation

JF - Information and Computation

SN - 0890-5401

ER -