Вычисление преобразований Фурье-Галуа в редуцированных бинарных системах счисления

Автор: Чернов Владимир Михайлович

Журнал: Компьютерная оптика @computer-optics

Рубрика: Численные методы и анализ данных

Статья в выпуске: 3 т.42, 2018 года.

Бесплатный доступ

В работе предлагается новый метод вычисления преобразований Фурье-Галуа (теоретико-числовых преобразований), являющихся модулярным аналогом дискретного преобразования Фурье. Ряд специфических проблем, связанных с вычислением преобразований в конечном поле, удаётся решить с помощью представления элементов этих полей в «экзотических» системах счисления, являющихся редукциями канонических систем счисления И. Катаи при отображении соответствующего кольца целых квадратичного поля в поле классов вычетов по простому модулю. Подробно исследуется случай бинарных редуцированных систем счисления. Доказывается, что такие системы счисления существуют для любого простого числа.

Еще

Преобразования фурье-галуа, конечные поля, канонические и редуцированные системы счисления

Короткий адрес: https://sciup.org/140228753

IDR: 140228753   |   DOI: 10.18287/2412-6179-2018-42-3-495-500

Текст научной статьи Вычисление преобразований Фурье-Галуа в редуцированных бинарных системах счисления

Основной объект исследования работы – преобразования Фурье–Галуа (синонимы: теоретико-числовые преобразования, ТЧП) [1, 2], являющиеся модулярной версией дискретного преобразования Фурье в конечном поле (mod p ):

N - 1

xˆ(m) = ∑ x(n)ωmn , n=0

ω N 1(mod p ),                               (1)

x ( n ) Z , m = 0,1,...N - 1.

Считалось, что такие преобразования были введены в [3] в 1972, пока не было обнаружено, что такое преобразование было использовано Штрассеном и Шёнхаге в работе по умножению больших целых чисел [4] в 1966 году (заметим, что их приоритет иногда оспаривается также с упоминанием работ Фараджие-ва и Цыпкина 1965-1966 гг. См., например, [5]).

Преобразования (1) обладают рядом полезных свойств, главное из которых – отсутствие вычислительной погрешности, что, например, для задач, возникающих в криптографии, является принципиальным. Пик популярности исследований ТЧП приходился на 90-е годы, причём эти исследования не ограничивались только теоретическими. Наряду с ними проводились и аппаратные разработки [6].

Следует отметить, что, в отличие от традиционного «комплексного» дискретного преобразования Фурье (ДПФ), его модулярная версия (1) обладает рядом специфических недостатков, затрудняющих его вычисление:

  •    операции (mod p ) не являются «элементарными» компьютерными операциями;

  •    длина преобразования и простое число p связаны соотношением делимости N | ( p – 1);

  •    зачастую делители числа ( p – 1) таковы, что вычисление (1) исключает дополнительную алгоритмическую поддержку за счёт применения модулярных аналогов быстрых алгоритмов ДПФ.

В ряде случаев удаётся выбрать параметры преобразования (в частности, простое число p ), при которых перечисленные выше вычислительные недостатки проявляются в минимальной степени.

Наиболее известны в этом контексте простые числа Ферма p = 2 B + 1, B = 2 k , простые числа Мерсенна p = 2 k – 1, по модулю которых в соответствующих конечных полях относительно просто реализуются арифметические операции при представлении элементов этих полей в бинарной арифметике со множеством цифр Λ = {0, 1} [1, 2]. Менее известны простые числа Голомба [7] p = 3 2 k + 1 и Люка p = 5 2 k + 1, для которых также возможна не очень сложная реализация операций в бинарной системе счисления, и вообще для простых чисел p = 2 n – 2 m + 1 [5]. Естественно, что для этих чисел наиболее эффективная реализация в двоичной {0,1}-арифметике будет при ω ≡ 2(mod p ) , когда умножения на степени ω сводятся к регистровым сдвигам.

