- Бесквадратное слово
-
Бесквадра́тное сло́во (англ. squarefree word) — слово, в котором никакое подслово не повторяется подряд 2 раза (т.е. это слово нельзя представить в виде yxxz, где x, у и z — некоторые подслова).
А. Туэ доказал, что бесконечные бесквадратные слова существуют над любыми алфавитами из по крайней мере 3 букв. Один из простейших примеров бесконечного бесквадратного слова над алфавитом из 3 букв можно построить, если начать с слова
и далее из слова
получать слово
с помощью замен «a»->«abcab», «b»->«acabcb», «c»->«acbcacb». Каждое следующее слово будет содержать в себе предыдущее, что позволяет построить бесконечное слово «abcabacabcbacbcacbabcabacabcb…». Число бесквадратных слов длины
растет экспоненциально от
. Показатель экспоненты
на данный момент оценивается как
([1]).
Содержание
Проверка слова на бесквадратность
Если есть слово
длины
, то можно проверить является ли оно бесквадратным за
действий. Для этого нужно построить за
суффиксное дерево и сделать предварительные расчеты (см. наименьший общий предшественник), позволяющие за
находить по данным
и
наибольшее
такое, что подстроки длины
начинающиеся с позиций
и
совпадают. Также построим суффиксное дерево и выполним этим расчеты для обратной строки, чтобы по
и
находить длину наибольшей общей подстроки, заканчивающуюся в этих позициях.
После этого задача решается рекурсивно. Разобъем строку посередине и проверим каждую из половинок. Если в одной из них есть подслово вида
, то и исходная строка не является бесквадратной. Пусть
— позиция начала второй половинки. Для всех длин
найдем длину
общей подстроки для позиций
и
, а также длину
общей подстроки начинающейся в позициях
и
но идущей в обратном направлении. Если
, то подслова длины
, начинающиеся с позиций
и
совпадают, а значит слово не является бесквадратным. После этого проделаем эту же процедуру для позиций
и
для всех
. Легко видеть, что если ни одна из процедур не нашла квадрата, то и позиция
не может принадлежать никакому квадрату, а значит слово является бесквадратным. Поскольку после предварительных расчетов нахождение общей подстроки можно выполнить за
, то для проверки позиции
алгоритму понадобиться
шагов. С учётом рекурсии получаем общую сложность алгоритма
.
Этот алгоритм легко обобщается на поиски повторений любой длины: достаточно заменить условие
на условие
для поиска строк, повторяющихся
раз подряд.
Если вместо суффиксных деревьев использовать более простые суффиксные массивы и вместо алгоритма поиска общей подстроки за
использовать более простой алгоритм за
на основе промежуточных результатов построения суффиксного массива, то этот алгоритм будет работать за
. Это не сильно хуже, учитывая значительное упрощение алгоритма в этом случае.
Примеры бесквадратных бесконечных последовательностей
- Начиная с «а» применять замены: a -> «abcab»; b -> «acabcb»; c -> «acbcacb» (А. Туэ, 1917)
- Начиная с «а» применять замены: a -> «abcbacbcabcba»; b -> «bcacbacabcacb»; c -> «cabacbabcabac» (J. Leech, c.1957)
- Последовательность Морса-Туэ, если её разделить на группы по 2 цифры и каждую группу заменить соответствующим образом: 01 -> a, 10 -> b, 00 -> c, 11 -> c.
Литература
- Allouche, J.-P. and Shallit, J. «Repetition in Words.» § 1.6 in Automatic Sequences: Theory, Applications, Generalizations. Cambridge, England: Cambridge University Press, pp. 14–16, 2003.
- Baake, M.; Elser, V.; and Grimm, U. «The Entropy of Square-Free Words.» 8 Sep 1998. http://arxiv.org/abs/math-ph/9809010/.
- Bean, D. R.; Ehrenfeucht, A.; and McNulty, G. F. «Avoidable Patterns in Strings of Symbols.» Pacific J. Math. 85, 261—294, 1979.
- Berstel, J. and Reutenauer, C. «Square-Free Words and Idempotent Semigroups.» In Combinatorics on Words (Ed. M. Lothaire). Reading, MA: Addison-Wesley, pp. 18–38, 1983.
- Brandenburg, F.-J. «Uniformly Growing th Power-Free Homomorphisms.» Theor. Comput. Sci. 23, 69-82, 1983.
- Brinkhuis, J. «Non-Repetitive Sequences on Three Symbols.» Quart. J. Math. Oxford Ser. 2 34, 145—149, 1983.
- Crochemore, M. «Sharp Characterizations of Squarefree Morphisms.» Theor. Comput. Sic. 18, 221—226, 1982.
- Crochemore, M. «Tests sur les morphismes faiblement sans carré.» In Combinatorics on Words (Ed. L. J. Cummings). Toronto: Academic Press, pp. 63–89, 1983.
- Finch, S. R. «Pattern-Free Word Constants.» § 5.17 in Mathematical Constants. Cambridge, England: Cambridge University Press, pp. 367–371, 2003.
- Kobayashi, Y. «Repetition-Free Words.» Theor. Comput. Sci. 44, 175—197, 1986.
- Leconte, M. «th Power-Free Codes.» In Automata on Infinite Words (Ed. M. Nivat and D. Perrin). Berlin: Springer-Verlag, pp. 172–178, 1985.
- Noonan, J. and Zeilberger, D. «The Goulden-Jackson Cluster Method: Extensions, Applications, and Implementations.» J. Differ. Eq. Appl. 5, 355—377, 1999.
- Pleasants, P. A. B. «Nonrepetitive Sequences.» Proc. Cambridge Philos. Soc. 68, 267—274, 1970.
- Restivo, A. and Salemi, S. «Overlap-Free Words on Two Symbols.» In Automata on Infinite Words (Ed. M. Nivat and D. Perrin). New York: Springer-Verlag, pp. 198–206, 1985.
- Sloane, N. J. A. Sequences A006156/M2550 and A051041 in «The On-Line Encyclopedia of Integer Sequences.»
- Thue, A. «Über unendliche Zeichenreihen.» Norske Vid. Selsk. Skr. I, Mat. Nat. Kl. Christiana 7, 1-22, 1906. Reprinted in Nagell, T.; Selberg, A.; Selberg, S.; and Thalberg, K. (Eds.). Selected Mathematical Papers of Axel Thue. Oslo, Norway: Universitetsforlaget, pp. 139–158, 1977.
- Thue, A. «Über die gegenseitige Lage gleicher Teile gewisser Zeichenreihen.» Norske Vid. Selsk. Skr. I, Mat. Nat. Kl. Christiana 1, 1-67, 1912. Reprinted in Nagell, T.; Selberg, A.; Selberg, S.; and Thalberg, K. (Eds.). Selected Mathematical Papers of Axel Thue. Oslo, Norway: Universitetsforlaget, pp. 413–477, 1977.
Ссылки
- Weisstein, Eric W. Squarefree Word (англ.) на сайте Wolfram MathWorld.
Категория:- Дискретная математика
Wikimedia Foundation. 2010.