- •Введение
- •1. Энтропия источников сообщений
- •1.1. Дискретные ансамбли и источники
- •1.2. Количество информации в дискретном сообщении. Энтропия ансамбля
- •1.3. Условная информация. Условная энтропия. Совместная энтропия дискретного источника
- •1.4. Энтропия дискретного стационарного источника на сообщение
- •1.5. Избыточность источника дискретных сообщений
- •1.6. Эффективное кодирование. Кодирование источника равномерными кодами
- •1.7. Высоковероятные множества постоянного дискретного источника
- •1.8. Энтропия источника без памяти как скорость создания информации
- •1.9. Избыточность источника непрерывных сигналов. Количество информации в непрерывном канале
- •1.10. Скорость передачи информации и пропускная способность в непрерывном канале
- •2. Кодирование информации
- •2.1. Неравномерное кодирование с однозначным декодированием
- •2.2. Оптимальные неравномерные двоичные коды
- •2.3. Кодирование для исправления ошибок: Основные положения
- •2.4. Постановка задачи кодирования
- •2.5. Прямая теорема о кодировании в канале с шумами
- •2.6. Обратная теорема кодирования
- •2.7. Основная теорема Шеннона, ограничение возможностей использования оптимального кодирования на практике
- •3. Коды, исправляющие ошибки
- •3.1. Блоковые и сверточные коды
- •3.2. Хеммингово расстояние, Хемминговы сферы и корректирующая способность
- •3.3. Линейные блоковые коды
- •3.4. Порождающая и проверочная матрицы. Кодирование с помощью матриц g и н
- •3.5. Декодирование по стандартной таблице
- •3.6. Циклические коды
- •3.7. Кодирующие устройства циклических кодов
- •3.8. Декодирование циклических кодов по синдрому
- •3.9. Мажоритарное декодирование
- •4. Энтропия в контексте защиты информации от помех при передаче по каналу связи
- •4.1. Меры искажения. Постановка задачи защиты информации от помех при передаче по каналу связи
- •4.2. Свойства функции скорость-искажение
- •4.3. Простые примеры вычисления функции скорость-искажение
- •4.4. Функция скорость-искажение для гауссовских последовательностей
- •4.5. Эпсилон-производительность источника
- •4.6. Дифференциальная энтропия
- •4.7. Свойства дифференциальной энтропии
- •4.8. Эпсилон - энтропия источника сообщений
- •4.9. Обратная теорема кодирования для дискретного постоянного источника при заданном критерии качества
- •4.10. Прямая теорема кодирования с заданным критерием качества
- •4.11. Аксиоматическое введение в теорию энтропии вероятностных схем
- •4.12. Энтропия и условная энтропия объединенной вероятностной схемы и их свойства
- •Заключение
- •Библиографический список
- •Оглавление
- •394026 Воронеж, Московский просп., 14
3.3. Линейные блоковые коды
Как уже упоминалось выше, построение хорошего кода означает поиск вV2подмножества элементов в наибольшей степени удаленных друг от друга. Это очень трудная задача. Более того, если даже это сделано, то остается неясным как назначить кодовые слова информационным сообщениям.
Линейный код (т.е. множество кодовых слов) является векторным подпространством в пространствеV2. Это означает, что операция кодирования может быть представлена умножением на матрицу. В терминах цифровой электроники простое кодирующее устройство может быть построено на элементах «исключающее ИЛИ», «И» и триггерах типа D. В этой главе операциями сложения и умножения в двоичном векторном пространстве являются «исключающее ИЛИ» (сложение по модулю 2) и «И», соответственно. Таблицы сложения и умножения двоичных элементов имеют следующий вид:
a |
b |
a+b |
аb |
0 |
0 |
0 |
0 |
0 |
1 |
1 |
0 |
1 |
0 |
1 |
0 |
1 |
1 |
1 |
1 |
3.4. Порождающая и проверочная матрицы. Кодирование с помощью матриц g и н
Пусть С двоичный линейный (п, к, dmin)код. Так как С есть k-мерное подпространство, то оно имеет базис, например, (v0, v,,..., vk-1)такой, что любое кодовое слово v С может быть записано как линейная комбинация элементов этого базиса:
(3.7)
где Уравнение (3.7) может быть записано в матричной форме через порождающую матрицуGи вектор-сообщение
(3.8)
где
(3.9)
Так как С является k-мерным векторным пространством вV2, то существует (п-к)-мерное дуальное пространство (dualspace), которое порождается строками матрицы Н, называемой проверочной матрицей (parity-checkmatrix) ,такой, что , где через обозначена транспонированная матрица Н. Заметим, в частности, что любое кодовое слово удовлетворяет условию
(3.10)
Уравнение (3.10) является фундаментальным для декодирования линейных кодов.
Линейный код , который генерируется матрицей Н, является двоичным линейным (п, п — k, )кодом, который называют обычно дуальным коду С.
Равенство (3.8) определяет по существу правило кодирования для линейного блокового кода, которое может быть использовано непосредственно. Если кодирование должно быть систематическим, то произвольная порождающая матрица Gлинейного блокового (л, к, dmin)кода С может быть преобразована к систематической формеGsys(иначе, к канонической форме) с помощью элементарных операций и перестановок столбцов матрицы. Матрица Gsysсостоит из двух подматриц:k× к единичной матрицы, обозначаемой иIк,и k × (n - к) проверочной подматрицы Р. Таким образом,
(3.11)
где
(3.12)
Так как GHT= 0, то отсюда следует, что систематическая форма проверочной матрицы имеет вид
(3.13)
Пример 3. Рассмотрим двоичный линейный (4,2,2) код с порождающей матрицей
Перестановкой второго и четвертого столбцов преобразуем эту матрицу в систематическую форму
Таким образом, проверочная подматрица равна
Интересно отметить, что в данном случае выполняется соотношение3 . Из (1.16) следует, что систематическая форма проверочной матрицы имеет вид
В дальнейшем будет использовано обозначение для информационного сообщения и обозначение для соответствующего кодового слова кода С.
Если параметры С таковы, что к<(п — к) или, эквивалентно, скорость кодаk/п< 1/2, то кодирование с помощью порождающей матрицы более экономно по числу логических операций. В этом случае
(3.14)
где представляет проверочную часть кодового слова.
Однако, если к > (п - к) или к/п> 1/2, тогда кодирование с помощью проверочной матрицы Н требует меньшего количества вычислений. Этот вариант кодирования основан на уравнении (3.14) . Проверочные позиции вычисляются следующим образом:
(3.15)
Можно сказать, что элементами систематической формы проверочной матрицы являются коэффициенты проверочных уравнений, из которых вычисляются проверочные символы.
Пример 4. Рассмотрим двоичный линейный (4,2,2) код из примера 3. Пусть сообщение и кодовые слова обозначены и , соответственно. Из уравнения (3.15) получаем
Соответствие между 22 = 4 двух битными сообщениями и кодовыми словами имеет следующий вид: