12.5. ЦИКЛИЧНОСТЬ УДЛИНЕННЫХ КОДОВ ГОППЫ, ИСПРАВЛЯЮЩИХ ДВЕ ОШИБКИ
В данном параграфе доказывается, что некоторые расширенные двоичные коды Гоппы, исправляющие две ошибки, являются циклическими (обобщение примера 1 из § 12.3). Для этого находится группа подстановок, относительно которой код инвариантен, а затем показывается, что одна из этих подстановок состоит из единственного цикла.
Для рассматриваемых кодов многочлен Гоппы
является квадратным многочленом с различными корнями, а множество
состоит из всех элементов поля
не являющихся корнями
Следовательно,
-код, исправляющий две ошибки. Возможны два случая, зависящих от того, приводим или неприводим многочлен
. В соответствии с теоремой 16 и упражнением 6 гл. 9 многочлен
может быть записан в виде
где
— элемент поля
со следом, равным
неприводим, и со следом, равным 0, если
приводим. Пусть
расширенный код, получаемый из
добавлением общей проверки на четность, а его координаты перенумерованы элементами множества
Таким образом, блоковая длина кода
равна
если
неприводим, и
если
приводим.
Сначала рассмотрим неприводимый случай.
Теорема 10. Пусть
определенный выше расширенный
-код Гоппы, исправляющий две ошибки, где
-неприводимый многочлен над
Тогда код
инвариантен относительно следующей группы
состоящей из
подстановок:
где
для всех
(Дополнительно о группе
см. следующую теорему.)
Доказательство, (i). Докажем прежде всего, что Код
инвариантен относительно подстановок
(Заметим,
Кодовыми словами являются
Этот [8, 2, 5]-код на самом деле эквивалентен коду Гоппы, рассмотренному в примере 1 из § 12.3.
Упражнения. (14). Показать, что код Сривэставы (при
является кодом Гоппы, и, следовательно, для двоичных кодов Сривэставы
(15). Показать, что двоичный код Сривэставы (12.53) при
является
-кодом и что минимальное расстояние дуального ему кода равно 4.
(16). Показать, что двоичный код Сривэставы с
является
-кодом и что минимальное расстояние дуального ему кода равно 5.
(17). Доказать, что при
обобщенные коды Сривэставы являются кодами МДР. Эти коды иногда называются кодами Габидулина.
(18). Пусть
двоичный примитивный обобщенный код Сривэставы с
для всех
Доказать, что при
код определяется однозначно и равен примитивному коду БЧХ в узком смысле.
(ii). Доказать, что при
код
также определяется однозначно и что его расширение
инвариантно относительно транзитивной группы подстановок.
(19). Доказать следующие свойства для двоичных непримитивных обобщенных кодов Сривэставы с параметрами:
примитивный элемент поля
различные элементы поля
ненулевые элементы поля
.
(i). Строки подматриц
в (12.51) являются избыточными. Следовательно, матрица
может быть выбрана в виде правой части равенства (12.52) с заменой на а.
(ii). Код с проверочной матрицей (12.54) является кодом этого типа.
затем
представляется матрицей
Например,
представляется матрицей
Заметим, что
так что
Пусть
— группа, порождаемая подстановками
для всех
Из равенств (12.38) и
следует, что
и что порядок группы
равен
Остается доказать, что группа, порожденная группой
и подстановкой С, задается (12.33). Это следует из равенства
Упражнение. (10). Доказать, что
Докажем теперь, что код
эквивалентен циклическому коду.
Теорема 11. (Берлекэмп и Морено). Пусть, как и в теореме
— расширенный неприводимый двоичный код Гоппы, исправляющий две ошибки. Группа
задаваемая (12.33), содержит подстановку
которая представляет собой один цикл, содержащий все элементы множества
Следовательно, координаты можно переупорядочить так, чтобы код
стал циклическим.
Доказательство. Элементы множества
можно представить ненулевыми векторами
где
и вектор соответствует элементу
если
и вектор
соответствует элементу
Кроме того, векторы
представляют один и тот же элемент для всех
Действие подстановки
задаваемой (12.37), записывается в виде
Выберем
так, чтобы выполнялось условие
таким образом,
Теперь
является корнем многочлена
следовательно,
по теореме 15 гл. 9. Тогда
и в силу (12.43) и теоремы 15 гл.
лежит в поле
Согласно (12.42) должно выполняться условие
т. е.
Но числа
взаимно просты, так что
является также примитивным корнем степени
из единицы. Следовательно,
является наименьшим целым числом, для которого выполняется равенство (12.44), и, таким образом, подстановка
состоит из единственного цикла. (Заметим, что равенство (12.41) справедливо при
Согласно § 9.4 любой циклический код длины
является реверсивным. [Код (12.19) именно
Поэтому, так как мы знаем из теоремы 11, что
циклический код, отсюда вытекает, что группа автоморфизмов кода
содержит подстановку реверсию R (переводящую
в
при соответствующей нумерации координат и подстановку
(см. § 9.4). Порядок группы автоморфизмов кода
согласно упражнению
равен по меньшей мере
На самом деле (см. упражнение
подстановки
принадлежат группе
и поэтому
в точности совпадает с группой, порожденной подстановками
Конечно, группа автоморфизмов кода
может быть и больше группы
что мы и увидим из приводимых ниже примеров.
Упражнение. (11). (i). Показать, что подстановка
принадлежит группе
фиксирует точку
и переводит
Таким образом, эта подстановка является подстановкой
[Указание. Использовать разложение
(ii). Доказать, что подстановка
является реверсией.
Пример. Для иллюстрации теорем 10 и 11 рассмотрим
-код
задаваемый (12.19) из § 12.3. Этот код, в частности, инвариантен относительно подстановок:
и
Как было показано в § 12.3, следующее переупорядочивание координат:
превращает этот код в циклический. Согласно (12.45) подстановка
для этого кода равна
и через циклы записывается в виде
Согласно теореме 11 этот код инвариантен относительно группы подстановок
порядок которой равен 54. На самом деле этот код инвариантен относительно гораздо большего множества подстановок.
Упражнение. (12). Доказать, что порядок группы автоморфизмов
-кода (12.19) равен 1296.
Применяя теорему 11 к примеру 3 из § 12.3, получаем [17, 8, 6] циклический код, который на самом деле является квадратично-вычетным кодом (см. гл. 16) с группой автоморфизмов порядка 2448.
В качестве третьего примера выберем
Тогда
циклический код с порождающим многочленом
Случай, когда G(z) приводим. Аналогичный результат имеет место для приводимого многочлена над
скажем, для
где
Выберем теперь
координат кода
занумеруем элементами множества
Предполагая и
снова определим подстановки
равенствами (12.34). Это действительно подстановки на множестве
так как
меняют местами
а С просто фиксирует оба этих элемента.
Теорема 12. Если многочлен
приводим, то
расширенный код Гоппы
инвариантен относительно группы
состоящей из
подстановок вида
действующих на множестве
Эта группа содержит подстановку
представляющую собой один цикл, содержащий все элементы множества
Следовательно, код
эквивалентен циклическому коду.
Доказательство. Первое утверждение доказывается точно так же, как и в теореме 10. Заметим, что теперь
Для доказательства второго утверждения надо показать, что в поле
найдется элемент, скажем,
для которого ни при каком
не выполняется равенство
Затем выберем
так, чтобы имело место равенство
Это всегда можно сделать, так как
Тогда
будет наименьшим целым числом, для которого будут выполняться равенства (12.41) и (12.42), что и завершит доказательство.
Итак, остается показать, что существует
для которого равенство (12.47) не выполняется ни при каком
Минимальное
для которого имеет место (12.47), должно быть делителем
Действительно, так как
то
следовательно, в силу (12.47) должно выполняться равенство
где
Но так как
минимально, то
Обозначим через
число корней многочлена
лежащих в поле
при
Так как многочлен
делит многочлен
а последний многочлен имеет в поле
точно
корней (а именно все элементы
за исключением 0 и 1), то и все корни многочлена
также лежат в поле
так что
Число корней многочлена
которые не являются корнями (12.47) ни при каком
равно
где
функция Мебиуса, определенная в гл. 4.
Действительно, если
такой корень, то он будет учтен только в члене, соответствующем
т. е. только один раз. С другой стороны, если
корень многочлена
при
он также является корнем многочлена
для произвольного
такого, что
т. е. число раз его учета в сумме равно:
по теореме 14 гл. 4.
Наконец, опять по теореме 14 гл. 4 величина (12.48) равна:
что и требовалось доказать.