86284 (Построение порождающего полинома циклического кода по его корням (степеням корней))

2016-07-29СтудИзба

Описание файла

Документ из архива "Построение порождающего полинома циклического кода по его корням (степеням корней)", который расположен в категории "". Всё это находится в предмете "математика" из , которые можно найти в файловом архиве . Не смотря на прямую связь этого архива с , его также можно найти и в других разделах. Архив можно найти в разделе "контрольные работы и аттестации", в предмете "математика" в общих файлах.

Онлайн просмотр документа "86284"

Текст из документа "86284"

Оглавление

Предисловие

1. Краткие теоретические сведения

1.1 Полиномиальное представление двоичных чисел

1.2 Циклический код

1.3 Поле

1.4 Поля Галуа

1.4.1 Примитивный элемент поля и циклическая группа

1.4.2 Модульная арифметика и деление полиномов

1.4.3 Построение конечного поля

1.4.4 О корнях полиномов и минимальных полиномах

2. О циклических кодах и корнях порождающего полинома с точки зрения конечных полей

2.1 Нахождение порождающего полинома по последовательности степеней корней

Заключение

Список литературы

Приложения

Предисловие

На сегодняшний день одна из самых крупных таблиц содержащих параметры двоичного циклического кода представлена в [1] и часть таблиц в приложении. Построение кода, при помощи данных указанных в таблице, не имея представлений о математическом описании циклических кодов проблематично. Данная работа будет полезна тем, кому необходимо использовать циклические коды в прикладных целях, а, следовательно, нет необходимости глубоко изучать их структуру. В рамках данной работы не рассматриваются алгоритмы кодирования и декодирования, а только алгоритм построения порождающего полинома циклического кода.

1. Краткие теоретические сведения

1.1 Полиномиальное представление двоичных чисел

Весьма удобным является представление двоичных чисел в виде полиномов степени n -1, где n – количество разрядов числа.

Идея представления числа в виде полинома состоит в следующем – основание системы счисления заменяется некоторой фиктивной переменной, например x. Степень этой переменной будет соответствовать номеру разряда числа, а коэффициент значению самого разряда. Рассмотрим пример: Запишем двоичное число и его разложение в виде степеней двойки (аналогично переводу в десятичную систему счисления): . Теперь, заменим двойку на фиктивную переменную x, при этом получим выражение: .

Исключив элементы с нулевым коэффициентом, получим полиномиальное представление числа: .

1.2 Циклический код

Циклические коды относят к классу линейных кодов. Для обеспечения коррекции ошибок к блоку информационных разрядов добавляется блок контрольных разрядов. Значения контрольных разрядов формируются путем некоторых линейных операций над информационными разрядами, поэтому такие коды называются линейными. Линейный код называется циклическим, если слово принадлежит данному коду, и слово также принадлежит этому коду. Проще говоря, если циклически сдвинуть кодовую комбинацию, то в результате также получится кодовая комбинация, принадлежащая данному коду. Это самое важное свойство циклических кодов. Циклический код задается при помощи порождающего полинома g(x). На сегодняшний день существуют таблицы с параметрами кода - длина, мощность корректирующая способность и корни порождающего полинома. Порождающий полином, как правило, представлен в виде степеней его корней. Обозначим за n длину кода, если длину n можно представить в виде , где m – целое положительное число, то такой код называют кодом с тривиальной длиной.

1.3 Поле

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

  1. Операция умножения обозначается как , сложение, как .

  2. Результатом умножения и сложения элементов поля является элемент также из этого поля.

  3. Для любого элемента поля не равного нулю, существует обратный элемент по сложению и умножению, так что и

  4. Поле всегда содержит мультипликативную единицу 1, так что и аддитивную единицу 0, так что .

  5. Для умножения и сложения выполняются правила ассоциативности, коммутативности и дистрибутивности.

1.4 Поля Галуа

Конечное поле или поле Галуа – это поле (далее конечное поле обозначено, как GF(p)), содержащее конечное число элементов. Нужно отметить, что аксиомы 1 – 5, справедливы, как для поля с конечным числом элементов, так и с бесконечным, но главное отличие конечных полей от бесконечных определяет аксиома 2. Из этого вытекает, что на понятие «умножение» и «сложение» накладывается ряд ограничений. Выполнение аксиомы 2 осуществляется выполнением по модулю некоторого числа p, называемым характеристикой поля.

Конечные поля существуют не при любом числе элементов, а только когда количество элементов поля – простое число p или его степень pm, где m – целое положительное число. В первом случае поле называется простым и обозначается, как GF(p), а во втором называется расширением простого поля и обозначается GF(pm) .

