Разделы презентаций


Алгебра Кабанов Александр Николаевич к.ф.-м.н., доцент кафедры кибернетики

Содержание

4. Линейные коды

Слайды и текст этой презентации

Слайд 1Алгебра
Кабанов Александр Николаевич
к.ф.-м.н., доцент кафедры кибернетики

АлгебраКабанов Александр Николаевичк.ф.-м.н., доцент кафедры кибернетики

Слайд 24. Линейные коды

4. Линейные коды

Слайд 3Корректирующие коды
В идеальной системе при отсутствии искажений в канале символы,

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

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

Слайд 4Схема системы связи
Кодер, кодирующий входную информацию в двоичные символы.
Кодер, кодирующий

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

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

Слайд 5Схема системы связи
Декодер, предназначенный для исправления возможно появившихся ошибок в

двоичных символах.
Декодер, декодирующий двоичные символы в сообщение.

Схема системы связиДекодер, предназначенный для исправления возможно появившихся ошибок в двоичных символах.Декодер, декодирующий двоичные символы в сообщение.

Слайд 6Корректирующие коды
Говорят, что код обнаруживает ошибку, если декодер сигнализирует об

отличии принятой последовательности от переданного кодового слова.
Говорят, что код исправляет

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

Слайд 7Блоковые коды
При создании блокового кода непрерывная последовательность информационных символов разбивается

на k-значные блоки, т.е. на отрезки, содержащие по k символов.

В дальнейшем все операции проводятся над каждым блоком независимо от других.
К каждому информационному блоку из k символов добавляется набор из r = n – k символов, называемых проверочными.
Набор, состоящий из k информационных и r проверочных символов, называется кодовым словом.
Блоковые кодыПри создании блокового кода непрерывная последовательность информационных символов разбивается на k-значные блоки, т.е. на отрезки, содержащие

Слайд 8Блоковые коды
Каждое кодовое слово передается по каналу связи, возможно искажается

информационным шумом, а затем декодируется независимо от других кодовых слов.
Величина

k + r = n называется длиной блока.
Совокупность всех кодовых слов называется кодом.
Если мощность кодового алфавита равна m, то этот алфавит можно отождествить с конечным полем Fm.

Блоковые кодыКаждое кодовое слово передается по каналу связи, возможно искажается информационным шумом, а затем декодируется независимо от

Слайд 9Канал связи
Для реального канала вероятность совпадения принятого и переданного символа

