Научная статья на тему 'Параллельная машинная арифметика для рекуррентных систем счисления в неквадратичных полях'

Параллельная машинная арифметика для рекуррентных систем счисления в неквадратичных полях Текст научной статьи по специальности «Математика»

CC BY
76
13
i Надоели баннеры? Вы всегда можете отключить рекламу.
Журнал
Компьютерная оптика
Scopus
ВАК
RSCI
ESCI
Область наук
Ключевые слова
КОНЕЧНЫЕ ПОЛЯ / РЕКУРРЕНТНАЯ СИСТЕМА СЧИСЛЕНИЯ / ПАРАЛЛЕЛЬНАЯ МАШИННАЯ АРИФМЕТИКА / FINITE FIELDS / RECURRENT NUMBER SYSTEM / PARALLEL MACHINE ARITHMETIC

Аннотация научной статьи по математике, автор научной работы — Чернов Владимир Михайлович

В работе предлагается новый метод синтеза систем машинной арифметики для «безошибочных» параллельных вычислений. Отличием предлагаемого подхода от вычислений в традиционных системах остаточных классов для прямой суммы модулярных колец является параллелизация вычислений в неквадратичных расширениях простых конечных полей, элементы которых представлены в системах счисления, порождёнными последовательностями степеней корней характеристического полинома рекуррентной последовательности. Работа продолжает и обобщает исследования автора, в которых, в частности, рассматривались рекуррентные соотношения nбоначчи (трибоначчи, тетрабоначчи и т.д.).The paper proposes a new method of synthesis of computer arithmetic systems for "error-free" parallel calculations. The difference between the proposed approach and calculations in traditional systems of Residue Number Systems for the direct sum of modular rings is the parallelization of calculations in non-quadratic extensions of simple finite fields whose elements are represented in number systems generated by sequences of powers of roots of the characteristic polynomial of the recurrent sequence.

i Надоели баннеры? Вы всегда можете отключить рекламу.
iНе можете найти то, что вам нужно? Попробуйте сервис подбора литературы.
i Надоели баннеры? Вы всегда можете отключить рекламу.

Текст научной работы на тему «Параллельная машинная арифметика для рекуррентных систем счисления в неквадратичных полях»

ЧИСЛЕННЫЕ МЕТОДЫ И АНАЛИЗ ДАННЫХ

Параллельная машинная арифметика для рекуррентных систем счисления в неквадратичных полях

В.М. Чернов12

1ИСОИ РАН - филиал ФНИЦ «Кристаллография и фотоника» РАН, 443001, Россия, Самарская область, г. Самара, ул. Молодогвардейская, д. 151, 2 Самарский национальный исследовательский университет имени академика С.П. Королёва, 443086, Россия, Самарская область, г. Самара, Московское шоссе, д. 34

Аннотация

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

Ключевые слова: конечные поля, рекуррентная система счисления, параллельная машинная арифметика.

Цитирование: Чернов, В.М. Параллельная машинная арифметика для рекуррентных систем счисления в неквадратичных полях / В.М. Чернов // Компьютерная оптика. - 2020. -Т. 44, № 2. - С. 274-281. - DOI: 10.18287/2412-6179-CO-666.

Citation: Chernov VM. Parallel machine arithmetic for recurrent number systems in non-quadratic fields. Computer Optics 2020; 44(2): 275-282. DOI: 10.18287/2412-6179-CO-666.

Введение

Целью работы является введение и исследование нового класса параллельных систем «безошибочных» вычислений, связанных не со структурной разложимостью («параллелизуемостью») алгебры, в которой производятся вычисления (как, например, при вычислениях в системах остаточных классов (СОК)) [1, 2], а с представлением элементов этой алгебры в специальных позиционных системах счисления в виде, адаптированном к проведению параллельных вычислений. Кроме того, вычисления проводятся в конечных полях, что позволяет при разумном выборе параметров этих полей избежать накопления неконтролируемой вычислительной погрешности, характерной при вычислениях с обычными рациональными аппроксимациями вещественных или комплексных чисел.

Несмотря на то, что арифметические операции (mod p) не являются для большинства вычислительных устройств элементарными компьютерными операциями, для некоторых простых чисел p арифметика конечного поля Fp может быть более «дружественной компьютеру». Наиболее известными примерами таких простых чисел являются:

• простые числа Мерсенна p = 2q - 1,

• простые числа Ферма p = 22i + 1,

• простые числа Голомба p = 3 • 2q + 1.

В этих и некоторых других случаях [3 - 5], например, при «естественном» для полей Мерсенна и Ферма представлении элементов полей в (редуцированной) двоичной системе счисления, умножения сводятся к сложениям представляющих элементы бинарных кодов и к их (циклическим) регистровым сдвигам. Для упомянутых классов простых чисел разработаны как алгоритмические, так и аппаратные средства вычислений в соответствующих модулярных кольцах (полях) [3, 6].

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

Некоторым паллиативом является метод распараллеливания вычислений в СОК [1, 2], синтез которых в настоящее время представляет собой скорее чисто технологическую, а не теоретическую задачу, так как тезис: «если алгебраическая структура А изоморфна прямой сумме структур той же категории А = А1 © А2 © ... Аг, то вычисления в структуре А можно распараллелить и заменить «покомпонент-

