
- •Курс лекций Дискретная математика
- •Оглавление
- •Лекция 1 Элементы теории множеств
- •Множество есть многое, мыслимое нами как единое.
- •Диаграммы Эйлера-Венна
- •Сравнение множеств по числу элементов
- •Операции над множествами
- •Лекция 2 Отношение. Способы задания отношений
- •Декартово произведение множеств
- •Функциональное отношение
- •Бинарные отношения
- •Лекция 3 Основные логические функции
- •Существенные и фиктивные переменные
- •Функции одной переменной
- •Функции двух переменных
- •Законы и теоремы булевой алгебры
- •Лекция 4 Минимизация логических функций
- •Карты Карно
- •Правила минимизации с использованием карт Карно
- •Лекция 5 Замкнутые классы функций
- •Критерий полноты
- •Лекция 6 Графы. Основные термины и понятия
- •Матрица инцидентности и матрица смежности
- •Лекция 7Плоские Графы
- •Лекция 8 Расстояния в графе
- •Алгоритм фронта волны
Лекция 7Плоские Графы
Определение. Граф называется плоским, если его можно нарисовать на плоскости так, чтобы его ребра не пересекались.
Определение. Плоский граф, нарисованный без пересечения ребер, называетсяправильно нарисованным. (!) Если на рисунке ребра графа пересекаются, это не значит, что он не плоский. Возможно, он просто неправильно нарисован. Классический пример такого графа - полный граф с 4-мя вершинами (см. рис. внизу).
ОпределениеПравильно нарисованный плоский граф разбивает плоскость на непересекающиеся куски-странами
(карта, разделенная границами на страны - типичный пример плоского графа).
Обозначим число вершин графа через V, ребер - через E, а число стран (включая внешнюю область), на которые плоский граф разбивает плоскость - через K.
Теорема Эйлера.В любом связном плоском графе
V-E+K=2. Доказательство. Докажем индукционным спуском по числу ребер, довольно необычно устроенным. База: Пусть граф - дерево. Тогда E=V-1 (это у нас было 4-е определение дерева), а K=1 (граница любой страны является циклом, а циклов нет, поэтому страна только одна). Значит, V-E+K=V-(V-1)+1=2, ч.т.д. Переход: (в форме спуска). Если граф не дерево, то давайте строить его остовное дерево. Для этого мы несколько раз удаляем ребро из какого-то цикла. Каждый раз E уменьшается на 1. А K тоже уменьшается на 1, поскольку объединяются две страны, граничившие по этому ребру. Именно за счет того, что ребро лежит в цикле, не может быть так, что по обе его стороны была одна и та же страна (!). Значение V-E+K не поменялось. Значит, у исходного графа оно такое же, как у остовного дерева. А там получается V-E+K=2, ч.т.д.
Утверждение. В плоском графе 2E>=3K. Доказательство. Возьмем у каждой страны количество ребер, из которых состоит ее граница и все сложим. Получим не меньше 3K, так как граница любой страны состоит не менее, чем из трех ребер. А с другой стороны, так как некоторые ребра (как раз те, которые разделяют две разные страны) мы могли посчитать дважды, получим. не больше 2E, откуда 2E>=3K, ч.т.д.
Утверждение. В плоском графе E<=3V-6. Доказательство. Воспользуемся теоремой Эйлера: V-E+K=2, и предыдущим неравенством: 2E>=3K, то есть K<=2E/3. Отсюда V-E+2E/3>=2, то есть V-E/3>=2, V-2>=E/3 и E<=3V-6, ч.т.д. Упражнение. Докажите, что полный граф с пятью вершинами не является плоским.
(!) И для несвязного плоского графа верны те же неравенства. Просто сложим их для всех компонент связности. Правда, тут есть своя тонкость, связанная с кратным подсчетом внешней области...
Определение. Граф называется двудольным, если его вершины можно разделить на две доли, так чтобы любые две соседние вершины были из разных долей. Если любые две вершины из разных долей - соседние, то граф называется полным двудольным.
Теорема. Граф двудольный тогда и только тогда, когда в нем все циклы имеют четную длину. Доказательство. В одну сторону все просто: если граф двудольный, то в любом цикле чередуются вершины из разных долей. Поэтому, чтобы цикл замкнулся, его длина обязательно должна быть четной, ч.т.д. Пусть в графе все циклы имеют четную длину. Начнем разбивать его вершины на две доли: берем любую вершины и помещаем в долю 1. Всех ее соседей, конечно же, в долю 2. Их соседей - опять в долю 1 и т.д. Так что же, любой граф можно так сделать двудольным??? Нет, иногда этот процесс может не получиться. Это когда мы сначала приходим в вершину по одному ребру и помещаем ее в одну долю, а потом приходим в нее по другому ребру и должны поместить ее в другую долю (если в ту же - проблем нет!). Но такая ситуация может возникнуть (подумайте! нарисуйте!) только если есть цикл нечетной длины. А по условию их нет, так что все получится.
Утверждение. В плоском двудольном графе 2E>=4K, т.е. E>=2K. Доказывается аналогично 2E>=3K, только, так как в двудольном графе все циклы - четные, граница страны не может состоять ровно из трех ребер, а должна хотя бы из четырех.
Утверждение. В плоском двудольном графе E<=2V-4. Доказывается аналогично E<=3V-6, только вместо 2E>=3K подставляем E>=2K. Упражнение. Докажите, что полный двудольный граф с тремя вершинами в каждой доле не является плоским (исторически этот граф носит название "домики-колодцы").
(!) На самом деле, мы уже описали все конструкции, благодаря которым граф может не быть плоским: наукой доказано, что любойнеплоский граф в некотором смысле (с точностью до пририсовывания лишних вершин посреди ребер) содержит в себе либо полный граф из 5 вершин, либо граф "домики-колодцы". На практике, в задачах неплоскость графа доказывается через нарушение приведенных выше неравенств.
Задача 4. Докажите, что в любом плоском графе есть вершина степени не выше 5. Решение: Пусть это не так. Тогда сумма степеней всех вершин - не меньше 6V. Но эта сумма равна 2E (см. лекцию "Графы-1"). Тогда 2E>=6V, то есть E>=3V>3V-6?! ч.т.д.
Введение в теорию Рамсея. Здесь речь пойдет о графах, ребра которых как-то раскрашены в два или более разных цветов. В них мы будем рассматривать подграфы, образованные ребрами только одного цвета и доказывать какие-то хорошие свойства для какого-то из этих подграфов. Общая теория решения подобных задач (а также неиссякаемый источник для их придуывания!) называется теорией Рамсея.
Задача 5. В стране любые два города соединены либо железной дорогой, либо авиалинией. В связи с террористической угрозой, президент решил временно закрыть один из видов транспорта. Докажите, что он может сделать это так, чтобы из любого города можно было проехать в любой. Решение: Рассмотрим граф из одних авиалиний. Если он связный, то железные дороги можно закрывать. Если нет - любые два города из разных компонент связности соединены железной дорогой. В этом случае можно закрыть авиалинии. Действительно, из любого города в город из другой компоненты связности можно доехать по железной дороге напрямик. А в город из той же компоненты - с одной пересадкой, в любом городе, не входящем в эту компоненту (а чтобы он был, компонент должно быть хотя бы две!), ч.т.д.
Задача 6. Верно ли, что в задаче 5 можно закрыть один вид транспорта так, что из любого города в любой можно добраться не более, чем с одной пересадкой (будем называть это "хорошо доехать")? А хотя бы из столицы в любой город? Решение: Из любого в любой, оказывается, нельзя. Простейший контрпример, всего с 4-мя городами - см. рис.
А из столицы хорошо доехать до любого города на одном виде транспорта можно. Доказывается это от противного, причем совершенно типичным для теории графов рассуждением. Пусть нельзя: тогда есть какой-то город A, куда нельзя хорошо доехать от столицы по железной дороге и какой-то город B, куда нельзя хорошо долететь по авиалиниям. Обозначим столицу за C и рассмотрим дороги, соединяющие эти три города. Ясно, что AC - авиалиния, а BC - железная дорога. Но есть еще дорога между A и B! Если она железная, то в A можно хорошо доехать по железной дороге через B, а если авиалиния - наоборот, в B можно хорошо долетель через A. В любом случае, противоречие, ч.т.д. Упражнение. Докажите (аналогичным рассуждением от противного), что можно все-таки закрыть один транспорт так, чтобы из любого дорога в любой можно было доехать не более, чем с двумя пересадками.
Задача 7. Докажите, что среди любых 6 человек есть либо трое попарно знакомых, либо трое попарно незнакомых. Решение: Рассмотрим произвольного человека: у него среди остальный пяти - не меньше трех знакомых (или не меньше трех незнакомых - случай аналогичен). Если среди этих троих какие-то двое знакомы друг с другом - они вместе с ним образуют тройку знакомых. А если нет - эти трое попарно незнакомы, ч.т.д. Упражнение. Среди 17 человек любые двое - друзья, враги или незнакомые. Докажите, что есть либо трое друзей, либо трое врагов, либо трое незнакомых (попарно). Воспользуйтесь предыдущй задачей!