5.3.5. Конечные поля
Определение конечного поля
Ранее в 1.3.2 дано определение поля
как коммутативного кольца с единицей, в котором каждый ненулевой элемент имеет мультипликативный обратный элемент. В теории помехоустойчивых кодов весьма важное значение имеют поля, образованные конечным множеством элементов – так называемые конечные поля Галуа (Galois Field), обозначаемые
. В связи с этим дадим их развернутое определение.
Конечным полем
называется конечное множество элементов, замкнутое по отношению к двум заданным в нем операциям комбинирования элементов. Под замкнутостью понимается тот факт, что результаты операций не выходят за пределы конечного множества введенных элементов. Для конечных полей выполняются следующие аксиомы.
- GF.1. Из введенных операций над элементами поля одна называется сложением и обозначается как
, а другая - умножением и обозначается как
.
- GF.2. Для любого элемента
существует обратный элемент по сложению
и обратный элемент по умножению
(если
) такие, что
и
. Наличие обратных элементов позволяет наряду с операциями сложения и умножения выполнять также вычитание и деление:
,
. Поэтому иногда просто говорят, что в поле определены все четыре арифметические операции (кроме деления на 0).
- GF.3. Поле всегда содержит мультипликативную единицу 1 и аддитивную единицу 0, такие что
, и
для любого элемента поля.
- GF.4. Для введенных операций выполняются обычные правила ассоциативности
,
, коммутативности
,
и дистрибутивности
.
- GF.5. Результатом сложения или умножения двух элементов поля является третий элемент из того же конечного множества.
Аксиомы GF.1 – GF.5 являются общими для полей как с конечным, так и с бесконечным числом элементов. Специфику же конечного поля определяет аксиома GF.5, где ключевыми являются слова «из того же конечного множества».
Требование конечности множества определяет ряд ограничений как на количество элементов поля
, так и на понятия «сложение» и «умножение».
Конечные поля существуют не при любом числе элементов, а только в том случае, если их количество – простое число
или его степень
, где
– целое. В первом случае поле
называется простым, а во втором – расширением
простого поля.
Очевидно, операции комбинирования элементов конечного поля не могут быть обычными сложением и умножением. Выполнение аксиомы GF.5 для простого конечного поля обеспечивается совершением арифметических операций по модулю числа
, которое носит название характеристики конечного поля. Можно убедиться, что в кольце вычетов по модулю
(см. 5.3.1) каждый ненулевой элемент имеет обратный элемент тогда и только тогда, когда
– простое число [25, 26, 33]. Следовательно, кольцо вычетов по модулю простого числа
является простым полем
. Элементами этого поля являются целые числа
. Операции сложения и умножения в таком поле производятся по модулю
. Пример простейшего двоичного поля
приведен в 5.3.3.
Элементами
расширенного поля
могут быть, например, все многочлены степени
или меньше, коэффициенты которых лежат в простом поле
. Число
называется порядком расширенного поля и определяет количество различных многочленов.
Правила сложения и умножения полиномов – элементов расширенного конечного поля получаются из обычных правил сложения и умножения полиномов с последующим приведением результата по модулю некоторого специального многочлена
степени
. Такое приведение эквивалентно делению многочлена результата на
и использованию только остатка.
Очевидно, любые результаты вычислений в поле после приведения по модулю
должны оставаться обратимыми – только в этом случае наша система образует поле. Для этого используемый полином
должен быть неприводимым в поле
, т.е. его нельзя разложить на множители, используя только многочлены с коэффициентами из
. Это означает также, что
не имеет корней в поле
. Аналогом неприводимого полинома является простое число в поле вещественных чисел.
К сожалению, регулярных методов поиска неприводимых полиномов не существует, они обычно определяются перебором. К настоящему времени имеются подробные таблицы неприводимых полиномов [30, 33].
Особым свойством конечных полей является связь между собой всех ненулевых элементов
и возможность выражения каждого из них через один элемент
, называемый примитивным, как некоторую целую степень этого элемента. Множество
ненулевых элементов расширения
образует циклическую мультипликативную группу (см. 5.3.2), т.е. элементы находятся между собой в соотношении
. Примитивных элементов в
может быть несколько.
Построение конечного поля
Построим конечное поле
и его расширение
. Пусть элементами
являются 0 и 1, а элементами
– 16 всевозможных полиномов степени 3 и менее с коэффициентами из
:
.
|
|
Теперь необходимо определить операции над элементами таким образом, чтобы их результаты не давали новых элементов, кроме уже введенных.
В поле
обычные операции умножения (на 0 и 1) и деления (на 1) не выводят результат за пределы множества 0; 1. Однако при сложении и вычитании элементов это требование может уже не выполняться:
;
и т. д. Свойства конечного поля будут, очевидно, соблюдаться, если в качестве операции сложения использовать суммирование по модулю 2
:
причем операции сложения и вычитания в поле
совпадают. Этим мы будем пользоваться в дальнейшем, заменяя, например, полином вида
на
в тех случаях, когда полиномы заданы над полем характеристики 2. Если, однако, характеристика поля
, такая замена неправомерна, и полиномы каждого вида нужно рассматривать самостоятельно.
В поле
операцией, которая может вывести результат за пределы поля, является умножение многочленов. Обычное перемножение может дать полином степени больше 3, не принадлежащий множеству элементов
. Действительно, используя представление полиномов через векторы их коэффициентов [26], а также учитывая (5.9), получим
Поэтому введем дополнительное условие, чтобы
удовлетворял некоторому уравнению степени
, например,
или
. Тогда
;
;
и т.д., а
, т.е. не выходит за пределы поля
.
Нетрудно видеть, что результат проделанного преобразования полинома
эквивалентен вычислению остатка от его деления на полином
, т.е. приведению произведения многочленов по модулю
:
Или
. Делением на полиномы первой степени
и
, и второй степени
,
и
можно убедиться, что рассматриваемый многочлен
неприводим над
, а следовательно, не имеет в нем корней. В противном случае
раскладывался бы на сомножители
и
, ибо корнями в поле
могут быть только 0 или 1.
Для нахождения примитивных элементов поля, как и неприводимых полиномов, приходится прибегать к таблицам. В нашем примере поля
, задаваемого многочленом
, примитивным элементом является
. Последовательно применяя равенства
и
(или, что эквивалентно,
), получим упорядоченное по степеням примитивного элемента
множество элементов
, составляющее конечное поле
.
В табл. 5.2 даны различные представления элементов
поля
, заданного полиномом
, а также полиномом
.
Представление элементов поля по степеням примитивного элемента
удобно, в частности, при умножении элементов друг на друга. Для этого достаточно сложить их степени по модулю
(применительно к табл. 5.2 – по модулю 15). Например,
.
|
|
Прямые вычисления дают то же, но более трудоемко:
Таблица 5.2. Различные представления элементов поля 
Ненулевые элементы поля 
|

