32
Дискретные структуры МФТИ, осень 2013 Александр Дайняк www.dainiak.com

Эйлеровы и гамильтоновы циклы. Теорема Турана

Embed Size (px)

Citation preview

Page 1: Эйлеровы и гамильтоновы циклы. Теорема Турана

Дискретные структурыМФТИ, осень 2013

Александр Дайнякwww.dainiak.com

Page 2: Эйлеровы и гамильтоновы циклы. Теорема Турана

Эйлеровы циклы

• Эйлеров цикл — это цикл, проходящий через каждое ребро графа ровно по одному разу• Эйлеров граф — это граф, в котором есть эйлеров цикл

𝑒1

𝑒2

𝑒3

𝑒4

𝑒5

𝑒6

𝑒7𝑒8

𝑒9

𝑒10

Page 3: Эйлеровы и гамильтоновы циклы. Теорема Турана

Задача Эйлера

• Можно ли пройти каждый мост Кёнигсберга ровно по одному разу, вернувшись в отправную точку?

Page 4: Эйлеровы и гамильтоновы циклы. Теорема Турана

Задача Эйлера

Условия существования эйлерова цикла:• Граф должен быть связным• Степени всех вершин должны быть чётными

Значит, по Кёнигсбергу так не погуляешь.

𝐴

𝐶

𝐵

𝐷

𝑎 𝑓𝑏

𝑒

𝑔𝑑𝑐

Page 5: Эйлеровы и гамильтоновы циклы. Теорема Турана

Задача о почтальоне

• Почтальон должен выйти из здания почтового отделения, развезти корреспонденцию по всем улицам города, и вернуться обратно на почту.• При каких условиях почтальону не придётся дважды проезжать

по одной и той же улице?• Если в «графе улиц» есть эйлеров цикл!

Page 6: Эйлеровы и гамильтоновы циклы. Теорема Турана

Алгоритм Флёри

Терема Эйлера. Условия связности графа и чётности степеней являются необходимыми и достаточными для эйлеровости графа.Алгоритм Флёри:• Стартуем из любой вершины графа.• На каждом шаге проходим ещё не пройденное ребро и удаляем

его из графа• Идём по мосту только если нет другой возможности• Если идти стало некуда, значит эйлеров цикл только что построен

Page 7: Эйлеровы и гамильтоновы циклы. Теорема Турана

Алгоритм Флёри1)

2)

3)

6)

5)

4)

7)

8)

9)

Page 8: Эйлеровы и гамильтоновы циклы. Теорема Турана

Алгоритм Флёри

Лемма. В связном графе, степень каждой вершины которого чётна, нет мостов.

Доказательство. Если бы мост был, то компоненты графа, получающегося после удаления моста, имели бы ровно по одной вершине нечётной степени — противоречие.

Page 9: Эйлеровы и гамильтоновы циклы. Теорема Турана

Алгоритм Флёри

Доказательство корректности алгоритма Флёри• Построенный алгоритмом маршрут является циклом.

Если мы попали в вершину, из которой больше некуда идти, то значит к данному моменту мы удалили из графа нечётное число рёбер у этой вершины. Это возможно, только если вершина является стартовой.

Page 10: Эйлеровы и гамильтоновы циклы. Теорема Турана

Алгоритм Флёри

Доказательство корректности алгоритма• Построенный алгоритмом цикл покрывает все рёбра

исходного графа .Допустим противное. Тогда пусть —компонента графа , которую алгоритм посещал последней до возврата в стартовую вершину:

стартоваявершина

𝐶

𝐾

Page 11: Эйлеровы и гамильтоновы циклы. Теорема Турана

Алгоритм Флёри

Посмотрим, как выглядел граф в момент, когда алгоритм покидал компоненту . Ребро, по которому алгоритм вышел из , на тот момент являлось мостом!

Page 12: Эйлеровы и гамильтоновы циклы. Теорема Турана

Алгоритм Флёри

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

Получаем противоречие с определением алгоритма.

Page 13: Эйлеровы и гамильтоновы циклы. Теорема Турана

