В.М. Чернов
НОВЫЙ АЛГОРИТМ ДИСКРЕТНОГО ПРЕОБРАЗОВАНИЯ ФУРЬЕ ПО
ОСНОВАНИЮ ПЯТЬ
ВВЕДЕНИЕ
При реализации хорошо известных и подробно описанных [1,2] "совмещенных" алгоритмов дискретного преобразования Фурье (ДПФ) вещественных последовательностей четной длины N используется избыточность представления входных данных по отношению к комплексным значениям базисных функций преобразования. Точнее, преобразование последовательности длины N сводится к преобразованию комплексной последовательности длины связанной с исходной, и некоторому (не
очень большому) числу дополнительных умножений. Независимо от выбранной схемы совмещения, возможность применения такого приема обеспечивается наличием в поле комплексных чисел С нетождественного автоморфизма, реализуемого тривиально.
Попытка синтеза быстрых алгоритмов ДПФ (БПФ) с "многократным совмещением", реализуемых в комплексной арифметике, наталкивается на принципиальные трудности, связанные с отсутствием в поле С достаточного числа тривиально реализуемых автоморфизмов. Синтез БПФ с многократным совмещением в иной, отличной от С, алгебраической структуре рассматривался автором в [3,4|. В качестве таких структур использовались композиционные алгебры [3], циклотомические расширения поля рациональных чисел [4].
Следует также отметить, что наиболее сильные в количественном отношении результаты относятся к синтезу быстрых алгоритмов ДПФ длины N = 2к. В этом случае асимптотическая при N оо оценка вещественной мультипликативной сложности М(М) алгоритмов имеет вид:
м(>0 = сшоё2г^ + о(г*). (О
Для большинства современных алгоритмов С = У^- Алгоритмы работы [4], для
которых С = у-]и т. д. представляют, по всей видимости, примеры БПФ, для которых
снижение значения константы С в (1) все еще компенсирует увеличение структурной сложности алгоритма в разумном для пользователя диапазоне значений N.
В отличие от случая N = 2к, БПФ для N = рк ( р - простое ) разработаны менее детально и по своим вычислительным характеристикам относительно уступают БПФ для N = 2 . Например, наилучшая известная автору оценка мультипликативной сложности БПФ комплексной входной последовательности при N = 5к имеет вид [2]:
М(1Ч) = 4,4Жоё5 Ы-З^З. (2)
Как справедливо утверждается в [5], популярность БПФ алгоритма Кули—Тьюки привела к тому, что БПФ—алгоритмы стали диктовать параметры применяемых устройств вместо того, чтобы приложения диктовали выбор подходящего алгоритма БПФ.
В настоящей работе синтезируются алгоритмы ДПФ для N = 5к с многократным (точнее, восьмикратным) совмещением в алгебре матриц второго порядка над квадратичным полем, у которых оценка для М(Ы) асимптотически лучше чем (2).
Возможность построения таких БПФ обеспечивается, в основном, тремя факторами: во—первых, возможностью вложения поля комплексных чисел в алгебру матриц второго порядка с коэффициентами из К; во—вторых, наличием в этой алгебре четырех
автоморфизмов, реализуемых без вещественных умножений; в—третьих, уникальным арифметическим свойством первообразного корня пятой степени из единицы, вещественная часть которого является элементом квадратичного расширения поля рациональных чисел с минимальным многочленом, имеющим коэффициенты, равные (±1).
1. НЕКОТОРЫЕ СВОЙСТВА АЛГЕБР (2 х 2) -МАТРИЦ
Отметим ряд известных или легко доказываемых свойств алгебры (2 х 2) —матриц М2 (К). Автор счел возможным опустить доказательства, сводящиеся к непосредственной
проверке матричных тождеств.
Предложение 1.1. Алгебра М2 (Я) является четырехмерной ассоциативной К.—алгеброй. Матрицы
Г1 'о Г '1 о> ' 0 Г
Е = , т = , 1 =
,0 1 л 0, ,0 -1, -1 о,
образуют базис М 2 (Я) над Я, то есть любая матрица А из М 2 (К) представима в виде А=у0Е + у1Т + г2К + у31
с подходящими У0>У1,У2,Уг еК..
Предложение_12, Базисные матрицы Е, Т, К, I имеют конечные
мультипликативные порядки:
Е = Т2 =Я2 =14. Отображения 0, р, I алгебры М2 (Я) на себя:
'а Ь '4 с^ 'а -V , 1:А(->1_1А1 =
к» ТАТ = , р: А^ИАЯ =
.с а, ^Ь aJ ч-с <1 > ч-Ь а >
являются (внутренними) автоморфизмами алгебры М2 (К).
Предложение 1.3. Автоморфизмы 0, р, I действуют на базисные элементы Т, Я, I следующим образом:
0 (Т) = Т, р (Т) = -Т, I (Т) = -Т; 0(Я) = -Я, = 1(К) = -Я; 0(1) =-1, р(1) = -1, 1(5 = 1.
Предложение 1.4. Пусть А € М2 (R): Га Ьч
А =
U d)
тогда справедливы соотношения:
А + р(А)+б(А + р(А)) = 2(а + d)E, [А - р(А) + 0(А - р(А))]Т = 2(Ь + с)Е, [А — в (А) + р(А) - i(A)]R = 2(а - d)E, [А - в(А) - р(А) + i(А)]1 1 = 2(Ь - с)Е,
(3)
'с ^ , В = 'Р А = 'а Г
,-s с> о;' -1 о>
и решение системы (3) требует вещественных умножений только на степени двойки, которые считаются более элементарной операцией.
Отметим, что соотношения (3) справедливы и для матриц над кольцом достаточно общего вида.
Предложение 1.5. Пусть c = cos2^, s = sin 2п/5 , р = 2с,
S =
Тогда существует невырожденная матрица С такая, что В = С 'БС.
Доказательство. Утверждение непосредственно следует из того, что матрицы Б и В имеют одно и то же характеристическое уравнение У? - рл + 1 = 0 с корнями
Ч2=еХР{±2^}'
Предложение 1.6. Матрица В имеет мультипликативный порядок, равный пяти, причем:
В5 = Е, В 1 = В4, В2 = рВ-Е, В3=рВ~!-Е. Пусть аир являются корнями уравнения I2 +1 - 1 = О,
С^а) и 0(р)— алгебраические расширения поля рациональных чисел с примитивными элементами аир соответственно:
С^(а)={ \у = и + Уа; и,V € С^}; С^(р) = { V = и + ур; и,уе<^}- (4)
Пару чисел (и,у), ассоциированную с представлением (4) элементов полей С&р) и 0[а), будем называть кодом элемента и обозначать <\у>.
Так как аир являются корнями одного и того же уравнения, то сложение и умножение в кодах для С&х) и С^р) определяются с помощью одних и тех же правил:
(и1'У1)Х(и2'У2)=((и.и2+У1У2)'(и1У2+и2У.-У1У2))'
(6)
Распространим правила сложения и умножения (5)—(6) пар на задав тем
самым структуру кольца, которое обозначим ). Кольцо матриц с коэффициентами из кольца } обозначим М2 (|); матрицы X, компоненты которых заданы кодами, будем
обозначать <Х>.
Предложение 1.7. Пусть W — матричный корень степени N = 5К из Е:
V SN
где см=сов2^, в Тогда матрица V = С С, где С - матрица,
К N
определенная в предложении 1.5, является корнем уравнений V = В, V = Е.
Предложение 1.8. Существуют Ч0,Ч, еЯ такие, что матрица V представима в виде
У = ЧоЕ + Ч1В.
Доказательство. В самом деле, так как
(7)
то
(сиЕ + .„С-,1С:),'-В>
а так как из предложения 1.5 следует, что
сЕ + 8С_11С = В,
то, полагая
я =4
т 1 /
С8.
Чп =СК] "
получаем требуемое. Отсюда следует также справедливость представления (6) с подходящими <Ч0т»Ч1т еЯ и для матриц Vя1.
Непосредственное умножение матрицы из М2 0) на степени матрицы <У> требует
шестнадцати вещественных умножений. Но, в силу предложения 1.8, матрица < Vго > имеет специфический вид:
'М (У,0)Л
Ц-у,0) (х,0),
< V"1 > =
с некоторыми х,уеК. Эта специфика позволяет построить алгоритм сокращенного умножения.
Предложение 1.9. Умножение матрицы из М2 (|) на степени матрицы <У> требует
четырнадцати вещественных умножений.
Доказательство. Действительно, так как
((a,b);(c.d))
f(x,y) (У.0) (-У.0) (x,0)
(8)
= ((ax + by-cy,bx-dy+ ay- by);(ay+ cx,by+ dx)) = ((X,Y);(Z,T)) ,
то при
a.{ = (a - b)y, a2 = bx, a3 = dy, a4=y(b-c),
a5
= ах, a6 = c(x + y), a?=x(d-c)
(9)
имеем
X = a +ae, Y = а - а. + а ,
Z = а. + а. + а , Т = а,+а,+а„.
14 0
1 3 2' (10) 4; "6 ' "7"
Поэтому вычисление левой части (8) требует, согласно (9) и (10), семи вещественных умножений, а умножение матрицы из М2 (J) на степени матрицы <V> -
четырнадцати вещественных умножений. Пусть далее < х >= (х,.х2) ej,
<х> = х, + х.а, <х> =x,+x_ß;
а 1 2 ß 1 2'
аналогичный смысл имеют обозначения < V > и < V > для матриц.
а ß
Предложение 1.10. Существуют невырожденная матрица F еМ2 (R) и целое число d, такие что справедливо соотношение
< Vd > =F 1 WF.
а
Доказательство. Достаточно показать, что < V является первообразным
матричным корнем степени N из Е. А это следует из предложения 1.7 и непосредственно проверяемых равенств:
< V> 1N =[< VK > l5 =[<B> l5 =[< A> l5 =[< A> f = А5 = E.
2. БЫСТРЫЙ АЛГОРИТМ ВЫЧИСЛЕНИЯ ОДНОГО МАТРИЧНОГО
ПРЕОБРАЗОВАНИЯ
Основную роль при синтезе рассматриваемого алгоритма ДПФ длины N = 5к играет следующее утверждение.
Предложение 2,1- Пусть <h(n)> - последовательность матриц периода N = 5к с коэффициентами из J. Пусть (<Н(ш) >} - "матричный спектр" последовательности {h(n)}:
N-l
(H(m)> = Khin^V1™), (m = 0,1,..., N - l), (11)
n=0
где V - матрица, определенная в предложении 1.8. Тогда для вычисления {<Н(ш)>} достаточно
M'(N) = yN(log5N-l) (12)
вещественных умножений.
Доказательство. Представим (Н(ш)) в форме:
<Н(ш) >=Х
а=0
X<h(5n + a)xVSmn >
п=0
< V*™ >=£<Н (m)><Vam >. (13)
а=0
Внутренние суммы в (13) представляют собой преобразования (11) длины N/5. Их достаточно вычислить для значений т, лежащих в "фундаментальной области":
....."A-i
Действительно, значения <Ha(m)Vam > для ш, лежащих в областях Дь, полученных из Д0 аддитивным сдвигом на (ь = ^ 2, 3, 4 ), отличаются от соответствующих
значений <Ha(m)Van1> только умножениями на степени матрицы (В), которые
реализуются без нетривиальных вещественных умножений. Соотношение (13), таким образом, редуцирует вычисление матричного спектра длины N к вычислению матричных спектров пяти последовательностей длины N/5 и некоторому числу дополнительных умножений на < Vam > для m е Aß. Считая, что умножения матриц на степени (V)
реализованы согласно предложению 1.9, получаем для M*(N) рекуррентное соотношение:
M*(N) = 5M*(%)+4xl4x% с начальным условием М*(5) = 0, решение которого дает (12).
3. БЫСТРЫЙ АЛГОРИТМ ВЫЧИСЛЕНИЯ ПРЕОБРАЗОВАНИЯ ФУРЬЕ КОМПЛЕКСНОЙ ПОСЛЕДОВАТЕЛЬНОСТИ
Пусть z(n) = x(n) -I- y(n)i - комплексная Т-периодическая последовательность, Z(m) — спектр Фурье:
T-1
Zímb^zU)®™, |ш = 0,1,Т -1, со = ехр{2™4), Т = 5')- <14>
п=0
Предложение 3.1. Для вычисления Z(m) достаточно М(Т) вещественных умножений,
где
M(T) = yTlog5T + 0(T). (15)
Доказательство. Представим Z(m) в форме:
У5-1
Z(m)= ^^п^ + ^ЦГ,
п=0 а=1
где
Туй Т±}
Z (m)= £z(5n + a)co5mn= Zza(n)o>5mn. (16)
* n=0 n=0
Для вычисления Za(m) образуем матричную последовательность периода Т/5 с коэффициентами из ):
<h(n) >=
'< Zj(n) > <z2(n)> < z3(n)xz4(n)>
, где <zs(n)>=(x(n),ys(n)).
Для вычисления кодов матричного спектра <Н(т)> последовательности <Ь(п)> достаточно, согласно предложению 2.1,
вещественных умножений. Далее, реконструкция Za(m) и г(т) проводится по следующей схеме.
Шаг 1. Решая систему уравнений (3) для каждого ш, находим
<Ha(m)>= 2za(n)<Vmn>,
п=0
(П)
что требует умножений только на степени двойки, которые мы не учитываем при анализе
вычислительной сложности алгоритма.
Шаг 2. По известным кодам <Н (ш) > находим <Н (ш) > и <Н (т)> , что
а4 ау ' а а П
требует 8Т/5 вещественных умножений.
Шаг 3. В соответствии с предложением 1.5, имеем из (17):
C<He(m)>ß С"1 = 2>ze(n)> W™1,
(18)
п=0
а в соответствии с предложением 1.10, из (17) имеем: F<H (dm)>B F"' = Z<z.(n)>aW™.
n=0
Поэтому для
(19)
т/
xa(m)= Z*a(n)WraB и Y(m) = £ya(n)Wmn
n=0 n=0
справедливы равенства:
2Х (m) — Y (m) = С < H (m) > С-1 + F < Hn(dm) > F"1
а а ар а а
V5Y (ш) = С < Н (гп) > С"1 - F < Ha(dm) > F~l.
a aß * а
(20)
Отметим, что для нахождения левых частей равенств (18), (19) и решения системы (20) достаточно О(Т) умножений.
Ю
Шаг 4. Окончательная реконструкция Zg(m) и Z(m), как нетрудно проверить, сводится к вычислениям по формулам: Za(m) = e1Xa(m)e; + ie2Ya(m)ex2
и (16) ( здесь ej =(l,0), е2 =(0,l) - вектор-строки; т - знак транспонирования ).
Таким образом, суммируя вышесказанное, для мультипликативной сложности М(Т) вычисления Z(m) имеем рекуррентное соотношение:
М(Т) = м(1) + ~T(log5 Т - 2) + О(Т),
5 ) 25
откуда следует оценка (15).
4. БЫСТРЫЙ АЛГОРИТМ ВЫЧИСЛЕНИЯ ПРЕОБРАЗОВАНИЯ ФУРЬЕ ВЕЩЕСТВЕННОЙ ПОСЛЕДОВАТЕЛЬНОСТИ
Пусть f(n) - вещественная входная Т-периодическая последовательность, F(m) -спектр Фурье.
Предложение 4.1. Для вычисления F(m) достаточно M (Т) вещественных умножений, где
M1(T) = ^Tlog5T + 0(T). (21)
Доказательство. Представим F(m) в форме:
24
F(m) = ^ftn)co25mn + (m)cûam ,
n=0 a=l
где
F(m)= £г(25п+а)®25тп = 1>а(п)а>25тп
n=0 n=0
Для вычисления Ра(т) образуем три матричные последовательности периода N/25 с коэффициентами из ):
< g„(n) >=
(s-0,1,2).
понимая компоненты матриц < > как элементы кольца ).
Производя вычисления матричных спектров <0$(ш)> и выделяя, как в предыдущем разделе, "частичные спектры" Р (ш), получаем в этом случае для М,(Т)
рекуррентное соотношение:
м,т = м@+з(^тКт-з))+о(т),
откуда следует (21).
ЗАКЛЮЧЕНИЕ
Отмстим ряд характерных особенностей предложенной методики синтеза БПФ с
совмещением в матричных кольцах.
Для рассмотренного случая (N = 5k, (2 х 2)-матрицы ) основные идеи алгоритма
реализуются в наиболее рафинированном виде. Их экстраполяция на общий случай
N = рк (р — простое число) возможна при наличии тождеств со значительным числом
"тривиальных" коэффициентов для матриц мультипликативного порядка р, аналогичных
В. В частности, возможен синтез аналогичного алгоритма для р = 7 с совмещением в
30
кольце (3x3) — матриц, для которого С = — в оценке (1), что тоже несколько лучше
7
оценки, приведенной в [2|. Нахождение таких тождеств (или доказательство их отсутствия) представляет собой весьма трудную математическую задачу, связанную с тонкими арифметическими свойствами значений базисных функций дискретного преобразования Фурье как элементов поля алгебраических чисел.
Литература
1. Крот А.М. Дискретные модели динамических систем на основе полиномиальной алгебры. Минск: Навука i тэхника, 1990.
2. Власенко В.А., Лаппа Ю.М., Ярославский Л. П. Методы синтеза быстрых алгоритмов свертки и спектрального анализа сигналов. М.: Наука, 1990, 160с.
3. Chernov V.M. Arithmetic methods in the theory of discrète orthogonal transforms // Workshop on Digital Image Processing and Computer Graphics. Proceedings SPIE, V.2363, 1994.
4. Чернов В.M. Алгоритмы дискретною преобразования Фурье с представлением данных в полях алгебраических чисел // Автоматика и выч. техника. 1994, N 4. С.64-69.
5. Блейхут Р. Быстрые алгоритмы цифровой обработки сигналов. М.: Мир, 1987, 448с.