Решил пока отложить скелет в дальний ящик и отклониться в сторону комбинаторики. А именно: решать задачу в лоб. Ясное дело, никаких новых интересных для себя групп я не найду, так как они начинаются с размера 12, 18 и более (что компьютеру не под силу перебрать), но посмотреть что получится всегда интересно.
Идея заключается в следующем. Первые строка и столбец таблицы умножения группы заполняются по умолчанию последовательно числами от 1 до
n, где
n — порядок группы. Дальше встаёт вопрос, как заполнить вторую строчку и что из этого можно получить. Я выше уже писал, что таблица умножения группы сильно избыточна, в частности, в случае циклической группы (ранг 1) достаточно всего одной строки, чтобы восстановить всю таблицу умножения. В общем же случае, из любой
k-ой строки таблицы
можно извлечь информацию, чтобы заполнить по крайней мере ещё одну строчку. Всё потому, что в этой строке всегда есть элемент
и элемент
. Проще работать с последним равенством. С помощью него можно найти строку, соответствующую умножению на
слева. Она будет равна
Аналогично можно продолжить и получить строки для степеней элемента
k, пока не получится самая первая строка таблицы, что будет означать, что очередная степень элемента
k равна его порядку. Пример такого рода вычислений:
0 1 2 3 4 5 6 7
1 5 4 6 3 7 2 0
2 - - - - - - -
3 - - - - - - -
4 - - - - - - -
5 7 3 2 6 0 4 1
6 - - - - - - -
7 0 6 4 2 1 3 5
1x0=1
1x1=5
1x2=4
1x3=6
1x4=3
1x5=7
1x6=2
1x7=0
5x0=1x1x0=1x1=5
5x1=1x1x1=1x5=7
5x2=1x1x2=1x4=3
5x3=1x1x3=1x6=2
5x4=1x1x4=1x3=6
5x5=1x1x5=1x7=0
5x6=1x1x6=1x2=4
5x7=1x1x7=1x0=1
7x0=1x5x0=1x5=7
7x1=1x5x1=1x7=0
7x2=1x5x2=1x3=6
7x3=1x5x3=1x2=4
7x4=1x5x4=1x6=2
7x5=1x5x5=1x0=1
7x6=1x5x6=1x4=3
7x7=1x5x7=1x1=5
1x7x0=1x7=0
1x7x1=1x0=1
1x7x2=1x6=2
1x7x3=1x4=3
1x7x4=1x2=4
1x7x5=1x1=5
1x7x6=1x3=6
1x7x7=1x5=7
Поскольку строки таблицы (кроме первой) одна не хуже другой, то я решил заполнять вторую строчку. Сначала мне показалось, что будет
вариантов заполнения, потому что второй элемент во второй строчке будет стоять на первом месте. Но потом я сообразил, что, поскольку первая строка уже заполнена, то не все перестановки элементов, начинающиеся со 2-го, будут удовлетворять групповым аксиомам. Из них надо отсеять те перестановки, в которых номер элемента совпадает с его позицией. Вычислительный эксперимент даёт такие результаты:
===============
# 1 2
---------------
1: 2 1
===============
==================
# 1 2 3
------------------
1: 2 3 1
==================
=====================
# 1 2 3 4
---------------------
1: 2 1 4 3
2: 2 3 4 1
3: 2 4 1 3
=====================
========================
# 1 2 3 4 5
------------------------
1: 2 1 4 5 3
2: 2 1 5 3 4
3: 2 3 1 5 4
4: 2 3 4 5 1
5: 2 3 5 1 4
6: 2 4 1 5 3
7: 2 4 5 1 3
8: 2 4 5 3 1
9: 2 5 1 3 4
10: 2 5 4 1 3
11: 2 5 4 3 1
========================
===========================
# 1 2 3 4 5 6
---------------------------
1: 2 1 4 3 6 5
2: 2 1 4 5 6 3
3: 2 1 4 6 3 5
4: 2 1 5 3 6 4
5: 2 1 5 6 3 4
6: 2 1 5 6 4 3
7: 2 1 6 3 4 5
8: 2 1 6 5 3 4
9: 2 1 6 5 4 3
10: 2 3 1 5 6 4
11: 2 3 1 6 4 5
12: 2 3 4 1 6 5
13: 2 3 4 5 6 1
14: 2 3 4 6 1 5
15: 2 3 5 1 6 4
16: 2 3 5 6 1 4
17: 2 3 5 6 4 1
18: 2 3 6 1 4 5
19: 2 3 6 5 1 4
20: 2 3 6 5 4 1
21: 2 4 1 3 6 5
22: 2 4 1 5 6 3
23: 2 4 1 6 3 5
24: 2 4 5 1 6 3
25: 2 4 5 3 6 1
26: 2 4 5 6 1 3
27: 2 4 5 6 3 1
28: 2 4 6 1 3 5
29: 2 4 6 3 1 5
30: 2 4 6 5 1 3
31: 2 4 6 5 3 1
32: 2 5 1 3 6 4
33: 2 5 1 6 3 4
34: 2 5 1 6 4 3
35: 2 5 4 1 6 3
36: 2 5 4 3 6 1
37: 2 5 4 6 1 3
38: 2 5 4 6 3 1
39: 2 5 6 1 3 4
40: 2 5 6 1 4 3
41: 2 5 6 3 1 4
42: 2 5 6 3 4 1
43: 2 6 1 3 4 5
44: 2 6 1 5 3 4
45: 2 6 1 5 4 3
46: 2 6 4 1 3 5
47: 2 6 4 3 1 5
48: 2 6 4 5 1 3
49: 2 6 4 5 3 1
50: 2 6 5 1 3 4
51: 2 6 5 1 4 3
52: 2 6 5 3 1 4
53: 2 6 5 3 4 1
===========================
Если внимательно присмотреться, то можно заметить, что функция
числа допустимых перестановок для второй строчки, табличка которой:
n (n-1)! b(n)
1 1 0
2 1 1
3 2 1
4 6 3
5 24 11
6 120 53
7 720 309
8 5040 2119
9 40320 16687
10 362880 148329
11 3628800 1468457
удовлетворяет формуле
Теперь интересно посмотреть, в каких случаях и сколько перестановок будет давать какое число заполненных строчек таблицы. Очевидно, это будет связанно с рангом второго элемента, который должен быть делителем ранга группы
n.