title: Large-scale detection of repetitions.
abstract: Combinatorics on words began more than a century ago with a demonstration that an infinitely long string with no repetitions could be constructed on an alphabet of only three letters. Computing all the repetitions (such as ∙∙∙TTT ∙∙∙ or ∙∙∙ CGACGA ∙∙∙ ) in a given string x of length n is one of the oldest and most important problems of computational stringology, requiring time in the worst case. About a dozen years ago, it was discovered that repetitions can be computed as a by-product of the Θ(n)-time computation of all the maximal periodicities or runs in x. However, even though the computation is linear, it is also brute force: global data structures, such as the suffix array, the longest common prefix array and the Lempel-Ziv factorization, need to be computed in a preprocessing phase. Furthermore, all of this effort is required despite the fact that the expected number of runs in a string is generally a small fraction of the string length. In this paper, I explore the possibility that repetitions (perhaps also other regularities in strings) can be computed in a manner commensurate with the size of the output.
authors.affiliation: Algorithms Research Group, Department of Computing and Software, McMaster University, , Hamilton, Ontario, L8S 4K1, Canada.
authors.forename: W F
authors.initials: WF
authors.lastname: Smyth
keywords: algorithm; large scale; massive data; repetition; string; word
references.citation: Nature. 1953 Apr 25;171(4356):737-8
references.pmid: 13054692