Рассмотрим некоторое поле GF(p). Такое поле содержит p элементов, операции сложения и умножения над элементами этого поля производятся по модулю числа p. Рассмотрим расширение этого поля - GF(pm). Элементами расширения поля будут являться полиномы степени и меньше, с коэффициентами из поля GF(p). Приведем аналогию - простое поле содержит буквы алфавита, а расширение этого поля содержит слова определенной длины, составленные по некоторым правилам из букв, лежащих в основном поле.

1.4.1 Примитивный элемент поля и циклическая группа

Основное свойство конечных полей – это связь между собой ненулевых элементов поля и возможность их выражения через степень элемента , называемого примитивным, это означает, что любой элемент поля можно представить, как степень примитивного элемента, т.е. и т.д. Множество элементов расширения поля образуют циклическую мультипликативную группу. Это означает, что все элементы расширения находятся в следующем отношении: . Таким образом, умножая элемент на себя можно получить любой элемент расширения поля (мультипликативность), но очевидно, что правило умножения должно быть специфическим, иначе, невозможно обеспечить нужную степень полинома и обеспечить цикличность, т.е. после умножений начнется повторение.

Правило умножения в расширении поля аналогично правилу умножения многочленов с последующим приведением по модулю некоторого специального полинома степени m. Приведение означает деление результата умножения на полином и использованию только остатка от деления, нужно отметить, что при делении сложение производится по правилам для основного поля, т.е. сложение проводится по модулю числа p.

Выше было сказано, что полином должен быть специальным, это означает, что любые операции, выполняемые по модулю должны оставаться обратимыми, иначе система не образует поле. Таким образом, полином должен быть неприводимым в поле GF(p), т.е. его нельзя разложить на множители, используя только многочлены с коэффициентами из поля GF(p). Аналогом неприводимого полинома является простое число. На сегодняшний день не существует систематического способа поиска неприводимых полиномов. Наиболее обширная таблица неприводимых полиномов представлена в книге [1].

Резюме: Расширение поля содержит полиномы степени m-1 и меньше, с коэффициентами из основного поля. Любой элемент расширения поля можно получить, как степень примитивного элемента . Умножение проводится по модулю неприводимого над полем GF(p) полиномом. Описанная выше теория может показаться запутанной, но ниже будет дан пример, который поможет понять изложенные теоретические сведения.

1.4.2 Модульная арифметика и деление полиномов

Рассмотрим, сложение и умножение по модулю некоторого числа p, это означает проведение операции по обычным правилам, а затем деление результата на число p. Например, умножим 7 на 3 по модулю 10. Обозначим проведение операции по модулю, как «mod» . Теперь получившийся результат, разделим на 10 и возьмем остаток, остаток равен единице, следовательно . Но так как, для работы с двоичными циклическими кодами нам понадобится конечное поле GF(2), которое содержит два элемента – нуль и единицу, то рассмотрим сложение по модулю два. Сумма по модулю два обозначается знаком .

1 1 = 0

1 0 = 1

0 0 = 0

0 1 = 1

Нетрудно убедиться, что если сложить две единицы и разделить на два, то остаток от деления будет равен нулю, а если сложить единицу с нулем и разделить на два, то остаток будет равен единице.

Деление полиномов.

Положим, что коэффициенты в полиномах лежат в поле GF(2), следовательно, все операции будут проводиться по модулю два. Рассмотрим деление полинома на полином . Алгоритм деления аналогичен простому делению многочлена на многочлен в столбик, с той лишь разницей, что вычитание на каждом шаге деления будет заменено суммой по модулю два.

Рассмотрим деление пошагово:

Не трудно убедиться, что на первом шаге делимое можно взять два раза, то есть умножить делимое на : . Теперь если сложить и по модулю два, то так как присутствует в обоих операндах, то эти элементы сокращаются, так как они одинаковые. Итак, результат первого шага деления:

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

Итак, - частное от деления, а - остаток.

Умножение полиномов.

Умножим полином на полином .

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

Вычитание полиномов аналогично сложению, вычитание заменяется суммированием.

1.4.3 Построение конечного поля

Определение: Многочленом над конечным полем называют многочлен, коэффициенты которого лежат в .