ными» вычислениями в подструктурах Ль А2, ..., Аг», является давно известным, хрестоматийным фактом, частные случаи систематического использования которого восходят едва ли не к методу координат Р. Декарта, несмотря на то, что при вычислениях в СОК этот факт используется в весьма специфической версии «китайской теоремы об остатках».

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

Таким образом, как достоинства, так и недостатки вычисления в СОК вполне определяются самим принципом распараллеливания, связанным с разложением основной вычислительной структуры в прямую сумму подструктур той же категории. То есть определяются «хорошим» представлением (разложением) множества, в котором производятся вычисления, и использованием структурных алгебраических свойств такого представления.

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

Подобный подход для ряда частных случаев некоторых квадратичных полей был предложен автором впервые в [7] для квадратичных полей и в сочетании с традиционной идеей «СОК-распараллеливания» (см. также [8 - 11]). В настоящей работе исследуется более общий случай систем счисления, порождённых линейными рекуррентными соотношениями п-го порядка в неквадратичных кольцах.

1. Синтез основной вычислительной структуры

Будем рассматривать последовательности, порожденные линейным рекуррентным соотношением

Ь (к + п) = еЬ(к + (п -1)) +... + епЬ (к), еп =+1 (1)

п-го порядка с условием е, е {-1, 0 +1} = О .

Хорошо известно (например, [12 - 13]), что если все корни а, характеристического полинома

>"п (х) = х е1 х е 2 х ... е Пх (2)

различны, то общим решением уравнения (1) является функция

Ь(к) = 2 Сак ,

]=0

где константы С, взаимно-однозначно определяются начальными значениями последовательности (1)

(Ь(0),...,Ь(п - 1)) (Со,...,Сп-.).

Замечание 1. Далее в работе будем рассматривать исключительно рекуррентные функции - решения соотношения (1) - с такими начальными условиями, что

(Ь(0),...,Ь(п -1)) о (Со,...,Сп-,) = (1,1... ,1), (3) то есть для которых справедливо равенство

Ь(к) = 2 ак. (4)

]=о

Пусть простое число р таково, что характеристический полином (2) рекуррентного соотношения (1) неприводим над конечным полем ^ из р элементов. Будем искать возможность представления и целых чисел, и элементов конечных полей в форме

Л (г)

г = 2^Ь(к), %к еОс Z.

к=0

Рассмотрим фактор-кольцо кольца полиномов О[х] над О по главному идеалу, порождённому полиномом /„ (х) е О[х]:

