ݺߣ

ݺߣShare a Scribd company logo
Теория кодирования
МФТИ, осень 2013
Александр Дайняк
www.dainiak.com
Матрицы Адамара (J. Hadamard)
Матрица Адамара — это квадратная матрица из −1, 1 𝑛×𝑛,
в которой любые две строки ортогональны.
Примеры:
1 1
1 −1
1 1 1 1
1 1 −1 −1
1 −1 −1 1
1 −1 1 −1
Теорема Адамара
Матрицы Адамара берут начало от следующей теоремы:
Теорема. (J. Hadamard)
Если 𝐴 = 𝑎𝑖𝑗 1≤𝑖,𝑗≤𝑛
∈ ℝ 𝑛×𝑛 и 𝑎𝑖𝑗 ≤ 1 для любых 𝑖, 𝑗, то тогда
det 𝐴 ≤ 𝑛 𝑛 2
Доказательство:
• det 𝐴 — это объём параллелепипеда, построенного на
векторах-строках матрицы 𝐴
• Объём максимален, когда длины сторон максимальны (максимум
равен 𝑛 при 𝑎𝑖𝑗 = 1) и углы между сторонами прямые
(т.е. векторы ортогональны).
Матрицы Адамара
Если 𝐻 — матрица Адамара, то
• Матрица, полученная из 𝐻 перестановками строк/столбцов,
тоже является матрицей Адамара.
• Матрица, полученная из 𝐻 умножением строк/столбцов на −1,
тоже является матрицей Адамара.
Матрицы Адамара, получаемые друг из друга такими
преобразованиями, эквивалентны.
Матрицы Адамара
Любую матрицу Адамара умножением строк/столбцов на −1
можно привести к виду
1 1 ⋯ 1
1
⋮
1
Такая матрица Адамара называется нормализованной.
Порядок матриц Адамара
Утверждение.
Если 𝐻 ∈ −1, 1 𝑛×𝑛 — матрица Адамара, и 𝑛 > 2, то 4|𝑛.
Доказательство:
От матрицы 𝐻 перейдём к эквивалентной матрице, в которой первые три строки
такие:
1 1 ⋯ 1
1 1 ⋯ 1
1 1 ⋯ 1
𝑖
1 1 ⋯ 1
1 1 ⋯ 1
−1 −1 ⋯ −1
𝑗
1 1 ⋯ 1
−1 −1 ⋯ −1
1 1 ⋯ 1
𝑘
1 1 ⋯ 1
−1 −1 ⋯ −1
−1 −1 ⋯ −1
𝑙
Отсюда
𝑖 + 𝑗 + 𝑘 + 𝑙 = 𝑛
𝑖 + 𝑗 − 𝑘 − 𝑙 = 0
𝑖 − 𝑗 − 𝑘 + 𝑙 = 0
𝑖 − 𝑗 + 𝑘 − 𝑙 = 0
Решение этой системы: 𝑖 = 𝑗 = 𝑘 = 𝑙 = 𝑛 4.
Порядок матриц Адамара
Гипотеза Адамара (не доказана).
Матрицы Адамара порядка 𝑛 существуют(?) для всех натуральных 𝑛,
кратных четырём.
Наименьший порядок, для которого пока не доказано
существование матрицы Адамара, равен 668.
Конструкция Сильвестра
Утверждение.
Матрица Адамара порядка 𝑛 существует для любого 𝑛 = 2 𝑘
.
Доказательство: (J.J. Sylvester)
Заметим, что если 𝐻 — матрица Адамара, то матрицей Адамара
будет и такая:
𝐻 𝐻
𝐻 −𝐻
.
Утверждение теперь следует по индукции из того факта, что
1 1
1 −1
— матрица Адамара.
Матрицы Адамара
Теорема. (R.E.A.C. Paley ’1933)
Если 𝑝 простое и 4| 𝑝 𝑚 + 1 , то существует матрица Адамара
порядка 𝑝 𝑚 + 1 .
(Конструкция Пэли на основе квадратичных вычетов.)
Квадратичные вычеты
Элемент 𝑎 ∈ 𝔽 𝑞 ∖ 0 называется квадратичным вычетом, если
𝑎 = 𝑥2
для некоторого 𝑥 ∈ 𝔽 𝑞.
Остальные элементы из 𝔽 𝑞 ∖ 0 называются квадратичными
невычетами.
Например, в ℤ7 элементы 1,2,4 — к.в.,
а 3,5,6 — к.н.
Квадратичные вычеты
Утверждение.
• Если 𝜆 — примитивный элемент 𝔽 𝑞, то элементы вида 𝜆2𝑡
являются к.в., а вида 𝜆2𝑡+1 — к.н.
• Если 𝑞 = 𝑝 𝑚
и 𝑝 > 2, то ровно половина элементов из 𝔽 𝑞 ∖ 0
являются к.в., а половина — к.н.
Везде далее будем предполагать, что 𝑝 > 2.
Символ Лежандра
Символ Лежандра 𝜒 𝑎 определяется так:
𝜒 𝑎 =
0, если 𝑎 = 0
1, если 𝑎 к. в.
−1, если 𝑎 к. н.
Утверждение.
Для любых 𝑎, 𝑏 ∈ 𝔽 𝑞 имеет место равенство
𝜒 𝑎 ⋅ 𝜒 𝑏 = 𝜒 𝑎𝑏
Квадратичные вычеты
Утверждение.
Для любого 𝑐 ∈ 𝔽 𝑞 ∖ 0 имеет место равенство
𝑏∈𝔽 𝑞
𝜒 𝑏 ⋅ 𝜒 𝑏 + 𝑐 = −1
Доказательство:
Т.к. ровно половина элементов 𝔽 𝑞 ∖ 0 квадратичными вычетами,
то 𝑎∈𝔽 𝑞
𝜒 𝑎 = 0.
Также заметим, что
𝑏∈𝔽 𝑞
𝜒 𝑏 ⋅ 𝜒 𝑏 + 𝑐 =
𝑏∈𝔽 𝑞∖ 0
𝜒 𝑏 ⋅ 𝜒 𝑏 + 𝑐
Квадратичные вычеты
С учётом замеченного, получаем
𝑏∈𝔽 𝑞∖ 0
𝜒 𝑏 ⋅ 𝜒 𝑏 + 𝑐 =
𝑏∈𝔽 𝑞∖ 0
𝜒 𝑏 ⋅ 𝜒 𝑏 ⋅ 𝑏−1 𝑏 + 𝑐 =
=
𝑏∈𝔽 𝑞∖ 0
𝜒 𝑏
2
⋅ 𝜒 𝑏−1 𝑏 + 𝑐 =
𝑏∈𝔽 𝑞∖ 0
𝜒 𝑏−1 𝑏 + 𝑐 =
=
𝑏∈𝔽 𝑞∖ 0
𝜒 1 + 𝑏−1
𝑐 =
𝑎∈𝔽 𝑞∖ 1
𝜒 𝑎 =
𝑎∈𝔽 𝑞
𝜒 𝑎 − 𝜒 1 = −1
Матрица Якобшталя (E. Jacobsthal)
Рассмотрим матрицу 𝑡 𝑎,𝑏 𝑎,𝑏∈𝔽 𝑞
∈ −1, 0, 1 𝑞×𝑞, в которой
𝑡 𝑎,𝑏 ≔ 𝜒 𝑎 − 𝑏 .
Скалярное произведение любых двух различных строк 𝑡 𝑎′,𝑏 𝑏∈𝔽 𝑞
и 𝑡 𝑎′′,𝑏 𝑏∈𝔽 𝑞
равно
𝑏∈𝔽 𝑞
𝜒 𝑎′
− 𝑏 ⋅ 𝜒 𝑎′′
− 𝑏 =
𝑏∈𝔽 𝑞
𝜒 𝑏 ⋅ 𝜒 𝑏 + 𝑎′′
− 𝑎′
= −1
«Подправленная» матрица Якобшталя
Рассмотрим матрицу 𝑡 𝑎,𝑏
′
𝑎,𝑏∈𝔽 𝑞
∈ −1, 1 𝑞×𝑞, в которой 𝑡 𝑎,𝑏
′
= 𝜒 𝑎 − 𝑏 , если
𝑎 ≠ 𝑏 и 𝑡 𝑎,𝑏
′
= −1 иначе.
Скалярное произведение различных строк 𝑡 𝑎′,𝑏
′
𝑏∈𝔽 𝑞
и 𝑡 𝑎′′,𝑏
′
𝑏∈𝔽 𝑞
равно
𝑏∈𝔽 𝑞
𝜒 𝑎′
− 𝑏 ⋅ 𝜒 𝑎′′
− 𝑏 − 𝜒 𝑎′
− 𝑎′′
− 𝜒 𝑎′′
− 𝑎′
=
= −1 − 𝜒 𝑎′ − 𝑎′′ − 𝜒 𝑎′′ − 𝑎′
Если −1 является квадратичным невычетом в 𝔽 𝑞, то
𝜒 𝑎′′ − 𝑎′ = 𝜒 −1 ⋅ 𝜒 𝑎′ − 𝑎′′ = −𝜒 𝑎′ − 𝑎′′ ,
и скалярное произведение получается равным −1.
«Подправленная» и «дополненная»
матрица Якобшталя
𝑇′
≔ 𝑡 𝑎,𝑏
′
𝑎,𝑏∈𝔽 𝑞
∈ −1, 1 𝑞×𝑞
,
где 𝑡 𝑎,𝑏
′
= 𝜒 𝑎 − 𝑏 , если 𝑎 ≠ 𝑏, и 𝑡 𝑎,𝑏
′
= −1 иначе.
Если −1 является квадратичным невычетом в 𝔽 𝑞, то скалярное
произведение любых двух строк матрицы 𝑇′ равно −1. Тогда
матрица
1 1 ⋯ 1
1
⋮ 𝑇′
1
является нормализованной матрицей Адамара.
Матрицы Адамара
Утверждение. (Без доказательства)
При 4| 𝑞 + 1 элемент −1 является квадратичным невычетом в 𝔽 𝑞.
Следствие.
Если 𝑝 простое и 4| 𝑝 𝑚
+ 1 , то существует матрица Адамара
порядка 𝑝 𝑚 + 1 .
Коды Адамара
Введены R.C. Bose, S.S. Shrikhande ’1959.
Идея:
В матрице Адамара любые две строки 𝒂, 𝒃 ортогональны. Т.к. 𝑎, 𝑏 ∈
−1, 1 𝑛 , это значит, что ровно половина координат у них
совпадает, а половина противоположны.
Заменяем координаты −1 → 0 и получаем из строк матрицы
двоичный код с большим кодовым расстоянием.
Коды Адамара
Пусть 𝐴 ∈ 0,1 𝑛×𝑛 — матрица, полученная из нормализованной
матрицы Адамара заменой элементов −1 на 0.
• Множество строк матрицы 𝐴 с отброшенной первой координатой
образует двоичный 𝑛 − 1, 𝑛, 𝑛
2
-код
• Множество строк матрицы 𝐴 и их дополнений образует
𝑛, 2𝑛, 𝑛
2
-код
Оптимальность кодов Адамара
Граница Плоткина (в двоичном случае)
Если 𝑁 < 2𝑑, то для любого 𝑁, 𝑀, 𝑑 -кода
𝑀 ≤
2𝑑
2𝑑 − 𝑁
Коды Адамара с параметрами 𝑛 − 1, 𝑛, 𝑛
2
достигают границы
Плоткина, имея максимально число слов при заданных длине
и кодовом расстоянии.
Каскадные коды
(предложены G.D. Forney ’1966)
Пусть
• 𝐶internal — 𝑛, 𝑚, 𝑑 𝑞-код (внутренний код)
• 𝐶external — 𝑁, 𝑀, 𝐷 𝑚-код (внешний код)
Символам алфавита кода 𝐶ext сопоставим слова кода 𝐶int.
Тогда кодовым словам кода 𝐶ext соответствуют слова длины 𝑁𝑛 в
алфавите кода 𝐶int.
Получаем каскадный 𝑁𝑛, 𝑀, 𝑑′
𝑞-код, где 𝑑′
≥ 𝐷𝑑.
Каскадные коды
(линейный двоичный случай)
Пусть
• 𝐶int — 𝑛, 𝑘, 𝑑 -код (внутренний код)
• 𝐶ext — 𝑁, 𝐾, 𝐷 2 𝑘-код (внешний код)
Элементам 𝔽2 𝑘 сопостaвим слова кода 𝐶int, так, чтобы линейная
комбинация элементов 𝔽2 𝑘 соответствовала линейной комбинации
слов кода 𝐶int.
Тогда кодовым словам кода 𝐶ext соответствуют слова длины 𝑁𝑛 в
алфавите кода 𝐶int.
Получаем каскадный 𝑁𝑛, 𝑘𝐾, 𝑑𝐷 -код.
Коды Форни
В качестве внешнего кода удобно взять оптимальный (например,
MDS) код над алфавитом большой (не слишком) мощности.
В качестве внутреннего кода можно взять близкий к оптимальному
код с не очень большим числом кодовых слов.
Сможем получить асимптотически хорошее семейство
линейных кодов, для которых есть полиномиальный алгоритм
декодирования.
Асимптотически хорошие коды
Пусть задано семейство двоичных кодов
𝐶 ≔ 𝐶 𝑛 𝑛=1
∞
Асимптотической скоростью семейства 𝐶 называется величина
rate 𝐶 ≔ lim
𝑛→∞
log2 𝐶 𝑛
𝑛
Асимптотическим относительным кодовым расстоянием
семейства 𝐶 называется величина
𝛿 𝐶 ≔ lim
𝑛→∞
𝑑 𝐶 𝑛
𝑛
Асимптотически хорошие коды
rate 𝐶 ≔ lim
𝑛→∞
log2 𝐶 𝑛
𝑛
𝛿 𝐶 ≔ lim
𝑛→∞
𝑑 𝐶 𝑛
𝑛
Семейство кодов называется асимптотически хорошим, если для
него rate 𝐶 > 0 и 𝛿 𝐶 > 0
До кодов Форни было неизвестно, существуют ли асимптотически
хорошие семейства кодов с полиномиальными алгоритмами
декодирования.
Теорема Варшамова—Гилберта
Теорема. (Р.Р. Варшамов, E.N. Gilbert)
Пусть натуральные числа 𝑛, 𝑘, 𝑑′ таковы, что
𝑗=0
𝑑′−1
𝑛 − 1
𝑗
< 2 𝑛−𝑘
Тогда существует 𝑛, 𝑘, 𝑑 -код, где 𝑑 > 𝑑′
.
Следствие.
Если 𝛿 < 0.5 и 𝜌 таковы, что 𝐻 𝛿 ≤ 1 − 𝜌, то существует
семейство линейных кодов 𝐶, для которого rate 𝐶 ≥ 𝜌 и 𝛿 𝐶 ≥ 𝛿.
Теорема Варшамова—Гилберта
(асимптотическая версия)
Доказательство следствия:
Если 𝑛, 𝑘, 𝑑′ таковы, что 𝐻 𝑑′ 𝑛 ≤ 1 − 𝑘
𝑛
, то
𝑗=0
𝑑′−1
𝑛 − 1
𝑗
< 2 𝑛⋅𝐻 𝑑′ 𝑛 ≤ 2 𝑛−𝑘,
то есть условия теоремы В.—Г. выполнены, и существует линейный
𝑛, 𝑘, 𝑑 -код, где 𝑑 > 𝑑′.
Если 𝐻 𝛿 ≤ 1 − 𝜌, то берём для каждого 𝑛
𝑘 ≔ 𝜌𝑛 , 𝑑′ ≔ 𝛿𝑛 , и получаем требуемое.
Цель
Теорема Варшамова—Гилберта не даёт полиномиальных (по длине
кодовых слов) алгоритмов построения кода и декодирования.
А хочется следующего:
• Для каждого 𝑛 строить порождающую или проверочную матрицу
некоторого линейного кода с длиной слов, размерностью и
кодовым расстоянием Ω 𝑛 . И всё за полиномиальное от 𝑛
время.
• Исправлять Ω 𝑛 ошибок в кодовых словах за полиномиальное от
𝑛 время.
Каскадный код Форни на основе
конструкции В.—Г. и кода Р.—С.
Пусть 𝑡 ∈ ℕ, и пусть 𝛿 < 0.5 — произвольное фиксированное число.
По теореме В.—Г., существует линейный код с параметрами
𝑡
1−𝐻 𝛿
, 𝑡, 𝛿𝑡
1−𝐻 𝛿
Возьмём этот код в качестве внутреннего.
В качестве внешнего возьмём RS-код с параметрами 2 𝑡, 2 𝑡−1, 2 𝑡−1 + 1 2 𝑡.
Получаем каскадный 𝑛, 𝑘, 𝑑 -код, для которого
𝑛 =
𝑡 ⋅ 2 𝑡
1 − 𝐻 𝛿
, 𝑘 =
𝑡 ⋅ 2 𝑡
2
, 𝑑 >
𝛿𝑡 ⋅ 2 𝑡
2 1 − 𝐻 𝛿
Каскадный код Форни на основе
конструкции В.—Г. и кода Р.—С.
Получаем каскадный 𝑛, 𝑘, 𝑑 -код, для которого
𝑛 =
𝑡 ⋅ 2 𝑡
1 − 𝐻 𝛿
, 𝑘 =
𝑡 ⋅ 2 𝑡
2
, 𝑑 >
𝛿𝑡 ⋅ 2 𝑡
2 1 − 𝐻 𝛿
Этот код является асимптотически хорошим, т.к. 𝑑
𝑛
≥ 𝛿
2 1−𝐻 𝛿
> 0 и
𝑘
𝑛
≥ 1
2 1−𝐻 𝛿
> 0.
Каскадный код Форни на основе
конструкции В.—Г. и кода Р.—С.
Получаем каскадный 𝑛, 𝑘, 𝑑 -код, для которого
𝑛 =
𝑡 ⋅ 2 𝑡
1 − 𝐻 𝛿
, 𝑘 =
𝑡 ⋅ 2 𝑡
2
, 𝑑 >
𝛿𝑡 ⋅ 2 𝑡
2 1 − 𝐻 𝛿
Вычислить порождающую матрицу кода можно при каждом 𝑡 за
полиномиальное время, т.к.
• коды Р.—С. строятся за полиномиальное время от своих
параметров,
• проверочная матрица кода в теореме В.—Г. строится хотя и
перебором, но параметры этого кода логарифмичны по 𝑛.
Каскадный код Форни на основе
конструкции В.—Г. и кода Р.—С.
Получаем каскадный 𝑛, 𝑘, 𝑑 -код, для которого
𝑛 =
𝑡 ⋅ 2 𝑡
1 − 𝐻 𝛿
, 𝑘 =
𝑡 ⋅ 2 𝑡
2
, 𝑑 >
𝛿𝑡 ⋅ 2 𝑡
2 1 − 𝐻 𝛿
Существует «почти тривиальный» полиномиальный алгоритм,
декодирующий кодовые слова, принятые с не более чем 𝛿𝑡⋅2 𝑡
8 1−𝐻 𝛿
ошибками.
Тривиальный алгоритм декодирования
кодов Форни
Каждое слово кода Форни имеет вид
𝒄 = 𝒂1 𝒂2 … 𝒂2 𝑡
где 𝒂𝑖 — слова кода В.—Г. длины 𝑡
1−𝐻 𝛿
.
Если в слове 𝒄 произошло ≤ 𝛿𝑡⋅2 𝑡
8 1−𝐻 𝛿
ошибок, и в результате принято слово
𝒄 = 𝒂1 𝒂2 … 𝒂2 𝑡, то слово 𝒄 восстанавливаем в два шага:
• Для каждого 𝒂𝑖 перебором ищем ближайшее к нему слово кода В.—Г.
При этом неверно восстановленных слов может быть не более
𝛿𝑡⋅2 𝑡
8 1−𝐻 𝛿
𝛿𝑡
2 1−𝐻 𝛿
= 2 𝑡−2.
• Кодовое расстояние внешнего кода равно 2 𝑡−1
+ 1 , поэтому даже 2 𝑡−2
ошибок он успешно исправит.
Пояснения к алгоритму декодирования
кодов Форни
Пусть слово 𝒄 = 𝒂1 𝒂2 … 𝒂2 𝑡 исказилось в 𝑠 разрядах и перешло в
слово 𝒄 = 𝒂1 𝒂2 … 𝒂2 𝑡.
𝒂𝑖 — слова кода В.—Г. с расстоянием 𝑑int.
Пусть 𝐼 = 𝑖 ∣ 𝑑 𝒂𝑖, 𝒂𝑖 ≥ 𝑑int
2
, где 𝐼 ≤ 2𝑠
𝑑int
.
Т.к. на первом шаге проблемы с исправлением могут быть только у
слов 𝒂𝑖, у которых 𝑖 ∈ 𝐼, то на втором шаге, рассматривая каждое
𝒂𝑖 как один элемент поля 𝔽2 𝑡, мы получаем задачу восстановления
слова кода Р.—С. с ошибками не более чем в 2𝑠
𝑑int
разрядах.

