Циклотомное быстрое преобразование Фурье
Круговое быстрое преобразование Фурье — это тип алгоритма быстрого преобразования Фурье над конечными полями . [1] Этот алгоритм сначала разлагает ДПФ на несколько круговых сверток, а затем выводит результаты ДПФ из результатов круговой свертки. При применении к ДПФ более , этот алгоритм имеет очень низкую мультипликативную сложность. На практике, поскольку обычно существуют эффективные алгоритмы круговых сверток определенной длины, этот алгоритм очень эффективен. [2]
Фон
[ редактировать ]Дискретное преобразование Фурье по конечным полям находит широкое применение при декодировании кодов с исправлением ошибок, таких как коды БЧХ и коды Рида – Соломона . Обобщенное из комплексного поля , дискретное преобразование Фурье последовательности над конечным полем GF( p м ) определяется как
где является N -м примитивным корнем из 1 в GF( p м ). Если мы определим полиномиальное представление как
это легко увидеть это просто . То есть дискретное преобразование Фурье последовательности преобразует ее в задачу полиномиальной оценки.
Написано в матричном формате,
Прямая оценка ДПФ имеет сложность. Быстрые преобразования Фурье — это всего лишь эффективные алгоритмы, оценивающие вышеуказанное произведение матрицы-вектора.
Алгоритм
[ редактировать ]Сначала мы определяем линеаризованный полином над GF(p м ) как
называется линеаризованным, поскольку , что связано с тем, что для элементов
Обратите внимание, что является обратимым по модулю потому что надо разделить заказ мультипликативной группы поля . Итак, элементы можно разделить на круговые классы по модулю :
где . Следовательно, входные данные преобразования Фурье можно переписать как
Таким образом, полиномиальное представление разлагается в сумму линейных полиномов, и, следовательно, дается
- .
Расширение с надлежащим основанием , у нас есть где , а также свойством линеаризованного многочлена , у нас есть
Это уравнение можно переписать в матричной форме как , где это матрица над GF( p ), содержащая элементы , представляет собой блочную диагональную матрицу, а представляет собой матрицу перестановок, перегруппирующую элементы в по круговому индексу смежного класса.
Заметим, что если нормальный базис используется для расширения элементов поля , i-й блок дается:
которая является циркулянтной матрицей . Хорошо известно, что произведение циркулянтной матрицы на вектор можно эффективно вычислить с помощью сверток . Следовательно, мы успешно сводим дискретное преобразование Фурье к коротким сверткам.
Сложность
[ редактировать ]Применительно к характеристике -2 поле GF(2 м ), матрица это просто двоичная матрица. При вычислении матрично-векторного произведения используется только сложение и . Показано, что мультипликативная сложность кругового алгоритма определяется выражением , а аддитивная сложность определяется выражением . [2]
Ссылки
[ редактировать ]- ^ S.V. Fedorenko and P.V. Trifonov, Федоренко С.В.; Трифонов, ПВ. (2003). «О вычислении быстрого преобразования Фурье по конечным полям» (PDF) . Труды международного семинара по алгебраической и комбинаторной теории кодирования : 108–111.
- ^ Jump up to: а б Ву, Сюэбин; Ван, Ин; Ян, Чжиюань (2012). «Об алгоритмах и сложностях циклотомных быстрых преобразований Фурье над произвольными конечными полями». Транзакции IEEE по обработке сигналов . 60 (3): 1149–1158. дои : 10.1109/tsp.2011.2178844 .