Научная статья на тему 'Параллельный алгоритм вычисления функций роста в конечных двупорождённых группах периода 5'

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

CC BY
134
23
i Надоели баннеры? Вы всегда можете отключить рекламу.
Ключевые слова
ФУНКЦИЯ РОСТА ГРУППЫ / ДИАМЕТР КЭЛИ / ПАРАЛЛЕЛЬНЫЙ АЛГОРИТМ / THE GROWTH FUNCTION OF THE GROUP / THE CAYLEY DIAMETER / A PARALLEL ALGORITHM

Аннотация научной статьи по математике, автор научной работы — Кузнецова Александра Сергеевна, Кузнецов Александр Алексеевич, Сафонов Константин Владимирович

Представлена параллельная версия алгоритма для вычисления функций роста в конечных двупорождённых группах периода 5.

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

A parallel algorithm for computation of growth functions in the finite two-generator groups of period 51Reshetnev Siberian State Aerospace University (Krasnoyarsk)

A parallel version of the algorithm for computation of growth functions in the finite two-generator groups of period 5 is presented.

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

нии l результатом является 1, а при слишком большом — N). При этом l выбирается методом, похожим на половинное деление. При каждом значении l вычисляется D(l) = (ak — 1, N), k = papa.. .pa. Параметр l выбирается следующим образом:

Ш а г 1. lmin •— 1, lmax •— 1.

Ш а г 2. lmax • lmax ' 2; l lmax.

Шаг 3. Вычислить D = D(l);

— если D = 1, то перейти к шагу 2;

— если D = N, то перейти к шагу 4;

— если 1 < D < N — выход, делитель найден.

Ш а г 4. lmin • lmax/2; lmidl • lmin + (lmax lmin)/2; l • lmidl.

Шаг 5. Вычислить D = D(l);

если D 1, то lmin • lmidl; lmidl • lmin + (lmax lmin)/2; l • lmidl; перейти к шагу 5; если D N, то lmax • lmidl; lmidl • lmin + (lmax lmin)/2; l • lmidl; перейти к шагу 5;

— если 1 < D < N — выход, делитель найден.

Проведены эксперименты на заранее сформированных массивах чисел, представляющих собой произведение двух простых, с разрядностью 20, 40 и 60 десятичных знаков. Из 10000 чисел разрядностью 20 десятичных знаков были разложены 4250, среднее время на обработку одного числа составило 1,42 с. Разрядность максимального числа, которое было разложено на множители, составляет 60 десятичных знаков:

1052808008400417645876606027989867285487720871343057551778083 =

= 123547896523698521452369860571 ■ 8521456358412963587456325968473,

время разложения — 29 мин 23 с.

ЛИТЕРАТУРА

1. Маховенко Е. Б. Теоретико-числовые алгоритмы в криптографии. М.: Гелиос АРВ, 2006.

2. Климина А. С. Оптимизация выбора параметров для алгоритма Полларда //IV ОМНТК «Молодежь. Техника. Космос». СПб.: БГТУ, 2012. С. 285-286.

УДК 519.688

ПАРАЛЛЕЛЬНЫЙ АЛГОРИТМ ВЫЧИСЛЕНИЯ ФУНКЦИЙ РОСТА В КОНЕЧНЫХ ДВУПОРОЖДЁННЫХ ГРУППАХ ПЕРИОДА 5

А. С. Кузнецова, А. А. Кузнецов, К. В. Сафонов

Представлена параллельная версия алгоритма для вычисления функций роста в конечных двупорождённых группах периода 5.

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

Пусть р — простое число, О — конечная группа экспоненты р. Это значит, что др = е для всех д Е О. Так как О нильпотентна, то можно найти цепочку подгрупп О = О1 3 3 О2 3 ... 3 Оп 3 Оп+1 = е, в которой Оi нормальны в О, а факторы Оi/О^+1 имеют порядок р и лежат в центре О/О^.

Пусть для 1 ^ г ^ п элемент а Е Оi, но а Е О^, тогда каждый элемент группы д Е О можно однозначным образом записать в виде

g = a]1 aY2 ... аП, 0 ^ y < P.

(1)

Такое представление элементов группы (рс-представление) можно получить при помощи алгоритма, известного как p-quotient algorithm [1]. Он реализован в системах компьютерной алгебры GAP и Magma. Если A — порождающее множество группы G, то любой её элемент, записанный в виде слова ... as, где а Е A, можно преобразовать к виду (1)

а1а2 ... as —-^ а]1 а222 ... аП". (2)

Процедура (2) даёт возможность решить проблему равенства слов в G. Для вычисления функции роста и диаметра Кэли группы G относительно A необходимо перечислить все элементы группы в формате минимальных слов [2]. Вычислив количество слов на каждой длине, можно получить функцию роста группы, а максимально возможная длина минимальных слов является диаметром Кэли группы.

Обозначим через Ks(G) множество всех минимальных слов группы G, не превосходящих по длине s; множество Qs(G) —элементы Ks(G), записанные в виде правой части (2).

Пусть so Е N — минимальное число, для которого выполняется Ks0(G) = Ks0+1(G). В этом случае s0 — диаметр Кэли группы G.