*%( (х Г К = О.

В случае неприводимости > (х) кольцо К является полем алгебраических чисел - полем разложения полинома (х), в котором данный полином имеет п корней а\,...,ап с учётом их кратности.

Рассмотрим также фактор-кольцо кольца полиномов Fp[x] над Fp по главному идеалу, порождённому полиномом > (х) е Fp[x]:

^ [ х]/ ^ F = F =

/[Л «Г * = Fp„ = (5)

= {г = 2п=01^'-ю: ^ е Fp;> (ю) = 0}.

По построению поля Fp п = Fí как фактор-кольца элемент ю равен одному из корней у полинома (2) в поле Fí, остальные корни у^ в поле Fí получаются действием автоморфизма Фробениуса 6 : г —• г р на элемент у:

У0 = У, У1 =б(у) = ур ,..., У п-1 =(6 о... о б)(у) = урп-1.

Так как мультипликативная группа элементов конечного поля циклична, то мультипликативные порядки ОгЛ (у,-) = Л корней у,- совпадают и равны одному из де-

лителеи порядка мультипликативном группы Fq равного

Ord (F/) = p" -1 = q -1, d |(q -1).

Замечание 2. Вопрос о нахождении мультипликативных порядков конкретных элементов конечных полей в конкретных полях является самостоятельной непростой теоретической и вычислительной задачей (см. [14]). ■

Далее, исходя из наличия априорной информации о диапазоне обрабатываемых целочисленных данных в конкретной решаемой прикладной задаче и характеристик используемых вычислительных средств (разрядность, допустимая степень распараллеливания и т. п.), выберем рекуррентное соотношение (1) и простое число р с условием неприводимости характеристического полинома /„ (х) в поле Рр.

В соответствии с выбранными параметрами „, р рассмотрим расширение = Fp „ поля Рр, а именно фактор-кольцо кольца полиномов Рр[х] над Рр по главному идеалу, порождённому полиномом /„ (х). Это фактор-кольцо далее будем рассматривать как основную структуру, в которой будем синтезировать (параллельные) алгоритмы вычислений.

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

• Если допустить, что простое р и С настолько велики, что все целые числа г, участвующие в вычислительной процедуре в качестве входных и выходных данных, допускают представление в форме (то есть в « Ь - системе счисления»)

* = &L (k)

(6)

где Ь (к) - последовательность-образ Ь (к) при редукции Z ^ Z/(р), то для элемента г, наряду с представлением (6), справедливо и представление

Г = X 5кЬ (к) = % ^ % (а,) = § № ^ (а,) ) (7)

к=0 к=0 ,=0 ,=0 \к=0 /

Таким образом, переход от представления (6) к представлению (7) даёт возможность вычислять не в «неканонической» Ь - системе счисления, а параллельно в „ системах счисления более традиционного вида с экспоненциальными базисами у, (, = 0, 1, ..., п - 1).

• Так как все у = у, е есть корни уравнения

у „ =б! у^1 +е2 у„-2 + ... + е„ у0,

то при возникновении при выполнении арифметических операций «недопустимых» коэффициентов

+2 г {-1,0, +1} = Q ,

соответствующее слагаемое в результирующей сумме относительно просто преобразуется к «допустимому» виду. Действительно, если

у" -Sjу"-1 - ...-еи-1у1 -1-у0 = 0,

то

у" -Sjу"-1 - ... -sn-1y1 + 1-у0 = 2.

Поэтому

2 = | у"-S1 у"-1 -... -s n-1 у1 + 1-у0, при S" = 1; (8) [-у" +S1yn-1 + ... + sn-1у1 +1 - у0, при Sn = -1.

Замечание 3. В дальнейшем, если из контекста ясна принадлежность элемента кольцу целых чисел или его модулярной редукции Z/(p), автор не будет подчеркивать эту разницу в обозначениях. ■

2. О представлении чисел в системе счисления с базисами L(k)

Рассмотрим возможность представления целых чисел в позиционной системе счисления с базисом {L(k) : k = 0, 1, ...} и цифрами Q = {-1, 0, +1}.

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

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

Наиболее известным результатом относительно представления целых чисел суммами членов фиксированной последовательности является теорема Бро-уна [15].

Теорема. (Brown, [15]). Пусть целочисленная последовательность ym неубывающая и

7(,) = £ ym .

m=0

Тогда условия

У0 = 1; 7 (ц- 1 )> у,-1 V,> 1

(9)

являются необходимыми и достаточными для последовательности ут, чтобы она была полной. ■ Последнее утверждение позволяет находить представление элементов г е Z в форме

г = % %кЬ (к), %к е {0,1}

к=0

в случае полноты последовательности Ь(к) с помощью так называемого жадного алгоритма, а именно: от числа г последовательно шаг за шагом отщепляются слагаемые таким образом, что

k =0

г = г = Ь(,) + г,-!, где Ь(,) >2^кЬ(к)

к =0

и так далее.

К сожалению, непосредственное применение критерия Теоремы для представления целого числа в системе счисления с рассматриваемыми базисами {Ь(к) : к = 0, 1, ...} и множеством цифр О = {-1, 0, +1} невозможно по ряду причин, в частности:

(a) для последовательности (1) п-го порядка с условиями (3) справедливо равенство Ь(0) = п Ф 1;

(b) последовательность Ь(к) может быть немонотонной;

(c) последовательность Ь(к) может быть и знакопеременной;

(ф неравенство 21=оЬ(т) > Ь(ц) -1 может не

iНе можете найти то, что вам нужно? Попробуйте сервис подбора литературы.

выполняться для некоторых ц; (е) утверждение 1 ориентировано на представление элементов с использованием бинарного множества «цифр» Д = {0,1}.

2.1. Неформальные аргументы для обобщения критерия Броуна

Приводимые ниже соображения (а*) - (е*) являются некоторыми контраргументами по отношению к сформулированным выше проблемам (а) - (е), имеют неформальный характер и могут корректироваться в конкретных случаях.

(а*) Если в (1) е! = +1 то Ь(1) = +1 и представление для

г е Z в форме (6) начинается не с Ь(0), а с Ь(1). (Ь*) Если хоть один корень полинома (2) лежит вне единичного круга комплексной плоскости, то последовательность абсолютных величин 1Ь(к)|, начиная с некоторого к0, образует монотонно возрастающую последовательность.

(с*) Так как в работе рассматриваются тернарные системы счисления с цифрами О = {-1, 0, +1}, то в представлении (6) отрицательность слагаемых Ь(к) < 0 может быть скомпенсирована отрицательностью соответствующей цифры = -1. Если последовательность Ь(к) возрастает асимптотически как геометрическая прогрессия {цк, kеZ}, то для выполнения условия

2 цт=^—т > 1

т=0 Ц 1

достаточно выполнения неравенства 1 < ц <2. Применительно к вопросу о представлении чисел в системе счисления с базисом Ь(к) модуль набольшего корня I атах I полинома (2) (см. выше (Ь)) также должен удовлетворять неравенству

1 < 1атах1 <2.

(е*) В определении полноты системы имеется в виду бинарное множество цифр, которое включено в множество цифр, используемое в настоящей работе:

О = {-1,0 + 1}з{0, +1}.

2.2. Некоторые примеры

В табл. 1 приводятся сведения обо всех неприводимых над полем О полиномах (2) третьей степени, рассматриваемых в качестве характеристических полиномов рекуррентного соотношения (1) с условиями е, е {-1, 0 +1} = О .

Рассмотрим несколько примеров, в которых изложенные выше неформальные соображения (а*) - (е*) позволяют в конкретных случаях решить типовые проблемы (а) - (е), связанные с невыполнимостью условий теоремы Броуна, и найти представления (6) и

(7) элементов колец Z и Fp .

Табл. 1. Неприводимые над полем Q кубические характеристические полиномы и некоторые их свойства

Неприводимые над О кубические характеристические полиномы >3(х) тах I а ] I 0 <} < п-1 Конечные поля, над которыми полином >3(х) неприводим (Г : Р = ...) Рекуррентное соотношение с характеристическим полиномом >3(х) Генерируемая последовательность (начальные значения Ь(0), Ь(1), Ь(2) выделены)

1 х3 - х2 - х - 1 1,683 3,5,23,31,. Ь(к + 3) = Ь(к+2)+Ь(к + 1)+Ь(к ) 3,1,3;7,11,21,39,71,.

2 х3 + х2 - х + 1 1,839 3,5,23,31,. Ь(к + 3) = -Ь(к+2)+Ь(к + 1) - Ь(к ) 3,-1,3;-7,11,-21,39,.

3 х3 + х2 + х - 1 1,355 3,5,23,31,. Ь(к + 3) = -Ь(к+2) - Ь(к + 1)+Ь(к ) 3,-1,3;1,-5,7,-1,-11,.

4 х3 - х2 + х + 1 1,361 3,5,23,31,. Ь(к + 3) = Ь(к+2) - Ь(к + 1) - Ь(к ) 3,1,0;-4-5-2,7,14,9,-12.

5 х3 - х2 - 1 1,466 2,5,7,19,. Ь(к + 3) = Ь(к+2)+Ь(к ) 3,1,1;4,5,6,10,15,21.

6 х3 - х2 + 1 1,149 2,3,13,29,31, Ь(к + 3) = Ь(к+2) - Ь(к ) 3,1,1;-2,-3,-4,-2,1,5,7.

7 х3 + х2 - 1 1,149 2,3,13,29,31, Ь(к + 3) = -Ь(к+2)+Ь(к ) 3,1,1;2,-3,4,2,1,-5, -7.

8 х3 + х2 + 1 1,466 2, 5,7, 19,. Ь(к + 3) = -Ь(к+2) - Ь(к ) 3,1,1;-4,3,-4,-8,5,-,9.

9 х3 - х - 1 1,324 2,3,13,29,31, Ь(к + 3) = Ь(к + 1)+Ь(к ) 3,0,2;3,2,5,5,7,10,12.

10 х3 - х + 1 1,324 2,3,13,29,31, Ь(к + 3) = Ь(к + 1) - Ь(к ) 3,0,2;-3,2,-5,5,-7,.

11 х3 + х - 1 1,207 2,5,7,19, ... Ь(к + 3) = -Ь(к + 1)+Ь(к ) 3,0,-2;3,2,-5,1,7,.

Пример 2.1. Пусть/3(х) = х3 - х2 + 1. Проблемы (см. табл. 1.): (а) Ь(0) = 3 Ф 1, но 1 = Ь(7).

(Ь) Последовательность Ь(к) монотонно возрастает, начиная с Ь(7) = 1, и условие (9) выполняется при суммировании, начиная с т = 7.

Решение. Представление (6) для элемента г начинается со слагаемого Ь(7) = 1, а 60, ..., 66 = 0. ■

Пример 2.2. Пусть/3(х) = х3 + х2 + 1.

Проблемы (см. табл. 1.):

(Ь) - (с) Рекуррентная последовательность немонотонна и знакопеременна, но выполняется условие (9) для последовательности абсолютных величин, начиная с т = 6.

(а) Ь(0) = 3 ф 1, но 1 = Ь(1).

Решение. Так как Ь(6) = - 4, то результат стандартного жадного алгоритма, выполненного до получения слагаемого (-1)Ь(6) = 4, должен быть дополнен при необходимости учетом равенств

1 = Ь(1) = Ь(2),

2 = Ь(1) + Ь(2) = Ь(0) - Ь(2), ■

3 = Ь(0).

3. О параллельной реализации арифметических операций

Отметим ряд особенностей параллельной реализации арифметических операций.

Пусть (арифметическая) вычислительная процедура I отображает множество X входных данных во множество У:

X = {х} с Z ^ 3{х} ^ У = {у} с ^

Пусть далее р - простое число; относительно множеств X, У известно, что

0 < х, у < М < р У(х, у): х е X, у е У.

Пусть также для данной рекуррентной последовательности (1) с условиями (3) и (4) число с определено таким образом (обычное требование при применении модулярных методов [16, 17]), что все (х, у) : х е X, у е У представимы в Ь-системе счисления не более чем с-членной суммой и:

XIЬ(к)| <М < р.

к =0

г = £ гкЬ (к )±( г)ь

Тогда

(10)

(11)

гк еП = {-1,0, +1}, г еXиУ.

Сумму для г в (10) будем называть представлением элемента г в Ь-кодах и обозначать (г)Ь. Так как при выбранных согласно (3) начальных значениях Ь(к) справедливо равенство (7), то понятным образом вводятся обозначения (г)а, для частичных кодовых представлений. Равенство (7) тогда принимает вид

{г)ь =% ^Ь(к) = % X1 (а, )к = %< г),. (12)

к=0 к=0 ,=0 ,=0

Аналогичный смысл имеют обозначения и редуцированных кодовых представлений (г)у, для элементов поля = Рр>.

Замечание 4. Принципиально важно отметить, что векторы цифр (§0, ..., как (формальные) векторы с тернарными компонентами одинаковые и для (г)Ь, и для частичных кодовых представлений (г)а,, и для редуцированных частичных кодовых представлений <г)у/. ■ 3.1. Реализация операции сложения

Пусть г, V е Z:

г=<4=2< ^ у,; -=а=2< V) у,.

