Слово Фибоначчи — различия между версиями
| Строка 1: | Строка 1: | ||
==Определение== | ==Определение== | ||
{{Определение | {{Определение | ||
| − | |definition='''Морфизмом''' называется отображение <tex>h</tex>, которое | + | |definition='''Морфизмом''' называется отображение <tex>h</tex>, которое каждой букве <tex>\lambda</tex> из алфавита <tex>A</tex> ставит в соответствие строку <tex>h(\lambda)</tex> из множества <tex>A^{+}</tex>, |
| + | а каждой строке <tex>x</tex> из <tex>A^+</tex> ставит в соответсвие строку из <tex>A^+</tex> по следующему правилу : | ||
| + | <tex>h(x) = h(x[1])h(x[2])...h(x[n])</tex> , где <tex>x[1], x[2], \dots, x[n]</tex> уже являются элементами <tex>A</tex>. | ||
| + | |||
}} | }} | ||
| − | |||
| − | |||
| − | |||
Любой морфизм <tex>h</tex> можно применять к исходной строке <tex>x_0</tex> любое число раз, тем самым генерируя последовательность итераций <tex>h^{*}(x_0)</tex> по следующему правилу: <br> | Любой морфизм <tex>h</tex> можно применять к исходной строке <tex>x_0</tex> любое число раз, тем самым генерируя последовательность итераций <tex>h^{*}(x_0)</tex> по следующему правилу: <br> | ||
| Строка 33: | Строка 33: | ||
* <tex>f_5 = abaababa</tex> | * <tex>f_5 = abaababa</tex> | ||
| − | == | + | ==Лемма== |
{{Лемма | {{Лемма | ||
| − | |statement= Строки Фибоначчи удовлетворяют рекуррентному соотношению <tex>f_n = f_{n-1} | + | |statement= Строки Фибоначчи удовлетворяют рекуррентному соотношению <tex>f_n = f_{n-1}f_{n-2}, n \geq 2</tex>. |
|proof= | |proof= | ||
Доказательство нетрудно получить методом математической индукции. | Доказательство нетрудно получить методом математической индукции. | ||
| Строка 41: | Строка 41: | ||
База. При <tex>n = 2</tex> равенство очевидно. | База. При <tex>n = 2</tex> равенство очевидно. | ||
| − | Переход. Пусть <tex>f_n = f_{n-1} | + | Переход. Пусть <tex>f_n = f_{n-1}f_{n-2}</tex>. <tex>f_{n+1} = h(f_n) = h(f_{n-1}f_{n-2})</tex>. Т.к. h {{---}} линейна (т.е. <tex>h(xy) = h(x)h(y)</tex>), то можно продолжить равенство. |
| − | <tex>f_{n+1} = h(f_{n-1}) | + | <tex>f_{n+1} = h(f_{n-1})h(f_{n-2}) = f_{n}f_{n-1}</tex> |
}} | }} | ||
Версия 17:03, 26 апреля 2012
Определение
| Определение: |
| Морфизмом называется отображение , которое каждой букве из алфавита ставит в соответствие строку из множества ,
а каждой строке из ставит в соответсвие строку из по следующему правилу : , где уже являются элементами . |
Любой морфизм можно применять к исходной строке любое число раз, тем самым генерируя последовательность итераций по следующему правилу:
.
где и для любого целого .
Например:
.
| Определение: |
| Строками Фибоначчи являются строки, полученные последовательным применением морфизма к строке , т.е. .
|
Первые несколько строк Фибоначчи:
Лемма
| Лемма: |
Строки Фибоначчи удовлетворяют рекуррентному соотношению . |
| Доказательство: |
|
Доказательство нетрудно получить методом математической индукции. База. При равенство очевидно. Переход. Пусть . . Т.к. h — линейна (т.е. ), то можно продолжить равенство. |
Также нетрудно заметить, что длины строк Фибоначчи совпадают с числами Фибоначчи.
Литература
- Билл Смит. Методы и алгоритмы вычислений на строках. Пер. с англ. — М.:ООО"И.Д.Вильямс", 2006. — 496 с.: ил. — Парал. тит. англ. ISBN 5-8459-1081-1 (рус.)