Построение порождающего полинома циклического кода напрямую связано с расширением конечного поля, рассмотрим построение расширения поля. Так как в рамках данной работы рассматриваются двоичные циклические коды, то не трудно догадаться, что основное поле Галуа будет состоять из двух элементов – нуля и единицы - GF(2). Построим расширение поля GF(24), это поле пригодно для построения циклического кода длины 15, так как 24-1 = 15. Для построения расширения поля нужно выбрать полином по модулю которого оно будет построено, исходя из того, что m = 4 необходим полином четвертой степени. Из таблицы в книге [1] или таблицы из приложения выберем полином . Примитивный элемент поля – x. Напомним, что расширение поля является мультипликативной группой примитивного элемента , в нашем случае это x, а также умножение будет проводиться по модулю неприводимого полинома . Начнем со степени элемента x равной 0.

Свежие статьи
Популярно сейчас
Почему делать на заказ в разы дороже, чем купить готовую учебную работу на СтудИзбе? Наши учебные работы продаются каждый год, тогда как большинство заказов выполняются с нуля. Найдите подходящий учебный материал на СтудИзбе!
Ответы на популярные вопросы
Да! Наши авторы собирают и выкладывают те работы, которые сдаются в Вашем учебном заведении ежегодно и уже проверены преподавателями.
Да! У нас любой человек может выложить любую учебную работу и зарабатывать на её продажах! Но каждый учебный материал публикуется только после тщательной проверки администрацией.
Вернём деньги! А если быть более точными, то автору даётся немного времени на исправление, а если не исправит или выйдет время, то вернём деньги в полном объёме!
Да! На равне с готовыми студенческими работами у нас продаются услуги. Цены на услуги видны сразу, то есть Вам нужно только указать параметры и сразу можно оплачивать.
Отзывы студентов
Ставлю 10/10
Все нравится, очень удобный сайт, помогает в учебе. Кроме этого, можно заработать самому, выставляя готовые учебные материалы на продажу здесь. Рейтинги и отзывы на преподавателей очень помогают сориентироваться в начале нового семестра. Спасибо за такую функцию. Ставлю максимальную оценку.
Лучшая платформа для успешной сдачи сессии
Познакомился со СтудИзбой благодаря своему другу, очень нравится интерфейс, количество доступных файлов, цена, в общем, все прекрасно. Даже сам продаю какие-то свои работы.
Студизба ван лав ❤
Очень офигенный сайт для студентов. Много полезных учебных материалов. Пользуюсь студизбой с октября 2021 года. Серьёзных нареканий нет. Хотелось бы, что бы ввели подписочную модель и сделали материалы дешевле 300 рублей в рамках подписки бесплатными.
Отличный сайт
Лично меня всё устраивает - и покупка, и продажа; и цены, и возможность предпросмотра куска файла, и обилие бесплатных файлов (в подборках по авторам, читай, ВУЗам и факультетам). Есть определённые баги, но всё решаемо, да и администраторы реагируют в течение суток.
Маленький отзыв о большом помощнике!
Студизба спасает в те моменты, когда сроки горят, а работ накопилось достаточно. Довольно удобный сайт с простой навигацией и огромным количеством материалов.
Студ. Изба как крупнейший сборник работ для студентов
Тут дофига бывает всего полезного. Печально, что бывают предметы по которым даже одного бесплатного решения нет, но это скорее вопрос к студентам. В остальном всё здорово.
Спасательный островок
Если уже не успеваешь разобраться или застрял на каком-то задание поможет тебе быстро и недорого решить твою проблему.
Всё и так отлично
Всё очень удобно. Особенно круто, что есть система бонусов и можно выводить остатки денег. Очень много качественных бесплатных файлов.
Отзыв о системе "Студизба"
Отличная платформа для распространения работ, востребованных студентами. Хорошо налаженная и качественная работа сайта, огромная база заданий и аудитория.
Отличный помощник
Отличный сайт с кучей полезных файлов, позволяющий найти много методичек / учебников / отзывов о вузах и преподователях.
Отлично помогает студентам в любой момент для решения трудных и незамедлительных задач
Хотелось бы больше конкретной информации о преподавателях. А так в принципе хороший сайт, всегда им пользуюсь и ни разу не было желания прекратить. Хороший сайт для помощи студентам, удобный и приятный интерфейс. Из недостатков можно выделить только отсутствия небольшого количества файлов.
Спасибо за шикарный сайт
Великолепный сайт на котором студент за не большие деньги может найти помощь с дз, проектами курсовыми, лабораторными, а также узнать отзывы на преподавателей и бесплатно скачать пособия.
Популярные преподаватели
Добавляйте материалы
и зарабатывайте!
Продажи идут автоматически
5167
Авторов
на СтудИзбе
437
Средний доход
с одного платного файла
Обучение Подробнее