Научная статья на тему 'Теоретико-операторный подход к алгоритму Берлекэмпа-Месси-Сакаты'

Теоретико-операторный подход к алгоритму Берлекэмпа-Месси-Сакаты Текст научной статьи по специальности «Математика»

CC BY
100
19
i Надоели баннеры? Вы всегда можете отключить рекламу.
Ключевые слова
теория операторов / алгебраическая теория кодирования / алгоритм Берлекэмпа-Месси-Сакаты / operator theory / Algebraic coding theory / Berlekamp-Massey-Sakata algorithm

Аннотация научной статьи по математике, автор научной работы — Деундяк Владимир Михайлович, Пеленицын Артем Михайлович

Исследуется теоретико-операторная природа задач, которые решают классический алгоритм Берлекэмпа-Месси и его многомерное обобщение алгоритм Берлекэмпа-Месси-Сакаты. Теоретико-операторный подход к рассматриваемым алгоритмам позволяет перейти от поиска полиномов к поиску последовательностей. Основным результатом работы является основанная на теоретико-операторном подходе версия BMS-алгоритма, в теоретическом отношении более прозрачная, чем оригинальная С. Сакаты, более удобная для программной реализации. Она может быть использована при построении эффективных декодеров для широкого класса алгебро-геометрических кодов.

i Надоели баннеры? Вы всегда можете отключить рекламу.
iНе можете найти то, что вам нужно? Попробуйте сервис подбора литературы.
i Надоели баннеры? Вы всегда можете отключить рекламу.

We investigate the operator theoretic nature of the problems which are solved by classical Berlekamp-Massey algorithm and its multidimensional generalization, Berlekamp-Massey-Sakata algorithm. Operator theory approach to the algorithms allows switching to search of sequences instead of polynomials. The main result of the paper is the variant of the BMS-algorithm based on operator theory which is clearer in theoretical point of view then original Sakata's version, more suitable for software implementation, and could be used for constructing efficient decoders for wide class of algebraic geometry codes.

Текст научной работы на тему «Теоретико-операторный подход к алгоритму Берлекэмпа-Месси-Сакаты»

УДК 519.725+517.46

ТЕОРЕТИКО-ОПЕРАТОРНЫИ ПОДХОД К АЛГОРИТМУ БЕРЛЕКЭМПА-МЕССИ-САКАТЫ

© 2011 г. В.М. Деундяк, А.М. Пеленицын

Южный федеральный университет, ул. Мильчакова, 8а, г. Ростов н/Д, 344090

Southern Federal University, Milchakov St., 8a, Rostov-on-Don, 344090

Исследуется теоретико-операторная природа задач, которые решают классический алгоритм Берлекэмпа-Месси и его многомерное обобщение - алгоритм Берлекэмпа-Месси-Сакаты. Теоретико-операторный подход к рассматриваемым алгоритмам позволяет перейти от поиска полиномов к поиску последовательностей. Основным результатом работы является основанная на теоретико-операторном подходе версия BMS-алгоритма, в теоретическом отношении более прозрачная, чем оригинальная С. Сакаты, более удобная для программной реализации. Она может быть использована при построении эффективных декодеров для широкого класса алгебро-геометрических кодов.

Ключевые слова: теория операторов, алгебраическая теория кодирования, алгоритм Берлекэмпа-Месси-Сакаты.

We investigate the operator theoretic nature of the problems which are solved by classical Berlekamp-Massey algorithm and its multidimensional generalization, Berlekamp-Massey-Sakata algorithm. Operator theory approach to the algorithms allows switching to search of sequences instead of polynomials. The main result of the paper is the variant of the BMS-algorithm based on operator theory which is clearer in theoretical point of view then original Sakata's version, more suitable for software implementation, and could be used for constructing efficient decoders for wide class of algebraic geometry codes.

Keywords: operator theory, algebraic coding theory, Berlekamp-Massey-Sakata algorithm.

Исходная версия алгоритма Берлекэмпа-Месси (ВМ-алгоритма) для полиномов от одной переменной была изложена Берлекэмпом в 1968 г. [1, с. 193] в качестве элемента конструкции декодера кодов Боуза-Чоудхудри-Хоквингема над конечным полем. Месси [2] предложил свою интерпретацию алгоритма как процесса построения линейного регистра сдвига минимальной длины, генерирующего заданную последовательность элементов конечного поля. ВМ-алго-ритм нашёл многочисленные применения в различных областях математики, обзор последних наиболее важных результатов содержится в [3]. В связи с декодированием алгебро-геометрических кодов появилась необходимость обобщения ВМ-алгоритма на полиномы нескольких переменных. Впервые такое обобщение предложил С. Саката [4, 5] и его теперь принято называть алгоритмом Берлекэмпа-Месси-Сакаты (ВМ8-алгоритмом). Приложения этого алгоритма к актуальным задачам помехоустойчивого кодирования обсуждаются в [6]. В [7] представлена реализация кодека для одного класса алгебро- геометрических кодов с использованием двумерного BMS-алгоритма.