Теорема Эйлера для орграфов

Теорема.В орграфе существует эйлеров цикл т. и т.т., когда • орграф сильно связный (из любой вершины можно дойти в

любую другую, проходя дуги в правильном направлении),• для любой вершины

Page 14: Эйлеровы и гамильтоновы циклы. Теорема Турана

Гамильтоновы циклы

• Гамильтонов цикл — через каждую вершину графа проходит ровно по одному разу• Гамильтонов граф — граф, в котором есть гамильтонов цикл• Гамильтонова цепь — это цепь, проходящая через каждую

вершину графа ровно по одному разу

Page 15: Эйлеровы и гамильтоновы циклы. Теорема Турана

Гамильтоновы циклы

• В отличие от эйлеровых циклов, пока нет ни хороших критериев гамильтоновости, ни быстрых алгоритмов построения г.ц.• Есть некоторые достаточные условия существования

гамильтоновых цикловВ основном, утверждения типа «Если граф «достаточно плотный», то в нём есть г.ц.»

Page 16: Эйлеровы и гамильтоновы циклы. Теорема Турана

Гамильтоновы циклы

Теорема Оре.Если для любых несмежных выполнено

то гамильтонов.

Доказательство: от противного.

Пусть негамильтонов. Б.о.о. будем считать, что в есть гамильтонова цепь.

(Можно подобавлять рёбра в , пока она не появится. Степени вершин при этом могут только увеличиться.)

Page 17: Эйлеровы и гамильтоновы циклы. Теорема Турана

Гамильтоновы циклы

Пусть и — концы гамильтоновой цепи,а — внутренние вершины цепи.Т. к. в нет гамильтонова цикла, то

𝑥 𝑣1 𝑣 𝑖 𝑣 𝑖+1 𝑦⋯ ⋯

Отсюда .Значит, , то есть для графа условия Оре нарушены.

Page 18: Эйлеровы и гамильтоновы циклы. Теорема Турана

Универсальные последовательности• Универсальная двоичная последовательность порядка — это

такая последовательность, в которой в качестве подслов встречаются всевозможные двоичные слова длины • Пример универсальной последовательности порядка :

• С существованием проблем нет: последовательность длины всегда есть. Но это не предел мечтаний, есть короче:

Page 19: Эйлеровы и гамильтоновы циклы. Теорема Турана

Универсальные последовательности• Насколько короткой может быть универсальная

последовательность порядка ? Не меньше, чем :

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

называются последовательностями Де Брёйна

Разные слова должны начинаться с разных позиций

Последнее слово начинается с позиции и заканчивается в позиции

Page 20: Эйлеровы и гамильтоновы циклы. Теорема Турана

Графы Де Брёйна

Граф Де Брёйна порядка :• — все двоичные слова длины • — множество всех пар вида ,

где — слово длины , а и — символы.Пример графа Де Брёйна порядка :

000 111

001 010

011100 101

110

Page 21: Эйлеровы и гамильтоновы циклы. Теорема Турана

Графы Де Брёйна

Утверждение. Эйлеров цикл в графе Де Брёйна порождает последовательность Де Брёйна.

000 111

001 010

011100 101

110

12

3

45

1

1410111213

98

7

6 15

Соответствующая последовательность:

Page 22: Эйлеровы и гамильтоновы циклы. Теорема Турана

На заметку

• Переход к «максимальному» графу полезен при доказательстве теорем, поскольку придаёт графу дополнительные свойства• Эйлеровы и гамильтоновы циклы — похожие определения, но

принципиально разная сложность• Графы могут возникать из негеометрических комбинаторных

задач и успешно использоваться при их решении

Page 23: Эйлеровы и гамильтоновы циклы. Теорема Турана

Задача Турана

• Пусть у нас есть пустой граф .• Будем добавлять в рёбра по одному.• На каком шаге в графе точно появится треугольник? А клика на

вершинах?Иными словами,• Сколько рёбер должно быть в графе на вершинах,

