Jump to content

Полиномиальный код

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

Определение

[ редактировать ]

Исправить конечное поле , элементы которого мы называем символами . Для целей построения полиномиальных кодов мы идентифицируем строку символы с полиномом

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

Рассмотрим полиномиальный код над с , и генераторный полином . Этот код состоит из следующих кодовых слов:

Или написано явно:

Поскольку полиномиальный код определен над двоичным полем Галуа , полиномиальные элементы представлены как сумма по модулю -2, а окончательные полиномы:

Эквивалентно, выраженные в виде строк двоичных цифр, кодовые слова:

Это, как и всякий полиномиальный код, действительно является линейным кодом , т. е. линейные комбинации кодовых слов снова являются кодовыми словами. В таком случае, когда поле имеет вид GF(2), линейные комбинации находятся путем выполнения XOR кодовых слов, выраженных в двоичной форме (например, 00111 XOR 10010 = 10101).

Кодирование

[ редактировать ]

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

Некоторые авторы, например (Lidl & Pilz, 1999), обсуждают только отображение как присвоение слов данных кодовым словам. Однако это имеет тот недостаток, что слово данных не появляется как часть кодового слова.

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

где имеет степень меньше, чем . Кодовое слово, соответствующее слову данных тогда определяется как

Обратите внимание на следующие свойства:

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

Для приведенного выше кода с , и генераторный полином , мы получаем следующее присвоение слов данных кодовым словам:

  • 000 ↦ 000 00
  • 001 ↦ 001 11
  • 010 ↦ 010 01
  • 011 ↦ 011 10
  • 100 ↦ 100 10
  • 101 ↦ 101 01
  • 110 ↦ 110 11
  • 111 ↦ 111 00

Декодирование

[ редактировать ]

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

Если предположить, что кодовое слово не содержит ошибок, то систематический код можно декодировать, просто убрав цифры контрольной суммы.

Если есть ошибки, то перед декодированием следует выполнить исправление ошибок. Существуют эффективные алгоритмы декодирования для конкретных полиномиальных кодов, таких как коды BCH .

Свойства полиномиальных кодов

[ редактировать ]

Как и для всех цифровых кодов, возможности полиномиальных кодов по обнаружению и исправлению ошибок определяются минимальным расстоянием Хэмминга кода. Поскольку полиномиальные коды являются линейными кодами, минимальное расстояние Хэмминга равно минимальному весу любого ненулевого кодового слова. В приведенном выше примере минимальное расстояние Хэмминга равно 2, поскольку 01001 — это кодовое слово, и не существует ненулевого кодового слова с установленным только одним битом.

Более конкретные свойства полиномиального кода часто зависят от конкретных алгебраических свойств его порождающего полинома. Вот несколько примеров таких свойств:

  • Полиномиальный код является циклическим тогда и только тогда, когда порождающий полином делит .
  • Если полином генератора является примитивным , то результирующий код имеет расстояние Хэмминга не менее 3, при условии, что .
  • В кодах BCH полином генератора выбирается так, чтобы иметь определенные корни в поле расширения, таким образом, чтобы достичь высокого расстояния Хэмминга.

Алгебраическая природа полиномиальных кодов с умело выбранными порождающими полиномами также часто может использоваться для поиска эффективных алгоритмов исправления ошибок. Это относится к кодам BCH .

Конкретные семейства полиномиальных кодов

[ редактировать ]
  • Циклические коды - каждый циклический код также является полиномиальным кодом; популярным примером является код CRC .
  • Коды BCH – семейство циклических кодов с высоким расстоянием Хэмминга и эффективными алгебраическими алгоритмами исправления ошибок.
  • Коды Рида – Соломона – важное подмножество кодов БЧХ с особенно эффективной структурой.
  • У. Дж. Гилберт и У. К. Николсон: Современная алгебра с приложениями , 2-е издание, Wiley, 2004.
  • Р. Лидл и Г. Пильц. Прикладная абстрактная алгебра, 2-е издание. Уайли, 1999.
Arc.Ask3.Ru: конец переведенного документа.
Arc.Ask3.Ru
Номер скриншота №: dedb74124521bf4f11cd940d87411d92__1698100680
URL1:https://arc.ask3.ru/arc/aa/de/92/dedb74124521bf4f11cd940d87411d92.html
Заголовок, (Title) документа по адресу, URL1:
Polynomial code - Wikipedia
Данный printscreen веб страницы (снимок веб страницы, скриншот веб страницы), визуально-программная копия документа расположенного по адресу URL1 и сохраненная в файл, имеет: квалифицированную, усовершенствованную (подтверждены: метки времени, валидность сертификата), открепленную ЭЦП (приложена к данному файлу), что может быть использовано для подтверждения содержания и факта существования документа в этот момент времени. Права на данный скриншот принадлежат администрации Ask3.ru, использование в качестве доказательства только с письменного разрешения правообладателя скриншота. Администрация Ask3.ru не несет ответственности за информацию размещенную на данном скриншоте. Права на прочие зарегистрированные элементы любого права, изображенные на снимках принадлежат их владельцам. Качество перевода предоставляется как есть. Любые претензии, иски не могут быть предъявлены. Если вы не согласны с любым пунктом перечисленным выше, вы не можете использовать данный сайт и информация размещенную на нем (сайте/странице), немедленно покиньте данный сайт. В случае нарушения любого пункта перечисленного выше, штраф 55! (Пятьдесят пять факториал, Денежную единицу (имеющую самостоятельную стоимость) можете выбрать самостоятельно, выплаичвается товарами в течение 7 дней с момента нарушения.)