Inferring Strings from Full Abelian Periods

  • Makoto Nishida
  • Tomohiro I.
  • Shunsuke Inenaga
  • Hideo Bannai
  • Masayuki Takeda
Conference paper
Part of the Lecture Notes in Computer Science book series (LNCS, volume 9472)


Strings uv are said to be Abelian equivalent if u is a permutation of the characters appearing in v. A string w is said to have a full Abelian periodp if \(w = w_1 \cdots w_k\), where all \(w_i\)’s are of length p each and are all Abelian equivalent. This paper studies reverse-engineering problems on full Abelian periods. Given a positive integer n and a set D of divisors of n, we show how to compute in O(n) time the lexicographically smallest string of length n which has all elements of D as its full Abelian periods and has the minimum number of full Abelian periods not in D. Moreover, we give an algorithm to enumerate all such strings in amortized constant time per output after O(n)-time preprocessing. Also, we show how to enumerate the strings which have all elements of D as its full Abelian periods in amortized constant time per output after O(n)-time preprocessing.


Search Tree Time Algorithm Distinct Character Great Common Divisor Common Multiple 
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.


  1. 1.
    Apostol, T.M.: Introduction to Analytic Number Theory. Undergraduate Texts in Mathematics. Springer, Heidelberg (1976)zbMATHGoogle Scholar
  2. 2.
    Blanchet-Sadri, F., Simmons, S., Tebbe, A., Veprauskas, A.: Abelian periods, partial words, and an extension of a theorem of Fine and Wilf. RAIRO - Theor. Inf. Appl. 47(3), 215–234 (2013)MathSciNetCrossRefzbMATHGoogle Scholar
  3. 3.
    Cazaux, B., Rivals, E.: Reverse engineering of compact suffix trees and links: a novel algorithm. J. Discrete Algorithms 28, 9–22 (2014)MathSciNetCrossRefzbMATHGoogle Scholar
  4. 4.
    Constantinescu, S., Ilie, L.: Fine and Wilf’s theorem for Abelian periods. Bull. EATCS 89, 167–170 (2006)MathSciNetzbMATHGoogle Scholar
  5. 5.
    Crochemore, M., Iliopoulos, C.S., Kociumaka, T., Kubica, M., Pachocki, J., Radoszewski, J., Rytter, W., Tyczynski, W., Walen, T.: A note on efficient computation of all Abelian periods in a string. Inf. Process. Lett. 113(3), 74–77 (2013)MathSciNetCrossRefzbMATHGoogle Scholar
  6. 6.
    Fici, G., Lecroq, T., Lefebvre, A., Élise Prieur-Gaston, Smyth, W.F.: Quasi-linear time computation of the Abelian periods of a word. In: PSC 2012, pp. 103–110 (2012)Google Scholar
  7. 7.
    Fici, G., Lecroq, T., Lefebvre, A., Prieur-Gaston, E.: Computing Abelian periods in words. In: PSC 2011, pp. 184–196 (2011)Google Scholar
  8. 8.
    Fine, N.J., Wilf, H.S.: Uniqueness theorems for periodic functions. Proc. Am. Math. Soc. 16, 109–114 (1965)MathSciNetCrossRefzbMATHGoogle Scholar
  9. 9.
    Gawrychowski, P., Jeż, A., Jeż, Ł.: Validating the Knuth-Morris-Pratt failure function, fast and online. Theory Comput. Syst. 54(2), 337–372 (2014)CrossRefzbMATHGoogle Scholar
  10. 10.
    Knuth, D.E., Morris, J.H., Pratt, V.R.: Fast pattern matching in strings. SIAM J. Comput. 6(2), 323–350 (1977)MathSciNetCrossRefzbMATHGoogle Scholar
  11. 11.
    Kociumaka, T., Radoszewski, J., Rytter, W.: Fast algorithms for Abelian periods in words and greatest common divisor queries. In: STACS 2013, pp. 245–256 (2013)Google Scholar
  12. 12.
    Lifshits, Y.: Processing compressed texts: a tractability border. In: Ma, B., Zhang, K. (eds.) CPM 2007. LNCS, vol. 4580, pp. 228–240. Springer, Heidelberg (2007) CrossRefGoogle Scholar
  13. 13.
    Lothaire, M.: Combinatorics on Words. Cambridge Mathematical Library, Cambridge (1997)CrossRefzbMATHGoogle Scholar
  14. 14.
    Nakashima, Y., Okabe, T., I, T., Inenaga, S., Bannai, H., Takeda, M.: Inferring strings from Lyndon factorization. In: Csuhaj-Varjú, E., Dietzfelbinger, M., Ésik, Z. (eds.) MFCS 2014, Part II. LNCS, vol. 8635, pp. 565–576. Springer, Heidelberg (2014) Google Scholar
  15. 15.
    Parikh, R.: On context-free languages. J. ACM 13(4), 570–581 (1966)CrossRefzbMATHGoogle Scholar
  16. 16.
    Starikovskaya, T., Vildhøj, H.W.: A suffix tree or not a suffix tree? J. Discrete Algorithms 32, 14–23 (2015)MathSciNetCrossRefzbMATHGoogle Scholar
  17. 17.
    Takaoka, T.: An \(O\)(1) time algorithm for generating multiset permutations. In: Aggarwal, A.K., Pandu Rangan, C. (eds.) ISAAC 1999. LNCS, vol. 1741, pp. 237–246. Springer, Heidelberg (1999) CrossRefGoogle Scholar
  18. 18.
    Williams, A.: Loopless generation of multiset permutations using a constant number of variables by prefix shifts. In: SODA 2009, pp. 987–996 (2009)Google Scholar

Copyright information

© Springer-Verlag Berlin Heidelberg 2015

Authors and Affiliations

  • Makoto Nishida
    • 1
  • Tomohiro I.
    • 2
  • Shunsuke Inenaga
    • 1
  • Hideo Bannai
    • 1
  • Masayuki Takeda
    • 1
  1. 1.Department of InformaticsKyushu UniversityFukuokaJapan
  2. 2.Department of Computer ScienceTU DortmundDortmundGermany

Personalised recommendations