Период и бордер, их связь — различия между версиями
Dimitrova (обсуждение | вклад) (→Связь периода и бордера) |
Dimitrova (обсуждение | вклад) (→Свойства периода) |
||
| Строка 15: | Строка 15: | ||
|statement= Если у строки есть [[Основные определения, связанные со строками#Отношения между строками|период]] длины <tex>|k|</tex>, то у нее есть период длины <tex>|kx|</tex>, где <tex> x \in N</tex>. | |statement= Если у строки есть [[Основные определения, связанные со строками#Отношения между строками|период]] длины <tex>|k|</tex>, то у нее есть период длины <tex>|kx|</tex>, где <tex> x \in N</tex>. | ||
|proof= | |proof= | ||
| − | Пусть длина строки равна <tex>n</tex>, сама строка {{---}} <tex> \alpha </tex>.<br/> | + | Пусть <b>длина</b> строки равна <tex>n</tex>, сама <b>строка</b> {{---}} <tex>\alpha</tex>.<br/> |
| − | Доказательство будем вести по индукции по числу <tex>x</tex>.<br/> | + | Доказательство будем вести по <b>индукции по числу</b> <tex>x</tex>.<br/> |
| − | Для <tex> x = 1 </tex> утверждение очевидно.< | + | <ol> |
| − | Пусть верно для <tex>x = m</tex>. Докажем, что верно для <tex>x = m + 1</tex>.<br/> | + | <li>Для <tex> x = 1 </tex> утверждение очевидно.</li> |
| − | Из определения периода имеем, что<br/> | + | <li>Пусть верно для <tex>x = m</tex>.</li> |
| − | + | <li>Докажем, что верно для <tex>x = m + 1</tex>.<br/> | |
| − | + | Из <b>определения периода</b> имеем, что<br/> | |
| + | <tex>\forall i = 1 \ldots n - k</tex>, <tex>\alpha [i] = \alpha[i + k]</tex>,<br/> | ||
| + | а из <b>предположения</b> индукции, что<br/> | ||
| + | <tex>\forall i = 1 \ldots n - k</tex>, <tex>\alpha [i] = \alpha[i + mk]</tex><br/> | ||
Значит получаем, что<br/> | Значит получаем, что<br/> | ||
| − | <tex>\forall i = 1 \ldots n - k</tex>, <tex>\alpha [i] = \alpha [i + mk] = \alpha[i + mk + k]</tex>, следовательно<br/> | + | <tex>\forall i = 1 \ldots n - k</tex>, <tex>\alpha [i] = \alpha [i + mk] = \alpha[i + mk + k]</tex>,<br/> |
| − | для <tex>\forall i = 1 \ldots n - k</tex>, <tex>\alpha [i] = \alpha[i + (m + 1)k]</tex>.<br/> | + | следовательно<br/> |
| − | Значит у строки есть период длины <tex> |(m + 1)k|</tex>.<br/> | + | для <tex>\forall i = 1 \ldots n - k</tex>, <tex>\alpha [i] = \alpha[i + (m + 1)k]</tex>.<br/> |
| + | Значит у строки есть <b>период длины</b> <tex> |(m + 1)k|</tex>.<br/></li> | ||
| + | </ol> | ||
Утверждение доказано. | Утверждение доказано. | ||
}} | }} | ||
| Строка 32: | Строка 37: | ||
|statement= Если у строки есть периоды длины <tex>|p|</tex> и <tex>|q|</tex>, то НОД<tex>(p, q)</tex> также является периодом этой строки. | |statement= Если у строки есть периоды длины <tex>|p|</tex> и <tex>|q|</tex>, то НОД<tex>(p, q)</tex> также является периодом этой строки. | ||
|proof= | |proof= | ||
| − | Пусть строка равна <tex> \alpha </tex>.<br/> | + | Пусть <b>строка</b> равна <tex> \alpha </tex>.<br/> |
| − | Доказательство будем вести по индукции по парам <tex>(p, q)</tex>, где <tex> p \geqslant q </tex>, а <tex>(p, q) + 1 = \begin{cases} (p, q + 1), & q < p;\\ | + | Доказательство будем вести <b>по индукции по парам</b> <tex>(p, q)</tex>, где <tex> p \geqslant q </tex>, а <tex>(p, q) + 1 = \begin{cases} (p, q + 1), & q < p;\\ |
(p + 1, 1), & q = p.\end{cases}</tex><br/> | (p + 1, 1), & q = p.\end{cases}</tex><br/> | ||
| − | Для <tex> (1, 1) </tex> утверждение очевидно.< | + | <ol> |
| − | Пусть верно для всех пар меньших <tex>(p, q)</tex>.< | + | <li>Для <tex> (1, 1) </tex> утверждение очевидно.</li> |
| − | Докажем, что верно для <tex>(p, q)</tex>. | + | <li>Пусть верно для всех <b>пар меньших</b> <tex>(p, q)</tex>.</li> |
| − | + | <li>Докажем, что верно для <tex>(p, q)</tex>.<br/> | |
| − | Значит | + | Из <b>определения периода</b>:<br/> |
| − | Сделаем замену <tex>j = i + q</tex> и получим, что | + | <tex>\forall i = 1 \ldots n - p</tex>, <tex>\alpha [i] = \alpha[i + p] = \alpha[i + q]</tex>.<br/> |
| − | + | Значит <tex>\forall i = q \ldots n - p</tex>, <tex>\alpha [i + q] = \alpha[i + p]</tex><br/> | |
| − | Получили новый период длины <tex>|p - q|</tex>. Из предположения известно, что НОД<tex>(p - q, q)</tex> {{---}} период строки, но НОД<tex>(p - q, q)</tex> <tex>=</tex> НОД<tex>(p, q)</tex>. Следовательно утверждение доказано. | + | Сделаем замену <tex>j = i + q</tex> и получим, что<br/> |
| + | <tex>\forall j = 1 \ldots n - (p - q)</tex>, <tex>\alpha [j] = \alpha[j + (p - q)]</tex><br/> | ||
| + | Получили новый <b>период длины</b> <tex>|p - q|</tex>. Из предположения известно, что НОД<tex>(p - q, q)</tex> {{---}} период строки, но НОД<tex>(p - q, q)</tex><tex>=</tex>НОД<tex>(p, q)</tex>.</li> | ||
| + | </ol> | ||
| + | Следовательно утверждение доказано. | ||
}} | }} | ||
[[Категория:Алгоритмы и структуры данных]] | [[Категория:Алгоритмы и структуры данных]] | ||
[[Категория:Основные определения. Простые комбинаторные свойства слов]] | [[Категория:Основные определения. Простые комбинаторные свойства слов]] | ||
Версия 14:06, 21 апреля 2012
Связь периода и бордера
| Теорема: |
| Доказательство: |
|
Пусть дана строка .
Напишем формально определения бордера длины строки : , . Сделаем замену : , .Получили определение периода длины . Но , значит у строки есть период длины . |
Свойства периода
| Теорема: |
Если у строки есть период длины , то у нее есть период длины , где . |
| Доказательство: |
|
Пусть длина строки равна , сама строка — .
|
| Теорема: |
Если у строки есть периоды длины и , то НОД также является периодом этой строки. |
| Доказательство: |
|
Пусть строка равна .
|