Введение
Математический линейный код
Коды алгебраической геометрии, часто сокращаемые как AG-коды, являются типом линейного кода, обобщающим коды Рида — Соломона. Русский математик В. Д. Гоппа впервые построил эти коды в 1982 году.
Algebraic geometry codes, often abbreviated AG codes, are a type of linear code that generalize Reed–Solomon codes. The Russian mathematician V. D. Goppa constructed these codes for the first time in 1982.
История
Название этих кодов изменилось со времени публикации статьи Гоппы, в которой они были описаны. Исторически эти коды также назывались геометрическими кодами Гоппы, однако это больше не является стандартным термином, используемым в литературе по теории кодирования. Это связано с тем, что коды Гоппы представляют собой отдельный класс кодов, которые также были сконструированы Гоппой в начале 1970-х годов. Эти коды привлекли внимание специалистов по теории кодирования благодаря их способности превосходить ограничение Гилберта — Варшамова; на момент открытия это ограничение не было преодолено в течение 30 лет после его установления. Это было продемонстрировано Тфасманом, Владутом и Зинком в том же году, когда была опубликована конструкция кода, в их статье "Модульные кривые, кривые Шимуры и коды Гоппы, превосходящие ограничение Варшамова — Гилберта". Название этой статьи могло стать одним из источников путаницы, влияющих на ссылки на коды алгебраической геометрии в литературе по теории кодирования 1980-х и 1990-х годов.
Строительство
В этом разделе описывается построение кодов алгебраической геометрии. Раздел начинается с рассмотрения идей, положенных в основу кодов Рида — Соломона, которые служат обоснованием для построения кодов алгебраической геометрии.
Коды ReedSolomon
Коды алгебраической геометрии являются обобщением кодов Рида — Соломона. Коды Рида — Соломона, разработанные Ирвином Ридом и Густавом Соломоном в 1960 году, используют унивариантные полиномы для формирования кодовых слов, вычисляя значения полиномов достаточно малой степени в точках конечного поля. Формально коды Рида — Соломона определяются следующим образом. Пусть задано множество положительных целых чисел. Тогда код Рида — Соломона является кодом вычисления значений.
Formally, Reed–Solomon codes are defined in the following way. Let Set positive integers Let The Reed–Solomon code is the evaluation code
Коды алгебраических кривых
Гоппа заметил, что можно рассматривать как аффинную прямую, с соответствующей проективной прямой. Тогда многочлены в (то есть многочлены степени меньше, чем над) можно интерпретировать как многочлены с допустимым полюсом не более чем в точке на бесконечности, причем это ограничение закодировано в коэффициентах соответствующего делителя. Вычисление значений этих функций в рациональных точках на алгебраической кривой над (то есть в точках кривой, лежащих в ) дает код в том же смысле, что и конструкция Рида — Соломона. Однако, поскольку параметры кодов алгебраической геометрии связаны с алгебраическими полями функций, определения кодов часто приводятся на языке алгебраических полей функций над конечными полями. Тем не менее, важно помнить о связи с алгебраическими кривыми, поскольку это обеспечивает более геометрически интуитивный подход к пониманию AG-кодов как расширений кодов Рида — Соломона.