Слово Фибоначчи — различия между версиями
Кирилл (обсуждение | вклад) |
|||
Строка 1: | Строка 1: | ||
==Определение== | ==Определение== | ||
{{Определение | {{Определение | ||
− | |definition=Морфизмом называется отображение <tex>h</tex>, которое каждоый букве <tex>\lambda</tex> из алфавита <tex>A</tex> ставит в соответствие строку <tex>h(\lambda)</tex> из множества <tex>A^{+}</tex>. | + | |definition='''Морфизмом''' называется отображение <tex>h</tex>, которое каждоый букве <tex>\lambda</tex> из алфавита <tex>A</tex> ставит в соответствие строку <tex>h(\lambda)</tex> из множества <tex>A^{+}</tex>. |
+ | }} | ||
+ | Отображение <tex>h</tex> также распространяется на любую строку <tex>x</tex> из множества <tex>A^{+}</tex> путем использования следующего тождества:<br> | ||
<tex>h(x) = h(x[1])h(x[2])...h(x[n])</tex>.<br> | <tex>h(x) = h(x[1])h(x[2])...h(x[n])</tex>.<br> | ||
Для полноты распространим отбражение на множество <tex>A^{*}</tex>, положив, что для любого морфизма <tex>h(\epsilon) = \epsilon</tex>. | Для полноты распространим отбражение на множество <tex>A^{*}</tex>, положив, что для любого морфизма <tex>h(\epsilon) = \epsilon</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> | ||
<tex>h^{*}(x_0) = \{h^0(x_0), h^1(x_0),...\}</tex>. <br> | <tex>h^{*}(x_0) = \{h^0(x_0), h^1(x_0),...\}</tex>. <br> | ||
− | где <tex>h^0(x_0) = x_0</tex> и для любого целого <tex>k \geq 1 h^k(x_0) = h(h^{k-1}(x_0))</tex>. <br> | + | где <tex>h^0(x_0) = x_0</tex> и для любого целого <tex>k \geq 1</tex> <tex> h^k(x_0) = h(h^{k-1}(x_0))</tex>. <br> |
Например:<br> | Например:<br> | ||
<tex>A = \{a,b\}, h(a) = a, h(b) = ab</tex>. <br> | <tex>A = \{a,b\}, h(a) = a, h(b) = ab</tex>. <br> | ||
Строка 16: | Строка 17: | ||
{{Определение | {{Определение | ||
− | |definition= | + | |definition='''Строками Фибоначчи''' являются строки, порожденные следующим морфизмом: |
+ | * <tex>A = \{a,b\}</tex> | ||
* <tex>h(a) = ab</tex> | * <tex>h(a) = ab</tex> | ||
* <tex>h(b) = a</tex> | * <tex>h(b) = a</tex> | ||
Строка 43: | Строка 45: | ||
Также нетрудно заметить, что длины строк Фибоначчи совпадают с числами Фибоначчи. | Также нетрудно заметить, что длины строк Фибоначчи совпадают с числами Фибоначчи. | ||
+ | |||
+ | == Литература == | ||
+ | * ''Билл Смит'' '''Методы и алгоритмы вычислений на строках''' | ||
+ | |||
+ | |||
+ | [[Категория:Алгоритмы и структуры данных]] | ||
+ | [[Категория:Слово Фибоначчи]] |
Версия 20:06, 29 марта 2012
Содержание
Определение
Определение: |
Морфизмом называется отображение | , которое каждоый букве из алфавита ставит в соответствие строку из множества .
Отображение
.
Для полноты распространим отбражение на множество , положив, что для любого морфизма .
Любой морфизм
.
где и для любого целого .
Например:
.
Определение: |
Строками Фибоначчи являются строки, порожденные следующим морфизмом:
|
Свойства
Введем множество
Первые несколько строк Фибоначчи:
Леммы
Лемма: |
Строки Фибоначчи удовлетворяют рекуррентному соотношению . |
Доказательство: |
Доказательство нетрудно получить методом математической индукции. База. При равенство очевидно.Переход. Пусть . . Т.к. h - линейна (т.е. ), то можно продолжить равенство. |
Также нетрудно заметить, что длины строк Фибоначчи совпадают с числами Фибоначчи.
Литература
- Билл Смит Методы и алгоритмы вычислений на строках