Замечание. К сожалению, достаточно общие утверждения о мультипликативных порядках элементов ω ≡ 2(mod p ) , то есть о возможных длинах преобразования (1), известны только в простейших случаях. В общем случае эта задача сводится к вычислительно сложной задаче дискретного логарифмирования.

Рассмотрение в преобразовании (1) вместо простых p составных модулей mod m добавляет к отмеченным трудностям необходимость учёта возможных делителей нуля фактор-кольца Z / m Z . Эта проблема решается, как правило, с помощью распараллеливания вычислений по модулям, равным делителям числа m .

В работах [8 – 10] идея распараллеливания реализуется также в сочетании с представлением элементов кольца Z / m Z в подходящей системе счисления.

Необходимые теоретические сведения и обозначения

Пусть Z ( d )– кольцо целых квадратичных чисел поля Q ( d ), то есть чисел z = a + b^d ; a , b e Q с условиями:

Norm( z ) = a 2 - b 2 d e Z , Tr ( z ) = 2 a e Z .

Как известно [13],

Z ( ^/ d ) = { z = a + bid } =

J       { z : a , b e Z при d * 1(mod4) } ;

[ { z : a , b e Z , a = b (mod2) при d ^ 1(mod4) } .

Согласно [14], элемент ae Z ( d ) называется основанием канонической системы счисления в Z ( d ),если любой элемент z этого кольца представим в виде

k ( z ) )

z=E zka k, zkeЛ.                            (2)

k = 0

Числа z k , допуская некоторую методологическую вольность, будем называть цифрами , множество Л - цифровым алфавитом, а пару ( a , Л ) - системой счисления в кольце Z ( d ). Если

Л = { 0,1,..., |Norm( a )| - 1 } ,                         (3)

то система счисления называется канонической системой счисления. Исчерпывающее описание канонических систем счисления для мнимых квадратичных полей получено в [13].

В работе [14] было предложено обобщение понятия канонической системы счисления: допускался цифровой алфавит Л , являющийся конечным подмножеством множества Z ( d ). Такие системы счисления, следуя [14], будем называть квазиканониче-скими системами счисления.

Как легко следует из ограничений классификационных теорем работы [13], бинарные канонические системы счисления существуют только в кольцах

Z ( i ), Z ( i 2), Z ( i 7).                               (4)

В [14] показано, что в этих кольцах и только в них существуют и квазиканонические системы счисления. Определить цифры z k разложения (2) можно с помощью рекуррентного процесса [15], [10], но для рассматриваемых колец Z ( d ) лучше воспользоваться алгоритмом деления по норме на элемент a [12]. Такой алгоритм реализуем лишь для пяти значений d ≤ 0, а именно: d = –1, –2, –3, –7, –11, то есть и для рассматриваемых колец (4).

Пусть далее для данного простого p число d является квадратичным вычетом (mod p) [17], то есть существуют решения сравнения y2 ^ d (mod p). (5)

Пусть n - одно из решений сравнения (5), рассмотрим гомоморфизм

Ф : z = a + b4d ^ a + n b (mod p ), (6) так как элемент в правой части (6) принадлежит конечному полю F p , то есть ф - отображение Z (T d ) ^ F p .

Отображение ф редукция (mod p ), очевидным образом индуцирует преобразование представления (1) с новыми параметрами: цифрами ф ( z k ) и основанием Ф ( a ) = g. Такие представления будем называть представлениями в редуцированных системах счисления.

В настоящей работе рассматриваются только бинарные редуцированные системы счисления (то есть с двухэлементными цифровыми множествами Л ).

Свяжем с элементом кольца F p его код – вектор цифр:

  • ^    = - g 0 + 5 1 g 1 + ^ 2 g 2 + ... ^ (U 5 1 , ^ --- ) . (7)

Операции над представлениями элементов (2) индуцируют соответствующие им правила преобразований кодов. Отметим, что при такой интерпретации цифры ^ k при реализации операций играют не роль чисел, а являются исключительно «идентификаторами состояния соответствующего триггера».

