Pull to refresh

Дискретная математика в «бытовом» применении

Reading time1 min
Views7.9K
Во вчерашней серии футурамы поставили довольно интересную задачку — не мог не удержаться и не разобрать ее тут.
image

Итак, фабула такова: Профессор изобрел машину для обмена телами, которая, как оказалось, работает только в одну сторону. После нескольких перестановок герои оказались в тяжелой ситуации, в которой им предстояло придумать способ вернуться обратно в свои тела. Вот тут-то нам и поможет «чистая математика».

Итак, приступим. Пусть — это цикл длины k на множестве [n] = {1… n}. Без потери общности запишем:


Пусть теперь (a, b) представляет собой транспозицию, которая меняет местами содержимое a и b.
По предположению, получена с помощью определенных подстановок над [n].

Введем два «новых тела» {x, y} и запишем


Для любых i = 1,… k запишем как ряд перестановок:


Заметим, что транспозиции меняют элемент из [n] с каким-либо элементом из {x, y}, поэтому все транспозиции отличаются от оных, образовавших исходную подстановку , а также от транспозиции (x, y). Простой проверкой получаем:

Таким образом, инвертирует цикл длины k, оставляя x и y переставленными без использования транспозиции (x, y).

Теперь пусть — случайная подстановка; она распадается на композицию независимых циклов, каждый из которых может быть инвертирован с использованием полученного выше алгоритма, после чего при необходимости можно поменять местами x и y, используя транспозицию (x, y).

Так-то. А вы говорите, что у дискретки нет применений IRL.
Tags:
Hubs:
Total votes 125: ↑102 and ↓23+79
Comments65

Articles