Задачи, которые решают ВМ- и BMS-алгоритмы, имеют теоретико-операторную природу, которая исследуется в настоящей работе. Теоретико-операторный подход к рассматриваемым алгоритмам позволяет перейти от поиска полиномов к поиску последовательностей, подобно тому, как в теории помехоустойчивого кодирования осуществляется переход от декодирования во временной области к декодированию в частотной [8]. Основным результатом настоящей работы является основанная на теоретико-операторном подходе новая версия BMS-алгоритма, в теоретическом отношении более прозрачная, чем оригинальная С. Сакаты, более удобная для программной реализации. Она может быть использована при построении эффективных

декодеров для широкого класса алгебро-геометри-ческих кодов.

Одномерная задача Берлекэмпа

Пусть 2, Ы0 - множество целых и неотрицательных целых чисел; ¥ - некоторое фиксированное (необязательно конечное) поле. Последовательностью и над полем Ж будем называть отображение и: 2 ^ Ж. Для каждой последовательности и определим её носитель: Бирр(и) = {к е 2 | и^. Ф 0}.

Введём линейное пространство последовательностей

с конечным носителем: 10(2) = { и: Z ^ Ж | ^ирр(и)| < да } и его подпространство последовательностей с конечным носителем и нулевыми элементами для отрицательных

к < 0 ^ и^. = 0 }.

0

индексов: l°(Z+) = { u е l°(Z)

Для последовательностей и е I (2 +), отличных от

тождественно нулевой последовательности 0, определим степень и: ё(и) = тах{к | и^ Ф 0}.

Положим й?(0) = -да, подразумевая обычные арифметические свойства -да.

Для любого к е Ы0 определим оператор сдвига: Тк: 10(2) ^ 10(2), (Тк и) = и-к.

Для любой последовательности / е 10(2+) опреде-

лим

A f)

оператор

Ганкеля: H(f) : l°(Z) ^ l°(Z),

(Н(/ «) ] = £ /ки]+к .

kеZ

Далее будут рассматриваться уравнения типа Н(/)и=0, однако в действительности можно обеспечить равенство нулю лишь части элементов последовательности в левой части, и, чтобы учесть это, введём специальное семейство проекторов: Qkm: 10(2) ^ 10(2+) , к, п е к < т, по

формуле (<2к ти) = | "■>• к < j < где и е 1°(2). Для к

' " [0, ] < к, ] > т,

> т положим Qk,m= О (нулевой оператор).

Для каждой последовательности / е 1°(Я+) определим семейство линейных операторов, зависящих от

двух параметров к, т е Ы°: В: 1°(2+) — 1°(2+), по

формуле: В^ и = Qk, т Тк и.

Заметим, что при к > т имеет место равенство В(Рт = О для любой /

Задача В (задача Берлекэмпа). Пусть дана последовательность и е 1°(Я+). Требуется найти последовательность /, такую, что

в( f) u _ о Bd( f ),d(u)U _ 0 ,

(1)

й(/) е N° минимальна.

Для данной последовательности и е 1°(2+) будем говорить, что решается задача В(и), представляющая собой операторное уравнение, снабжённое некоторым оптимизационным требованием. Решению этой задачи, сформулированной в несколько другой форме, посвящён классический ВМ-алгоритм [8, с. 2°8].

В некоторых приложениях, где возникает задача В(и), достаточно узнать значение й(/): например, оно даёт определённую характеристику псевдослучайных последовательностей, используемых при поточном шифровании [9, с. 260]. В других случаях требуется узнать и / - так обстоит дело, к примеру, при более тонком анализе псевдослучайных последовательностей [9, с. 261], а также в задачах декодирования кодов БЧХ [8, с. 211]. Будем считать, что результатом решения задачи В(и) является последовательность /.

Покажем, что задача В(и) имеет решение для любой последовательности и е 1°(2+). Для этого достаточно убедиться, что множество решений уравнения (1) не пусто. Действительно, выбрать из возможных решений уравнения (1) последовательность с минимальной степенью возможно в силу того, что множество Ы°, которому принадлежат степени последовательностей, вполне упорядочено, т.е. в каждом его подмножестве имеется минимальный элемент. Итак, если последовательность и (е 1°(Я+)) является нулевой, то положим/= 0. В случае ненулевой последовательности и В(£))+Ы(н) =0 для любой последовательности / если й(/)=й(и)+1 (см. замечание при определении Вр2). Полагая/= (... , 1, ...), где 1 стоит в