More Related Content

What's hot (20)

Теорема Алона о нулях и её применения
Теорема Алона о нулях и её примененияТеорема Алона о нулях и её применения
Теорема Алона о нулях и её применения
Alex Dainiak
Гиперграфы. Покрытия. Жадный алгоритм.
Гиперграфы. Покрытия. Жадный алгоритм.Гиперграфы. Покрытия. Жадный алгоритм.
Гиперграфы. Покрытия. Жадный алгоритм.
Alex Dainiak
Разбор задач модуля Комбинаторика l
Разбор задач модуля Комбинаторика lРазбор задач модуля Комбинаторика l
Разбор задач модуля Комбинаторика l
DEVTYPE
Основы теории графов 09: раскраски планарных графов, совершенные графы
Основы теории графов 09: раскраски планарных графов, совершенные графыОсновы теории графов 09: раскраски планарных графов, совершенные графы
Основы теории графов 09: раскраски планарных графов, совершенные графы
Alex Dainiak
Основы теории графов 10: экстремальная теория графов
Основы теории графов 10: экстремальная теория графовОсновы теории графов 10: экстремальная теория графов
Основы теории графов 10: экстремальная теория графов
Alex Dainiak
Линейная алгебра - I. Разбор задач
Линейная алгебра - I. Разбор задачЛинейная алгебра - I. Разбор задач
Линейная алгебра - I. Разбор задач
DEVTYPE
массивы.строки
массивы.строкимассивы.строки
массивы.строки
dasha2012
Линейная алгебра - II
Линейная алгебра - IIЛинейная алгебра - II
Линейная алгебра - II
DEVTYPE
Основы комбинаторики - I
Основы комбинаторики - IОсновы комбинаторики - I
Основы комбинаторики - I
DEVTYPE
Egje po matematike_zadaniya_s5
Egje po matematike_zadaniya_s5Egje po matematike_zadaniya_s5
Egje po matematike_zadaniya_s5
Иван Иванов
Линейная алгебра ll. Разбор задач второго модуля
Линейная алгебра ll. Разбор задач второго модуляЛинейная алгебра ll. Разбор задач второго модуля
Линейная алгебра ll. Разбор задач второго модуля
DEVTYPE
Основы теории графов 07: сепараторы в планарных графах
Основы теории графов 07: сепараторы в планарных графахОсновы теории графов 07: сепараторы в планарных графах
Основы теории графов 07: сепараторы в планарных графах
Alex Dainiak
Линейная алгебра - I
Линейная алгебра - IЛинейная алгебра - I
Линейная алгебра - I
DEVTYPE
Разбор задач модуля "Теория графов ll"
Разбор задач модуля "Теория графов ll"Разбор задач модуля "Теория графов ll"
Разбор задач модуля "Теория графов ll"
DEVTYPE
Основы комбинаторики - II
Основы комбинаторики - IIОсновы комбинаторики - II
Основы комбинаторики - II
DEVTYPE
Основы теории графов 11: гамильтоновы циклы
Основы теории графов 11: гамильтоновы циклыОсновы теории графов 11: гамильтоновы циклы
Основы теории графов 11: гамильтоновы циклы
Alex Dainiak
Основы комбинаторики II. Разбор задач
Основы комбинаторики II. Разбор задачОсновы комбинаторики II. Разбор задач
Основы комбинаторики II. Разбор задач
DEVTYPE
Теорема Алона о нулях и её применения
Теорема Алона о нулях и её примененияТеорема Алона о нулях и её применения
Теорема Алона о нулях и её применения
Alex Dainiak
Гиперграфы. Покрытия. Жадный алгоритм.
Гиперграфы. Покрытия. Жадный алгоритм.Гиперграфы. Покрытия. Жадный алгоритм.
Гиперграфы. Покрытия. Жадный алгоритм.
Alex Dainiak
Разбор задач модуля Комбинаторика l
Разбор задач модуля Комбинаторика lРазбор задач модуля Комбинаторика l
Разбор задач модуля Комбинаторика l
DEVTYPE
Основы теории графов 09: раскраски планарных графов, совершенные графы
Основы теории графов 09: раскраски планарных графов, совершенные графыОсновы теории графов 09: раскраски планарных графов, совершенные графы
Основы теории графов 09: раскраски планарных графов, совершенные графы
Alex Dainiak
Основы теории графов 10: экстремальная теория графов
Основы теории графов 10: экстремальная теория графовОсновы теории графов 10: экстремальная теория графов
Основы теории графов 10: экстремальная теория графов
Alex Dainiak
Линейная алгебра - I. Разбор задач
Линейная алгебра - I. Разбор задачЛинейная алгебра - I. Разбор задач
Линейная алгебра - I. Разбор задач
DEVTYPE
массивы.строки
массивы.строкимассивы.строки
массивы.строки
dasha2012
Линейная алгебра - II
Линейная алгебра - IIЛинейная алгебра - II
Линейная алгебра - II
DEVTYPE
Основы комбинаторики - I
Основы комбинаторики - IОсновы комбинаторики - I
Основы комбинаторики - I
DEVTYPE
Линейная алгебра ll. Разбор задач второго модуля
Линейная алгебра ll. Разбор задач второго модуляЛинейная алгебра ll. Разбор задач второго модуля
Линейная алгебра ll. Разбор задач второго модуля
DEVTYPE
Основы теории графов 07: сепараторы в планарных графах
Основы теории графов 07: сепараторы в планарных графахОсновы теории графов 07: сепараторы в планарных графах
Основы теории графов 07: сепараторы в планарных графах
Alex Dainiak
Линейная алгебра - I
Линейная алгебра - IЛинейная алгебра - I
Линейная алгебра - I
DEVTYPE
Разбор задач модуля "Теория графов ll"
Разбор задач модуля "Теория графов ll"Разбор задач модуля "Теория графов ll"
Разбор задач модуля "Теория графов ll"
DEVTYPE
Основы комбинаторики - II
Основы комбинаторики - IIОсновы комбинаторики - II
Основы комбинаторики - II
DEVTYPE
Основы теории графов 11: гамильтоновы циклы
Основы теории графов 11: гамильтоновы циклыОсновы теории графов 11: гамильтоновы циклы
Основы теории графов 11: гамильтоновы циклы
Alex Dainiak
Основы комбинаторики II. Разбор задач
Основы комбинаторики II. Разбор задачОсновы комбинаторики II. Разбор задач
Основы комбинаторики II. Разбор задач
DEVTYPE