,=0 ' ,=0 '

Тогда, с учётом (7) и (8), получаем

„-1 „-1

г+- =(г)ь =Х(г)у,+ХИ, =

, = 0 ' ,=0

„-1

= Хг + ^у, = (г + ^Ь .

,=0

Следует отметить, что в силу Замечания 4, векторы цифр в кодовом представлении (г + V) у, одинаковые при всех у,-. Поэтому различие у, учитывается только на финальном этапе получения результата -при суммировании

Ь(к) = Х у к.

,=0

Несколько иначе и намного сложнее реализуется операция умножения.

3.2. Реализация операции умножения

Пусть г, V е Z.

„-1 С-1 „-1 С-1

г=Х&ук,-ук.

,=0 к=0 ,=0 к=0

Непосредственно имеем:

( „-1 С-1

Л ( „-1 с-1

XX к у к -|ХХлк ут 1 =

V ,=0 к=0

= Х (Х у к 1-1 Х^к ут I.

1,,=0 V к=0

(13)

Формально внешняя сумма по множеству пар (,',,) содержит „2 слагаемых, пронумерованных, как и пары корней полинома /„(х) в поле = Рр„. Но именно в силу того, что полином /„(х) неприводим над полем Рр, точнее - в силу цикличности мультипликативной группы , число слагаемых в (13), вычисляемых независимо нетривиальным образом, можно существенно сократить. Действительно, при у = уо имеем для слагаемого с, = 0:

к=0

n-1 / d-1

d -1

So = Уk МЕл.У1

i, j=o V k=o J V i=o

n-1 f d-1 Л С d-1

=x (x ^ yk их л. (x(i >(У»

j=0

i= 0 V k=0

(14)

где % - автоморфизм Фробениуса поля % : z ^ zp, %(m) - его .-итерация.

Пусть нумерация корней полинома fn (х) установлена так, что y. = %(m) (yo). Пусть далее ст - перестановка индексов, индуцированная автоморфизмом Фробениуса: ст(.) = pm (mod d). Тогда выражение (14) для So можно записать в виде

f

iНе можете найти то, что вам нужно? Попробуйте сервис подбора литературы.

\

I=о \*=о / \п(™)=0

Таким образом, для вычисления 50 достаточно вычислить п (а не п2!) раз произведение многочленов с аргументами у с коэффициентами из О = {-1, 0, +1}. Вычисление остальных Si сводится к действию автоморфизма Фробениуса и индуцированной перестановки, то есть не требует выполнения нетривиальных арифметических операций.

4. Особенности и рекомендации при исследовании общего случая

При росте степени многочленов (2), то есть при увеличении порядка рекуррентности (1), увеличивается не только количество параллельных ветвей при вычислениях, но и вариативность структуры параллельных систем вычислений. Связано это с тем, что полином степени выше кубической, неразложимый на линейные множители над О, может разлагаться на нелинейные множители-полиномы над О. Для рекур-рентностей (1) с неприводимыми над О полиномами (2) структура параллельных вычислений отличается от рассмотренной выше только количеством ветвей. В табл. 2 приведены данные всех таких многочленов четвёртой степени.

Отметим также, что в рассмотренном в параграфе 3 кубическом случае условие неприводимости полинома (2) не только над полем О, но и над некоторым конечным полем в расширении которого Fí = Fp и производятся вычисления, не является необходимым. Это условие введено исключительно для гарантии цикличности мультипликативной группы F*í и следующей из этого связи между корнями полинома /П(х), индуцируемой действием автоморфизма Фробениуса.

В отдельных случаях даже при нарушении условий неприводимости эта связь может быть хотя и более сложной, но всё же с вычислительной точки зрения не очень обременительной. Тем не менее, многообразие таких «иррегулярных» ситуаций (степени полиномов-сомножителей, их взаимная простота и т.д.) вынуждает ограничиться только рассмотрением ряда наиболее типичных иллюстративных примеров ситу-

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

Пример 4.1. Пусть р = 11, /(х) = х4 - х3 + х2 - х1 - 1. В этом случае полином /4(х) разлагается над Fll в произведение двух взаимно-простых и неприводимых над F11 полиномов второй степени:

/(х) = (х2 + 4х1 + 7)(х2 + 6х1 + 3) = ф1 (х)ф2 (х).

Для фактор-кольца W = Fll [х]//(х)] имеет место изоморфизм:

^ М/ ^ И/ М/ 1 =

/[/(х)1 /[ф1( х)1 /[ф2( х)1

= W1 © W2.

Табл. 2. Неприводимые над полем О характеристические

полиномы рекуррентностей (1) четвёртого порядка

№ Характеристические полиномы f4(x), неприводимые над полем Q Простые числа, p, для которых У4(х) неприводим над Fp

1 х4 - х3 - х2 - х1 - 1 2, 5, 31,.

2 х4 - х3 - х2 - х1 + 1 2, 5, 11,.

3 х4 - х3 - х2 + х1 - 1 2, 3, 7, 11,.

4 х4 - х3 - х2 + х1 + 1 2, 5, 11,.

5 х4 - х3 + х2 - х1 - 1 2, 5, 31 ,.

6 х4 - х3 + х2 - х1 + 1 2, 7, 13, 17,.

7 х4 - х3 + х2 + х1 - 1 2, 3, 7, 11,.

8 х4 - х3 + х2 + х1 + 1 2, 7, 13,.

9 х4 + х3 -х2 - х1 - 1 2, 3, 7, 11,.

1o х4 + х3 - х2 - х1 + 1 2, 5, 11,.

11 х4 + х3 -х2 + х1 - 1 2, 5, 31,.

12 х4 + х3 - х2 + х1 + 1 2, 5, 11,.

13 х4 + х3 + х2 - х1 - 1 2, 3, 7, 11,.

14 х4 + х3 + х2 - х1 + 1 2, 7, 13, 17,.

15 х4 + х3 + х2 + х1 - 1 2, 5, 31,.

16 х4 + х3 + х2 + х1 + 1 2, 3, 7,.

17 х4 - х3 + х2 + 1 3, 5, 7,.

18 х4 + х3 + х2 + 1 3, 5, 7,.

19 х4 + х2 - х1 + 1 3, 5, 7,.

2o х4 + х2 + х1 + 1 3, 5, 7,.

21 х4 - х3 - 1 2, 3, 5,.

22 х4 - х3 + 1 2, 7, 13,.

23 х4 + х3 - 1 2, 3, 5,.

24 х4 + х3 + 1 2, 7, 13,.

25 х4 - х2 - 1 3, 7, 23,.

26 х4 + х2 - 1 3, 7, 23,.

27 х4 - х - 1 2, 3, 5,.

28 х4 - х + 1 2, 3, 5,.

29 х4 + х - 1 2, 3, 5,.

3o х4 + х + 1 2, 3, 5,.

Как обычно, для вариантов китайской теоремы об остатках справедливо представление элементов кольца W парами элементов г ^ (21,22); 2, £ Wk с покомпонентными сложением и умножением, а явная связь 2 ^ (21,22) определяется соотношениями 2 = Ст121ф2(ю)+а222ф1(ю), где

(со) = 1(mod ф1 (ю)), т2ф1 (ю) = 1(mod ф2 (х)),

где

ст1 =(5-ю + 8 )(mod Ф1 (ю)), ст2 = (0 • ю + 1)(п^ф2 (ю)).

Соответствующее рекуррентное соотношение имеет вид

Ь (к + 4) = Ь (к + 3)- Ь (к + 2) + +Ь (к +1) + Ь (к )(п^11)

с начальными значениями

Ь(0) = 4, Ь(1) = 1, Ь(2) = 3, Ь(3) = 7,

вычисляемыми по формулам Ньютона-Жирара, которые связывают суммы степеней корней полинома и элементарные симметрические функции корней полинома. ■

Пример 4.2. Пусть р = 11, /(х) = х4 - х3 + х2 - х1 + 1. В этом случае над Рп полином полностью факто-ризуется:

/(х) = х4 -х3 + х2 -х1 +1 = (х+3)(х+4)(х + 5)(х+9).

Тогда соответствующее рекуррентное соотношение имеет вид

Ь (к + 4) = Ь (к + 3)- Ь (к + 2) + +Ь (к +1)-Ь (к )(п^11).

Так как в случае полной факторизации полинома /(х) имеет место изоморфизм

W = [^ (х) ^ = ^ © © © ,

то типичный элемент г фактор-кольца W имеет вид

г о(Сг,с2,С3,С4), ^е Р„,

и операции над элементами кольца W выполняются покомпонентно. При условиях (3) элементы Ь(к) рекуррентной последовательности, как элементы прямой суммы колец, представимы в данном случае в форме

Ь(к) о((-3)к , (-4)к , (-5)к, (-9)*) о

о(8к, 7к,6к,2к)(mod1l)

с также покомпонентным представлением элементов кольца W. ■

Пример 4.3. Пусть р = 5,/(х) = х4 - х3 + х2 - х1 + 1. В этом случае над Р5 полином также полностью факторизуется:

/(х) = х4 - х3 + х2 - х1 +1 = (х +1)4,

но имеет в Р5 четырёхкратный корень (-1) = 4 (mod5).

Тогда соответствующее рекуррентное соотношение имеет вид

L(k + 4) = L (k + 3)-L {k + 2) + L (k +1)- L (k).

При условиях (3) элементы L(k) рекуррентной последовательности - базиса системы счисления в данном случае в силу кратности корня имеют вид

L (k) = 4k + k 4k + k 24k + k 34k (mod 5),

L(0) = 4, L(1) = 1, L(2) = 0, L(3) = 0(mod5).

Фактор-кольцо W в этом примере изоморфно кольцу классов вычетов по степени простого числа: W = Z (mod625) и арифметические операции производятся согласно обычным правилам модулярных колец. ■

Ясно, что полное исследование рекуррентных систем счисления с факторизуемыми характеристическими полиномами и выработка «универсальных» полезных рекомендаций для синтеза рассматриваемых параллельных систем безошибочных вычислений в общем случае является задачей нереалистичной трудоёмкости, так как неприводимые полиномы являются во множестве всех полиномов такой же экзотикой, как и целые простые числа во множестве всех целых. Ясно также, что пользуясь евклидовостью кольца полиномов над полем и, как следствие, его факториальностью, несложно указать вид разложения в прямую сумму фактор-кольца W = Fp [x]/[f(x)] в зависимости от факторизации полинома f(x) (аналог «Основной теоремы арифметики»), представляющий в контексте обсуждаемых приложений лишь общетеоретический интерес. Действительно, несмотря на ясную структуру фактор-колец W = Fp [x]/[f(x)] при известной факторизации полиномов f(x) в общем случае, нахождение для данного полинома этой факторизации (причём над произвольным конечным полем!) представляется всё же непростой, хотя и интенсивно исследуемой вычислительной задачей [18] с неочевидной перспективой на получение полезной именно для рассматриваемых конкретных приложений арифметической информации.

Заключение

Если коротко характеризовать отличие подхода настоящей работы к синтезу компьютерных систем параллельных вычислений, то оно заключается в следующем:

• в хорошо известном методе вычислений в системе остаточных классов параллелизация достигается за счёт представления элементов алгебр, в которых производятся вычисления, как объектов, распараллеливание вычислений с которыми индуцируется структурной разложимостью этой алгебры;

• в предложенном новом методе параллелизация происходит на уровне представления объектов, которое индуцируется свойствами специфических систем счисления.

Благодарности

Работа выполнена при поддержке Министерства науки и высшего образования РФ в рамках выполнения работ по Государственному заданию ФНИЦ «Кристаллография и фотоника» РАН (соглашение № 007-ГЗ/Ч3363/26) в части исследования систем счисления и Российского фонда фундаментальных исследований (проекты РФФИ №19-07-00357 А № 18-29-03135_ мк) в части исследования машинной арифметики.

Литература

1. Ananda Mohan, P.V. Residue number systems / P.V. Ananda Mohan. - Basel: Birkhauser, 2016. - 351 p. ISBN: 978-3-319-41383-9.

2. Embedded systems design with special arithmetic and number systems / ed. by A.S. Molahosseini, L.S. de Sousa, Ch.-H. Chang. - Cham: Springer, 2017. - 389 p. - ISBN: 978-3319-49741-9.

3. Вариченко, Л.В. Абстрактные алгебраические системы и цифровая обработка сигналов / Л.В. Вариченко, В.Г. Лабунец, М.А. Раков. - Киев: Наукова думка, 1986.

4. Нуссбаумер, Г. Быстрое преобразование Фурье и алгоритмы вычисления сверток / Г. Нуссбаумер; пер. с англ.

- М.:Радио и связь, 1985. - 248 с.

5. Golomb, S.W. Properties of the sequence 3-2n+1 / S.W. Golomb // Mathematics of Computation. - 1976. -Vol. 30, Num. 135. - P. 657-663.

6. Alfredson, L.-I. VLSI Architectures and arithmetic operations with application to the Fermat number transform / L.I. Alfredson. - Linkoping: Linkoping University, 1996.

7. Chernov, V.M. Fast algorithm for "error-free" convolution computation using Mersenne-Lucas codes / V.M. Chernov // Chaos, Solitons and Fractals. - 2006. - Vol. 29. - P. 372-380.

- DOI: 10.1016/j.chaos.2005.08.081.

8. Чернов, В.М. Квазипараллельный алгоритм для безошибочного вычисления свёртки в редуцированных кодах Мерсенна-Люка / В.М. Чернов // Компьютерная оптика. - 2015. - Т. 39, № 2. - C. 241-248. - DOI: 10.18287/0134-2452-2015-39-2-241-248.

9. Чернов, В.М. Системы счисления в модулярных кольцах и их приложения к «безошибочным» вычислениям / В.М. Чернов // Компьютерная оптика. - 2019. - Т. 43, № 5. - С. 901-911. - DOI: 10.18287/2412-6179-2019-43-5901-911.

10. Чернов, В.М. Арифметические методы синтеза быстрых алгоритмов дискретных ортогональных преобразований / В.М. Чернов. - М.: Физматлит, 2007. - 264 с. -ISBN: 978-5-9221-0940-6.

11. Чернов, В.М. Фибоначчи, трибоначчи,..., гексаначчи и параллельная безошибочная машинная арифметика / В.М. Чернов // Компьютерная оптика. - 2019. - Т. 43, № 6. - С. 1072-1078. - DOI: 10.18287/2412-6179-201943-6-1072-1078.

12. Гельфонд, А.О. Исчисление конечных разностей / А.О. Гельфонд. - 4-е изд. - М.: URSS, 2006.

13. Wimp, J. Computations with recurrence relations / J. Wimp. - Boston, MA: Pitman, 1984.

iНе можете найти то, что вам нужно? Попробуйте сервис подбора литературы.

14. Шпарлинский, И.Е. О некоторых вопросах теории конечных полей / И.Е. Шпарлинский // Успехи математических наук. - 1991. - Т. 46, Вып. 1(277). - С. 165-200.

15. Brown, J.L. Note on complete sequences of integers / J.L. Brown // The American Mathematical Monthly. - 1961. - Vol. 68, Issue 6. - P. 557-560. - DOI: 10.2307/2311150.

16. Грегори, Р. Безошибочные вычисления. Методы и приложения / Р. Грегори, Е. Кришнамурти; пер. с англ. -М.: Мир, 1988. - 207 с.

17. Дэвенпорт, Дж. Компьютерная алгебра / Дж. Дэвенпорт, И. Сирэ, Э. Турнье. - М.: Мир, 1991. - 352 с.

18. Von Zur Gathen, J. Factoring polynomials over finite fields: A survey / J. Von Zur Gathen, D. Panario // Journal of Symbolic Computation. - 2001. - Vol. 31, Issues 1-2. - P. 3-17.

Сведения об авторе

Чернов Владимир Михайлович. Доктор физико-математических наук. Главный научный сотрудник лаборатории математических методов обработки изображений Института систем обработки изображений РАН (филиал ФНИЦ «Кристаллография и фотоника» РАН); профессор кафедры геоинформатики и информационной безопасности Самарского национального исследовательского университета имени академика С.П. Королева. Область научных интересов: алгебраические методы в цифровой обработке сигналов, криптография, машинная арифметика. E-mail: vche@smr.ru .

ГРНТИ:27.41.41.

Поступило в редакцию 10 ноября 2019 г. Окончательный вариант - 15 января 2020 г.

Parallel machine arithmetic for recurrent number systems in non-quadratic fields

V.M.Chernov1,2

'IPSIRAS - Branch of the FSRC "Crystallography and Photonics" RAS, Molodogvardeyskaya 151, 443001, Samara, Russia, 2Samara National Research University, Moskovskoye Shosse 34, 443086, Samara, Russia

Abstract

The paper proposes a new method of synthesis of computer arithmetic systems for "error-free" parallel calculations. The difference between the proposed approach and calculations in traditional systems of Residue Number Systems for the direct sum of modular rings is the parallelization of calculations in non-quadratic extensions of simple finite fields whose elements are represented in number systems generated by sequences of powers of roots of the characteristic polynomial of the recurrent sequence.

Keywords: finite fields, recurrent number system, parallel machine arithmetic.

Citation: Chernov VM. Parallel machine arithmetic for recurrent number systems in non-quadratic fields. Computer Optics 2020; 44(2): 274-281. DOI: 10.18287/2412-6179-CO-666.

Acknowledgements: The work was partly funded by the Russian Federation Ministry of Science and Higher Education within a state contract with the "Crystallography and Photonics" Research Center of the RAS under agreement 007-0/^3363/26 ("Number systems") and by the Russian Foundation for Basic Research under grants 19-07-00357 A and 18-29-03135_ mk ("Machine arithmetic").

References

[1] Ananda Mohan PV. Residue number systems. Basel: Birkhauser; 2016. ISBN: 978-3-319-41383-9.

[2] Molahosseini AS, de Sousa LS, Chang Ch-H, eds. Embedded systems design with special arithmetic and number systems. Cham: Springer; 2017. ISBN: 978-3-319-49741-9.

[3] Varichenko LV, Labunets VG, Rakov MA. Abstract algebraic systems and digital signal processing [In Russian]. Kyiv: "Naukova Dumka" Publisher; 1986.

[4] Nussbaumer HJ. Fast Fourier transform and convolution algorithms. Berlin, Heidelberg: Springer Verlag; 1982.

[5] Golomb SW. Properties of the sequence 3-2"+1. Math Comput 1976; 30(135): 657-663.

[6] Alfredson L-I. VLSI Architectures and arithmetic operations with application to the Fermat number transform. Linkoping: Linkoping University Publisher; 1996.

[7] Chernov V. Fast algorithm for "error-free" convolution computation using Mersenne-Lucas codes. Chaos, Solitons and Fractals 2006; 29: 372-380. DOI: 10.1016/j.chaos.2005.08.081.

[8] Chernov VM. Quasiparallel algorithm for error-free convolution computation using reduced Mersenne-Lucas codes. Computer Optics 2015; 39(2): 241-248. DOI: 10.18287/0134-2452-2015-39-2-241-248.

[9] Chernov VM. Number systems in modular rings and their applications to "error-free" computations. Computer Optics

2019; 43(5): 901-911. DOI: 10.18287/2412-6179-2019-435-901-911.

[10] Chernov VM. Arithmetic methods for fast algorithms of discrete orthogonal transforms synthesis [in Russian]. Moscow: "Fizmatlit" Publisher, 2007. ISBN: 978-5-92210940-6.

[11] Chernov VM. Fibonacci, tribonacci, ..., hexanacci and parallel "error-free" machine arithmetic. Computer Optics 2019; 43(6): 1072-1078. DOI: 10.18287/2412-6179-201943-6-1072-1078.

[12] Gel'fond AO. Calculus of finite differences [In Russian]. 4th ed. Moscow: "URSS" Publisher, 2006.

[13] Wimp J. Computations with recurrence relations. Boston, MA: Pitman; 1984.

[14] Shparlinski E. On some problems in the theory of finite fields. Russian Math Surveys 1991; 46(1:277): 199-240.

[15] Brown JL. Note on complete sequences of integers. The American Mathematical Monthly 1961; 68(6): 557-560. DOI: 10.2307/2311150.

[16] Gregory RT, Krishnamurty EV. Method and applications of error-free computation. New York: Springer-Verlag; 1984.

[17] Davenport JH, Siret Y, Tournier E. Computer algebra: Systems and algorithms for algebraic computation. London: Academic Press; 1988.

[18] Von Zur Gathen J, Panario D. Factoring polynomials over finite fields: A survey. J Symb Comput 2001; 31(1-2): 3-17.

Author's information

Vladimir Mikhailovich Chernov. Doctor of Physical and Mathematical Sciences. Chief researcher of the Image Processing Systems Institute of the RAS (Branch of the FSRC "Crystallography and Photonics" RAS) and a professor of Geo-Information Science and Information Protection department at Samara National Research University (SSAU). Research interests are algebraic methods in digital signal processing, cryptography, computer arithmetic.

Received November 10, 2019. The final version - January 15, 2020.

i Надоели баннеры? Вы всегда можете отключить рекламу.