|

|
Представление элементов поля через
|
Представление через
|
полином
|
вектор
|
степень 
|
вектор
|
степень 
|

|
1
|

|

|

|
1
|

|

|

|

|

|

|

|

|

|

|

|

|

|

|

|

|

|

|

|

|

|

|

|

|

|

|

|

|

|

|

|

|

|

|

|

|

|

|

|

|

|

|

|

|

|

|

|

|

|

|

|

|

|

|

|

|

|

|

|

|

|

|

|

|

|

|

|

|

|

|

|

|

|

|

|

|

|

|

|

|

|

|

|

|
|
|
|

|
|

|
|
|
|
|
|
|
|
Ненулевые элементы
расположены в порядке нарастания степени примитивного элемента и образуют циклическую группу порядка 15. При этом
,
,
, … ,
и т.д.
Нетрудно убедиться, что примитивным в поле
является не только один элемент
, но и
,
,
и ряд других (предлагается их отыскать самостоятельно), а
и
таковыми не являются.
Основные свойства конечных полей и полиномов
Связь между элементами конечного поля
Все ненулевые элементы
конечного поля
являются степенями одного примитивного элемента:
Порядок элемента поля
Порядком
элемента
конечного поля называется наименьшее значение
, для которого
. Пусть
. Поскольку ненулевые элементы
образуют циклическую группу, порядок элемента
может быть определен из равенства
,
|
|
где
– наибольший общий делитель. Порядки элементов
лежат в пределах от 1 (элемент
) до
(примитивные элементы), но
всегда кратно порядку элемента.
Возведение многочлена над полем
в степень 
Если
– произвольный многочлен, коэффициенты которого лежат в
, то
. Справедливость этого утверждения вытекает из того, что все по парные или многократные произведения в
появляются с коэффициентами, которые делятся на
, и значит, равны 0 в
.
Так для многочлена над полем характеристики
справедливо
, в чем можно убедиться на примере:
,
|
|
Корни полиномов
Ключевым при построении кодов и их декодировании является вопрос о корнях полиномов, соответствующих кодовым комбинациям. Напомним, что из теории полиномов над полем вещественных чисел (не конечных!) известно, что полином степени
всегда имеет
корней, только не все они обязательно лежат в поле вещественных чисел (на вещественной оси). Часть корней может находиться в поле комплексных чисел как некотором расширении поля вещественных чисел.
Известная аналогия этому имеется и в конечных полях. Любой многочлен степени
, в том числе и неприводимый над полем
(не имеющий корней среди элементов этого поля), всегда имеет
корней в расширении
, и этими корнями является часть элементов поля
. Как элементы конечного поля, корни находятся между собой в определенном соотношении. Если
– неприводимый полином с коэффициентами из
и
– его корень, то
также являются его корнями. В поле
корнями неприводимого полинома степени
будут
.
Полиномы 
Для дальнейшего обсуждения процедур кодирования и декодирования полезно иметь в виду следующие свойства многочлена вида
. Для любого элемента
как циклической группы справедливо равенство
. Это означает, что любой из элементов
является корнем уравнения
или, что то же самое, корнем полинома
или
. Нулевой элемент
– корень полинома
, а каждый из ненулевых элементов поля
– один из корней полинома
. Таким образом,
.
|
(5.10)
|
Пусть
– порядок элемента поля
, т.е.
. Следовательно,
– корень полинома
. Если
является также и корнем неприводимого многочлена
, то
делится без остатка на
.
В более общем случае минимальное значение
, для которого произвольный многочлен
без кратных корней делит
, совпадает с наименьшим общим кратным (НОК) порядков корней
.
Многочлен
делится на
только в том случае, если
делится на
. Действительно, если корни
являются также корнями
, то
должно делиться на
.
Циклотомические классы
Каждый из корней
полинома
в поле
есть степень примитивного элемента
. Показатели степеней, соответствующие корням
образуют циклотомический класс чисел
по модулю
, а весь набор показателей степеней примитивного элемента в поле
распадается на не перекрывающиеся циклотомические классы
. Индекс
равен наименьшему из чисел в классе и называется представителем класса по модулю
.
С другой стороны, как отмечалось в 5.3.5, каждый из
ненулевых элементов
поля
является одним из корней полинома
, который, в свою очередь, раскладывается на произведение неприводимых полиномов
меньшей степени. Каждый из циклотомических классов содержит набор показателей степеней примитивного элемента, соответствующих корням одного из полиномов
.
Убедимся в этом на примере полинома
над полем
. Поскольку сложение и вычитание по модулю 2 здесь неразличимы, то записи
и
эквивалентны. Разложение
на неприводимые полиномы
выглядит следующим образом [30]:
.
|
В табл. 5.3 приведено распределение элементов поля
, представленных степенями примитивного элемента
, по циклотомическим классам
с указанием соответствующих им неприводимых полиномов
.
Класс
содержит один элемент,
– два элемента, а классы
,
и
– по четыре элемента. Это значит, что неприводимый над полем
полином, имеющий в качестве корня элемент
поля
, должен быть полиномом первой степени, т.е.
. Корни
и
принадлежат неприводимому полиному 2-й степени, который определяется по известному правилу:
Остальные ненулевые элементы поля
являются корнями неприводимых полиномов
,
,
четвертой степени, вычисляемых аналогичным образом.
Имея в виду связь между корнями одного полинома, часто об его корнях говорят в единственном числе: «неприводимый полином имеет корень...», понимая под корнем один элемент поля, соответствующий, как правило, младшему из чисел циклотомического ряда, называемому его представителем.
Таблица 5.3. Распределение элементов поля
по циклотомическим классам
Корни 
|
Циклотомические классы 
|
Полиномы 
|

