Linear-Time Computation of Local Periods

  • Jean-Pierre Duval
  • Roman Kolpakov
  • Gregory Kucherov
  • Thierry Lecroq
  • Arnaud Lefebvre
Conference paper
Part of the Lecture Notes in Computer Science book series (LNCS, volume 2747)


We present a linear-time algorithm for computing all local periods of a given word. This subsumes (but is substantially more powerful than) the computation of the (global) period of the word and on the other hand, the computation of a critical factorization, implied by the Critical Factorization Theorem.


Linear Time String Match Maximal Repetition Current Factor String Match Algorithm 
These keywords were added by machine and not by the authors. This process is experimental and the keywords may be updated as the learning algorithm improves.


Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.


  1. 1.
    Boyer, R.S., Moore, J.S.: A fast string searching algorithm. Communications of the ACM 20, 762–772 (1977)CrossRefGoogle Scholar
  2. 2.
    Choffrut, C., Karhumäki, J.: Combinatorics of words. In: Rozenberg, G., Salomaa, A. (eds.) Handbook on Formal Languages, vol. I, pp. 329–438. Springer, Heidelberg (1997)Google Scholar
  3. 3.
    Crochemore, M., Perrin, D.: Two-way string matching. J. ACM 38, 651–675 (1991)zbMATHCrossRefMathSciNetGoogle Scholar
  4. 4.
    Crochemore, M., Rytter, W.: Text algorithms. Oxford University Press, Oxford (1994)zbMATHGoogle Scholar
  5. 5.
    Crochemore, M., Rytter, W.: Squares, cubes, and time-space efficient string searching. Algorithmica 13, 405–425 (1995)zbMATHCrossRefMathSciNetGoogle Scholar
  6. 6.
    Crochemore, M.: An optimal algorithm for computing the repetitions in a word. Information Processing Letters 12, 244–250 (1981)zbMATHCrossRefMathSciNetGoogle Scholar
  7. 7.
    Crochemore, M.: Recherche linéaire d’un carré dans un mot. Comptes Rendus Acad. Sci. Paris Sér. I Math. 296, 781–784 (1983)zbMATHMathSciNetGoogle Scholar
  8. 8.
    Duval, J.-P., Mignosi, F., Restivo, A.: Recurrence and periodicity in infinite words from local periods. Theoretical Computer Science 262(1), 269–284 (2001)zbMATHCrossRefMathSciNetGoogle Scholar
  9. 9.
    Duval, J.-P.: Périodes locales et propagation de périodes dans un mot. Theoretical Computer Science 204(1-2), 87–98 (1998)zbMATHCrossRefMathSciNetGoogle Scholar
  10. 10.
    Guibas, L.J., Odlyzko, A.M.: Periods in strings. Journal of Combinatorial Theory, Series A 30, 19–42 (1981)zbMATHCrossRefMathSciNetGoogle Scholar
  11. 11.
    Galil, Z., Seiferas, J.: Time-space optimal string matching. Journal of Computer and System Sciences 26(3), 280–294 (1983)CrossRefMathSciNetGoogle Scholar
  12. 12.
    Gusfield, D.: Algorithms on Strings, Trees, and Sequences. Computer Science and Computational Biology. Cambridge University Press, Cambridge (1997)zbMATHCrossRefGoogle Scholar
  13. 13.
    Kolpakov, R., Kucherov, G.: Finding maximal repetitions in a word in linear time. In: Proc. of FOCS 1999, pp. 596–604. IEEE Comp. Soc., New York (1999)Google Scholar
  14. 14.
    Kolpakov, R., Kucherov, G.: Finding repeats with fixed gap. In: Proc. of the 7th SPIRE, La Coruña, Spain, pp. 162–168. IEEE, Los Alamitos (2000)Google Scholar
  15. 15.
    Kolpakov, R., Kucherov, G.: Finding approximate repetitions under hamming distance. In: Meyer auf der Heide, F. (ed.) ESA 2001. LNCS, vol. 2161, pp. 170–181. Springer, Heidelberg (2001)CrossRefGoogle Scholar
  16. 16.
    Knuth, D.E., Morris, J.H., Pratt, V.R.: Fast pattern matching in strings. SIAM Journal of Computing 6, 323–350 (1977)zbMATHCrossRefMathSciNetGoogle Scholar
  17. 17.
    Kosaraju, S.R.: Computation of squares in string. In: Crochemore, M., Gusfield, D. (eds.) CPM 1994. LNCS, vol. 807, pp. 146–150. Springer, Heidelberg (1994)Google Scholar
  18. 18.
    Lothaire, M.: Combinatorics on Words. Encyclopedia of Mathematics and Its Applications, vol. 17. Addison Wesley, Reading (1983)zbMATHGoogle Scholar
  19. 19.
    Lothaire, M.: Algebraic Combinatorics on Words. Cambridge University Press, Cambridge (2002)zbMATHGoogle Scholar
  20. 20.
    Main, M.G.: Detecting leftmost maximal periodicities. Discrete Applied Mathematics 25, 145–153 (1989)zbMATHCrossRefMathSciNetGoogle Scholar
  21. 21.
    Main, M.G., Lorentz, R.J.: An O(n logn) algorithm for finding all repetitions in a string. Journal of Algorithms 5(3), 422–432 (1984)zbMATHCrossRefMathSciNetGoogle Scholar
  22. 22.
    Rodeh, M., Pratt, V.R., Even, S.: Linear algorithm for data compression via string matching. Journal of the ACM 28(1), 16–24 (1981)zbMATHCrossRefMathSciNetGoogle Scholar
  23. 23.
    Rivals, E., Rahmann, S.: Combinatorics of periods in strings. In: van Leuween, J., Orejas, P., Spirakis, P.G. (eds.) ICALP 2001. LNCS, vol. 2076, pp. 615–626. Springer, Heidelberg (2001)CrossRefGoogle Scholar
  24. 24.
    Storer, J.A.: Data Compression: Methods and Theory. Computer Science Press, Rockville (1988)Google Scholar

Copyright information

© Springer-Verlag Berlin Heidelberg 2003

Authors and Affiliations

  • Jean-Pierre Duval
    • 1
  • Roman Kolpakov
    • 2
  • Gregory Kucherov
    • 3
  • Thierry Lecroq
    • 4
  • Arnaud Lefebvre
    • 4
  1. 1.LIFARUniversité de RouenFrance
  2. 2.Department of Computer ScienceUniversity of LiverpoolUK
  3. 3.INRIA/LORIANancyFrance
  4. 4.ABISSUniversité de RouenFrance

Personalised recommendations