Умножение перестановок, обратная перестановка, группа перестановок — различия между версиями
Denis (обсуждение | вклад) |
Denis (обсуждение | вклад) м |
||
| Строка 23: | Строка 23: | ||
}} | }} | ||
| + | |||
| + | {{Определение | ||
| + | |definition= | ||
| + | '''Циклом''' (англ. cycle) перестановки называется такое упорядоченное подмножество перестановки размера <tex>k</tex>, что каждый его элемент в результате действия перестановки циклически передвигается по подмножеству. | ||
| + | |||
| + | }} | ||
| + | Каждую перестановку можно разбить на множество непересекающихся циклов. Например, <tex> {2, 4, 6, 1, 5, 3} = (1, 2, 4)(3, 6)(5) = (1, 2, 4)(3, 6)</tex>, циклы размера <tex>1</tex> можно опустить. Композицию перестановок можно также представить в виде произведения циклов. | ||
===Пример=== | ===Пример=== | ||
| Строка 35: | Строка 42: | ||
<tex> ab = (1, 2, 5)(3, 6, 4)(1, 4, 6, 5) = (1, 3, 6, 5)(2)(4) = (1, 3, 6, 5) </tex> | <tex> ab = (1, 2, 5)(3, 6, 4)(1, 4, 6, 5) = (1, 3, 6, 5)(2)(4) = (1, 3, 6, 5) </tex> | ||
| + | |||
| + | Просматривая произведение справа налево, рассмотрим, что произойдёт в каждом цикле. Для примера, начнём с <tex>1 </tex>. Открываем результирующий цикл, начинающийся в <tex> 1 </tex> позиции: <tex> "(1," </tex> Первый цикл, <tex> (1, 4, 6, 5) </tex> переставляет <tex> 1 </tex> с <tex> 4 </tex>, второй цикл, <tex> (3, 6, 4) </tex>, переставляет <tex> 4 </tex> с <tex> 3 </tex>, а третий цикл никак не влияет на <tex> 3 </tex>. В итоге <tex> 1 </tex> позиция переставляется с <tex> 3 </tex>: <tex> "(1, 3" </tex>. Далее рассмотрим <tex> 3 </tex>: первый цикл никак на неё не влияет, второй переставляет с <tex> 6 </tex>, третий не переставляет <tex> 6 </tex>, то есть в итоге <tex> 3 </tex> переходит в <tex> 6 </tex>: <tex> "(1, 3, 6" </tex>. Дальше вкратце: 6 <tex>\rightarrow 5 \rightarrow 1 </tex>, цикл завершился <tex> "(1, 3, 6, 5)" </tex>. Рассматриваем следующую неиспользованную позицию: <tex> 2 \rightarrow 2, "(1, 3, 6, 5)(2)", 4 \rightarrow 4 </tex>. В итоге получаем <tex> "(1, 3, 6, 5)(2)(4)" </tex> | ||
==Обратная перестановка== | ==Обратная перестановка== | ||
Версия 01:59, 4 января 2018
Содержание
Умножение перестановок
| Определение: |
| Умножением (англ. multiplication) или композицией (англ. composition) перестановок,представленных в виде целочисленных функций , где позиция элемента, а — его номер, называется перестановка, получаемая по следующему правилу: |
| Утверждение: |
Умножение перестановок ассоциативно:
|
|
Доказывается простым раскрытием скобок. |
| Определение: |
| Циклом (англ. cycle) перестановки называется такое упорядоченное подмножество перестановки размера , что каждый его элемент в результате действия перестановки циклически передвигается по подмножеству. |
Каждую перестановку можно разбить на множество непересекающихся циклов. Например, , циклы размера можно опустить. Композицию перестановок можно также представить в виде произведения циклов.
Пример
или
Просматривая произведение справа налево, рассмотрим, что произойдёт в каждом цикле. Для примера, начнём с . Открываем результирующий цикл, начинающийся в позиции: Первый цикл, переставляет с , второй цикл, , переставляет с , а третий цикл никак не влияет на . В итоге позиция переставляется с : . Далее рассмотрим : первый цикл никак на неё не влияет, второй переставляет с , третий не переставляет , то есть в итоге переходит в : . Дальше вкратце: 6 , цикл завершился . Рассматриваем следующую неиспользованную позицию: . В итоге получаем
Обратная перестановка
| Определение: |
| Обратной перестановкой (англ. an inverse permutation) к перестановке называется такая перестановка, что: |
| Определение: |
| Перестановка, равная своей обратной, называется инволюцией (англ. involution): , то есть её представление в виде циклов не содержит цикла, размер которого больше двух. |
| Утверждение: |
Количество инволюционных перестановок длины может быть получено по формуле: , где |
| Существует инволюций, при . Число инволюций, содержащих цикл , где , . Имеем, что |
| Определение: |
| Перестановка, содержащая чётное количество инверсий, называется чётной, в противном случае нечётной. |
| Определение: |
| Перестановка, меняющая местами только два элемента, называется транспозицией (англ. transposition). |
| Лемма: |
Если в перестановке, длина которой больше , поменять местами элемента, то её четность изменится. |
| Доказательство: |
| Для элементов, стоящих рядом, истинность утверждения очевидна: их взаимное расположение относительно других элементов не изменилось, а транспозиция этих чисел изменяет количество инверсий на единицу. Пусть теперь между перемещаемыми элементами и находятся элементов, то есть перестановка имеет вид: , . Сначала поменяем последовательно с числами , а затем число с рядом стоящими . В итоге мы выполним транспозиций рядом стоящих элементов, то есть чётность перестановки изменится. |
Получение обратной перестановки
Пусть в массиве содержится перестановка, тогда в массиве , после выполнения алгоритма, будет содержаться обратная перестановка.
fun reversePerm(p : int[], rep : int[])
int n = p.size;
for i = 0 to n
for j = 0 to n
if p[j] == i + 1
rep[i] = j + 1;
При представлении перестановки в виде циклов обратную перестановку можно легко получить, инвертировав все ребра в циклах.
Отсюда следует более эффективный алгоритм, где - массив посещённых элементов:
fun reversePerm (visited : boolean[], p : int[], rep : int[])
int n = p.size;
for i = 0 to n
if visited[i]
continue;
// инвертировать цикл, начинающийся в позиции
int last = i;
int j = p[i];
while true
int next = p[j];
p[j] = last;
visited[j] = true;
if j == i
break;
last = j;
j = next;
Группа перестановок
| Определение: |
Группой (англ. group) называется множество с заданной на нём бинарной операцией , удовлетворяющей следующим свойствам:
|
| Утверждение: |
Множество перестановок с элементами с операцией умножения является группой (часто группу перестановок называют симметрической (англ. symmetric group), и обозначают ). |
| Свойства и доказаны выше, а в качестве нейтрального элемента выступает тождественная перестановка (). |
Мощность симметрической группы:
Теорема Кэли утверждает, что любая конечная группа изоморфна подгруппе некоторой группе перестановок.
Группа чётных перестановок
| Определение: |
| Группа чётных перестановок (англ. alternating group) является подгруппой симметричной группы перестановок, образованной всеми чётными перестановками. Композиция не выводит из группы, так как если представить каждую перестановку группы в виде чётного числа транспозиций и перемножить их, чётность не изменится. |
| Утверждение: |
Количество чётных перестановок длины равно количеству нечётных и равно |
| Пусть число число чётных перестановок , а нечётных . Сделаем транспозицию для всех чётных перестановок. Получим нечётных различных перестановок, то есть . Проделаем то же самое с нечётными перестановками. Получим, что , то есть и . |
Группа подстановок
| Определение: |
| Подстановкой (англ. substitution) называется всякое взаимно однозначное отображение множества первых натуральных чисел на себя. |
Всякая подстановка может быть записана при помощи двух перестановок, подписанных одна под другой:
Где через обозначается то число, в которое при подстановке переходит число .
| Определение: |
| Группой подстановок (англ. group of substitutions) называется некоторая совокупность подстановок, замкнутая относительно композиции отображений, определяющей бинарную операцию для подстановок на одном и том же множестве. |
Источники и литература
- https://en.wikipedia.org/wiki/Involution_(mathematics)
- Н. И. Яцкин, Алгебра Теоремы и алгоритмы, Издательство «Ивановский государственный университет», 2006 г., стр. 161