позиции й?(и)+1, получим выполненным уравнение (1).

Поясним принцип работы ВМ-алгоритма из [8] применительно к решению сформулированной выше задачи В(и). Для этого введём следующее обозначение: для любой последовательности V е 1°(2+) и г е N° обозначим ¿г) = Q0, V.

Алгоритм ВМ решает набор задач В(и(г)) последовательно для г е [°, ^и)]2 (на последней итерации алгоритма, при г = ё(и), имеет место совпадение задач В(и(г)) и В(и)). Таким образом, получается набор (необязательно различных) последовательностей {/(г)}^и). На г-й итерации /г) либо полагается равным /г-1) (решение за-

дач В(и1 -1) и В(и(г)) совпадают), либо вычисляется с помощью /^ и/°, гдеу = тах{, | , < г -1 Л^ ф/-1)}.

Многомерная задача Берлекэмпа

п-мерной последовательностью, или п-последовательностью, будем называть отображение и : 2п — Е. Для каждой я-последовательности и определён её носитель: 5ирр(и) = { к е 2п \ ик ф ° }.

Введём 2 отношения порядка на N°. Частичный

порядок <Р определим соотношением т <Р к ^ , т1 < к,-.

В качестве 2-го отношения порядка можно взять любой мономиальный порядок <, т.е. такой полный

V u, v, w е N0

линейный порядок на N°, что и < V ^ и + w < V + w (см. [1°, с. 7]). Под операцией + подразумевается покоординатная сумма элементов

(«точек») N0. Например, < можно определить так:

m < к <

•(^<£к,) v(C£тг к,)л

л(3/ V/: Ц < /) ^ ((т, = к,) л т < к])))).

Всюду далее мы предполагаем фиксированным некоторый мономиальный порядок <. Запись к < т означает (к < т) V (к = т).

Введём обозначения для линейных пространств финитных последовательностей: и : И1 —>

— Е | ^ирр(и) | < ® }, 1°(1+п) = { и е 1°(2п) | ик = ° для

к е 1п \ N00 }.

Для каждой п-последовательности и из 1°(Я+п), отличной от тождественно нулевой, определим степень и: ё(и) = тах{к е Я | ик ф 0}, где максимум берётся по отношению <. Положим ё(°) = -да. Если Е с 1°(Я+п) -конечно, то ё(Е) = { й(/) |/ е Е }.

Оператор сдвига в направлении к е N° определя-

i°(Z") ^ l0(Z"),

ется так: тк : I ) - I ), (тк _

Для любой п-последовательности / е 1°(Я+п) опре-

° п °

(тк u)j = uj - k'

р0/

делим оператор Ганкеля Н(/) : 1°(Яп) — 1°(Яп) по формуле (н(/)и)] = х Лил+к .

keZ n

Введём семейство проекторов: Qk) m : i°(Z") ^ l0(Z+n),

к, m е N0n по формуле

i ^ j к Sp j < m,

ил+к, к <Р .

[0, л е Zп \ {/1 к <Р I < да},

где и е 1°(Яп). Заметим, что множество {] | к <Р] < т} может быть пусто для некоторых значений к, т. В таких случаях полагаем Qkt т = О.

Для каждой п-последовательности / е 1°(2+п) определим семейство линейных операторов, зависящих

от двух параметров к, т е N0° :

Bkm): l0(Z+n) ■

■ l0(Z+n), ßkm u = Qk, m Tk H® u.

Пусть В = {«(/)}^ с N° . Будем говорить, что В -множество гиперболического типа, если выполнено условие: «(1) <Р s() ^ , = у.

Задача Вп. Пусть дана п-последовательность и е 1°(Я+п). Требуется найти такое упорядоченное множество Е = {/(/)}^0 с 1°(Я+п), что.

{А')

В1 и = 0, 1 <' < I,

а (/«), а (и)

b) С(¥) - множество гиперболического типа;

c) V Я е 10^+п) : В^(и)и = 0 ^3 I: / <р Сф.

В одномерном случае оптимизационное требование - минимизация величины с (/) - формулировалось достаточно просто, так как величина С(/ принадлежала множеству N0, в котором имеется естественный полный порядок, в многомерном - работа ведётся в , где очевидным образом определяется только частичный порядок <Р. Минимизация проводится относительно этого частичного порядка (требования (Ь, с)). По этой же причине рассматривается набор операторных уравнений, а не одно уравнение: частично упорядоченное множество разбивается на несколько подмножеств, в каждом из которых имеется свой минимум.

Полный порядок < вводится на с определённой долей произвола и служит исключительно для того, чтобы определять степени последовательностей. Авторам не известны способы проведения минимизации относительно этого порядка. Если бы удалось сформулировать и решить такую задачу, то она, вероятно, состояла бы в нахождении единственной п-последовательности /.

Теоретико-операторная версия BMS-алгоритма

Представим версию ВМЗ--алгоритма [6], основанную на теоретико-операторном подходе.

Определим операцию взятия покомпонентного максимума 2 точек т, к е И1: тах(т, к) = (тах(т1, к1), ..., тах(тп, к,)).

Отметим, что определённый выше на N0 порядок <Р естественным образом распространяется на 21 и связан с операцией максимума: (т <Р тах(т, к)) Л (к <Р тах(т, к)).

Полный порядок < на позволяет для каждой данной точки г е N4 единственным образом определить непосредственно следующую за ней точку г е И".

Для данных и, / е 1°^+п) последовательность

