Алгоритмы

индекс
298,75

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

Во вчерашней серии футурамы поставили довольно интересную задачку — не мог не удержаться и не разобрать ее тут.
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.
+79
20 августа 2010, 15:33
24

комментарии (65)

НЛО прилетело и опубликовало эту надпись здесь
+83
si1v3r #
Взятие интеграла по методу Гомера:
1. Подойти
2. Взять.
+8
Halt #
Тогда уж лучше метод Симпсона ;)
0
si1v3r #
Дык я потому и написал по методу Гомера, чтобы не путали.
+67
ostapbender #
Поясню: пирог там потому, что и «пи» и «пирог» по-английски произносятся одинаково — как «пай».
–33
HDg #
даже как-то неудобно вас К.О. после этого называть. вы выше его!
+21
GreenAngel #
Ну не знаю…
Я например этого не знал и думал, что шутка в том, что Гомер в принципе думает о пирогах постоянно…
Нежнее надо быть. Ещё нежнее)
0
valyard #
считаем количество человек, которые не поняли картинку по количеству минусов предыдущего поста
–3
DpyuD #
а я поставил ему плюс, потому что, как мне показалось, он отреагировал нормально
я засрал статистику (:
+1
NULL_byte #
По количеству плюсов к пояснению, мб?
+10
AlexSuslin #
очень даже не очивидно, я думал что пи греческая буква и должна читаться по гречески, а не по-английский
+4
jakobz #
Я тоже не знал что в английском Пи как «Пай» читается. Тот же «Игрек» американцы наоборот не понимают.
–1
mafonya #
А «Игрек» наоборот это «кергИ»?! :)
+2
HDg #
я тоже не знал что пи читается как «пай», но «пи» и «пай» все равно созвучны
+1
darkfrei #
и интуитивно понятно что они в ином языке могут быть созвучны.
–5
Vladson #
Факт остаётся фактом, увы (как я уже замечал) даже среди читателей хабра есть люди не понимающие английского… (обидно, но факт)
0
Gregman #
Нет, это не так.
0
Gregman #
Ой, не туда ответил :(
–9
jcrow #
Надеюсь, этот пост — реклама codecogs.com
+2
lunatik42 #
Оно первым было в гугле по запросу онлайн LaTeX-редактора, а там хтмл-код дают, ссылки из которого влом выкорчевывать. Да почему бы и не порекламить — удобный сервис.
–1
jcrow #
Наверное, удобный.
Мне просто по теме топика ничего в голову не пришло, кроме этого замечания.

Ну, пирог еще, разве что.
+1
IeN #
как будто пару лет назад на семинаре по дискретной математике =)
–4
AvRUS #
А вы говорите, что у дискретки нет применений IRL.
У нас уже изобретена такая машина? :)
+2
lunatik42 #
Ну ирония же.
+7
iXCray #
Из всей серии, где даже профессор с зойдбергом целовались на столе в ресторане, выловить математику — это крайне круто :)
+2
vadim2 #
В оправдание профессора и зойдберга скажу, что в их телах были фрай и лила(фрай-зойдберг, лила — профессор).
+2
andorro #
Спойлер!
+6
iXCray #
Хуже! Он расспойлил мой спойлер!
0
andorro #
Тогда уж заспойлил :)
–1
VDG #
спасибо блин обоим :( не все же ведь ещё успели посмотреть.
+2
Shark #
Эх, пару моих знакомых, посмотрев Футураму сказали: «Вот это бред!» :) Отличный пример сериала, кстати, когда поверхностное мышление можно выкинуть на свалку, в силу его бесполезности ;)
+6
professor_k #
«Профессор изобрел машину для обмена телами, которая, как оказалось, работает только в одну сторону. „

Так и не понял, что вы решаете. Есть случайная перестановка, ее нужно упорядочить. Но какие операции с ней допустимы — уже непонятно. Как решаете — понимал до введения сигмы, тут откуда-то появилась любое i, и все стало непонятно. Сигма — это какая-то одна перестановка, или их множество. Если множество — то как мы его используем?

Может стоит немного детальнее расписать, поставить задачу на языке той же дискретки, а потом решать?
Ну и если где не тот термин использую — не судите строго, дискретную математику учил лет восемь назад, старый уже, позабыл :)
+2
lunatik42 #
Вопрос в том, что для исходного цикла необходимо найти такую подстановку, композиция с которой даст тождественную подстановку. Очевидный ответ с обратной подстановкой отпадает, ибо машина не умеет менять тела назад.
Сигма позволяет поочередно поменять всех местами без использования обратной подстановки. (Честно говоря, я не особо понял, как они сигму записали).

Пример: Зойдберга поменяли телами с Фраем, обозначим их F(Z) и Z(F), в скобочках указав «разум», вне скобок — тело. Добавим еще двоих: X(X) и Y(Y).
1 перестановка:
F(Z) <-> X(X) => F(X),X(F)
Z(F) <-> Y(Y) => Z(Y),Y(Z)
2 перестановка:
X(F) <-> F(Y) => F(F),X(Y)
Y(Z) <-> Y(X) => Z(Z),Y(X)
Получили то, что надо, теперь используем оставшуюся перестановку и меняем Х и Y.