Similar to Коды Адамара. Каскадные коды Форни. (20)

Алфавитное кодирование. Коды с минимальной избыточностью. Теорема Макмиллана.
Алфавитное кодирование. Коды с минимальной избыточностью. Теорема Макмиллана.Алфавитное кодирование. Коды с минимальной избыточностью. Теорема Макмиллана.
Алфавитное кодирование. Коды с минимальной избыточностью. Теорема Макмиллана.
Alex Dainiak
Теорема Рамсея, оценки чисел Рамсея
Теорема Рамсея, оценки чисел РамсеяТеорема Рамсея, оценки чисел Рамсея
Теорема Рамсея, оценки чисел Рамсея
Alex Dainiak
Use of eliptic curves for generating digital signature
Use of eliptic curves for generating digital signatureUse of eliptic curves for generating digital signature
Use of eliptic curves for generating digital signature
Andrei Poliakov
Григорий Анатольевич Кабатянский - Конечные алгебры, геометрии и коды
Григорий Анатольевич Кабатянский - Конечные алгебры, геометрии и кодыГригорий Анатольевич Кабатянский - Конечные алгебры, геометрии и коды
Григорий Анатольевич Кабатянский - Конечные алгебры, геометрии и коды
Yandex
Основы теории графов 03: связность
Основы теории графов 03: связностьОсновы теории графов 03: связность
Основы теории графов 03: связность
Alex Dainiak
Графовая модель канала связи. Шенноновская ёмкость
Графовая модель канала связи. Шенноновская ёмкостьГрафовая модель канала связи. Шенноновская ёмкость
Графовая модель канала связи. Шенноновская ёмкость
Alex Dainiak
Основы теории графов 04: метрики на деревьях
Основы теории графов 04: метрики на деревьяхОсновы теории графов 04: метрики на деревьях
Основы теории графов 04: метрики на деревьях
Alex Dainiak
Производящие функции
Производящие функцииПроизводящие функции
Производящие функции
Alex Dainiak
презентация по теме «действительные числа»
презентация по теме «действительные числа»презентация по теме «действительные числа»
презентация по теме «действительные числа»
Kirrrr123
Основы теории графов 08: раскраски и списочные раскраски
Основы теории графов 08: раскраски и списочные раскраскиОсновы теории графов 08: раскраски и списочные раскраски
Основы теории графов 08: раскраски и списочные раскраски
Alex Dainiak
9 1.1 - системы счисления
9 1.1 - системы счисления9 1.1 - системы счисления
9 1.1 - системы счисления
jula-mam
1742 повторяем математику за курс средней школы арефьева и.г-2015 -118с
1742  повторяем математику за курс средней школы арефьева и.г-2015 -118с1742  повторяем математику за курс средней школы арефьева и.г-2015 -118с
1742 повторяем математику за курс средней школы арефьева и.г-2015 -118с
psvayy
Системы счисления
Системы счисленияСистемы счисления
Системы счисления
Andrey Dolinin
Обращение Мёбиуса на ч.у.м.
Обращение Мёбиуса на ч.у.м.Обращение Мёбиуса на ч.у.м.
Обращение Мёбиуса на ч.у.м.
Alex Dainiak
Об одном методе автоматической транскрипции
Об одном методе автоматической транскрипцииОб одном методе автоматической транскрипции
Об одном методе автоматической транскрипции
Спецсеминар "Искусственный Интеллект" кафедры АЯ ВМК МГУ
Short instruction laba1
Short instruction laba1Short instruction laba1
Short instruction laba1
Научно-образовательный кластер CLAIM
Лекция №16. Поиск подстрок. Предмет "Структуры и алгоритмы обработки данных"
Лекция №16. Поиск подстрок. Предмет "Структуры и алгоритмы обработки данных"Лекция №16. Поиск подстрок. Предмет "Структуры и алгоритмы обработки данных"
Лекция №16. Поиск подстрок. Предмет "Структуры и алгоритмы обработки данных"
Nikolay Grebenshikov
ТФРВС - весна 2014 - лекция 4
ТФРВС - весна 2014 - лекция 4ТФРВС - весна 2014 - лекция 4
ТФРВС - весна 2014 - лекция 4
Alexey Paznikov
!Predictive analytics part_2
!Predictive analytics part_2!Predictive analytics part_2
!Predictive analytics part_2
Vladimir Krylov
Алфавитное кодирование. Коды с минимальной избыточностью. Теорема Макмиллана.
Алфавитное кодирование. Коды с минимальной избыточностью. Теорема Макмиллана.Алфавитное кодирование. Коды с минимальной избыточностью. Теорема Макмиллана.
Алфавитное кодирование. Коды с минимальной избыточностью. Теорема Макмиллана.
Alex Dainiak
Теорема Рамсея, оценки чисел Рамсея
Теорема Рамсея, оценки чисел РамсеяТеорема Рамсея, оценки чисел Рамсея
Теорема Рамсея, оценки чисел Рамсея
Alex Dainiak
Use of eliptic curves for generating digital signature
Use of eliptic curves for generating digital signatureUse of eliptic curves for generating digital signature
Use of eliptic curves for generating digital signature
Andrei Poliakov
Григорий Анатольевич Кабатянский - Конечные алгебры, геометрии и коды
Григорий Анатольевич Кабатянский - Конечные алгебры, геометрии и кодыГригорий Анатольевич Кабатянский - Конечные алгебры, геометрии и коды
Григорий Анатольевич Кабатянский - Конечные алгебры, геометрии и коды
Yandex
Основы теории графов 03: связность
Основы теории графов 03: связностьОсновы теории графов 03: связность
Основы теории графов 03: связность
Alex Dainiak
Графовая модель канала связи. Шенноновская ёмкость
Графовая модель канала связи. Шенноновская ёмкостьГрафовая модель канала связи. Шенноновская ёмкость
Графовая модель канала связи. Шенноновская ёмкость
Alex Dainiak
Основы теории графов 04: метрики на деревьях
Основы теории графов 04: метрики на деревьяхОсновы теории графов 04: метрики на деревьях
Основы теории графов 04: метрики на деревьях
Alex Dainiak
Производящие функции
Производящие функцииПроизводящие функции
Производящие функции
Alex Dainiak
презентация по теме «действительные числа»
презентация по теме «действительные числа»презентация по теме «действительные числа»
презентация по теме «действительные числа»
Kirrrr123
Основы теории графов 08: раскраски и списочные раскраски
Основы теории графов 08: раскраски и списочные раскраскиОсновы теории графов 08: раскраски и списочные раскраски
Основы теории графов 08: раскраски и списочные раскраски
Alex Dainiak
9 1.1 - системы счисления
9 1.1 - системы счисления9 1.1 - системы счисления
9 1.1 - системы счисления
jula-mam
1742 повторяем математику за курс средней школы арефьева и.г-2015 -118с
1742  повторяем математику за курс средней школы арефьева и.г-2015 -118с1742  повторяем математику за курс средней школы арефьева и.г-2015 -118с
1742 повторяем математику за курс средней школы арефьева и.г-2015 -118с
psvayy
Системы счисления
Системы счисленияСистемы счисления
Системы счисления
Andrey Dolinin
Обращение Мёбиуса на ч.у.м.
Обращение Мёбиуса на ч.у.м.Обращение Мёбиуса на ч.у.м.
Обращение Мёбиуса на ч.у.м.
Alex Dainiak
Лекция №16. Поиск подстрок. Предмет "Структуры и алгоритмы обработки данных"
Лекция №16. Поиск подстрок. Предмет "Структуры и алгоритмы обработки данных"Лекция №16. Поиск подстрок. Предмет "Структуры и алгоритмы обработки данных"
Лекция №16. Поиск подстрок. Предмет "Структуры и алгоритмы обработки данных"
Nikolay Grebenshikov
ТФРВС - весна 2014 - лекция 4
ТФРВС - весна 2014 - лекция 4ТФРВС - весна 2014 - лекция 4
ТФРВС - весна 2014 - лекция 4
Alexey Paznikov

