Студопедия.Орг Главная | Случайная страница | Контакты | Мы поможем в написании вашей работы!  
 

Алгоритм Берленкемпа-Месси



Пусть P – некоторое поле, e – единица поля P. Обозначим через начальный отрезок произвольной последовательности u элементов поля P. Будем говорить, что многочлен

вырабатывает отрезок , если

,

то есть данный отрезок последовательности является отрезком некоторой линейной рекуррентной последовательности с характеристическим многочленом G (x). Алгоритм Берленкемпа-Месси строит многочлен G (x) наименьшей степени, вырабатывающий отрезок .

Определим функцию умножения последовательности на многочлен. Для произвольного многочлена и последовательности v положим H (x) · v = w, где

Многочлен G (x) вырабатывает l ³ m знаков последовательности u, если выполняется равенство

то есть если первые lm знаков последовательности v равны нулю, а следующий за ними отличен от нуля.

Для многочлена G (x) Î P [ x ] степени m и последовательности u введем параметры lu (G) и ku (G) = lu (G) – m Î N È {0, +¥}, где lu (G) – число знаков последовательности u, вырабатываемых многочленом G (x). Ясно, что ku (G) – максимальное число первых подряд идущих нулей в последовательности G (x) · u (либо ¥).

Будем индуктивно строить последовательность многочленов G 0(x), G 1(x), … неубывающих степеней 0 = m 0 < m 1 £ m 2 £ ….

Начальные условия: G 0(x) = e, m 0 = 0.

Этап 1. Если

то полагаем

Если G 1(xu = 0, то есть если ku (G 1) = ¥, то G 1(x) – искомый минимальный многочлен ЛРП u. В противном случае строим G 2(x).

Этап t + 1. пусть многочлены G 0(x), …, Gt (x) уже построены, и степень многочлена Gj (x) равна mj, причем 0 = m 0 < m 1 £ m 2 £ … mt. Пусть выполняются соотношения

Определим число s = s (t) так, чтобы выполнялись условия mt = mt - 1 = … = ms + 1 > ms (такое s найдется, так как m 1 > m 0). Положим

Если Gt +1(xu = 0, то нужный многочлен построен. В противном случае строим Gt +2(x).

Теорема: Если u – линейная рекуррентная последовательность над полем P с минимальным многочленом степени m, то F (x) = Gt (x) для некоторого подходящего значения t £ 2 m – 1 – k 0.





Дата публикования: 2014-11-02; Прочитано: 520 | Нарушение авторского права страницы | Мы поможем в написании вашей работы!



studopedia.org - Студопедия.Орг - 2014-2024 год. Студопедия не является автором материалов, которые размещены. Но предоставляет возможность бесплатного использования (0.006 с)...