Скачиваний:
112
Добавлен:
15.06.2014
Размер:
550.91 Кб
Скачать

2.3. Выбор и расчет параметров тчп

Для того, чтобы теоретико-числовые преобразования были более привлекательными по сравнению с БПФ при вычислении свертки, они должны быть эффективными с вычислительной точки зрения. Чтобы получить дополнительные преимущества, необходимо произвести хороший выбор параметров L, М, N. В частности, умножение на L и деление на М должны быть простыми операциями. Деление может потребоваться для осуществления операции приведения к остатку ( обозначается ((.)). Например, если М = 16, то ((37)) = 5, т.к. 37/16 = 2+5/16). Она необходима для обеспечения условия замкнутости в алгебраической системе. Заметим, что существуют и более простые методы приведения к остатку, чем операция деления.

Как отмечалось ранее, для построения теоретико-числовой конструкции кольца или поля важно наличие обратного элемента в этой алгебраической системе. Известны различные способы нахождения обратного элемента.

При сравнительно малой величине модуля М (методом перебора) можно легко определить па основе выражения . Например, пусть М = 17. Для числа 4 взаимно обратным будет 13, т.к. .

Для определения обратного элемента можно воспользоваться модификацией теоремы Эйлера. Так как

то (6)

Решение упрощается, если заранее известен порядок N элемента L, а М — про­стое число.

Пример 4.

L = 6, М = 31; найти . Из (6) получим . Учитываем, что N должен быть делителем . Составляем степенной ряд следующего вида:

(т.к. 4 не делит целое число 30);

т.е. целое число 6 имеет порядок число 6.

Получим

Для нахождения обратных чисел может быть использован и алгоритм Евклида [3].

Запишем сравнение вида , неизвестное число L-1 обозначим через х. Уравнение не изменится, если к его левой части прибавить величину, кратную мо­дулю , где у — целое неизвестное число.

Получим диофантово уравнение вида ((ах))+((bу)) = 1, решения которого ищутся в целых числах. Если, аb оно решается так:

где получаются на основании следующего представления непрерывной дроби.

Разделим а и b (если аb) и в результате получим , где r0 — остаток от деления. Теперь разделим b на r0 и в результате получим . Можно продолжить этот процесс до тех пор, пока остаток rn, полученный при делении на некого ром шаге, не окажется равным нулю.

Введем обозначение

……………..

Нас интересует неизвестное x (число, обратное L), равное .

Пример 5.

M = 257, L = 44, вычислить 44-1.

,

Проверка 44 * 111 = 4884.

Следует учесть, что если а > b, то неизвестным x и y соответствуют решения

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

1. М и N не должны иметь общих сомножителей.

2. N должно быть делителем .

3. L выбирается так, чтобы выполнялось сравнение , и М были взаимно простыми.

Эти условия в еще более сжатой форме (для вычисления свертки) представляются так: ТЧП обеспечит выполнение циклической (линейной) свертки при L, имеющем порядок N, тогда и только тогда, когда p – 1 делится на N, причем p — любой из простых сомножителей М.

Предъявляются я другие требования к таким преобразованиям, связанные с эффективностью вычисления свертки. Во-первых, период N должен быть составным (предпочтительно степенью 2), для того чтобы существовал быстрый алгоритм, аналогичный БПФ. Во-вторых, так как на умножение комплексных чисел при вычислении БПФ приходится (для больших N) значительная доля временных затрат, важно, чтобы умножение на степень L было достаточно простой операцией. Это возможно, если степени L имеют немного разрядов в двоичном представлении; предпочтительно также, чтобы она было степенью 2, поскольку в этом случае умножения на степень L сводятся к сдвигу слова. В-третьих, для того чтобы упростить арифметические операции по модулю М, прежде всего операцию приведения к остатку, простейшие модули также должны иметь в двоичном представлении небольшое число разрядов.

Проанализируем вопрос о наилучшем выборе модуля преобразования M. Наибольшее распространение на практике получили ТЧП с числами Ферма (ТЧПФ) и Мерсенна (ТЧПМ). Сразу отметим, что более перспективными являются ТЧПФ, так как позволяют для расчета использовать алгоритмы типа БПФ.

Соседние файлы в папке 5