Доказываем теорему Липтона—Тарджена о существовании хороших разделяющих множеств (сепараторов) в планарных графах.
[Слайды курса, прочитанного в МФТИ в 2013 году.]
2. Квазитриангуляции
Квазитриангуляция — это планарный граф, границы всех граней
которого являются простыми циклами, причём границы всех
внутренних граней — треугольники.
3. Лемма о красно-синей альтернативе
Лемма.
Пусть вершины квазитриангуляции 퐺 покрашены в красный и
синий цвета. Пусть цикл 퐶 — граница внешней грани 퐺.
Пусть 푢, 푤 — произвольная пара красных вершин на 퐶. Тогда
• найдётся красная цепь, соединяющая 푢 и 푤,
• или найдётся синяя цепь, соединяющая две вершины из разных
компонент связности 퐶 − 푢, 푤 .
или
4. Доказательство леммы
о красно-синей альтернативе
Пусть 푈 — красные вершины 퐺, до которых можно добраться
по красным цепям.
Если 푤 ∈ 푈, то искомая красная цепь между 푢 и 푣 нашлась.
Пусть теперь 푤 ∉ 푈 и пусть 푊 — компонента связности 퐺 − 푈 ,
содержащая 푤. Пусть 푣′ и 푣′′ — синие вершины из 퐶 ∩ 푊,
по разные стороны от 푤 и наиболее далёкие от 푤.
Тогда есть синяя цепь, проходящая
по той части границы 푊, которая «ближе к 푢».
(Наличие красных вершин на этой части границы
противоречило бы квазитр. и определению 푈.)
푣′
푤 푢
푣′′
5. Лемма о цепях
в «толстой» квазитриангуляции
Лемма.
Пусть 푣0푣1 … 푣2푘−1 — внешний цикл квазитриангуляции 퐺.
Тогда если 푑 푣0, 푣푘 = 푘, то найдутся 푘 непересекающихся по
вершинам цепей из 푣푖 в 푣2푘−푖 для 푖 = 0, … , 푘 − 1.
푣0 < 푘 푣푘 или
푣푖
푣2푘−푖
6. Доказательство леммы о цепях
Пусть 푋 ≔ 푣0, … , 푣푘 и 푌 ≔ 푣푘 , … , 푣2푘−1, 푣0 .
Пусть 푆 — наименьший 푋, 푌-разделитель. Отметим, что 푣0, 푣푘 ∈ 푆.
Будем считать вершины из 푆 красными, а остальные — синими, и применим
лемму о красно-синей альтернативе:
• синей цепи между 푋 и 푌 нет (т.к. 푆 — разделитель),
• значит, есть красная цепь между 푣0 и 푣푘 .
По условию, пути между 푣0 и 푣푘 имеют длину ≥ 푘, отсюда 푆 ≥ 푘.
Отсюда, по теореме Пима, найдутся 푘 непересекающихся путей между 푋 и 푌.
В силу планарности, эти пути соединяют 푣푖 с 푣푘−푖 .
7. Сепарация графов
Общая концепция: удалить из графа «совсем небольшое» число
вершин/рёбер, так, чтобы оставшиеся вершины распались на два
несмежных множества, в константу раз меньшие исходного.
Применение.
В алгоритмах типа «разделяй и властвуй».
Пример-упражнение.
В любом бинарном 푛-вершинном дереве можно удалить одно
ребро, так, что оно распадётся на два дерева, в каждом из которых
менее 2푛 3 вершин.
8. Сепарация графов
Общая концепция: удалить из графа «совсем небольшое» число
вершин/рёбер, так, чтобы оставшиеся вершины распались на два
несмежных множества, в константу раз меньшие исходного.
Формальное определение.
푚, 훼 -сепаратор графа 퐺 — это такое подмножество 푉′ вершин 퐺,
что 푉′ ≤ 푚 и 퐺 − 푉′ можно разбить на части 퐺1 и 퐺2,
где 퐺푖 ≤ 훼 ⋅ 퐺 , и между 퐺1, 퐺2 рёбер нет.
9. Теорема Липтона—Тарджена
Теорема. (R.J. Lipton, R. Tarjan)
У любого планарного 푛-вершинного графа есть 2 2푛
, 1
2 -сепаратор.
1− 2 3
Смысл.
Любой планарный граф 퐺 можно раскроить на две почти равные
части, удалив 표 퐺 вершин.
10. Доказательство теоремы Липтона—Тарджена:
построение 2 2푛, 2
3 -сепаратора
Сначала докажем существование 2 2푛, 2
3 -сепаратора.
Уложим 퐺 на плоскости и дополним рёбрами до триангуляции
(любой сепаратор полученной триангуляции будет также
сепаратором исходного графа).
Для цикла 퐶 через 푐int и 푐ext обозначим число вершин графа 퐺
внутри и вне 퐶 соответственно.
11. Доказательство теоремы Липтона—Тарджена:
построение 2 2푛, 2
3 -сепаратора
Пусть 푘 ≔ 2푛 . Пусть 퐶 выбран так, что:
• 퐶 ≤ 2푘
• 푐ext ≤ 2푛
3
• 푐int − 푐ext → min
Отметим, что 퐶 существует, т.к. первым двум ограничениям
удовлетворяет внешний цикл 퐺.
Покажем, что 퐶 — искомый сепаратор. Допустим, что это не так, и
придём к противоречию.
12. Доказательство теоремы Липтона—Тарджена:
построение 2 2푛, 2
3 -сепаратора
• 푘 ≔ 2푛 , 퐶 ≤ 2푘, 푐ext ≤ 2푛
3 , 푐int − 푐ext → min
Пусть 퐶 — не 2 2푛, 2
3 -сепаратор. Тогда 푐int > 2푛
3 .
• Заметим, что 퐶 = 2푘. В противном случае, можно было бы
добавить к 퐶 одну из 푐int вершин, уменьшив 푐int − 푐ext .
13. Доказательство теоремы Липтона—Тарджена:
построение 2 2푛, 2
3 -сепаратора
• 푘 ≔ 2푛 , 퐶 ≤ 2푘, 푐ext ≤ 2푛
3 , 푐int − 푐ext → min
• Предположили, что 퐶 не сепаратор: 푐int > 2푛
3 .
Для вершин 푢, 푣 ∈ 푉 퐶 пусть 푑퐶 푢, 푣 — расстояние между 푢 и 푣
«по циклу», а 푑int 푢, 푣 — длина кратчайшего пути между ними,
состоящего только из вершин на 퐶 и внутри 퐶.
Докажем, что 푑int 푢, 푣 = 푑퐶 푢, 푣 для любых 푢, 푣 ∈ 푉 퐶 .
14. Доказательство теоремы Липтона—Тарджена:
построение 2 2푛, 2
3 -сепаратора
Допустим, что 푑int 푢, 푣 < 푑퐶 푢, 푣 для каких-то 푢, 푣 ∈ 푉 퐶 .
Среди всех таких пар 푢, 푣 выберем пару с наименьшим 푑int 푢, 푣 .
Пусть 푃 — кратчайший путь между 푢 и 푣 внутри 퐶.
В силу выбора пары 푢, 푣 имеем 푉 푃 ∩ 푉 퐶 = 푢, 푣 .
Пусть 퐶′ и 퐶′′ — циклы, образованные 푃 и 퐶.
Б.о.о. считаем, что 푐′ ≥ 푐′′ int
int
.
푐 ′′ int
푃 푐int
′
푢
푣