More from Alex Dainiak (12)

Основы теории графов 06: триангуляции и трёхсвязные планарные графы
Основы теории графов 06: триангуляции и трёхсвязные планарные графыОсновы теории графов 06: триангуляции и трёхсвязные планарные графы
Основы теории графов 06: триангуляции и трёхсвязные планарные графы
Alex Dainiak
Основы теории графов 05: критерии планарности графов
Основы теории графов 05: критерии планарности графовОсновы теории графов 05: критерии планарности графов
Основы теории графов 05: критерии планарности графов
Alex Dainiak
Основы теории графов 01: напоминание определений, теорема Форда—Фалкерсона
Основы теории графов 01: напоминание определений, теорема Форда—ФалкерсонаОсновы теории графов 01: напоминание определений, теорема Форда—Фалкерсона
Основы теории графов 01: напоминание определений, теорема Форда—Фалкерсона
Alex Dainiak
Основы теории графов 02: факторизация графов (разложение на простые подграфы)
Основы теории графов 02: факторизация графов (разложение на простые подграфы)Основы теории графов 02: факторизация графов (разложение на простые подграфы)
Основы теории графов 02: факторизация графов (разложение на простые подграфы)
Alex Dainiak
Конспект лекций по теории кодирования
Конспект лекций по теории кодированияКонспект лекций по теории кодирования
Конспект лекций по теории кодирования
Alex Dainiak
Визуализация графов: left-right алгоритм распознавания планарности
Визуализация графов: left-right алгоритм распознавания планарностиВизуализация графов: left-right алгоритм распознавания планарности
Визуализация графов: left-right алгоритм распознавания планарности
Alex Dainiak
Визуализация графов: укладки деревьев
Визуализация графов: укладки деревьевВизуализация графов: укладки деревьев
Визуализация графов: укладки деревьев
Alex Dainiak
Визуализация графов: теорема Татта о барицентрической укладке
Визуализация графов: теорема Татта о барицентрической укладкеВизуализация графов: теорема Татта о барицентрической укладке
Визуализация графов: теорема Татта о барицентрической укладке
Alex Dainiak
Визуализация графов: история
Визуализация графов: историяВизуализация графов: история
Визуализация графов: история
Alex Dainiak
Визуализация графов: нижние оценки и NP-трудность
Визуализация графов: нижние оценки и NP-трудностьВизуализация графов: нижние оценки и NP-трудность
Визуализация графов: нижние оценки и NP-трудность
Alex Dainiak
Размерность Вапника—Червоненкиса
Размерность Вапника—ЧервоненкисаРазмерность Вапника—Червоненкиса
Размерность Вапника—Червоненкиса
Alex Dainiak
Частично-упорядоченные множества, булеан, теоремы о разложении на цепи и анти...
Частично-упорядоченные множества, булеан, теоремы о разложении на цепи и анти...Частично-упорядоченные множества, булеан, теоремы о разложении на цепи и анти...
Частично-упорядоченные множества, булеан, теоремы о разложении на цепи и анти...
Alex Dainiak
Основы теории графов 06: триангуляции и трёхсвязные планарные графы
Основы теории графов 06: триангуляции и трёхсвязные планарные графыОсновы теории графов 06: триангуляции и трёхсвязные планарные графы
Основы теории графов 06: триангуляции и трёхсвязные планарные графы
Alex Dainiak
Основы теории графов 05: критерии планарности графов
Основы теории графов 05: критерии планарности графовОсновы теории графов 05: критерии планарности графов
Основы теории графов 05: критерии планарности графов
Alex Dainiak
Основы теории графов 01: напоминание определений, теорема Форда—Фалкерсона
Основы теории графов 01: напоминание определений, теорема Форда—ФалкерсонаОсновы теории графов 01: напоминание определений, теорема Форда—Фалкерсона
Основы теории графов 01: напоминание определений, теорема Форда—Фалкерсона
Alex Dainiak
Основы теории графов 02: факторизация графов (разложение на простые подграфы)
Основы теории графов 02: факторизация графов (разложение на простые подграфы)Основы теории графов 02: факторизация графов (разложение на простые подграфы)
Основы теории графов 02: факторизация графов (разложение на простые подграфы)
Alex Dainiak
Конспект лекций по теории кодирования
Конспект лекций по теории кодированияКонспект лекций по теории кодирования
Конспект лекций по теории кодирования
Alex Dainiak
Визуализация графов: left-right алгоритм распознавания планарности
Визуализация графов: left-right алгоритм распознавания планарностиВизуализация графов: left-right алгоритм распознавания планарности
Визуализация графов: left-right алгоритм распознавания планарности
Alex Dainiak
Визуализация графов: укладки деревьев
Визуализация графов: укладки деревьевВизуализация графов: укладки деревьев
Визуализация графов: укладки деревьев
Alex Dainiak
Визуализация графов: теорема Татта о барицентрической укладке
Визуализация графов: теорема Татта о барицентрической укладкеВизуализация графов: теорема Татта о барицентрической укладке
Визуализация графов: теорема Татта о барицентрической укладке
Alex Dainiak
Визуализация графов: история
Визуализация графов: историяВизуализация графов: история
Визуализация графов: история
Alex Dainiak
Визуализация графов: нижние оценки и NP-трудность
Визуализация графов: нижние оценки и NP-трудностьВизуализация графов: нижние оценки и NP-трудность
Визуализация графов: нижние оценки и NP-трудность
Alex Dainiak
Размерность Вапника—Червоненкиса
Размерность Вапника—ЧервоненкисаРазмерность Вапника—Червоненкиса
Размерность Вапника—Червоненкиса
Alex Dainiak
Частично-упорядоченные множества, булеан, теоремы о разложении на цепи и анти...
Частично-упорядоченные множества, булеан, теоремы о разложении на цепи и анти...Частично-упорядоченные множества, булеан, теоремы о разложении на цепи и анти...
Частично-упорядоченные множества, булеан, теоремы о разложении на цепи и анти...
Alex Dainiak