Конечные поля, для которых существуют бинарные редуцированные системы счисления

Рассмотрим подробнее те из колец целых квадратичных чисел Z ( d ), для которых выполняются условия:

  • (a)    число ( d ) является квадратичным вычетом (mod p ),

  • (b)    в кольце Z ( d ) существуют бинарные ква-зиканонические системы счисления.

Колец Z ( d ) с условием (b) немного: Z ( i ), Z ( i 2), Z ( i 7). Исследуем, при каких простых p каждое из перечисленных колец удовлетворяет условию (a).

Случай поля Z p ( i ) = F p . Как следует из работы [13] о канонических системах счисления в мнимых квадратичных полях и её обобщений [16] на «квази-канонические» системы счисления, в кольце целых элементов Z ( i ) существуют ровно 8 бинарных «ква-зиканонических» систем счисления, а именно системы счисления с основаниями a = a ± = -1 ± i и множествами Л цифр

{ 0,1 } , { 0, i } , { 0, - 1 } , { 0, - i } .

В табл. 1 указаны правила инверсии знака, переноса в старший разряд(ы) для четырех из восьми бинарных систем счисления.

Табл. 1. Арифметические операции в квазиканонических системах счисления кольца целых квадратичных Z (i)

Система

счисления { a , Л }

Преобразование выражений, возникающих при реализации арифметических операций

a = - 1 + i , Л = { 0, i }

i = i a + i , 432

- 1 = i a + 1 a + 1 a + 1 ,

2 i = i a 3 + i a 2

a = - 1 + i , Л = { 0, - 1 }

( - 1 ) 2 = 1 =

= ( - 1) a 4 + ( - 1) a 3 + ( - 1) a 2 + ( - 1),

- 2 = ( - 1 ) a 3 + ( - 1 ) a 2

a = - 1 + i , Л = { 0, - i }

( - i ) 2 = - 1 =

= ( - i ) a 2 + ( - i ) a + ( - i ) , i = ( - i ) a 4 + ( - i ) a 3 +

+ (- i )a 2 + (- i ) ,

2 i = ( - i ) a 3 + ( - i ) a 2

a = - 1 + i , л = { 0,1 }

12 = 1,

- 1 = 1 ^a 4 + 1 ^a 3 + 1 ^a 2 + 1, 2 = 1 ^a 3 + 1 ^a 2

От редуцированного (mod p ) кольца Z p ( i ) потребуем, чтобы элемент (–1) являлся квадратичным вычетом (mod p ). Хорошо известно (например, [17]), что это условие выполняется для всех простых чисел вида p = 4 k + 1 (так называемых «пифагоровых простых»):

5,13,17,29,37,41,53,61,73,89,97,101,109, ^ ,

Так как возможная длина N преобразования (1) связана c (mod p ) соотношением делимости N | ( p – 1), то для p = 13 возможные длины преобразований N = 2,3,4, 6,12, причём элемент a = 4 имеет мультипликативный порядок, равный 12.

Заметим, что в отличие от классических систем счисления в кольце целых рациональных чисел Z один и тот же элемент кольца классов вычетов (mod p ) может иметь несколько (бинарных) представлений в системе счисления с основанием a .

Пример 2. Пусть p = 5, i = 2 (mod5), a = -1 -i = 2 (mod5),Л = {0,1}.

Свяжем с элементом кольца S p ( i ) его код – вектор цифр:

x = x 0 a 0 + x 1 a 1 + x 2 a 2 + ... ^ ( x 0 , x 1 , x 2,... ) .

Тогда при выбранных выше параметрах имеем:

0 o ( 0,0,0 ) о ( 1,0,1 ) ,

  • 1    о ( 1,0,0, ) o ( 0,1,1 ) ,

  • 2    o ( 0,1,0 ) ^ ( 1,1,1 ) ,

  • 3    ^ ( 1,1,0 ) ,

  • 4    o ( 0,0,1 ) .