Теорема же делает адское обобщение на произвольную перестановку.
+2
sin_avatar #
Но почему считается разрешенной перестановка X(Y) <-> Y(X)? Ведь это и есть обратная подстановка.
0
lunatik42 #
футы… неправильно сказал) нельзя транспозиции дважды использовать.
0
professor_k #
Вот теперь более менее понятно. Спасибо.
+1
sin_avatar #
Если я что упустил — буду благодарен если укажите на это. Но я понял все выкладки так: любая перестановка телами среди n субъектов может быть успешно возвращена в исходное состояние за счет перестановки между X и Y.

Насколько я вижу нет способа вернуть всех в свои тела. Почему? Предположим тогда такой способ есть — очевидно что на последнем шаге для возврата на нужно обменять местами X(Y) и Y(Z), что по условию невозможно. Значит полный возврат к исходному состоянию невозможен.
0
lunatik42 #
Перестановку (x,y) мы не используем во время работы алгоритма ни разу, x и y оказываются поменяны местами в результате всех остальных перестановок (см. частный случай, на нем легче всего доехать). Поэтому в конце мы и можем использовать нужную перестановку (думаю, это понадобится, если n четно).
0
sin_avatar #
Смотрите у нас есть некий алгоритм благодаря которому мы собираемся поменять всех назад. Всё идет отлично последний шаг — какой он? A(?) <-> B(?), очевидно что это обмен вида A(B) <-> B(A) (иначе получиться не последний шаг). То есть обмен который запрещен. Получается что последний шаг невозможен — следовательно невозможно полное возвращение всех назад.
Путем привлечения субъектов X Y мы можем получить перестановку в которой всех вернулись в свои тела, но при этом X и Y поменялись местами.

Я не вижу ошибки в рассуждении о том что последний шаг алгоритма невозможен в рамках заданных условий. Если вы мне укажите на неё буду благодарен.
+1
lunatik42 #
Обмен запрещен только тогда, когда мы его уже делали одновременно над A и B. А они у нас получаются переставлены за счет работы алгоритма, как побочный эффект. Во время работы конкретно над A и B перестановок не производится.
0
sin_avatar #
Понял какое какое именно ограничение наложено на обмен. Спасибо.
+2
mad8vad #
Новая серия?
+2
Bahus85 #
Да. 10 серия The Prisoner of Benda
+5
EugeneBond #
в бытность студентом, подрабатывал на базаре — торговали коврами. неожиданно пригодилась «вышка»: длинну свернутого в рулон ковра считал без разворачивания и «линейного» измерения с точностью до 20 сантиметров.
к сожалению, 20 сантиметров ковра — это оказалось серьезными деньгами для других реализаторов и все равно все перемерялось в ручную.
+2
mad8vad #
Надо было курвиметр брать
+2
EugeneBond #
погрешность всегда будет, поскольку распечатанные ковры никогда не бывают идеально скатанными…

это из серии «Если вы уже открыли банку с червями, то единственный способ их снова запечатать — это воспользоваться банкой большего размера.»
+2
Zibx #
А точно ли тут вышка?
0
EugeneBond #
учась в экстремально-гуманитарной школе, интегралы и пределы я открыл для себя только в университете…
объективно, скорее всего это старшие классы школы. субъективно — вышка :)
НЛО прилетело и опубликовало эту надпись здесь
0
ddsl #
Блин так и захотелось снова пройти дискретку ибо первый раз почти ничего не понял.
0
easterism #
Кто там говорил, что хабр уже не тот?
–1
darkfrei #
Он говорил что не торт.
–2
Ilya_Smelykh #
ФПМК ВМК МЕХМАТ МАТМЕХ
+2
nps #
Что интересно, решение уже было видно по иллюстрации из начала серии:
0
GreenAngel #
и где все +++?)
0
MaximKat #
где вы тут увидели решение?
+1
nps #
Ну после обмена Эми-Профессор уже произошли обмены Лила-Профессор и Эми-Бендер (обозная контейнерами), оставалось только по зелёным стрелочкам доменяться (Лила-Бендер последними). Что не так?
А причём здесь все эти странные формулы — понятия не имею.
–1
Arceny #
Оффтоп: где скачать с сабами?
–5
wzrd #
думал, если оффтоп напишешь минусовать не будут?)
0
Arceny #
Бебебе
+1
Arceny #
Ответ: на рутрекере
–2
darkfrei #
Сам спросил, сам ответил. Молодец.
+1
javamain #
А мне кажется, автор перевел то, что было написано на доске в сериале… Меня даже разочаровало… Было бы интереснее, если была бы решена частная задачка… Подбор слов в переводе очень корявый…
0
Shablonarium #
Задача напоминает игру пятнашки и решается целевым перебором
0
Mii #
Вот вы все пишете, пишете, но в исходной задаче имелись Эмми, Профессор, Бендер, Лила, Бухгалтер, Фрай, Зойдберг, Ведерко, Царь Николай, Баскетболист1, Баскетболист2. Кто-нибудь может адекватно представить как работает теория в «real-world applications»?

Только зарегистрированные пользователи могут оставлять комментарии. Войдите, пожалуйста.