Опишем последовательный алгоритм, вычисляющий функцию роста группы G относительно A = {а1, а2,... , am}:

1) s = 0, Ko = {e}, Qo = {а1а2 ... а^}, T = Ko.

2) s = s + 1, Ks = Ks-1, Qs = Qs-1, V = а1Т U а2Т... U атТ, T = 0, i =1.

3) Для Vi Е V Vi —-^ Vi. Если Vi Е Qs, то Ks = KsU{Vi}, Qs = QsU{v}, T = TU{Vi}.

4) Если i < |V|, то i = i + 1, переход в п. 3, иначе — в п. 5.

5) Если T = 0, то переход в п. 2; иначе — в п. 6.

6) Диаметр G равен s — 1, Ks-1 (G) —множество всех минимальных слов группы.

Функция роста задаётся формулой f (j) = |Kj(G)| — |Kj-1(G)|, 1 ^ j ^ s — 1.

Завершение работы алгоритма.

Для увеличения скорости вычислений алгоритм можно распараллелить следую-тттим образом. Множество Qs разбивается на pr непересекающихся классов элементов, где каждый класс однозначно определяется фиксированным набором значений Y1,72,... , . Параметр r определяется экспериментально и зависит от характеристик

мультипроцессорной вычислительной системы.

Пусть Bo(2,5,k) —максимальная конечная двупорождённая бернсайдова группа периода 5 ступени нильпотентности k. В данном классе групп наибольшей является группа Bo(2, 5,12), порядок которой равен 534. Для каждой из Bo(2, 5, k) известны рс-представления, которые несложно получить, используя систему компьютерной алгебры GAP. Положим A = {а1,а2} — порождающие элементы Bo(2,5,k). Для k ^ 6 к настоящему времени вычислены функции роста и диаметры Кэли групп Bo(2, 5, k) относительно A. Отметим, что для нахождения функций роста при k ^ 2 использовались компьютерные вычисления. В таблице приведены значения порядков групп Bo(2, 5, k), а также их диаметры D^(A) относительно A.

k |Bo(2, Б, k)| Dk (A) k |Bo(2, Б, k)| Dk (A)

1 Б2 В 4 Б8 30

2 Б3 10 5 Б10 32

3 Б5 20 б Б14 45

Следующий нерешённый случай — к = 7. Поскольку Во(2, 5, 7) имеет достаточно большой порядок (он равен 518), для нахождения диаметра данной группы необходимо применять суперкомпьютерные вычисления. В настоящее время идет работа по

программной реализации параллельной версии алгоритма на языке С+—Н с использованием интерфейса передачи данных MPI. Вычисления будут проводиться на суперкомпьютере Сибирского федерального университета.

ЛИТЕРАТУРА

1. HaltD., EickB., and O’Brien E. Handbook of computational group theory. Boca Raton:

Chapman & Hall/CRC Press, 2005.

2. Кузнецов А. А., Шлёпкин А. К. Сравнительный анализ бернсайдовых групп B(2, 5) и

Bo(2, 5) // Тр. Ин-та математики и механики УрО РАН. 2009. №2. С. 125-132.

УДК 519.7

КОНВЕЙЕРИЗАЦИЯ КОМБИНАЦИОННЫХ СХЕМ

Ю. В. Поттосин, С. Н. Кардаш

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

Ключевые слова: комбинационная схема, конвейеризация, ориентированный граф.

Повышению производительности систем обработки информации всегда уделялось большое внимание. Одним из способов повышения производительности является применение структуры конвейерного типа, который имеет ещё название «трубопровод» (перевод с англ. слова «pipeline») [1]. Подобную структуру образуют несколько независимых процессоров, соединённых между собой последовательно.

При построении систем цифровой обработки сигналов в режиме реального времени широкое распространение получил систолический принцип организации вычислений [2]. Информация в систолическом процессоре распространяется по конвейеру подобно тому, как пульсирует кровь при сокращении систолы сердца. В данной работе излагается попытка найти способ повышения быстродействия путем конвейеризации многоуровневой комбинационной схемы, построенной на основе СБИС.

В многоуровневой схеме устройства задержка складывается из задержек элементов самой длинной цепочки. Пусть на вход комбинационной схемы поступает последовательность p наборов двоичных сигналов. Если T — время задержки схемы, то период смены сигналов не может быть меньше T. Время реакции устройства на данную последовательность в этом случае не меньше pT. Разобьём схему на k каскадов (C1, С2,..., Ck), и если тс — время задержки самого медленно действующего каскада, то T ^ kTc. На выходы каждого каскада поставим элементы задержки (триггеры D), пропускающие сигналы с выходов каскада по сигналу синхронизации. Этот же сигнал синхронизации определяет период смены сигналов на входе устройства, который должен быть не меньше суммы двух задержек: задержки тс и задержки тд элемента D (Tdock ^ тс+тд). Теперь время реакции устройства на упомянутую последовательность равно (k + p^dock.

Нижняя граница длины p последовательности наборов двоичных сигналов на входе устройства, при которой имеет место ускорение обработки сигналов, определяется

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