B

(f)

iНе можете найти то, что вам нужно? Попробуйте сервис подбора литературы.

d (f ),d (u)

будем записывать кратко B(f)u.

Пусть m e Zn, Em = {к e Z | к <P m}. Множеству F с l0(Z+n) сопоставим множества точек цF) = у ( , A(F) = \ 2(F), C(F) =

f eF

тах<Р Д(¥).

Как и ВМ-алгоритм, BMS-алгоритм решает последовательность задач Бп(иг), 0 <Р г < С(и), где иг = Q0,ru.

Увеличение г ведётся в порядке, заданном <. Множество ', которое должно стать решением задачи В" (иг), строится на основе ¥г) и некоторого множества G(г) с ио</<ГР, обладающего свойством:

V g е G(r) 3 s :

(s < r) Л (B(g)us = 0) Л (B(g) u * ф 0) Л Л (s - d(g) е C(F-r))). (2)

Алгоритм решения задачи B"(u).

1. Положим F={/1) = (..., 0 , (f\ = 1, 0, ...) }, G=0, F-0, r := 0.

2. Для каждой последовательности f из F положить df := (B(f)u)r.

Ffaii-= {f e F | df ф 0};

Fbroke:= {f e Ffan | $ c e C(F): r - с <p d(f) }; D":= {max(d(f), r - с) |f e Fbmke, c e C(F) }; D':= min<PD"; D:= min<P(E(F)\rr).

3. Для каждой последовательности f e Ffail \ Fbroke положить h :=f - df (rdf _ (r _ с) g) и добавить h в F'. Последовательность g определена из условия: r-- d(f) <P s - d(g) (s соответствует g по (2)). Для каждой пары (f g) e Fbroke x G, такой что d' := max(d(f), r - (s --d(g))) e D', положить h := Td - f - dg и добавить h в F'.

Для каждого d e D, если $ d'e D': d' <P d, то для каждой f e Fbroke, такой что d(f) <P d, положить h := Td- f и добавить h в F'.

4. F := (F \ Ffail) u F';

G' := { g e G | 3 fe FJroke: s - d(g) <p r - d(f) }; G := (G \ G') u {df-1 f | f e Fbmke }.

5. r = r . Если r < d(u), переход на шаг 2, иначе остановка алгоритма.

Литература

1. Берлекэмп Э. Алгебраическая теория кодирования. М.,

1971. 478 с.

2. Massey J.L. Shift Register Synthesis and BCH Decoding

// IEEE Trans. Inform. Theory. 1969. Vol. IT-15, № 1. P. 122-128.

3. Куракин В.Л. Алгоритм Берлекэмпа-Месси над комму-

тативными артиновыми кольцами главных идеалов // Фундаментальная и прикладная математика. 1999. Т. 5, вып. 4. C. 1061-1101.

4. Sakata S. Finding a minimal set of linear recurring relations

capable of generating a given finite two-dimensional array // J. Symb. Comp. 1988. Vol. 5. P. 321-337.

5. Sakata S. Extension of the Berlekamp-Massey algorithm to

N dimensions // Inform. and Comput. 1990. Vol. 84, № 2. P. 207-239.

6. Sakata S. The BMS algorithm and Decoding of AG Codes

// Grobner bases, coding, and cryptography / M. Sala et al. (ed.). Berlin, 2009. P. 143-163.

7. Маевский А.Э., Пеленицын А.М. Реализация программ-

ного алгебро-геометрического кодека с применением алгоритма Сакаты // Изв. ЮФУ. Технические науки. 2008. № 8. С. 196-198.

8. Блейхут Р. Теория и практика кодов, контролирующих

ошибки: пер. с англ. М., 1986. 576 с.

9. Основы криптографии. 3-е изд. / А.П. Алферов [и др.]

М., 2005. 480 с.

10. CoxD.A., Little J.B., O'Shea D.B. Using Algebraic Geome-

try. Second Edition. Berlin, 2005. 496 p.

Поступила в редакцию

10 июня 2010 г.

i Надоели баннеры? Вы всегда можете отключить рекламу.