чтобы он наверняка содержал клику на вершинах?• Как много рёбер может быть в графе на вершинах,

не содержащем клику на вершинах?

Page 24: Эйлеровы и гамильтоновы циклы. Теорема Турана

Задача Турана

Задача Турана — типичный пример задачи из экстремальной теории графов.Общая постановка экстремальных задач обычно такая:• Как много/мало рёбер/вершин/… может быть в графе,

имеющем заданные свойства?• Как «выглядят» графы, на которых достигаются экстремумы?

Page 25: Эйлеровы и гамильтоновы циклы. Теорема Турана

Теорема Турана

Теорема. (Turán ’1941 — читается «Т ран»у́� )Пусть — граф на вершинах, и . И пусть имеет наибольшее число рёбер среди всех графов с указанными свойствами.Тогда является полным -дольным графом, в котором мощности любых двух долей отличаются не более чем на .Такие графы называются графами Турана.

⋯ ⋯

⋯ ⋯

Page 26: Эйлеровы и гамильтоновы циклы. Теорема Турана

Доказательство теоремы Турана:доказываем, что граф полный многодольный

Докажем, что полный -дольный.

Очевидно, что (иначе в можно было бы добавить произвольное ребро, сохранив неравенство ).

Далее докажем, что для любых если , то .

Допустим, это не так, и нашлись , такие, что и . Покажем, что тогда число рёбер в можно увеличить.

Page 27: Эйлеровы и гамильтоновы циклы. Теорема Турана

𝑣

Доказательство теоремы Турана:доказываем, что граф полный многодольный

Допустим, что и .Случай 1: . Тогда рассмотрим граф , для которого

В по-прежнему нет клик размера , при этом , — противоречие с максимальностью .

𝐺− {𝑢 ,𝑣 ,𝑤 }

𝑢 𝑤𝑣

𝐺′− {𝑢 ,𝑣 ,𝑤 }

𝑢 𝑤

Page 28: Эйлеровы и гамильтоновы циклы. Теорема Турана

Доказательство теоремы Турана:доказываем, что граф полный многодольный

Случай 2: — аналогичен случаю 1.Случай 3: и .Тогда рассмотрим граф , для которого

В по-прежнему нет клик размера , а рёбер строго больше, чем в :

𝐺− {𝑢 ,𝑣 ,𝑤 }

𝑢 𝑤𝑣

𝐺′− {𝑢 ,𝑣 ,𝑤 }

𝑢 𝑤𝑣

Page 29: Эйлеровы и гамильтоновы циклы. Теорема Турана

Доказательство теоремы Турана:доказываем, что граф полный многодольный

Мы доказали транзитивность несмежности: для любых если , то .

Также несмежность рефлексивна и симметрична — значит, это отношение эквивалентности!

Множество вершин графа разбивается на классы эквивалентности (независимые множества). При этом вершины из различных классов неэквивалентны (то есть смежны).

Это и значит, что наш граф полный многодольный.

Очевидно, что долей ровно .

Page 30: Эйлеровы и гамильтоновы циклы. Теорема Турана

Доказательство теоремы Турана:«почти-равномощность» долейОсталось доказать «почти-равномощность» долей графа .

Положим . Имеем

Следовательно, чтобы величина была максимальной, нужно, чтобы сумма была минимальна при ограничении .

Покажем, что для любых и .

Page 31: Эйлеровы и гамильтоновы циклы. Теорема Турана

Доказательство теоремы Турана:«почти-равномощность» долейПокажем, что для любых и .

Допустим, что это не так: например, .

Тогда рассмотрим набор чисел , где , и при .

Имеем

что противоречит максимальности .

Page 32: Эйлеровы и гамильтоновы циклы. Теорема Турана

Теорема Эрдёша—Стоуна

Можно обобщить вопрос Турана с клик на произвольные подграфы:• Каково максимальное число рёбер в графе на вершинах,

не содержащем заданного подграфа ? Обозначим это число .

Теорема (Erdős, Stone, Simonovits ’1946, 1966)Для любого фиксированного при