Слово Фибоначчи — различия между версиями
AMaltsev (обсуждение | вклад) |
AMaltsev (обсуждение | вклад) м |
||
| Строка 122: | Строка 122: | ||
== Источники == | == Источники == | ||
| − | * Билл Смит «Методы и алгоритмы вычислений на строках» | + | * Билл Смит «Методы и алгоритмы вычислений на строках» {{---}} издательство «Вильямс» {{---}} 2006 {{---}} стр. 100-107 |
[[Категория:Алгоритмы и структуры данных]] | [[Категория:Алгоритмы и структуры данных]] | ||
[[Категория:Основные определения. Простые комбинаторные свойства слов]] | [[Категория:Основные определения. Простые комбинаторные свойства слов]] | ||
Версия 23:58, 8 июня 2016
| Определение: |
| Строками Фибоначчи (англ. Fibostring) называются строки над алфавитом , полученные последовательным применением морфизма :
|
Содержание
Примеры
Первые несколько строк Фибоначчи:
Рекуррентное соотношение для строк Фибоначчи
| Лемма (1): |
Строки Фибоначчи удовлетворяют рекуррентному соотношению . |
| Доказательство: |
|
Докажем методом математической индукции. База: При . Переход: Пусть и . . Так как отображение — линейно (т.е. ), то можно продолжить равенство: . |
Также можно заметить, что длины строк Фибоначчи совпадают с числами Фибоначчи.
Обобщенная строка Фибоначчи
Начнем обобщение идеи строк Фибоначчи следующим образом. Вместо отдельных символов и будем оперировать двумя произвольными строками :
Таким образом "старый" морфизм будет частным случаем "нового" морфизма при и .
По аналогии можно вычислить , и, наконец, определить -ую обобщенную строку Фибоначчи как:
| Определение: |
| Обобщенная строка Фибоначчи (англ. generalized Fibostring) имеет вид . |
Первые несколько обобщенных строк имеют вид:
А также в общем случае:
| Определение: |
| Определим бесконечную обобщенную строку Фибоначчи (англ. generalized infinite Fibostring) как строку, содержащую все строки в качестве префиксов. |
| Лемма (2): |
| Доказательство: |
|
. |
Например: .
Это равенство работает также для .
| Утверждение (1): |
В не может содержаться подстроки или . |
| Утверждение (2): |
Для любого . |
|
Докажем это утверждение методом математической индукции. База. Переход. Но то, что было доказано ранее в ходе индукции. |
| Лемма (3): |
Для любого целого выполняется равенство . |
| Доказательство: |
| . |
| Лемма (4): |
Для любого целого строка имеет бордеры для . |
Обратный морфизм
| Определение: |
Обратный морфизм определяется как отображение:
|
Обратный морфизм позволяет из строки получить строку .
Связь с задачей о построении исключений
| Утверждение (3): |
Для любого целого содержит куб некоторой подстроки. |
| Строка содержит подстроку и является префиксом для . |
| Теорема (1): |
Никакая строка не содержит подстроки кратности . |
| Утверждение (4): |
Бесконечная строка Фибоначчи является решением задачи построения -исключения |
| Это следует из утверждения и теоремы выше. |
См. также
Источники
- Билл Смит «Методы и алгоритмы вычислений на строках» — издательство «Вильямс» — 2006 — стр. 100-107