- •В.О. Осипян
- •1. Алфавит дискретных устройств. Конечные поля
- •1. 1. Простое поле галуа gf( p )
- •1. 2. Составное поле галуа gf( Рn )
- •2. Кодирование информации
- •2. 1. Основные понятия. Примеры кодов
- •2. 2. Линейные коды. Способы их задания
- •2. 3. Свойства линейного кода. Коды хэмминга
- •2. 4. Циклические коды
- •2. 5. Коды бчх, исправляющие две ошибки
- •2. 6. Нелинейные коды. Коды адамара
- •2. 7. Границы мощности кодов
- •3. Информация и неопределённость
- •3. 1. Количественная мера неопределённости
- •3. 2. Условная неопределённость.
- •3. 3. Передача информации
2. 7. Границы мощности кодов
Задача определения точного числа кодовых слов с заданными параметрами весьма сложная. Поэтому для определения оптимальности того или иного кода на практике необходимо получить соответствующие оценки относительно мощности кодов.
Рассмотрим основные нижние и верхние границы относительно мощности двоичных кодов, т.е. когда алфавит канальных символов представляет собой поле Галуа GF( 2 ).
Итак, пусть С некоторый двоичный ( n , M , d ) - код, т.е. код длины n, мощности M и с минимальным расстоянием d. Обозначим через В ( n , d ) и M ( n , d ) максимальные мощности линейного и нелинейного (или линейного ) кодов соответственно длины n с минимальным расстоянием d. Эти величины фактически определяют скорость передачи информации с помощью данного кода и его корректирующие возможности.
Код С назовём оптимальным, если он имеет максимальную мощность среди всех кодов с той же корректирующей способностью и с теми же параметрами.
В общем случае имеет место неравенство
В ( n , d ) M ( n , d ) 2 n ,
т.е. оптимальные коды необходимо искать среди нелинейных кодов, где меньше всего порядка, в отличие от линейных кодов.
Так, например, код с проверкой на чётность С0 длины n имеет мощность В ( n , 2 ) = 2 n - 1 и является оптимальным.
В силу того, что
M ( n , 2 t ) = M ( n - 1 , 2 t - 1 ) ,
мы в дальнейшем рассмотрим лишь коды с минимальным нечётным расстоянием d = 2 t + 1.
I. Граница сферической упаковки ( граница Хэмминга ). Если существует двоичный код длины n, исправляющий t ошибок и содержащий
M ( n , 2 t + 1) кодовых слов, то должно выполняться неравенство
t
M ( n , 2 t + 1) 2 n / C ni .
i = 0
В самом деле, если х 1 , х 2 , . . . , х M ( n , 2 t + 1) - все кодовые слова оптимального кода, для которых d ( x i , x j ) 2 t + 1 , i j, то сферы радиуса t с центрами в кодовых словах не пересекаются ( сферой радиуса t с центром х i называется множество всех слов х таких, что d ( x , х i ) t ). Так как объём Vn t одной сферы равен Vn t = 1 + C n1 + . . . + C nt , то
M ( n , 2 t + 1) Vn t 2 n ,
откуда и следует граница Хэмминга:
t
M ( n , 2 t + 1) 2 n / C ni .
i = 0
Для кодов Хэмминга имеем t = 1, следовательно,
В ( n , 3 ) 2 n / ( n + 1 ).
Если же n = 2 r - 1, то имеет место равенство:
В ( n , 3 ) = 2 n / ( n + 1 ),
т.е. код Хэмминга длины n = 2 r - 1 также является оптимальным.
Код, мощность которого достигается границе Хэмминга, называется совершенным кодом или же плотно упакованным кодом.
В этом смысле код Хэмминга является совершенным кодом при n =2 r - 1. В общем случае для существования совершенного кода длины n, с кодовым расстоянием d = 2 t + 1 необходимо выполнение равенства
1 + C n1 + . . . + C nt = 2 r ,
где r - некоторое натуральное число. Так, например, при n = 23 имеем:
1 + C123 + С223 + C323 = 211 ,
т.е. t = 3, что соответствует совершенному коду G23 Голея [ 23 , 12 , 7 ], исправляющего три или менее число ошибок.
II. Граница Гильберта. Имеет место неравенство
t
M ( n , 2 t + 1) 2 n / C ni .
i = 0
Построим код с кодовым расстоянием d = 2 t + 1. Пусть х 1 - произвольное первое кодовое слово из GFn (2). Далее к коду добавим новое слово х 2, лежащее вне шара радиуса 2 t с центром в х 1. На следующем шаге в качестве очередного нового кодового слова выберем х 3, не принадлежащее шарам радиуса 2 t, описанным вокруг х 1 и х 2 соответственно. Процедура завершается после того, когда уже выбраны х 1 , х 2 , . . . , х S слов и имеет место неравенство
S Vn2 t 2 n ,
или
S 2 n / Vn2 t ,
где Vn2 t - объём шара радиуса 2 t. Но мощность оптимального кода не меньше мощности таким образом построенного кода, следовательно,
t
M ( n , 2 t + 1) 2 n / C ni ,
i = 0
что и соответствует нижней границе Гильберта.
Так, например, для кода Хэмминга длины n = 2 r - 1, имеем
В ( n , 3 ) 2 n + 1 / ( n 2 + n + 2 ).
III. Граница Варшамова-Гильберта. Если выполняется неравенство
1 + C n - 11 + . . . + C n - 1d - 2 < 2 r ,
то существует двоичный линейный код длины n с минимальным расстоянием по крайней мере d, имеющий не более чем r проверочных символов.
Идея получения этой границы сводится к построению проверочной матрицы H размерности ( r n ) , любые d - 1 столбцов которой линейно независимы.
IV. Граница Плоткина. Для любого ( n , M , d ) - кода С при n < 2 d справедливо неравенство
М( n , d ) 2 [ d / (2d - n) ].
Доказательство этой границы предоставляется читателю.
V. Граница Джонсона. Если M( n , d , w ) мощность оптимального равновесного кода длины n, с минимальным расстоянием d и веса w, то имеет место неравенство
М( n , 2 , w ) [ n / (w 2 - wn + n)]
при условии , что знаменатель положителен (код называется равновесным веса w, если все его слова имеют один и тот же вес w ).
2.7.1. Доказать, что М( n , d ) t /d +1, где t - общее число единиц кода.
2.7.2. Пусть s и t число нулевых и единичных разрядов соответственно для кодов С и С +1. Доказать, что
a ) (s - n) / (n - d) + 1 M(n , d) t / d + 1;
b ) (t - n) / (n - d) + 1 M(n , d) s / d + 1.
2.7.3. Доказать, что n - 1
а ) M(n , d) n C kn - 1 / d + 1;
k = d - 1
n
b ) M(n , d) n C kn - 1 / d + 1.
k = d
2.7.4. Доказать, что код С0 является оптимальным.
2.7.5. Упаковать все слова [ 7 , 4 , 3] - кода в пространстве GF7(2).
2.7.6. Определить число кодовых слов веса 3 кода Hr.
2.7.7. Определить число кодовых слов веса 4 расширенного кода Hr+1.
2.7.9. Доказать границу Варшамова - Гильберта для поля GF(q):
d - 2
(q - 1) C in - 1 < q r .
i = 0
2.7.10. При каких n и t число M ( n , 2 t + 1) есть степень двойки.
2.7.11.Оптимальны ли коды (10, 38, 4), (11, 72, 4), (12, 144, 4) ?
