ОБ ЭФФЕКТИВНОСТИ АЛГОРИТМОВ РЕЙДЕРА-ВИНОГРАДА
Владимир Михайлович Чернов (главный научный сотрудник, e-mail: vche@smr.ru) Учреждение Российской академии наук Институт систем обработки изображений РАН
Аннотация
Доказывается факт существования «исключительных» простых чисел, для которых алгоритмы Рейдера-Винограда вычисления дискретного преобразования Фурье и/или свертки соответствующей длины являются неэффективными. Приводятся достаточные условия «исключительности» в аналитической форме.
Ключевые слова: дискретное преобразование Фурье, циклическая свертка, алгоритм Рейдера-Винограда, вычислительная сложность.
Введение
Хорошо известно [1], что для некоторых простых p = N существуют быстрые алгоритмы дискретного преобразования Фурье (БА ДПФ) с минимальным числом умножений. Синтез таких алгоритмов, как показал Рейдер [2]), сводится к эффективному вычислению циклической свертки длины (p -1). Вычисление
свертки эквивалентно параллельному вычислению произведений некоторых полиномов по модулям цик-лотомических полиномов P1 (t), ..., Pd (t) , где
P (t) ...Pd (t) = tp-1 -1.
Полуэвристическое нахождение формул «экономного» умножения в полиномиальных кольцах
(modPj (t)) является основой метода Винограда
[3],[4], в рамках которого получены абсолютные нижние оценки мультипликативной сложности БА ДПФ и лишь для некоторых небольших простых чисел p синтезированы БА с хорошими вычислительными характеристиками [5]. Способ сведения ДПФ с простым числом отсчетов к циклической свертке, использующий цикличность мультипликативной группы простого конечного поля, предложен Ч.Рейдером в 1968 г. Без какой-либо общей теории быстрые алгоритмы коротких сверток были впервые описаны в [3]. В 1976 г. Ш.Виноград [4] предложил метод построения алгоритмов коротких сверток и доказал теоремы о сложности рассмотренных алгоритмов свертки для полей комплексных и вещественных чисел. К сожалению, некритическое прочтение работ Ш. Винограда сформировало у определенной части пользователей представление об оптимальности, неулучшаемости БА Винограда и их существовании для всех простых р. Сам Ш. Виноград показал зависимость сложности вычисления свертки от арифметических свойств поля, в котором производятся вычисления. В настоящее время оптимальные алгоритмы ДПФ известны для простых p = 2, 3, 5, 7, 11, 13, 17, 19 (см., например, [5]).
В данной статье показывается, что уже традиционное сведение вычисления ДПФ простой длины p к свертке длины ( p -1) = s , в случае, когда s «плохо»
факторизуется, может приводить к «быстрым» алгоритмам, сложность которых выше тривиального (непосредственного) вычисления ДПФ.
1. Некоторые примеры
Пример 1. Рассмотрим вычисление дискретной круговой свертки
р-1
2(т) = (х*у)(т) = ^х(п) у(т -п) (1)
п=0
вещественных последовательностей с периодом р=47. Пусть М(Ы) и С(Ы) - мультипликативные сложности вычисления ^-точечного ДПФ вещественного массива и Ж-точечной круговой свертки вещественных последовательностей, соответственно; С*(Ы) - мультипликативная сложность вычисления свертки вещественной и комплексной последовательностей. Примем типичное для БА Рейдера-Винограда соглашение, что вычисление ДПФ комплексного массива требует в два раза больше умножений, чем вещественного [1]. Будем также считать, что умножение комплексных чисел реализуется посредством трех вещественных умножений.
1. Вычисление 47-точечной свертки по стандартной спектральной схеме требует вычисления двух 47-точечных ДПФ вещественных массивов, одного (обратного) ДПФ комплексного массива и 3 • 47 = 141 вещественных умножений для реализации умножения 47 спектральных компонент. Таким образом, справедливо равенство:
С (47 ) = 4М (47) +141. (2)
2. Вычисление 47-точечного ДПФ, согласно основной идее метода Рейдера, сводится к вычислению 46-точечной свертки вещественной с комплексной последовательностью значений базисных функций ДПФ, что предполагает, по крайней мере, вычисление двух 23-точечных сверток функций указанного вида. Поэтому из (2) следует
С (47 ) = 2 • 4 • С *( 23) +141.
3. Так как число 23 также простое, то вычисление 23-точечных сверток опять сводится к вычислению 23-точечных ДПФ и дополнительным умножениям спектральных компонент. Так как ДПФ подпоследовательностей значений базисных функций 47-точечного ДПФ могут быть выполнены заранее, то справедливо равенство
С *( 23) = 3М (23) + 3 • 23, откуда, с аналогичной аргументацией, получаем:
C (47 )>
> 24M (23) +141 + 3 • 8 • 23 > 693 + 48 C* (11) >
> 693 + 48(3M (11) + 33) = 2277 +144 C* (10) >
> 2277 + 288 C(5).
(3)
Лучший из известных алгоритмов вычисления 5-точечной свертки содержит 10 вещественных умножений [6]. Поэтому из (3) следует С(47) > 5157 . В
то же время, прямой метод вычисления правой части равенств (1) для т = 0, ..., 46 требует 47 • 47 = 2209 умножений, то есть приблизительно в 2 раза меньше. Основными причинами парадоксального результата в рассмотренном выше примере является существование «достаточно длинной» цепочки простых чисел
р1 = 5 , р2 = 2р1 +1 = 11, р3 = 2р2 +1 = 23 , рА = 2 Р3 +1 = 47 (4)
и практически безальтернативная необходимость вычисления свертки простой длины спектральными методами. Общий результат о «исключительных» простых числах р, для которых, по всей видимости, не существует удовлетворительных алгоритмов вычисления ДПФ и свертки длины р, описывается следующим утверждением.
Теорема 1. Пусть р0 - простое, d0, ..., ёк -такие натуральные числа, что р1+1 = ё1р1 +1 -также простые числа. Пусть V = ёк ... d0р0. Тогда справедливо неравенство
M (Рк+, )>-
-(2• 4к -1).
(5)
max {dj}
0< ¡< к
Доказательство. Аргументация аналогична рассуждениям Примера 1. Для любого t = 1, ..., к справедливы неравенства:
м (Рt+1) = с* (а,р,) > dtc * (р,) > 4dtм (р,)+3 р, .(6)
Кроме того, для t = 0 аналогично (6) имеем м (р) = С* (doр0) > doC* (р0) > 2doC(р0). (7)
Нижние оценки Винограда для С (р0) имеют вид С (р0) > 2р0 - т, где т - число неприводимых многочленов (г) в разложении многочлена Рейдера [1]:
гр°-1 -1 = р (г)...Рт(г). (8)
Число т зависит от поля, над которым рассматривается разложение (8) (см., например [2]), но в любом случае т < р0. Поэтому С (р0) > р0.
Утверждение теоремы получается редукцией неравенства (6) с учетом соотношений (7)-(8) и очевидного неравенства р,< dtdt-1. d0 р0.
Действительно
M (Рк+1 )> 4dkM (Рк) + 3Рк >
> 4dM (pk ) + 3dk- ... d0Ро >
> 42 dkdk-XM (Рк-) +
+4 • 3dkdk-2 - d0Р0 + 3dk-1 - d0Р0 >
> 4k • 3dkdk-1 — dxM (Р;) +
к-1
+3S 4' (dk-s )-1 dk ... d0Р0 >
'=0
-(2• 4k -1).
max {d.}
0< j<k
Проводимое ниже следствие дает достаточно грубые, но легко проверяемые неравенства, характеризующее «исключительные» простые числа, для которых, как и в Примере 1, последовательное применение метода Рейдера приводит к алгоритмам ДПФ (или свертки), мультипликативная сложность которых выше, чем при непосредственном вычислении соответствующих сумм.
Следствие 1. Пусть Р0 - простое, d0
d,, -
такие натуральные числа, что р1= dtpt +1 - также простые числа.
Если справедливо неравенство
6к-1 4
> !Og2 Рк+1 :
(9)
то справедливо и неравенство
M (Рк+, )> 2Рк2+,. (10)
Доказательство. Так как
max {d,.} < W , ,
0<j<kL jJ Р02к
то
(2 • 4k -1)> Р02к (2 • 4k -1)> 2 • 2k • 4k -2k.
w
max {d,.}
0< j<k L 1 J
Поэтому из неравенства
8k > Р2+1 + 2k следует неравенство (5). Но log2 (Рк2+, + 2к ) =
(11)
= 2l0g2 Рк+1 + l0g2
-.к Л
1+
Рк2+1
< 2l0g2 Рк+1 + 2
откуда легко следует (6).
Аналогичное неравенство справедливо и для вычисления р-точечной свертки при «исключительных» простых р.
Следствие 2. Пусть Р0 - простое, d0
d,, -
такие натуральные числа, что р,= dtpt +1 - также
простые числа, к > 4. Тогда, если справедливо неравенство
6к + 5
4
> l0g2 Рк+М
(12)
(
\
/
то справедливо и неравенство
С (Л+, )> р1+1. (13)
Доказательство. В силу неравенства
С (р к+1 ) = 4 С (р
к+1 ) + Рк+1 > 4 М (р
к+1
Примера 1, доказательство неравенства (13) проводится аналогично доказательству неравенства (10) предыдущего следствия.
Пример 2. Пусть р0 = 2 ; р1= dtpt +1, где d0 = 2 , d1 = 2 , d2 = 8, d3 = d4 = d5 = d6 = d7 = 2 . Тогда р8 = 2879 - простое число, все рt (t = 0, ..., 7) также простые. Неравенство (12) в этом случае выполняется: 6к + 5
4
= 11,75 > 11,55 > 1о§2 2879.
2. О плотности исключительных простых чисел в натуральном ряду
Анализируя вышесказанное, автор считает возможным высказать предположение, что «плохих» простых чисел, которые порождают такие натуральные N что для этих длин не существует эффективных алгоритмов вычисления ДПФ и свертки, бесконечно много, но встречаются они весьма редко. Первая часть предположения базируется исключительно на субъективном авторском мнении.
Гипотеза. Существует бесконечно много конечных множеств натуральных чисел d0, ..., dk и таких простых р0, что числа р1+1 = dtpt+1 также являются простыми, причем для рк+1 выполняются неравенства (9)-(10) или (12)-(13).
Вторая часть предположения (о редкости «плохих» простых) базируется на вполне определенных количественных результатах.
Определение. Если простое р таково, что число q = 2р +1 также простое, то число р называется простым числом Софи Жермен.
Простые числа (4) как раз и являются простыми Софи Жермен. Первыми такими простыми являются числа 2, 3, 5, 11, 23, 29, 41, 53, 83, 89, 113, 131. Конечно или бесконечно множество простых Софи Жермен в настоящее время неизвестно. Известна только гипотетическая асимптотическая оценка количества (N) простых Софи Жермен, на превосходящих данного N :
5 (N) ~ 2С2
N
(1п N )2
(14)
где С2 » 0,6601618158... - так называемая «константа простых близнецов». Оценка (14) достаточно хорошо согласуется с результатами численных экспериментов [10]-[12].
Разумеется, даже в случае справедливости оценки (14) нельзя утверждать бесконечность множества
чисел, для которых справедлива Гипотеза (число q = 2р +1 может быть и простым, а для простого р, простого Софи Жермен, «хорошо» факторизуется число (р -1)). Простые числа q = 2р +1 для простых чисел р Софи Жермен можно охарактеризовать и так: число (q -1) имеет «аномально мало»
простых делителей (всего два). Простые числа с аномально малым количеством делителей у числа (q -1) рассматривались в работе [7]. Косвенным
подтверждением высказанного в Гипотезе предположения о редкости «исключительных» простых и «плохих» натуральных, ими порожденных, явилась бы информация о количестве «обобщенных простых Софи Жермен», при которых q = кр +1 также простое при некотором четном к и количественная информация о «редкости» простых q с «аномально малым» числом простых делителей у числа (q -1).
Обозначим N р < х; А) число простых р < х,
для которых выполняется условие А. Справедливы следующие утверждения [7],[8].
Теорема 2. Для четного к,2 < к < х справедливо неравенство:
( \
N (р < х; р -1 = kq, q - простое) = О
1п2 (хк)
Пусть далее п( п) - число различных простых
делителей числа п . Известно ([8], с.188), что «нормальное» число простых делителей числа п равно 1п1п п, то есть, за исключением о (х) значений п, п < х, выполняются неравенства
(1 -е) 1п1пп < п(п) < (1 + е) 1п1пп.
Следующая теорема показывает, что числа (р -1) ведут себя так же, как и все натуральные.
Теорема 3. Для любого е>0 выполняется асимптотическое равенство
Nр < х; (1 -е) 1п1пх <п(р-1) < (1+е) 1п1пп) =
х ( х
-+ о I-
1п х 11п х
Заключение
В работе показано существование «исключительных» простых чисел. Возникает естественный вопрос о синтезе эффективных алгоритмов вычисления ДПФ именно для исключительных длин преобразований. Следует отметить, что сам С. Виноград в главе монографии [2] указал на возможность снижения сложности предложенных им алгоритмов ниже теоретической нижней границы при использовании процессоров, производящих вычисления с элементами поля констант, отличного от поля дей-
ствительных чисел. Другим паллиативным решением является использование представления данных в «нетрадиционных» системах счисления [14]. В частности, возможность использования таких систем для вычисления свертки Примера 1 рассмотрена в [15].
Благодарности
Работа выполнена при поддержке Российского фонда фундаментальных исследований (проект №09-01-00511-а).
Литература
1. Блейхут, Р. Быстрые алгоритмы цифровой обработки сигналов / Р.Блейхут; пер.с англ. - М.: Мир, 1987. - 448 с.
2. Макклеллан, Дж. Х. Применение теории чисел в цифровой обработке сигналов / Дж.Х. Маккеллан, Ч.М. Рейдер; пер.с англ. - М.: Радио и связь, 1983. - 263 с.
3. Winograd, S. On Computing the Discrete Fourier Transform / S. Winograd // Proc. Nat. Acad. Sci. USA. - 1976. - Vol.73. - P.1005-1006.
4. Winograd, S. On the Discrete Fourier Transform / S. Wi-nograd // Math. Comp. - 1978. - Vol. 32. - P. 175-199.
5. Власенко, В. А. Методы синтеза быстрых алгоритмов свертки и спектрального анализа сигналов / В. А. Власенко, Ю.П. Лаппа, Л.П. Ярославский. - М.: Наука, 1990. - 180 с.
6. Нуссбаумер, Г. Быстрое преобразование Фурье и алгоритмы вычисления сверток / Г. Нуссбаумер; пер.с англ. - М.: Радио и связь, 1985. - 248с.
7. Erdos, P. On the normal number of prime factors of p-1 and some related problems concerning Euler's ф-function / P. Erdos // Quart. J. Oxford. - 1935. - Vol.6. - P.205-213.
8. Prachar, K. Primzahlverteilung / K.Prachar. - SpringerVerlag, Berlin, 1957.
9. Winograd, S. Arithmetic complexity of computations / S. Winograd. - SIAM, 1980. - 93p.
10. Dubner, H. Large Sophie Germain Primes / H. Dubner. // Math. Comput. - 1996. - Vol. 65. -P. 393-396.
11. Indlekofer, K. H. Largest Known Twin Primes and Sophie Germain Primes / K. H. Indlekofer, A. Jarai // Math. Comput. - 1999. - Vol. 68. - P. 1317-1324.
12. Ribenboim, P. Sophie Germain Primes / P. Ribenboim // The New Book of Prime Number Records. - New York, Springer-Verlag, 1996. - P. 329-332.
13. Chernov, V.M. Data Algorithms: Galois vs. Rader and Winograd / V.M.Chernov // Pattern Recognition and Image Analysis. - 2003. - Vol. 13(1) . - P. 5-7.
14. Чернов, В.М. Арифметические методы синтеза быстрых алгоритмов дискретных ортогональных преобразований / В.М.Чернов. - М.: Физматлит, 2007.
15. Chernov, V. Fast algorithm for «error-free» convolution computation using Mersenne-Lucas codes / V. Chernov // Chaos, Solitons and Fractals. - 2006. - Vol. 29. - P. 372-380.
References
1. Blahut, R.E. Fast algorithms for Digital Signal Processing / R.E. Blahut. - Addison-Wesley, 1985.
2. McClellan, J.H. Number Theory in Digital Signal Processing / J.H. McClellan, C.M. Rader. - Prentice-Hall, New Jersey, 1979.
3. Winograd, S. On Computing the Discrete Fourier Transform / S. Winograd // Proc. Nat. Acad. Sci. USA. - 1976.
- Vol.73. - P.1005-1006.
4. Winograd, S. On the Discrete Fourier Transform / S. Wi-nograd // Math. Comp. - 1978. - Vol. 32. - P. 175-199.
5. Vlasenko, V.A. Methods of Fast Convolution Algorithms Synthesis and Spectral Signal Analysis / V.A. Vlasenko, Yu.P. Lappa, L.P. Yaroslavsky. - Moscow, Science, 1990.
- 180 p. - (In Russian).
6. Nussbaumer, H.J. Fast Fourier Transform and Convolution Algorithms / H.J. Nussbaumer. - Springer-Verlag, Berlin, 1982.
7. Erdös, P. On the normal number of prime factors of p-1 and some related problems concerning Euler's ф-function / P. Erdös // Quart. J. Oxford. - 1935.- Vol.6. - P. 205-213.
8. Prachar, K. Primzahlverteilung / K.Prachar. - SpringerVerlag, Berlin, 1957.
9. Winograd, S. Arithmetic complexity of computations / S. Winograd. - SIAM, 1980. - 93p.
10. Dubner, H. Large Sophie Germain Primes / H. Dubner. // Math. Comput. - 1996. - Vol. 65. -P. 393-396.
11. Indlekofer, K. H. Largest Known Twin Primes and Sophie Germain Primes / K. H. Indlekofer, A. Jarai // Math. Comput. - 1999. - Vol. 68. - P. 1317-1324.
12. Ribenboim, P. Sophie Germain Primes / P. Ribenboim // The New Book of Prime Number Records. - New York, Springer-Verlag, 1996. - P. 329-332.
13. Chernov, V.M. Data Algorithms: Galois vs. Rader and Winograd / V.M.Chernov // Pattern Recognition and Image Analysis. - 2003. - Vol. 13(1) . - P. 5-7.
14. Chernov, V.M. Arithmetic methods of fast discrete orthogonal transform synthesis / V.M. Chernov. - Moscow, Fizmatlit, 2007. - (In Russian).
15. Chernov, V. Fast algorithm for «error-free» convolution computation using Mersenne-Lucas codes / V. Chernov // Chaos, Solitons and Fractals. - 2006. - Vol. 29. - P. 372-380.
ON EFFICIENCY OF RADER-WINOGRAD ALGORITHMS
VladimirMikhailovich Chernov1 (chief researcher, e-mail: vche@smr.ru) 1 Image Processing Systems Institute of the RAS
Abstract
It is proved the existence of «exclusive» prime numbers, for which Rader-Winograd algorithms of discrete Fourier transform and/or convolution computation for corresponded lengths are not effective. The sufficient conditions of «exclusiveness» are given in analytical form
Key words: discrete Fourier transform, cyclotomic convolution, Rader-Winograd algorithm, computational complexity.
В редакцию поступила 7.12.2009 г.