## Abstract

Given a string on alphabet Σ the partitioning problem is to compute classes of equivalences on the set of positions of the input string. These classes implicitly memorise identical factors of the string and, hence, their efficient computation is essential for a wide range of string processing applications. We study this problem for a weighted string: for every position of the weighted string and every letter of the alphabet a probability of occurrence of this letter at this position is given. Thus a weighted string may represent many different strings, each with probability of occurrence equal to the product of probabilities of its letters at subsequent positions. In this article, we present a non-trivial generalisation of Crochemore’s partitioning algorithm (IPL, 1981) that works on weighted strings requiring time O(υnlog υn) , where n is the length of the string, υ= min { z^{2}, zn, σ^{n}} , σ is the size of Σ, and 1 / z is a cumulative weight threshold, defined as the minimal probability of occurrence of factors in the string. Our contributions can be summarised as follows: (a) we design the first algorithm to solve the partitioning problem on weighted strings for arbitrary z and σ in time O(υnlog υn) and space O(υn) improving the state of the art for z= O(1) ; (b) we improve the state of the art for numerous other string processing problems; and (c) we show further combinatorial insight into the relation between weighted and indeterminate strings, that is, sequences of alphabet subsets without associated occurrence probabilities.

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

Pages (from-to) | 496-514 |

Number of pages | 19 |

Journal | Algorithmica |

Volume | 80 |

Issue number | 2 |

DOIs | |

Publication status | Published - 1 Feb 2018 |

Externally published | Yes |

## Keywords

- Covers
- Crochemore partitioning
- Position weight matrix
- Repetitions
- Seeds
- Uncertain sequences
- Weighted strings