то есть членов последовательности А00144 по классификации [18].

В этом случае «редуцированная» (mod p ) табл. 1 получается формальной заменой основания системы счисления и «цифр» на соответствующие элементы, а именно образы при каноническом отображении редукции Z( i ) ^ Z p ( i ) приведение (mod p ) » ) .

Пример 1 . Пусть p = 13, n — решение сравнения П 2 ^ -1 ^ p - 1(mod p ).

В рассматриваемом случае указанное сравнение имеет два решения n + = 5, П - = 8(mod 13).

Далее, при

П = 5(mod13), Л={0,i} ={0,5}, a = -1 + i = -1 + 5 = 4(mod13).

Случай поля Z p ( i V2) = F p . Как показано в работе [14], в кольце целых квадратичных чисел Z ( i 2) существуют ровно четыре бинарные квазиканонические системы счисления: системы счисления с основаниями a = ± i V2 и множествами цифр Л + = {0,1}, Л {0,-1}.

Так как требуется, чтобы в редуцированном (mod p ) кольце элемент (–2) был квадратичным вычетом (mod p ), то, вычисляя символ Лежандра [17],

-2

-1

p

p

p

p -1/

= ( - 1) /2

■(-1)

- 1

нетрудно убедиться, правая часть последнего равенства равна (+1) при всех простых p с условием p2 + 4p - 5 ^ 0(mod16),

соответствующие соотношения правого столбца табл. 1 примут вид:

52 = 5 41 + 5 40

8 = 5 44 + 5 43 + 5 42 + 5 4 0

2 5 = 5 43 + 5 42

( mod13 ) .

Отметим, что в соотношениях (8) коэффициенты 5 ^ i (mod 13) при реализации операций играют не роль чисел, а являются исключительно идентификаторами состояния соответствующего триггера.

что, очевидно, выполняется для простых вида p = 8 k + 1 или p = 8 k + 3, k e Z , то есть для простых чисел - членов последовательности A004625 и членов последовательности A007520 по классификации энциклопедии [18].

Пример 3. Пусть p = 11, n — решение сравнения П 2 ^ -2 ^ p - 2(mod p ).

В рассматриваемом случае указанное сравнение имеет два решения n + ^ 3, П - = 8(mod 11).

Далее, при

П ^ 3 (mod11), Л = {0,1}, a = i ^ = 3( mod11)

соответствующие соотношения правого столбца табл. 2 примут вид:

10 2 = 1

- 1 = 10 = 1 2 + 1

2 = 1 4 + 1 2 = 1 - 81 + 1 - 9

- ( mod11 ) .

Табл. 2. Арифметические операции в квазиканонических системах счисления кольца целых квадратичных Z ( i 2)

Система

счисления { а , Л }

Преобразование выражений, возникающих при реализации арифметических операций

{ i V2, { 0,1 } }

12 = 1,

- 1 = 1 2 + 1, 2 = 1 4 + 1 2

{ i V2, { 0, - 1 } }

( - 1 ) 2 = 1,

1 = ( - 1) 2 + ( - 1), 2 = ( - 1) 2

Случай поля Z p ( i VX) = F p . Так как (—7) = 1(mod4), то Z ( i V7 ) = | a + 2^ ; a , b е Z ; a = b (mod2) | .

Тем не менее, для определения множества простых, для которых существуют редуцированные бинарные системы счисления, удовлетворяющие требованию (a), определим простые, для которых число (–7) является квадратичным вычетом (mod p ).

Вычисляя символ Лежандра с использованием квадратичного закона взаимности, имеем p-y

I —1 = 1 — II -I = (-1) /2 -I - I =I pJ I p JIp J Ip J

=(-1) p -x (_n м p -x )f p ъг p j ( )           17 j 17 j .

Нетрудно видеть, что квадратичными вычетами (mod 7) являются элементы 1,2,4(mod 7).

