Задача о трёх колодцах: доказательство через теорию графов
Задача о трёх колодцах - одна из самых известных головоломок теории графов: есть три дома и три колодца (в другой версии - вода, газ и электричество), и от каждого дома нужно провести дорожку к каждому колодцу так, чтобы никакие две дорожки не пересекались. Сколько ни крути расположение точек, девятую дорожку провести без пересечения не получится - и это не отсутствие фантазии, а строгий математический факт. Ниже разберём, как задача сводится к графу, который в теории графов называют , как формула Эйлера для плоских графов доказывает невозможность такого чертежа и почему тот же приём работает для целого класса похожих задач. Прежде чем читать доказательство, поэкспериментируйте с калькулятором ниже: он показывает, при каком числе домов и колодцев граф ещё можно нарисовать без пересечений, а при каком - уже нет.
Как формулируется задача о трёх колодцах
Условие звучит обманчиво просто. На плоскости отмечены три точки - дома , , - и три точки - колодцы , , . Нужно соединить каждый дом с каждым колодцем непрерывной линией так, чтобы ни одна пара линий не пересекалась, и линии не проходили через чужие дома или колодцы. Всего нужно провести дорожек. Первые восемь провести без пересечений действительно можно - как бы вы ни расставили точки, найдётся способ. А вот девятая всегда упирается в уже занятую территорию: любая попытка обойти существующие линии заводит дорожку в область, окружённую другими дорожками, откуда до нужного колодца не добраться, не пересекая границу.
Интуитивно кажется, что дело в неудачном расположении точек, и стоит попробовать другую конфигурацию. Но это не так: результат не зависит ни от расположения домов и колодцев, ни от формы дорожек - прямые линии, дуги, ломаные не меняют исход. Чтобы понять почему, задачу нужно перевести с языка геометрии на язык теории графов, где расположение точек вообще перестаёт иметь значение.
От дорожек к графу: рёбра, вершины и K3,3
В теории графов дом или колодец становится вершиной, а дорожка между ними - ребром. Дома и колодцы образуют две группы вершин, при этом рёбра идут только между группами: дом не соединяется с домом, колодец - с колодцем. Такой граф называется двудольным, а если каждая вершина одной доли соединена с каждой вершиной другой, то это полный двудольный граф, обозначаемый , где и - размеры долей. Задача о трёх колодцах - это в точности вопрос о том, можно ли нарисовать граф на плоскости так, чтобы рёбра не пересекались нигде, кроме как в вершинах. Граф, который можно так нарисовать, называется планарным.
У шесть вершин () и девять рёбер () - каждая из трёх вершин одной доли соединена с каждой из трёх вершин другой. Важное свойство двудольного графа: в нём нет циклов нечётной длины, а значит, нет и треугольников - самый короткий цикл состоит минимум из четырёх рёбер. Эта величина называется обхватом графа (), и именно она входит в доказательство.
Формула Эйлера для плоских графов
Ключевой инструмент доказательства - формула Эйлера для связного плоского графа: если у графа вершин, рёбер и он разбивает плоскость на граней (включая внешнюю, бесконечную грань), то
Дальше нужен один геометрический факт: каждая грань плоского чертежа ограничена не менее чем рёбрами, где - обхват графа, а каждое ребро отделяет ровно две соседние грани. Значит, если просуммировать число рёбер по границе всех граней, получится не меньше , но при этом каждое ребро посчитано дважды - по разу для каждой из двух граней, которые оно разделяет:
Подставив эту оценку в формулу Эйлера, , и выразив , получаем главное неравенство - необходимое условие планарности:
Для двудольных графов без треугольников обхват , и неравенство упрощается до . Для произвольных графов, где могут быть треугольники, обхват , и граница строже: . Это неравенство - необходимое, но не достаточное условие: если оно нарушено, граф точно непланарен, но выполнение неравенства само по себе планарность не гарантирует. Для и , впрочем, разбираться в тонкостях достаточности не нужно - неравенство нарушается напрямую.
Почему K3,3 нельзя нарисовать без пересечений
Подставим числа графа : вершин , обхват , значит граница планарности
А фактическое число рёбер у равно . Девять больше восьми, неравенство нарушено - значит, непланарен, и никакая укладка на плоскости без пересечений невозможна. Это и есть строгое доказательство того, что три дома нельзя соединить с тремя колодцами девятью непересекающимися дорожками, независимо от их расположения.
Можно посмотреть на то же противоречие через грани. Если бы граф был плоским, формула Эйлера потребовала бы граней. Но при обхвате и девяти рёбрах граней не может быть больше, чем . Формуле нужно пять граней, а обхват допускает не больше четырёх - противоречие, из которого и следует непланарность.
Планарный пример без пересечений: K2,3 и формула Эйлера
Чтобы увидеть, что происходит в пограничном, планарном случае, полезно взять граф чуть меньше - (две вершины в одной доле, три в другой). У него вершин и рёбер, граница планарности - ровно совпадает с числом рёбер. Это означает, что граф укладывается на плоскости впритык к пределу, и формула Эйлера выполняется точно: грани, и при обхвате 4 ровно - граница достигается без остатка.