Коды Адамара. Каскадные коды Форни.

  • 1. Теория кодирования МФТИ, осень 2013 Александр Дайняк www.dainiak.com
  • 2. Матрицы Адамара (J. Hadamard) Матрица Адамара — это квадратная матрица из −1, 1 𝑛×𝑛, в которой любые две строки ортогональны. Примеры: 1 1 1 −1 1 1 1 1 1 1 −1 −1 1 −1 −1 1 1 −1 1 −1
  • 3. Теорема Адамара Матрицы Адамара берут начало от следующей теоремы: Теорема. (J. Hadamard) Если 𝐴 = 𝑎𝑖𝑗 1≤𝑖,𝑗≤𝑛 ∈ ℝ 𝑛×𝑛 и 𝑎𝑖𝑗 ≤ 1 для любых 𝑖, 𝑗, то тогда det 𝐴 ≤ 𝑛 𝑛 2 Доказательство: • det 𝐴 — это объём параллелепипеда, построенного на векторах-строках матрицы 𝐴 • Объём максимален, когда длины сторон максимальны (максимум равен 𝑛 при 𝑎𝑖𝑗 = 1) и углы между сторонами прямые (т.е. векторы ортогональны).
  • 4. Матрицы Адамара Если 𝐻 — матрица Адамара, то • Матрица, полученная из 𝐻 перестановками строк/столбцов, тоже является матрицей Адамара. • Матрица, полученная из 𝐻 умножением строк/столбцов на −1, тоже является матрицей Адамара. Матрицы Адамара, получаемые друг из друга такими преобразованиями, эквивалентны.
  • 5. Матрицы Адамара Любую матрицу Адамара умножением строк/столбцов на −1 можно привести к виду 1 1 ⋯ 1 1 ⋮ 1 Такая матрица Адамара называется нормализованной.
  • 6. Порядок матриц Адамара Утверждение. Если 𝐻 ∈ −1, 1 𝑛×𝑛 — матрица Адамара, и 𝑛 > 2, то 4|𝑛. Доказательство: От матрицы 𝐻 перейдём к эквивалентной матрице, в которой первые три строки такие: 1 1 ⋯ 1 1 1 ⋯ 1 1 1 ⋯ 1 𝑖 1 1 ⋯ 1 1 1 ⋯ 1 −1 −1 ⋯ −1 𝑗 1 1 ⋯ 1 −1 −1 ⋯ −1 1 1 ⋯ 1 𝑘 1 1 ⋯ 1 −1 −1 ⋯ −1 −1 −1 ⋯ −1 𝑙 Отсюда 𝑖 + 𝑗 + 𝑘 + 𝑙 = 𝑛 𝑖 + 𝑗 − 𝑘 − 𝑙 = 0 𝑖 − 𝑗 − 𝑘 + 𝑙 = 0 𝑖 − 𝑗 + 𝑘 − 𝑙 = 0 Решение этой системы: 𝑖 = 𝑗 = 𝑘 = 𝑙 = 𝑛 4.
  • 7. Порядок матриц Адамара Гипотеза Адамара (не доказана). Матрицы Адамара порядка 𝑛 существуют(?) для всех натуральных 𝑛, кратных четырём. Наименьший порядок, для которого пока не доказано существование матрицы Адамара, равен 668.
  • 8. Конструкция Сильвестра Утверждение. Матрица Адамара порядка 𝑛 существует для любого 𝑛 = 2 𝑘 . Доказательство: (J.J. Sylvester) Заметим, что если 𝐻 — матрица Адамара, то матрицей Адамара будет и такая: 𝐻 𝐻 𝐻 −𝐻 . Утверждение теперь следует по индукции из того факта, что 1 1 1 −1 — матрица Адамара.
  • 9. Матрицы Адамара Теорема. (R.E.A.C. Paley ’1933) Если 𝑝 простое и 4| 𝑝 𝑚 + 1 , то существует матрица Адамара порядка 𝑝 𝑚 + 1 . (Конструкция Пэли на основе квадратичных вычетов.)
  • 10. Квадратичные вычеты Элемент 𝑎 ∈ 𝔽 𝑞 ∖ 0 называется квадратичным вычетом, если 𝑎 = 𝑥2 для некоторого 𝑥 ∈ 𝔽 𝑞. Остальные элементы из 𝔽 𝑞 ∖ 0 называются квадратичными невычетами. Например, в ℤ7 элементы 1,2,4 — к.в., а 3,5,6 — к.н.
  • 11. Квадратичные вычеты Утверждение. • Если 𝜆 — примитивный элемент 𝔽 𝑞, то элементы вида 𝜆2𝑡 являются к.в., а вида 𝜆2𝑡+1 — к.н. • Если 𝑞 = 𝑝 𝑚 и 𝑝 > 2, то ровно половина элементов из 𝔽 𝑞 ∖ 0 являются к.в., а половина — к.н. Везде далее будем предполагать, что 𝑝 > 2.
  • 12. Символ Лежандра Символ Лежандра 𝜒 𝑎 определяется так: 𝜒 𝑎 = 0, если 𝑎 = 0 1, если 𝑎 к. в. −1, если 𝑎 к. н. Утверждение. Для любых 𝑎, 𝑏 ∈ 𝔽 𝑞 имеет место равенство 𝜒 𝑎 ⋅ 𝜒 𝑏 = 𝜒 𝑎𝑏
  • 13. Квадратичные вычеты Утверждение. Для любого 𝑐 ∈ 𝔽 𝑞 ∖ 0 имеет место равенство 𝑏∈𝔽 𝑞 𝜒 𝑏 ⋅ 𝜒 𝑏 + 𝑐 = −1 Доказательство: Т.к. ровно половина элементов 𝔽 𝑞 ∖ 0 квадратичными вычетами, то 𝑎∈𝔽 𝑞 𝜒 𝑎 = 0. Также заметим, что 𝑏∈𝔽 𝑞 𝜒 𝑏 ⋅ 𝜒 𝑏 + 𝑐 = 𝑏∈𝔽 𝑞∖ 0 𝜒 𝑏 ⋅ 𝜒 𝑏 + 𝑐
  • 14. Квадратичные вычеты С учётом замеченного, получаем 𝑏∈𝔽 𝑞∖ 0 𝜒 𝑏 ⋅ 𝜒 𝑏 + 𝑐 = 𝑏∈𝔽 𝑞∖ 0 𝜒 𝑏 ⋅ 𝜒 𝑏 ⋅ 𝑏−1 𝑏 + 𝑐 = = 𝑏∈𝔽 𝑞∖ 0 𝜒 𝑏 2 ⋅ 𝜒 𝑏−1 𝑏 + 𝑐 = 𝑏∈𝔽 𝑞∖ 0 𝜒 𝑏−1 𝑏 + 𝑐 = = 𝑏∈𝔽 𝑞∖ 0 𝜒 1 + 𝑏−1 𝑐 = 𝑎∈𝔽 𝑞∖ 1 𝜒 𝑎 = 𝑎∈𝔽 𝑞 𝜒 𝑎 − 𝜒 1 = −1
  • 15. Матрица Якобшталя (E. Jacobsthal) Рассмотрим матрицу 𝑡 𝑎,𝑏 𝑎,𝑏∈𝔽 𝑞 ∈ −1, 0, 1 𝑞×𝑞, в которой 𝑡 𝑎,𝑏 ≔ 𝜒 𝑎 − 𝑏 . Скалярное произведение любых двух различных строк 𝑡 𝑎′,𝑏 𝑏∈𝔽 𝑞 и 𝑡 𝑎′′,𝑏 𝑏∈𝔽 𝑞 равно 𝑏∈𝔽 𝑞 𝜒 𝑎′ − 𝑏 ⋅ 𝜒 𝑎′′ − 𝑏 = 𝑏∈𝔽 𝑞 𝜒 𝑏 ⋅ 𝜒 𝑏 + 𝑎′′ − 𝑎′ = −1
  • 16. «Подправленная» матрица Якобшталя Рассмотрим матрицу 𝑡 𝑎,𝑏 ′ 𝑎,𝑏∈𝔽 𝑞 ∈ −1, 1 𝑞×𝑞, в которой 𝑡 𝑎,𝑏 ′ = 𝜒 𝑎 − 𝑏 , если 𝑎 ≠ 𝑏 и 𝑡 𝑎,𝑏 ′ = −1 иначе. Скалярное произведение различных строк 𝑡 𝑎′,𝑏 ′ 𝑏∈𝔽 𝑞 и 𝑡 𝑎′′,𝑏 ′ 𝑏∈𝔽 𝑞 равно 𝑏∈𝔽 𝑞 𝜒 𝑎′ − 𝑏 ⋅ 𝜒 𝑎′′ − 𝑏 − 𝜒 𝑎′ − 𝑎′′ − 𝜒 𝑎′′ − 𝑎′ = = −1 − 𝜒 𝑎′ − 𝑎′′ − 𝜒 𝑎′′ − 𝑎′ Если −1 является квадратичным невычетом в 𝔽 𝑞, то 𝜒 𝑎′′ − 𝑎′ = 𝜒 −1 ⋅ 𝜒 𝑎′ − 𝑎′′ = −𝜒 𝑎′ − 𝑎′′ , и скалярное произведение получается равным −1.
  • 17. «Подправленная» и «дополненная» матрица Якобшталя 𝑇′ ≔ 𝑡 𝑎,𝑏 ′ 𝑎,𝑏∈𝔽 𝑞 ∈ −1, 1 𝑞×𝑞 , где 𝑡 𝑎,𝑏 ′ = 𝜒 𝑎 − 𝑏 , если 𝑎 ≠ 𝑏, и 𝑡 𝑎,𝑏 ′ = −1 иначе. Если −1 является квадратичным невычетом в 𝔽 𝑞, то скалярное произведение любых двух строк матрицы 𝑇′ равно −1. Тогда матрица 1 1 ⋯ 1 1 ⋮ 𝑇′ 1 является нормализованной матрицей Адамара.
  • 18. Матрицы Адамара Утверждение. (Без доказательства) При 4| 𝑞 + 1 элемент −1 является квадратичным невычетом в 𝔽 𝑞. Следствие. Если 𝑝 простое и 4| 𝑝 𝑚 + 1 , то существует матрица Адамара порядка 𝑝 𝑚 + 1 .
  • 19. Коды Адамара Введены R.C. Bose, S.S. Shrikhande ’1959. Идея: В матрице Адамара любые две строки 𝒂, 𝒃 ортогональны. Т.к. 𝑎, 𝑏 ∈ −1, 1 𝑛 , это значит, что ровно половина координат у них совпадает, а половина противоположны. Заменяем координаты −1 → 0 и получаем из строк матрицы двоичный код с большим кодовым расстоянием.
  • 20. Коды Адамара Пусть 𝐴 ∈ 0,1 𝑛×𝑛 — матрица, полученная из нормализованной матрицы Адамара заменой элементов −1 на 0. • Множество строк матрицы 𝐴 с отброшенной первой координатой образует двоичный 𝑛 − 1, 𝑛, 𝑛 2 -код • Множество строк матрицы 𝐴 и их дополнений образует 𝑛, 2𝑛, 𝑛 2 -код
  • 21. Оптимальность кодов Адамара Граница Плоткина (в двоичном случае) Если 𝑁 < 2𝑑, то для любого 𝑁, 𝑀, 𝑑 -кода 𝑀 ≤ 2𝑑 2𝑑 − 𝑁 Коды Адамара с параметрами 𝑛 − 1, 𝑛, 𝑛 2 достигают границы Плоткина, имея максимально число слов при заданных длине и кодовом расстоянии.
  • 22. Каскадные коды (предложены G.D. Forney ’1966) Пусть • 𝐶internal — 𝑛, 𝑚, 𝑑 𝑞-код (внутренний код) • 𝐶external — 𝑁, 𝑀, 𝐷 𝑚-код (внешний код) Символам алфавита кода 𝐶ext сопоставим слова кода 𝐶int. Тогда кодовым словам кода 𝐶ext соответствуют слова длины 𝑁𝑛 в алфавите кода 𝐶int. Получаем каскадный 𝑁𝑛, 𝑀, 𝑑′ 𝑞-код, где 𝑑′ ≥ 𝐷𝑑.
  • 23. Каскадные коды (линейный двоичный случай) Пусть • 𝐶int — 𝑛, 𝑘, 𝑑 -код (внутренний код) • 𝐶ext — 𝑁, 𝐾, 𝐷 2 𝑘-код (внешний код) Элементам 𝔽2 𝑘 сопостaвим слова кода 𝐶int, так, чтобы линейная комбинация элементов 𝔽2 𝑘 соответствовала линейной комбинации слов кода 𝐶int. Тогда кодовым словам кода 𝐶ext соответствуют слова длины 𝑁𝑛 в алфавите кода 𝐶int. Получаем каскадный 𝑁𝑛, 𝑘𝐾, 𝑑𝐷 -код.
  • 24. Коды Форни В качестве внешнего кода удобно взять оптимальный (например, MDS) код над алфавитом большой (не слишком) мощности. В качестве внутреннего кода можно взять близкий к оптимальному код с не очень большим числом кодовых слов. Сможем получить асимптотически хорошее семейство линейных кодов, для которых есть полиномиальный алгоритм декодирования.
  • 25. Асимптотически хорошие коды Пусть задано семейство двоичных кодов 𝐶 ≔ 𝐶 𝑛 𝑛=1 ∞ Асимптотической скоростью семейства 𝐶 называется величина rate 𝐶 ≔ lim 𝑛→∞ log2 𝐶 𝑛 𝑛 Асимптотическим относительным кодовым расстоянием семейства 𝐶 называется величина 𝛿 𝐶 ≔ lim 𝑛→∞ 𝑑 𝐶 𝑛 𝑛
  • 26. Асимптотически хорошие коды rate 𝐶 ≔ lim 𝑛→∞ log2 𝐶 𝑛 𝑛 𝛿 𝐶 ≔ lim 𝑛→∞ 𝑑 𝐶 𝑛 𝑛 Семейство кодов называется асимптотически хорошим, если для него rate 𝐶 > 0 и 𝛿 𝐶 > 0 До кодов Форни было неизвестно, существуют ли асимптотически хорошие семейства кодов с полиномиальными алгоритмами декодирования.
  • 27. Теорема Варшамова—Гилберта Теорема. (Р.Р. Варшамов, E.N. Gilbert) Пусть натуральные числа 𝑛, 𝑘, 𝑑′ таковы, что 𝑗=0 𝑑′−1 𝑛 − 1 𝑗 < 2 𝑛−𝑘 Тогда существует 𝑛, 𝑘, 𝑑 -код, где 𝑑 > 𝑑′ . Следствие. Если 𝛿 < 0.5 и 𝜌 таковы, что 𝐻 𝛿 ≤ 1 − 𝜌, то существует семейство линейных кодов 𝐶, для которого rate 𝐶 ≥ 𝜌 и 𝛿 𝐶 ≥ 𝛿.
  • 28. Теорема Варшамова—Гилберта (асимптотическая версия) Доказательство следствия: Если 𝑛, 𝑘, 𝑑′ таковы, что 𝐻 𝑑′ 𝑛 ≤ 1 − 𝑘 𝑛 , то 𝑗=0 𝑑′−1 𝑛 − 1 𝑗 < 2 𝑛⋅𝐻 𝑑′ 𝑛 ≤ 2 𝑛−𝑘, то есть условия теоремы В.—Г. выполнены, и существует линейный 𝑛, 𝑘, 𝑑 -код, где 𝑑 > 𝑑′. Если 𝐻 𝛿 ≤ 1 − 𝜌, то берём для каждого 𝑛 𝑘 ≔ 𝜌𝑛 , 𝑑′ ≔ 𝛿𝑛 , и получаем требуемое.
  • 29. Цель Теорема Варшамова—Гилберта не даёт полиномиальных (по длине кодовых слов) алгоритмов построения кода и декодирования. А хочется следующего: • Для каждого 𝑛 строить порождающую или проверочную матрицу некоторого линейного кода с длиной слов, размерностью и кодовым расстоянием Ω 𝑛 . И всё за полиномиальное от 𝑛 время. • Исправлять Ω 𝑛 ошибок в кодовых словах за полиномиальное от 𝑛 время.
  • 30. Каскадный код Форни на основе конструкции В.—Г. и кода Р.—С. Пусть 𝑡 ∈ ℕ, и пусть 𝛿 < 0.5 — произвольное фиксированное число. По теореме В.—Г., существует линейный код с параметрами 𝑡 1−𝐻 𝛿 , 𝑡, 𝛿𝑡 1−𝐻 𝛿 Возьмём этот код в качестве внутреннего. В качестве внешнего возьмём RS-код с параметрами 2 𝑡, 2 𝑡−1, 2 𝑡−1 + 1 2 𝑡. Получаем каскадный 𝑛, 𝑘, 𝑑 -код, для которого 𝑛 = 𝑡 ⋅ 2 𝑡 1 − 𝐻 𝛿 , 𝑘 = 𝑡 ⋅ 2 𝑡 2 , 𝑑 > 𝛿𝑡 ⋅ 2 𝑡 2 1 − 𝐻 𝛿
  • 31. Каскадный код Форни на основе конструкции В.—Г. и кода Р.—С. Получаем каскадный 𝑛, 𝑘, 𝑑 -код, для которого 𝑛 = 𝑡 ⋅ 2 𝑡 1 − 𝐻 𝛿 , 𝑘 = 𝑡 ⋅ 2 𝑡 2 , 𝑑 > 𝛿𝑡 ⋅ 2 𝑡 2 1 − 𝐻 𝛿 Этот код является асимптотически хорошим, т.к. 𝑑 𝑛 ≥ 𝛿 2 1−𝐻 𝛿 > 0 и 𝑘 𝑛 ≥ 1 2 1−𝐻 𝛿 > 0.
  • 32. Каскадный код Форни на основе конструкции В.—Г. и кода Р.—С. Получаем каскадный 𝑛, 𝑘, 𝑑 -код, для которого 𝑛 = 𝑡 ⋅ 2 𝑡 1 − 𝐻 𝛿 , 𝑘 = 𝑡 ⋅ 2 𝑡 2 , 𝑑 > 𝛿𝑡 ⋅ 2 𝑡 2 1 − 𝐻 𝛿 Вычислить порождающую матрицу кода можно при каждом 𝑡 за полиномиальное время, т.к. • коды Р.—С. строятся за полиномиальное время от своих параметров, • проверочная матрица кода в теореме В.—Г. строится хотя и перебором, но параметры этого кода логарифмичны по 𝑛.
  • 33. Каскадный код Форни на основе конструкции В.—Г. и кода Р.—С. Получаем каскадный 𝑛, 𝑘, 𝑑 -код, для которого 𝑛 = 𝑡 ⋅ 2 𝑡 1 − 𝐻 𝛿 , 𝑘 = 𝑡 ⋅ 2 𝑡 2 , 𝑑 > 𝛿𝑡 ⋅ 2 𝑡 2 1 − 𝐻 𝛿 Существует «почти тривиальный» полиномиальный алгоритм, декодирующий кодовые слова, принятые с не более чем 𝛿𝑡⋅2 𝑡 8 1−𝐻 𝛿 ошибками.
  • 34. Тривиальный алгоритм декодирования кодов Форни Каждое слово кода Форни имеет вид 𝒄 = 𝒂1 𝒂2 … 𝒂2 𝑡 где 𝒂𝑖 — слова кода В.—Г. длины 𝑡 1−𝐻 𝛿 . Если в слове 𝒄 произошло ≤ 𝛿𝑡⋅2 𝑡 8 1−𝐻 𝛿 ошибок, и в результате принято слово 𝒄 = 𝒂1 𝒂2 … 𝒂2 𝑡, то слово 𝒄 восстанавливаем в два шага: • Для каждого 𝒂𝑖 перебором ищем ближайшее к нему слово кода В.—Г. При этом неверно восстановленных слов может быть не более 𝛿𝑡⋅2 𝑡 8 1−𝐻 𝛿 𝛿𝑡 2 1−𝐻 𝛿 = 2 𝑡−2. • Кодовое расстояние внешнего кода равно 2 𝑡−1 + 1 , поэтому даже 2 𝑡−2 ошибок он успешно исправит.
  • 35. Пояснения к алгоритму декодирования кодов Форни Пусть слово 𝒄 = 𝒂1 𝒂2 … 𝒂2 𝑡 исказилось в 𝑠 разрядах и перешло в слово 𝒄 = 𝒂1 𝒂2 … 𝒂2 𝑡. 𝒂𝑖 — слова кода В.—Г. с расстоянием 𝑑int. Пусть 𝐼 = 𝑖 ∣ 𝑑 𝒂𝑖, 𝒂𝑖 ≥ 𝑑int 2 , где 𝐼 ≤ 2𝑠 𝑑int . Т.к. на первом шаге проблемы с исправлением могут быть только у слов 𝒂𝑖, у которых 𝑖 ∈ 𝐼, то на втором шаге, рассматривая каждое 𝒂𝑖 как один элемент поля 𝔽2 𝑡, мы получаем задачу восстановления слова кода Р.—С. с ошибками не более чем в 2𝑠 𝑑int разрядах.