больше вероятности искажения передаваемого символа (причем для хорошего канала много

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

Слайд 10Метод максимального правдоподобия
В предположении, что все слова кода имеют одинаковую

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

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

Слайд 11Расстояние Хемминга
Так как символы кодового алфавита можно представить элементами конечного

поля, значит каждое кодовое слово можно отождествить с вектором линейного

пространства над этим полем.
Весом кодового слова g называется величина w(g), равная числу ненулевых координат вектора g.
Расстоянием Хемминга между двумя кодовыми словами g и h называется величина d(g, h) = w(g – h).
Таким образом, расстояние между двумя словами – это число координат, в которых эти слова отличаются друг от друга.
Расстояние ХеммингаТак как символы кодового алфавита можно представить элементами конечного поля, значит каждое кодовое слово можно отождествить

Слайд 12Код, обнаруживающий ошибки
При искажении t компонент кодового слова, переданного по

каналу связи, слово, полученное на выходе канала, будет отличаться от

переданного в t координатах. Другими словами, оно будет удалено от исходного слова на расстояние t.
Лемма 1: Для того, чтобы обнаружить все комбинации из t или меньшего числа ошибок, необходимо и достаточно, чтобы минимальное расстояние Хемминга между кодовыми словами было равно t + 1.
Код, обнаруживающий ошибкиПри искажении t компонент кодового слова, переданного по каналу связи, слово, полученное на выходе канала,

Слайд 13Код, исправляющий ошибки
Лемма 2: Для того, чтобы исправить все комбинации

из t или меньшего числа ошибок, необходимо и достаточно, чтобы

минимальное расстояние Хемминга между кодовыми словами было равно 2t + 1.
Минимальное расстояние Хемминга между всевозможными парами слов кода называется кодовым расстоянием кода.
Код, исправляющий ошибкиЛемма 2: Для того, чтобы исправить все комбинации из t или меньшего числа ошибок, необходимо

Слайд 14Линейный код
Пусть Vn – линейное пространство над конечным полем Fm.

Линейным блоковым кодом называется любое подпространство G  Vn(Fm).
Величина d

= min{d(g, h}|g, h G, g  h} – кодовое расстояние кода G. Так как G – подпространство, значит  g, h G g – h = f  G.
Следовательно: d = min{d(g, h}|g, h G, g  h} =
= min{w(g – h}|g, h  G, g  h} = min{w(f}|f  G, f  0}.
Таким образом, кодовое расстояние для линейного кода равно минимальному весу его ненулевых слов.
Линейный кодПусть Vn – линейное пространство над конечным полем Fm. Линейным блоковым кодом называется любое подпространство G

Слайд 15Порождающая матрица
Пусть G  Vn(Fm) – линейный код размерности k.

Матрица G размера kn, составленная из базисных векторов подпространства G,

называется порождающей матрицей кода G.
Задание кода с помощью порождающей матрицы более компактно. Например, двоичный линейный код размерности 30 с длиной блока 50 содержит 230 > 109 слов и требует как минимум 6,25 ГБ памяти для хранения, но может задаваться порождающей матрицей размера 3050, что требует 187,5 Б памяти.
Порождающая матрицаПусть G  Vn(Fm) – линейный код размерности k. Матрица G размера kn, составленная из базисных

Слайд 16Проверочная матрица
Векторы g, h  Vn называются ортогональными, если их

скалярное произведение равно 0.
Пусть G – линейное подпространство Vn(Fm) размерности

k. Множество всех векторов из Vn, ортогональных всем векторам из G, образует ортогональное линейное подпространство G размерности n – k.
Матрица H, составленная из базисных векторов подпространства G, называется проверочной матрицей линейного кода G.
Подпространство G порождает линейный код, называемый двойственным к коду G.
Проверочная матрицаВекторы g, h  Vn называются ортогональными, если их скалярное произведение равно 0.Пусть G – линейное

Слайд 17Проверочная матрица
Вектор g  G тогда и только тогда, когда

gHT = 0.
Значит, GHT = 0.
Лемма: Пусть G – линейный

код с проверочной матрицей H. Тогда каждому кодовому слову с весом d соответствует соотношение линейной зависимости, связывающее d столбцов матрицы H. И наоборот, каждому соотношению линейной зависимости, включающему d столбцов матрицы H, соответствует кодовое слово веса d.
Проверочная матрицаВектор g  G тогда и только тогда, когда gHT = 0.Значит, GHT = 0.Лемма: Пусть

Слайд 18Эквивалентные коды
Линейный код с длиной блока n, количеством информационных символов

k и кодовым расстоянием d называется линейным (n,k,d)-кодом.
Линейные коды, отличающиеся

друг от друга перестановкой столбцов в порождающей матрице, называются эквивалентными.
Линейные коды называются комбинаторно-эквивалентными, если порождающую матрицу одного можно получить из порождающей матрицы другого с помощью элементарных преобразований строк и столбцов.
Эквивалентные кодыЛинейный код с длиной блока n, количеством информационных символов k и кодовым расстоянием d называется линейным

Слайд 19Систематический код
Линейный (n,k,d)-код называется систематическим, если первые k координат каждого

кодового слова являются информационными символами, а последние n – k

координат – проверочными символами.
Теорема: Любой линейный (n,k,d)-код эквивалентен систематическому.
Систематический кодЛинейный (n,k,d)-код называется систематическим, если первые k координат каждого кодового слова являются информационными символами, а последние

Слайд 20Систематический код
Порождающая матрица систематического (n,k,d)-кода имеет вид:

Систематический кодПорождающая матрица систематического (n,k,d)-кода имеет вид:

Слайд 21Систематический код
Теорема: Если G – систематический (n,k,d)-код с порождающей матрицей

G = (Ek|A), где Ek – единичная матрица размера kk,

а А – некоторая матрица размера k(n – k), то проверочная матрица имеет вид H = (–AT|En – k).
Систематический кодТеорема: Если G – систематический (n,k,d)-код с порождающей матрицей G = (Ek|A), где Ek – единичная

Слайд 22Таблица стандартного расположения
Пусть G – линейный (n,k,d)-код. Следующий алгоритм декодирования

слов, полученных на выходе из канала, основан на таблице стандартного

расположения.
Выписать в первую строку таблицы все вектора линейного подпространства G, начиная с нулевого.
Выбрать из пространства Vn вектор h1 минимального веса, не лежащий в коде G, добавить его к каждому кодовому вектору и записать полученные вектора во вторую строку так, чтобы под вектором gi оказался вектор gi + h1. Если таких векторов минимального веса несколько, то выбрать любой из них.

Таблица стандартного расположенияПусть G – линейный (n,k,d)-код. Следующий алгоритм декодирования слов, полученных на выходе из канала, основан

Слайд 23Таблица стандартного расположения
Выбрать из пространства Vn вектор h2 минимального веса,

не лежащий в предыдущих двух строках таблицы, добавить его к

каждому кодовому вектору и записать полученные вектора в третью строку так, чтобы под вектором gi + h1 оказался вектор gi + h2. Если таких векторов минимального веса несколько, то выбрать любой из них.
Повторять аналогичную процедуру из шага 3, пока в таблице не окажутся все вектора пространства Vn.
Найти в таблице полученное на выходе из канала слово f.
Искомое кодовое слово g будет находиться в первой строке того же столбца, где расположено слово f.

Таблица стандартного расположенияВыбрать из пространства Vn вектор h2 минимального веса, не лежащий в предыдущих двух строках таблицы,

Слайд 24Таблица стандартного расположения
Фактически, каждая строка таблицы стандартного расположения представляет собой

смежный класс G + hi = {g + hi|g 

G}.
По известной теореме из алгебры, всё линейное пространство распадается на непересекающиеся смежные классы по любому своему фиксированному подпространству.
Это гарантирует нам, что при выборе hi, не лежащего в предыдущих строках, мы будем получать новый смежный класс, не пересекающийся с предыдущими, а также то, что построенная таким образом таблица обязательно будет содержать все вектора линейного пространства.
Таблица стандартного расположенияФактически, каждая строка таблицы стандартного расположения представляет собой смежный класс G + hi = {g

Слайд 25Вектор ошибок
Если при передаче по каналу слова g на выходе

из канала было получено слово f, то вектор e =

f – g называется вектором ошибок.
Если e = 0, то можно считать, что ошибок при передаче не произошло. Вектор ошибок будет равен 0 и в случае, если произошло n ошибок, но для приемлемого канала связи и достаточно большом n вероятность этого исчезающе мала.
Если e  0, то ненулевые координаты этого вектора соответствуют искажаемым координатам вектора g.
Вектор ошибокЕсли при передаче по каналу слова g на выходе из канала было получено слово f, то

Слайд 26Вектор ошибок
Вектора hi в таблице стандартного расположения называются образующими соответствующих

смежных классов.
Фактически, эти образующие есть вектора ошибок, которые могут произойти

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

Вектор ошибокВектора hi в таблице стандартного расположения называются образующими соответствующих смежных классов.Фактически, эти образующие есть вектора ошибок,

Слайд 27Правильное декодирование
Лемма: При использовании таблицы стандартного расположения полученный на выходе

из канала вектор f будет правильно декодирован в переданный вектор

g тогда и только тогда, когда вектор ошибок e является образующим какого-либо смежного класса в таблице.
Таким образом, если смежный класс содержит вектор с весом, равным весу образующего, то такая таблица стандартного расположения не позволит правильно обнаружить все ошибки данного веса, и использование этого кода для передачи информации не оптимально.
Правильное декодированиеЛемма: При использовании таблицы стандартного расположения полученный на выходе из канала вектор f будет правильно декодирован

Слайд 28Теорема о ТСР
Двоичным симметричным каналом называется канал, по которому передаются

символы 0 и 1 и для которого вероятность получения на

выходе 0 при посланном 0 равна вероятности получения на выходе 1 при посланной 1.
Теорема: Пусть G – линейный код, используемый для передачи информации по двоичному симметричному каналу. Пусть все кодовые векторы имеют одинаковую вероятность быть переданными. Тогда средняя вероятность правильного декодирования будет максимально возможной для данного кода, если в таблице стандартного расположения каждый образующий вектор имеет минимальный вес в своем смежном классе.
Теорема о ТСРДвоичным симметричным каналом называется канал, по которому передаются символы 0 и 1 и для которого

Слайд 29Последовательное декодирование
Весом смежного класса называется вес минимального по весу элемента

в этом смежном классе.
Пусть G – линейный (n,k,d)-код. Следующий алгоритм

называется последовательным декодированием.
Выписать в первую строку таблицы все вектора линейного подпространства G, начиная с нулевого.
Добавить к каждому кодовому вектору полученное на выходе из канала слово f и записать полученные вектора во вторую строку так, чтобы под вектором gi оказался вектор gi + f.

Последовательное декодированиеВесом смежного класса называется вес минимального по весу элемента в этом смежном классе.Пусть G – линейный

Слайд 30Последовательное декодирование
Вычислить вес полученного смежного класса G + f.
Если вес

класса равен 0, значит f – кодовое слово.
Если вес класса

не равен 0, следует найти в классе вектор минимального веса, выбрать в нем ненулевую координату и инвертировать эту координату во всех векторах класса.
В результате проведенной процедуры вес смежного класса уменьшится. Если вес стал равен 0, то образующий вектор полученного смежного класса и есть наиболее вероятное посланное слово. Иначе возвращаемся к шагу 5.
Последовательное декодированиеВычислить вес полученного смежного класса G + f.Если вес класса равен 0, значит f – кодовое

Слайд 31Синдром
Пусть G – линейный (n,k,d)-код, H – его проверочная матрица,

f – произвольный вектор пространства Vn. Тогда вектор s(f) =

f·HT называется синдромом вектора f.
Лемма 1: Два вектора f1 и f2 принадлежат одному и тому же смежному классу тогда и только тогда, когда их разность является кодовым словом.
Доказательство: Пусть f1, f2  G + h. Следовательно, f1 = g1 + h, f2 = g2 + h. Следовательно, f1 – f2 = g1 – g2  G, т.к. G – подпространство. Обратно: пусть f1 – f2 = g  G. Следовательно, f1 = f2 + g. Пусть f1  G + h. Следовательно, f1 = g1 + h = f2 + g. Отсюда f2 = g – g1 + h = g2 + h  G + h.
СиндромПусть G – линейный (n,k,d)-код, H – его проверочная матрица, f – произвольный вектор пространства Vn. Тогда

Слайд 32Синдром
Лемма 2: Два вектора f1 и f2 принадлежат одному и

тому же смежному классу тогда и только тогда, когда их

синдромы равны.
Доказательство: Пусть f1, f2  G + h. Следовательно, f1 – f2 = g  G. Следовательно, (f1 – f2)·HT = 0. Следовательно, f1·HT – f2·HT = 0. Следовательно, f1·HT = f2·HT. То есть s(f1) = s(f2). В обратную сторону доказывается аналогично.

СиндромЛемма 2: Два вектора f1 и f2 принадлежат одному и тому же смежному классу тогда и только

Слайд 33Таблица синдромов
Для декодирования с использованием синдромов следует создать таблицу синдромов.
Так

как в одном смежном классе все синдромы равны, а всего

смежных классов 2n – k, значит и различных синдромов будет 2n – k.
Матрица H имеет размер (n – k)n, следовательно матрица HT имеет размер n(n – k).
При вычислении синдрома следует вектор длины n умножить на матрицу размера n(n – k). В результате получается вектор длины n – k.
Таблица синдромовДля декодирования с использованием синдромов следует создать таблицу синдромов.Так как в одном смежном классе все синдромы

Слайд 34Таблица синдромов
Таким образом, в таблице синдромов должны содержаться все возможные

вектора длины n – k.
Мы знаем, что вектором ошибок для

принятого слова будет образующий смежного класса, которому принадлежит это слово. Причем декодирование будет оптимальным, если вес образующего минимально возможный.
Значит, для каждого синдрома следует найти вектор минимального веса, имеющий данный синдром. То есть вектор минимального веса, который будет ортогонален всем строкам проверочной матрицы H.

Таблица синдромовТаким образом, в таблице синдромов должны содержаться все возможные вектора длины n – k.Мы знаем, что

Слайд 35Таблица синдромов
В результате таблица синдромов состоит из двух столбцов. В

первом все возможные синдромы для данного кода, во втором –

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

Слайд 36Декодирование с синдромами
Пусть G – линейный (n,k,d)-код. Следующий алгоритм позволяет

декодировать полученный вектор с помощью таблицы синдромов.
Вычислить синдром s(f) полученного

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

Декодирование с синдромамиПусть G – линейный (n,k,d)-код. Следующий алгоритм позволяет декодировать полученный вектор с помощью таблицы синдромов.Вычислить

Слайд 37Скорость передачи информации
Наряду с кодовым расстоянием d важным показателем оптимальности

кода является скорость передачи информации.
Пусть G – линейный (n,k,d)-код. Тогда

из каждых n переданных по каналу символов только k из них несут информацию. Значит, скорость передачи информации можно вычислить по формуле:
R = k/n.
Получается, что чем меньше проверочных символов, тем выше скорость. То есть хорошие корректирующие свойства кода и высокая скорость передачи информации – противоречивые требования.
Скорость передачи информацииНаряду с кодовым расстоянием d важным показателем оптимальности кода является скорость передачи информации.Пусть G –

Слайд 38Оптимальный выбор n,k,d
Среди кодов с фиксированными n и k лучшим

является код с наибольшим d.
Среди кодов с фиксированными n и

d лучшим является код с наибольшим k.
Среди кодов с фиксированными k и d лучшим является код с наименьшим n.
Рассмотрим некоторые границы, определяющие отношения между n, k и d.
Оптимальный выбор n,k,dСреди кодов с фиксированными n и k лучшим является код с наибольшим d.Среди кодов с

Слайд 39Граница Синглтона
Теорема (граница Синглтона): Пусть G – линейный (n,k,d)-код. Тогда

k ≤ n – d + 1.
Линейные коды, для которых

k = n – d + 1 называются разделимыми кодами с максимальным расстоянием или МДР-кодами.
Граница СинглтонаТеорема (граница Синглтона): Пусть G – линейный (n,k,d)-код. Тогда k ≤ n – d + 1.Линейные

Слайд 40МДР-коды
МДР-коды имеют максимально возможное расстояние между кодовыми словами и могут

быть разделены на информационные и проверочные символы (то есть систематические

коды).
МДР-кодами являются коды с параметрами (n,1,n), (n,n–1,2) и (n,n,1).
Эти коды называются тривиальными МДР-кодами.
Других двоичных МДР-кодов не существует.

МДР-кодыМДР-коды имеют максимально возможное расстояние между кодовыми словами и могут быть разделены на информационные и проверочные символы

Слайд 41Верхняя граница Хемминга
Теорема (верхняя граница Хемминга): Пусть G – q-ичный

линейный (n,k,d)-код, исправляющий t ошибок (то есть t – целая

часть величины (d – 1)/2). Тогда


Коды, для которых граница Хемминга достигается (то есть выполняется равенство) называются совершенными или плотноупакованными кодами.


Верхняя граница ХеммингаТеорема (верхняя граница Хемминга): Пусть G – q-ичный линейный (n,k,d)-код, исправляющий t ошибок (то есть

Слайд 42Совершенные коды
Тривиальными совершенными кодами являются коды с параметрами (n,1,n) при

нечетном n и (n,n,1).
Нетривиальными двоичными совершенными кодами являются коды Хемминга

и код Голея.
Код Хемминга порядка r имеет параметры (2r – 1, 2r – 1 – r, 3).
Код Голея имеет параметры (23,12,7).

Совершенные кодыТривиальными совершенными кодами являются коды с параметрами (n,1,n) при нечетном n и (n,n,1).Нетривиальными двоичными совершенными кодами

Слайд 43Код Хемминга
Кодом Хемминга порядка r ≥ 2 называется двоичный код

с длиной блока n = 2r – 1, проверочная матрица

которого состоит из столбцов, представляющих собой двоичную запись номера столбца.
Код Хемминга порядка 2 имеет проверочную матрицу
Код ХеммингаКодом Хемминга порядка r ≥ 2 называется двоичный код с длиной блока n = 2r –

Слайд 44Код Хемминга порядка 3
Код Хемминга порядка 3 имеет проверочную матрицу

Код Хемминга порядка 3Код Хемминга порядка 3 имеет проверочную матрицу

Слайд 45Код Хемминга порядка r
Код Хемминга порядка r имеет проверочную матрицу

Код Хемминга порядка rКод Хемминга порядка r имеет проверочную матрицу

Слайд 46Декодирование кода Хемминга
Код Хемминга имеет кодовое расстояние d = 3

и исправляет 1 ошибку.
Пусть принятое слово f = g +

e, где g – кодовое слово, а e – вектор ошибок веса 1.
При вычислении синдрома получим s(f) = f·HT = (g + e)·HT = g·HT + e·HT = 0 + e·HT = e·HT.
Но так как вектор e содержит только одну 1, то синдром s(f) будет равен транспонированному столбцу матрицы H, стоящему на том же месте, что и 1 в векторе e.
Декодирование кода ХеммингаКод Хемминга имеет кодовое расстояние d = 3 и исправляет 1 ошибку.Пусть принятое слово f

Слайд 47Декодирование кода Хемминга
Из построения кода Хемминга следует, что синдром равен

двоичной записи номера координаты, в которой произошла ошибка.
Таким образом, при

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

Слайд 48Верхняя граница Плоткина
Теорема (верхняя граница Плоткина): Пусть G – q-ичный

линейный (n,k,d)-код мощности M. Тогда


Коды, для которых граница Плоткина достигается

(то есть выполняется равенство), называются эквидистантными.


Верхняя граница ПлоткинаТеорема (верхняя граница Плоткина): Пусть G – q-ичный линейный (n,k,d)-код мощности M. ТогдаКоды, для которых

Слайд 49Эквидистантные коды
Для эквидистантного кода расстояние между двумя любыми кодовыми словами

одинаково.
Тривиальным эквидистантным кодом является код кратных повторений.
Эквидистантными кодами являются коды

с параметрами (2,3,2) – симплексные коды порядка r.
Эквидистантные кодыДля эквидистантного кода расстояние между двумя любыми кодовыми словами одинаково.Тривиальным эквидистантным кодом является код кратных повторений.Эквидистантными

Слайд 50Нижняя граница Варшамова-Гильберта
Теорема (нижняя граница Варшамова-Гильберта): Существует q-ичный линейный (n,k,d)-код,

удовлетворяющий неравенству




Нижняя граница Варшамова-ГильбертаТеорема (нижняя граница Варшамова-Гильберта): Существует q-ичный линейный (n,k,d)-код, удовлетворяющий неравенству

Слайд 51Двойственный код
Пусть G – линейный (n,k,d)-код с проверочной матрицей H.

Тогда код, для которого матрица H будет порождающей, называется двойственным

к коду G.
Таким образом, линейный код, двойственный к коду G, является линейным пространством, ортогональным к линейному пространству G.
Очевидно, что порождающая матрица кода G станет проверочной матрицей для двойственного к G кода.
Двойственный кодПусть G – линейный (n,k,d)-код с проверочной матрицей H. Тогда код, для которого матрица H будет

Слайд 52Симплексный код
Код, двойственный к коду Хемминга, называется симплексным кодом.
Проверочная матрица

кода Хемминга является порождающей для симплексного кода.
Симплексный код порядка r

имеет параметры (2r – 1, r, 2r–1).
Симплексный код является эквидистантным – расстояние между любыми двумя словами кода равно 2r–1.
Симплексный код порядка r обозначается Σr.
Если рассматривать кодовые слова этого кода как векторы, то они образуют n-мерный тетраэдр (симплекс).
Симплексный кодКод, двойственный к коду Хемминга, называется симплексным кодом.Проверочная матрица кода Хемминга является порождающей для симплексного кода.Симплексный

Слайд 53Симплексный код порядка 2
Симплексный код порядка 2 состоит из следующих

кодовых слов:

Симплексный код порядка 2Симплексный код порядка 2 состоит из следующих кодовых слов:

Слайд 54Симплексный код порядка 3
Симплексный код порядка 3 состоит из следующих

кодовых слов:

Симплексный код порядка 3Симплексный код порядка 3 состоит из следующих кодовых слов:

Слайд 55Симплексный код порядка r
Симплексный код порядка r состоит из следующих

кодовых слов:

Симплексный код порядка rСимплексный код порядка r состоит из следующих кодовых слов:

Слайд 56Добавление общей проверки на четность
Пусть G – двоичный линейный (n,k,d)-код,

в котором есть слова нечетного веса. Новый код G’ можно

получить из кода G добавлением (n + 1)-й координаты, равной сумме предыдущих n координат.
В этом случае n’ = n + 1, k’ = k, d’ = d + 1 при нечётном d и d’ = d при чётном d.
Добавление общей проверки на четностьПусть G – двоичный линейный (n,k,d)-код, в котором есть слова нечетного веса. Новый

Слайд 57Выкалывание кодовых координат
Пусть G – двоичный линейный (n,k,d)-код. Новый код

G’ можно получить из кода G удалением из всех слов

любой кодовой координаты.
В этом случае n’ = n – 1, k’ = k или k – 1, d’ = d или d – 1.
Выкалывание кодовых координатПусть G – двоичный линейный (n,k,d)-код. Новый код G’ можно получить из кода G удалением

Слайд 58Выбрасывание слов
Пусть G – двоичный линейный (n,k,d)-код. Новый код G’

можно получить из кода G удалением всех кодовых слов нечётного

веса.
В этом случае n’ = n, k’ = k – 1, d’ ≥ d.
Выбрасывание словПусть G – двоичный линейный (n,k,d)-код. Новый код G’ можно получить из кода G удалением всех

Слайд 59Добавление слов
Пусть G – двоичный линейный (n,k,d)-код, и вектор f

= (1…1) не лежит в коде G. Новый код G’

можно получить из кода G добавлением новых кодовых слов множества G + f.
В этом случае n’ = n, k’ = k + 1, d’ = min {d, n – max w(g)}.
Если после этого добавить общую проверку на чётность, то можно получить параметры n’ = n + 1, k’ = k + 1. То есть произошло добавление нового информационного символа.
Добавление словПусть G – двоичный линейный (n,k,d)-код, и вектор f = (1…1) не лежит в коде G.

Слайд 60Укорочение кода
Пусть G – двоичный линейный (n,k,d)-код. Новый код G’

можно получить, выбрав из кода G все вектора с первой

нулевой координатой и удалив эту координату.
В этом случае n’ = n – 1, k’ = k – 1, d’ ≥ d.
Укорочение кодаПусть G – двоичный линейный (n,k,d)-код. Новый код G’ можно получить, выбрав из кода G все

Слайд 61Прямая сумма
Пусть G1 – двоичный линейный (n1,k1,d1)-код, G2 – двоичный

линейный (n2,k2,d2)-код. Новый код G можно получить, дописав к каждому

слову кода G1 всевозможные варианты слов из кода G2.
Таким образом, слово из G будет иметь вид uv, где u  G1, v  G2.
В этом случае n = n1 + n2, k = k1 + k2, d = min {d1, d2}.
Прямая суммаПусть G1 – двоичный линейный (n1,k1,d1)-код, G2 – двоичный линейный (n2,k2,d2)-код. Новый код G можно получить,

Слайд 62Полупрямая сумма
Пусть G1 – двоичный линейный (n1,k1,d1)-код, G2 – двоичный

линейный (n1,k2,d2)-код. Новый код G можно получить, дописав к каждому

слову кода G1 всевозможные варианты сумм этого слова из кода G1 и слов из кода G2.
Таким образом, слово из G будет иметь вид u(u+v), где u  G1, v  G2.
В этом случае n = 2n1, k = k1 + k2, d = min {2d1, d2}.
Полупрямая суммаПусть G1 – двоичный линейный (n1,k1,d1)-код, G2 – двоичный линейный (n1,k2,d2)-код. Новый код G можно получить,

Слайд 63Произведение кодов
Пусть G1 – двоичный линейный систематический (n1,k1,d1)-код, G2 –

двоичный линейный систематический (n2,k2,d2)-код. Запишем k = k1·k2 всевозможных

информационных символов в виде матрицы размера k2k1. Строки матрицы закодируем кодом G1, дописав в каждую строку соответствующие (n1 – k1) проверочных символов. Столбцы матрицы закодируем кодом G2, дописав в каждый столбец соответствующие (n2 – k2) проверочных символов. Выписывая по строчкам кодовые символы из матрицы, получим новое кодовое слово. Полученный таким образом код G = G1G2 называется произведением кодов G1 и G2.
В этом случае n = n1n2, k = k1k2, d ≥ d1d2.
Произведение кодовПусть G1 – двоичный линейный систематический (n1,k1,d1)-код, G2 – двоичный линейный систематический (n2,k2,d2)-код. Запишем  k

Слайд 64Спектр кода
Весовым спектром линейного (n,k,d)-кода G называется вектор A =

(A0, A1, …, An), где Ai = |{g  G|w(g)

= i}|.
Спектр кодаВесовым спектром линейного (n,k,d)-кода G называется вектор A = (A0, A1, …, An), где Ai =

Обратная связь

Если не удалось найти и скачать доклад-презентацию, Вы можете заказать его на нашем сайте. Мы постараемся найти нужный Вам материал и отправим по электронной почте. Не стесняйтесь обращаться к нам, если у вас возникли вопросы или пожелания:

Email: Нажмите что бы посмотреть 

Что такое TheSlide.ru?

Это сайт презентации, докладов, проектов в PowerPoint. Здесь удобно  хранить и делиться своими презентациями с другими пользователями.


Для правообладателей

Яндекс.Метрика