Декодирование списка
Эта статья включает список литературы , связанную литературу или внешние ссылки , но ее источники остаются неясными, поскольку в ней отсутствуют встроенные цитаты . ( Май 2011 г. ) |
В теории кодирования декодирование списков является альтернативой однозначному декодированию кодов с исправлением ошибок при больших коэффициентах ошибок. Идея была предложена Элиасом в 1950-х годах. Основная идея декодирования списка заключается в том, что алгоритм декодирования вместо вывода единственного возможного сообщения выводит список возможностей, один из которых является правильным. Это позволяет обрабатывать большее количество ошибок, чем позволяет уникальное декодирование.
Уникальная модель декодирования в теории кодирования , которая ограничена выводом единственного допустимого кодового слова из полученного слова, не допускает большей доли ошибок. Это привело к разрыву между эффективностью исправления ошибок для моделей стохастического шума (предложенных Шенноном ) и модели состязательного шума (рассмотренной Ричардом Хэммингом ). С середины 90-х годов значительный прогресс в области алгоритмов, достигнутый сообществом теоретиков кодирования, восполнил этот пробел. Большая часть этого прогресса основана на смягченной модели исправления ошибок, называемой декодированием списка, в которой декодер выводит список кодовых слов для шаблонов патологических ошибок наихудшего случая, где фактическое переданное кодовое слово включается в выходной список. Однако в случае типичных шаблонов ошибок декодер выводит уникальное одно кодовое слово для данного полученного слова, что почти всегда так (однако известно, что это верно не для всех кодов). Улучшение здесь существенно, поскольку эффективность исправления ошибок удваивается. Это связано с тем, что теперь декодер не ограничен барьером половины минимального расстояния. Эта модель очень привлекательна, поскольку иметь список кодовых слов, безусловно, лучше, чем просто сдаваться. Понятие декодирования списков имеет множество интересных приложений в теория сложности .
Способ моделирования шума канала играет решающую роль, поскольку он определяет скорость, с которой возможна надежная связь. Существует две основные школы моделирования поведения канала:
- Вероятностная модель шума, изученная Шенноном, в которой шум канала моделируется именно в том смысле, что вероятностное поведение канала хорошо известно, а вероятность появления слишком большого или слишком малого количества ошибок мала.
- Модель наихудшего случая или состязательного шума, рассмотренная Хэммингом, в которой канал действует как противник, который произвольно искажает кодовое слово с учетом ограничения на общее количество ошибок.
Особенностью декодирования списка является то, что даже в условиях враждебного шума можно достичь оптимального с точки зрения теории информации компромисса между частотой и долей ошибок, которые можно исправить. Следовательно, в некотором смысле это похоже на улучшение производительности исправления ошибок до уровня, возможного в случае более слабой модели стохастического шума.
Математическая формулировка
[ редактировать ]Позволять быть код, исправляющий ошибки; другими словами, это код длины , измерение и минимальное расстояние над алфавитом размера . Теперь задачу декодирования списка можно сформулировать следующим образом:
Ввод: полученное слово. , ошибка связана
Вывод: список всех кодовых слов. чье расстояние Хэмминга от самое большее .
Мотивация расшифровки списка
[ редактировать ]Учитывая полученное слово , который представляет собой зашумленную версию некоторого переданного кодового слова декодер пытается вывести переданное кодовое слово, делая ставку на кодовое слово, которое является «ближайшим» к полученному слову. Расстояние Хэмминга между двумя кодовыми словами используется в качестве метрики при поиске ближайшего кодового слова, учитывая слово, полученное декодером. Если - минимальное расстояние Хэмминга кода , то существует два кодовых слова и которые отличаются именно позиции. Теперь в случае, когда полученное слово равноудален от кодовых слов и однозначное декодирование становится невозможным, поскольку декодер не может решить, какой из и для вывода как исходное переданное кодовое слово. В результате половина минимального расстояния действует как комбинаторный барьер, за которым невозможно однозначное исправление ошибок, если мы будем настаивать только на однозначном декодировании. Однако полученные слова, такие как рассмотренные выше, происходят только в худшем случае, и если посмотреть на то, как шары Хэмминга упакованы в многомерном пространстве, даже для шаблонов ошибок за половиной минимального расстояния существует только одно кодовое слово на расстоянии Хэмминга из полученного слова. Было показано, что это утверждение с высокой вероятностью справедливо для случайного кода, выбранного из естественного ансамбля, и, тем более, для случая кодов Рида – Соломона , который хорошо изучен и широко распространен в реальных приложениях. Фактически, доказательство Шеннона теоремы о пропускной способности для q -арных симметричных каналов можно рассматривать в свете приведенного выше утверждения для случайных кодов.
В соответствии с мандатом декодирования списка, в случае возникновения ошибок в худшем случае, декодеру разрешено выводить небольшой список кодовых слов. Имея некоторую контекстно-зависимую или дополнительную информацию, можно сократить список и восстановить исходное переданное кодовое слово. Следовательно, в целом это кажется более сильной моделью восстановления ошибок, чем уникальное декодирование.
Потенциал декодирования списков
[ редактировать ]Для существования алгоритма декодирования списка за полиномиальное время нам нужна комбинаторная гарантия того, что любой шар Хэмминга радиуса вокруг полученного слова (где — доля ошибок, выраженная в длине блока ) имеет небольшое количество кодовых слов. Это связано с тем, что размер списка сам по себе явно является нижней границей времени работы алгоритма. Следовательно, мы требуем, чтобы размер списка был полиномом от длины блока. кода. Комбинаторным следствием этого требования является то, что оно накладывает верхнюю границу на скорость кода. Декодирование списков обещает достичь этой верхней границы. Неконструктивно было показано, что коды скорости существуют, которые можно декодировать списком с точностью до доли ошибок, приближающейся к . Количество в литературе называется способностью декодирования списка. Это существенный выигрыш по сравнению с уникальной моделью декодирования, поскольку теперь у нас есть возможность исправлять вдвое больше ошибок. Естественно, нам нужно иметь хотя бы дробь передаваемых символов, чтобы они были правильными, чтобы восстановить сообщение. Это теоретико-информационная нижняя граница количества правильных символов, необходимых для выполнения декодирования, и с помощью декодирования списка мы потенциально можем достичь этого теоретико-информационного предела. Однако для реализации этого потенциала нам нужны явные коды (коды, которые можно построить за полиномиальное время) и эффективные алгоритмы для кодирования и декодирования.
( p , L )-список-декодируемость
[ редактировать ]Для любой доли ошибки и целое число , код называется списком, декодируемым с точностью до дроби ошибок с размером списка не более или -list-декодируемый, если для каждого , количество кодовых слов на расстоянии Хэмминга от самое большее
Комбинаторика декодирования списков
[ редактировать ]Связь между списочной декодируемостью кода и другими фундаментальными параметрами, такими как минимальное расстояние и скорость, достаточно хорошо изучена. Было показано, что каждый код может быть декодирован в виде списка с использованием небольших списков за пределами половины минимального расстояния до границы, называемой радиусом Джонсона. Это весьма важно, поскольку доказывает существование -коды, декодируемые списком, с хорошей скоростью и радиусом декодирования списка, намного большим, чем Другими словами, граница Джонсона исключает возможность наличия большого числа кодовых слов в шаре Хэмминга радиуса немного большего, чем а это означает, что с помощью декодирования списка можно исправить гораздо больше ошибок.
Возможность декодирования списка
[ редактировать ]- Теорема (возможность декодирования списка). Позволять и Следующие два утверждения справедливы для достаточно большой длины блока. .
- и) Если , то существует -список декодируемого кода.
- 2) Если , то каждый -list-декодируемый код имеет .
- Где
- это -арная функция энтропии, определенная для и расширен за счет непрерывности до
Это означает, что для скоростей, приближающихся к пропускной способности канала, существуют списочные декодируемые коды со списками полиномиального размера, обеспечивающими эффективные алгоритмы декодирования, тогда как для скоростей, превышающих пропускную способность канала, размер списка становится экспоненциальным, что исключает существование эффективных алгоритмов декодирования.
Доказательство возможности декодирования списков является важным, поскольку оно точно соответствует мощности -арный симметричный канал . Фактически, термин «пропускная способность декодирования по списку» следует понимать как пропускную способность состязательного канала при декодировании по списку. Кроме того, доказательство возможности декодирования списками является важным результатом, который указывает на оптимальный компромисс между скоростью кода и долей ошибок, которые можно исправить при декодировании списками.
Эскиз доказательства
[ редактировать ]Идея доказательства аналогична идее доказательства Шеннона пропускной способности двоичного симметричного канала. где выбирается случайный код и показывается, что это -список-декодируемый с высокой вероятностью, пока скорость Для ставок, превышающих указанное выше количество, можно показать, что размер списка становится суперполиномиально большим.
«Плохое» событие определяется как событие, в котором по полученному слову и сообщения так случилось, что , для каждого где — это доля ошибок, которую мы хотим исправить и это шар Хэмминга радиуса с полученным словом как центр.
Теперь вероятность того, что кодовое слово связанный с фиксированным сообщением лежит в шаре Хэмминга дается
где количество - объем шара Хэмминга радиуса с полученным словом как центр. Неравенство в приведенном выше соотношении следует из верхней оценки объема шара Хэмминга. Количество дает очень хорошую оценку объема шара Хэмминга радиуса сосредоточено на любом слове в Другими словами, объем шара Хэмминга инвариантен при переносе. Чтобы продолжить набросок доказательства, мы вызовем объединение, связанное с теорией вероятностей, которое говорит нам, что вероятность плохого события, происходящего для данного ограничена сверху величиной .
Учитывая вышесказанное, можно показать, что вероятность возникновения «любого» плохого события меньше, чем . Чтобы это показать, мы прорабатываем все возможные полученные слова. и все возможные подмножества сообщения в
Теперь обратившись к доказательству части (ii), нам нужно показать, что вокруг каждой точки существует суперполиномиальное количество кодовых слов. когда скорость превышает возможности декодирования списка. Нам нужно это показать является суперполиномиально большим, если скорость . Исправить кодовое слово . Теперь для каждого выбрано случайно, у нас есть
поскольку шары Хэмминга трансляционно-инвариантны. Из определения объема шара Хэмминга и того факта, что выбирается равномерно случайным образом из у нас также есть
Давайте теперь определим индикаторную переменную такой, что
Взяв математическое ожидание объема шара Хэмминга, имеем
Таким образом, вероятностным методом мы показали, что если скорость превышает возможности декодирования списка, то размер списка становится суперполиномиально большим. На этом схема доказательства возможности декодирования списка завершена.
Список декодируемых кодов Рида-Соломона
[ редактировать ]В 2023 году, основываясь на трех плодотворных работах, [1] [2] [3] Теоретики кодирования показали, что с высокой вероятностью коды Рида-Соломона, определенные по случайным точкам оценки, декодируются по спискам до уровня возможности декодирования списка по алфавитам линейного размера.
Алгоритмы декодирования списков
[ редактировать ]В период с 1995 по 2007 год сообщество теоретиков кодирования разработало все более эффективные алгоритмы декодирования списков. Алгоритмы кодов Рида – Соломона , которые могут декодировать до радиуса Джонсона, который существовать там, где — нормализованное расстояние или относительное расстояние. Однако для кодов Рида-Соломона что означает дробь ошибок можно исправить. Некоторые из наиболее известных алгоритмов декодирования списков следующие:
- Судан '95 - Первый известный нетривиальный алгоритм декодирования списка для кодов Рида – Соломона, который достиг эффективного декодирования списка до ошибки, разработанные Мадху Суданом .
- Гурусвами-Судан '98 - Улучшение описанного выше алгоритма для спискового декодирования кодов Рида-Соломона до ошибки Мадху Судана и его тогдашнего докторанта Венкатесана Гурусвами .
- Парвареш-Варди '05. В своей революционной статье Фарзад Парвареш и Александр Варди представили коды, которые можно расшифровать в виде списка за пределами радиус для низких ставок . Их коды являются вариантами кодов Рида-Соломона, которые получаются путем вычисления коррелированные полиномы вместо просто как и в случае обычных кодов Рида-Соломона.
- совершили еще один прорыв, Гурусвами–Рудра '06 - Венкатесан Гурусвами и Атри Рудра предоставив явные коды, которые обеспечивают способность декодирования списка, то есть их можно декодировать списком до радиуса. для любого . Другими словами, это коррекция ошибок с оптимальной избыточностью. Это ответило на вопрос, который был открыт около 50 лет. Эта работа была включена в раздел «Основные исследования» журнала Communications of ACM (который «посвящен наиболее важным результатам исследований, опубликованных в области компьютерных наук за последние годы») и была упомянута в статье под названием «Coding and Computing Joint Forces». в номере журнала Science от 21 сентября 2007 г. Коды, которые им даются, называются свернутыми кодами Рида-Соломона , которые представляют собой не что иное, как простые коды Рида-Соломона, но рассматриваются как код более крупного алфавита за счет тщательного объединения символов кодовых слов.
Из-за их повсеместного распространения и хороших алгебраических свойств алгоритмы спискового декодирования кодов Рида – Соломона были в центре внимания исследователей. Задачу списочного декодирования кодов Рида–Соломона можно сформулировать следующим образом:
Ввод : Для Код Рида-Соломона, нам дана пара для , где это бит полученного слова и 's - различные точки в конечном поле и параметр ошибки .
Вывод : Цель — найти все полиномы. степени максимум какова длина сообщения такая, что по крайней мере значения . Здесь мы хотели бы иметь как можно меньше, чтобы можно было допустить большее количество ошибок.
С учетом приведенной выше формулировки общая структура алгоритмов списочного декодирования кодов Рида-Соломона выглядит следующим образом:
Шаг 1 : (Интерполяция) Найдите ненулевой двумерный полином. такой, что для .
Шаг 2 : (Нахождение корня/факторизация) Выведите все степени полиномы такой, что является фактором то есть . Для каждого из этих многочленов проверьте, по крайней мере значения . Если да, включите такой многочлен в списке вывода.
Учитывая тот факт, что двумерные полиномы можно эффективно факторизовать, приведенный выше алгоритм работает за полиномиальное время.
Приложения в теории сложности и криптографии
[ редактировать ]Алгоритмы, разработанные для спискового декодирования нескольких интересных семейств кодов, нашли интересные применения в области вычислительной сложности и криптографии . Ниже приводится примерный список приложений за пределами теории кодирования:
- Построение жестких предикатов из односторонних перестановок .
- Прогнозирование свидетелей для задач NP-поиска.
- Усиление сложности булевых функций.
- Средняя твердость перманента случайных матриц.
- Экстракторы и генераторы псевдослучайных чисел .
- Эффективное отслеживание предателей.
Ссылки
[ редактировать ]- ^ Бракензик, Джошуа; Гопи, Шивакант; Макам, Вису (2 июня 2023 г.). «Общие коды Рида-Соломона обеспечивают способность декодирования по спискам» . Материалы 55-го ежегодного симпозиума ACM по теории вычислений . STOC 2023. Нью-Йорк, штат Нью-Йорк, США: Ассоциация вычислительной техники. стр. 1488–1501. arXiv : 2206.05256 . дои : 10.1145/3564246.3585128 . ISBN 978-1-4503-9913-5 .
- ^ Го, Зею; Чжан, Зихан (6 ноября 2023 г.). «Случайно проколотые коды Рида-Соломона достигают способности декодирования списка по алфавитам полиномиального размера» . 64-й ежегодный симпозиум IEEE по основам информатики (FOCS) , 2023 г. FOCS 2023, Санта-Круз, Калифорния, США. IEEE. стр. 164–176. arXiv : 2304.01403 . дои : 10.1109/FOCS57990.2023.00019 . ISBN 979-8-3503-1894-4 .
- ^ Альрабия, Омар; Гурусвами, Венкатесан; Ли, Рэй (2023). «Случайно проколотые коды Рида-Соломона обеспечивают способность декодирования списков над полями линейного размера». arXiv : 2304.09445 [ cs.IT ].
Внешние ссылки
[ редактировать ]- Опрос по расшифровке списков, проведенный Мадху Суданом
- Заметки из курса, который ведет Мадху Судан
- Заметки из курса Луки Тревизана
- Заметки из курса Венкатесана Гурусвами
- Заметки из курса Атри Рудры
- П. Элиас, «Декодирование списков для каналов с шумом», Технический отчет 335, Исследовательская лаборатория электроники, Массачусетский технологический институт, 1957.
- П. Элиас, «Коды с исправлением ошибок для декодирования списков», IEEE Transactions on Information Theory, vol. 37, стр. 5–12, 1991.
- Дж. М. Возенкрафт, «Декодирование списков», Ежеквартальный отчет о проделанной работе, Исследовательская лаборатория электроники, Массачусетский технологический институт, том. 48, стр. 90–95, 1958.
- Венкатесана Гурусвами Кандидатская диссертация
- Алгоритмические результаты при декодировании списков
- Сложенный код Рида – Соломона