Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
КЛ_ПА.doc
Скачиваний:
9
Добавлен:
01.04.2025
Размер:
4.58 Mб
Скачать

Итак, в матрице (2) любые столбцов линейно независимы, следовательно, по теореме 3 лекции 13 соответствующий код исправляет ошибок лекция 15 Циклические коды

1. Циклические коды

Линейный код называется циклическим, если вместе с любым словом он содержит все циклические сдвиги этого слова, т.е. слова

Для описания циклических кодов введем на следующую структуру: двоичное слово будем рассматривать как набор коэффициентов многочлена степени , а сам многочлен считать элементом кольца вычетов по модулю многочлена :

.

При этом соответствии операция циклического сдвига слова

переходит в операцию умножения на в кольце :

.

Таким образом, если – циклический код, то вместе с в будут входить многочлены

а так как – линейный код, то и любые линейные комбинации этих многочленов, т.е. произвольный многочлен вида .

Следовательно, на языке многочленов определение циклического кода можно дать следующим образом:

множество многочленов называется циклическим кодом, если выполнены следующие 2 условия

1°. ;

2°. .

Если – какое-либо кольцо, то множество его элементов , удовлетворяющее условиям 1° и 2°, называется идеалом. Таким образом, циклический код – это идеал кольца .

Примером идеала является совокупность всевозможных кратных некоторого фиксированного элемента из кольца:

.

Например, в кольце целых чисел идеал образует совокупность четных чисел (кратные элемента 2), а в кольце многочленов – совокупность многочленов, у которых свободный член равен нулю (кратные многочлена ). Идеалы такого вида называются главными. Если в кольце каждый идеал является главным, то его называют кольцом главных идеалов.

Оказывается, что все рассматриваемые нами кольца – кольцо целых чисел, кольцо многочленов над полем, а также кольца вычетов по модулю любого элемента кольца – являются кольцами главных идеалов.

Убедимся в сказанном для кольца , в других случаях доказательство аналогичное.

Пусть – идеал кольца . Заметим, что идеалом является нулевой идеал, состоящий из одного нуля. Отбрасывая этот тривиальный случай, найдем в ненулевой многочлен наименьшей степени. Пусть – произвольный многочлен из . Разделим на :

.

В силу условий 1° и 2° определения идеала, многочлен входит в . Так как его степень меньше степени , то . Следовательно, кратен .

Итак, для любого циклического кода существует многочлен , такой, что состоит из всевозможных кратных многочлена :

.

Многочлен называется порождающим многочленом циклического кода.

Поскольку , всегда входит в код, то многочлен также кратен . Следовательно, порождающий многочлен циклического кода с длиной слов является делителем многочлена .

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

Как было показано ранее, каждый многочлен из имеет корни в некотором конечном поле характеристики 2.

Для рассматриваемого многочлена такое поле можно найти следующим образом. Назовем мультипликативным порядком числа 2 по модулю наименьшее положительное число такое, что ( ).

Пример. Найдем мультипликативный порядок 2 по модулю 23. Имеем

Следовательно, порядок 2 по модулю 23 равен 11. Действительно, .

Пусть – мультипликативный порядок 2 по модулю . Рассмотрим поле из элементов. Примитивный элемент этого поля обладает тем свойством, что все его степени различны для , a . Если , то элемент будет обладать тем свойством, что все его степени различны для , а . Другими словами, – примитивный корень -ой степени из единицы и

.

Оказывается, что возможности исправления ошибок циклическим кодом определяются корнями порождающего многочлена.

Основная теорема. (Боуз, Чаудхури, Хоквингем). Циклический код с длиной слов исправляет ошибок, если элементы

,

где – примитивный корень -ой степени из единицы, являются корнями порождающего многочлена кода.

Доказательство. Как говорилось выше, кодовое расстояние линейного и, в частности, циклического кода равно минимальному весу ненулевых кодовых точек. Поэтому, необходимо убедиться, что все ненулевые кодовые слова имеют не менее единичных координат или что соответствующий многочлены имеют по крайней мере ненулевых коэффициентов. Пусть – ненулевой многочлен из кода

(т.е. , остальные коэффициенты равны нулю). Покажем, что .

Многочлен как кратное порождающего многочлена кода имеет своими корнями перечисленные в формулировке теоремы элементы:

(1)

Обозначим слагаемые в первом соотношении через

.

Заметим, что все эти элементы различны:

.

Последнее невозможно, так как – примитивный корень из единицы.

Соотношения (1) означают, что суммы нечетных степеней элементов вплоть до -ой равны нулю. Покажем, что и суммы четных степеней этих элементов (вплоть до -ой) равны нулю. Это вытекает из правила возведения в квадрат в поле характеристики 2:

(Удвоенные произведения отсутствуют, так как ).

Возводя соотношение

в квадрат, получаем

.

Еще раз возведя в квадрат, получим, что сумма 4-х степеней равна нулю, а возведя в квадрат сумму кубов, получим что сумма 6-х степеней элементов равна нулю и т. д. Отсюда

(2)

Пусть векторы определяются следующим образом:

Тогда в силу соотношений (2)

.

Это означает, что векторы линейно зависимы. При это невозможно, так как составленный из первых строк минор

Это известный определитель Вандермонда. Теорема доказана.

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]