На этом чертеже видно, почему ещё держится на плоскости, а - уже нет: у ровно столько рёбер, сколько допускает предел, а у на одно ребро больше, чем предел позволяет. Разница в одно-единственное ребро - и чертёж становится геометрически невозможным.
Теорема Куратовского и обобщение на K5
Тот же приём с формулой Эйлера работает не только для двудольных графов. Возьмём полный граф , в котором каждая из вершин соединена с каждой другой - циклы длины 3 (треугольники) здесь есть, поэтому обхват и граница строже: . Для вершин , рёбер , а граница . Десять больше девяти - тоже непланарен.
и - не просто два отдельных примера, а, по теореме Куратовского, единственные два «неделимых» источника непланарности: любой непланарный граф обязательно содержит внутри себя копию одного из них (с точностью до подразбиения рёбер лишними вершинами). Поэтому задача о трёх колодцах - не курьёз, а частный случай общей теоремы о строении плоских графов.
Частые ошибки
- Пытаться найти «правильное» расположение точек. Непланарность не зависит от координат домов и колодцев и от формы линий - это топологическое свойство графа, а не геометрической картинки.
- Забывать про обхват при подстановке в формулу. Граница верна только для графов без треугольников (обхват 4 и больше); для произвольных графов нужно использовать , иначе оценка получится неверной.
- Считать неравенство достаточным условием планарности. Если (или ) выполняется, это не доказывает планарность - оно лишь не опровергает её. Доказывать планарность нужно явной укладкой или другими критериями.
- Путать вершины и рёбра при подсчёте. Для вершин , а рёбер - потеря этого различия приводит к неверным числам в формуле Эйлера.
- Забывать про внешнюю грань. В формуле Эйлера включает и бесконечную внешнюю грань - её пропуск на единицу сдвигает весь расчёт.
FAQ
Почему нельзя провести девятую дорожку, если первые восемь получились без пересечений? Потому что восемь рёбер ещё укладываются в границу , а девятое ребро её нарушает: после восьми рёбер плоскость уже разбита на грани так, что оставшаяся пара дом-колодец обязательно оказывается по разные стороны какой-то из границ.
Можно ли решить задачу, если разрешить линиям идти не по прямой, а изгибаться? Нет. Планарность - топологическое свойство: непрерывная деформация линий (без разрывов и без прохождения через другие вершины) не меняет, пересекаются рёбра или нет. Форма дорожек не влияет на результат.
Чем задача о трёх колодцах отличается от задачи о четырёх красках? Это разные вопросы теории графов: раскраска карт спрашивает, сколько цветов нужно, чтобы соседние области отличались цветом, а задача о трёх колодцах - про то, можно ли граф вообще нарисовать на плоскости без пересечений. Общее у них - обе задачи используют формулу Эйлера как основной инструмент.
Коротко
Задача о трёх домах и трёх колодцах сводится к вопросу о планарности графа : шесть вершин, девять рёбер, обхват 4. Формула Эйлера вместе с оценкой числа граней через обхват даёт необходимое условие планарности для двудольных графов и для произвольных. У девять рёбер против границы в восемь, у десять против девяти - оба неравенства нарушены, оба графа непланарны, и по теореме Куратовского это единственные два «неделимых» источника непланарности любого графа.
Читайте также

Теорема Понтрягина-Куратовского: критерий планарности графа
Теорема Понтрягина-Куратовского: граф планарен тогда и только тогда, когда не содержит подразбиения K5 или K3,3 - с доказательством через границу Эйлера, примером Петерсена и калькулятором.

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

Теорема Кёнига: двудольный граф, паросочетания и покрытия
Теорема Кёнига для двудольного графа: почему максимальное паросочетание равно минимальному вершинному покрытию. Формулировка, доказательство, пример и связь с теоремой Холла.

Сила слабых связей Грановеттера: теория и примеры
Разбираем теорию силы слабых связей Марка Грановеттера: почему слабые контакты помогают найти работу, что такое мост и локальный мост, и как это проверяют.

Атрибуты сущности в ER-модели: пять типов и примеры
Разбираем пять типов атрибутов сущности в ER-модели: простой, составной, ключевой, многозначный, производный, с примерами и переходом к столбцам и таблицам реляционной схемы.

Циркуляция векторного поля по контуру: формула и смысл
Циркуляция векторного поля по контуру: что это такое, как вычислить линейный интеграл по параметризации и через ротор поля с теоремой Грина, разбор типичных ошибок и примеров расчёта.