Построим группу Бп в формате минимальных слов по алгоритму из [1]. В итоге максимальная длина минимальных слов группы Бп является решением задачи.
Ниже в таблице приведены решения для п = 2, 3,..., 12, полученные при помощи компьютерных вычислений.
n 2 з 4 Б б т s 9 10 11 12
d 1 2 4 б 9 12 1б 20 2Б 30 Зб
Аналогичные задачи встречаются на практике, например при проектировании компьютерных вычислительных сетей [2]. Сеть процессоров может быть представлена как неориентированный граф, в котором процессоры являются вершинами, а две вершины графа соединены ребром, если имеется прямое соединение между соответствующими процессорами. С одной стороны, желательно, чтобы между процессорами было как можно меньше соединений, а с другой — обмен данными между процессорами предпочтительно производить с наименьшим числом посредников. Очевидно, эти два критерия противоречат друг другу. На теоретико-групповом языке диаметр графа вычислительной сети равен максимальной длине минимальных слов соответствующей графу группы.
ЛИТЕРАТУРА
1. Кузнецов А. А., Антамошкин А. Н., Шлёпкин А. К. Моделирование периодических групп // Системы управления и информационные технологии. 2008. №2. С. 4-8.
2. Halt D., Eick B., and O’Brien E. Handbook of computational group theory. Boca Raton: Chapman & Hall/CRC Press, 2005.
УДК 519.6
СТРУКТУРНЫЕ СВОЙСТВА ПРИМИТИВНЫХ НАБОРОВ
НАТУРАЛЬНЫХ ЧИСЕЛ
С. Н. Кяжин, В. М. Фомичев
При исследовании перемешивающих свойств композиции преобразований конечного множества возникает задача распознавания примитивности квадратной неотрицательной матрицы M и определения её экспонента [1, 2], то есть наименьшего натурального числа y, при котором M7 > 0.
При изучении указанных свойств матрица M = (mij ) обладает ровно теми же свойствами, что и её носитель, то есть матрица v(M) = (vm¡j), где
1, если m-ij > 0,
0, если mij = 0.
Вместо матрицы M можно равносильным образом исследовать примитивность и экспонент орграфа Г, матрица смежности вершин которого совпадает с v(M). Заметим, что множество 0,1-матриц порядка n образует полугруппу Gn относительно операции *, где A * B = v(AB).
Критерий примитивности орграфа определяется длинами его простых контуров [1]. Если C i, ..., Ck — все простые контуры орграфа Г длин 11, ..., Ik соответственно, то орграф Г примитивный, если и только если наибольший общий делитель gcd(/1,... , Ik) = 1. Таким образом, один из способов распознавания примитивности
орграфа Г состоит в определении длин /1, ..., /к всех его простых циклов и в проверке примитивности набора чисел (/1,..., /^), где набор натуральных чисел примитивен, если и только если эти числа взаимно просты.
Распознавание примитивности набора чисел (/1,... ,/к) можно выполнить, применив к — 1 раз алгоритм Евклида к элементам набора. Альтернативный подход состоит в использовании заранее составленной таблицы примитивных наборов при ограничении на числа /1, ..., /к.
Работа посвящена исследованию свойств примитивных наборов чисел и задаче построения таблицы примитивных наборов при ограничении на числа /1, ..., /к.
Утверждение 1. Если А — примитивный набор чисел, то примитивен любой набор, полученный из А добавлением любого натурального числа или (при |А| > 1) удалением числа а, кратного одному из остальных чисел набора.
Определение 1. Примитивный набор А размера к ^ 1 называется тупиковым, если А = (1) или при к > 1 удаление из набора любого элемента нарушает его примитивность.
Определение 2. Примитивный набор А размера к > 1 называется г-примитив-ным, где 0 ^ г ^ к — 1, если после удаления из А любого подмножества порядка г примитивность получившегося набора сохраняется.
Рассмотрим набор натуральных чисел А = (а1,..., ), где каждое из чисел набора
не превышает т. Пусть 2а — булеан множества {а1,... ,а^}, Р(А, г) —множество всех примитивных наборов порядка г из 2а, Р(А) = и Р(А, г). На множестве Р(А) опре-
т^.к
делим отношение частичного порядка: (Ь1,... , Ьі) ^ (а1,... , аг), если и только если / ^ г и найдется бесповторная упорядоченная выборка (і1,... , іі) из (1,... , г), такая, что І1 < ... < і и Ь^- делит а^. для всех і = 1,... , /.
Определение 3. Тупиковый набор В Є Р(А) называется минимальным в Р(А), если не существует другого набора В' Є Р(А), такого, что В' ^ В, и г-минимальным в Р(А), если не существует другого набора В' Є Р(А) длины г, такого, что В' ^ В.
Утверждение 2. Если А — примитивный набор, то (Р(А), ^) —верхняя полуре-шётка, в которой максимальный элемент есть А и любой минимальный элемент есть тупиковый минимальный набор.
Для набора А рассмотрим наибольший общий делитель как функцию, определённую на 2а. При В = {аг1, ...,агі }Є 2а обозначим gcd(B ) = gcd(ai1,... , агі), если В = 0, и gcd(0) = 1ст(а1,... , ак), где gcd(ail,..., агі) и 1ст(аі1,... , агі) —наибольший общий делитель и наименьшее общее кратное чисел аг1, ..., агі соответственно; Д(А) = {gcd(B) : В Є 2а}. Множество Д(А) частично упорядочено по отношению делимости: gcd(B) ^ gcd(B') для В, В' Є 2а, если и только если gcd(B) делит gcd(B').
Утверждение 3. Если А — примитивный тупиковый набор, то Д(А) —решётка, антиизоморфная решётке 2а.
Обозначим через Аг коатомы решётки 2а и через ^ — атомы решётки Д(А): Аг = = {а1,..., ак} \ {а*}, ^ = gcd(A¿), і = 1,..., к.
Теорема 1. Набор А — примитивный тупиковый, если и только если (^1,... , ^к) — набор попарно взаимно простых чисел, отличных от 1. При этом аг = (сі^1 •... • ^к)/^г, где (с1,...,ск) есть 1-примитивный набор натуральных чисел и gcd(ci,^i) = 1 для
і = 1,... , к.
Следствие 1. Примитивный тупиковый набор А является к-минимальным, если и только если (^1,... , Як) —набор простых чисел и сг = 1 для і = 1,... , к.
По утверждению 1 любой примитивный набор А можно получить из соответствующего тупикового набора А' добавлением любого числа. По следствию 1 любой тупиковый набор А' можно получить из соответствующего к-минимального набора А'' умножением элемента набора аг на число, взаимно простое с Яг, і Є {1,... , к}.
Алгоритм перечисления множества всех к-минимальных примитивных наборов, состоящих из чисел, не превышающих т, состоит в следующем. В соответствии с теоремой 1 и следствием 1 к-минимальный тупиковый примитивный набор А = (а1, . . . , ак) состоит из чисел аг = (я1 • ... • Як)/Яг, где (яь..., Як) —набор различных простых чисел. Тогда если я1 < ... < Як, то достаточно перечислить все наборы (яь... , Як) со свойством Я2 • ... • Як « т.
В качестве Як перебираем все простые числа в пределах, указанных неравенством
т \ к-в+1 р. « я. «I зф;-!
где Фг = р3 • ... • рг; рп — п-е простое число. При 3 « в < к и каждом фиксированном
наборе чисел (я.+1,... , Як) в качестве я. перебираем все простые числа в пределах,
указанных в (1). При каждом фиксированном наборе чисел (я3,...,Як) перебираем
1
все простые числа я и я2, где 2 « я < Я < тк-1.
Оценена вычислительная сложность алгоритма, измеренная числом построенных наборов различных простых чисел (я,..., Як). Количество таковых не превышает
( ( к— 1 \"Л
О І т1п к 1п2 т • Л I . При к > 2 для оценки величин Фк можно использовать
V V -2 ) )
к! к
оценку [3]: рк > к 1п к. Тогда Фк > — П 1п і'.
2 і=з
Значения Фк для к = 3,..., 8 приведены в таблице.
і
k 3 4 5 6 7 8
5 35 385 5005 85085 1616615
Данная таблица показывает, что при ограничении a1,... , ak ^ m число k-минимальных примитивных наборов быстро убывает с ростом k.
Рассмотренные свойства и алгоритм составления таблицы примитивных наборов могут быть использованы для изучения перемешивающих свойств преобразований, в частности для вычисления экспонентов перемешивающих матриц и соответствующих графов. Алгоритмические вопросы построения простых циклов в графе и вычисления экспонента орграфа рассмотрены более детально в [4].
ЛИТЕРАТУРА
1. Сачков В. Н., Тараканов В. Е. Комбинаторика неотрицательных матриц. М.: ТВП, 2000.
2. Фомичёв В. М. Методы дискретной математики в криптологии. М.: ДИАЛОГ-МИФИ, 2010.
3. Rosser B. The n-th prime is greater than n log n // Proc. London Math. Soc. 1939. V. 45. P.21-44.
4. Кяжин С. Н., Фомичев В. М. О примитивных наборах натуральных чисел // Прикладная дискретная математика. 2012. №2. С. 5-14.