|

|

|

|

|

|

|

|

|

|

|

|

|

|

|

|

|

|

|

|

|

|

|

|

|

|

|

|

|

|

|

|

|

|
Минимальные многочлены
Рассмотренное распределение элементов конечного поля по циклотомическим классам позволяет лучше понять следующее важное в теории кодирования понятие. Минимальным многочленом или минимальной функцией элемента
поля
называется многочлен
с коэффициентами из
наименьшей степени, для которого
является корнем, т.е.
. Обсудим его основные свойства.
Прежде всего, очевидно, что минимальный многочлен должен быть неприводимым, иначе он раскладывался бы на полиномы меньшей степени.
Любой другой полином, имеющий тот же корень
, что и минимальный, делится на
. На
делится и полином
, т.к. корнями последнего в соответствии с (5.10) будут все ненулевые элементы поля
. Степень минимального многочлена определяется количеством компонентов циклотомического класса, которому соответствует его корень (табл. 5.3). Действительно, минимальный многочлен, показатели корней которого принадлежат циклотомическому классу
, может быть записан в виде
.
|
(5.11)
|
Для
(см. 5.3.5):
.
|
|
Аналогично для
:
.
|
|
С учетом (5.10) справедливо равенство
,
|
|
где
пробегает все множество классов по модулю
, т.е. многочлен
раскладывается на произведение минимальных многочленов элементов, показатели которых принадлежат каждому из циклотомических классов по модулю
.
Минимальные многочлены элементов
и
равны. В частности, в поле
равны минимальные многочлены элементов
и
. В этом можно убедиться, обратив внимание на тот факт, что элементы
и
всегда соответствуют одному циклотомическому классу (табл. 5.3), а следовательно, принадлежат набору корней одного неприводимого полинома. Более того, между собой равны минимальные многочлены всех элементов, соответствующих одному циклотомическому классу, т.к. любые два соседние из таких элементов находятся в соотношении
и
.
И еще об одном свойстве минимального многочлена, имеющем отношение к нахождению примитивных элементов поля. Минимальный многочлен, корнем которого является примитивный элемент поля, называется примитивным многочленом. Его степень всегда равна
. Для практических приложений важно иметь в виду следующее. В тех случаях, когда неприводимый многочлен
, задающий операции в поле, является также и примитивным многочленом, примитивным элементом поля будет элемент
.
Таблицы неприводимых многочленов [33] обычно содержат сведения о том, какие из многочленов являются примитивными, что позволяет избежать возможных затруднений в определении примитивных элементов поля. В табл. 5.4 приведены примитивные многочлены над
для
от 1 до 20 [3, 30].
Помимо представленных в таблице примитивными являются также полиномы, векторы коэффициентов которых написаны в обратном порядке. Такие полиномы называются двойственными, или взаимными исходным.
Таблица 5.4. Примитивные многочлены до степени 
Это пары
и
;
и
и т.д. Использовавшийся ранее при построении
полином
примитивен, на основании чего в качестве примитивного элемента поля был взят
.
Изоморфизм конечных полей
Расширение конечного поля
может быть задано разными полиномами одинаковых степеней
. В каком соотношении находятся эти поля? Прежде всего, очевидно, ненулевыми элементами любого поля порядка
является тот же полный набор всевозможных многочленов степени
и ниже, отличающийся для разных полиномов
лишь порядком следования элементов
по степеням примитивного элемента.
В теории конечных полей доказывается, что все поля
одного порядка
изоморфны («подобны по форме»), т.е. между
и
существует взаимнооднозначное отображение
друг на друга, сохраняющее операции сложения и умножения. Это означает, что для любых двух элементов
и
из
справедливы соотношения
,
|
(5.12)
|
.
|
(5.13)
|
Нетрудно убедиться, что между полями, построенными на основе неприводимых полиномов
и
(табл. 5.2), существует взаимнооднозначное отображение:
. Простой подстановкой можно убедиться, что при таком отображении сохраняются операции сложения и умножения (5.12) и (5.13). Например, для сложения
,
|
|
.
|
|
Аналогично для умножения
,
|
|
.
|
|