Таким образом, при p = 1,2,4(mod 7) справедливо соотношение Z p ( i V7) = F p и в поле F p существуют бинарные системы счисления – редукции (mod p ) ква-зиканонических систем счисления в Z ( i 7) .

Табл. 3. Арифметические операции в квазиканонических системах счисления кольца целых квадратичных Z ( i 7)

Система счисления

{ а , Л }

Преобразование выражений, возникающих при реализации арифметических операций

{-Y^ , { 0,1 ) }

12 = 1,

- 1 = 1 -а + 1 - а + 1

2 = 1 3 + 1

{-Ц^ , { 0, - 1 !

2 = ( - 1 ) а 3 + ( - 1 ) а ,

1 = ( - 1 ) а 2 + ( - 1 ) а + ( - 1 )

Пример 4. Пусть p = 11, n — решение сравнения П 2 ^ -7 ^ p - 7(mod p ).

В рассматриваемом случае указанное сравнение имеет два решения n + ^ 2, n - ^ 9(mod 11). Далее, при

П ^ 2 (mod11), Л = {0,1}, 2-1 ^ 6 (mod11), а = 2-1 (-1 - i 41 ) = 7 (mod11), соответствующие соотношения правого столбца табл. 3 примут вид:

2 = 1-а3 + 1-а= 1-63 +1-6            1

!- (mod11).

  • -1 = 1-а2 + 1-а +1 = 1-62 +1-6 +1-60

Таким образом, суммируя полученные результаты о полях Z p ( i4d ) при d = 1, 2, 7, получаем основное утверждение работы.

Утверждение . Для любого простого p существует по крайней мере одна из бинарных редуцированных систем счисления в Z p .

Заключение

Отметим, что сфера приложения рассматриваемого подхода, по мнению автора, не ограничивается приложениями к вычислению теоретико-числовых преобразований для их последующего использования в алгоритмах умножения больших целых чисел, при решении криптографических задач и т.п.

Действительно, реальные вычисления при численном решении любой прикладной задачи производятся не над полями действительных или комплексных чисел, а над некоторым множеством их рациональных аппроксимаций, причем происхождение обрабатываемых данных и возможности используемых вычислительных средств выделяют во множестве рациональных чисел конечное подмножество – некую «рабочую зону». После соответствующего масштабирования элементы этого множества можно считать целыми числами и, более того, вычетами по достаточно большому модулю [19].

Таким образом, рассмотренные «экзотические» системы счисления – бинарные редуцированные системы счисления в определенной мере представляют альтернативу традиционной «битовой» системе счисления.

Отметим также, что разработанная методика применима не только для построения бинарных редуцированных систем. Вопрос о целесообразности таких исследований с ориентацией на приложения зависит от характеристик существующих или перспективных вычислительных устройств.

По крайней мере, представляются интересными и реалистичными исследования тернарных редуцированных систем счисления, например, с «уравновешенным» цифровым алфавитом Л = {-1,0,1}, или каких-либо иных с возможностью простых реализаций базовых арифметических операций.

Работа выполнена при поддержке РФФИ (проект №16-41-630676_р_а) и в рамках госзадания по теме № 0026-2018-0106.

Список литературы Вычисление преобразований Фурье-Галуа в редуцированных бинарных системах счисления

  • Нуссбаумер, Г. Быстрое преобразование Фурье и алгоритмы вычисления свёрток/Г. Нуссбаумер; пер. с англ. -М.: Радио и связь, 1985. -248 с.
  • Блейхут, Р. Быстрые алгоритмы цифровой обработки сигналов/Р. Блейхут; пер с англ. -М: Мир, 1989. -448 с.
  • Rader, C.M. Discrete convolution via Mersenne transforms/C.M. Rader//IEEE Transactions on Computers. -1972. -Vol. C-21, Issue 12. -P. 1269-1273. - DOI: 10.1109/T-C.1972.223497
  • Schönhage, A. Schnelle Multiplikation großer Zahlen/A. Schönhage, V. Strassen//Computing. -1966. -Vol. 7, Issue 3-4. -P. 281-292. - DOI: 10.1007/BF02242355
  • Вариченко, Л.В. Абстрактные алгебраические системы и цифровая обработка сигналов/Л.В. Вариченко, В.Г. Лабунец, М.А. Раков. -Киев: Наукова думка, 1986. -247 с.
  • Alfredson, L.-I. VLSI architectures and arithmetic operations with application to the Fermat number transform/L.-I. Alfredson. -Linköping, Sweden: Linköping University, 1996. -296 p. -ISBN: 91-7871-694-2.
  • Golomb, S.W. Properties of the sequence 3∙2n+1/S.W. Golomb//Mathematics of Computation. -1976. -Vol. 30, Issue 135. -P. 657-663. - DOI: 10.1090/S0025-5718-1976-0404129-8
  • Chernov, V.M. Fast algorithm for "error-free" convolution computation using Mersenne-Lucas codes/V.M. Chernov//Chaos, Solitons and Fractals. -2006. -Vol. 29, Issue 2. -P. 372-380. - DOI: 10.1016/j.chaos.2005.08.081
  • Чернов, В.М. Квазипараллельный алгоритм безошибочного вычисления свёртки в редуцированных кодах Мерсенна-Люка/В.М. Чернов//Компьютерная оптика. -2015. -Т. 39, № 2. -С. 241-248. - DOI: 10.18287/0134-2452-2015-39-2-241-248
  • Чернов, В.М. Арифметические методы синтеза быстрых алгоритмов дискретных ортогональных преобразований/В.М. Чернов. -М.: Физматлит, 2007. -264 с. -ISBN: 5-9221-0940-6.
  • Koblitz, N. Algebraic aspects of cryptography/N. Koblitz. -Berlin, Heidelberg: Springer-Verlag, 1998. -206 p. -ISBN: 978-3-540-63446-1.
  • Боревич, З.И. Теория чисел/З.И. Боревич, И.Р. Шафаревич. -3-е изд. -М.: Наука, 1985. -504 с.
  • Kátai, I. Canonical number systems in imaginary quadratic fields/I. Kátai, B. Kovács//Acta Mathematica Hungarica. -1981. -Vol. 37, Issues 1-3. -P. 159-164. - DOI: 10.1007/BF01904880
  • Богданов, П.С. Классификация бинарных квазиканонических систем счисления в мнимых квадратичных полях/П.С. Богданов, В.М. Чернов//Компьютерная оптика. -2013. -Т. 37, № 3. -С. 391-400.
  • Thuswardner, J. Elementary properties of canonical number systems in quadratic fields/J. Thuswaldner. -In: Application of Fibonacci numbers/ed. by G.E. Bergum, A. N. Philippou, A.F. Horadam. -Dordrecht: Springer, 1998. -P. 405-414. - DOI: 10.1007/978-94-011-5020-0_45
  • Богданов, П.С. О сходимости некоторых алгоритмов бинарной и тернарной машинной арифметики для вычислений в мнимых квадратичных полях/П.С. Богданов//Компьютерная оптика. -2015. -Т. 39, № 2. -С. 249-254. - DOI: 10.18287/0134-2452-2015-39-2-249-254
  • Айерлэнд, К. Классическое введение в современную теорию чисел/К. Айерлэнд, М. Роузен; пер. с англ. -М.: Мир, 1987. -415 с.
  • The on-line encyclopedia of Integer Sequences® (OEIS®) . -URL: https://oeis.org/(дата обращения 10.04.2018 г.).
  • Грегори, Р. Безошибочные вычисления. Методы и приложения/Р. Грегори, Е. Кришнамурти; пер. с англ. -М.: Мир, 1988. -207 с. -ISBN: 5-03-001145-5.
Еще
Статья научная