Текст
                    COLLECTION UNIVERSITAIRE DE MATHEMATlQuES
CLAUDE BERGE
Maitre de Recherches au C. N. R. S.
THfiORIE DES GRAPHES
ET
SES APPLICATIONS
DUNOD
Paris
1958


К. БЕ РЖ ТЕОРИЯ ГРАФОВ и ЕЕ ПРИМЕНЕНИЯ Перевод с французского К. А. ЗЫКОВА Под редакцией И. А. ВАЙНШТЕЙНА Издательство ИНОСТРАННОЙ ЛИТЕРАТУРЫ Москва 1962
АННОТАЦИЯ Книга К. Бержа— первая книга по теории графов на русском языке. Между тем в последние годы интерес к этой теории резко усилился как со стороны математиков, так и представителей самых различных прикладных дисциплин. Это объясняется тем, что методы теории графов успешно решают многочисленные задачи теории электрических цепей, теории транспортных сетей, теории информации, кибернетики и др. В книге Бержа теория графов излагается последовательно, начиная с основ. Предполагается, что читатель обладает весьма скромными математическими познаниями, хотя и имеет некоторую математическую культуру. В текст включены многочисленные, зачастую забавные примеры. Книга может быть использована для первоначального изучения теории графов. Математики-профессионалы также найдут в ней много интересного. Редакция литературы по математическим наукам
ВВЕДЕНИЕ Во многих случаях жизни старая привычка толкает нас рисовать на бумаге точки, изображающие людей, населенные пункты, химические вещества и т. д., и соединять эти точки линиями или стрелками, означающими некоторые отношения. Такие схемы встречаются всюду под разными названиями: социограммы (в психологии), симплексы (в топологии), электрические цепи (в физике), диаграммы организации (в экономике), сети коммуникаций, генеалогические деревья и т. д. Д. Кёниг, без сомнения первый, предложил называть такие схемы „графами″ и систематически изучать их свойства. Весьма примечательно, что в совершенно различных дисциплинах приходится использовать аналогичные теоремы; так, понятие „матрицы инциденций″, введенное Кирхгофом для изучения электрических цепей, было привлечено А. Пуанкаре в топологию при создании его „analysis situs″; понятие „точки сочленения″, с давних пор известное в социологии, впоследствии появилось в электронике; все примеры такого рода перечислить невозможно. Чтобы можно было применять теорию графов в столь разнообразных областях, она должна быть в высшей степени абстрактной и формализованной. В действительности такие основные понятия, как „цепь″, „путь″, „центр″, будучи определены абстрактно, остаются в то же время неразрывно связанными с графической реальностью и легко распознаются, когда схема начерчена. Вот почему теорию графов нельзя смешивать с- алгебраической теорией отношений, имеющей другие задачи. В то же время современная комбинаторная топология, игнорирующая ориентацию ребер и почти не интересующаяся понятиями, не обобщаемыми на случай п измерений, до сих пор мало что внесла в теорию графов. Например, некоторые результаты, относящиеся к чередующимся цепям, не похожи ни на алгебраические, ни на топологические теоремы. Излагая здесь теорию графов, мы ставим целью дать в руки читателю математическое орудие, приложимое как к наукам о поведении (теории информации, кибернетике, играм, транспортным сетям), так и к теории множеств, теории матриц и к другим чисто абстрактным дисциплинамг
б ВВЕДЕНИЕ Некоторые теоремы, приводимые нами, являются легкими; это такие теоремы, которые математик применяет „бессознательно″, воспроизводя их в частной форме в той или иной задаче. Придавая им возможно более общую форму, мы надеемся лишь добиться тем самым значительной экономии мышления. Наряду с такими „мягкими″ теоремами имеются „жесткие″ теоремы, доказательства которых оказываются весьма тонкими и которые представляют собой результат многочисленных изысканий. Подобная разнородность могла быть лишь уменьшена путем расчленения некоторых теорем на большое число отдельных предложений с более короткими доказательствами. Порядок, в котором мы рассматриваем различные задачи, относящиеся к графам, продиктован аналогичными соображениями, не сразу бросающимися в глаза читателю. Большая часть предложений необходима для доказательства дальнейших теорем. Первые главы в основном посвящены понятиям, связанным с „ориентацией″, а последние — понятиям, с ней не связанным. Определения из алгебры и теории множеств напоминаются читателю по мере надобности, а для глав 14, 15 и 16 требуются некоторые сведения из теории матриц. Наконец, доктор Ж. Риге любезно согласился в одном из добавлений к книге развить доклад, прочитанный им на Семинаре по Алгебре и Теории Чисел (Париж, 1955) и посвященный тонкой задаче подсчета числа графов, удовлетворяющих заданным условиям. Мы выражаем ему благодарность.
ГЛАВА 1 Основные определения ’) Множества и многозначные отображения В теории графов, как и во всех современных математических теориях, пользуются стенографическими символами, дающими значительную экономию мышления и делающими орудие исследования более гибким и эффективным. Хотя классические символы теории множеств, без сомнения, известны читателю, мы все же считаем целесообразным их напомнить. Множество — это собрание объектов любой природы, называемых его точками (или его элементами). Рассуждения, которые нам предстоит проводить, не зависят от природы этих объектов: последние могут быть людьми, городами, числами, функциями и т. д. Удобно обозначать множества большими латинскими буквами А, В, X, . . ., а элементы множества — малыми латинскими буквами a, ft, х, ... . Множество А, элементами которого являются a, b, с, d, обозначают символом А = {a, b, ct d}. Целесообразно рассматривать также пустое множество, совсем не содержащее элементов; его мы будем обозначать символом 0. Иногда множество А определяется не перечислением его элементов, а указанием характеризующего их свойства; например, множество простых чисел можно записать так: А={х/х простое}. Если свойство (1) влечет за собой свойство (2), то мы пишем (1)гф(2); когда эти два свойства равносильны, пишем (1) (2). Пусть А и В — два данных множества; будем пользоваться следующими обозначениями: а£А: а есть элемент множества А. а А: а не является элементом множества А. Аа:В: А содержится в В, или А есть подмножество множества В (все элементы множества А являются элементами множества В). А — В: А совпадает с В {АсВ и Вс А). А =£ В: А не совладает с В. 9 Эта глава — не более чем перечень самых основных терминов, которыми мы будем пользоваться; так сказать, правила игры... . Ббльшую часть этих терминов можно понимать интуитивно, но во избежание недоразумений следует дать им аксиоматическое определение.
8 ГЛ 1. ОСНОВНЫЕ ОПРЕДЕЛЕНИЯ ЛссВ: А строго содержится в В (А а В и А =# В). А П В\ пересечение А и В (множество элементов, принадлежащих как А, так и В). A U В*. объединение А и В (множество элементов, принадлежащих или А, или В, или обоим этим множествам). А \ В: множество элементов, принадлежащих А, но не принадлежащих В (см. рис. 1 - 1). А X В: декартово произведение А и В [множество пар (а, Ь), образованных двумя объектами а £ А и Ь£В\ (см. рис. 1— 2). Объединение, пересечение и декартово произведение можно определить не только для двух множеств А и В, но и для семейства множеств А Рис. 1— 1. Рис. 1— 2. Объединение множеств At— это множество элементов, каждый из которых принадлежит хотя бы одному At\ оно обозначается символом и А. i Пересечение множеств А-ь — это множество элементов, принадлежащих всем Al сразу; оно обозначается символом Па i Декартово произведение множеств At- есть множество последовательностей (aji=lt 2, ...), где ai^Ai для каждого Z; оно обозначается символом IIА
МНОЖЕСТВА И МНОГОЗНАЧНЫЕ ОТОБРАЖЕНИЯ 9 Последовательность из п элементов называется п-строчкой] ее нельзя смешивать с множеством п, элементов (где порядок расположения элементов не играет роли). Пример. Вещественное трехмерное пространство представляет собой множество 3-строчек, или просто троек (яр а2, а3), где av а2, аг— вещественные числа; это декартово произведение трех множеств, каждое из которых совпадает с множеством R вещественных чисел; по этой причине трехмерное вещественное пространство обозначают символом R3 = RXRXR- Вещественное м-мерное пространство обозначается символом R\ Другим важным понятием, которым мы будем часто пользоваться, является понятие разбиения. Разбиением данного множества X называется такое семейство множеств {AJl^I}, где /— некоторое множество индексов и AidX при всех что (1) V0 (*'£/); (2) I + j =ф At П Aj = 0; (3) ЦЛ/ = Х I При заданном разбиении мы пишем х==у, когда х и у являются элементами одного и того же множества AL. Тем самым определено отношение, которое обозначается символом = и обладает следующими свойствами: (1) рефлексивность: х = х; (2) симметрия: х = у ==> у = х; (3) транзитивность: х = у, у =z=$ x = z. Всякое отношение = со свойствами (1), (2), (3) называется эквивалентностью. В свою очередь, эквивалентность = определяет, очевидно, разбиение множества X на множества вида д. = {х/х£Х, х = х0) (где х0— данная точка X). Множество At иногда называют классом эквивалентности содержащим х0. Пример 1. Пусть р — целое число; пишем х=у (mod р), если х и у — два целых числа, отличающихся слагаемым, кратным р. Ясно, что это отношение — эквивалентность.
10 ГЛ. 1. ОСНОВНЫЕ ОПРЕДЕЛЕНИЯ Пример 2. Если две прямые D и D' параллельны или совпадают, то пишем Z)||DZ; очевидно, || есть отношение эквивалентности. Пример 3. Если у двух людей х и у глаза одинакового цвета, то пишем x=j>; ясно, что = есть отношение эквивалентности. Пусть X и Y— два данных множества; закон а, согласно которому каждому элементу х £ X ставится в соответствие элемент ох£ Y, называется однозначным отображением X в Y, или функцией, определенной на X и принимающей значения в Y; например, числовая функция вещественной переменной представляет собой однозначное отображение R в R. Многозначное отображение Г множества X в множество Y есть закон, по которому каждому элементу х £ X ставится в соответствие некоторое подмножество ГхсгК; при этом не исключается возможность Гх=0. Говоря просто „отображение″, большинство авторов подразумевает однозначное отображение. Поскольку нам предстоит иметь дело главным образом с неоднозначными отображениями, мы не придерживаемся упомянутого соглашения и понимаем слово „отображение″ в широком смысле. Пусть Г — отображение данного множества X в Y. При Лс/ назовем образом множества А множество ГЛ = и Гх. А Можно проверить, что если Av А2, .... Ап — подмножества X, то (п \ п Па ≪= Пга i = l / Z-1 Если Г и Д— отображения множества X в X, то результат композиции ГД есть отображение, определяемое следующим образом: (ГД) х = Г (Дх). Отображения Г2, Г3, ... определяются так: Г2х = Г (Гх), Г3х = Г (Г2х), Транзитивным замыканием отображения Г называется следующее отображение Г множества X в Х\ Гх = {х} U Гх U Г2х (J Г3х U . . .. Отображение Г″1, обратное отображению Г, определяется так: г’у={^егх}.
ГРАФ. ПУТИ И КОНТУРЫ 11 Если В — подмножество множества X, то полагаем = {х/Гл:ПВ ¥= 0}. Пример 1. Возьмем в качестве X множество людей и для х£Х обозначим через Гх множество детей человека х. Тогда: Г2х: множество внуков х; Гх: множество, состоящее из х и всех его потомков; Г-1х: родители х, и т. д. Изображая людей точками и рисуя стрелку, идущую из х в у в случае когда х является отцом или матерью у, мы получим родословное, или генеалогическое дерево. Пример 2. Рассмотрим шахматную игру; каждое положение задается диаграммой (местонахождением фигур в данный момент) и ходом (указанием, кто из игроков должен в этот момент играть). Пусть X— множество всевозможных положений, Гх (где х£Х)— множество положений, которые по правилам игры можно получить непосредственно из х; если положение х — матовое или патовое, то Гх = 0. Имеем: Г3х — множество положений, которые можно получить из х тремя ходами; Гх — множество положений, которые вообще можно рано или поздно получить, отправляясь от х; Г-1Д (где ЛсХ)— множество тех положений, из которых возможно одним ходом получить какое-либо положение, входящее в А. Такая система обозначений позволяет выразить формулой множество выигрышных положений и вывести отсюда некоторые свойства !). В случае шахмат правила игры полностью определяются множеством X и отображением Г; однако здесь мы имеем дело с таким большим числом положений, что изобразить все их точками, а отображение Г— стрелками, соединяющими некоторые точки, практически невозможно. Тем не менее некоторые свойства, общие для правил шахматной игры и для отношений родства в группе людей, можно выявить, обращаясь к аксиоматическому методу; этим мы займемся в следующих параграфах. Граф. Пути и контуры Говорят, что дан граф, если даны: 1° непустое множество Х\ 2° отображение Г множества X вХ. !) См. Берж [2].
12 ГЛ 1. ОСНОВНЫЕ ОПРЕДЕЛЕНИЯ Собственно говоря, граф, обозначаемый символом G = (X, Г), есть пара, которая состоит из множества X и отображения Г. Отношения отцовства и материнства в множестве людей определяют граф; то же имеет место для правил шахматной игры, для соединений между собой электрических приборов, для отношения превосходства одних участников турнира над другими и т. д. Всякий раз, когда это возможно, будем элементы множества X изображать точками плоскости, а пары точек х и у, для которых у£Гх, соединять непрерывной линией со стрелкой, направленной от х к у. Это дает основание называть каждый элемент множества X точкой, или вершиной графа, а пару элементов (х, у), в которой у£Гх,— дугой графа. Далее множество дуг графа будет обозначаться через U, а сами дуги — буквами и, v или w (в случае надобности— с индексами). Пример. У графа G, изображенного на рис. 1— 3, множество X образовано вершинами a, b, с, d, е, х, множество U — дугами (а, Ь), (Ь, а), (Ь, х), (х, х), (х, с), (с, х), (х, d), (е, е). Отображение Г определить нетрудно: например, Гх = {х, с, d}, Id = 0 и т. д. Ясно, что множество дуг вполне определяет отображение графа, и, наоборот, отображение Г определяет множество Z7; поэтому граф можно с одинаковым правом записывать как в виде G = (X, Г), так и в виде G = (X, U). Подграфом графа {X, Г) называется граф вида (Д, Гл), где АсХ, а отображение Гл определено следующим образом: Глх = Гх П А. Частичным графом для (X, Г) называется граф вида (X, Д), где ДхсзГх при всех х£Х. Частичным подграфом графа {X, Г) называется граф вида (Д, Дл), где А(=.Х и ДлхсзГхПД. Пример. Рассмотрим граф (X U), представляющий карту дорог Франции: X— множество городов Франции, и (х, у)£П, если имеется дорога, главная или второстепенная, ведущая из города х в город у; карта главных дорог определяет частичный граф, а карта всех дорог Нормандии — подграф. Говорят, что а и b являются граничными вершинами дуги и = (а, Ь), причем а — начало, а b — конец дуги. Две дуги и и v называются смежными, если 1° они различны; 2° они имеют общую граничную точку (независимо от того, является ли эта точка началом или концом дуги и, началом или концом дуги v).
ГРАФ. ПУТИ И КОНТУРЫ 13 Далее, говорят, что две вершины х и у смежны, если 1° они различны; 2° существует дуга, идущая от одной из них к другой. Наконец, говорят, что дуга и исходит из вершины х, если х является началом, но не является концом и, и что и заходит в х, если х является концом, но не является началом и\ в обоих случаях дуга и называется инцидентной вершине х. Это понятие легко Д обобщается: если А — данное мно- ' \ жество вершин, то говорят, что дуга и исходит из А, если \ ( 7 и = (а, х), а^А, х A; // 7 / >— \ Ж; / 6 множество дуг, исходящих из A b /г\/ обозначается символом t/д. Ана- / / логично определяется множество / Л Uа дуг, заходящих в множество [/ & вершин А. 9 Множество дуг, инцидент- С ных А, обозначается символом Рис. 1— 3. ^=^aU ^А- Предоставляем читателю проверить, что в графе, изображенном на рис. 1— 3, для А = {а, х} имеем U% = {(a, Ь), (х, с), (х, d)}, UA = \(b, а), (Ь, х), (с, х)}. Путем в графе О = (X, U) называется такая последовательность (wp и2, ...) дуг, что конец каждой предыдущей дуги совпадает с началом следующей. Путь является простым, когда в нем никакая дуга не встречается дважды, и составным— в противном случае. Путь |i, последовательные вершины которого суть х2, . .. .... xk, xkA р можно обозначить символом [х = [хр х2, . • •, xk, хЛ+1]; путь, идущий от х2 к xk по тем же дугам, что и jx, будем обозначать [х [х2, xk] = [х2, х3, . . ., Путь, в котором никакая вершина не встречается дважды, называется элементарным^ путь может быть конечным или бесконечным. Контур — это конечный путь jx = [хр х2, ..., xk\, у которого начальная вершина хг совпадает с конечной xk; при этом контур называется элементарным, если все его вершины различны (за исключением начальной и конечной, которые совпадают). Длина пути {х = (Ир и2, ..., uk) есть число l(p) = k дуг последовательности; в случае бесконечного пути jx полагаем Z([x)_ оо. Наконец, контур длины 1, образованный дугой вида (х, х), называется петлей.
14 ГЛ. 1, ОСНОВНЫЕ ОПРЕДЕЛЕНИЯ Пример. Старшинство в организации, Пусть X— множество лиц некоторой организации, например военной, и пусть Гх — множество лиц, непосредственно подчиненных лицу х. Связь любого начальника с любым подчиненным изобразится в виде пути графа (X, Г); важно, чтобы граф не имел контуров, ибо их наличие может привести к противоречивым приказаниям. С помощью понятий дуги, пути, контура можно охарактеризовать некоторые важные категории графов. Прежде всего, граф (X, U) называется симметрическим, если (х, у)£ и (у, х)£ и. В симметрическом графе две смежные вершины х и у всегда соединены двумя противоположно ориентированными дугами; для упрощения изображения условимся в этом случае соединять обе точки одной непрерывной линией без стрелок. Граф (X, U) называется антисимметрическим, если (х, у)£ и =ф (у, х) и (каждая пара смежных вершин соединена только в одном направлении; петли отсутствуют). Граф (X, U) называется полным, если (х, у) $ и (у, х)^и (любые две вершины соединены хотя бы в одном направлении). Наконец, говорят, что граф сильно связен, когда для любых двух вершин х и у (х=Ру) существует путь, идущий из х в у. Пример. Схема коммуникаций. Пусть X— некоторое множество людей и пусть (х, y)£U, когда лицо х имеет возможность непосредственно передавать сообщения лицу у. Обычно этот граф — симметрический: например, если связь осуществляется с помощью телеграфа, телефона, там-тама и т. д.; но граф может и не быть симметрическим, как в случае ракет или почтовых голубей. Кроме того, в правильно спроектированной сети коммуникаций каждый человек должен иметь возможность передать сообщение любому другому члену организации или непосредственно, или через посредников; иными словами, важно, чтобы граф был сильно связен. Цепи и циклы Ребром графа G = (X, U) называется множество из двух элементов х и у, для которых (х, у)£У или (у, х)£/7; это понятие нельзя смешивать с понятием дуги, в котором участвует ориентация. Так, например, граф, изображенный на рис. 1— 3, имеет 8 дуг, но только 6 ребер.
ЦЕПИ И ЦИКЛЫ 15 Ребро обозначается жирной латинской буквой: и или v, а множество ребер — буквой U. Ребро, для которого вершины х и у — граничные, обозначается символом и = [х, у]. Цепь — это последовательность ребер (ир и2, . . .), в которой у каждого ребра одна из граничных вершин является также граничной вершиной для u^-р а другая — граничной вершиной для ufe+P Цепь называется простой, если все ее ребра различны, и составной — в противном случае. Цикл — это конечная цепь, начинающаяся в некоторой вершине х и оканчивающаяся в той же вершине х; цикл называется простым, если все его ребра различны, и составным в противном случае; наконец, цикл, при обходе которого ни одна вершина не встречается дважды, называется элементарным. Граф связен, если любые две его различные вершины можно соединить цепью. Сильно связный граф связен, но обратное утверждение неверно. Обозначим через Са множество, состоящее из данной вершины а и всех тех вершин графа, которые могут быть соединены с ней цепью; компонента связности (или просто компонента) — это подграф, порожденный множеством типа Са. Приведем две очень простые теоремы. Теорема 1. Различные компоненты графа (X, Г) образуют разбиение множества Х\ то есть'. (1) Сй¥=0; (2) Са^Сь =>Са[\Сь = 0-, (3) U Са = Х- Так как а£Са, то (1) имеет место. Для доказательства (2) предположим, что Са()Сь=£ 0, и покажем, что тогда Са = Сь. Пусть вершина х может быть соединена цепями как с а, так и с Ь\ поэтому а можно соединить с Ь, т. е. Ь£Са. Значит, сь^са. Точно так же имеем Сас:Сь (из соображений симметрии), следовательно, Са = Сь. (3) справедливо потому, что *=> U U {«}=х а С X а е X откуда Теорема 2. Граф связен в том и только в том случае, если он состоит из единственной компоненты.
16 ГЛ. 1. ОСНОВНЫЕ ОПРЕДЕЛЕНИЯ Если граф имеет две различные компоненты Са и Сь, то он несвязен, ибо вершины а и b нельзя соединить цепью. Если граф несвязен, то найдутся две вершины а и Ь, которые невозможно соединить цепью, и, значит, Са и Сь будут различными компонентами. Замечание. Граф можно рассматривать либо с учетом, либо без учета ориентации его дуг; в первом случае мы имеем дело с понятиями дуги, пути, контура, сильной связности и т. д., во втором — с понятиями ребра, цепи, цикла, связности и т. д. В дальнейшем, когда для некоторого понятия, определяемого в терминах дуг графа, имеется параллельное понятие, определяемое в терминах ребер, мы часто будем образовывать второе из первого посредством добавления суффикса поид“ (например, „центр″ — „центроид″ и т. д.).
ГЛАВА 2 Предварительное изучение квазиупорядоченности Квазипорядок, определяемый графом В алгебре говорят, что отношение на множестве X есть квазипорядок, если имеют место (1) рефлексивность', х х (для всех х£Х\, (2) транзитивность', х^у, y^.z => x^z (х, у, z£X). Квазипорядки встречаются всюду: „целое число х делится на у“, „х — вещественное число, большее или равное у“, „х— ситуация, которую я предпочитаю или считаю равносильной ситуации у“, суть отношения квазипорядка. Введем на графе G = (X, Г) отношение следующим образом: для двух вершин х и у пишем если х = у или существует путь из х в у (иначе говоря, если у£Ух). Это отношение удовлетворяющее, очевидно, условиям (1) и (2), называется квазипорядком, определяемым графом G. Если х^у, то говорят, что вершина х предшествует вершине у. Отношение у х можно записать также в виде х″у^у и сказать, что вершина х следует за вершиной у. Если х≪^у и у^х, то пишем х = у и говорим, что вершина х эквивалентна вершине у; в этом случае х и у совпадают или лежат на одном и том же контуре. Читатель непосредственно проверит, что = является отношением эквивалентности, т. е. что имеют место (1) рефлексивность'. х==х\ (2) транзитивность'. х = у, y==z ==> x = Z', (3) симметрия'. х=у зф у=х. Если х^у, но не х=у, то пишем х≪^у и говорим, что вершина х строго предшествует вершине у; пишут также у > х и говорят, что вершина у строго следует за х. Вершина z, следующая за всеми вершинами некоторого множества В^.Х, называется мажорантой множества В\ это можно записать так: z^b (Ь£В).
18 ГЛ. 2. ПРЕДВАРИТЕЛЬНОЕ ИЗУЧЕНИЕ КВАЗИУПОРЯДОЧЕННОСТИ Если в В имеется элемент, который служит мажорантой В, то этот элемент называется наибольшим элементом множества В. Если b и bf— два наибольших элемента множества В, то b^b' и Ь' Ь, следовательно, b = bf, т. е. все наибольшие элементы одного и того же множества вершин графа эквивалентны. Аналогично минорантой В называется такая вершина z, для которой z^b (Ь£В). Миноранта В, принадлежащая В, называется наименьшим элементом множества В. Эти понятия, хорошо известные из алгебры, прежде всего позволяют легко характеризовать различные категории графов. Пример 1. Граф без контуров. Если (X Г) не содержит контуров, то определяемое им отношение обладает свойством х≪С_у, В этом случае говорят, что есть отношение порядка. Наоборот, если отношение определяемое графом, есть порядок, то граф не имеет контуров. В качестве примера рассмотрим множество X и некоторое семейство его подмножеств; назовем диаграммой Хассе семейства граф (?, вершинами которого служат различные множества семейства причем из F в F'идет дуга, если 1° 2° не существует такого множества F″^^, что Fc: clF″c. czF'. Квазипорядок, определяемый графом G, есть не что иное, как отношение cz; это отношение — порядок: G не содержит контуров. Было бы интересно выяснить при Х={1, 2, ..., /г}, сколько семейств допускает данную диаграмму Хассе; эта задача, называемая иногда проблемой Рейни (Rainey), не решена еще для п > 5. Пример 2. Транзитивный граф. Граф (X U) называется транзитивным, если х ≪ у (х, у) € и- Так, если вершины графа изображают людей, а дуги — иерархическое превосходство (например, старшинство), то граф— транзитивный. Пример 3. Тотальный граф. Отношение квазипорядка называется тотальным, когда для любой пары (х, у) имеет место или х≪1у, или у х; граф является тотальным, если связанный с ним квазипорядок — тотальный. Справедливо следующее утверждение: всякий сильно связный граф является тотальным.
ИНДУКТИВНЫЙ ГРАФ И БАЗЫ 19 Пример 4. Структурный граф и прадеревья. Рассмотрим отношение порядка определяемое графом (X Г) без контуров; если множество мажорант некоторого множества ВсХ имеет наименьший элемент с, то с называется верхней гранью множества В; отношение порядка называется структурным (сверху), если каждое множество В допускает верхнюю грань; в этом случае говорят, что граф (X, Г) является верхней структурой. Аналогично определяются понятия нижней грани и нижней Рис. 2— 1. структуры. Частным случаем структурного графа является так называемое прадерево1) с корнем а, например изображенное на рис. 2— 1. Прадеревья будут изучаться позднее (гл. 16). Индуктивный граф и базы Множество BczX называется базой графа (X Г), если оно удовлетворяет следующим двум условиям: (1) ЬХ£В, Ь2£В, bx=f=b2-=^> ни Ьг^Ь2, ни (2) х(^В^> существует такая вершина Ь£В, что Ь^х. Пример. Рассмотрим граф, изображенный на рис. 2— 2. Множество B=[bv Ь2, — его база; подграф же, порожденный множеством Х\В, не имеет базы. Понятие базы графа участвует в многочисленных конкретных задачах, относящихся к сетям коммуникаций, и мы увидим позднее (гл. 5 и 6), что оно применяется и в теории игр. Наконец, с его помощью можно получать чисто теоретические результаты 1 Мы переводим так термин arborescence. — Прим, перев.
20 ГЛ. 2. ПРЕДВАРИТЕЛЬНОЕ ИЗУЧЕНИЕ КВАЗИУПОРЯДОЧЕННОСТИ топологии или линейного анализа. Здесь мы собираемся только найти возможно более общие условия существования базы графа как в случае, когда он имеет конечное, так и в случае, когда он имеет бесконечное множество вершин. Граф называется индуктивным, если каждый его путь = [хр х2, . . .] допускает мажоранту, т. е. если для каждого р существует такая вершина z, что хп (п = 1, 2, 3, . . .), Пример 1. Всякий конечный граф является индуктивным, ибо если путь (х конечен, то мажорантой служит его последняя вершина, а если р. бесконечен, то по крайней мере одна из вершин этого пути повторяется бесконечно много раз и поэтому является его мажорантой. Пример 2. Напротив, граф, изображенный на рис. 2— 2, не является индуктивным. В некоторых вопросах (глава 5) понятие индуктивного графа оказывается недостаточным; говорят, что граф вполне индуктивен, если для каждого бесконечного пути |х=[х0, хр ...] отношение квазипорядка в подграфе, порожденном множеством вершин {х0, можно при достаточно больших номерах I и j представить в виде xt Xj. Пример. Для графа, изображенного на рис. 2— 3, имеем: (z>3, j>3), значит, он вполне индуктивен. Очевидно, вполне индуктивный граф индуктивен} кроме того, имеет место основное свойство: всякий подграф вполне индуктивного графа вполне индуктивен. (Для индуктивных графов аналогичного предложения нет.) Лемма Цорна. В индуктивном графе (X Г) для любой вершины х существует вершина z, не имеющая строго последующих1) и такая, что z^>x. !) Вершину, не имеющую строго последующих (строго предшествующих), называют еще максимальным (соответственно минимальным) элементом; его нельзя путать с наибольшим (соответственно наименьшим) элементом^. [2], гл. 1). — Прим, перев.
ИНДУКТИВНЫЙ ГРАФ И БАЗЫ 21 Это хорошо известный в теории множеств результат; для доказательства его мы отсылаем читателя к [2] (гл. I) или к Е. Т. F. М. (гл. 3). Теорема 1. Всякий индуктивный граф обладает базой1). Пусть Z — множество тех вершин, у которых нет строго последующих; рассмотрим в Z эквивалентность =, определяемую отношением квазипорядка (^ = z2, если zx и z2 принадлежат одному и тому же контуру). В каждом классе эквивалентности выберем некоторого представителя bt и покажем, что множество В = {bji £/} 2) является базой графа. 1° При не может быть bi^bj, так как в этом случае было бы bt = bj (вершина bt не имеет строго последующих), т. е. bt и bj принадлежали бы к одному классу эквивалентности (что невозможно, поскольку классы эквивалентности попарно не пересекаются). 2° Для х^В по лемме Цорна существует точка z0, не имеющая строго последующих и такая, что z0^> х; пусть bt— представитель класса эквивалентности CL= [zfz^Z, z = z0}; тогда х bit bt £ в. Теорема 2. Граф (X Г), обладающий конечной базой В, индуктивен. Пусть = [хр х2, ...] — бесконечный путь графа (если такой путь существует), и пусть bv b2, ...— те вершины базы В, для которых bn^xn при всех п; так как множество В конечно, то по крайней мере одна вершина bk встретится в последовательности (#л) бесконечно много раз; тогда ьъ>хп (»= 1. 2, ...) Ч. И Т. Д. Теорема 3. В множестве Z вершин, не имеющих строго последующих, рассмотрим классы эквивалентности [z/z£Z, z = zQ]‘, база В, если она существует, образована элементами, выбранными по одному из каждого класса эквивалентности. Если В — база, то вершина Ь^В не может иметь строго последующих; действительно, из х > b вытекало бы существование такого Ь' £В, что Ь'х и, значит, b'^>b, b'=^b, а это невозможно, так как В — база. Хотя бы одна вершина из базы В принадлежит классу {z{z £ Z, z = Zq}, так как в противном случае не существовало бы пути, ведущего из zQ в В. ’) Можно, между прочим, показать, что это предложение равносильно лемме Цорна; поэтому его прямое доказательство было бы длинным и трудным. 2) I означает множество {/} индексов всех классов Q. — Прим, перев.
22 ГЛ. 2. ПРЕДВАРИТЕЛЬНОЕ ИЗУЧЕНИЕ КВАЗИУПОРЯДОЧЕННОСТИ Два различных элемента b и Ь' £ В не могут принадлежать одному и тому же классу эквивалентности, ибо иначе было бы b = b' и существовал бы путь, ведущий из одной точки В в другую точку В. Следствие. Если граф обладает базой, то все его базы имеют одну и ту же мощность] в частности, все базы конечного графа (который, будучи индуктивным, всегда обладает базой) имеют одно и то же число элементов. Это вытекает из того, что классы эквивалентности, о которых идет речь в теореме 3, образуют разбиение множества Z.
ГЛАВА 3 Порядковая функция и функция Гранди для бесконечного графа Общие соображения относительно бесконечных графов Если А — конечное множество, то через |4| будем обозначать число его элементов. Если А содержит бесконечно много элементов, то полагаем |Л|=оо. Граф (X Г) называется конечным, если ]Х|≪оо. Граф Г-яо- нечен, если |Гх| ≪ оо для всех х, и -конечен, если |Г-1 х | ≪ оо для всех х; граф, обладающий этими двумя свойствами одновременно, называется локально конечным. Очевидно, всякий конечный граф локально конечен. Наконец, граф называется V-ограниченным, если существует такое целое число т, что | Гх | т при всех х. Пример. Граф, изображенный на рис. 3— 1, Г-конечен, но не является Г-ограниченным; он не является также Г-1-конечным. Если в графе не существует путей бесконечной длины, начинающихся в данной вершине х0, то говорят, что этот граф прогрессивно конечен в х0; граф, прогрессивно конечный в каждой своей точке, называется прогрессивно конечным. Граф называется прогрессивно ограниченным в вершине х0, если существует такое целое число т, что длина каждого пути, начинающегося в х0, не превосходит т\ граф, прогрессивно ограниченный в каждой своей точке, прогрессивно ограничен. Прогрессивно ограниченный граф является в то же время прогрессивно конечным, но обратное неверно.
24 ГЛ 3. ПОРЯДКОВАЯ ФУНКЦИЯ и ФУНКЦИЯ ГРАНДИ Наконец, говорят, что граф (X, Г) регрессивно конечен, соответственно регрессивно ограничен, если граф (Х, Г-1) прогрессивно конечен, соответственно прогрессивно ограничен. Пример. Граф, изображенный на рис. 3— 1, прогрессивно конечен» но не является регрессивно конечным; он прогрессивно ограничен, хотя и содержит сколь угодно длинные пути. В этом параграфе мы намереваемся установить весьма общие теоремы, которые впоследствии позволят распространять утверждения о конечных графах на некоторые бесконечные графы. Важность этой задачи очевидна: если в психологии или исследовании операций имеют дело с конечными графами, то в геометрии и теории множеств, напротив, приходится сталкиваться главным образом с бесконечными графами. Теорема 1. Для конечных графов свойства „прогрессивно ограниченный11, „прогрессивно конечный'1 и „без контуров″ равносильны. (Очевидно.) Теорема 2. Если граф (X, Г) прогрессивно конечен и У-ко- нечен, то | Гат | ≪ оо (х £ X). В самом деле, допустим, что в некоторой вершине х0 имеет место |Гх0|=ос; так как |Гх0| ≪ оо, то в Гх0 найдется хотя бы одна такая вершина хр что | | =оо; точно так же в найдется вершина х2, для которой |Гх2| =оо; и т. д. Путь [х0, хР . . ., хп, . . .] имеет бесконечную длину, что противоречит условию теоремы. Следствие 1. Граф (X, Г), прогрессивно конечный в некоторой вершине xQ и Г-конечный, является также прогрессивно ограниченным в х0. В самом деле, подграф, порождаемый множеством Гх0, прогрессивно конечен, а значит, в силу теоремы 2, конечен; так как, кроме того, он не содержит контуров, то он прогрессивно ограничен (теорема 1). Следовательно, граф (X Г) прогрессивно ограничен в х0. Следствие 2 (Кёниг). Пусть (Лр А2, . . .) — последовательность конечных непустых попарно непересекающихся множеств, и пусть -≪— отношение, определенное для элементов двух последовательных множеств Ап\ если для любого элемента хп^Ап существует такой элемент xn^^An_v что хп_1-≪х11, то суще-
БЕСКОНЕЧНЫЕ ГРАФЫ 25 ствует такая последовательность (яр а2, ...), где ап£Ап пРи всех п, что а2 4Z3 -≪ . . . -≪ап-≪ . . . . Пусть X— объединение всех множеств Ап, к которому добавлена произвольная точка х0; определим на X отображение Г следующим образом: Гх0 = Лр Гх„= {х/х^Ап+1, хп^х} (хп£Ап). Граф (X, Г) Г-конечен; он не является прогрессивно ограниченным, ибо для любого т легко построить путь длины т, беря некоторую точку ат в Ат, затем ат_г в Ат_х с условием ат_1 -≪ ат и т. д. Ввиду следствия 1 граф не является прогрессивно конечным в х0, поэтому существует бесконечный путь [х0, ах, а2, ...]; последовательность (#р а2, . . .) удовлетворяет требуемому условию. Теорема 3. Множества вершин и цепей локально конечного связного графа можно перенумеровать. Выберем произвольно вершину х0; пронумеруем цепи длины 1, выходящие из xQ, и их крайние вершины, затем станем нумеровать цепи длины 2 и их крайние вершины (те, которые еще не получили номеров) и т. д. Поскольку до любой вершины можно добраться по цепи, выходящей из х0, все множество X и множество цепей, идущих из х0, окажутся пронумерованными1). Теорема Радо [5]. Пусть (X, Г) — локально конечный граф, Fo — некоторое конечное множество целых чисел', каждому /czE0 поставим в соответствие некоторое f(/)czE0. Если для каждого конечного подграфа (А, ГА) существует целозначная функция срл(х), удовлетворяющая условию ?д (*) € Е [?Д (Глх)] (X С А), то на X существует целозначная функция ср (ат), такая, что ср (х) £ Е [ср (Гх)] (х£Х). По определению, ср (Гл:) означает множество / — {ср (у)/у £ Гх}2). !) А так как множество всех цепей, выходящих из х0, и множество X всех оба счетны, то и множество всех вообще цепей можно перенумеровать.— Прим, перев. 2) В оригинале £0 отсутствует, а / и Е (/) просто предполагаются конечными; но в такой формулировке теорема неверна. — Прим, перев.
26 ГЛ. 3. ПОРЯДКОВАЯ ФУНКЦИЯ и ФУНКЦИЯ ГРАНДИ Пусть Ло— конечное подмножество X; будем последовательно составлять множества Аг =ЛоиГЛоиГ″1Ло> Множества Ап конечны и образуют расширяющуюся последовательность; кроме того, граф можно предполагать связным (иначе бы мы стали рассматривать каждую компоненту отдельно) и считать ПОЭТОМУ, ЧТО оо a-Ua,. /2 = 0 Обозначим более кратко через уп=уд функцию, соответствующую конечному множеству Ап', ее усечение на множестве Ло (т. е. функцию, заданную только на Ло и совпадающую там с срл) обозначим через ср®. Среди функций ср® (для всевозможных п) имеется только конечное число различных. Отсюда следует, что ср® остается одной и той же для бесконечного множества значений п, скажем для ^0 ≪ ≪ ^2 ≪ • • • • Обозначим через ср^ усечение функции срЛ на множестве Af, по п указанной выше причине эти усечения ср^ одинаковы для бесконечного множества значений п, скажем, для ≪ ^2 ≪^з ≪ • • • • Обозначим через ср^ усечение функции cpz на множестве Л2, и т. д. Функции ср®, ср|, ср2} ... определены соответственно на множествах Ло, Лр Л2, ..., и если p>q, то ?Р(Х) = ^(Х) (х^Л^. Отсюда следует, что для каждого х £ X величина у* (х) при неограниченном возрастании п стремится к некоторому пределу ср(х) и тем самым определяется функция ср на X. Для любой вершины х0 существует такой номер /г, что Лл=э {х0} U Гх0, причем (X) = ≪f> (х) (X £ А„). Следовательно, ч. и т. д.
ПОРЯДКОВАЯ ФУНКЦИЯ 27 Порядковая функция Хорошо известным обобщением понятия целого числа служит понятие порядкового числа\ напомним его. В строчке (хр х2, ...» х12) из 12 объектов место объекта х6 указывается символом 6. Допустим теперь, что собрание объектов хр х2, ... бесконечно и что эти объекты расположены в некотором порядке, скажем (х4, х5, Xq, . . .; Хр х2, х3). Если места объектов х4, х5, х6, ... можно определить обычными целыми числами, то для определения мест объектов хр х2, х3 потребуется ввести новые символы: со — 1 для хр со — |— 2 для х2, о)-|-3 для х3. Символы 1, 2, ..., соЦ-1, и)-ф-2, со — 3 называются порядковыми числами первого рода (или непредельными порядковыми числами), а символ со, не определяющий никакого места, — порядковым числом второго рода (или предельным порядковым числом). Эти определения можно продолжать и дальше; например, при порядке (х3, х5, х7, х9, . . .; х2, х4, хб, х8, . . .; место объекта х8 будет со— |— 4, место х} будет со2 — |— 1. Для двух порядковых чисел аир считают, что а ≪ (3, если объект, место которого указывается символом а, предшествует объекту, место которого указывается символом [3. Разумеется, порядковые числа можно определить строго при помощи алгебраических понятий J). В теории графов понятие порядкового числа имеет большое значение, так как оно позволяет переносить предложения о конечных графах на некоторые бесконечные графы. Э Пара, образованная множеством X и отношением порядка С, есть вполне упорядоченное множество, если любое подмножество множества X имеет наименьший элемент. Два вполне упорядоченных множества (X, и (Y, называются эквивалентными, если между X и Y можно установить взаимно однозначное соответствие а, при котором х ≪ х' А - Ч ъх ≪ ах'. Порядковое число будет тогда классом эквивалентности, содержащим данное вполне упорядоченное множество. Запомним лишь результат: сами порядковые числа вполне упорядочены отношением (См., например, [1] (гл. I).) (См. также П. С. Александров, Введение в общую теорию множеств и функций, М.— Л.л 1948, или Ф. Хаусдорф, Теория множеств, М,— Л7 1937. — Прим. ред.).
28 ГЛ. 3. ПОРЯДКОВАЯ ФУНКЦИЯ и ФУНКЦИЯ ГРАНДИ Для заданного графа G = (X, Г) рассмотрим множества: Х(0)= [х/Тх — 0}, Х(1) = (х/ГхсАЧО)}, Х(2)= {х[Гха:Х(Т)}, X(k) = {х/ГхаХ(к — 1)}, %(«) = J Х(ь), JV(cd -|— 1) = [х/ГхаХ(со)}, Ясно, что эти определения можно продолжать неограниченно: если а — порядковое число первого рода, то полагаем Х(а)= {х/Гхс=Х(а— 1)}, а если а — порядковое число второго рода, полагаем Х(а) = J %(₽). 3≪а Заметим, что если два порядковых числа а и р удовлетворяют условию а ≪ р, то X(a)cz АДР). Порядком вершины х называется наименьшее порядковое число а, для которого х£Х(а), х(£Х($) при всех р ≪ а. Полагаем тогда а — о (х); разумеется, некоторые вершины могут не иметь порядка: к таким относятся, например, все вершины контура. Функция о(х), определенная, вообще говоря, не на всем X, называется порядковой функцией графа. Рис. 3— 2. Пример. У графа, изображенного на рис. 3— 2, каждая вершина х имеет порядок о (х), который указан на чертеже; лишь одна вершина у имеет трансфинитный порядок. Здесь Х= Х(& -J- 1).
ФУНКЦИИ ГРАНДИ 29 Теорема 4. Порядковая функция определена на всем множестве X в том и только в том случае, если граф (X, Г) прогрессивно конечен. 1° Пусть о (х) существует для всех х£Х; покажем, что граф прогрессивно конечен. С этой целью мы допустим, что существует бесконечный путь [ах, а2, . . и убедимся в том, что это приводит к противоречию. Положим А = {ар а2, . . .}; имеем A Q Х(0) = 0. Если A nA″(P)= 0 для всех порядковых чисел р ≪ а, то также А(]Х(а)=0. Тогда, в силу принципа индукции, А(]Х— 0. Отсюда А=0, что невозможно. 2° Наоборот, предположим, что существует вершина х, не имеющая порядка; пусть В— множество всех таких вершин. Имеем В^=0. Если хх£В, тоГх1^=0 [ибо хг (£Х(0)], поэтому в найдется вершина х2 £ В; точно так же в Гх2 найдется вершина х3£В, и т. д. Путь [Хр х2, х3, ...] обладает бесконечной длиной, и граф не может быть прогрессивно конечным. Функции Гранди Рассмотрим конечный граф (X, Г) и функцию g, относящую каждой вершине х целое число g(x)^>0. Будем говорить, что g(x) есть функция Гранди для данного графа, если в каждой вершине х значение g(x) представляет собой наименьшее из тех целых неотрицательных чисел, которые не принадлежат множеству £(Гх)= {£(у)/у£Гх}. Пользуясь трансфинитными порядковыми числами, можно определить функцию Гранди в случае бесконечного графа: g(x) есть наименьшее порядковое число, не принадлежащее множеству {ё(У)1у£Гх}. Изопределения следует, что еслиГх=0, то необходимо g(x) = 0. Граф может не допускать функции Гранди (например, если у него есть петля) или же допускать более одной такой функции. Пример 1. Граф, изображенный на рис. 3 — 3, допускает две функции Гранди, значения которых указаны около соответствующих
30 ГЛ. 3. ПОРЯДКОВАЯ ФУНКЦИЯ и ФУНКЦИЯ ГРАНДИ вершин; можно убедиться, что если Гх={ур у2, то g(x) — наименьшее целое число, отличное от g (ут), g (у2), .... Пример 2. Граф, изображенный на рис. 3— 2, допускает единственную функцию Гранди g(x); эта функция при х^у равна о (х), а в вершине у принимает трансфинитное значение со. Теорема 5. Прогрессивно конечный граф допускает одну и только одну функцию Гранди g (х); при этом g (х)≪0 (х). Доказательство получается непосредственно, если провести индукцию по множествам Х(О)=(х/Гх=0}, Х(1)= |х/Гхс/(0)(, Х(2)= {х/Гх≪=Х(1)}, Теорема 6. Если |Гх| ≪ оо, то g (х) |Гх |. Если g(x) = n, то функция g принимает в Гх все значения 0, 1, 2, ..., п— 1, поэтому |Гх| n = g (х). Теоремы 5 и 6 показывают, что функция g (х) не слишком охотно принимает большие значения; в частности, для Г-конеч- ного или для прогрессивно ограниченного графа значения g (х) остаются конечными числами. Операции над графами Рассмотрим п графов Gj == (Хр Г^, G2 = (Х2, Г2), . . ., Gn = (Xn, Гл), а также граф G = (X, Г), определяемый следующим образом: (1) Х=Хг X *2 X • • • X {(хр х2 . хп)/х1^Х1 и т. д.} (декартово произведение множеств Xz), (2) Г (Хр х2 . х„) = FjXj X Г2х2 X • • • X Г„х„. Этот граф обозначается символом G = Gj X G2 X • • • X Gn и называется произведением графов Gt. Подобным же образом сумма графов Gz, по определению, есть граф (X, Г), для которого (1) х=х1хх2х ... Х^ (2) Г (Хр х2, . . ., хл) = [FjXj X {^2} X • • • ] U U [{^1} X Г2х2 X • • • ] U ••• U [{^1} X {х2] X ••• X Глхл]. Этот граф обозначается символом G = G1-|-G2-]- ... +GZZ. Операции X и +> как они здесь определены, хорошо известны в теории игр; они встречаются и во многих других областях, имеющих отношение к теории графов.
ОПЕРАЦИИ НАД ГРАФАМИ 31 Пример. Каждая из двух машин может находиться в определенном числе состояний. Множество состояний первой машины обозначим через zYp если состояние Xi может следовать за состоянием хр то полагаем Xi^TiXi. Тем самым определен граф G1 = (X1, 1\); точно так же определяется граф G2 = (X2, Г2) для второй машины. Оператор, который может использовать любую из этих двух машин, запишет в виде (хр х2) ситуацию, когда первая машина находится в состоянии хр а вторая — в состоянии х2. Если оператор приведет в действие обе машины одновременно, то граф ситуаций будет Gj X ^2- Если же оператор станет каждый раз приводить в действие только одну из машин, то граф ситуаций будет + + ≪+ Сохраняют ли операции над графами свойство допускать функцию Гранди? Прежде чем подойти к этому вопросу, мы должны ввести понятие d-суммы порядковых чисел; сначала вспомним, что двоичным разложением целого числа с называется такая строчка (с1, с2, . . ., ck) чисел с1 (которые могут быть только нулями или единицами), что с = с1 Ц-2с2 Ц-4с3 Ц- ••• Короче пишут с = ckck~1 . . . с2ст. Эта двоичная запись образуется по тому же принципу, что и десятичная, и легко установить соответствие: десятичная двоичная двоичное десятичная двоичная двоичное запись запись разложение запись запись разложение 0 0 (0) 6 ПО (0,1,1) 1 1 (1) 7 111 (1, 1, 1) 2 10 (0.1) 8 1000 (0, 0, 0,1) 3 11 (1.1) 9 1001 (1.0, 0,1) 4 100 (0,0,1) 10 1010 (0,1,0,1) 5 101 (1,0,1) 11 1011 (1.1,0,1) В арифметике [лг](2)> или Пп по модулю 2“, означает остаток (равный нулю или единице) от деления п на 2. По определению, d-сумма (подробно: поразрядная двоичная сумма по модулю два) целых чисел ср с2, ..., сп есть целое число c = c1-j-c2-]- ... -\-сп, которое получится, если произвести двоичные разложения ck = (c\, cl, . . .) и положить Так, с = (2) п 2 4 _ Л = 1 п ″I 2 4 Lft = l J (2) 3 -j-7 — (1.1)+ (1.1.1) = (0,0,1) = 4, 1 + 3+ 11 = (l)-i-(l, 1) + (1, 1,0, 1) = (1,О,.О. 1) = 9 и т. д.
32 ГЛ. 3. ПОРЯДКОВАЯ ФУНКЦИЯ И ФУНКЦИЯ ГРАНДИ Эти понятия без труда переносятся на трансфинитные порядковые числа; например, двоичное разложение порядкового числа ос = ≪в24 4“ + ≪оЗ + 7 есть вполне упорядоченное множество (с1, с2, ... ..., сш+1, сш+2> . . .) чисел, равных нулю или единице, которое образуется следующим образом: первая последовательность (от с1 до сш+1) есть двоичное разложение числа 7, за которым идет бесконечное множество нулей; вторая последовательность (от до с2ш+1) есть двоичное разложение числа 3 с последующим бесконечным множеством нулей; третья последовательность есть двоичное разложение числа 4 (дальнейшие члены, все равные нулю, не пишутся); итак аг24+о)3 + 7 = (1, 1, 1, 0, 0, .. .; 1, 1, 0, 0, . . .; О, 0, 1). d-сумма порядковых чисел образуется, как и в случае конечных чисел, сложением по модулю 2 членов, стоящих на одноименных местах; заметим, что d-сумма трансфинитных порядковых чисел легко получается с помощью таблицы d-сложения конечных чисел; например: (0)3 Н- 1) 4- (и)7 4-3) 4- 11 = ≪°(3 + 7) +(1 4-3+ И) = 0)4 4-9. Теорема 7. d-сумма + обладает следующими свойствами', (1) ассоциативность (а + Р) + у = ос + (Р + у); (2) существование нейтрального элемента 0, для которого ос + 0 z== ос; (3) существование для любого а противоположного элемента — а, удовлетворяющего условию ос + (— ос) = О; (4) коммутативность а-|- р = р + ос; (на языке алгебры первые три свойства выражают тот факт, что порядковые числа образуют группу относительно операции d-сло- жения, а четвертое — что эта группа абелева). (Непосредственно.) Следствие. Для любых двух порядковых чисел а и р существует такое порядковое число х, притом единственное, что ос — |— х — р. Это хорошо известное свойство групп; достаточно положить х = (— а) + р = р — а. Теорема 8. Если графы Ор 02, ..., Qn допускают соответственно функции Гранди gv g2, ..., gn, то граф G = (71 + + G2+ ••• +Qn также допускает функцию Гранди g, значение которой в вершине х = (хр х2, ...» хп) выражается d-суммой} g (•*!- х2 . хп) = g^Xj 4- g-2 (Х2) 4- . • • 4- gn (хп)>
ОПЕРАЦИИ НАД ГРАФАМИ 33 Покажем, что функция g(x). определенная таким образом на множестве X = Х} X X ••• Х^, есть функция Гранди для суммы G = (А', Г). 1° Для любого порядкового числа P≪g(x) в Гх существует такая вершина у, что g(y) = $. В самом деле, рассмотрим двоичные разложения: £*(**) = (ci’ g(x) = (c1, с2, ...), где сг [В = (Р1, р2, ...), где ₽ ≪ g(x). Пусть г — наибольшее порядковое число, для которого рг =£ сг [такое есть, поскольку р =# g (х)2) ]; ввиду того что р ≪ g (х), имеем Значит, среди чисел crv cTv ... , с’п имеется хотя бы одно, равное единице; например, пусть cj=l. Положим ( если р5 = cs\ ds = \ r IK+Mw’ если ₽■*=/=≪/. В Г1х1 существует такая вершина ур что £'1(У1) = (^1’ • • •)> и мы имеем £(Ур х2, xs . хл) = 5'1(У1) + ?2(х2)-|-... + £„(•*„) = ₽• 2° В множестве Гх нет такого у, для которого было бы g(y)=g(x)- В самом деле, рассмотрим вершину у = (ур х2, х3, .... хл), где у1^Г1хр и положим «■1(У1) = (^. ^2. •••)• Так как ^(yj ¥= gx (а^), то dr =# с\ для некоторого порядкового числа г и + с2 + ^3 + ••• -ЬС«](2) [С1 + С2 + ••• 4-с„](2)- Следовательно, g (у) =/= g (х). Этот результат, дающий правило вычисления функции Гранди для суммы графов, будет играть фундаментальную роль в последующих главах. ’) И поскольку в двоичное разложение любого порядкового числа входит лишь конечное число единиц. — Прим. ред>
ГЛАВА 4 Основные числа теории графов Цикломатическое число Понятие, которое мы собираемся здесь ввести, не зависит от „ориентации″. Для большей общности введем в рассмотрение не просто графы, а мулыпиграфы\ по определению, мультиграф (X, U) — это пара, образованная множеством X вершин и множеством U ребер, соединяющих некоторые пары вершин; в противоположность обычным графам у мультиграфа одна и та же пара вершин может соединяться более чем одним ребром. Во многих задачах удобно вместо обычных графов рассматривать мультиграфы. Пример (химия). Молекула представляется мультиграфом, вер- шины которого обозначены символами таблицы Менделеева (Пойа [4] применил теорию графов к органической химии для подсчета числа изомеров химических соединений). Говорят также, что этилен является 2-графом, ацетилен — 3-графом) и т. д. (см. рис. 4— 1). Этилен Н— С=С— Н Ацетилен Рис. 4— 1. Рассмотрим мультиграф Gen вершинами, т ребрами, р компонентами связности. Положим р(О) = к — р, v (G) ~ т — р (О) — т — п -|- р; v(G) называется цикло матическим числом мультиграфа G. Его свойства играют важную рольх). !) Дипломатическим числом графа называется цикломатическое число того 2-графа, который получится, если каждую дугу заменить ребром. — Прим, перев.
ЦИКЛОМАТИЧЕСКОЕ ЧИСЛО 35 Теорема 1. Пусть G' — мультиграф, полученный из мультиграфа G добавлением нового ребра между вершинами а и Ь; если а и b совпадают или могут быть соединены цепью в G, то p(G') = p(G), v(G') = v(G)+1; в противном случае Р (О') = Р (О) Н-1 > v(G') = v(G). (Непосредственно.) Следствие, р (G) 0, v(G)^0. В самом деле, для графа, образованного всеми вершинами G, но без ребер, имеем р = 0, v = 0. Каждое добавление ребра либо увеличивает р, не меняя v, либо увеличивает v, не меняя р; таким образом, в процессе построения графа G числа р и v могут только возрастать. Для дальнейшего удобно следующим образом отождествлять циклы мультиграфа с векторами: придадим каждому ребру мультиграфа G произвольную ориентацию; если цикл р проходит через ребро xxk в направлении его ориентации rk раз и в противоположном направлении sk раз, то полагаем ck = rk — sk. Вектор (с1, с2, . . ., ck, . . ., ст) /n-мерного пространства R™ будем называть вектором-циклом, соответствующим циклу ji, и обозначать через а (или опять через [1, если это не может привести к недоразумению). Циклы |i, р/, p/z, . . . называются независимыми, если соответствующие им векторы линейно независимы!). Отметим, что это свойство не зависит от выбора ориентации ребер. !) Напомним некоторые классические определения линейной алгебры. Если с = (с1, с2, ... , ст) и d = (d\ d2, ..dm) — два вектора из R^, a a£R, то полагаем аС = (ас1, ас2, аст), — С = (— С1, — С2, . .., — Ст), с + d = (с1 + d\ с2 + d2t ..., ст + dm), 0 = (0, 0, 0). Множество £czRm представляет собой векторное подпространство, если а С R, с С Е => ас С £, с, dC£=^>c-]-dC£. Говорят, что векторы ср с2, ...» Q из Rm линейно независимы, если aiCi+a2C2+ ... + а^ = 0 =z> aj = а2 = ... = ak = 0. Напротив, когда для некоторых чисел aif не равных одновременно нулю, aiCi+a2c2+ ••• + akck= говорят, что данные векторы линейно
36 ГЛ. 4. ОСНОВНЫЕ ЧИСЛА ТЕОРИИ ГРАФОВ Имеет место Теорема 2. Цикломатическое число v(G) мулыпиграфа G равно наибольшему количеству независимых циклов. Действительно, возьмем граф без ребер, образованный всеми вершинами G, и, добавляя к нему ребро за ребром, построим данный мультиграф G. В силу теоремы 1, цикломатическое число увеличивается на единицу, когда добавление ребра приводит к образованию новых циклов, и не меняется в противоположном случае. Допустим, что перед добавлением ребра уже имелась база, состоящая из независимых циклов рьр рь2, и что добавление повлекло за собой возникновение циклов vp v2, .... Среди новых циклов наверняка имеются простые; пусть, например, — простой, у* = 1. Очевидно, не может линейно выражаться через рьг- (ибо р* = р* = . . . = 0). С другой стороны, v2 (и аналогично v3, . . .) можно линейно выразить через vp jip |i2, . . . : в самохм деле, вектор v2 — соответствует некоторому циклу, не содержащему tnk (этот цикл получается из v2 заменой ребра uk оставшейся частью v1 с измененным направлением обхода), и, значит, линейно выражается через jjlp ji2 . Таким образом, каждый шаг, увеличивающий на единицу цикломатическое число, в то же время увеличивает на единицу наибольшее количество независимых циклов. Теорема доказана. Следствие 1. Граф G не имеет циклов тогда и только тогда, когда v(G) = 0. Следствие 2. Граф G имеет один единственный цикл тогда и только тогда, когда v(G)=l. Теорема 3. В сильно связном графе цикломатическое число равно наибольшему количеству независимых контуров. В самом деле, рассмотрим 2-граф, получающийся заменой дуг данного графа G ребрами, и элементарный цикл рь; вершины, встречающиеся в цикле [л, можно распределить по следующим множествам: множество S точек, обладающих тем свойством, что одна из дуг [1 исходит из точки, а другая заходит в нее; множество S' зависимы. Если =^= 0, то можно также написать а2 . I а/г С1 = -^-с2+ ... ai ai в этом случае говорят, что Cj линейно выражается через с2, с3, ..., ck. База векторного подпространства Е есть такое множество векторов {еь е2, е^} из Е, что каждый вектор подпространства Е линейно выражается через векторы ez; наименьшее из чисел k называется размерностью подпространства Е. В E = Rm одна из баз образуется векторами (1, 0, 0, ..., 0), е2 = (0, 1, 0, ..0), ,.ет = (0, 0, 0, ..., 1).
ХРОМАТИЧЕСКОЕ ЧИСЛО 37 точек, из которых исходит по две дуги |л; множество S″ точек, в которые заходит по две дуги [i (см. рис. 4 — 2). Так как количество конечных точек равно количеству начальных, то |SZ| = |SZZ|; итак, пусть xz, xz, ..., xz— элементы S', а х″, х″г, ..., x”k — элементы S''. s″ Рис. 4— 2. В цикле (1 элементы S' чередуются с элементами S″, и мы предположим нумерацию вершин такой, что первая вершина после х'., не принадлежащая S, есть хТ; наконец, если р0 — путь, в котором вершина х встречается раньше вершины у, то обозначим через |i0 [х, у] частичный путь из х в у. Поскольку граф сильно связен, существует контур fiz, проходящий через х'+1 и х″ и содержащий дуги р- на пути от х'+1 к х″. Цикл [1 является линейной комбинацией контуров, ибо можно написать х″] — И1[х'2, х[]+р.[х', ... = = |х[Хр [х″, х'] +[х', x'^ + ^fx'', х']+ ... • • • — (р-1 4~p-2 + • • •)• Значит, каждый элементарный цикл есть линейная комбинация контуров, и то же справедливо для произвольного цикла (поскольку он является линейной комбинацией элементарных). В R72 контуры образуют базу векторного подпространства, порожденного циклами, и в силу теоремы 2 эта база имеет размерность v (G); поэтому наибольшее число независимых контуров равно v(G). Хроматическое число Пусть дано натуральное число р; говорят, что граф G является р-хроматическим, если его вершины можно раскрасить р различными цветами таким образом, чтобы никакие две смежные вершины
38 ГЛ. 4. ОСНОВНЫЕ ЧИСЛА ТЕОРИИ ГРАФОВ не были окрашены одинаково. Наименьшее число р, при котором граф G является р-хроматическим, называется хроматическим числом этого графа и обозначается символом у (G). Пример. Географическая карта. Нарисуем на плоскости карту, содержащую множество X стран, и положим (х, у) £ U, если страны х и у граничат между собой. Рис. 4— 3. 4-хроматическая карта (выбор цветов 0, 1, 2, 3 соответствует значениям некоторой функции Грднди для симметрического плоского графа, изображенного жирными линиями; вершины цвета „О″ образуют наибольшее множество, которое можно закрасить в один цвет). Граф (X, U)— симметрический и обладает к тому же весьма примечательным свойством: его можно начертить на плоскости так, чтобы никакие два ребра не пересекались (в точках, отличных от граничных). Такие графы называются плоскими. Известно, что хроматическое число плоского графа никогда не превышает 5 (см. гл. 21); таким образом, пяти красок достаточно для раскрашивания карты (плоской), при котором никакие две соседние страны не окрашиваются в один и тот же цвет. Хроматическим классом графа называется натуральное число q, обладающее следующими свойствами:
ХРОМАТИЧЕСКОЕ ЧИСЛО 39 1° каждое ребро графа можно окрасить в какой-нибудь из q цветов таким образом, чтобы никакие два смежных ребра не были окрашены одинаково; 2° это невозможно сделать с помощью только q — 1 цветов. Хроматический класс графа (X U) совпадает с хроматическим числом графа (U, Г), определяемого следующим образом: вершинами его служат ребра исходного графа, и if £Ги, когда ребра и и if исходного графа смежны (см. рис. 4 — 4). Таким образом, задача определения хроматического класса сводится к изучению хроматического числа. Приводим несколько основных результатов, относящихся к хроматическим числам. Теорема Кёнига. Граф является б ахроматическим (т. е. имеет хроматическое число 2) в том и только в том случае, если он не содержит циклов нечетной длины. (1) Рассмотрим граф (X U) без нечетных циклов и покажем, что он — бихроматический. Граф можно предполагать связным (в противном случае мы рассмотрели бы все его компоненты связности отдельно). Будем последовательно раскрашивать вершины по следующему правилу: Г произвольную вершину а окрашиваем в синий цвет; 2° если вершина х уже оказалась синей, то все смежные с ней вершины окрашиваем в красный цвет; если вершина у — красная, то все смежные с ней окрашиваем в синий цвет. Так как граф связен, каждая его вершина рано или поздно окажется окрашенной, приче.м никакая вершина х не будет одновременно синей и красной, ибо иначе х и а находились бы на одном цикле нечетной длины. Следовательно, граф — бихроматический. (2) Если граф — бихроматический, то он, очевидно, не содержит циклов нечетной длины, ибо вершины такого цикла невозможно окрасить двумя цветами в соответствии с указанным требованием. Замечание. Свойство: (1) Граф Q не имеет циклов нечетной длины равносильно свойству:
40 ГЛ. 4. ОСНОВНЫЕ ЧИСЛА ТЕОРИИ ГРАФОВ (2) граф G не имеет элементарных циклов нечетной длины. Непосредственно ясно, что (1) z=> (2); для доказательства того, что (2)зф(1), допустим, что существует цикл [i = [х0, хр ..., хр = х0] нечетной длины р. Каждый раз, когда имеются такие две вершины Xj и xk, что j k ≪ р и Xj = xk, цикл можно разбить на два частичных цикла ji [Ху, хД и р [х0, Ху]+|х[хл, х0], причем ровно один из этих двух циклов имеет нечетную длину. Ясно, что если продолжать таким же образом разбивать цикл р, пока это возможно, то всякий раз будет оставаться в точности один цикл нечетной длины; дойдя в конце концов до элементарных циклов, мы получим противоречие с (2). Эти результаты позволяют легко распознавать бихроматические графы; что же касается других графов, то для них графические методы определения хроматического числа неизвестны. Отметим, однако, что во многих случаях благодаря следующей теореме действенным орудием оказывается понятие функции Гранди. Теорема 4. Пусть G — симметрический граф. Чтобы граф G был р-хроматическим, необходимо и достаточно, чтобы он допускал функцию Гранди g'(x), для которой maxg(x) р— 1. х£Х 1° Если такая функция g (*х) существует, то граф G является р-хроматическим: в самом деле, достаточно числам 0, 1, .... р— 1 поставить в соответствие различные цвета и окрасить каждую вершину х в тот цвет, который отвечает числу g(x). 2° Предположим, что граф р-хроматический, и докажем, что на G существует функция Гранди, значения которой не превышают р — 1. Пусть So, S1 . Sp-1 — множества вершин с одинаковыми цветами. Присоединим к So все вершины из SP не смежные ни с одной из вершин 50. Далее присоединим к So все вершины из S2, не смежные ни с одной из вершин So и вершин Sp ранее присоединенных к So. Затем последовательно поступим подобным же образом с множествами S3, . ..,S Р В результате получим множество S0=)S0. Пополняя подобным же образом множество не смежными с ним вершинами из S2\S0, а затем из S3\S0 и т. д., получим множество SP Аналогично определяем множество S2, затем S3 и т. д. Функция g(x), равная k при х£5й, есть функция Гранди для графа G, что и требовалось. Указания для нахождения хроматического числа. Рассмотрим граф Gen вершинами и т ребрами; для нахождения его хрома-
ХРОМАТИЧЕСКОЕ ЧИСЛО 41 тического числа можно воспользоваться эмпирическим способом, весьма простым, непосредственно применимым, но не всегда эффективным; можно использовать и аналитический метод, который систематически дает решение, но требует, вообще говоря, применения электронной вычислительной машины !). Эмпирический способ состоит в том, чтобы, отправляясь от произвольной раскраски цветами 1, 2, ..., р, стараться постепенно исключить какой-либо из этих цветов (который объявляется „критическим цветом″). Для этого рассмотрим вершину х, имеющую этот критический цвет, и компоненты связности C{kt С%!г, . . . подграфа, порожденного вершинами двух некритических цветов J и k. Если множества С^^ПГх, C{k П Гх и т. д. не являются двухцветными, то имеется возможность сразу изменить цвет вершины х: берем отдельно каждую компоненту для которой все вершины CJk П Гх имеют цвет J, затем меняем ролями в этой компоненте цвета j и k (не меняя цветов других вершин) и, наконец, окрашиваем краской J вершину х (теперь уже не смежную ни с какой вершиной цвета у). Аналитический метод проверки возможности раскрашивания графа G посредством р цветов состоит в следующем. Каждому раскрашиванию р цветами можно поставить в соответствие систему таких чисел (где Z= 1, 2, ..., п\ ≪7=1, 2, .... р), что . fl, если вершина xz имеет цвет q\ | 0 в противном случае. Положим [ 1, если xz — граничная точка ребра up г1. = \ 7 J I 0 в противном случае. Задача сводится теперь к отысканию таких целых чисел что 1° 4>° (Z= 1. 2, . . ., n; q = 1, 2, . . р); р 2° 2^=1 (z=l, 2 . га); ≪7=1 п 3° (/=1.2 . /га; q = 1, 2, ..., р). k=l Мы получили систему линейных неравенств, соответствующую, как легко видеть, известным методам „линейных программ″; однако ‘) Существует еще рекуррентный способ, (см. [6], [7], [8]). — Прим. перев.
42 ГЛ. 4. ОСНОВНЫЕ ЧИСЛА ТЕОРИИ ГРАФОВ в данном случае требуется выяснить, имеет ли эта система решения в целых числах, и только совсем недавно был разработан систематический способ для нахождения такого решения !). Рассмотрим теперь два различных графа G и Я; может оказаться желательным определить хроматическое число их суммы G-\-H или их произведения G\H (см. гл. 3). Имеют место следующие результаты: Теорема 5. Пусть G — (р -|-хроматический граф, Я— (#+ Y)-хроматический граф’, обозначим через г наибольшую из d-сумм p'-\-q\ где pf р, q' ^q\ тогда граф GН является (г -|-1)-хроматическим. Действительно, всегда можно предположить, что графы G и Я симметрические (это никак не изменит ребер графа G -|- Я); построим для G функцию Гранди g(x) с наибольшим значением, не превосходящим р, а для Я — функцию Гранди h (х) с наибольшим значением, не превосходящим q, в соответствии с предыдущей теоремой. В силу теоремы 8 (гл. 3) граф G-\-H допускает функцию Гранди с наибольшим значением, не превосходящим г; отсюда и следует справедливость утверждения. Например, читатель легко проверит, что если G 6-хроматический, а Я 7-хроматический граф, то граф G-\-H является 8-хрома- тическим, потому что г = 64-1 = (1, 1, 1) = 7. Теорема 6. Если G и Н— два различных графа с хроматическими числами р и q, a r = min{p, q], то граф G X И является г-хроматическим. Предположим для определенности, что р q, и раскрасим граф G с помощью р цветов; в графе G X Н придадим вершине | = (х, у) тот же цвет, который имеет х в G. Тогда смежные вершины графа G X Н будут иметь различные цвета (ибо иначе в G имелись бы одинаково окрашенные смежные вершины). Ч. И Т. Д. Эту теорему можно выразить еще и так: l(OX W)≪min (7(G), 7(Я)}. Ч Этот систематический способ, которым мы обязаны Гомори [9], основывается на симплекс-методе Данцига (G. Dantzig) и в общих чертах состоит в том, что сначала решается обычная линейная программа, а затем если какой-нибудь из переменных в этом решении отвечает нецелое число, то составляется некоторая новая система неравенств, которым удовлетворяют искомые целочисленные значения, но не удовлетворяют уже найденные.
ЧИСЛО ВНУТРЕННЕЙ УСТОЙЧИВОСТИ 43 Число внутренней устойчивости Рассмотрим граф G = (X, Г); множество SczX называется внутренне устойчивым, если никакие две вершины S не смежны, другими словами, если rsns= 0. Обозначим через семейство всех внутренне устойчивых множеств графа; имеем 0С§. По определению, число внутренней устойчивости графа G есть a(G) = max |S|. Пример 1 (Гаусс). Задача о восьми ферзях. Можно ли на шахматной доске расставить восемь ферзей так, чтобы ни один из них не находился под ударом какого-либо другого? Эта известная задача сводится к нахождению наибольшего (7Ш74&5) (6152X57^ Рис. 4— 5. внутренне устойчивого множества в симметрическом графе с 64 вершинами (клетки шахматной доски), где у £ Гх, когда клетки х и у находятся на одной и той же горизонтали, вертикали или диагонали. Задача значительно труднее, чем кажется на первый взгляд: Гаусс первоначально предполагал 76 решений, а в берлинском шахматном журнале ,,Schachzeitung“ в 1854 году было опубликовано всего 40 позиций, найденных различными любителями шахмат. На самом же деле существует 92 решения, как показывают следующие 12 диаграмм: (72631485) (35841726) (16837425) (51468273) (61528374) (46152837) (57263184) (42751863) (58417263) (57263148) (48157263) (35281746)
44 ГЛ. 4. ОСНОВНЫЕ ЧИСЛА ТЕОРИИ ГРАФОВ Каждой перестановке отвечает диаграмма, как на рис. 4 — 5, а каждая диаграмма, кроме той, которая соответствует последней перестановке, порождает восемь различных решений: три возникают при повороте данной диаграммы на 90°, 180° и 270°, а остальные четыре — при зеркальном отображении каждой из четырех получившихся диаграмм относительно главной диагонали; последняя перестановка (35281746) дает только четыре решения, так как соответствующая диаграмма при повороте доски на 180° переходит сама в себя. Пример 2. Кликой симметрического графа называется такое множество Са:Х, что Если X— множество лиц, а у£Гх означает согласие между х и у, то часто требуется разыскать „максимальную клику″, т. е. общество с наибольшим числом членов. Определим отображение Г7 следующим образом: Задача сводится к нахождению наибольшего внутренне устойчивого множества в графе (X, Г'). Пример 3. Задача о пятнадцати девушках, которая была предметом многочисленных математических работ, может быть сформулирована следующим образом: в пансионе воспитываются пятнадцать молодых девушек, которых мы обозначим буквами a, b, с, d, е, /, g, h, i, j, k, I, m, n, о; они ежедневно выходят на прогулку тройками; возможно ли в течение семи дней составлять тройки таким образом, чтобы никакие две девушки не попадали в одну и ту же тройку более одного раза? Пользуясь соображениями симметрии, Кэли нашел следующее решение: Воскресенье Понедельник Вторник | Среда Четверг Пятница Суббота afk abe alm ado agn ahj aci bgl eno bef bik bdj bmn bho chm dfl deh cjl cek edg dkm din ghk gio egm fmo efi eln ejo ijm jkn fhn hil klo fgj Задача о пятнадцати девушках родственна другой, столь же известной задаче, которую мы назовем вспомогательной задачей'. можно ли из 15 девушек последовательно составить 35 различных троек так, чтобы никакие две девушки не входили вместе более чем
ЧИСЛО ВНУТРЕННЕЙ УСТОЙЧИВОСТИ 45 в одну тройку? Для решения вспомогательной задачи достаточно построить граф G, вершинами которого служат все 455 возможных троек, причем две тройки считаются смежными, когда в эти тройки входят одни и те же две девушки; тогда требуется найти наибольшее внутренне устойчивое множество. Имеем a(G)^35, так как никакая девушка не может входить более чем в семь различных троек, а это дает самое большее 15Х^Х7з = 35 троек; поэтому всякое внутренне устойчивое множество из 35 троек максимально. Чтобы показать, что решение вспомогательной задачи дает также ответ на задачу о пятнадцати девушках, построим граф Gf, вершинами которого служат какие-либо 35 троек, дающие решение вспомогательной задачи, причем две тройки считаются смежными, когда в них входит одна и та же девушка; если хроматическое число у (Gz) равно 7, то задача о пятнадцати девушках решена; если же y(Gz)>7, то надо выбрать другое множество троек, дающее решение вспомогательной задачи. Нетрудно проверить, что существуют такие решения вспомогательной задачи, которые не приводят к решению задачи о пятнадцати девушках. Замечание 1. Хроматическое число у (G) и число внутренней устойчивости a(G) связаны неравенством a(G)-T(G)>|X|. В самом деле, можно разбить X на у (О) внутренне устойчивых множеств, образованных вершинами одинакового цвета и содержащих соответственно тх, т2, . .., вершин. Поэтому с≪ | /° HI = +от2 + • • • ... -|- a (G) -|-≪х (G) ... /6\ь\° ... -|-а(О) = y(G) • а (О). / а \ Я\ Замечание 2. Можно поста- / \ вить вопрос, не являются ли связи п / s'/ ьх\ Ч между обоими понятиями более тесными и нельзя ли найти хрома- - тическое число, окрашивая сначала °0 / ъ° ° /г \ ° в цвет (1) наибольшее внутренне $ ° устойчивое множество 5Р затем Рис. 4— 6. в цвет (2) наибольшее внутренне устойчивое множество S2 подграфа, порожденного вершинами X\SP далее в цвет (3) наибольшее внутренне устойчивое множество оставшегося подграфа и т. д. Оказывается, это не так, что видно на примере графа, изображенного на рис. 4— б (его хроматическое число, очевидно, равно 4): вершины, изображенные белыми кружками, образуют единственное наибольшее внутренне устойчивое множество,
46 ГЛ. 4. ОСНОВНЫЕ ЧИСЛА ТЕОРИИ ГРАФОВ но если их окрасить в один цвет, то остальные вершины a, b, с, d надо было бы окрасить с помощью только трех цветов, а это, очевидно, невозможно. Иногда для двух графов G и Н возникает вопрос о нахождении числа внутренней устойчивости произведения Gy^H. Пример (Шеннон [5]). Задача об информационной емкости множества сигналов. Рассмотрим простейший случай одного передатчика, который может передавать пять сигналов a, b, с, d, е; при приеме каждый из этих сигналов может быть истолкован двояко: сигнал а дает р или q, сигнал b дает q или г, и т. д. . . ., как показано на схеме, изображенной на рис. 4— 7. Какое наибольшее число сигналов можно принять, не рискуя спутать их Т Р друг с другом? Задача сводится к нахождению наибольшего b О внутренне устойчивого множе- х/ /^'х ства гРаФа (рис. 4— 8), где ДВе ВеРШИНЫ смежны> если Они с ^^xV/ представляют такие сигналы, /^х \ / которые можно спутать при & >— \ _ J приеме; очевидно, а(О) = 2 и /х^ d с можно взять S={a, с}. , Вместо однобуквенных сиг- е 1 налов можно пользоваться Рис. 4— 7. Рис. 4— 8. „словами″ из двух букв с таким расчетом, чтобы эти слова не путались друг с другом при приеме. Из букв а и с, которые нельзя спутать, составляется код: аа, ас, са, сс\ таким образом, получаются [a(G)]2 = 4 слова. Но можно составить еще более богатый код: аа, be, се, db, ed. (Непосредственно проверяется, что никакие два из этих слов спутать одно с другим при приеме нельзя.) Назовем здесь произведением двух графов G = (X, U) и Н— (К, V) граф G вершинами которого служат пары ху, где х £ X, y^Y, причем две вершины ху и х'у' смежны, если они удовлетворяют одному из следующих условий: 1° х = хг, (у, y')£V; 2° (х, х')€ у = /; 3° (x.x'ftU, (у, y')£V. (Это определение несколько отличается от определения, данного в гл. 3, но мы не будем вводить другого обозначения.) Для графа О, изображенного на рис. 4— 8, два слова ху и х'у' могут быть перепутаны, если они являются двумя смежными вершинами графа-про-
ЧИСЛО ВНУТРЕННЕЙ УСТОЙЧИВОСТИ 47 изведения 0/0 = G2, и богатство кода с двухбуквенными словами выражается числом a(G2) = 5; в более общем случае богатство кода с /г-буквенными словами выражается числом внутренней устойчивости графа-произведения Gn = GX0X ... Х^. Лемма 1. Для двух графов G и Н a(G X Л)>а (G) • а (//). Действительно, если 5 и Т — наибольшие внутренне устойчивые множества соответственно для G и И, то декартово произведение S X 71 является -внутренне устойчивым в графе G X откуда a(G X> I X I = | 51 X [ Т\ = a(G)a(H). Эта лемма подсказывает нам следующее определение: назовем емкостью графа G число п _ 6(G) = sup у a(Gn). п Имеем 6(G)^a(G); мы собираемся показать, что почти всегда 6 (G) = a(G). Между прочим, Шеннон установил, что граф G, изображенный на рис. 4— 8, является единственным графом с числом вершин менее шести, для которого 6(G)=£a(G); фактически его емкость 6 (G) не удалось определить, и известно лишь, что 1/5≪ 6(0)≪А. Рассмотрим однозначное отображение о множества X в себя; такое отображение называется сохранным, если у (£ Гх а (у) #= а (х), а(у)^Га(х). Это отображение сохраняет свойство пары вершин „быть несмежными и различными″. Лемма 2. Сохранное отображение а переводит внутренне устойчивое множество S во внутренне устойчивое множество о (5), и при этом | S | = | a (S) [. В самом деле, ввиду однозначности отображения о имеем | a (S) | S |, а так как 0 сохранно, то | a (5) | = | S |. Лемма 3. Если множество о (X) внутренне устойчиво, то число внутренней устойчивости графа G есть a(G) = |a(X)|. Действительно, раз о (X) внутренне устойчиво, то | a (X) | ≪ шах | S | = a (G). ses
48 ГЛ. 4 ОСНОВНЫЕ ЧИСЛА ТЕОРИИ ГРАФОВ С другой стороны, если So— наибольшее внутренне устойчивое множество, то, в силу леммы 2, |a(X)|>|c(S0)| = |S0| = a(O). Отсюда а(О) = |о(Х)|. Теорема 7 (Шеннон). Если хотя бы для одного из графов G и Н существует сохранное отображение о, переводящее множество вершин этого графа во внутренне устойчивое множество, то a(G\ H) = a(G)a(H). Достаточно показать, что a(G X /7) a (G) a (77); пусть о — сохранное отображение для G, при котором о(?0 внутренне устойчиво, и пусть а0 — отображение множества вершин графа G X Н в себя, определенное следующим образом: ≪з0(*, У)=Ф(*), у]. Отображение о0 переводит две несмежные различные вершины £ = (х, у)и^ = (х', у') в две несмежные различные вершины (ах, у) и (axf, у') и поэтому сохранно. Если So— наибольшее внутренне устойчивое множество графа G X 77, то a(G X 77) = |S0| = |o0(S0)| в силу леммы 2; распределим элементы a0(S0) по различным классам в зависимости от первой буквы каждого слова. Согласно лемме 3 получим |a(Х)| — a(G) различных классов. Поскольку никакие два элемента из ≪з0(50) не смежны, каждый класс имеет самое большее a(Н) элементов, значит a (G X И) — I °0 (50) I ≪ «(О)« ОО- Следствие. Если множество вершин графа G при помощи сохранного отображения о можно перевести во внутренне устойчивое множество, то емкость этого графа совпадает с числом внутренней устойчивости. В самом деле, a(GXO) = [afG)]2, a (G X О X G) = [a (G)]2 a (G) = [a (G)]3 и т. д.; отсюда 0 (G) = sup Кa (pn) = a(G). n Число внешней устойчивости Пусть дан граф G = (X, Г); говорят, что множество ТаХ внешне устойчиво, если для каждой вершины х Т имеем ГхП^^=0, иначе говоря, если 7,
ЧИСЛО ВНЕШНЕЙ УСТОЙЧИВОСТИ 49 Если — семейство всех внешне устойчивых множеств графа, то По определению, число внешней устойчивости графа G есть р (G) = min [ Т|. Задача, которая нас сейчас интересует, заключается в построении внешне устойчивого множества с наименьшим числом элементов. Пример 1. Задача о часовых. В тюрьме города N около каждой камеры может быть поставлен часовой. Однако часовой, стоящий, например, у камеры х0, видит также, что происходит в камерах х2, х% и х4, от каждой из которых к камере xQ идет коридор, как показано на рис. 4— 9. Каково наименьшее количество часовых, необходимое для наблюдения за хо Л всеми камерами? Требуется Рис. 4— 9. найти число р внешней устойчивости симметрического графа, изображенного на рис. 4— 9; для этого весьма простого плана р = 2. Пример 2. Задача о пяти ферзях. Сколько ферзей достаточно расставить на шахматной доске так, чтобы каждая клетка доски находилась под ударом хотя бы одного из них?т) Эта задача сводится к отысканию наименьшего внешне устойчивого множества в графе с 64 вершинами (клетки доски), у которого (х, y)£U тогда и только тогда, когда клетки х и у расположены на одной и той же горизонтали, вертикали или диагонали. Число внешней устойчивости р = 5 для ферзей, р — 8 для ладей, Р= 12 для коней, р = 8 для слонов (см. рис. 4— 10). Пример 3. Задача о шести красных дисках. Любителям французских ярмарок хорошо известна следующая игра: большой белый диск (радиус которого примем за единицу) лежит на столе; требуется полностью покрыть его шестью маленькими красными дисками (радиуса р ≪ 1), которые последовательно ’) Считая, что клетка, занимаемая фигурой, тоже находится под ее ударом — Прим, перев.
50 ГЛ. 4. ОСНОВНЫЕ ЧИСЛА ТЕОРИИ ГРАФОВ кладут на стол, а положив, более уже не перемещают. При каком наименьшем радиусе р это возможно? Задача сводится к нахождению наименьшего внешне устойчивого множества Т для бесконечного графа (X, U), где X— множество точек белого диска, а (х, у)££/, когда расстояние d(x, у) между х и у не превышает р. ₽«?,) = 5 P(G3)-8 Рис. 4— 10. Для отыскания наибольшего внутренне устойчивого множества или наименьшего внешне устойчивого множества можно последовательно рассматривать каждое множество ТсХ и проверять, удовлетворяет ли оно всем требуемым условиям. Конечно, в общем случае этот метод исключения практически недоступен, и надо прибегнуть к какому-либо алгорифму, т. е. к сокращенному способу таких вьи числений (иногда предполагается использование быстродействующих электронных вычислительных машин),
ЧИСЛО ВНЕШНЕЙ УСТОЙЧИВОСТИ 51 Ниже мы изложим такой алгорифм для определения наибольшего внутренне устойчивого множества, непосредственно вытекающий из дальнейших теорий (гл. 10 для бихроматических графов, гл. 18 для общего случая). Так, например, решить задачу о восьми ферзях при наличии хорошего алгорифма можно менее чем за три минуты, в то время как способ исключений потребует десятка часов; кроме того, следует заметить, что для конкретной расстановки невозможность увеличения числа ферзей доказывается весьма простым рассуждением; в более общем случае тоже нужен простой критерий для проверки, является ли внутренне устойчивое множество наибольшим, и только хорошо задуманный алгорифм может нас удовлетворить. Нахождение наименьшего внешне устойчивого множества представляет собой более элементарную задачу, которую можно решать следующим образом, Алгорифм для нахождения наименьшего внешне устойчивого множества. Рассмотрим для примера граф (7 = (АГ, Г), изображен- ный на рис. 4— 11, и определим отображение Д множества Х={а, Ь, ...} в новое множество Х = \а> Ь, . . .} следующим образом: ь а _ а с у Дх)> у = х или у^Г х. у® Тем самым построен так называемый простой граф1), который мы обозначим через (X, X, А) (рис. 4— 12); если Т— внешне устойчивое множество графа G, f е то ДТ = X; наоборот, если ДТ=Х, то Рис. 4— 11. множество Т внешне устойчиво в G. Задача свелась, таким образом, к определению наименьшего множества Та.Х, для которого LT— X. 1° Удаляем из простого графа каждую такую вершину х, что ДхсДу для некоторой вершины у #= х (в самом деле, с точки зрения нашей задачи вершина у будет полностью заменять вершину х). В нашем примере мы удаляем, таким образом, вершины с, d, f, 2° Если в простом графе имеется висячее ребро (х, у), то, очевидно, х^Т. В данном примере множеству Т заведомо принадлежит вершина а. 3° Исключим из простого графа вершину а, уже входящую в Т, и множество &а=[а, Ь, с}; в результате получается граф, изображенный на рис. 4— 13. Общее определение простого графа, в данный момент не нужное, дается в гл. 10. — Прим, перев.
52 ГЛ. 4 ОСНОВНЫЕ ЧИСЛА ТЕОРИИ ГРАФОВ 4° Снова пытаемся удалить некоторую вершину, как в 1°, или исключить вершину, заведомо принадлежащую Т, как в 2°; если упростить граф уже нельзя (как в данном примере), то назовем его неприводимым. Временно отнесем в Т произвольную вершину, скажем Ь. 5° Исключим, как в 3°, вершину b и множество hb=[d, е, f}. 6° Продолжаем упрощение, как выше: из полученного графа можно исключить вершину g, так как hgahe = {g}. Включая в Т последнюю вершину е, получаем решение Т=[а, Ь, е]. Если в 4° попробовать вместо b включить в Т вершину g или е, то результат не улучшится; поэтому найденное в 6° решение удовлетворяет поставленным условиям.
ГЛАВА 5 Ядра графа Теоремы существования и единственности Пусть G = (X, Г) — конечный или бесконечный граф. Множество SczX называется ядром графа, если S устойчиво как внутренне, так и внешне, т. е. если (1) х£5=^>ГхП5 = 0, (2) х 5=фГх П5 ¥= 0. Из условия (1) вытекает, что ядро S не содержит петель, из условия (2) — что S содержит все такие вершины х, для которых Гх=0; очевидно, пустое множество 0 не может быть ядром. Пример 1 (фон Нейман — Моргенштерн [3]). Понятие ядра первоначально было введено в теории игр под названием „решения″. Пусть имеется п игроков (1), (2), .... (п), которые могут советоваться при выборе ситуации х из множества X; если игрок (Z) предпочитает ситуацию а ситуации Ь, то пишем Ь, и ясно, что есть тотальный квазипорядок (пример 3 гл. 2). Так как отдельные предпочтения могут не быть совместимы, то приходится вводить понятие эффективного предпочтения Если ситуация а эффективно предпочитается ситуации Ь, то это означает, что существует множество игроков, которые, считая а лучше Ь, имеют возможность добиться того, чтобы угодная им точка зрения одержала верх; в этом случае пишем а >- Ь. Если, кроме того, b >- с, то существует множество игроков, способных сделать так, чтобы одержала верх ситуация Ь’, но так как второе множество не обязательно совпадает с первым, то может не быть а >- с\ отношение >- не транзитивно! !) Теперь рассмотрим граф (X Г), где Гх означает множество ситуаций, эффективно предпочитаемых ситуации х. Пусть S — ядро графа (если оно существует); фон Нейман и Моргенштерн предлагают ’) Термином эффективное предпочтение мы обязаны Гильбо, изложившему [2] на основе этого термина; фон Нейман и Моргенштерн пользовались понятием доминирования. О различных математических формулировках эффективного предпочтения см. Берж [1], гл. V.
54 ГЛ. 5. ЯДРА ГРАФА ограничивать игру элементами 5. Внутренняя устойчивость S выражает тот факт, что никакая ситуация из S не может эффективно предпочитаться какой-либо другой ситуации из S, а это обеспечивает известную сплоченность; внешняя устойчивость означает, что любой ситуации х не из S эффективно предпочитается некоторая ситуация из S, в силу чего ситуация х сразу же отвергается. Пример 2. Рассмотрим некоторый граф (X, Г), допускающий функцию Гранди g(x); множество S = [x/g (х) = 0} служит ядром этого графа, так как (1) 0; (2) х (£ S=}g(x) 0, значит ГхП≪$¥=0. Пример 3. Не всякий граф обладает ядром: в этом читатель может самостоятельно убедиться на примере графа, изображенного на Рис. 5— 1. рис. 5— 1; если граф имеет ядро So, то его числа устойчивости удовлетворяют условию a (G) = max | S| ;> | So|i> min | Т\ = р (G). У графа G, изображенного на рис. 5— 1, нет ядра, поскольку a(G) = 1 ≪ 2 = p(G). Напротив, у графа Gz, изображенного на рис. 5— 2, есть два ядра: Sf и S″. Предложим теперь критерии, позволяющие узнавать, имеет ли граф ядро и является ли оно единственным. Теорема 1. Если S — ядро графа (X, Г), то множество S — максимальное в семействе § внутренне устойчивых множеств, т. е. A£S>, А=> S=}A = S. Пусть А — внутренне устойчивое множество, содержащее ядро S; предположим, что А строго содержит S, и покажем, что это при-
ТЕОРЕМЫ СУЩЕСТВОВАНИЯ И ЕДИНСТВЕННОСТИ 55 водит к противоречию. В самом деле, тогда существовала бы такая вершина а, что а(^А, a(£S, откуда Га П 5 #= 0 и, значит, Га П А ¥= 0 в противоречии с условием Теорема 2. В симметрическом графе без петель каждое максимальное множество семейства внутренне устойчивых множеств представляет собой ядро. Пусть S— максимальное множество из надо показать, что для любой вершины x^S имеет место Гх П S #= 0. В самом деле, если Гх Г) S 0 для некоторой вершины х £ S, то множество X = SU (х) внутренне устойчиво (поскольку х Гх) и в то же время AzdS, A=£S, что противоречит предположению о максимальности S в S. Следствие. Симметрический граф без петель обладает ядром. В самом деле, образуем вспомогательный граф ($, Г), вершинами которого служат внутренне устойчивые множества данного симметрического графа, а 5£Г5Х тогда и только тогда, когда S zd S'. Вспомогательный граф — индуктивный, следовательно, по лемме Цорна (гл. 3) существует вершина без строго последующих. Множество S является максимальным внутренне устойчивым и, значит, в силу теоремы 2, ядром. В случае когда данный симметрический граф конечен, это следствие становится очевидным и процесс нахождения ядра состоит в следующем. Берем произвольную вершину х0 и полагаем £0={х0); затем берем некоторую вершину х-^TSq и полагаем S1 = {x0, xj; далее берем вершину х2^Г51... , и т. д. Так как граф конечен, то рано или поздно мы получим Г5/г = Х, и Sn, как максимальное множество в $, будет ядром. Характеристической функцией ср5(х) множества S называется функция J 1 при x£S, ( 0 при x(£S. Если Гх=0, то условимся считать, что шах ср. (у) = 0. уСГх Теорема 3. Для того чтобы множество S было ядром, необходимо и достаточно, чтобы для характеристической функции ср5 (х) выполнялось соотношение ?s О) = 1 — max ср5 (у). уСГх
56 ГЛ. 5 ЯДРА ГРАФА 1° Пусть S— ядро. В силу внутренней устойчивости ср (х) = 1 зф х £ S =ф шах ср (у) = 0. В силу внешней устойчивости ср5 (х) = 0 зф х 5 max ср (у) = 1. у£Г.г Отсюда получается требуемое соотношение. 2° Пусть ср5(х)— характеристическая функция некоторого множества 5; если рассматриваемое соотношение выполнено, то х £ 5 =ф ср5 (х) = 1 зф шах ср. (у) = 0 зф Гх р S = 0, х Ф S зф ср (х) = 0 зф шах ср. (у) = 1 зф Гх П S ф 0, у^х Следовательно, S — ядро. Теорема 4. Прогрессивно конечный граф обладает ядром. Доказательство получается сразу, если заметить, что характеристическая функция ср5(х), удовлетворяющая соотношению предыдущей теоремы, по индукции определяется на множествах: Х(0)= {х/Гх= 0}, Х(1) = {х/ГхсАг(0)}, Х(2) = (х/ГхсзХ(1)}, Теорема 4 (гл. делена на всем X. 3) показывает, что таким путем ср5 будет опре- Теорема Ричардсона. Конечный граф, не содержащий контуров нечетной длины, обладает ядром. Пусть (X, Г) — конечный граф без нечетных контуров; будем последовательно определять множества Ко, Гр К2, ... а:Х следующим образом. 1° Берем Ко=0; обозначим через Во базу (см. гл. 2) подграфа, порождаемого множеством Х\ Го; эта база существует в силу теоремы 1 (гл. 2). Полагаем Yx = BQ J Г-1В0. 2° Если множество Yп уже определено, то обозначим через Вп какую-либо базу подграфа, порождаемого множеством X\Y п, удовлетворяющую условию В^сзГ-1 (Г-1В/7_1 \ Yn_^). Легко видеть,
ТЕОРЕМЫ СУЩЕСТВОВАНИЯ И ЕДИНСТВЕННОСТИ 57 что такая база всегда существует !); далее полагаем Тогда 0 = ГоссК1ссГ2сс .... Так как граф предполагается конечным, то существует такой номер т, что Y т = Х\ пусть т— 1 п=0 Покажем, что S— ядро графа (X Г). Г S внешне устойчиво, ибо если x^S, то х £ \ Yh для некоторого номера k, значит Гх П Bk =/= 0 и Гх П 5=^=0. 2° S внутренне устойчиво. В самом деле, никакие два элемента из Вп не могут быть смежны (ибо Вп является базой некоторого подграфа); рассмотрим две смежные вершины, одна из которых £Вп, другая £ Вр, где р ≪ п (если такие вершины есть). Имеем BnS\V-'Bp=≪Z). ибо и BncX\Yn≪=;X\Yp+,. Точно так же ВрПГ-1Вл= 0, так как в противном случае можно было бы !) Для доказательства того, что граф Гх^ Y ) имеет базу рассмотрим какую-нибудь базу Вп и вершину без строго последующих, выбранную для построения Вп в соответствии с теоремой 3 (гл. 2); достаточно показать, что в X \ Yn найдется вершина Ь, которой можно заменить вершину и для которой п п (1) b = а0 (где > — отношение квазипорядка в графе, порожденном множеством Х\ Yn), (2) В графе гх\у/г_1) существует путь = (а0, alt ..b'}, ведущий из в Вп_х\ пусть — первая вершина пути ц, принадлежа- щая Yn. Так как ак £ Х\ Г„_ь ak^Bn_t, то ak € Г-1В„_1 \ Y„_t. (Предполагается, что множество Yn определено по формуле Yn = = Уп-\ UUЕсли бы ak£Bn_x, то вершина ak_x принадлежала бы cz Yn и, таким образом, ak не была бы первой вершиной пути р, принадлежащей Yn. Следовательно, uk^Bn_{\ а так как ak^Yn_x, то аь С \ Yn_x. — Прим, ред.) Вершина удовлетворяет как условию (1), 1ак и условию (2).)
58 ГЛ. 5. ЯДРА ГРАФА построить такой путь (л = [х0, хп, yn_v xn_v уп_2, хп_2 . ур, хр], что хо € Вр' хо € г Вп' Хп-1 € Вп-1’ У^Г-’ВДГ,; хр€вр- Заметим, что все вершины пути [i принадлежат Л'Х У и что р. идет из х0£Вр в хр£Вр (см. рис. 5— 3); так как Вр— база подграфа, порожденного множеством Х\У , то xQ = xp; таким образом, путь [1 представляет собой контур нечетной длины, что противоречит условию теоремы. Рис. 5— 3. Обобщение 1. Вполне индуктивный граф, не содержащий контуров нечетной длины, имеет ядро. Действительно, поскольку всякий подграф вполне индуктивного графа обладает базой, доказательство в точности совпадает с предыдущим: определяются по индукции множества Еа (где а может теперь быть трансфинитным порядковым числом).
ПРИЛОЖЕНИЕ К ФУНКЦИЯМ ГРАНДИ 59 Обобщение 2. Локально конечный граф G = (X, Г), не содержащий контуров нечетной длины, имеет ядро. Это следует из теоремы Радо (гл, З)1). Приложение к функциям Гранди Условия существования, установленные для ядер, можно распространить на функции Гранди благодаря следующим результатам. Теорема 5. Если каждый подграф графа (X, Г) обладает ядром, то граф (X, Г) допускает функцию Гранди. В самом деле, пусть So— ядро графа (X, Г), далее, — ядро подграфа, порожденного множеством Aj=Ar\S0, затем S2— ядро подграфа, порожденного множеством Ar2 = Ar1\S1, и т. д. . . .; вообще положим aVa = Аа_1 \ Sa_p если а — порядковое число первого рода; Xa=QXp, если а— порядковое число второго (3≪а рода (заметим, что (3 > а влечет и в силу принципа индукции существует порядковое число у, при котором Х7=0). Множества Sa образуют разбиение X, и каждой вершине х мы отнесем порядковое число g(x) следующим образом: g(x) = a.$==$x£Sa. 1) В самом деле, пусть (Л, Гл) — произвольный конечный подграф (7; в силу теоремы Ричардсона, он имеет ядро Положим Е (0) = Е «О» = {1}, Е ({1}) = Е ({0, 1}) = {0}. Функция тлМ = 1 при х С 0 при х SA Ео = {0, 1}, удовлетворяет условию теоремы Радо, ибо если x£SA, то срл(х) = 1, = ≪0> ИЛИ £('Рд(ГДХ)) = '≪1^ а если SA’ то '?А≪Х) = О- ≪Рл(Гдх) = {1} или {0, 1}, £ (≪рд (Гдх)) = {0} и в обоих случаях ≪рд (х) £ £Е (cp^(T^x)). По теореме Радо существует функция ≪р (х), определенная на всем X и такая, что ср (х) С Е (ср (Гх)). Тогда множество S = {х/х £Х, (х) = 1} является ядром G, так как хе 5=>?(х) = 1==>£(≪р (Гх))Э1=Ф =>(Гх) $1^>ГхП5 = 0, х £ S :=> ≪р (х) = 0 зф Е (≪? (Гх)) Э 0 =^> =^>≪р (Гх) Э 1 =ф Гх П R =/= 0. — Прим, перев.
60 ГЛ 5. ЯДРА ГРАФА Покажем, что g (х)— функция Гранди. (1) Пусть g(x) = a; покажем, что для любого (3 ≪ а найдется вершина у£Гх, удовлетворяющая условию g(y) = $, Так как x£Sa и а > р, то x£XaczXp, x^S$. Так как — внешне устойчивое множество подграфа, порожденного множеством Хр, то в Sp существует вершина у£Гх; иначе говоря, в Гх есть такая вершина у, что g(y) = [3. (2) Пусть g(x) = a; в Гх не существует такой вершины у, что g (у) = а, ибо иначе множество Sa не было бы внутренне устойчивым. Условия (1) и (2) вместе выражают, что g(x) есть функция Гранди. Следствие 1. Симметрический граф допускает функцию Гранди в том и только том случае, если он не имеет петель. (Ясно, что граф с петлей не может допускать функций Гранди.) Следствие 2. Граф без контуров нечетной длины, являющийся или конечным, или локально конечным, или индуктивным, допускает функцию Гранди. Замечание. Пусть графы (др О2, . . ., Gn обладают ядрами; имеет ли ядро их сумма (или их произведение)? Безотказным орудием для определения ядра суммы графов служит понятие функции Гранди (впрочем, это мотивирует также важность понятия ядра для теории функций Гранди). Комбинируя теорему 8 (гл. 3) с теоремой 5 настоящей главы, мы видим, что если все подграфы графа Gt обладают ядрами (при всех I), то сумма Qx+G2+ ... +Gn допускает функцию Гранди g, а значит, и ядро S= {x/g(x) = 0}. В следующей главе мы познакомимся с применениями этого важного замечания.
ГЛАВА б Игры на графе Игра Ним Граф (X, Г) дает возможность определить некоторую игру двух игроков, которых мы назовем (Л) и (В). Положениями этой игры служат вершины графа; начальная вершина х0 выбирается жеребьевкой, и противники играют поочередно: сперва игрок (Л) выбирает вершину в множестве Гх0, затем (В) выбирает вершгну х2 в множестве Гхр после этого (Л) опять выбирает вершину х3 в Гх2, и т. д. Если один из игроков выбрал вершину xk, для которой Гхй=0, то партия оканчивается; игрок, выбравший вершину последним, выиграл, а его противник проиграл. Ясно, что если граф не является прогрессивно конечным, то партия может никогда не окончиться. В честь известного развлечения, которое здесь обобщено, будем описанную только что игру называть игрой Ним, а определяющий ее граф обозначать через {X, Г); сейчас наша задача состоит в том, чтобы охарактеризовать выигрышные положения, т. е. те вершины графа, выбор которых обеспечивает выигрыш партии независимо от ответов противника. Главным результатом является следующая Теорема 1. Если граф имеет ядро S и если один из игроков выбрал вершину в ядре, то этот выбор обеспечивает ему выигрыш или ничью. Действительно, если игрок (Л) выбрал вершину хг £ S, то либо Гх1 = 0, и тогда он уже выиграл партию, либо его противник (В) вынужден выбрать вершину х2 в X \ S, а значит, следующим ходом игрок (Л) может выбрать х3 опять в S и продолжать в том же духе. Если в какой-либо определенный момент один из игроков выиграл, выбрав вершину хк, для которой Гхй=0, то xk(^S и выигравшим партнером необходимо является (Л). Ч. И Т. Д. Основной метод для хорошего игрока состоит, следовательно, в вычислении какой-либо функции Гранди, если она существует; с помощью этой функции g (х) получаем ядро s ={*/£■(*) = 0}
62 ГЛ. 6. ИГРЫ НА ГРАФЕ рассматриваемого графа. Если начальная вершина xQ такова, что g(xo) = O, то игрок (Д) находится в критическом положении, ибо его противник может обеспечить себе выигрыш или ничью; напротив, если g(xo)=^=O, то игрок (Л) сам обеспечивает себе выигрыш или ничью, выбирая такую вершину что g(x1) = 0. Следствие. Если граф прогрессивно конечен, то существует одна и только одна функция Гранди g(x); каждый выбор такой вершины у, для которой g(y) = 0, является выигрышным, а каждый выбор такой вершины z, что g(z) 0, — проигрышным. (Непосредственно.) Пример 1 [Айзекс (R. Isaacs)]. Пусть X— множество точек (/>, q) декартовой плоскости, имеющих целые неотрицательные координаты р и q; два партнера поочередно зачеркивают точки множества Х\ Рис. 6— 1. если х — последняя зачеркнутая точка, то игрок, которому нужно ходить, должен выбрать точку либо на одном из перпендикуляров ха или xb, опущенных из х на оси координат, либо же на отрезке хс биссектрисы угла axb, расположенном во внутренней области этого угла; например, после вершины х = (4, 1) выбор должен быть сделан
ИГРА НИМ 63 из числа вершин (4, 0), (3, 1), (2, 1), (1, 1), (0,1), (3, 0). Игрок, который сумеет первым достигнуть вершины (0, 0), выигрывает. Граф (X Г) прогрессивно конечен и поэтому допускает функцию Гранди g(x), значения которой в каждой вершине показаны на рис. 6— 1; выигрышные выборы обведены кружком. Хотя последние образуют множество, симметричное относительно главной диагонали, в их расположении наблюдается нерегулярность. Пример 2. Граф, изображенный на рис. 6— 2, представляет игру Ним, для которой не существует ни функции Гранди, ни ядра; предыдущий метод поэтому здесь неприменим. Тем не менее каждый игрок может застраховать себя от проигрыша, ограничивая свой выбор одной из вершин а, Ь, с. Рассмотрим теперь различные игры Ним (Л- Г1)> (^2> Г2)> • • •> Гл) И допустим, что два игрока хотят играть по очереди по следующему правилу: в очередной момент игры партнер, которому нужно ходить, выбирает одну из игр Ним и делает ход в этой игре, не трогая остальных; первый, кто совсем не сможет играть, проигрывает. Эта собой игру Ним на графе, который есть не графов (Xz, rz) (см. гл. 3); способ выигрыша ситуация представляет что иное, как сумма дается следующим результатом. Теорема 2. Рассмотрим игры (Хр 1\), (Х2, Г2), . . ., (Х/г, ГЛ), допускающие соответственно функции Гранди gv g2, gn\ если играют в сумму этих игр, то выигрыш или ничья обеспечивается выбором таких положений X С^р «^2» • • • » 6 -^1 X ^2 X • • • X для которых = • • • 4- gn(xn) = 0- Это непосредственно вытекает из теоремы 8 (гл. 3). Пример. Простая игра Ним, или Фан Тан. Два игрока поочередно берут спички из п кучек; игрок, которому нужно ходить, имеет право выбрать какую-нибудь кучку (не пустую) и взять из нее одну или несколько спичек. Тот, кто сумеет забрать последние спички, выигрывает. Эта ситуация есть сумма игр (Хр 1\), (Х2, Г2), ..., (Хп, Гл); в игре (Xk, Г^) любой элемент xk из Xk выражает состояние &-й кучки, a gk(x^) равно соответствующему числу спичек.
64 ГЛ. 6. ИГРЫ НА ГРАФЕ В силу теоремы 2 выбор является выигрышным тогда и только тогда, когда d-сумма количеств спичек, оставшихся в различных кучках, равна нулю. Мы собираемся рассмотреть различные обобщения теоремы 2; прежде всего, если р≪пи если (А\, Г^, (Х2, Г2), . .., (Хл, 1\)— данные игры Ним, то их сумма порядка р, по определению, есть игра Ним, в которой каждый игрок, имея перед собой все игры (+ Tz), выбирает р из них и играет одновременно в эти р игр, не трогая остальных; сумма порядка п соответствует произведению графов, а сумма порядка 1— сумме графов. Для выигрыша имеем следующий результат. Теорема 3. Пусть игры Ним (А\, Гт), (Х2, Г2) . (Хп. Гп) транзитивны (т. е. ГА, = ГА, для всех k), и пусть gv g2, . . ., gn — их функции Гранди (они всегда существуют); сумма порядка р этих п игр допускает функцию Гранди g, значение которой для x = (xv х2> .. . , хп) вычисляется следующим образом', найдем двоичные разложения 4 •••) и положим где [/п](р+1) означает остаток от деления т на р+1 („т по модулю р + 1 “). Выбор х является выигрышным тогда и только тогда, когда g(x) = 0. Доказательство аналогично доказательству теоремы 8 (гл. З)1). Пример. Игры Ним порядка р (Мур [8]). Перед двумя игроками находятся п кучек спичек; пусть р — целое число ≪ п\ игрок, который должен сделать очередной ход, выбирает р кучек, а из каждой выбранной кучки вынимает одну или несколько спичек. Взявший последние спички выигрывает. Чтобы узнать, является ли выбор x = (xv х2> . . . , хЛ) выигрышным, надо сосчитать в двоичной системе количества спичек: gk(xk) = — с1> •••») Для Л-й кучки— и проверить, что для каждого номера г г п !) Теорема 3 в том виде, как она сформулирована, неверна. В этом можно убедиться на простых примерах. — Прим. ред.
ИГРА НИМ 65 Рассмотрим теперь прогрессивно конечную игру Ним с функцией Гранди g*(x); предположим, что на X определена операция -j-» т* е- закон, относящий каждой паре (х, X некоторую вершину z = х -|- у; если SczX, TczX, то положим + t£T}. Часто для выигрыша удается применить следующий результат. Теорема 4 (Гранди). Если прогрессивно конечный граф (X Г) снабжен операцией -j- * удовлетворяющей условию Г (х -j-_y) = (ГхЦ-у) J (хД- Гу), то для его функции Гранди g при z = x-]-y имеет место формула (1) £(*) = £(* +У) = £(x) + g-(.у). Мы докажем эту формулу с помощью индукции, выбирая последовательно точки z = ху в множествах: Х(О)={х/Гх = 0), Х(1) = {х/Гхс=Х(0)}, Х(2)={х/Гхс:Х(1)}, При z£X((Y) формула (1) верна потому, что z £ Х(0) (Гх-j-.y) (J (* Гу) = Г,г = 0 х, у£Х(0), откуда g (?) = 0 = 0 + о = g (X) 4- g(y). Допустим теперь, что формула (1) уже доказана для всех z из Х(а— 1), и покажем, что она остается справедливой для любой вершины z = x-\-y из Х(а); если бы было не так, то выполнялось бы одно из двух неравенств: g(z) > g(x) + g(y), g (*) ≪ g (*) + g(y\ 1° Если g(z~) > S'(•*:)-f-S’(у)> то существует такая вершина zx £ Tz, что g(Zi) = g(x) + g(y)-
66 ГЛ. 6. ИГРЫ НА ГРАФЕ Можно написать (с точностью до перестановки х и у) = хг -Ну, где х^Гх; так как z^FzczXta— 1), то g (а)=g Oi -j- у)=g «Л) 4- g (у)- Отсюда g (х) 4- g (.у)=g (а) 4- g (у)- Из этого, в силу теоремы 7 (гл. 3), вытекает, что ^*(x) = g'(x1); но это невозможно, так как х^Гх. 2° Если g(z) ≪ ^(х)Ц-^(у), то можно определить [например, как в теореме 8 (гл. 3)] такое число у, что g О) = т 4- g Су); т ≪ g (х). Так как в Гх существует вершина хр для которой y — g(x1), то, очевидно, g(z) = g(xl)-\-g(y'). Так как хх +> С Гг≪=Х(а— 1), то g Oi 4- у) = g (a)+g(y) = g (.z). Но это невозможно, поскольку х1 -j-у £ Fz. Пример. Два противника играют поочередно, выбирая кучку спичек среди п кучек и разделяя выбранную кучку на две неравные части; последний, кто еще имеет возможность это сделать, выигрывает. Положение х задается количествами хр х2, ..., xk спичек в кучках; положим х4-? = (^р Х2> ... , х*)4-(У1. Уг- • • - ._y/)j= = (xv х2 . xk, . yz). Операция -j-удовлетворяет условиям: (1) Г(х 4-У) = (Гх + у)и(-^4-Гу) (2) х + у = у + * (3) х 4~ (У 4-12) = (х 4“ У) ~\~z (4) х -]-z = у х = у; (основной закон); (коммутативность); (ассоциативность); (5) существует положение е (без спичек), такое, что x-j-e = x для всех х. Вершина z называется неприводимой, если невозможно написать Z = x-\~y, х^е, у =/= е\ неприводимым вершинам здесь отвечают конфигурации вида z = {x}) с одной-единственной кучкой. Имеем: gw=g(*v х2 . ~Xk)=g(Xxx)4-(^2)4-• • • 4-(**))= =^(*1)4-£'(*2) 4- • •• -¥g(.xk).
ИГРЫ С ПОЛНОЙ ИНФОРМАЦИЕЙ 67 Поэтому достаточно располагать значениями g для неприводимых положений, чтобы сразу, простым d-сложением, найти остальные значения. Непосредственно получаем *1 = 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 g (*1) = 0 0 1 0 2 1 0 2 1 0 2 1 3 2 1 3 2 4 3 0 В более общем случае прогрессивно конечной игры, в которой существует единственная такая вершина е, что 1>=0, а операция + удовлетворяет условиям (1), (2), (3), (4), (5), Адамс и Бенсон [1] доказали, что каждое положение разлагается в конечную сумму неприводимых положений, причем это разложение единственно Общее определение игры (с полной информацией) Общее определение игры, весьма простое для ограниченных партий, требует большой осторожности в случае отказа от этого условия. Игрок — это лицо, с которым связан один из эпитетов: активный или пассивный] для двух игроков (Л) и (В) игра определяется: 1° множеством X, элементы которого называются положениями игры\ 2° многозначным отображением Г множества X в себя, называемым правилом игры] 3° однозначным отображением б множества X в множество {0, 1,2}, называемым ходом] предполагается, что 6(х) = 0 тогда и только тогда, когда Гх=0] при 0(х)=1 говорят, что в положении х очередной ход должен сделать игрок (Л), а при 6 (х) = 2 — что ход игрока (В); 4° двумя вещественными функциями / (х) и g (х), определенными и ограниченными на X, называемыми функциями предпочтения соответственно для игроков (Д) и (В). Партия осуществляется следующим образом: начальное положение х^^Х выбирается по жребию; если, например, 6(х0)=1, то игрок (Д), которому нужно сделать ход, должен выбрать положение хг в множестве Гх0; в свою очередь, игрок, который должен сделать следующий ход [т. е. (Д), если 6(х1)=1, или (В), если 0(х1) = 2], выбирает положение х2 в множестве Гхр и так далее. Если один из игроков выбрал такое положение xk, для которого Txk— 0, то партия окончена (разумеется, партия может и никогда не окончиться). Если SaX— множество положений, встретившихся
68 ГЛ. 6. ИГРЫ НА ГРАФЕ в течение партии, то выигрыш игрока (Л), по определению, есть f (S) = sup f (_у), если игрок (Л) активный; f (S) = inf f (у), если игрок (Л) пассивный. у es Аналогично, посредством функции g, определяется выигрыш игрока (В). Цель игрока (Л) состоит в получении возможно большего выигрыша; обычно | f (5) | выражается денежной суммой, которую (Л) должен получить в случае / (5)^0 и уплатить в случае /(S)^0. Положим ХА = {х/G (х) = 1}, Хв = {х/9 (х) = 2}; надо отметить, что игра — это не что иное, как граф (X, Г), снабженный в каждой вершине х вектором (6 (х), f (х), #(х)). Подграф графа (X, Г) определяет подигру, а частичный граф — частичную игру, заметим, что при вышеуказанных определениях каждая подигра и каждая частичная игра сами являются играми (это неверно при других, более обычных определениях); игра представляет собой в точности „ структуру″, заданную на абстрактном множестве X. Пример 1. Игра Ним. В случае игры Ним на графе (X, Г) положение игры, есть пара (х, /), где х £ X, а / равно 1 или 2, смотря по тому, сделан последний ход игроком (В) или игроком (Л); имеем: 6 (х, Z) = z, если Гх =£ 0; 0(х, Z) = 0, если Гх=0; Г(х, 1) = ГхХ {2}; Г(х, 2) = Гх X {1}. Если Гх — 0, то /(х, 2) = g(x, 1)= 1. Во всех остальных случаях f (х) = g (х) = 0; оба игрока активны. Пример 2. Шахматы,. Два игрока (Л) и {В) играют соответственно „белыми″ и „черными″; положение х = (хр х2, х3, ...,/) представляется клетками хр х2, х3, . . . шахматной доски, на которых расположены различные фигуры, и индексом Z, равным 1 или 2, — теоретическим ходом в положении х; х=(хр х2, х3, ...) называется также диаграммой положения х. Игрок (Л) активен; /(х)=1, когда х — матовое положение для черных, во всех же остальных случаях / (х) = 0.
СТРАТЕГИИ 69 Пример 3. Погоня [2]. На поверхности S („море″) одна из двух лодок преследует другую; эту ситуацию можно уподобить игре, в которой два игрока (Л) и (В) ходят поочередно, например каждую секунду, перемещая свои лодки. Если хг— точка моря S, в которой находится преследующая лодка, а х2— точка, где находится преследуемая лодка, и если /— теоретический ход, то положением игры будет х = (хр х2, /). Пусть — „круг″ с центром xz, имеющий своим радиусом наибольшее расстояние, которое может проплыть лодка xL за одну секунду; имеем: Г(хр х2, 1) = 51(х1)Х (а:2) X (2), Г(Хр х2, 2) = {xj X В2 (х2) X {1}. Обозначим через d (х, у) расстояние между точками х и у; если целью преследователя является возможно большее приближение к преследуемому, то игрок (Д)— активный и / (Хр х2, /) = — d (Хр х2). Если цель преследователя состоит в том, чтобы обязательно настигнуть преследуемого, то (А) активен и /(Хр х2, /) = 1 при Xj = X2, /(Хр х2, z) = 0 при х2=£х2. Если цель преследуемого— не дать себя настигнуть, то игрок (В) — пассивный и g (Хр х2, /) = 1 при Xj =£ х2, g(Xp х2, Z) = 0 при х} = х2. В нашем случае цель игрока (Д) существенно активна, в то время как цель игрока (В) существенно пассивна. Подигра получится, если запретить некоторые области моря S для одной из лодок; частичная игра получится, если уменьшить максимальную скорость какой-либо из лодок. Стратегии В игре (X, Г, 6, /, g) стратегия игрока (Д) есть, по определению, такое однозначное отображение о множества ХА в X, что сх£Гх (х£Хд). Игрок (Д) придерживается стратегии о, если он a priori решает: „в каждом положении х, в котором ход мой, я буду в течение всей партии выбирать положение ах″. Множество всех возможных стратегий а игрока (Д) обозначается символом
70 ГЛ 6. ИГРЫ НА ГРАФЕ Если начальное положение xQ фиксировано и если игроки (Л) и (В) придерживаются соответственно стратегий а и т, то партия полностью определена и мы обозначим через (х0; о, т) множество встречающихся в ней положений; выигрыш игрока (Л) в таком слу- чае равен /(х0; о, т) = sup {/(х)/х£ (х0; о, т)}, если игрок (Л) активен; /(х0; а, т) = inf {f(x)/x £ (х0; о, т)}, если игрок (Л) пассивен. Пара (≪з0, т0), по определению, есть равновесие (для положения х), если /(х; а, т0)≪/(х; а0> т0) (а^Ед), g(x-, ≪з0, T)≪g(x; а0> т0) (т^Ев)- Иначе говоря, если перед началом партии игроки договорятся придерживаться стратегий о0 и т0, то такое решение будет обладать определенной устойчивостью: игрок, который попытается изменить свою стратегию в ходе партии, будет „наказан* за это уменьшением выигрыша. Пара (о0, т0), являющаяся равновесием для любого положения х, называется абсолютным равновесием игры; обобщая теорему существования ядра у прогрессивно конечного графа, получаем следующий основной результат. Теорема Цермело — фон Неймана1). Если граф (X Г) некоторой игры прогрессивно конечен, а множества f(X) = = {f (х)/х £ X] и g(X) конечны, то игра допускает абсолютное равновесие (а0, т0). Как и в предыдущей главе, последовательно определяем множества Х(а), полагая Х(О)={х/Гх=0}; Х(а) = {х/ГхсХ(а— 1)}, если а — порядковое число первого рода; Х(а) = [J Х(р), если а — порядковое число второго рода. V ≪ а Так как граф прогрессивно конечен, то, в силу теоремы 4 (гл. 3), существует порядковое число у, такое, что Х=Х(у); будем последовательно определять равновесие (а0, т0) для всех Х(а). 9 Эта теорема была открыта Цермело (Е. Zermelo) для шахмат и почти одновременно распространена Калмаром (F. Kalmar) и фон Нейманом на игры с платежами (где выигрыш игрока является проигрышем его противника). Затем Кун (W. Н. Kuhn) перенес ее на игры, в которых интересы игроков не обязательно противоположны; в [2] дается ее обобщение на случаи игр с неограниченной продолжительностью и таких игр, в которых имеется много способов достижения одного положения из другого. Здесь мы приводим наиболее общую формулировку.
СТРАТЕГИИ 71 В А^О) отображение о0 не обязано быть определено, однако мы положим ≪3Qx = x (х^А^О)). Если а — порядковое число первого рода, а равновесие (а0, т0) уже определено в А″(а— 1), то определяем равновесие (а0, т0) в А″(а) следующим образом1): пусть х£ХА, тогда 1° в случае х£Х(а— 1) полагаем аох = аох; 2° в случае х£Х(а)\Х(а— 1) полагаем аох~у, где у£Гх, и /(У; °о’ ^о) = °о’ то)- Очевидно, (≪з0, т0) есть равновесие для подигры, порожденной множеством Аг(0); допустим теперь, что (а0, т0)— равновесие для подигры, порожденной множеством А″(а— 1), и покажем, что тогда (а0, т0) является равновесием для подигры, порожденной А″(а), т. е. (1) f(x; а, т0)≪/(х; о0> т0) (а £ 1,д, х£Х(а)); (И) g(x\ с0, T0)≪g(x; а0, т0) х£Х(а))\ так как предполагается, что неравенства (1) и (lz) уже выполнены для х£Х(а— 1), то можно считать, что х^Аг(а)\Аг(а— 1). Если х(^ХА, то пусть ax = z\ ввиду того, что z£X(≪x— 1), имеем / (2; а, ТО) ≪ / (2; о0, т0) ≪ / (у; а0, т0). Будем выводить неравенство (1) во всех возможных случаях: 1° если игрок (Д) активен, a f(x)^f(z\ а, т0), то /(х; а, t0) = /(z; а, т0) ≪ f (у; ≪з0> т0) ≪ f (х; а0, V; 2° если игрок (Д) активен, а /(х)^> f (г; о, т0), то / (х; а, т0) = f (х) ≪ / (х; а0, 70); 3° если игрок (Д) пассивен, а /(х)≪^/(у; а0, т0), то / (х\ а, т0) ≪ / (х) = / (х; а0, Чо); 4° если игрок (Д) пассивен, а /(х)^ f (у; а0, т0), то fix-, ,'oX/(y; а0’ ^ = flx-, а0, ТО). Таким же путем, заменив f на g, докажем неравенство (I7). !) Случай, когда а — второго рода, тривиален: будучи определено на всех множествах расширяющейся последовательности, (с0, т0) тем самым определено и на их объединении. — Прим, перев.
72 ГЛ 6. ИГРЫ НА ГРАФЕ Следствие 1. Если граф (X, Г) некоторой игры прогрессивно конечен, то для любого е > 0 существует такая пара (а0, т0), что f(x; с, т0)≪/(х; ≪50, т0)4-е (х£Х, а£Ед); g(x; а0> а0, т0) + е (х £ X, т £ SB). В самом деле, заменим функции предпочтения f и g такими функциями ff и g!, чтобы множества g' (X}={g' (х^х^Х} были конечными и чтобы было |/'(*) — (*€*). |g' О) — g (x)Ky (x£Xy, это всегда возможно, поскольку fug предполагаются ограниченными на X. Так как существует равновесие с f' и gf, то будет существовать и е-равновесие с f и g. Следствие 2. Если граф (X, Г) некоторой игры прогрессивно конечен, то для любого е > 0 существуют такие стратегии а0 и т0, что f(x0; a, т0) — е≪/(х0; *0Х f (х0; а0, т)-|-е (каковы бы ни были Иными словами, в партии с начальным положением х0 игрок (Л) посредством стратегии о0 может гарантировать выигрыш f (х0, о0, т0) (с точностью г); с другой стороны, в силу первого неравенства, никакая другая стратегия о не даст ему возможности гарантировать больший выигрыш (с точностью е). Поэтому о0 будет благоприят- ной (оптимальной) стратегией для (Л). Чтобы доказать это следствие, достаточно положить f (х) = — g (х) и рассматривать игрока (Л) как активного, а (В) — как пассивного; тогда /(х0; с, t) = — g(x0; а, т) и высказанное утверждение получается сразу. Каждый раз, когда выигрыши обоих игроков одинаковы по абсолютной величине и противоположны по знаку, говорят, что игра представляет собой поединок\ значение /(”> т) = — g(a, т) называется результатом игры. (Л) стремится получить как можно больший результат, а (В) — как можно меньший. Наибольший резуль-
СТРАТЕГИИ 73 тат, который (Л) может гарантировать посредством стратегии, есть a0 = supinf f (о, т). ст т Наименьший результат, который (В) может гарантировать посредством стратегии, есть р0 = inf sup /(а, т). т ст Заметим, что ао≪Сро, ибо если каждый из игроков (Л) и (В) будет придерживаться благоприятной стратегии, то результат окажется не меньше а0 и не больше (30. Но справедливо и значительно более сильное утверждение. Теорема 5. Если в поединке граф (X, Г) прогрессивно конечен, то а0 = ро т). В самом деле, ввиду следствия 2 откуда sup/(о, т0)≪/(а0, то)~Ь£ ст inf/(a0, т)>/(а0, т0) — е. Ро С f (°о> то) + е -С ао + 2е. Поскольку е произвольно, Р0^а0; а так как противоположное неравенство выполняется всегда, то р0 = а0. Пример 1. Следствий из этой теоремы очень много. Для прогрессивно конечной игры Ним, где результат может быть только -|-1 или — 1, получается уже известное нам утверждение: при данном начальном положении х0 либо существует стратегия для (Д), позволяющая ему наверняка выиграть (а0 = -|-1), либо существует стратегия для (В), обеспечивающая выигрыш ему (а0 = — 1). Пример 2. Рассмотрим следующую игру: (Л) и (В) ходят по очереди, передвигая жетон по ребру графа, изображенного на рис. 6— 3. Если по окончании партии окажется, что жетон Рис. 6— 3. прошел четное число раз через вершину, отмеченную кружком (а или Ь), то (Д) платит один франк игроку (В); в противном случае (В) дает франк игроку (Д). При поверхностном анализе этой игры возможен следующий парадоксальный вывод. Можно подумать, что каждый из двух 9 Мы доказали в [3] (гл. I, стр. 15— 18), что это утверждение остается в силе и без предположения о прогрессивной конечности графа.
74 ГЛ. 6. ИГРЫ НА ГРАФЕ игроков имеет по две стратегии (указанные на рис. 6— 3). Придерживаясь стратегии о, игрок (Л) может получить результат f (а, т) = — 1, а придерживаясь — результат f (У, т') = — 1; поэтому кажется, что лучший выигрыш, который (Л) способен гарантировать, есть а0 =— 1. Точно такие же соображения дают ро = -|-1. Выходит, будто а0 ≪ ро, в противоречии с теоремой 5. В действительности мы имеем здесь дело с одним из тех кажущихся парадоксов, которые нередко встречаются в литературе. Ошибка объясняется тем, что в данном случае положение игры — это не вершина графа, а последовательность р, пройденных вершин !). В конечном счете важно, что выигрыш имеет вид шах {/(х)/х £ (о, т)}. При правильной постановке задачи, как легко проверить, ао = ро = -]-1. ’) И, таким образом, у игрока (Л) имеется не две, а четыре стратегии.— Прим. ред.
ГЛАВА 7 Задача о кратчайшем пути Процессы по этапам Для данного графа (X Г) и двух его вершин а и b можно поставить следующие задачи: Задача 1. Найти в графе путь, ведущий из а в Ь. Задача 2. Найти путь наименьшей длины, ведущий из а в Ь. Вторая задача охватывает первую. Пример 1. Любая игра с одним участником (например, меледа т), такен, или „игра в 15“ и др.) сводится к „процессу по этапам“: Рис. 7— 1а. Рис. 7— 1Ь. дано положение а, мы стремимся последовательными этапами достигнуть положения Ь. Одним из известных примеров является лабиринт*. путешественник, находящийся в а, ищет выход из лабиринта, двигаясь по коридорам (рис. 7 — 1а); это сводится к решению задачи 1 для графа, изображенного на рис. 7 — lb, где X— множество перекрестков, а у£Гх, когда перекрестки х и у непосредственно соединены коридором. *) Об игре „меледа″ (или сплетение колец), по-французски, baguenaudier, можно прочесть, например, в книге Л ю к а с Э., Математические развлечения, СПБ, 1883. См. также До мор яд А. П., Математические игры и развлечения, Физматгиз, 1961, стр. 67. — Прим, перев.
76 ГЛ. 7. ЗАДАЧИ О КРАТЧАЙШЕМ ПУТИ Пример 2. Задача о волке, козе и капусте. Коза, капуста и волк находятся на берегу реки; перевозчику надо переправить их через реку, но его лодка так мала, что он может взять с собой не более одного из этих трех „ пассажиров “. По очевидным причинам нельзя оставлять без надзора волка с козой, а козу с капустой. Как должен поступить перевозчик? Эта широко известная задача легко решается в уме благодаря малому числу вариантов, подлежащих рассмотрению; тем не менее перед нами типичный пример задачи, сводящейся к задаче 1: чертится граф, изображенный на рис. 7 — 2, и ищется путь, ведущий из положения а (когда коза К, капуста Кап, волк В и перевозчик П находятся на правом берегу) в положение b (когда все переправлены на левый берег); искомый путь показан на рисунке жирными линиями. В более общем случае необходим систематический алгорифм, и мы изложим несколько методов. Алгорифм для задачи 1 в плоском случае. Пусть граф G с двумя отмеченными вершинами а (вход) и b (выход), принадлежащими одной компоненте связности, является аЬ-плоским\ последнее означает, что граф G', полученный из G добавлением нового ребра [а, Ь], можно полностью поместить на плоскости так, чтобы никакие два его ребра не имели общих точек, отличных от граничных (см., например, граф G, изображенный на рис. 7— lb). Пусть, далее, а не является вершиной никакого простого цикла. Для соответствующего лабиринта (рис. 7— 1а) решение задачи 1 значительно упрощается, и достаточно руководствоваться следующим правилом: выйдя, на перекресток, выбирать всегда самый левый (или всегда самый правый) коридор. Общий алгорифм для задачи 1. Рассмотрим сначала граф, представляющий собой прадерево с корнем а (см. рис. 2 — 1), и найдем путь, ведущий из а в некоторую вершину Ь\ имеется следующий простой способ: выходим из а, идем по какой-нибудь ветви насколько возможно далеко, затем возвращаемся на ближайший перекресток и
ПРОЦЕССЫ ПО ЭТАПАМ 77 отправляемся по новому, еще не изведанному направлению, и т. д., пока не натолкнемся на вершину Ь. Искомый путь из а в b будет тогда состоять из всех тех ребер, которые в процессе поисков были пройдены ровно по одному разу. Если граф G не является прадеревом, то мы приходим к предыдущему случаю, „отсекая″ некоторые ребра и от одной из двух своих граничных точек х: это отсечение производим каждый раз, когда, пройдя по некоторому ребру и, мы попадаем на уже пройденный ранее перекресток х (ведь после отсечений рёбра, пройденные хотя бы один раз, образуют прадерево). Заметим, что этот алгорифм можно применить к задаче о лабиринте не только тогда, когда известен план, но и в случае, если путешественник заблудился: достаточно помечать какими-либо знаками встречающиеся на пути перекрестки и коридоры. Другой алгорифм для задачи 1 (Тарри [5]). Путешественнику, заблудившемуся в лабиринте, достаточно соблюдать следующее правило: никогда не проходить дважды по одному и тому же коридору в одном и том же направлении] находясь в х, не выбирать того коридора, который привел на перекресток х в первый раз,— если только имеется возможность другого выбора. 1° Покажем, что если путешественник остановился потому, что не может более соблюдать это правило, то он находится в а, причем каждое ребро, инцидентное а, уже пройдено им в обоих направлениях. В самом деле, пусть он находится в х (х Ф а) и пусть этот перекресток был ранее пройден k раз; ребра, инцидентные х, были пройдены в общей сложности k -|- 1 раз по направлению к х и k раз от х, значит, можно пойти по тому ребру, по которому путешественник еще не выходил из х. 2° Пусть (aQ = a, av а2, . . .) — последовательность различных пройденных перекрестков, пронумерованных в том порядке, в каком они встретились впервые; покажем, что каждое ребро, инцидентное любой вершине ak, было пройдено дважды !). В самом деле, это верно при k = 0 (в силу 1°); допустим, что это утверждение верно при k^p— 1, и докажем его для k = р. Пусть (az, ар} — ребро, которое привело путешественника в ар в первый раз; так как I ≪ р, то это ребро пройдено в обоих направлениях, что, в силу правила Тарри, возможно лишь в случае, когда все ребра, инцидентные ар, пройдены в обоих направлениях. Ч. И Т. Д. 3° Если существует путь (а, хр х2, ..., хт, Ь) из а в Ь, то, очевидно, перекресток b рано или поздно встретится путешественнику: действительно, в силу 2° каждая вершина, смежная с уже пройденной, тоже была когда-либо пройдена. 9 При этом все еще предполагается, что путешественник остановился в а потому, что не может более соблюдать правило Тарри. — Прим. ред.
78 ГЛ 7. ЗАДАЧИ О КРАТЧАЙШЕМ ПУТИ Алгорифм для задачи 2. С помощью итерационного метода постепенно придадим каждой вершине х некоторый индекс, равный длине кратчайшего пути из а в х\ 1° Вершину а пометим индексом 0. 2° Если все вершины, помеченные индексом /п, образуют известное множество А (т), то помечаем индексом т 1 вершины множества: А (т-{-!) = {х/х £ГА(т), x(£A(k) при всех 3° Как только вершина b окажется помеченной, останавливаемся; если Ь£А(т), то рассмотрим такие вершины bv b2, ... , что Ь^А(т — 1), Ь^А{т — 2), г>2еГ″Ч- ^€Л(0), Путь }± = \a = bm, bm_v ...» bv b] дает решение задачи. Некоторые обобщения Часто возникают следующие задачи, являющиеся обобщениями задач 1 и 2: Задача 3. Каждой дуге и данного графа (X U) отнесем число l(u)^Q, которое назовем „длиной11 дуги и\ требуется найти путь рь, ведущий из данной вершины а в данную вер- ш-ину b и такой, чтобы его полная длина «Ср- была наименьшей. Задача 4. Каждому пути [i = [Xp х2, ..., хт\ отнесем число /(рь); найти путь р, для которого число /(ji) является наименьшим. Задача 5. Каждому частичному подграфу Gx данного графа G отнесем число h(G^\ найти частичный подграф Gv для которого число h(G^) является наименьшим. Каждая из этих задач охватывает предыдущую. Пример 1. Пусть X— множество географических пунктов, U— множество дорог, соединяющих некоторые из них, Предполагается, что все перекрестки дорог входят в X. Для дороги и число 1(и) может означать или ее длину в километрах, или стоимость проезда по ней, или же, например, продолжительность проезда (при соблюдении всех правил движения).
НЕКОТОРЫЕ ОБОБЩЕНИЯ 79 Тогда для поездки из одного пункта в другой ищется наиболее короткая, или наиболее экономичная, или наиболее быстрая дорога. В каждом из этих случаев мы должны решать задачу 3. Пример 2. Динамические программы (Веллман [2]). Два золотых месторождения а и b содержат соответственно а и р тонн золота; но для их разработки имеется только одна машина, которая способна в течение года добыть г% золота, содержащегося в месторождении а (причем вероятность того, что в следующем году машина сохранит свою пригодность, равна р), или s% золота, содержащегося в b (с вероятностью q остаться пригодной для работы в следующем году). Рассмотрим граф с двумя вершинами а и Ь, где Va = Vb = = [а, Ь], и будем искать такой путь [хр х2, ...] (где xt = a, если, в течение f-го года предполагается разрабатывать месторождение а), для которого математическое ожидание прибыли будет наибольшим. Полное количество золота F (а, (3), ожидаемое при оптимальной стратегии, определяется функциональным уравнением F (а, Р) = шах {га — |— ((1— г)а, (3), 5р-|~^Л(а, (1— s)[3)}. Этот тип задачи, называемый „динамической программой″, является частным случаем задачи 4; здесь Гх — постоянное множество, а функция f (|i) имеет весьма специальный вид. Мы будем заниматься только задачами типа 3: дан граф G = (Х /7), каждой его дуге отнесена „длина″ Z(zz)^O; ищется путь jx из х0 в хп, минимизирующий полную „длину″: i (н)=51 «Ср* Алгорифм для задачи 3 (Форд [3]). Процесс, легко осуществляемый и для сетей с большим количеством вершин, состоит в следующем: Г Помечаем каждую вершину xz индексом Xz; первоначально берем Хо = О и Xz = -[-oo при Z =£ 0. 2° Ищем такую дугу (xz, Ху), для которой Ху — Xz>Z(xz, Ху); затем заменяем индекс Ху индексом Ху = Xz -}-l(Xi, Xj) ≪ Ху; заметим, что Ху > 0 при J =/= 0. Продолжаем в том же духе, пока еще остается хотя бы одна дуга, для которой можно уменьшить Xz. 3° После того как индексы установятся, найдется такая вершина хР1, что Хл — XP1=Z(xPl, хп); в самом деле, индекс ХЛ при нашем процессе монотонно уменьшался, а хР1 — последняя вершина, послужившая для его уменьшения. Точно так же найдется вершина хР2, для которой ХР1— XP2 = Z(xP2, хР1), и т. д. Последовательность ХЛ, ХР1, ХР2, .. . — строго убывающая, поэтому в некоторый момент будет xPk+i — х0. Я утверждаю, что Хл — длина
80 ГЛ. 7. ЗАДАЧА О КРАТЧАЙШЕМ ПУТИ кратчайшего пути из хов хпи что = [хи, хр^ xpk_^ •••> хре хп этот кратчайший путь. Доказательство. Пусть р, = [xq, xkl, х^2, ...» xks+l = хп\ — произвольный путь между х0 и хп; его длину (в обобщенном смысле) обозначим через I (р.); тогда — 0 ≪ /(х0, х^), [ХЬ5* Хп)' Складывая почленно эги неравенства, получаем, что для любого пути р.: Так как для пути р0 имеем = Z (рь0), то путь р0— кратчайший. Пример. Предлагаем читателю проверить, что кратчайший путь между х0 и х9 в симметрическом графе, изображенном на рис. 7— 3, имеет длину Z(p0) = 14. Замечание. Положим для простоты // = Z(x/, X;) при (х/, х;-)£ U, lj=+ ею при (xz, Xj)(£ 17; каждому пути р. можно отнести числа где £; = 1, если р. содержит дугу (х/, хД и $} = 0 в противном случае. Задача 3 сведется тогда к нахождению системы целых чисел {^•// = 0, 1, п; / = 0, 1, ,,,, п\, минимизирующей линейную
НЕКОТОРЫЕ ОБОБЩЕНИЯ 81 форму 2 и удовлетворяющей системе линейных соотношений hj 2(Й*— Й) = о при / #= О, I ф п\ ’ Ж-^) = + 1; j Другими словами, мы имеем здесь дело с линейной программой. которую могут решать обычные электронные вычислительные машины; но не будет ли это стрельбой из пушки по воробьям?
ГЛАВА 8 Транспортные сети Задача о наибольшем потоке Транспортной сетью называется конечный граф без петель, каждой дуге и которого отнесено целое число с («) 0 (называемое пропускной способностью дуги и) и у которого 1° существует одна и только одна такая вершина х0, чтоГ-1х0= 0; эта вершина называется входом сети; 2° существует одна и только одна такая вершинам, чтоГг= 0; она называется выходом сети. Пусть U~— множество дуг, заходящих в х, a Ux— множество дуг, исходящих из х. Говорят, что функция ср (rz), определенная на U и принимающая целочисленные значения, представляет собой поток по этой транспортной сети, если (1) ?(«)>о (2) 2 ?(и)— S ?(«) = О (х=£х0, хфг)\ и^и+ (3) ≪р(н)≪с(и) («£С/)- Функцию ср (и) мы будем уподоблять количеству вещества, протекающего (в единицу времени) по дуге и = (х, у) от х к у, причем это количество не превышает пропускной способности дуги, и в каждой вершине х, отличной от входа xQ и выхода z, количество притекающего вещества равно количеству вытекающего. Из (2) непосредственно следует (4) 2 ?(«)= 2 ?(«) = ?г- Это число ср2, выражающее количество притекающего в z вещества, называется притоком в точке z, или величиной потока ср; задача, которой мы здесь займемся, состоит в определении наибольшей величины потока по данной транспортной сети. Пример 1. Морской грузооборот между двумя континентами. Некоторые порты xv х2, ... располагают продуктом, имеющим спрос в портах ур у2, ...; пусть наличный запас продукта в равен sit а потребность в этом продукте в уу- равна dj. Обозначим
НАИБОЛЬШИЙ ПОТОК 83 через полное количество продукта, которое способны перевезти суда, плывущие из xL в уу. Возможно ли удовлетворить все потребности? Как организовать перевозки? Чтобы свести эту задачу к задаче о наибольшем потоке, достаточно соединить xt с у^ дугой пропускной способности с/у-, затем соединить вход х0 с каждой вершиной xt дугой пропускной способности st и, наконец, соединить каждую из вершин у у с выходом z дугой пропускной способности если ср — наибольший поток, то ≪p(xz, у;.) будет означать количество продукта, которое надо перевезти из xz в уу-, чтобы удовлетворить потребности в наибольшей степени. Пример 2. {Динамические сети [3]). Из различных городов хр х2, . . хп в одно и то же место назначения у отправляются автомашины; если (xz, Ху)— дорога, соединяющая два города xt и Ху, то пусть ZZ;. означает продолжительность переезда по ней из xz в ху-; €Zy — количество автомашин, которое может пропустить эта дорога за единицу времени (в случае отсутствия дороги с^ = 0); си— количество автомашин, которое может одновременно находиться в городе xz; a-L — первоначальное число автомашин в xz. Как надо организовать движение, чтобы в течение промежутка времени 6 в пункт у прибыло возможно больше машин? Определим транспортную сеть, множеством вершин которой служит декартово произведение Х= {Хр х2, .... у} X {о, 1, 2 . 9}. Для вершины xz(/) = (xz, /) определим дуги (xz(f), АТу -J— Zzy)) С пропускной способностью CZy И дуги (xz(/), Xz(/-j“l)) с пропускной способностью czz; обозначим через ?(xz(0, Xy(Z + ^.y)) количество автомашин, выезжающих из города xz в момент t и направляющихся в Ху; при этом ≪p(xz(/), xz (7-^-1)) будет количеством автомашин, остающихся в xz в момент t. Наконец, соединим вход х0 с каждой из вершин xz(0) дугой пропускной способности az, а вершины у(1), у(2), ...» у(6)— с выходом z дугами пропускной способности -|- оо; наибольший поток определит тогда оптимальное использование дорог (см. рис. 8— 1). Замечание. Положим для простоты z=xn+1 и определим числа с1, и By (при / = 0, 1, 2 . п; /=1, 2 . п-\- 1) следующим образом: z | 0, если (xz, Ху) (£ U\ Ci | r(xz, Ху), если (xz, Xy)^L7; = Xj).
S4 ГЛ. 8. ТРАНСПОРТНЫЕ СЕТИ Задача о наибольшем потоке сводится к определению такой системы чисел для которой (1) а = 0, 1, /г; у = 1, 2, /г+1); п п+1 (2) 1^*— 2С'=0 (/=1. 2, .... ге); k=0 j = l п (3) 2 ln+i наибольшая. 7=0 Таким образом, задача представляет собой классическую линейную программу, несмотря на то, что искомые Ц. должны быть Рис. 8— 1. Карта дорог и соответствующая пространственно-временная транспортная сеть. целыми числами [в самом деле, из вида условий (1), (2), (3) следует, что целочисленное решение всегда есть]. Здесь можно было бы вое-
НАИБОЛЬШИЙ ПОТОК 85 пользоваться симплекс-методом, однако алгорифмы, которые мы собираемся изложить, настолько проще, что позволяют находить вручную решение для чрезвычайно сложных сетей. (В корпорации РАНД этим способом был исследован граф с 500 вершин и 4000 дуг.) Пусть АсХ— такое множество, что z£a. Множество Ua дуг, заходящих в А, иногда называют разрезом сети; равным образом, пропускной способностью разреза Ua называют число c(Ua)= 2 с(«)- Каждая частица вещества, движущаяся от к z, пройдет хотя бы однажды по какой-нибудь дуге разреза Ua\ поэтому, каковы бы ни были поток ср и разрез Ua, всегда Следовательно, если для некоторого потока ср и некоторого разреза V мы имеем cpz = c(V), то мы можем быть уверены, что поток ср имеет наибольшую величину (а разрез V обладает наименьшей пропускной способностью). Алгорифм для определения наибольшего потока в плоском случае (Форд — Фалкерсон [2]). В случае х0^-плоского графа (т. е. такого графа, который после добавления дуги (x0, z) остается плоским) нахождение наибольшего потока можно осуществлять следующим образом. 1° Соединим xQ и z дугой (z, х0), которую изобразим в виде горизонтального отрезка; граф чертим над отрезком (x0, z) таким образом, чтобы никакие дуги не пересекались друг с другом в точках, отличных от граничных; поскольку граф плоский, можно определить наивысший путь из х0 в z, выбирая всякий раз самую левую дугу не ведущую только в тупики или в уже пройденные вершины. 2° Рассмотрим наивысший путь рь1 из х0 в z и найдем дугу с наименьшей пропускной способностью. Затем удалим их и вычтем c(zzj) из пропускных способностей всех дуг пути То же самое проделаем опять, рассматривая новый наивысший путь р2 и его дугу и2 с наименьшей пропускной способностью, и т. д. 3° Продолжаем этот процесс до тех пор, пока не будут разрушены все пути из х0 в z. Тогда в исходном графе Q зададим на каждом пути рьл поток, количественно равный
86 ГЛ. 8. ТРАНСПОРТНЫЕ СЕТИ пропускной способности соответствующей дуги uk (взятой в тот момент построения, когда был наивысшим путем). Суммарный поток и будет наибольшим потоком по G1). Общий алгорифм для нахождения наибольшего потока (Форд и Фалкерсон [2]). Рассмотрим транспортную сеть с потоком ср(х, у), величину которого мы стремимся улучшить. 1° Дугу и назовем насыщенной, когда ср (zz) = с (и)\ поток назо- вем полным, если каждый путь из х0 в z содержит по крайней мере одну насыщенную дугу. Если поток не является полным, то можно найти путь рь, все дуги которого не насыщены [при этом применяется тот же алгорифм, что и в задаче 1 (гл. 7): в частичном графе, образованном ненасыщенными дугами, находим путь из xQ в z]. Положим ср' (zz) = ср (zz) 1 при zz £ р», ср' (zz) = ср (zz) при zz (£ р. Очевидно, ср' представляет собой поток с величиной ъ=1 > ?г. Таким способом нетрудно увеличивать неполный поток до тех пор, пока он не станет полным. 2° Пусть ср(х, у)— полный поток; с помощью итерационного процесса будем последовательно помечать те вершины графа, в которые можно доставить единицу добавочного вещества. Помечаем xQ индексом 0. Если xz2)— уже помеченная вершина, то помечаем индексом-]-* все те непомеченные вершины у, для которых (Хр y)£U И ≪р(хг> у)≪С(Хр у). Если вершина xt помечена, то помечаем индексом — I все не помеченные еще вершины у, для которых (у, x^^U, ср (у, xz) > 0. Если этим процессом мы добились того, что вершина z оказалась помеченной, то между xQ и z существует цепь |л, все вершины которой различны и (с точностью до знака) помечены номерами предыдущих вершин. Положим ср' (zz) = ср (zz), если 9 Предлагаемое автором доказательство некорректно. Правильное доказательство можно, например, получить путем переделки из работы Форда и Фалкерсона [2], где рассматриваются сети с неориентированными ребрами и нецелочисленные потоки. Другое доказательство приводится в добавлении VI.— Прим, перев. 2) Предполагается, что все вершины графа как-либо перенумерованы.— Прим. ред.
НАИБОЛЬШИЙ ПОТОК 87 ср' (и) = ср (zz) -|- 1, если zz£p. и при следовании по цепи р от х0 к z дуга и проходится в направлении ее ориентации; ср7 (zz) = ср (zz)— 1, если zz^ji и при следовании по р» от х0 к z дуга zz проходится в направлении, противоположном ее ориентации (см. рис. 8— 2). Рис. 8— 2. Очевидно, cpz(zz) все еще является потоком, атак как ср' = ср^-|-1, то величина потока возросла. 3° Если некоторый поток ср0 невозможно увеличить предыдущим методом, т. е. если невозможно пометить вершину z, то я утверждаю, что ср0 имеет наибольшую величину. В самом деле, пусть А— множество непомеченных вершин; так как х0(£а, z£A, то множество А определяет разрез Ua\ имеем 2 ?°(и)— 2 ≪р°(«)= 2 с (и) — 0 = с (С7д). «€≪≪£ U^UA Поэтому поток ср0 обладает наибольшей возможной величиной. Из сказанного сразу вытекает фундаментальный результат. Теорема Форда — Фалкерсона. Для заданной транспортной сети наибольшая величина потока равна наименьшей пропускной способности разреза, т. е. maxcp^ = min с (t/д). * А z Пример. Рассмотрим транспортную сеть на рис. 8— 3 с полным потоком ср, который насыщает дуги, изображенные жирными линиями; его величина cpz = 5. Читатель может сразу же получить наибольший поток величины 6.
88 ГЛ. 8. ТРАНСПОРТНЫЕ СЕТИ Заметим, что для сети этого типа можно непосредственно получить наибольший поток по следующему правилу: будем увеличивать единица за единицей пропускаемый поток, перемещая каждую новую единицу по направлению к такой вершине, из которой может еще выйти наибольшее количество единиц; как только поток станет полным, он окажется наибольшим. Вообще говоря, речь тут идет о некотором псевдоалгорифме, который оказывается весьма действенным в большинстве случаев, но не всегда дает наибольший поток и поэтому должен применяться лишь в первом приближении. Задача о наименьшем потоке Для заданной транспортной сети будем искать теперь поток ср наименьшей величины, удовлетворяющий условию (3') ≪р(а)>с(«) (и g U). Эта задача, весьма близкая к предыдущей, встречается столь же часто. Пример. Наименьшее покрытие простого графа (X Y, Г). Назовем покрытием графа такое множество V дуг, что любая вершина графа служит граничной точкой хотя бы для одной из этих дуг. Ищется покрытие V с возможно меньшим |V |. Эта задача, которая в общем виде будет решена в главе 18, есть задача о наименьшем потоке для случая, когда граф— простой, т. е. образован двумя непересекающимися множествами X, Y и отображением Г множества X на К. Соединим вход xQ с каждой из вершин х^Х, а каждую вершину £ Y — с выходом z дугой пропускной способности -|- 1 и примем пропускную способность остальных дуг равной нулю; при наименьшем потоке ср дуги u^U, для которых ср (и) > 0, образуют наименьшее покрытие.
ПОТОК, СОВМЕСТИМЫЙ С МНОЖЕСТВОМ ЗНАЧЕНИЙ 89 Алгорифм для задачи о наименьшем потоке. Можно применить процесс, в точности аналогичный процессу для задачи о наибольшем потоке; можно также свести ее к этой задаче следующим образом: 1° Ищем поток срр такой, что (zz) с (й) при всех и (последовательно перемещая единицы вещества к дугам, наиболее далеким от насыщения). 2° Полагаем с2 (zz) = срг (и)— с (и) и строим при помощи алгорифма Форда — Фалкерсона такой наибольший поток ср2, что ≪p2(zz)^ ≪^c2(zz) при всех и. 3° Имеем Т1 (“) — ?2 (“) > ?1 (“) — С2 («) = С («)> поэтому ср = cpi — ср2 есть искомый наименьший поток. Задача о потоке, совместимом с множеством значений Снова рассмотрим транспортную сеть, но каждой дуге и отнесем вместо числа с (и) 0 множество С (и) натуральных чисел. Возникают следующие задачи: Задача 1. Построить такой поток cp(zz), чтобы, cp(z/)£C(zz) при всех и. Задача 2. Построить наибольший поток cp(zz), для которого у(и)^С(и) при всех и. Вторая задача включает первую; она охватывает также задачу о наибольшем потоке, если положить С (и) = {0, 1, 2, ..., с(и)}. Пример 1. [Фишер (R. A. Fisher)]. Какое наибольшее количество троек можно образовать из п объектов (1), (2), ..., (п) таким образом, чтобы никакие два объекта не находились вместе более чем в р различных тройках? Эта задача сводится к отысканию наибольшего потока для сети, изображенной на рис. 8— 4, где числа С (и) указаны около каждой дуги и. Заметим, что задача этого типа возникла в биологии под названием „планирование неполных блоков″ („incomplete balanced block design″) при опытах по выведению различных сортов пшеницы и что теория, которую мы излагаем ниже, еще не дает возможности ее решить. Пример 2 (Гофман — Кун [5]). Пусть X— конечное множество; S2, . . ., Sn — некоторые подмножества Х\ Tv Т2, . . ., Тр — некоторые попарно непересекающиеся подмножества X; bv Ь2, ... ,Ьр, Ср с2, ..., ср — целые числа (0 ≪ bL ≪ ct при всех /). Найти в X множество Y = [ур у2, у3, . . ., yj, где yk £ Sk при k — 1, 2, . . . , nt удовлетворяющее условиям ЦП (Z==l, 2 . р).
90 ГЛ. 8. ТРАНСПОРТНЫЕ СЕТИ Задача сводится к отысканию наибольшего потока ср по сети, изображенной на рис. 8— 5; множество Y образуется теми у, для которых ср (у, у) > 0. Эта задача будет полностью решена с помощью теории, которая излагается ниже. Рис. 8— 4. Начнем с рассмотрения частного случая задачи 1: пусть дана транспортная сеть с пропускными способностями существует ли поток cp°(rz), удовлетворяющий условию ср0 (и) с (и) и насыщающий дуги, идущие в выход z? Положим для простоты JZ ч ( с (у, z), если у£Г-1г; d(y) = > -1 | 0, если у £ Г d(y) выражает „потребность″ вершины у, которую мы стремимся удовлетворить; будем также называть „потребностью″ множества АаХ число у£а Как обычно, обозначаем через Ua множество дуг, заходящих в А, а через Ua— множество дуг, исходящих из А; через F (А) обозначим общее количество потока, которое может войти в А (после удаления дуг множества {Уд)1)* *) Т. е. /7(Я) = тах 2 ? (и) по сети, полученной из исходной соеди- нением всех вершин множества А с выходом z дугами бесконечной пропускной способности. — ПримЛ перев.
ПОТОК, СОВМЕСТИМЫЙ С МНОЖЕСТВОМ ЗНАЧЕНИЙ 91 Наконец, полную пропускную способность произвольного множества V дуг обозначаем С (V) = 5 с (и). и.£У Лемма. Пусть ЛосзАг== ЛГ\ {х0, z}; если для любого множества Л, удовлетворяющего условию ЛосЛсХ имеет место неравенство с(ид)^> d(A), то F^A^dt^. В самом деле, превратим данное множество XqCzA' в выход z$, удаляя дуги Uaq и все дуги, не принадлежащие никакому пути, идущему из xQ в Ло, и отождествляя все вершины Ло; для новой сети наибольшая величина потока вследствие теоремы Форда— Фалкерсона будет min с (W) = F (Ло). w Пусть WQ— разрез (новой сети) с наименьшей пропускной способностью; он определяется некоторым множеством А (исходной сети), где х0(£Л, Л=эЛ0, z^A; имеем 1^0 = (7д, откуда F (Ло) = с (Го) = с (Uа) > d (Л) > d (Ло).
92 ГЛ. 8. ТРАНСПОРТНЫЕ СЕТИ Теорема 1 (Гейл [4]). Пусть дана транспортная сеть с пропускными способностями c(uy^fy поток ср0, удовлетворяющий условию 4Q(ji)^.c(u) и насыщающий дуги, идущие в z, существует в том и только в том случае, если (1) с(С^)>йГ(Л) (.4с/=%\к0, г}). 1° Если существует поток, который насыщает дуги, инцидентные z, то для любого АсХ с(^/д)>^(Л)>^(Л). Отсюда следует неравенство (1). 2° Допустим, что неравенство (1) верно, и рассмотрим произвольный разрез W, определяемый множеством S, где x0(£S, z^S, Положим Л = 5\ (г); в силу леммы, й(Л) ≪ = 2 с(х, z) = c(W) — d(X\A). Таким образом, для любого разреза W c(W)>d (Л) + d (Х\Л) = d (X). Наибольший поток ср0 удовлетворяет тогда условию cp° = minc (W)^d(X). w Следовательно, этот поток насыщает все дуги, идущие в выход z. Следствие (теорема о насыщении). Поток ср, удовлетворяющий условию ср (и) с (и) и насыщающий дуги, идущие в z, существует в том и только в том случае, если (2) F(YY^d(Y) (ГсГ-1^. Надо доказать равносильность неравенства (1) предыдущей теоремы неравенству (2). (1) (2), так как, в силу леммы, F(A)^d(A) (ЛсЛ), откуда, в частности, (r≪=r-1z). (2) (1), ибо если рассмотреть множество АаХ и положить У = А(]Г~1г, то d (Л) = d (Г)≪ F (Г)≪ F (Л). Важным обобщением теоремы 1 является следующий результат:
ПОТОК, СОВМЕСТИМЫЙ С МНОЖЕСТВОМ ЗНАЧЕНИЙ 93 Теорема 2 (Гофман1)). Пусть каждой дуге и некоторой транспортной сети отнесены два целых числа Ь(и) и с (zz) [О b (zz) с (zz)]. Пусть Л — семейство тех подмножеств множества X, которые либо не содержат ни х0, ни z, либо содержат х^ и z одновременно. Поток ср, удовлетворяющий условию b (и) ср (и) с (zz) при всех и, существует в том и только в том случае, если c(Ua)>1)(uX) (Л£^). Пусть дана сеть G с двумя числами b (и) я с (и) для каждой дуги zz; этой сети следующим образом можно поставить в соответствие сеть G с пропускными способностями с (и)\ добавим к вершинам G две точки х0 и z, которые будут служить входом и выходом сети G; каждой дуге и = (х, у) из G припишем пропускную способность с (zz) = с (и) — b (zz); соединим вход х0 с вершиной у дугой пропускной способности с(х0, y) = b(u), а вершину х соединим с выходом z дугой пропускной способности с(х, z) = b(u). Наконец, соединим z с х0 дугой пропускной способности C(Z, Х0) = -Р-ОО. 1° Докажем равносильность двух утверждений: (1) для сети G существует такой поток ср, что й (zz)≪; ср(zz) с (и)\ (2) для сети G существует поток ср, который удовлетворяет условию cp(zz)^c(zz) и насыщает дуги, идущие в выход z. (1) (2). В самом деле, если ср существует, то достаточно определить ср на сети G так: ср (zz) = ср (zz) — b (и) при и £ U, ≪р (х, z) = 2 ь (х, у), ≪Р(ХО, у) = 2 Ь{х, у), •ver-1), ?(*> х0) = ≪рг; !) Этот результат, доказанный Гофманом (A. F. Hoffman) в терминах линейных программ, был перенесен на теорию сетей Л. Р. Фордом.
94 ГЛ. 8. ТРАНСПОРТНЫЕ СЕТИ функция ср является потоком по G, так как 1) ср (zz) = ср (zz) — b (zz) > b (zz) — b (zz) = О, 2) ср (zz) = ср (zz) — (zz)≪ с (zz) — b (zz) = ~c (и), 3) 2 ?(«)— 2 ?(«)= 2 ?(«)— 2 ≪?(«) = o. u£u+ u£U~ u$u+ Очевидно, поток ср насыщает дуги, идущие в выход z. (2) гф (1). В самом деле, если ср существует, то определим функцию ср так: ≪р(И)=^(«)+й(«) («£С/); функция ср является потоком по G, удовлетворяющим требуемым условиям, так как 1) (zz) = ср (zz) -[■“ b (и) О -|— b (zz) = b (и), 2) ср (zz) = ср (zz) -f- b (zz)≪ с (и) -\-Ъ(ц) = с (zz), з) 2 ?(«)— 2 ≪р(«)=о. ^их а^их 2° Теперь осталось найти необходимое и достаточное условие для (2). Для любого множества АсХ обозначим через Va множество дуг сети G, заходящих в А, а через d (Л) — потребность множества А, определенную для сети G\ в силу сказанного выше (теорема 1) условие (2) равносильно условию 7(Уа)>й(Л) (ЛсХ). Если это неравенство верно для некоторого множества S, не содержащего ни х0, ни z, то оно тем более верно для множества Т=5и {≪?}, так как ё (Vr) >~с (V$) >d(S) = d (Г). Для множеств вида /? = 5'и(^о} это неравенство выполняется всегда, ибо с (V#) = — оо. Ограничимся теперь множествами А семейства в этом случае рассматриваемое неравенство будет иметь вид 2 ^(^)+ 2 с(хо» *)> 2 О
ПОТОК, СОВМЕСТИМЫЙ С МНОЖЕСТВОМ ЗНАЧЕНИЙ 95 или (см. рис. 8— 6) 2 (с (и) — b (и)) -|~ 2 (й) 4- + 2 *(«)> 2 *(«)+ 5 *(«) (дс^), « = (*, У) « = (*, У) х£А х£А a^UA у^А у£А или, окончательно, с(47л)>^(^) (Д£Л). Алгорифм для задач 1 и 2 в случае, когда множество С (и) — интервал. 1° Для сети G каждой дуге и, которой отнесены два Рис. 8— 6. числа Ь(и) и c(zz), удовлетворяющие условию О С b (и) с (и), находим такой поток ср, что b (zz) ср (zz) с (zz), отыскивая, как прежде, наибольший поток ср для сети G и полагая cp(zz) = cp(zz) + #(zz). 2° Полученный таким образом поток ср не обязательно является наибольшим; но процесс, аналогичный процессу Форда — Фалкерсона, позволяет добиться наибольшей величины: помечаем вершину х0 коэффициентом 0; если xt— помеченная вершина, то помечаем коэффициентом -\-1 все те непомеченные вершины у, для которых (Хр у) С и, (Хр у) ≪ С (xt, у);
96 ГЛ. 8. ТРАНСПОРТНЫЕ СЕТИ если Xj — помеченная вершина, то помечаем коэффициентом — I все те непомеченные вершины у, для которых (у, xz)£(7, ≪(> (у, Xj) > b (у, х). Если таким путем мы добьемся того, что вершина z окажется помеченной, то поток можно увеличить по методу Форда — Фалкер- сона. Если же для некоторого потока ср0 пометить z невозможно, то пусть А — множество тех вершин, которые невозможно пометить. Имеем х0(£а, z£A; величина ср0 равна ≪р°= 2 ?°(«)- 2 ?° («)=■■ с Так как, с другой стороны, величина потока не может превышать с (П А то ср0 — наибольший поток. Из предыдущего следует Теорема 3. Если для некоторой транспортной сети существует такой поток ср, что 0 b (и) ср {и) с (и) для всех дуг и, то наибольшая величина этого потока равна = min (с (Uа) -Ь ((/!)). А z Бесконечные транспортные сети Рассмотрим транспортную сеть, определяемую графом (X U)J с пропускными способностями с (zz); в этом параграфе уже не предполагается, что | А″| ≪ со. Мы обобщим теорему о насыщении. Теорема 4. Пусть Y = {ур у2, ..., уп, ...}— множество {предполагаемое счетным') вершин, смежных с выходом z бесконечной сети\ если граф регрессивно конечен и Г'1- конечен в каждой точке, отличной от z, то необходимым и достаточным условием существования потока ср0, насыщающего все идущие в z дуги, является выполнение неравенства F{A)^d{A) (AaY, |Д|≪оо). Положим Yn = {ур у2, . . . , уп] и обозначим через Хп множество таких вершин, которые принадлежат по крайней мере одному пути, идущему от х^ к z через какую-нибудь из точек множества Yп. Граф, получаемый изменением ориентаций всех дуг и удалением z, является Г-конечным и прогрессивно конечным, следовательно, в силу теоремы 2 (гл. 3), ](Г-1)у]≪оо (у£Г).
БЕСКОНЕЧНЫЕ ТРАНСПОРТНЫЕ СЕТИ 97 Значит, множество п & = 1 конечно и порождаемая им подсеть Gn конечна. Обозначим через Фп множество потоков уп по сети Gn, насыщающих выходные дуги [и, кроме того, если а — дуга, не входящая в Gn, то полагаем срп(«) = О]. Так как Gn — конечная сеть, то |ФЛ| ≪ оо; далее, в силу теоремы Гейла, Фл^=0; наконец, каждому потоку ?п€Ф/г можно очевидным образом поставить в соответствие поток Ъг-i € Ф/г-р удовлетворяющий условию тогда ввиду следствия Кёнига (гл. 3) существует последовательность (ср®, ср®, ..., ср®, .. где ср® £ Фп для всех п, такая, что ≪р?≪?к... Положим ср0 (и) = sup ср® (zz) и покажем, что это — поток, сов- п местимый с сетью G. Если а Ф z, то множество U~^ дуг, заходящих в а, конечно и существует такое натуральное число р, что (м) = ?° («) (« € иа )• Так как ср® — поток по сети Gp, то 3 ?°(«) = 2 ≪$(«)= 3 ?’(«)= 2 ≪р°(«)- u£U~ иеи+ иеи+ Поэтому ≪р° — поток; он совместим с пропускными способностями, ибо ≪Р° («) = sup ≪р“ (и) ≪ с (и) (и £ U). п Наконец, очевидно, что этот поток насыщает все выходные дуги; следовательно, он является искомым.
ГЛАВА 9 Теорема о полустепенях Полустепени исхода и захода Для большей общности мы рассматриваем здесь не графы, а мультиграфы; говорят, что мультиграф (X U) есть р-граф, если одна и та же пара вершин может соединяться не более, чем р дугами из U (в каждом направлении). Рассмотрим теперь р-граф с вершинами xv х2, . . ., хп. Назовем полу степенью исхода вершины хк число дуг, исходящих из xk, т. е. Точно так же полустепень захода вершины xk есть число дуг, заходящих в xk, т. е. d~ (хА) = | | . При d+ (x) = d~ (x) = 0 вершина x называется изолированной точной, при d+ (х) =# 0, d~ (х) = 0 — входом при d+(x) = 0, d~ (х) #= О — выходом. Для заданных целых неотрицательных чисел гр г2, . . ., гп, s2, . . sn можно поставить вопрос: существует ли р-граф, вершины которого хр х2,хп удовлетворяют условиям d+ (**) = rk, d~ (xk) = sk (£ = 1. 2 . n). Вот задача, которую мы собираемся здесь решить. Теорема о полустепенях. Пусть (rp Sj), (r2, s2), . . . , (rn, sn)— пары целых неотрицательных чисел, причем нумерация произведена так, что S1 > S2 > • • • > Sn > 0. Пары (rk, sk) образуют полустепени исхода и захода для вершин некоторого р-графа тогда и только тогда, когда (1) 2 min ri} 2 si (£=1,2,..., п), i=l j=i J n n (2) 2 ri - 2 Sj- i = l J=1 J
ПОЛУСТЕПЕНИ ИСХОДА И ЗАХОДА 99 Поставим множеству пар (rfe, sk) в соответствие транспортную сеть G, образованную вершинами хр х2, ...» хп, хр х2, . .., хп, входом х0 и выходом z\ вершины xt и х^ соединим дугой пропускной способности f(xz, ху-)=р, вершины х0 и xt — дугой пропускной способности с(хо, Xi) = ri, вершины Xj и z— дугой пропускной способности С (Ху, Z) = Sj. Каждый поток ср, насыщающий входные и выходные дуги сети О, определяет р-граф (X U), где вершина xt соединена с Xj дугами в количестве cp(xz, Ху); систему полустепеней этого р-графа образуют как раз пары (rk, sk). Наоборот, каждый р-граф (X U) с системой полустепеней (r^, sk) определяет поток по G, насыщающий входные и выходные дуги. В силу теоремы о насыщении (гл. 8), необходимое и достаточное условие существования такого потока состоит в том, чтобы выполнялось равенство (2) и чтобы для каждого множества А=[х. , х. , . .., х. ) наибольшее количество потока, I г1 *2 которое может войти в А, было не меньше потребности А, т. е. F(xZi, .... xzJ > d (х1г х.2 . xzJ (k ik\, ИЛИ n {k H't j’l ≪C £*2 ≪ • • • ≪ *&)• Имеем (1')=ф(1), а так как пронумерованы в убывающем порядке, то и (l)=^(lz). Таким образом, оба сформулированных условия налицо. При р = 1 эта теорема выражает необходимое и достаточное условие, при котором пары (гй, sk) образуют полустепени исхода и захода некоторого графа. Этот результат можно представить в форме, более удобной для быстрой проверки. Пусть г = (гр г2, . . .) конечная строчка целых неотрицательных чисел (пронумерованных в убывающем порядке); поставим ей в соответствие строчку '•* = (4-4...). где г* означает количество тех rz, которые не меньше k\ строчка г* называется двойственной для г. Тогда имеет место
100 ГЛ 9. ТЕОРЕМА О ПОЛУСТЕПЕНЯХ Следствие1). Пусть даны пары целых неотрицательных чисел (rk, sk\t изменим по отдельности нумерации гк и sk таи, чтобы было ••• >гп, S\^ s2≪^ ’ ’ ’ SIT Образуем, далее, строчку г* = (г*, г*, . . двойственную для r = (rv г2, .. .), и добавлением нулей добьемся того, чтобы строчки г* и s имели одну и ту же длину т. Для того чтобы данные пары образовывали систему полустепеней некоторого графа, необходимо и достаточно, чтобы Г1+Г2“Ь ••• ″h52″b ••• (& ≪ /П), г*4-г*+ ... +≪ = S1+s24- ... +v Это условие сразу получится из предыдущей теоремы, если показать, что для любого натурального k п k 5 min {k, rj = 2 г* i = l j=l J Последнее равенство верно при £=1; с другой стороны, если оно верно для какого-нибудь k, то оно верно и для £-|-1, поскольку п 2 min {k 4-1, rzJ = 5 min {k, rj 4-Z 2 min (ft, r.} -|-r* A = / = 1 \ri>k / = 2min{ft, r.}+r*+1 = ... +r* + ]. 4. и T. Д. Пример (задача об экскурсии). При поездке на экскурсию надо распределить т семей по п автобусам; семьи имеют соответственно гр г2, . гт членов, а автобусы располагают соответственно s2, .. . , sn свободными местами. Можно ли всю группу распределить так, чтобы никакие два члена одной и той же семьи не попали в один и тот же автобус? Эта задача сводится к построению простого графа с заданными полустепенями; граф определяется множествами х2, ... . хт] и Y = (уР у2 . у„); 9 Этим условием мы, видимо, обязаны Гейлу [1]; в свете хорошо известной теоремы Харди — Литтлвуда — Пойя [2] эти неравенства выражают тот факт, что вектор г* является образом вектора s при линейном бисто- хастическом преобразовании (см., например, Е. Т. F. М., гл. 8). (Другой вывод этого следствия и дальнейшей теоремы, а также некоторые их приложения имеются у Райзера [4]. — Прим, перев.)
ПОЛУСТЕПЕНИ ИСХОДА И ЗАХОДА 101 вершина xk имеет полустепени (rk, о), а вершина yk — полустепени (0, sk). Пусть для определенности: свободные места ≪$^ = 5, 5, 4, 4, 4, 3, 2, 1, 1, 1, семьи га> = 8, 8, 5, 5, 4. Двойственная строчка образуется числами '-; = '-2 = 4 = '->5; г* = 4; г* = 4 = г* = 2. Проверяем, разрешима ли задача: 5> 5, 5 + 5= 10> 5 + 5= 10 10+5= 15> 10+4= 14 15 + 5 = 20+ 14 + 4= 18 20 +4 = 24 > 18 + 4 = 22 24+ 2 = 26 >22+ 3 = 25 26+ 2 = 28 >25 + 2 = 27 28 + 2 = 30 > 27 + 1 = 28 30 >28 + 1 =29 30 = 29 + 1 Значит, задача разрешима; теперь ее можно решать, как задачу о наибольшем потоке. Допустим, что для данной системы полустепеней удалось построить граф О = (Л″, (7); рассмотрим такие вершины х, х', у, у', что х =£ Х’, у =£ у'; (x,y)^U, (х', y')£U; + y')$U, (xz, y)gl/. Если дуги (х, у) и (х', у') заменить дугами (х, у') и (х', у), то получится снова граф с той же системой полустепеней; такую замену мы назовем перемещением} важность этой операции обусловлена следующей теоремой: Теорема 2. Если G = (X, U) и Н=(Х, V) — два графа с соответственно одинаковыми полустепенями исхода и захода в каждой вершине, то Н можно получить из G конечным числом перемещений.
102 ГЛ. 9. ТЕОРЕМА О ПОЛУСТЕПЕНЯХ Графу G отнесем матрицу А = (а^ с п строками и п столбцами в которой f 0, если (х{, xf)ftU; а1. = 1 1 j г- [ 1, если (xz, Xj)£U. Точно так же отнесем графу Н матрицу В = (bf); имеем 2^ = 2 V = d+ (%f), 7=1 7=1 2 alj = 2 bl} = d- (xy). Матрица C = A — В, по определению, образована элементами ci. = a1.— by, они равны -f-l, 0 или — 1, причем суммы этих элементов по строкам и по столбцам равны нулю. В случае 2\\cij | — 0 графы G и Н совпадают; в случае 2 | f| > 0 7,7 i, 7 покажем, что последовательными перемещениями на графах G и //можно получить матрицу С = А— В = (су, ≪ 1 г 1% j ck (-/) ' (+7) 1 у Рис. 9— 1. которой I, 7 3 I, 7 7 таким образом, повторение этой операции даст в конце концов графы G и Н, совпадающие друг с другом. Пусть с1. — некоторый элемент, равный -|-1; так как каждый столбец содержит столько же -|-1, сколько и — 1, то в J-OM столбце найдется элемент ck. = — 1; точно так же в &-й строке найдется некоторый элемент г* = — 1, затем в Z-ом столбце — некоторый элемент с™=— 1 и т. д. Тем самым в матрице С определится путь су су ckL, су, ..., су ст. Если в некоторый момент мы придем в еще не пройденную точку с? = 1 уже затронутого ранее q-ro столбца, то отправимся далее в еще не встретившуюся точку с^ = — 1 (это всегда возможно, ибо #-й столбец имеет столько же-р-1, сколько — 1); так как матрица конечна, то рано или поздно мы вернемся в точку cj. и получим, таким образом, элементарный контур.
ПОЛУСТЕПЕНИ ИСХОДА И ЗАХОДА 103 Рассмотрим квадрат cj, ck., с%, с\ (см. рис. 9— 1). Возможны следующие четыре случая: Случай 1: clt = — 1. Произведем перемещение (xz, xy)->(xz. xz), (xft, xz)->(x*. ху) на графе G. В полученной матрице С будет = ck. = с1} = = 0 j j 1 1 (остальные элементы — прежние), что соответствует поставленной цели. Случай 2: = 0, (х., х^ U, То же перемещение, что и в первом случае, даст нам с^ = с^ = с^ = 0, cj=l, а это опять отвечает цели. Случай 3\ с[ = §, (X}, x^£U. Тогда (xz, xz)£V, и перемещение (xz, xz)— >(xz, ху), на графе Н приводит к тому же результату для матрицы С, что и во втором случае. Случай 4\ cz = — |— 1. В этом случае найденный элементарный контур можно заменить более коротким: c'v с™ . с1г, с1г Повторяя для нового контура предыдущие рассуждения, мы либо натолкнемся на один из случаев 1, 2, 3, либо в конце концов придем к квадрату с элементами — |— 1, — 1, -(-1, — 1 в вершинах, после чего достигнем цели очевидным перемещением. Таким образом, доказано, что оба графа G и Н можно последовательными перемещениями превратить в один и тот же граф G (= И). Но операция перемещения обратима, поэтому мы можем сначала перевести G в G, а затем G в И (применяя в обратном порядке перемещения, обратные тем, которые преобразуют Н в G). В конечном итоге получим Н из G посредством перемещений). Ч. И Т. Д. Пример. Пусть Х= {*1. . х„, yv у2, уя}. d+(x;) = + l, d~(xi) = Q, d+ (У7) = 0, d~ (уу) = 4-1. Искомый граф отвечает некоторой перестановке индексов 1, 2, ..., п, и теорема 2 дает известный результат: Из данной перестановки (Zp /2, . . ., /д) можно получить любую другую перестановку тех же элементов при помощи конечного числа транспозиций.
ГЛАВА 10 Паросочетание простого графа Задача о наибольшем паросочетании Мы будем рассматривать здесь только простой граф (X, Y, Г), т. е. граф, определяемый двумя непересекающимися множествами X и К и многозначным отображением Г множества X в Y. Те же задачи мы поставим позднее и для произвольных графов (см. гл. 18), однако техника их решения будет совсем иной. Сначала предполагаем граф конечным. Назовем паросочетанием простого графа (X, Y, Г) такое множество W его дуг, в котором никакие две дуги не смежны; если паросочетание устанавливает взаимно однозначное соответствие между некоторым множеством ЛсХ и некоторым множеством Вс: У, то говорят, что это паросочетание отображает А на В, или что оно отображает А в Y. Мы хотим определить наибольшее число дуг паросочетания. Пример 1. Задача, о назначении лиц на должности. В учреждении имеется р работников х2, . . ., хр и р должностей у2, ..., у \ квалификация каждого работника позволяет ему занимать некоторые из должностей. Возможно ли произвести назначение таким образом, чтобы каждый работник занял должность в соответствии со своей квалификацией? Если обозначить через множество тех должностей, которые может занимать лицо xz, то задача сведется к рассмотрению простого графа (X Y, Г) и нахождению его паросочетания, отображающего X на Y. Пример 2. Задача о воспитанниках и воспитанницах. В смешанном американском колледже каждая девушка имеет т друзей, а каждый юноша имеет т подруг; можно ли во время танца сделать так, чтобы каждая девушка танцевала с одним из своих друзей, а каждый юноша — с одной из своих подруг? Как мы покажем в свое время (следствие 2), ответ на этот вопрос — утвердительный. Теорема Кёнига— Холла [4]. Паросочетание, отображающее X в Y, существует тогда и только тогда, когда |ГЛ|>|Л| для любого множества AczX.
ЗАДАЧА О НАИБОЛЬШЕМ ПАРОСОЧЕТАНИИ 105 Рассмотрим транспортную сеть, определяемую точками множеств X и /, входом х0 и выходом z\ соединим х0 с каждой вершиной Уу£К дугой пропускной способности с(х0, у.)=1; далее соединим каждую вершину xt £ X с z дугой пропускной способности с (xit z)= 1; наконец, всякий раз, когда уу£Гхр соединяем у;- с xt дугой пропускной способности оо (рис. 10— 1). Если A(z.X, го полная потребность множества А равна d (А) = | А |; наибольшее количество потока, которое может поступить в А, равно F (Л) = |ГД|. Рис. 10— 1. Всякий поток по сети определяет некоторое паросочетание простого графа, причем точка xt отображается в уу., когда по дуге (Уу, xz) проходит единица потока; наоборот, всякое паросочетание определяет некоторый поток. Отобразить X в Y возможно тогда и только тогда, когда наибольший поток насыщает выходные дуги, т. е., в силу теоремы о насыщении (гл. 8), когда F(A)^d(A) (АсХ), или, иначе, |ГЛ|> |Л| (ЛсХ). ч. И т. д Итак, нахождение наибольшего паросочетания представляет собой задачу о наибольшем потоке, и здесь можно применить алгорифм Форда — Фалкерсона (гл. 8). Следствие 1. В простом графе G = (X, К, Г), у которого |Х| = р, |/|=^, пронумеруем вершины х^Х и у^¥ такам образом, чтобы |Гх1|≪|Гх2|≪...≪|Гхр|, |г-Ч1>|г-Ч1>...>|г-Ч|.
106 ГЛ. 10 ПАРОСОЧЕТАНИЕ ПРОСТОГО ГРАФА Тогда достаточное условие существования паросочетания, отображающего X в У, выразится так\ (О + |Гх2| + . . . + |Гагл| > >1Г У114“ IГ ^214“ • • • 4-1Г | (£ = 1,2,...,/?). В самом деле, рассмотрим два множества: А= К’ Ч’ ••• ■*'*) и В = (УЛ- У/2 . УЛ-J. с количествами элементов соответственно k и k— 1; в силу (1), 1ГЧ Ж1гчЖ-Жгч1 >1Г ’y/J+lr ЖЖ--- + |Г ’у-л-Л Поэтому число дуг, исходящих из А, строго превышает число дуг, заходящих в В; значит, ГД ф В, каково бы ни было множество В из k— 1 элементов; отсюда |ГД|>£— 1 = |Л| — 1 и окончательно |ГД|>|Д| (ДсзХ). Поэтому X можно отобразить в У требуемым образом. Следствие 2. Если для простого графа (X, У, Г) существует такое целое число т, что |Гх \^т для любой вершины х £ X и |Г″'1у|^т для любой вершины у^У, то можно построить паросочетание, отображающее X в У. Действительно, условие (1) предыдущего следствия здесь выполнено. Следствие 3. Пусть (X, У, Г) — простой граф, а т = шах {|Гх|, |Г-1у\fх £ X, у £ Г}; всегда существует паросочетание, использующее все те вершины х, для которых \Гх\=т, и все те вершины у, для которых | Г| = т. 1° Сначала покажем, что можно построить простой граф (X', У', Г'), все вершины которого имеют полустепень т и который содержит (X, У, Г) в качестве подграфа. В самом деле, построим т одинаковых копий графа (X, У, Г): (X1, У1, Г), (X2, У2, Г), . . ., (Хт, Ут, Г); если вершина х£Х такова, что т— |Гх| =k > 0, то рассмотрим соответственные точки х^Х1, х2£Х2, . , хт£Хт и каждую из них соединим дугами со всеми вершинами нового множества Г(х)= (у(1, х), у (2. х) . у (А, х)},
ЗАДАЧА О НАИБОЛЬШЕМ ПАРОСОЧЕТАНИИ 107 состоящего из k точек и специально построенного для нашей цели. Проделав это со всеми точками х £ X, возьмем точку у£К, для которой |Г”| ≪ т, построим вспомогательное множество Х(у) и все точки этого множества соединим с у, и т. д. Положим х' = U xi и U хы> i у £ У у= U Yi и U j х£Х Простой граф, определяемый множествами X', Y' и построенными дугами, удовлетворяет требуемым условиям и содержит (X1, Y1, Г) в качестве подграфа. Заметим, что |Х/| = |К/|. 2° В силу следствия 2, в новом графе можно построить паро- сочетание, отображающее X' в Y'; каждой вершине х^Х1, для которой |Гх1|=/п, будет отвечать вершина в Y1, а каждой вершине у1^/1, для которой | Г^у11 = т,— вершина в X1; поэтому в графе (X1, Y1, Г), т. е. в (X, Y, Г), существует паросочетание, использующее все эти вершины. Следствие 4. Хроматический класс простого графа (X Y, Г) есть т = шах {|Гх|, |Г-1у|/х£Х, у£ /}. Надо доказать, что дуги графа можно раскрасить в т различных цветов так, чтобы смежные дуги не были окрашены одинаково. Первой краской окрасим все дуги того паросочетания, которое использует все вершины с полустепенями т\ второй краской окрасим дуги паросочетания, использующего вершины наибольшей полустепени в том частичном графе, который образован не окрашенными еще дугами, и т. д. Эти паросочетания существуют, в силу предыдущего следствия, и при каждом шаге наибольшая полустепень вершин графа уменьшается на единицу. Поэтому т красок достаточно для раскрашивания всех дуг графа (X Y, Г). Пример (латинские квадраты)1). Следствие 4 имеет любопытное применение к теории латинских квадратов, придуманной Эйлером. Говорят, что дан латинский квадрат порядка /г, если клетки квадрата п X п заполнены буквами ур у2, . . ., уп таким образом, что ни одна строка и ни один столбец не содержит двух одинаковых букв. Для выяснения того, является ли заданный прямоугольник с буквами частью некоторого латинского квадрата, служит следующая теорема: Пусть Т — прямоугольник р X заполненный буквами Ур у2, . . ., Уп так, что ни одна строка и ни один столбец не 1 В настоящее время латинские квадраты применяются, например в биометрии. — Прим, перев.
108 ГЛ. 10 ПАРОСОЧЕТАНИЕ ПРОСТОГО ГРАФА содержат двух одинаковых букв, и пусть буква у встречается в Т т (у) раз. Для того чтобы путем добавления п — р строк и п — q столбцов было возможно превратить Т в латинский квадрат п\п, необходимо и достаточно, чтобы т(у^)> р+-? — я (& = h 2, ...» п). 1° Условие необходимо. В самом деле, пусть — множество из п — q букв, не встречающихся в f-й строке прямоугольника Т, и пусть т' (у) — число множеств из Гр Г2, . . ., Г которые содержат у. Если можно построить латинский квадрат, то т' (у) п— q, откуда т (у) = Р — т' (у) > р — п + q. 2° Условие достаточно. Действительно, положим Р = {1, 2, .... р], Y = {ур у2, . . ., уп], определим множества Г£., как выше, проведем из каждой вершины t £ Р дуги в те у £ Y, для которых у £ Гр и рассмотрим полученный простой граф (Р, Y, Г); имеем lrzl=«— я \l'~1y\=m' (y)^.n— q (у 6 О- Рис. 10— 2. Значит, в силу следствия 4, мы можем раскрасить дуги графа в п — q цветов: синий, красный и т. д. Начнем пополнять Т новыми п — q столбцами: первый столбец образуем из концов синих дуг, исходящих из Р, второй — из концов красных дуг, исходящих из Р, и т. д. Полученный таким образом прямоугольник Т с размерами рХп удовлетворяет условию теоремы, поскольку /п(у) = = р = (р-\-п) — п; после этого остается повторить аналогичное рассуждение, переменив ролями столбцы и строки. Дефицит простого графа Дефицитом простого графа G = (X Y, Г) называется число 80 = тах(|Д| — |ГЛ|). ACZX Всегда Во 0 (ибо 10 | — |Г0 | = 0), поэтому теорему Кёнига — Холла можно сформулировать еще и так: необходимое и достаточное условие существования паросочетания, отображающего X в Y, состоит в том, чтобы Во = О. Мы здесь ставим целью улучшить этот результат и, точнее, оценить наибольшее число дуг паросочетания.
ДЕФИЦИТ ПРОСТОГО ГРАФА 109 Прежде всего, назовем опорой простого графа G=(X, Y, Г) всякое такое множество что каждая дуга имеет но крайней мере одну из своих граничных вершин в С; это понятие важно и само по себе. Имеют место следующие результаты: Теорема 2. В простом графе G = (X, К, Г) наименьшее количество элементов опоры С равно |Х|— Во. В самом деле, и -80= И — max (| Л | - |ГЛ|) = = min(|Х| - |Л| + |ГД|) = min(|В| + |Г(2С\В)|), АСХ ВСХ где В = Х\ А. Но множество ВиГ(Х\В) является опорой, причем всякая наименьшая опора имеет такой вид; поэтому справедлив сформулированный результат. Теорема 3. Число внутренней устойчивости простого графа G = (X Y, Г) равно a(G) = |Г| 4~80. В самом деле, если С — опора, то ее дополнение S = (X|J Y) \ С является внутренне устойчивым множеством (никакая дуга не может иметь обеих граничных точек в S); наоборот, если S — внутренне устойчивое множество, то его дополнение является опорой. Отсюда a(G) = max|S| =max(|X| + |Г | — |С|) = |Х| + s с + 1УI — min |С| = |Х| + IГI -(|Х| — 80) = |Г I +80. С Замечание. Теорему 3 можно сформулировать иначе. В произвольном графе обозначим через Дх = (у/у > х) множество вершин, строго следующих за х (см. гл. 2), и будем говорить, что две вершины хх и х2 несравнимы, если не имеет места ни Xj > х2, ни х2 > хг В случае простого графа (X, Y, Г), очевидно, Дх = Гх, если х£Х; Дх = 0, если х £ Y. Теорему 3 сформулируем следующим образом: наибольшее число попарно несравнимых вершин, которые можно найти в простом графе, равно max (| А | — |ДЛ|). aczxj Y
по ГЛ. 10. ПАРОСОЧЕТАНИЕ ПРОСТОГО ГРАФА Замечательно, что в этой формулировке теорема остается в силе и для произвольных графов!). Исследуем теперь взаимосвязь между дефицитом простого графа и наибольшим числом дуг паросочетания. Лемма 1. Если для ЛсХ положить В (Л) = | А | — |ГЛ|, то В (Л1 U Л2) -|- 8 (Xj П А) 8 (A) ”h 8 (А)* В самом деле, справедливы соотношения IA U Л21 4- | Л1 0 Л21 = | Аг | + | А21, |Г(А и Л2)|+|Г(Л1 П А)1≪|ГА и ГЛ.14-1ГА п гл21=|глг | -н |гл21. Вычитая второе соотношение из первого, получим требуемую формулу. Лемма 2. Семейство Л = (Л/8 (Л) = 80} образует структуру относительно операций U и П, т. е. Лр л2 £ di л1 и А С A п A С В самом деле, если Лр А2^≪А, то, в силу леммы 1, 8 (л1 U А) + 8 (А п А) >8 (А) +8 (А) = 28о- !) Доказательство можно провести, например, так: если (X, Г) — данный конечный граф, то построим простой граф (X, X, Д), указывающий для каждой вершины все строго последующие, и рассмотрим наименьшую опору С = К-7л----Ь 1° Сначала покажем, что индексы этих вершин различны. Действительно, если бы, например, Ц = Jlf то существовал бы такой индекс k Z2, ..., что xi.sLxk (поскольку множество С\ {xt }, имеющее на один элемент меньше, чем С, не может быть опорой); по той же причине нашелся бы такой индекс h ф Ji> , что *А€Д-Ч; но xk≪xi,’ xi, ≪ xh=5 xk≪ xh, вопреки тому, что дуга (xfc, х/г) не имеет своих граничных точек в опоре С. 2° Рассмотрим в графе (X, Г) множество 3 = X \ {xZi, х^> ... ; Xj^ Xj2, ...J; все его элементы попарно несравнимы, оно — наибольшее из множеств с этим свойством, и, в силу теоремы 2, имеем I s I « | XI — I С I = I XI — Г| X | — max (I А | — | ДЛ |)1 = шах (| А | — | ДЛ |). L ACZX J ЛС=Х ч. и т. д.
ДЕФИЦИТ ПРОСТОГО ГРАФА 111 Так как ни одно из слагаемых 3 (Xj J А2) и 8 (Xj П А2) не может быть больше 80, то необходимо 8 (Xj J А2) = 80, 8 (Дх П А2) = 80, что и доказывает утверждение. Лемма 3. Если 80 > 0, то пересечение До всех множеств семейства Л = {Д/8 (Д) = 80} есть непустое множество этого семейства. Так как граф конечен, то До есть пересечение конечного числа множеств из Л и, в силу предыдущей леммы, Д0^ст£; кроме того, если бы До = 0, то мы имели бы 80 = 8(Д0) = 8(0) = О, что противоречит предположению о том, что 80 > 0. Теорема 4 (Кёниг — Оре [9]). В простом графе наибольшее число дуг паросочетания равно |Х|— 80. Если 80 = 0, то утверждение уже доказано (на основании теоремы Кёнига— Холла); допустим теперь, что 80 > 0, и рассмотрим пересечение До (непустое) тех множеств А, для которых 8(Д) = 8О. Г Если удалить из графа вершину xQ (£ До, то дефицит не изменится. В самом деле, дефицит нового графа 80≪^ 80; а так как новый граф содержит множество До, для которого 8 (д0)=80, то 80 — 80. 2° Если удалить из графа вершину xQ£AQ, то дефицит графа уменьшится ровно на единицу. Действительно, поскольку удаление х0 разрушает все те множества А, для которых 8 (X) = 80, то дефицит нового графа 80 ≪ 80; поэтому множество До =-≪4о \ {•£()} удовлетворяет условию 8(Ло) = |Ло| — 1 — |ГЛо| ≪8о = |До| — | ГЛ01, откуда |г4| > |гл0|. В силу До с: До справедливо также обратное неравенство; значит, |ГЛо| = |ГД0| и, наконец, 8(Ло) = I— [ГЛо| = (| Ло| — 1) — ]ГЛо| = 8о— 1; последнее же ввиду 8о ≪ 8о означает, что 80 = 8о — 1. 3° Так же, как и выше, доказывается, что 80 есть наименьшее число вершин из X, которые надо удалить, чтобы полученный граф обладал дефицитом 80 = 0, т. е. допускал паросочетание, отображающее множество его вершин X' в К; отсюда и следует сформулированный результат.
112 ГЛ. 10. ПАРОСОЧЕТАНИЕ ПРОСТОГО ГРАФА Следствие (теорема Кёнига) В простом графе наименьшее пасло вершин опоры равно наибольшему числу дуг паросочетания^ (Сопоставление теорем 2 и 4). Последний результат дает нам возможность установить новый алгорифм для определения некоторого наибольшего паросочетания; этот алгорифм, более поучительный в применении к теории графов, чем алгорифм отыскания наибольшего потока, основан на работах Эргевари [2] и Куна [5] и обычно известен под именем „венгерского алгорифма″. Венгерский алгорифм Рассмотрим простой которого будем называть граф (X, К, Г) и паросочетание W, дуги сильными и изображать жирными линиями (остальные дуги называем слабыми и изображаем тонкими линиями); предположим, что паросочетание W — полное: каждая слабая дуга смежна по крайней мере с одной сильной дугой. Вершину z, не являющуюся граничной ни для какой сильной дуги, назовем ненасыщенной. Если ≪w£W, то через Aw обозначим множество тех сильных дуг, концы которых смежны с началом дуги w; обозначим через IF+ множество тех сильных дуг, концы которых смежны хотя бы с одной ненасыщенной вершиной, а через W — множество сильных дуг, начала которых смежны хотя бы с одной ненасыщенной вершиной (см. рис. 10— 3). Теперь можно сформулировать теорему. Теорема 5. Следующие четыре условия равносильны: (1) в простом графе (X. Y, Г) паросочетание W — наибольшее; (2) в простом графе (X, Y, Г) не существует чередующихся цепей (состоящих из поочередно идущих слабых и сильных дуг). соединяющих две различные ненасыщенные точки; (3) в графе (W. А) не существует пути, идущего из точка множества W+ в точку множества W ; (4) в графе (IF, А) каждую вершину можно пометить знаком или »— “ так. чтобы все вершины множества IF+ получила знак 6се вершины множества W — знак „— “ и чтобы никакая дуга (ориентированная) не шла из в „— “ Покажем, что (1)“ф(2)з^>(3)=ф(4)=ф(1). (1)=ф(2), так как если бы существовала чередующаяся цепь UQ, соединяющая две различные ненасыщенные вершины, то паросочета-
ВЕНГЕРСКИЙ АЛГОРИФМ 113 ние W' = (W\ £70) (J (Ц)\ Ю имел° бы на одну дугу больше, чем W, т. е. паросочетание W не было бы наибольшим. (2) =ф(3), так как всякому пути графа (W, Д), идущему из W + в W~, отвечает хотя бы одна чередующаяся цепь, соединяющая две ненасыщенных точки х0 £ X и у0 £ У. (3) =ф(4). Пометим знаком »-р‘ все вершины множества ДМ/+ и знаком „— “ все вершины множества W \ имеем и W~ a. W\ &W+ (так как не существует пути, идущего из W+ в 1F″); поэтому условие (4) выполняется. (4) =ф(1) В графе (X, Y, Г) с паросочетанием W пометим сильные дуги знаком или »— “ в соответствии с условием (4) и обозначим через X множество начальных точек сильных дуг, помеченных знаком „— “, а через — множество конечных точек сильных дуг, помеченных знаком Для дуги Uq = (x0, у0), удовлетворяющей условию рассмотрим четыре случая расположения (см. рис. 10— 4). Случай 1: вершины х0 и у0 не насыщены. Этот случай невозможен, так как W— полное паросочетание. Случай 2: вершина х0 не насыщена, вершина у0 насыщена. Тогда существует дуга с концом в у0. Поскольку yQ^Y+, дуга w должна быть помечена знаком „— “. Но, с другой стороны, по определению множества W+, она должна принадлежать этому множеству и поэтому быть помечена знаком „4-“. Таким образом, и этот случай невозможен.
114 ГЛ. 10 ПАРОСОЧЕТАНИЕ ПРОСТОГО ГРАФА Случай 3: вершина х0 насыщена, вершина у0 не насыщена. Тогда существует дуга ≪w £W с началом в х0. Поскольку х0 (£ дуга w должна быть помечена знаком но, с другой стороны, w £ IF”, и поэтому она должна быть помечена знаком „— Таким образом, и этот случай невозможен. Случай 4: вершины х0 и у0 насыщены. Рассмотрим дуги и принадлежащие паросочетанию W, первая из которых имеет начало в х0, а вторая — конец в у0. Дуга должна быть помечена знаком ,,-р а дуга ди2— знаком „— “. Но тогда w2£Awp вопреки условию (4), по которому никакая дуга не должна идти из в „— “. Таким образом, и этот случай невозможен. Так как все эти случаи невозможны, то не существует дуги (х0, Уо)> У которой xQ (£ Х~ и у0(£К+. Следовательно, множество C = X“LlP+ является опорой. В силу теоремы Кёнига для любого паросочетания Wr и любой опоры С' имеем |W' ||Cf |; поскольку в нашем случае |IF|' = |C|, паросочетание W является наибольшим (а опора С — наименьшей). Алгорифм для построения наибольшего паросочетания. Рассматриваем все вершины X и последовательно пробуем отобразить их в Y; когда никакая вершина не может быть более отображена, имеем полное паросочетание W. Образуем граф (W, А) и ищем путь, идущий из W+ в IF″ (различные способы для этого были указаны в гл. 7). Если такой путь существует, то заменяем паросочетание W паросочетанием W', имеющим на один элемент больше, и начинаем все сначала. Если такого пути нет, то паросочетание IF— наибольшее. Алгорифм для построения наименьшей опоры. Действуя, как выше, находим какое-нибудь наибольшее паросочетание IF. В графе (X Y, Г) помечаем дуги множества AIF + , знаком дуги множества IF\AIF + — знаком „— наименьшая опора С будет состоять из начальных точек сильных дуг, помеченных знаком „— и конечных точек сильных дуг, помеченных знаком Следует отметить, что таким же способом строится наибольшее внутренне устойчивое множество (при помощи перехода к дополнению). Обобщение на бесконечный случай Некоторые из предыдущих результатов распространяются на локально конечные простые графы. Теорема 6. В локально конечном простом графе (X, Y, Г) паросочетание, отображающее X в Y, существует тогда и
ОБОБЩЕНИЕ НА БЕСКОНЕЧНЫЙ СЛУЧАЙ 115 только тогда, когда |ГЛ|>|Д| (ЛсХ |Л| ≪ со). Эта теорема доказывается аналогично теореме Кёнига— Холла, но только здесь используется теорема о насыщении для бесконечных транспортных сетей (гл. 8). Теорема?. В локально конечном простом графе (X Y, Г) наименьшее число вершин, которые надо удалить из X для того, чтобы можно было найти паросочетание, отображающее новое множество вершин X' в Y, равно 8о = max (|А| — |ГЛ|). A CZX I А | ≪ со Когда Во конечно, эта теорема доказывается, как и теорема Кёнига— Оре, с помощью рассмотрения пересечения Ао множеств семейства Л = {Л/1Л|≪ со, В(Д) = У; заметим, что само Л0£ст£. Когда о0 бесконечно, утверждение очевидно Теорема 8. Хроматический класс простого графа (X, Y, Г), конечный или бесконечный, есть т = тах{|Гх|, | Г“1 у |/х £ X, При т = оо теорема очевидна; при т ≪ оо она доказывается точно так же, как в случае конечных графов. Приведем в заключение важную теорему, которая в различной форме встречается в самых разнообразных задачах и заслуживает доказательства только для бесконечных графов. Теорема Бернштейна. Если в бесконечном простом графе (X, Y, Г) существуют паросочетание W, отображающее X в Y, и паросочетание W', отображающее Y в X, то с помощью некоторого множества дуг можно также {взаимнооднозначно) отобразить X на Y. !) Эту теорему можно распространить на любые транспортные сети (Берж [1]); получаем: если граф некоторой транспортной сети регрессивно конечен и Г-1 -конечен, то наименьшая общая величина, на которую надо уменьшить потребности, чтобы иметь возможность все их удовлетворить, равна &о = sup [d (Л) — Л (Л)]. а с: г— 1 z IА I ≪ оо
116 ГЛ. 10. ПАРОСОЧЕТАНИЕ ПРОСТОГО ГРАФА Пусть а— однозначное отображение, относящее каждой вершине х£Х такую вершину у^У, что (х, y)£W, ат — однозначное отображение, относящее каждой вершине у£ У такую вершину х£Х, Рис. 10— 5. что (х, положим А = Х\тУ (рис. 10— 5). Обозначим далее через Л = {AJI семейство подмножеств множества X, удовлетворяющих условиям (I) А^А, (2) Это семейство Л непусто, ибо Х£≪Л\ если положить S = Qxz, z С/ то будем иметь [ S=)A т (aS) = то Р|лгс QtoAzc: f|^z = S. I ICJ i^I Поэтому S £ то же верно и для множества A U т (aS) = So, так как | 50=)Л, 1 т (aS0) с т (aS)CZ А и TaS = So. Значит, SOZ)S; с другой стороны, S0 = A ит(о5)(=Л U S = ≪5; отсюда, наконец, A (J т (aS) = S. Рассмотрим теперь множество WQ таких дуг (х, у), что у = ах, если x£S; у = т-1х, если x^S.
ПРИЛОЖЕНИЕ К ТЕОРИИ МАТРИЦ 117 Чтобы показать, что оно является паросочетанием, отображающим X на Y, достаточно убедиться в том, что если положить aS = Т, то будет т(Г\ T) = X\S. Но это получается сразу, так как можно написать т (Y \ Т) = тГ \ А \ хТ = тК \ (Д U ™S) = тГ \ S = X\ S. ч. и т. д. Пример (планиметрия). Рассмотрим плоское множество, и пусть X и Y — его проекции на две взаимно перпендикулярные оси координат. Допустим, что для любого х £ X существуют две точки (х, и (х, у2) множества, которые проектируются в х, и положим Гх = {ур у2); кроме того, допустим, что для каждого y£Y имеются две точки множества, проектирующиеся в у. Простой граф (%, Y, Г) локально конечен, и каждой дуге этого графа отвечает некоторая точка множества (рис. 10 — 6). Далее, имеем |Гх|=2 (х(=АГ), |Г-1у| = 2 (у£Г). Поэтому из теоремы 6 следует, что можно отобразить X в Y и Y в X. В силу теоремы Бернштейна существует паросочетание W, исполь зующее все вершины X и все вершины Y; следовательно, существует подмножество (на рисунке изображенное жирными линиями), обладающее свойством: всякая прямая, параллельная любой из координатных осей, пересекает это подмножество в единственной точке. Таким образом, доказана весьма тонкая с точки зрения логики теорема существования. Приложение к теории матриц Квадратная матрица Р1 р\ р\ ••• р} ■■■ р\ P9i ■■■ P2J ••• Рп Pl рп2 ••• pnj ••• р\
118 ГЛ. 10. ПАРОСОЧЕТАНИЕ ПРОСТОГО ГРАФА называется бистохастической, если р‘>0 i (t^n, 70); U ≪ я); (Z ≪ п). Бистохастические матрицы играют важную роль в различных обобщениях выпуклых функций (см., например, Е. Т. F. М., гл. 8); Г. Биркгоф [2] показал, что основные свойства таких матриц выводятся из теоремы Кёнига — Холла. Теорема 9. Все члены определителя произвольной квадратной матрицы А — (а1>) порядка п равны нулю тогда и только тогда, когда в матрице А имеется подматрица с размерами рХ(^— р+0 {где р п), все элементы которой равны нулю. В самом деле, положим N — = {1, 2, . . ., п] и для i £ N положим Г/ = {Л^. ¥= 0}. Тем самым образован простой граф (N, N, Г). Члены определителя имеют вид ± а^а^ , . . а1пп, и все они будут равны нулю тогда, когда не существует паросочетания, отображающего множество N в N; Кёнига — Холла, в этом и только в этом множество /qN, что |/|>|Г/|. поэтому, в силу теоремы случае существует такое При этом в А найдется нулевая подматрица с размерами Их (и-и 4-1). Теорема 10. Если матрица Р = (р1^— бистохастическая? то по крайней мере один член ее определителя отличен от нуля. В самом деле, допустим, что это не так и что, следовательно, матрицу Р можно считать состоящей из четырех подматриц: R = (rj), S = (s}), T=(tj) и нулевой матрицы О, как показано на рис. 10— 7.
ПРИЛОЖЕНИЕ К ТЕОРИИ МАТРИЦ 119 Имеем = п — Р + 1 • i J Следовательно, 2 Jd tj = {п — р) - (п — р -|- 1) = — 1. i j Но это противоречит предположению о том, что Теорема И (Биркгоф — фон Нейман). Всякая б исто хаотическая матрица является центром тяжести матриц подстановок. Надо показать, что если Р — бистохастическая матрица, то существуют матрицы подстановок Рх, Р2, . Pk (у которых в каждой строке и в каждом столбце ровно один элемент равен единице, а остальные элементы — нули) и такие числа Хр Х2, Хл, что Х2, . . ., \k 0; +^2 + • • • + ^ = h Р = 4“ 4^2 + • • • + ^k- Поскольку не все члены определителя матрицы Р = (afy равны нулю, рассмотрим член • • • алй=£0, положим Xj = min {aj1, а[\ . . ., а1″\ и обозначим через Рх матрицу подстановки (Zp /2 . /я); положим, наконец, Р = Х1Р1+/?. Число элементов, равных нулю, в матрице R больше, чем в матрице Р\ если все члены определителя матрицы R равны нулю, то мы на этом остановимся, в противном же случае разложим матрицу R так же, как разложили РУ и т. д.; в конце концов получим = XjPi 4~ х2^2 + ••• + где R — такая матрица, все члены определителя которой равны нулю. Поэтому R = 0 (в противном случае нашлось бы такое X > 0, что матрица XR была бы бистохастической, а все члены ее определителя равнялись бы нулю, что противоречит теореме 10). С другой стороны, п 2 aj = 1 = Xj Х2 -|- ... 4~ Х,р Г = 1 Теорема доказана. Отметим здесь эффективность того орудия, каким является теория графов; прямое доказательство теоремы Биркгофа — фон Неймана значительно длиннее.
ГЛАВА 11 Факторы Гамильтоновы пути и гамильтоновы контуры Путь |i = [xp х2, . хп\ в графе (X Г) называется гамильтоновым, если он проходит через все вершины графа, притом только по одному разу; точно так же контур рь = [х0, хп\ гамильтонов, если он проходит через каждую вершину и притом по одному разу (с тем лишь исключением, что х0 = хп). Часто бывает важно знать, есть ли у данного графа гамильтоновы пути или гамильтоновы контуры. Пример 1. Замкнутое кругосветное • путешествие (Гамильтон). Выберем на земном шаре 20 городов: а, Ь, с, . . . , /; для простоты допустим, что эти города расположены в вершинах правильного додекаэдра (многогранника с 12 пятиугольными гранями и 20 вершинами), изображающего Землю. Наша цель — пройти через каждый город ровно один раз и шт, причем идти можно только по ребрам одится к нахождению гамильтонова контура для симметрического графа, изображенного на рис. 11— 1. Заслуживает внимания способ решения, который применил Гамильтон. Путешественник, прибывший в граничную точку дуги, должен осуществить одну из трех возможностей: выбрать дугу, расположенную справа, — эту операцию обозначим через П; выбрать дугу, расположенную слева, — эту операцию обозначим через Л; остаться на месте — эту операцию обозначим через 1. Далее определим произведение операций: ПЛ есть операция, состоящая в том, чтобы сначала идти вправо, а потом влево; ЛЛП, или Л2П — операция, заключающаяся в том, чтобы два раза подряд идти влево, а затем один раз вправо; и т. п. Наконец, две операции равны, если обе они от 11— 1. Рис. исходный Эта задача вернуться в додекаэдра. одной и той же начальной точки приводят к одной и той же конечной. Произведение некоммутативно (например, ПЛ 4= ЛП), но ассоциативно [например, (ЛЛ) П = Л (ЛП)].
ГАМИЛЬТОНОВЫ ПУТИ И КОНТУРЫ 121 Имеют место формулы П5 = Л5 = 1, ПЛ2П=ЛПЛ, ЛП2Л = ПЛП, ПЛ3П = Л2, ЛГРЛ = п2. Можно написать 1 = п5 = П2П3 = (ЛГРЛ) П3 = (ЛП3)2 = [Л (ЛП3Л) П]2 = = (Л2П3ЛП)2 = [Л2 (ЛП3Л) ПЛП]2 = [Л3П3ЛПЛП]2 = = лллппплплплллппплплп. Это произведение содержит 20 букв, причем из него невозможно выделить отрезок, тоже равный 1; поэтому последовательность сомножителей полученного произведения задает гамильтонов контур. Второй контур мы найдем, прочитав последовательность в обратном порядке; другие гамильтоновы контуры получаются в результате циклических перестановок обеих последовательностей. Надо заметить, однако, что путешествие можно начинать в разных точках указанного кругового контура. Зафиксировав первые 5 городов (например, a, Ь, с, d, е), которые должен встретить путешественник, и ограничиваясь только выборами пути, начинающимися с ПЛП, Гамильтон нашел 4 решения: ПЛПЛПЛЛЛПППЛПЛПЛЛЛПП, ПЛПЛЛЛПППЛПЛПЛЛЛПППЛ, плплппплллплплпппллл, плппплллплплппплллпл. Пример 2. Незамкнутое кругосветное путешествие. Если в предыдущем примере не требовать возвращения в исходный пункт, то число путешествий значительно возрастет: требуется найти все гамильтоновы пути графа, изображенного на рис. 11— 1. Ограничимся указанием тех гамильтоновых путей, которые задаются произведениями с первым множителем П; все остальные гамильтоновы пути получаются отсюда, если поменять ролями буквы П и Л. ПППЛПЛПЛЛЛПППЛПЛПЛ ПЛПЛЛЛПППЛПЛПЛЛЛПП плллппплплплллпппл ппплллплплппплллпл плппплллплплпппллл ПЛПЛПППЛЛЛПЛПЛПППЛ плппплллплппплллпл плпллппплплллпплпл ппплпплплплпллпллл
122 ГЛ. 11. ФАКТОРЫ пплплплллппплплплл плплплллппплплпллл плллплплппплллплпл пплллплплппплллплп ппплллПлплплпплппп плппплллплплпплппп плплллпплпллппплпл плллплпплллппплплп плллплпллппплплллп плллплппплллплпппл пппллплппплллплплп ппплпплплплллппплп плплплллппплпллппп плллплпллпплплпппл ппплпплплплплллппп плплппплллпплплллп ппплллплплплпппллл плллплпппллплплллп (произведения, сгруппированные вместе, определяют равные операции) Пример 3. Ход шахматного коня (Эйлер). Поставим задачу обойти конем шахматную доску так, чтобы побывать в каждой клетке ровно по одному разу. Эта задача, сводящаяся к нахождению гамильтонова пути некоторого симметрического графа, интересовала многих Рис. 11— 2. математиков, особенно Эйлера, де Муавра, Вандермонда и др. Мы не претендуем на то, чтобы дать все решения, — для этого применялось неисчислимо много способов. Правило, которое, видимо, оправдывается на практике, но еще не подтверждено теоретически, состоит в следующем: всякий раз ходим конем туда, откуда он угрожает наименьшему числу еще не пройденных клеток. Другой способ состоит в нахождении маршрута по половинке доски, симметричном дублировании его и соединении обоих маршрутов (рис. И— 2). Это правило основано на специфике самой шахмат-
ГАМИЛЬТОНОВЫ ПУТИ и контуры 123 ной доски и не переносится на более общие графы. Читатель, интересующийся такими решениями, может обратиться к [1], [4], [6]. В исследовании операций нахождение гамильтонова пути служит ключом к многочисленным задачам на составление расписаний: точнее, когда ищется оптимальный порядок осуществления некоторого количества действий, эти действия изображают точками хр х2, . . хп и рисуют дугу (xz, ху-), если осуществление xz перед Xj не влечет никаких потерь; искомое расписание задается, вообще говоря, одним из гамильтоновых путей графа. Пример. Задача о книгах (Джонсон [5]). Печатник, который должен изготовить п книг, располагает двумя машинами: печатной и переплетной. Пусть ak — время, необходимое для напечатания &-й книги, а Ьк — время, требующееся для ее переплетения. Допустим, что книга должна поступать в переплет только после того, как она отпечатана, и что, следовательно, переплетная машина может более или менее долго простаивать без дела. В каком порядке должен работать печатник, чтобы закончить всю работу как можно скорее? Как легко видеть, мы ничего не потеряем, если порядок поступления книг в обе машины предположим одним и тем же; оптимальный порядок будет, следовательно, определяться перестановкой (ip /2, . . ., /я), или последовательностью операций: Xtx, xt2, ..., х^. Кроме того, можно показать, что при оптимальном порядке f-я книга должна быть пущена в печать раньше у-й книги в том и только в том случае, если min {а^ bj} min (a-, bt], Всякий раз, когда это неравенство имеет место, мы рисуем дугу (xz, уу); в полученном графе ищем гамильтонов путь, и если этот путь единственный, то он и укажет нам искомый оптимальный порядок. Теорема 1 (Кёниг). В полном графе {любая пара вершин которого соединена хотя бы в одном направлении) всегда существует гамильтонов путь }). Пусть {1=:[яр а2, а3, ..., ар\— путь длины р— 1, все вершины которого различны, и пусть х— вершина, не принадлежащая ц; покажем, что можно составить путь вида [iA, = [ap а2, . . ., ak, х, ak+v . . ., ар]. В самом деле, допустим, что это не так, т. е. что не существует такого целого числа k, заключенного между 1 и р, что (ak, x)£U, (x,ak+1)£U. !) Граф предполагается конечным. На бесконечные графы эта теорема не переносится, как показывают примеры графа рис. 3— 2 (гл. 3), и графа, полученного из него изменением ориентации всех дуг. — Прим, перев.
124 ГЛ. 11. ФАКТОРЫ Имеем, следовательно, для («*• х)£ t/=>(x, ak+l) $ U=^,(ak+V x)£U. Если не существует пути рь0 = [х, ах, а2, . . ., ар], то (av х) £ U, значит (a2,x)£U, (а3, x)£U, . .., (ар, x)£Ut и путь р,р = [яр а2, . . ., ар, х] существует, вопреки допущению. Таким образом, можно шаг за шагом построить путь, содержащий все вершины графаJ). Из этого результата вытекает, что всегда возможно упорядочить множество участников турнира таким образом, чтобы каждый предшествующий был победителем непосредственно следующего2). Для выяснения того, существует ли гамильтонов путь в более общих случаях, как будет показано в следующем параграфе, надо обратиться к теории транспортных сетей. Нахождение фактора Назовем фактором графа (X, Г) частичный граф (X, В), в котором каждая вершина обладает полустепенями исхода и захода, равными 1; всякий гамильтонов контур является фактором, но обратное неверно, ибо фактор может состоять из нескольких контуров без общих вершин. Теорема 2. Необходимое и достаточное условие существования фактора у графа (X Г) состоит в том, чтобы |5|^|Г5| при всех SdX. Действительно, в силу теоремы Кёнига — Холла это условие выражает тот факт, что в простом графе (X X Г)3) существует паросочетание, отображающее X на X. Следствие. Если граф (X Г) таков, что\Гх\ = |Г“1л:| = т для любой вершины х, то дуги этого графа можно распределить по т непересекающимся множествам W\, W2, . .. , Wm, каждое из которых образует фактор 4). !) Этот результат близок к теореме Дирака [2], которая гласит: если (X, Г) — симметрический связный граф без петель и если |Гх|>-£-|Х| для всех х С X, то существует гамильтонов контур. 2) Если, конечно, ни одна из встреч не заканчивается ничьей. — Прим. ред. _ 3) Здесь и в дальнейшем простой граф (X X, Г), соответствующий данному произвольному графу (X Г), строится так: X есть дубликат множества X a Xj С Гх/ в (X X Г) тогда и только тогда, когда хуСГх* в (X Г). — Прим. перев. 4) Из этого следствия, в частности, вытекает существование фактора в задаче о „кругосветном путешествии″.
НАХОЖДЕНИЕ ФАКТОРА 125 В самом деле, простой граф (X X Г) обладает свойством |Гх\=т, |Г“1 х| = т\ в силу следствия 3 из теоремы Кёнига — Холла, можно отобразить X на X и тем самым определить в частичном графе, остающемся после удаления дуг Wv можно отобразить X на X и тем самым определить W2, и т. д.}) Отыскание фактора является несложным делом, поскольку это есть задача о наибольшем потоке; а метод нахождения гамильтонова контура состоит в нахождении всех факторов графа и сохранении только тех из них, которые состоят из единственного контура. Чаще стараются „склеить″ друг с другом различные контуры фактора. Пример. Снова рассмотрим задачу о шахматном коне и найдем его маршрут, который представляет собой гамильтонов контур. Благодаря симметрии шахматной доски непосредственно получается фактор, указанный на рис. 11 — 3 (где клетки, помеченные буквой „а“, образуют один контур, клетки, помеченные буквой „Ьи,— другой контур, Рис. 11— 3. Рис. 11— 4. и т. д.). Два контура можно объединить тогда и только тогда, когда две последовательные вершины одного соответственно смежны с двумя последовательными вершинами другого. Так, можно соединить „а″ и „С″ (например, двумя дугами, которые на рисунке показаны пунктиром), „а“ и „В“ и т. д. Различные возможные соединения показаны при помощи вспомогательного графа, изображенного на рис. И— 4, содержащего ребра \а, С], [а, В] и т.д.; вспомогательный граф имеет очевидный гамильтонов путь aDbCdAcB, и, соединяя последовательно в этом порядке различные контуры, мы получим, как можно проверить, искомый гамильтонов контур. !) Это следствие, вместе с теоремой 2, очевидно, сохраняет силу для любых локально конечных графов (см. теорему 6 гл. 10). Дальнейшие результаты настоящей главы тоже можно (по крайней мере частично) перенести на бесконечные графы. — Прим, перев.
126 ГЛ. 11 ФАКТОРЫ Предыдущие результаты могут быть распространены следующим замечательным образом; для данного графа (X Г) назовем рассечением такую совокупность элементарных путей или элементарных контуров, что: 1° два пути рассечения не имеют общих вершин; 2° каждая вершина графа принадлежит одному из путей рассечения. Среди различных путей рассечения будем различать: элементарные контуры — их обозначаем символом аг’_ [яд, ар = ао]; элементарные пути длины =£0 — их обозначаем символом р7 = [^о, b{, . .., bJq]; пути длины 0, имеющие вид }'k = {ck}. Обозначим через А1 множество вершин, принадлежащих контуру az, через В7' — множество вершин, принадлежащих пути р7, через Ck — множество {с*}. Наконец, положим: n (а*) = 0, гг(р7)=1, п(Т*)=1. По определению, величина рассечения Л = (а1, а2, . . .; р1, р2, . . у1, у2, . . .) есть X (gt£) = 2 п (а*) + S п (Р7) + S п (т^)• i j k Фактор представляет собой рассечение величины 0. Поставим целью найти наименьшую величину рассечений заданного графа. Теорема 3. Наименьшая величина рассечения графа (X, Г) равна дефициту этого графа, т. е. 80 = max(|S| — |Г5|). sczx В самом деле, рассмотрим рассечение с^ = (а1, а2, . . .; р1, р2, . . .; у1, у2, . . .) и образуем простой граф (X X Г). Контуру а* в простом графе отвечает паросочетание, содержащее | А11 дуг; пути отвечает паросочетание, содержащее |р7|— 1 дуг. Объединяя все эти дуги, получим паросочетание W с числом дуг 1л=2И+ж-1)- i J Имеем: «=2 И +s И +2 |C*I =2 И 4- i j k i +2(M - 1)+х(Л)=|r| j
НАХОЖДЕНИЕ ФАКТОРА 127 Это соответствие между паросочетаниями W и рассечениями взаимно однозначно; следовательно, принимая во внимание теорему 4 (гл. 10), будем иметь min X (ст£) = п — max | W | = п — (п — Во) = Во. Следствие 1. Если существует гамильтонов контур, то 8о = О. (Непосредственно.) Следствие 2. Если существует гамильтонов путь, то 0≪Л≪1. (Непосредственно.) Следствие 3. Если граф (X, Г) не содержит контуров, то его дефицит о0 равен наименьшему числу попарно непересекаю- щихся элементарных путей (отдельная вершина рассматривается при этом как путь длины 0). (Непосредственно.) Следствие 4. Если граф не содержит контуров, то необходимое и достаточное условие существования гамильтонова пути состоит в том, чтобы 80 = 1. (Непосредственно.) Пример. Найдем гамильтонов путь в графе, изображенном на рис. 11— 5, тремя разными способами. Г Поскольку граф (X, Г) — полный, существование гамильтонова пути обеспечено (теорема 1); для его нахождения можно действовать как при доказательстве теоремы 1; например, после того как найден путь eacb, получаем решение eadcb. 2° Граф (X, Г), очевидно, не содержит контуров, и его дефицит 80 = max(|S| - |Г5|)= |{£}| - |Гд| = 1. Sczx
128 ГЛ. 11. ФАКТОРЫ Значит, ввиду следствия 4 существует гамильтонов путь, который получается отысканием наибольшего паросочетания графа (X X, Г), изображенного на рис. И— 6, откуда имеем решение eadcb. 3° Граф (X Г) — транзитивный, т. е. => z£Tx. Значит, полустепени исхода вершин, расположенных в порядке гамильтонова пути, убывают. Эти полустепени суть |Га|=3, |Г£|=0, |Гс| = 1, |Гб7|=2, |Ге|=4. Отсюда получаем путь eadcb. Нахождение частичного графа с заданными полустепенями Непосредственным обобщением задачи отыскания фактора является следующая задача: дан граф (X Г), построить его частичный граф с заданными полустепенями вершин. Если ЛсХ, ВсХ то обозначим через /п(Л, В) количество тех дуг, которые исходят из А и заходят в 5. Теорема 4. Пусть дан граф (X Г) и (для х^Х) целые числа г(х) и s(x). Для того чтобы существовал такой частичный граф (X А), что | Дх|=г(х), |A-1x|=s(x) (при всех х(^Х), необходимо и достаточно, чтобы (о 2 '■(*)= S $(*)• х£Х х£Х (2) 2min{r(x)’ |Гх A S|} 2 5 (х) (SczX). х£Х x£S В самом деле, условие (2) выражает тот факт, что для транспортной сети, изображенной на рис. И— 7, существует поток, насыщающий выходные дуги, т. е. F(S)^d(S) для всех SczX При r(x) = s(x)== 1 получается условие существования фактора, при Гх = Х— теорема о полустепенях. Обобщение I. Пусть (Лр Л2, . . ., Лр) и (Bv В2, . .., В^}— • два разбиения множества вершин графа (X Г); гР г2, ..., rpt
НАХОЖДЕНИЕ ЧАСТИЧНОГО ГРАФА 129 s2, . ... Sy — целые неотрицательные числа. Частичный граф (X Д), удовлетворяющий условиям 2|Ax|=rft, 2|Д“'х|=5л h^q), х£Ль x^Bh. существует тогда а только тогда, когда (1) 2 г* = 2 sh, k=\ h=l (2) т(Х\А, B)>SsA-Srt h£J k^I pcjl, 2 . p}; Jcz{l, 2, 4c(jxz; Для транспортной сети, изображенной на рис. И— 8, поток, насыщающий выходные дуги, будет существовать, когда при любом множестве 5 = где /с{1, 2 . р}, Jcz{l, 2, .... q\t ЛсХ, £>с=Х имеем Но это условие в точности совпадает с (2). Обобщение 2. Рассмотрим для каждой вершины х графа (X, Г) такие целые числа г (х), г' (х), 5 (х), s' (х), что 0 г (х) г' (х), О s (х) 5Z (х). Для того чтобы существовал частичный граф (X Д), удовлетворяющий условиям г (х)≪ | Дх|≪ г' (х), s(x)≪ | Д-1х | ≪ s' (х),
130 ГЛ 11. ФАКТОРЫ необходимо и достаточно, чтобы (1) (2) nt {X \ А, В) 4- 2 r' (а) S $ (6), а£А Ь^В т(Х\А, В) 4~ S s' (у) >■ 2 г (*)• у(В х$А Достаточно выяснить, существует ли поток по сети, изображенной на рис. 11— 7, совместимый с множествами [г(х), г' (х)], [0, 1], [$(*), s' (x)J. Применение теоремы 2 гл. 8 дает c(l/s)>b(Us) Беря множества 5 = ЛиВ, где AczX, ВаХ, получаем (1); беря множества 5 = A (J В U {х0} U получаем (2).
ГЛАВА 12 Центры графа Центры Пусть (X, Г) — граф (конечный или бесконечный); отклонением d(x, у) его вершины х от вершины у называется длина кратчайшего пути из х в у. При х = у полагаем, по определению, d (х, х) = 0; при у(£Гх полагаем d{x, у) = оо. Теорема 1. d (х, у) удовлетворяет условиям: (1) d(x, х) = 0, (2) d(x, y)-\-d(y, г)> ^d (х, z). Кроме того, если граф симметрический, то (J3) d (х, у) = d (у, х). (Непосредственно.) Если граф симметрический, то функция d (х, у), удовлетворяющая условиям (1), (2), (3), является расстоянием в топологическом смысле слова. Назовем отклоценностью вершины х число е (х) = max d (х, у). у^х Если наименьшая из отклоненностей является конечным числом, то вершина, в которой этот минимум достигается, носит название центра графа; вершина с наибольшей отклоненностью называется периферийной точкой графа; граф может иметь много центров и может не иметь их совсем. Пример. Первая сеть коммуникаций для почтовых голубей (1870) представлена графом, изображенным на рис. 12— 1.
132 ГЛ. 12. ЦЕНТРЫ ГРАФА Центром здесь служит каждый город, который может сообщаться с остальными без использования большого количества передач (значит, в кратчайшее время); Париж и Лион являются центрами (с откло- ценностью, равной двум), Гренобль и Ницца — периферийными точками (с бесконечной отклоненностью). Радиус Если граф имеет центр х0, то отклоненность е (х0) называется радиусом графа; для радиуса р имеем, следовательно, формулу р = min е (х). х^Х Если у графа нет центров, то полагаем р = оо. Теорема 2. Если в конечном графе (X Г) положить fXI = n, тах|Гх|=р и если 1 ≪/?≪оо, то радиус р графа удовлетворяет условию > log (пр — п+\) 1 Н logp При р = оо теорема очевидна; допустим, что р ≪ оо и что, еле-' довательно, граф имеет центр х0. Число вершин, от которых вершина х0 отклонена на 1, не превосходит р; число вершин, от которых х0 отклонена на 2, не пре- / восходит р2; и т. д. Следовательно, / |\ _ + 1 _ 1 / «≪1+р + р2 + ••• +pf = — p_x -• ' Z или ■ / Х° «(Р — 1) + 1 ≪ Рр+1> \ / или / logfpp — » +1)≪(р+l)log/7. у Отсюда и получается требуемая формула. Рис. 12— 2. Теорема 3. Если конечный граф (X Г) является полным (т. е. если любые две его вершины соединены хотя бы в одном направлении), то его радиус р≪^2, а всякая вершина х0, для которой |Гхо\{*о} 1 = тах|Гх\{х} служит центром. При -р = 1 теорема очевидна. Если р> 1, то рассмотрим какую-нибудь вершину х0, в которой величина |Гх0\ {х0} | принимает наибольшее значение (такая вершина существует, так как граф Г-ограничен). Поскольку е(х)^>2 при
РАДИУС 133 всех х, то, показав, что е(х0) = 2, мы тем самым сразу докажем, что xQ — центр и что р = 2. Рассуждая от противного, допустим, что е(х0)>2; тогда найдется такая вершина у =£ х0, которая не может быть достигнута из х0 ни по пути длины 1, ни по пути длины 2. (См. рис. 12— 2). Так как у ^Гх0, то Далее, если z — вершина из Гх0\{х0}, то у(£Гг (иначе из х0 в у вел бы путь длины 2), поэтому z£Vy и гЕгУ\ {У)- Отсюда Гх0\ {х0)сГу \ \у}. Поскольку Гу \ {у}, имеет место строгое включение: Гх0\ {х0)ссГу \ (у). Следовательно, |Гу \ {у)| > |Гх0\ [х0}| з=шах |Гх\ {%) I. х£Х Мы пришли, таким образом, к противоречию. положим (х, у) £ U, и Пример. Все участники турнира должны провести одно и то же количество встреч; как организовать встречи, чтобы наиболее убедительно определить победителя? Обозначим через X множество участников если игрок х побеждает игрока у; получим полный граф (X, Г), например, граф, изображенный на рис. 12— 3. Отображение Г не транзитивно: х1 побеждает х3, а х3 побеждает х2, но хх не побеждает х2; в этом смысле решения, даваемые так называемыми „отборочными* турнирами1), очень плохи. Чувство справедливости, еще более неопределенное, побуждает нас считать победителями тех участников, Следствие. Если конечный граф (X, Г) является тотальным (т. е. если каждая пара его вершин соединена путем по крайней мере в одном направлении), то он имеет центр. В самом деле, граф (X, Г) — полный и, значит, в силу теоремы 3 имеет центр х; в графе (X, Г) точку х можно соединить с любой другой вершиной путем конечной длины. Следовательно, этот граф имеет радиус р≪>(х) ≪ оо и обладает центром. Ч Или турнирами, проводимыми по 9олимпийской системе^ — Прим. ред.
134 ГЛ. 12. ЦЕНТРЫ ГРАФА которые соответствуют центрам графа (X Г), если последние существуют; в данном случае, поскольку граф полный, существование центра обеспечено (теорема 3), и мы находим двух победителей: хг и х3. Этот подход, самый простой, может быть подвергнут критике: не должен ли победитель одержавший верх над другим победителем х3, один занимать первое место? заслужил ли последнее место игрок х2, победивший чемпиона хх? В дальнейшем (гл. 14) мы покажем, как учесть все эти обстоятельства. Турнир с т встречами определяет.частичный граф (X Г), имеющий ровно т ребер; если этот частичный граф обладает центрами, то соответствующих участников можно рассматривать как ожидаемых победителей турнира.
ГЛАВА 13 Диаметр сильно связного графа Общие свойства сильно связных графов без петель Пусть G = (X, U) л— сильно связный граф без петель, удовлетворяющий условию |Х| > 1; каждая его вершина служит началом некоторого пути, а также концом некоторого пути, так что для любой вершины х £ X имеются по крайней мере две дуги, инцидентные х\ дуга, исходящая из х, и дуга, заходящая в х. Вершины, инцидентные более чем двум дугам, называются узлами, а прочие вершины — антиузлами. Путь, в котором узлами являются только первая и последняя вершины, называется ветвью. Сильно связный граф без петель и с единственным узлом называется розеткой и имеет весьма простую структуру: различные ветви начинаются и оканчиваются в единственном узле. Если граф G сильно связен, но утрачивает это свойство после удаления любого ребра, то он называется минимально связным-, очевидно, розетка — минимально связный граф. Говорят, что множество A cz X подвергается стягиванию, если все дуги между точками А опускаются, а все точки А отождествляются. При этом получается р-граф, который, вообще говоря (если р =£ 1), не является графом. Следующими результатами мы обязаны главным образом Кристи, Льюсу и Мейси 2). Теорема 1. Пусть в минимально связном графе G множество A cz X вершин порождает сильно связный подграф', тогда в результате стягивания А получается минимально связный граф. 1° Покажем, что стягивание А приводит к 1-графу. Действительно, иначе существовали бы вершина х(^А и две вершины а, а'^А, такие, что (х, а) (х, af)(^U [или же, что не меняет доказательства, (а, х), (a', x)£U]. Удалив одну из этих двух дуг, мы 9 См. [2]. Эти результаты получаются более просто из теоремы Руа [4], которая нам стала известна, лишь когда книга была уже сверстана, и которая гласит: граф {X, Г) сильно связен тогда и только тогда, когда не существует подмножества АссХ (в строгом смысле), содержащего свой образ ГЛ; доказательство опирается на теорию транспортных сетей.
136 ГЛ. 13. ДИАМЕТР ГРАФА получили бы все еще сильно связный граф, т. е. граф G не был бы минимально связным. 2° Покажем, что стягивание А приводит к минимально связному графу. В самом деле, в результате стягивания получается сильно связный граф, но если из него удалить произвольную дугу и, то оставшийся граф уже не будет сильно связным, поскольку не может быть сильно связным граф (X, U \ {zz}). Теорема 2. Пусть G — минимально связный граф, a G' — граф, полученный из G стягиванием элементарного контура; тогда цикло матические числа обоих графов связаны соотношением v(G) = v(Gz) + l. Контур элементарен, если он не пересекает сам себя; так как G Минимально связен, то стягивание одного элементарного контура р.о не уничтожает других контуров, поэтому наибольшее число независимых контуров уменьшается на 1. Графы G и G' сильно связны (теорема 1), они имеют соответственно v(G) и v(Gz) независимых контуров (теорема 3 гл. 4); отсюда и следует доказываемое равенство. Теорема 3. Минимально связный граф G имеет по крайней мере два антиузла. Имеем v(G)>H, так как по крайней мере один контур существует, в силу предположения о том, что |Х| > 1; в случае v (G) = 1 теорема очевидна, так как тогда G состоит из одного элементарного контура. Допустим, что теорема верна для графов с цикломатическим числом k— 1, и докажем ее для произвольного графа G, у которого v (G) = k. Рассмотрим элементарный контур р, графа G; предположим рь таким, что либо его стягивание дает узел, либо Z(pO^>3. Такой контур рь всегда существует, потому что всякий контур длины 2, дающий после стягивания антиузел, легко заменить элементарным контуром длины 3 (проходящим через обе вершины jx и две вершины, инцидентные р-). Стянем контур р.; тогда получится минимально связный граф G', у которого v(Gz) = &— 1; согласно предположению, G' имеет два антиузла: х0 и у0; хотя бы одна из этих вершин, скажем х0, является образом р, (в противном случае утверждение уже было бы доказано). Значит, в графе G имеем /(рь) 3, поэтому путь рь сам содержит по крайней мере один антиузел zQ, и граф G имеет уже два антиузла: у0 и zQ. Следствие [1]. Если сильно связный граф G без петель имеет хотя бы один узел, то существует ветвь, дуги и анти-
СИЛЬНО СВЯЗНЫЕ ГРАФЫ 137 узлы, которой можно удалить без нарушения сильной связности графа G. Действительно, если граф имеет единственный узел, то он— розетка и можно удалить любую ветвь. Если граф имеет несколько узлов, то рассмотрим граф G, вершинами которого служат узлы G, а дугами— ветви G. Граф G сильно связен, но не минимально связен, поскольку у него нет антиузлов (см. теорему 3); следовательно, из него можно удалить некоторую дугу без нарушения сильной связности. Ч. И Т. Д. Кратчайший путь из х в у, где х,у^Х, х у, называется трассой от х до у; в сильно связном графе от любой точки до любой другой существует трасса; если и — дуга, исходящая из х, то обозначим через S (и) множество вершин z, обладающих тем свойством, что от х можно дойти до z по трассе с начальной дугой и. Пример. Рассмотрим граф почтовых коммуникаций: X— множество городов; (х, y)£U, если корреспонденция может доставляться непосредственно из х в у. Для почтового служащего в х множество S (х, у) представляет список тех мест назначения, в которые письма нужно доставлять через у. Нижеследующие теоремы доказаны Брэттоном [1]. Теорема 4. Трасса есть элементарный путь. По определению, путь из х в у, не являющийся элементарным, проходит не менее двух раз через какую-либо из своих вершин, а такой путь всегда можно заменить более коротким. Теорема 5. Если |л = [хр х2, . . ., xz, ..., х;-, ..., хД — трасса, то |л [xz, Xj] = [xi . xj— тоже трасса. (Очевидно.) Теорема 6. Путь [л является трассой тогда и только тогда, когда П £(«)#= 0- Если [л — трасса от х к у, то пересечение всех S(u) содержит у и поэтому не пусто. Обратно, пусть существует вершина у, принадлежащая всем S(u), где я£|л = [хр х2, ..., хл]. Если J(xp у) = р, то d(x2, у) = р— 1, так как y£S(xp х2); по аналогичной причине d(x3, у) = р — 2 и т. д. Значит, |л есть отрезок некоторой трассы, идущей из хх в у, и, в силу теоремы 5, сам является трассой.
138 ГЛ. 13. ДИАМЕТР ГРАФА Следствие. Если р.— контур, то п •$(«)=0- «О (Непосредственно.) Диаметр Пусть G — конечный сильно связный граф без петель; назовем диаметром этого графа длину В его наибольшей трассы; иными словами, В = maxd (х, у). х,у Пример. Для каждого из сильно связных графов, изображенных на рис. 13— 1 (с п = 5), указаны количество дуг т, радиус р, диа- Элементарный контур т=5, р=4, 5=4 Симметричная розетка тп=8, р=7, 6=2 Элементарный цикл 777=9,р=2, 6=4 Розетка с'симметрич- ной ветвью 771 = 6, р=3, 6=4 Розетка с двумя симметричными ветвями 777=6, D=3, 6=4 I Полный симметричный граср 777=20, р=7,6=7 Рис. 13— 1. метр 8; центры обведены кружком, периферийные точки — квадратиком. Заметим, что при п = 5 всегда 8-f-/п>-9. Полный симметрический граф — единственный, обладающий диаметром 1,
ДИАМЕТР 139 Для конечного графа В ≪ оо; столь же очевидно, что радиус не превосходит диаметра, то есть р В. В графе, который изображает возможности непосредственной передачи сообщений между различными членами организации, диаметр играет важную роль, поскольку некоторые сообщения будут доходить до места назначения только через В инстанций; если предположить, что при каждой передаче сообщение в какой-то мере искажается, то следует выбирать граф с возможно меньшим диаметром. Кроме того, в целях экономии вообще желательно сводить к минимуму количество дуг. Теорема 7. В сильно связном графе без петель (1) п^т, (2) т^п(п— 1), (3) В 1. Действительно, неравенство (1) имеет место потому, что каждой вершине х можно отнести по крайней мере одну дугу, исходящую из х. Неравенство (2) справедливо потому, что т не может превышать числа размещений из п вершин по две. Наконец, неравенство (3) справедливо по той причине, что самая длинная трасса содержит В 1 различных вершин, откуда п В -1- 1. Замечание. Для элементарного контура в (1) и (3) имеет место равенство; для полного симметрического графа достигается равенство в (2). Это говорит о том, что никакое из неравенств (1), (2), (3), взятое отдельно, не может быть улучшено. Напротив, систему неравенств можно улучшить: существуют числа п, т, В, удовлетворяющие условиям (1), (2), (3) и такие, что не может быть сильно связного графа G = (X, U), для которого |Х| =п, \U\=m, 8(G) = 8. Эта невозможность проявляется всякий раз, когда число В выбрано слишком малым т). В связи с этим введем нижнюю грань f (т, п) диаметров сильно связных графов без петель, с п вершинами и т дугами и пополним систему неравенств еще одним: (4) В>/(/п, п). !) Например, Льюс [2] доказал, что если числа п, т, b > 1 удовлетворяют условиям (1), (2), (3) и если (4') Ь > 2/2 — т, то существует сильно связный граф G без петель, для которого | X | = п, | U | = т, Ъ (G) = Ь. К сожалению, имеется много графов, для которых неравенство (4') не выполняется (в частности, графы, изображенные на рис. 13— 2 и 13— 3).
140 ГЛ. 13. ДИАМЕТР ГРАФА Хотя это число f (т, п) не удалось еще определить, к нему можно подойти довольно близко; с этой целью докажем следующую теорему. Теорема 8. Пусть q — частное, г — остаток от деления п— 1 на v = m — п-\-1. Положим Ъ(т, п) = 2q при г = 0, 2q -|- 1 при г = 1, 2q-\-2 при г^2. Если G— розетка, то п, т и 8 удовлетворяют неравенствам (1), (2) предыдущей теоремы и, кроме того, условию (ЗЭ 1 ≪ В (т, п)^Ъ^2п — т. Наоборот, если п, т, 8— числа, удовлетворяющие условиям (1), (2), (3'), иго существует такая розетка G = (X, U), что |Х| =п, |£7| = т, 8(G) = 8. Достаточно заметить, что розетка с п вершинами и т дугами имеет ровно v = m — п-|-1 ветвей и что можно переносить антиузел с одной ветви на другую без изменения числа дуг. Помещая по одному антиузлу на Рис. 13— 2. Рис. 13— 3. каждую ветвь, кроме последней, где разместим п — v антиузлов, мы получим наибольший диаметр 80 = п — v — ]— 1 = п — (т — п — 1) — j— 1 === 2п — т, Наименьший диаметр 8j достигается распределением, насколько возможно равномерным, п— 1 антиузлов по v ветвям, что дает нам 8j = 8 (т, п). Гипотеза Брэттона. Поставим целью при фиксированных т и п определить сильно связный граф без петель, с т дугами и п
ДИАМЕТР 141 вершинами, обладающий наименьшим возможным диаметром. Брэттон [1] мог констатировать, что графы с диаметром меньшим, чем 8(zn, /г), редки. Однако такие графы существуют: так, граф, изображенный на рис. 13— 3, имеет то же количество вершин и дуг, что и розетка, изображенная на рис. 13— 2, и в то же время диаметр меньший на единицу. В графах такого типа, как на рис. 13— 3, каждая ветвь является трассой между двумя узлами и все ветви имеют одну и ту же длину, равную нечетному числу ^3. Можно показать [1], что такие графы1) всегда имеют диаметр В(т, п)— 1 и что они — единственные связные графы со следующими свойствами: 1° их диаметр меньше В(/п, /г); 2° каждая ветвь является трассой; 3° для каждой пары узлов существует ровно одна ветвь, идущая из одного в другой. Эти результаты делают правдоподобным следующее предположение, еще не доказанное: у всякого сильно связного графа без петель, с т дугами и п вершинами, диаметр больше или равен Ъ(т, п) — 1. 9 С тремя узлами. — Прим. ред.
ГЛАВА 14 Матрица смежности графа Применение обычных матричных операций Рассмотрим здесь для большей общности р-граф С? — (X U), и пусть х2 . хп— его вершины. Обозначим через а1. число дуг U, идущих из xt в х^ Квадратная матрица (afy с п строками и п столбцами называется матрицей смежности /2-графа G; как обычно, означает элемент, стоящий на пересечении Z-й строки и j-го столбца; alv ..., обозначает Z-ю вектор-строку, a = aj, afy — у-й вектор-столбец. Пример. Если G — граф, то все элементы его матрицы смеж- так, для графа, изображенного на 14— 1, имеем: J = = 1 2 3 4 5 0 1 0 1 1 1= 1 0 0 0 0 0 2 А = 0 0 1 0 1 3 0 1 1 0 1 4 0 0 0 1 0 . 5 Заметим, что в матрице А элемент на главной диагонали равен 1 в соответствии с тем, что при вершине х3 есть петля. Пусть A = (afy — матрица смежности некоторого /7-графа. Ее транспонированная матрица Д* = (а)9 является результатом зеркального отображения матрицы А относительно главной диагонали и поэтому служит матрицей смежности того р-графа, который получается из исходного переменной ориентации всех дуг. Матрица А' = (а'.1у дополнительная для А, определяется так: — р— ayt в случае графа (X, Г) она получается из А заменой
ПРИМЕНЕНИЕ ОБЫЧНЫХ МАТРИЧНЫХ ОПЕРАЦИЙ 143 всех единиц нулями и наоборот; это — матрица смежности графа (X, Г'), где отображение Г' определено следующим образом: Г'х = Х\Гх (аг£Х). Теорема 1. Пусть G — граф, А — его матрица смежности. Матрица А симметрична (Л = Л*, или а( = а^ тогда и только тогда, когда граф G — симметрический. Матрица А антисим- метрична [Д^ДЛ')*, или а(-1] тогда и только тогда, когда граф G — антисимметрический. Матрица А полна [ЛХЛ')*, или тогда и только тогда, когда граф G — полный. (Непосредственно.) Теорема 2. Пусть G = (X, U) и Н=(Х, V) — два мультиграфа с одним и тем же множеством вершин и соответственно с матрицами смежности A = (afy и B = (bfy матрице А-\-В отвечает мультиграф, который получается объединением дуг U и V; матрице АВ отвечает мультиграф, образованный следующим образом', из вершины х в вершину у идет столько дуг, сколько существует различных путей, ведущих из х в у и составленных из двух дуг, первая из которых принадлежит U, а вторая принадлежит V. 1° В мультиграфе (X, U U V) число дуг, идущих из xt в Xj, равно но это не что иное, как обгций элемент матрицы А-\-В. 2° Число различных путей вида [xt, xk. Xj\, где (xit X^U, (xk, Xj)£V, равно alk bk.\ поэтому общее число путей из xt в х^, образованных дугой из множества U и последующей дугой из множества V, равно п 2«^ = ≪аг. ЬД где (az, b;) обозначает скалярное произведение вектора-строки а* и вектора-столбца by, т. е. не что иное, как общий элемент матрицы АВ. Следствие 1. Если G— р-граф, а А — его матрица смежности, то элемент plj матрицы Р = Ак (полученной возведением матрицы А в степень X) равен числу различных путей длины X, идущих из xt в Xj. Утверждение тривиально при Х=1; если допустить его справедливость при значении X— 1, то оно останется справедливым также при значении X, ибо А = Л • ДХ-1 выражает, в силу предыдущей
144 ГЛ. 14. МАТРИЦА СМЕЖНОСТИ теоремы, число путей длины 1+(Х— 1) — X, идущих из вершины xt в вершину Следствие 2. В графе G существует путь длины X тогда и только тогда, когда Лх О; не существует контуров тогда и только тогда, когда ЛХ=О, начиная с некоторого X1). (Непосредственно, ввиду следствия 1.) Эти результаты позволяют сводить к матричным задачам некоторые задачи на р-графы; мы изучим несколько таких задач. Задачи на подсчет Практическая выгода описания графа посредством его матрицы смежности очевидна, если требуется подсчитать пути графа, удовлетворяющие некоторым заданным условиям. Начнем со следующей задачи. Задача 1. В полном антисимметрическом графе {X, U) определить число контуров длины 3. Пример [2], Собаке предлагают шесть различных видов пищи следующим образом: каждый день кладут перед собакой два вида пищи и отмечают, какую из них она съела первой. Испытав таким образом все возможные Сб=15 пар, строят граф {X, U), где Х = {Хр х2, ...» xQ] состоит из 6 видов пищи и где (xz, x^^U, если пищу xt собака предпочитает пище ху-. Этот граф является полным; он может быть, например, гра- , %2 фом, изображенным на рис. 14— 2. Обо- / \ значим его матрицу смежности через А; / \ имеем 11011' 0 0 110 10 111 0 0 0 0 0 0 0 10 1 10 10 0 Повторим теперь опыт, помещая перед собакой три вида пищи вместо двух: если это х2, х3, х4, то можно предсказать, что собака окажет предпочтение пище х3, но если речь идет о пище видов хр х2, х4, являющихся вершинами контура, то для предсказания больше не будет оснований, вследствие непостоянства собаки в предшествую- Э Взаимосвязь между матрицами типа Лх, их характеристическими числами, с одной стороны, и геометрическими характеристиками графа (число путей определенного вида и т. п.), с другой, подробно исследуется Л. М. Лихтенбаумом и другими авторами (см. дополнительную литературу к гл. 14 и 15). — Прим, перев,
ЗАДАЧИ НА ПОДСЧЕТ 145 щих опытах. Если В — число контуров длины 3 в графе (X, U), a gW— наибольшее число контуров длины 3 в полном антисимметрическом графе порядка п, то можно считать коэффициентом непостоянства собаки отношение -4т. g(n) Легко показать, что gW = п3 — п — 24— ПРИ п нечетном, п3 — 4п — 24— ПРИ п четном. В данном случае находим £(6) = ^.6(62-4) = 8. Остается определить число т. е. решить задачу 1 для графа (X U). Теорема 3. Пусть G — полный антисимметрический граф и A = (afy — его матрица смежности^ если ri='^ai.— сумма элементов l-й строки, то число контуров длины 3 равно п А. и (я - l)(2n - 1) -12 W2- Z = 1 Действительно, число циклов длины 3 равно с\ - у п (п — 1) (« — 2). Цикл длины 3 не является контуром в том и только том случае, когда он имеет две дуги, исходящие из одной вершины полное количество тех циклов длины 3, которые не являются контурами, составляет Z = 1 i i i Замечая, что 2 rt= |t/| =C’ = 1 n(n — 1), Z = 1 получаем ? иМ - 1)(л — 2)— 0 = z откуда и вытекает доказываемая формула.
146 ГЛ 14. МАТРИЦА СМЕЖНОСТИ Вот эти контуры: [Хр Х2> х4, Xj], [Хр х3, х4, Х|], [Хр х5, х4, х4], [Xj, Х6, Х4, Xj], [Х2> Х5, Х6, Х2]. Пример. Вернемся к предыдущему примеру, в котором rj = 4, r2 — 2, r3 = 4, г4 = 1, г5==2, гв = 2. Имеем 5 =1.6-5. 11— 1(16+ 4 4-16+ 1+4 + 4) = ! (55- 45) = 5. Задача 2. Рассмотрим граф G и три целых неотрицательных числа а, р, у; говорят, что путь р = [у0, ур упг] отвечает тройке ару, если на этом пути имеются две совпадающие вершины yt и у}- (I ≪ у), для которых I (р [у0, yj) = а, /(р [у., у;.]) = р, Z (р [уу, yzJ) = 7- Определить число путей, отвечающих заданной тройке ару. Ясно, что предыдущая задача 1 есть частный случай задачи 2 при а = 0, р = 3, у = 0. Если М — произвольная квадратная матрица, то через d (TH) обозначим матрицу, главная диагональ кото- рой та же, что у М, а все остальные элементы— нули. Теорема 4. Пусть А — матрица смежности графа G, a sj — число путей, отвечающих некоторой тройке ару и идущих из Xj в Хр тогда матрица S = равна произведению S = Aad (д₽) А1. В самом деле, количество контуров длины р задается диагональной матрицей d (Лр) (теорема 2), поэтому число путей, отвечающих тройке Ору, выразится матрицей а число путей, отвечающих ару, — матрицей А* • d (Др) • А7. Этот результат можно применить для подсчета числа неэлементарных путей длины k в заданном графе, если k не слишком велико: достаточно пересмотреть по отдельности все возможные тройки ару (см. [1], [4], [7]). Пример. Подсчитаем различные неэлементарные пути длины 4 в графе с матрицей смежности А. Надо рассмотреть тройки 031, 130, 022, 220, 121 и соответствующие матрицы d(A3)A, Ad (А3), d(A2')A2, A2d(A2), Ad (А2) А. Заметим, что некоторые пути длины 4 могут отвечать сразу двум тройкам; для их подсчета введем элементарное произведение двух матриц А — (а1/) и В = в смысле Адамара: А X В = (а} X составим таблицу:
ЗАДАЧА О ЛИДЕРЕ 147 Теперь, в графе без петель количества неэлементарных путей длины 4 задаются матрицей, которая получится, если сложить матрицы, определенные ранее, и вычесть матрицы таблицы. Пути Тройки Количество путей ИЗ X/ В Xj Матрица [с, х, Ь, с, #] 031, 220 К (Л х >1*) X [с, Ь, х, с, 6] 130, 031 А X (Л2)* [с, Ь, с, х, />] 130, 022 2(а;а{)аьа* (Л X Л*) х а2 [х, с, Ь, с, Z>] 121, 220 А (А ХА*) [с, Ь, с, Ь, х] 022, 121 (А X А*) А пользующийся уважением другого Пример. Рассмотрим граф на рис. 14— 3, где вершины изображают членов общества, а из х в у идет дуга, когда лицо х такие графы были изучены в социологии под названием грамм″ (см. Морено [6]). Часто стремятся выдвинуть в качестве лидера наиболее влиятельное лицо; в графе, изображенном на рис. 14— 3, лицо у является непосредственно самым влиятельным, поскольку оно превосходит имеет достаточное влияние на у; „социо- Задача о лидере С другим случаем, в котором матрица смежности графа играет важную роль, мы сталкиваемся, когда X означает множество лиц, а (х, y)£U выражает превосходство {доминирование) х над у. Говоря, что х превосходит у, мы вкладываем в это слово весьма широкий смысл: х может быть игроком, победившим в турнире игрока у; или это депутат, который имеет возможность обеспечить себе голос депутата у на выборах председателя; это может быть член некоторого общества, члена у. Задача, которую мы здесь ставим, заключается в определении лидера, т. е. того лица х0, которое следует считать победителем в турнире, или председателем палаты депутатов, или наиболее представительным членом организации.
148 ГЛ 14. МАТРИЦА СМЕЖНОСТИ пять лиц; однако сами эти пять лиц не влиятельны. Лицо z более могущественно', оно непосредственно влияет лишь на трех лиц, но эти трое в свою очередь весьма влиятельны. Отсюда уже видна сложность задачи, которой мы занимаемся. В главе 12 в качестве лидера предполагалось выбирать центр графа, который наверняка является лицом могущественным; однако во многих случаях это понятие оказывается слишком грубым: можно еще измерять силу к(х) каждого лица х, притом и в случае отсутствия центра. Когда эта функция 'гс(х) будет точно определена, лидером мы объявим то лицо х0, чья сила тг(х0)— наибольшая. Рассмотрим для определенности шахматный турнир с пятью участниками х2, х3, х4, х5; выигрыш xz у Xj изображаем двумя дугами, направленными из xt в Хр если xz и Xj сыграли вничью, то рисуем одну дугу из xz в Xj и одну дугу из Xj в xL. Наконец, при каждой вершине строим петлю. Если турнир завершен, то получается 2-граф G — например, как на рис. 14— 4, с матрицей смежности ' 1 0 2 2 1 2 1 1 0 0 А = 0 1 1 2 2 0 2 0 1 1 1 2 0 1 1 . Элементы матрицы Л удовлетворяют условию сЦей = 2; кроме того, матрицу А можно представить в виде суммы кососимметрической матрицы В и матрицы Е, все элементы которой равны 1. Обозначим через pj. (k) общий элемент матрицы Ak, т. е. количество путей длины k, идущих из xL в Xj, и положим рЧЛ)=р{(*)+^(Л)+ ••• +/>Ж Число pl(k) назовем итерированной силой порядка k игрока xt; оправдаем эту терминологию. Итерированная сила порядка 1 образуется сложением элементов матрицы А по строкам, т. е. pi(l)= 1 + 0+ 2 + 2 + 1 =6. р2(1) = 2+ 1 + 1 +0 + 0 = 4, p3(j) _ о+ 1 + 1+2+ 2 = 6, р4(1) = 0+2 + 0+ 1+ 1 = 4, р5(1)= 1 +2 + 0+ 1 + 1 =5.
ЗАДАЧА О ЛИДЕРЕ 149 С точки зрения этой силы //(1) имеем двух победителей: х1 и х3, каждый из которых превосходит наибольшее число игроков [в турнире без ничьих ввиду теоремы 3 (гл. 12) таким способом получаются все центры графа]. Силу порядка 2 каждого игрока можно найти путем сложения очков тех игроков, с которыми он сыграл вничью, и удвоенных количеств очков игроков, у которых он выиграл; в данном примере /(2) = 64-0+(2 X 6) + (2 X 4) + 5 = 31, (2) = (2 X 6)+4+ 6 + 0 + 0 = 22, р3(2) = 0 + 4 + 6 + (2 X 4) +(2 X 5) = 28, + (2) = 0 + (2Х4) + 0 + 4 + 5=17, р5(2) = 6+(2 X 4) + 0 + 4 + 5 = 23. На этот раз игрок хг занимает один первое место, и это обусловлено тем, что он победил более сильных игроков, чем те, которых победил xs. Продолжим итерацию: (3) — 31 + 0+ (2 X 28) + (2 X 17) + 23= 144, р2(3) = (2 х 31) + 22 + 28 + 0 + 0= 112, + (3) = 0 + 22 + 28 + (2 X 17) + (2 X 23)= 130, + (3) = 0 + (2 X 22) + 0 + 17 + 23 = 84, + (3) = 31 +(2 X 22) +0 + 17 + 23 = 115. Распределение мест здесь то же, что и в предыдущем случае: Хр х3, х5, х2, х4; видимо, оно стабилизировалось. И действительно, можно эффективно проверить, что при дальнейшем продолжении итерации порядок мест остается неизменным. Это побуждает нас определить силу игрока xt как предел при k— >со отношения = _ £1^ _ к Р' И+/(А)+ ... +/>″(*) Вследствие теоремы Перрона — Фробениуса !) этот предел всегда существует; более того, он крайне просто вычисляется, поскольку вектор = тс2, ..., wfy стремится к одному из собственных векторов матрицы А 2). !) См., например, Гантмахер Ф. Р., Теория матриц, гл. 13.— Прим. перев. 2) Это замечание, которым мы обязаны Уэю [9], можно сформулировать следующим образом. Рассмотрим матрицу смежности А некоторого р-графа (с петлей при каждой вершине) и составим определитель Det (Л — Х7)=/(Х). (Окончание сноски на стр. 150.)
150 ГЛ. 14. МАТРИЦА СМЕЖНОСТИ Применение булевых операций В множестве вещественных чисел 0 определим две операции, которые назовем обобщенным сложением и обобщенным умножением. Первая операция относит двум числам Xj и Х2 число Х^>0— их обобщенную сумму, обозначаемую символом X = X1-j-X2; вторая операция относит числам Xj и Х2 их обобщенное произведение Xх О, обозначаемое символом Xz = Xj X Рассмотрим теперь две матрицы А = (а1.'} и В = элементы которых — целые числа 0; обобщенная сумма этих матриц есть матрица 5 = А -|- В = (sfy, где sj = al. -|- Ь1.; об об щенное произведение есть матрица Р = А-В = (р1^, где Pli = (al X + (а2 X bty 4- ... 4- (aln X ^). Таким образом, „обобщенные″ операции над матрицами определяются в точности так же, как обычные. Предположим, что операции + и X, подобно обычным сложению и умножению, удовлетворяют условиям: (1) 4 4”Ч — 4~^v 4 4~ (^2 4” \j)= (4 4″ \г) + ^3’ 4 X == X 4 X (^2 X ^3)= (^i X \г) X 4 х (^2 4” \j)= (^i х ^2) 4~ (^i х ^3) (иначе говоря, имеем „коммутативное кольцо″ относительно этих операций). Обобщенным операциям над матрицами посвящена обширнейшая литература; мы укажем только на те свойства, которые имеют непосредственное приложение к интересующим нас вопросам. 1° Корень характеристического уравнения = обладающий наименьшей 1абсолютной величиной, — простой; пусть — этот простой корень, а Ц = t\, ..., tty — вектор, для которого п At. = 2 4 =L f=l 2° Вектор izk стремится к при неограниченном возрастании k. 1° Эта первая часть утверждения есть не что иное, как теорема Перрона — Фробениуса, хорошо известная в теории стохастических процессов. 2° Вторая часть получается непосредственно, если надлежащим преобразованием координат привести матрицу А к диагональному виду.
ПРИМЕНЕНИЕ БУЛЕВЫХ ОПЕРАЦИЙ 151 Пример. Для сети G, каждой дуге и которой отнесена длина I (и), рассмотрим матрицу А = (а1^, где H(*z> Ху) при (xz, Ху)£(Л а1. = 7 оо при (xz, Xj) U Положим \ “F^2 — т*п {4» М» \ X ^2 — 4 4″ ^2* Эти операции удовлетворяют всей системе (1); общим элементом матрицы А • А = А2 служит Р/ = min (а* 4- а*); это число выражает длину кратчайшего пути из xz в Xj, образованного двумя дугами или одной дугой (ибо а(-j-aj = а^. Вообще Аа указывает длину кратчайшего пути от одной вершины до другой, составленного не более чем а дугами. Существует значение а0, для которого да° = да°+1 = да°+2 = Матрица Аа° указывает кратчайшие расстояния от одной вершины до другой. Теорема 5. При обобщенных операциях -f- и X матрицы удовлетворяют условиям'. (1) = в + (2) Л+(В+С) = (Л+В) + С, (3) А .(В+С) = (Д.В) + (Л.С), (4) (A-j-B)* = 5*4-A*, (5) (А • В)* = В* ■ А*. Равенства (1), (2) и (4) получаются непосредственно. Для доказательства равенства (3) достаточно выписать общий элемент матрицы А-СВ+С): ≪aZ- Ьу + Су> = X (&} + 4)] + • • • = = [(^Х^.)4-(^Х4)]+ ... = ≪а', Ьу) + (аг, су). Для доказательства равенства (5) достаточно учесть, что элемент р*1 матрицы (Д • В/ = Р* равен Pj=PJi={&J’ bz) = ≪aj. = а})-
152 ГЛ. 14 МАТРИЦА СМЕЖНОСТИ Заметим, что, вообще говоря, А • В =/= В • А. Если все рассматриваемые матрицы являются матрицами смежности некоторых графов, то элементами матриц являются 0 и 1, и мы определим операции + и X так: 1 + 1 = 1, 1X1 = 1, 1+0=1, 1 Х0 = 0, 0 + 0 = 0, 0X0 = 0. Иначе юворя, положим Xi+X2 = max {Хр Х2}, Xi X x2 = min {Хр Х2). Операции + и X называются тогда соответственно булевым сложением и булевым умножением. Теорема 6. Если А и В — соответственно матрицы смежности графов G — (X, Г) и Н=(Х, Д), то булева сумма А-]-В отвечает графу (X, ГиД), я булево произведение А-В — графу (X Д • Г), где, как обычно, (Г U Д) х = Гх U Д*, (Д -Г)х = Д(Гх). Этот результат аналогичен теореме 2; элемент pj произведения Р = А ♦ В равен Plj = («{ X +(≪4 X 4- .... Таким образом, если существует путь вида [xt, xk, х-], где xk £ Гх.» ху. £ Дх^, то alk X bkj = 1, откуда pf. = 1; в противном случае pj = O. Значит, pj. = 1 тогда и только тогда, когда Ху£Д(ГхД т. е. когда от xz к Ху ведет двухзвенная цепь, образованная дугой из G и последующей дугой из И. Следствие. Пусть А — матрица смежности графа G; булево произведение А* = А • А • ... - А служит матрицей смеж- ности того графа, который содержит дугу (х, у) тогда и только тогда, когда в G существует путь длины идущий из х в у („граф а-превосходства“). (Непосредственно.) Понятно, что алгебра булевых матриц, которая развивается параллельно алгебре обычных матриц, позволяет решать такого рода задачи на графы, как, например: известен граф ^-превосходства’, найти исходный граф. Эта задача аналогична задаче определения корня а-й степени из матрицы.
ГЛАВА 15 Матрицы инциденций Вполне унимодулярные матрицы Пусть вершины; Ир и2, .... ит — дуги ПОЛОЖИМ графа О, а хр х2, ...» хп— его sl. 4-1, если tij исходит из xz; — 1, если заходит в xt\ О, если Uj не инцидентна xt. Матрица S = (sfy называется матрицей инциденций для дуг графа. Если, далее, up и2, ит означают ребра графа, то положим 4-1, если xL инцидентна иу-; О в противном случае. Матрица R=(r^ называется матрицей инциденций для ребер графа. Матрица А = (а1^ называется вполне унимодулярной, если определитель любой ее квадратной подматрицы равен 0, 4“1 или — 1* Каждый элемент такой матрицы, будучи ее минором первого порядка, тоже равен 0, 4“1 или — Ь нам тепеРь нужны критерии для определения, является ли заданная матрица с элементами 0, 4-1 > и — 1 вполне унимодулярной. Пример. Для графа, изображенного на рис. 15— 1 0 1 0 1 0 О' ' 0 10100 1 0 1 0 0 0 1 01000 — 1 — 1 0 0 0 0 , R = — 1 — 10000 0 0 — 1 — 1 1 1 0 01111 0 0 0 0 — 1 0 0 00010 0 0 0 0 0 — 1. 0 00001. Обе эти матрицы вполне унимодулярны, Рис. 15— 1. что можно проверить непосредственно или что вытекает из нижеследующих теорем. Теорема 1 (Хеллер— Томпкинс— Гейл [2]). Пусть А — матрица с элементами 0, 4-1» — 1» каждый столбец которой содержит
154 ГЛ. 15. МАТРИЦЫ ИНЦИДЕНЦИЙ не более двух отличных от нуля элементов', А вполне унимоду- лярна в том и только в том случае, если все ее строки можно распределить по двум непересекающимся множествам 1} и с соблюдением следующих условий'. (1) если два ненулевых элемента одного и того же столбца имеют одинаковый знак, то один из них принадлежит /р а другой /2; (2) если два ненулевых элемента одного и того же столбца имеют противоположные знаки, то оба они содержатся или в /р или в 12. 1° Пусть А — матрица, строки которой можно распределить как указано; любая квадратная подматрица В матрицы А тоже обладает этим свойством. Для доказательства того, что А вполне унимоду- лярна, достаточно показать, что Det (Я) = 0, -|-1 или — 1. Это утверждение справедливо для матриц В порядка 1; предположим, что оно верно для матриц порядка q— 1, и докажем, что оно остается справедливым для квадратной матрицы В порядка q, у которой два непересекающихся множества суть 1Х и /2. Если каждый вектор-столбец Ь; имеет ровно два ненулевых элемента, то 5 ьг = 5 ь'. 'ЕЛ Значит, векторы-строки линейно зависимы и Det(B) = 0. Если какой-либо вектор-столбец не имеет ненулевых элементов, то также Det(B) = 0. Наконец, если существует вектор-столбец by ровно с одним ненулевым элементом, скажем bj=-\-l, то обозначим через С квадратную подматрицу, остающуюся после удаления из В у-го столбца и Z-й строки; поскольку теорема предполагается верной для матриц порядка q— 1, имеем Det (В) ~ ± Det (С) = — Н1, — 1 или 0. Во всех случаях предложение доказано. 2° Допустим, что А — вполне унимодулярная матрица, каждый столбец которой имеет не более двух ненулевых элементов, и докажем, что существует разбиение (/р /2) с указанными выше свойствами. Можно предполагать, что каждый столбец матрицы А содержит в точности два ненулевых элемента, ибо любой столбец с единственным ненулевым элементом и любой столбец, не содержащий ненулевых элементов, можно удалить без ущерба для теоремы. Матрице А отнесем граф G (неориентированный и без петель) следующим образом: Z-й строке ставим в соответствие вершину xt, у-му столбцу — ребро иу.; последнее будет соединять вершины xk и xh, когда ak. #= 0 и я/? #= 0. Наконец, мы скажем, что ребро uy-— специальное, если оба ненулевых элемента вектора-столбца имеют одинаковый
ВПОЛНЕ УНИМОДУЛЯРНЫЕ МАТРИЦЫ 155 знак; покажем, что каждый элементарный цикл графа содержит четное число специальных, ребер. В самом деле, если бы существовал элементарный цикл, не обладающий этим свойством, например ji = [хр х2, . xk, xj = = (up U2, •••’ то мы развернули бы определитель соответствующей квадратной подматрицы и2 ... О ••• h а2 ... О Р2 ••• О *1 х2 0 0 ••• ak) xk Имеем а;. Ф 0, #= 0; которые соответствуют k — (2р+ 1). Обозначая через e(Zp новке (Zp Z2, . . ., ik), мы кроме того, а;. — — для тех индексов у, неспециальным ребрам в количестве Z2, . . ., Zft) число беспорядков в переста- можем написать Det (В) = (- 21 -■ %а2 . . . а* + (- 1)Е(2 . k' !)₽2 . . . = = (+1)а1а2 • • • ай + (— 1)* '[(— 1)* (2₽ + 1>а1а2 • • • aJ — = 204062 ... 04, = ± 2. Но это противоречит условию, что матрица А вполне уни- модулярна. Итак, каждый элементарный цикл содержит четное число специальных ребер, значит, то же справедливо для любого цикла графа. Если каждое неспециальное ребро стянуть в точку, то получится новый граф без циклов нечетной длины и поэтому бихроматический (в силу теоремы Кёнига, см. гл. 4); обозначая через множество индексов вершин xz, окрашенных в синий цвет, а через /2 — множество индексов вершин xt> окрашенных в красный, получим два искомых непересекающихся множества А и /2. Следствие 1. Матрица акциденций S = (sty для дуг любого графа вполне унимодулярна. В самом деле, вектор-столбец s;- состоит из одного элемента — Н1, одного элемента — 1 и элементов 0. Поэтому можно положить: А = {1. 2, ..., п}, /2=0. Следствие 2. Матрица инциденций R = (rj.) для ребер графа вполне унимодулярна тогда и только тогда, когда граф бихроматический. Действительно, поскольку все ненулевые элементы в R равны 4-1, матрица R является вполне унимодулярной тогда и только тогда,
156 ГЛ. 15. МАТРИЦЫ ИНЦИДЕНЦИЙ когда вершины графа можно распределить по двум непересекаю- щимся внутренне устойчивым множествам: Теорема 2 (Келлер). Пусть А = (а1^— матрица с элементами 0, -|-1 и — 1» для двух векторов-строк г.1 и положим а*НаЛ когда каждый ненулевой элемент а^ строки а? равен элементу alk строки а1, стоящему в том же столбце. Если (1) a^ = a^=/=Q при каком-либо k ==> az^ay илиа7На/, (2) — — a^k 4= 0 при каком-либо k ==> az $ - а7 или аф - а\ то матрица А вполне унимодулярна. Отношение' как легко понять, является отношением порядка; например, (О, — 1, — 1, оф-1, 4-14-i)F(o, — 1, о, о, о, 04-1). Любая квадратная подматрица В матрицы А тоже обладает свойствами (1) и (2); покажем, что Det (В) равен 0, — 1 или -|-1. Это предложение верно для матриц В порядка 1; допустив, что оно верно для матриц порядка q— 1, докажем его справедливость для произвольной матрицы В порядка q. Если В имеет столбец из одних нулей, то Det(B) = 0; если у В есть столбец с единственным ненулевым элементом, то Det (В) равен (с точностью до знака) минору этого элемента, т. е. равен 0, +1 или — 1. Осталось разобрать случай, когда в каждом столбце имеется по крайней мере два ненулевых элемента. Пусть и b\ — два ненулевых элемента вектора-столбца Ьр для определенности предположим, что #}=4-1. = 4“ 1 • В силу (1) Ы^Ь2 или b2^b1. Меняя в случае надобности порядок строк, мы допустим, что Ь1 Ь2; в матрице В каждую вектор-строку bz, для которой bz 4* ± Ь2, заменим на bz = bz zp b2; в новой матрице В элементы по-прежнему равны 0, — 1 или -|-1» а Det (В) = Det (В). Покажем прежде всего, что В удовлетворяет условиям (1) и (2). В самом деле, строка bz может быть прежней, и тогда пишем bz, или измененной, и тогда пишем cz. Пусть, например, с\ = Ь1к = -\-\\ покажем, что с1 Н Ь* или bz 4 с1. Так как ^ = 0, то — 4-1=^ = м, & k 1 R К*
ВПОЛНЕ УНИМОДУЛЯРНЫЕ МАТРИЦЫ 157 откуда bz b1 или b1 Н bz. Но bz Ь1 bz F b1 Ь2 => bz = bz — b2 b1 — b2 = с1. С другой стороны, при Ь1 Ьг не может быть ни Ы £ - Ь2 (ибо тогда мы имели бы Ь1 £ - Ь2, что невозможно), ни b2 ± bZ (так как a b\ = О); остается рассмотреть два случая: когда Ь*£- Ь2 и когда ненулевые элементы строк Ь* и Ь2 распределяются по двум непересекающимся множествам столбцов. Имеем: b1 bz Ь2 с1 = Ь1 — Ь2 bz — b2 = bz {первый случай) Ь1 Ь* или bi bz = bz =ф с1 = b1 — b2 bz = bz {второй случай) В обоих случаях (1) доказано; (2) доказывается точно так же. Повторяя теперь преобразование В->В с другими строками, мы увеличим количество нулей в матрице В\ будем делать это до тех пор, пока не получим в В столбец, содержащий не более одного ненулевого элемента. Поскольку для матриц порядка q— 1 теорема предполагается верной, Det {В) = Det {В) = 0, -[-1 или — 1. Ч. И Т. Д. Теорема 3. Пусть А и В — две матрицы, элементами которых являются 0 и 1 и которые удовлетворяют условию (1) предыдущей теоремы', тогда матрица С, полученная объединением строк матриц А и В, вполне унимодулярна. В самом деле, рассмотрим квадратную подматрицу С матрицы С, составленную из подматрицы А матрицы А и подматрицы В матрицы Bt и покажем, что Det (С) — 0, 4-1 или — 1. Как и в теореме 2, будем уменьшать количество ненулевых элементов матрицы А (и матрицы В) до тех пор, пока в каждом столбце останется не более одного элемента, отличного от нуля; матрица С будет тогда иметь не более двух ненулевых элементов (которые равны -|-1) в каждом столбце; если один из этих элементов принадлежит А, то другой содержится в В; поэтому в силу теоремы 1 матрица С вполне унимодулярна, откуда следует, что Det {С) = 0, 4“1 или — !•
158 ГЛ. 15. МАТРИЦЫ ИНЦИДЕНЦИЙ Примеры. Непосредственно применяя результаты этого параграфа, читатель может проверить, что матрицы в = А-- г-1 +1 — 1 0 +1 -1 -1 +1 0 4-1 0 — 1 +1 - 0 — с = 0 0 1 ’ 1 0 +1 0 -Н о 4-1 +1 -Г 0 0 > '+1 +1 0 0 +1 +1 Н-1 4-1 -Hi, вполне унимодуля'рны. Вполне унимодулярные системы Рассмотрим однородную систему линейных уравнений: (1) ' а\хх + а\х2 -ф- . . . + а1тхт = 0> а^х1а^х2... -]-а2тхт = 0, а^х1а£х2... -\-a^ixm = Q. Полагая х = (х\ х2, ..., хт\ 0 = (0, 0, . . ., 0) и X = можем записать систему в виде Лх = 0. Мы исследуем здесь векторы х, удовлетворяющие этому уравнению, в случае когда матрица А вполне унимодулярна. Следуя хорошо известному способу решения, рассмотрим наибольший, отличный от нуля определитель матрицы А; пусть это, например, a} 4 =£0. а“~Р а″-Р ... а^-Рр.
ВПОЛНЕ УНИМОДУЛЯРНЫЕ СИСТЕМЫ 159 Решаем основную систему: (Iх) ... -]~а\_рхп-Р = = -(й'_р+1^-₽+14- ••• + а^х1 + ... -\-а1п_рхп-Р = = -«р+1^-₽+14- + ФП- an-px] ал-рх2_|_ ... +апп-Ррхп~Р — Придадим сначала неосновным переменным хп~р+\ хп~р+\ ...» хт значения 1, 0, 0, . . ., 0; тогда система (lz) однозначно определит вектор с1 = (с}, с], ...» с”1), i-я координата которого (/ п— р) выражается формулой = 0, или — 1. а″~Р ... — ап~Р^у п-р+\ ап-р п-р Итак, координаты вектора с} равны 0, 4″1 или — 1; кроме того, сР будучи решением системы (Iх), является также решением системы (1) (в силу однородности системы). Это приводит нас к следующему результату. Теорема 41). Если А = (afy — вполне унимодулярная матрица, то уравнение Лх = 0 имеет в качестве решений векторы линейного пространства т — п-\-р измерений, порожденного векторами Ср с2 . ст_п^р, все координаты которых равны 0, — 1 или 4-1. Э Гофман и Краскал [3] доказали разновидность этой теоремы, имеющую приложения к теории линейных программ: пусть А — матрица с целочисленными элементами, а Ь, Ь\ а, а' — векторы с целочисленными координатами; если матрица А вполне унимодулярна, то на каждой грани выпуклого полиэдра {х/b1 ≪ (Ах)1 ≪ Ь'1- а1 ≪ х1 ≪ а,1\ найдется точка с целочисленными координатами. (В частности, целочисленными координатами обладают вершины полиэдра, которые являются нульмерными гранями.)
160 ГЛ. 15 МАТРИЦЫ ИНЦИДЕНЦИЙ В самом деле, придавая переменным (хл″р+1, хп~р+2, хт) последовательно системы значений ej = (1, 0, 0), е2 = (0, 1, ... . .., 0), ...» е/7г_/г+р = (0, 0, .... 1), мы определим, как показано выше, векторы ср с2, •••» ст_п+р с координатами 0, -|-1 или — 1. Эти векторы линейно независимы, ибо ^1^1 “I- ^2^2 ~Н • • • Кп-л+рСт-п+р — У =Ф^1е1+ ••• ~\~Кп-П+р*т-п+р — ^1 = ••• =\п-л+р = 0- ч. И т. д. Поскольку число их равно размерности пространства решений уравнения Лх = 0, векторы ск образуют фундаментальную систему решений. Как видно из первого параграфа гл. 4, каждому циклу р антисимметрического графа можно поставить в соответствие /n-мерный вектор (с1, с2, ..., ст) следующим образом: если при обходе цикла р дуга Uj проходится г раз в направлении ее ориентации и 5 раз в противоположном направлении, то с7 — г — s. Мы видели также, что наибольшее число независимых циклов равно v(G) = /n — п-\~р, где т— число дуг, п— число вершин, р — число компонент (теорема 2 гл. 4). Теорема 5 (Пуанкаре — Веблен — Александер [6], [7]). Пусть — антисимметрический > - Случай 1 и- ик - • - б - Случай 2 Х1 граф, 5 = — его матрица инциденций для дуг\ чтобы вектор с=(с!, с2, . . ., ст) с целочисленными координатами представлял цикл или сумму циклов, необходимо и достаточно, чтобы 5с = 0. 1° Условие необходимо. Надо лишь ui ик. - £ - Случай 3 Рис. 15— 2. показать, что вектор с, отвечающий элементарному циклу, удовлетворяет условию 5с = 0. Допустим, что pJ = [X1, х2, . . ., xk, xj -— некоторый элементарный цикл, с = (с1, с2, ..., ст)— соответствующий вектор, и покажем, что (1) sjc1-]-s2£2+ ... -\-з1тст = 0 (Z = 1, 2, . п). Если цикл р не проходит через Z-ю вершину xt графа, то он не содержит никакой дуги Uj, инцидентной xz, поэтому с7 = 0 для всех тех индексов j, для которых sl. =# 0, откуда и следует (1). Если цикл р проходит через вершину xz, то он содержит ровно две дуги и^ и uk, инцидентные xz; в отношении ориентации этих
ЦИКЛОМАТИЧЕСКИЕ МАТРИЦЫ 161 дуг возможны три случая, указанные на рис. 15— 2. В случае 1 имеем cJ = ск 0; — — slk=£ 0. Отсюда следует = 0, т. е. (1). В случаях 2 и 3 имеем ci =— ck=£0', s1. = J я Отсюда следует s^ci + slkck = 0, т. е. опять (1). Равенство (1) доказано во всех случаях. 2° Условие достаточно. Всякий вектор с с целочисленными координатами, для которого Sc = 0, является линейной комбинацией (с целыми коэффициентами) векторов ср с2, ..., ст_п+р, определенных в теореме 4; нам достаточно для каждого k = 1, 2, . . ., т — п-\-р построить такую систему циклов, чтобы сумма соответствующих им векторов была равна ck. Рассмотрим множество uk тех дуг графа G, которым отвечают ненулевые координаты вектора ck. Так как s^.c^ может равняться т только 0, 4-1 или — 1, a = 0 ПРИ любом Z, то | s^c^ | = 1 для четного количества индексов у; иными словами, каждая вершина xL инцидентна четному числу дуг из ик. Отсюда следует, что из всех дуг множества uk можно составить систему циклов. Ч. И Т. Д. Эта теорема дает аналитический метод для нахождения независимых циклов графа; однако в следующей главе мы познакомимся с гораздо более простым геометрическим методом. Цикломатические матрицы Пусть с1 = ^|, . с™}, ..., cv = (cj, с^ ..., с™}— векторы базы независимых циклов графа G; рассмотрим матрицу с} с\ ... с1 12 v С1 С2 * * ' Cv
162 ГЛ. 15. МАТРИЦЫ ИНЦИДЕНЦИЙ Она называется цикло мсипической матрицей графа G. Если векторы-столбцы сЛ выбраны, как в теореме 4, то все элементы матрицы С равны 0, — 1 или -|-1, а сама матрица имеет вид m-v Qin— 'i 1 . v 10 0 о 0 10 о О ’ О 6 ... 1 Произведение ибо матрицы С на матрицу S слева равно матрице О, (s1, q) (s1, c2) .. .. (s1, q) 0 0 .. . . O' sc = (s2, q) (s2, c2) . = 0 (s'2. q) • • (s'2. cv)J 0 . . 0 Следовательно, если известна цикломатическая матрица С, то можно найти матрицу инциденций для дуг из уравнения 5С = О; для нахождения векторов-строк матрицы S достаточно решить линейное уравнение C*s = 0. Это замечание имеет многочисленные применения в теории релейных схем Пример (Окада [5]). Неизвестное электрическое реле составлено из 8 выключателей up и2, ..., и8 (которые мы для простоты будем обозначать цифрами 1, 2, ..., 8). Эти выключатели присоединены к контактам хр х2, х3, х4, х5, хб в неизвестном порядке. Поставим целью определить геометрическую конфигурацию реле; для этого установим, при замыкании каких именно множеств выключателей реле пропускает ток и лампа горит. Пусть лампа горит при следующих комбинациях: 13568, 137, 14567, 148, 23458, 23467, 257, 268. !) Цикломатическая матрица, называемая также второй матрицей инциденций, широко применяется не только в теории релейных схем, но и в теории электрических сетей с заданными физическими характеристиками звеньев (см., например, [83]). — Прим, перев.
ЦИКЛОМАТИЧЕСКИЕ МАТРИЦЫ 163 Теперь можно составить матрицу до слагаемого, кратного 2, будут: С; ее элементы, с точностью с2 с3 с4 с5 1111 1110 0 0 0 1 10 0 1 0 111 0 10 1 0 10 0 110 0 0 0 11 С6 с7 1 1 о о 1 1 1 о 1 о О 1 1 о 1 1 о о С8 1 о 1 о о о 1 о 1 ио U1 U2 из и4 «5 «6 U7 «8 Отбрасывая столбцы, которые являются линейными комбинациями остальных1), и транспонируя матрицу относительно главной диагонали, получим /11010110 14 , (011011011) 1 0 0 0 1 1 0 0 1 11 \0 0 0 0 0 1 1 1 1 / ■) Отброшены 4-й, 5-й, 7-й и 8-й столбцы, ко 2-му, 3-му и 6-му столбцам прибавлен 1-й столбец и столбцы переставлены.— Прим. ред.
164 ГЛ. 15. МАТРИЦЫ ИНЦИДЕНЦИЙ Теперь надо решить сравнение C‘t = O (mod 2), т. е. ^1 — |— ^2 — F ^4 “1“ ^6 ^7 ~=== 0 (mod 2), ^2″Ь ^5 ”Ь ^6 + ^8 + h — ® (mod 2), h + ^5“Ь ^8 + z9 s 0 (mod 2), (mod 2). Находим фундаментальную систему решения будут строками матрицы независимых решений; эти 1 1 1 0 0 0 0 0 0 0 1 0 1 1 0 0 0 0 1 1 0 0 0 1 1 0 0 0 0 0 1 0 1 0 1 0 1 0 0 1 0 1 0 0 1 Составляя линейные комбинации строк, добиваемся, чтобы каждый столбец содержал ровно две единицы; получаем матрицу инциден- ций R для ребер графа G, изображенного на рис . 15— 3: «0 иг U2 u3 U4 u5 Ug u7 u8 1 1 1 0 0 0 0 0 0 Xj 0 10 110 0 0 0 x2 R= 00100110 0 x3 0 0 0 1 0 1 0 1 0 x4 1 0 0 0 0 0 0 1 1 x5 0 0 0 0 1 0 1 0 1 Xg
ГЛАВА 16 Деревья и прадеревья Деревья Начиная с этого момента, мы будем интересоваться главным образом конечными графами без учета ориентации. U = (up и2, . . . , ит] обозначает множество всех ребер, a Ux — множество ребер, инцидентных вершине х. Вершина х графа называется висячей, если существует только одно ребро, инцидентное х, т. е. |UJ = 1; вершина х называется изолированной, если не существует ребер, инцидентных х, т. е. если |UX| =0. Через Гх обозначаем множество вершин, соединенных ребром с вершиной х. Дерево, по определению, есть конечный связный граф без циклов, имеющий не менее двух вершин. Это важное понятие, введенное Кэли, можно определить совсем иначе, и в дальнейшем мы будем пользоваться каждым из шести определений, равносильность которых утверждается следующей теоремой. Теорема 1. Пусть Н — граф порядка |Х| =/г> 1; следующие характеристические свойства дерева равносильны, (1) Н связен и не содержит циклов} (2) Н не содержит циклов и имеет п— 1 ребер} (3) Н связен и имеет п— 1 ребер} (4) Н не содержит циклов, но добавление ребра между любыми двумя несмежными вершинами приводит к появлению циклов (и только одного элементарного цикла)} (5) Н связен, но утрачивает это свойство после удаления любого ребра} (6) всякая пара вершин соединена цепью и только одной. В самом деле: (1) (2), ибо, обозначив через р число компонент, а через т— число ребер, будем иметь р=1, v = — п~[-р = 0, откуда т = п — р = п — 1. (2) (3), ибо если v = 0 и т = п— 1, то p = v — т -1- п = 1 и Н связен. (3) ==> (4), ибо из р = 1 и т = п — 1 следует v = /п — п -1- р = 0, т. е. Н не содержит циклов; далее, если добавить ребро между двумя несмежными вершинами, то v станет равным 1, значит появится в точности один элементарный цикл.
166 ГЛ. 16. ДЕРЕВЬЯ И ПРАДЕРЕВЬЯ (4) (5), ибо если бы Н не был связен, то у него имелись бы две вершины х и у, не соединенные никакой цепью и такие, что добавление ребра [х, у] не приводит к появлению циклов; значит, р=\, v = 0, откуда т = п— 1. После удаления одного ребра получим т = п— 2, v = 0, откуда p = v— т-]-п = ≪2, т. е. Н уже не будет связным. (5) (6), ибо для любых двух вершин х и у существует соединяющая их цепь (поскольку И связен), но не существует двух таких цепей (так как удаление ребра, принадлежащего второй цепи и не принадлежащего первой, не нарушило бы связности графа). (6) => (1), ибо если И имеет цикл, то удаление какого-нибудь ребра из цикла не нарушает связности графа. Теорема 2. Всякое дерево имеет по крайней мере две висячие вершины. Пусть Н — дерево, не имеющее висячих вершин или имеющее только одну такую вершину. Представим себе путешественника, отправившегося из произвольной вершины (в первом случае) или из висячей вершины (во втором случае): если он решил не проходить дважды по одному и тому же ребру, то он не сможет дважды оказаться в одной и той же вершине (ибо Н не имеет циклов); кроме того, прибыв в некоторую вершину х, он всегда сможет покинуть ее по другому ребру (так как вершина х — не висячая и |UX|^2). Значит, путешествие будет продолжаться без конца, а это невозможно, поскольку граф Н конечен. Теорема 3. Граф G = (X U) тогда и только тогда содержит частичный граф, являющийся деревом, когда он связен. Если G несвязен, то все его частичные графы несвязны и G не может содержать частичного дерева. Если G связен, то выясним, имеется ли в нем ребро, удаление которого не нарушает связности. В случае, когда таких ребер нет, G сам является деревом в силу свойства (5); если же такое ребро есть, то удалим его и выясним, имеется ли в полученном графе ребро, удаление которого не нарушает связности, и т. д. ... Когда удаление ребер без нарушения связности станет невозможным, получим дерево [см. свойство (5)], множеством вершин которого по-прежнему служит X. Ч. И Т. Д. Эта теорема дает также алгорифм для построения некоторого частичного дерева данного графа. Можно обобщить задачу следующим образом. Задача 1. Рассмотрим связный граф G = (X U), каждому ребру и которого отнесено число /(и)^>0, называемое длиной этого ребра;
ДЕРЕВЬЯ 167 найти такое частичное дерево Н=(Х, V) графа G, чтобы суммарная длина 2 ^(и) была наименьшей. Эта задача очень часто u£ V встречается в технике связи и во многих других областях. Пример. Какова наименьшая длина кабеля, необходимого для того, чтобы соединить между собой п данных городов? Вершинами графа здесь служат города, а Z(x, у) выражает в километрах расстояние между городами х и у. Искомая кабельная сеть должна быть связной и, в силу требования минимальности длины, не содержать циклов, т. е. быть деревом. Таким образом, ищется „кратчайшее″ из деревьев. являющихся частичными графами полного графа с п вершинами. Докажем сначала лемму. Лемма. Если G = (X, U)— полный граф и длйны Z(u) его ребер все различны, то задача 1 имеет единственное решение (X V); множество V= {vp v2, ... , vn_J получается следующим образом', в качестве берем кратчайшее ребро} в качестве v2— самое короткое из тех ребер, для которых v2=£v j и V2=(vp v2| не содержит циклов’, в качестве v3— самое короткое из тех ребер, для которых v3=#vp v3=^v2 и V3={vP v2, v3} не содержит циклов', и т. д. . . . Определим, как сказано, множества V1={v1), V2, V3, . . . , и допустим, что к \lk невозможно добавить ребро без появления цикла. В силу характеристического свойства (4) граф (X, Vk) представляет собой дерево, а в силу характеристического свойства (2) имеем k = п — 1. Пусть (X, V) — дерево, для которого /(и) имеет наименьшее u£ V значение; покажем, что V = Vn_P Если V=#V/2_] = {vp v2, ...» то пусть vk— первое из ребер Vp v2, ..., не принадлежащее V. В силу характеристического свойства (4) в V U {v^} существует элементарный цикл, притом единственный; на этом цикле имеется такое ребро и0, что u0(£V„_p Если положить W = (V U {vj)\{uo}, то граф (X W) не будет содержать циклов и будет иметь п — 1 ребер, поэтому он представляет собой дерево [свойство (2)]. Va-iU {u0} не имеет циклов (ибо eV), значит, Z(u0)>Z(v^). Дерево (X W), которое получается из дерева (X V) заменой и0 на Nk, имеет поэтому меньшую суммарную длину, чем (X V); но это противоречит предположению о том, что дерево (X V) — „кратчайшее″. Алгорифм для задачи 1 (Краскал [6]). Действуем по этапам, выбирая каждый раз кратчайшее ребро, не образующее цикла с выбранными ранее ребрами.
168 ГЛ. 16. ДЕРЕВЬЯ И ПРАДЕРЕВЬЯ Таким способом окажется выбранным множество \п_х — = {vP . . из п— 1 ребер, и граф (X, VЛ-1) будет деревом с наименьшей суммарной длиной. В самом деле, длины всех ребер всегда можно сделать разными: если, например, I (u0 = Z (u2) = I (u3), то произведем изменения: /(u,)-»/' (u1)==/(u1) + e, I (u2) ~* !•' (иг) — (иг) 2s. Z(u3)->/'(u3) = Z(u3)+3e, и выберем г столь малым, чтобы не произошло изменений в соотношениях длин ребер. Точно так же всегда можно сделать граф полным, добавляя столь длинные ребра wk, чтобы / (wft) > 2 i («)• u£ U В новом графе существует частичное дерево Н=(Х, притом единственное, обладающее наименьшей длиной; в силу теоремы 3, N не содержит ребер w^(£U, ибо 4wft)> 2 /(и). и С и Поэтому Н является частичным деревом исходного графа О, обладающим наименьшей суммарной длиной. Заметим, что если длины всех ребер различны, то дерево Н— единственное. Заметим также, что можно было бы действовать двойственным образом: удалять шаг за шагом самые длинные ребра, до тех пор пока это удаление не нарушает связности графа. Алгорифм для нахождения базы независимых циклов. Можно считать граф G = (X, U) связным (в противном случае мы рассмотрели бы каждую компоненту отдельно). Сначала построим, как выше, дерево (X V^-j). Пусть up и2, ...» ит_л+1 — ребра множества U, не принадлежащие Vw_p добавление к дереву (X V^-i) любого из этих ребер, скажем и^., приводит к появлению элементарного цикла притом единственного [свойство (4)]. Но циклы |х2, ... , независимы, потому что каждый из них содержит ребро, не принадлежащее остальным; к тому же количество этих циклов т — п + 1 = v (G), значит они образуют базу независимых циклов. Заметим еще только, что в случае плоского графа базу независимых циклов можно находить гораздо проще, как будет показано впоследствии (теорема 1 гл. 21). Пример. Рассмотрим симметрическую транспортную сеть (X U) с входом х0 и выходом z\ соединим вход с выходом ребром [х0, z] и произвольно ориентируем все ребра. Поток ср (и) по ребру и будет
ДЕРЕВЬЯ 169 тогда ^>0, если его направление совпадает с ориентацией ребра и, и 40 в противоположном случае, следовательно, 2 ≪р(и) = 0 (х£Х). u^Ux Займемся решением следующей задачи. Определить потоки ср, принимающие на ребрах up и2, ...» иЛ заданные значения ср(и1) = Х1, ср(и2) = Х2, ср(ий) = ХА. Допустим, например, что в графе G, изображенном на рис. 16 — 1, требуется получить cp(Ui) = 6, ≪р (и2) = ср (и3) = 1, cp(u4)=z≪p(u5) = cp(u6) = 2. Здесь можно выявить дерево (показанное жирными линиями), удаляя ребра Up u2, . . ., u6 с предписанными значениями ср, а также ребро и7; каждое ребро uz (с I 6) определяет вместе с этим деревом некоторый элементарный цикл притом единственный, по которому должен циркулировать замкнутый поток, равный ср (uz) = Xz [по будет циркулировать замкнутый поток с произвольным значением ср (и7) = X]. Складывая эти потоки отдельно для каждого ребра, мы получим искомый поток (который в данном случае будет зависеть от параметра X). Поток ср (и) по каждому ребру дается следующей таблицей: И] U2 U3 U4 U5 U6 U7 U8 U9 UI0 Up u12 u13 Поток по рч : 4-6 — 6 4-6 4-6 4-6 по |х2: +1 4-1 — 1 — 1 по [х3: 4-1 — 1 4-1 по {л4: 4-2 4-2 — 2 4-2 — 2 по |лб: 4-2 4-2 — 2 по : 4-2 — 2 — 2 4-2 по р≪7: 4-* 4-х — X ≪Р = 6 11 1 2 21 2 X X— 6 — 2 6— Л 5 2 4
170 ГЛ. 16 ДЕРЕВЬЯ и ПРАДЕРЕВЬЯ Если удаление ребра с предписанным значением ср нарушает связность графа, то задача, вообще говоря, не имеет решения. Аналитическое исследование Рассмотрим матрицу A = (afy с т строками и п столбцами и положим М={1, 2, ..., п}, 7И = {1, 2 ..., т]. Часто бывает удобно записывать матрицу А в виде при этом если /сЖ, JclN, то aJj обозначает подматрицу, полученную из А вычеркиванием тех столбцов, номера которых не принадлежат /, и тех строк, номера которых не принадлежат J. Напомним прежде всего две формулы из теории определителей. Формула Лапласа1). Пусть а1*— квадратная матрица порядка п, а число k ^п; тогда Det(≪$)= К ≪ l2 ≪ ••• ≪ ik≪n \ ≪1, 2,..., / X Det (aN^^t{' \ 7V\{1, 2,..., k} ) (при k — 1 получается формула разложения определителя по первой строке). Формула Бинэ — Коши2). Пусть а1^ и — две квадратные матрицы п-го порядка, /С = {1, 2, ...» k], k^n; тогда V>tV^Nb^= 2 Det(af) • Det(^). I / I — « ZC7V При k = n получается формула для определителя произведения двух квадратных матриц. Рассмотрим теперь граф Gen вершинами и т ребрами (т п)\ произвольно ориентировав ребра, составим матрицу инциденций для дуг S = Квадратная матрица соответствует вершинам xv х2, • • • > хт и ДУгам zz2’ • • • » ит> пара, образованная такого рода множествами вершин и дуг, называется линейной конфигурацией Н. Она, вообще говоря, не будет графом, так как ребро может входить в Н без своих граничных точек („плавающее″ ребро) или !) См., например, Шилов Г. Е., Введение в теорию линейных пространств.— Прим, перев. 2) См., например, Г ант мах ер Ф. Р., Теория матриц. — Прим, перев.
АНАЛИТИЧЕСКОЕ ИССЛЕДОВАНИЕ 171 только с одной из двух граничных точек („болтающееся“ ребро) Имеет место Теорема 4. Пусть линейная конфигурация Н составлена из т вершин xv х2, . . ., хт и т дуг uv и2, . .., если Н содержит дуги некоторого цикла, то Det(s^) = 0. Действительно, допустим, что иг, и2, ..., uk образуют цикл и что вершины Н на этом цикле имеют нумерацию хТ, х2 . (где Z k)\ можно написать По формуле Лапласа Det(O= ± Det ($2) ■ Det(s^-£) + 0. Если I = k, то 1 0 0 .. ■ . — 1 -1 1 0 .. 0 Det(s£) = 0 — 1 1 .. = 0 1 0 0 0 0 .. . — 1 1 (поскольку сумма векторов-строк равна нулевому вектору). Далее, если z ≪ k, то Det(s£) = 0 потому, что &-я строка состоит из одних нулей. Таким образом, всегда Det(s^) = 0. Теорема 5. Граф G с т-[-\ вершинами xv х2, xm_hl и т ребрами up и2, . является деревом тогда и только тогда, когда определитель квадратной матрицы полученной из матрицы инциденций вычеркиванием (т-\- 1)-й строки, равен Д-I или — 1; во всех остальных случаях этот определитель равен нулю, 1° Пусть G — граф порядка м = т-|-1, для которого Det(s^)=£0; в силу теоремы 4, G не содержит циклов; так как, кроме того, G имеет п— 1 ребер, то он представляет собой дерево [теорема 1, свойство (2)]. 2° Пусть G — дерево с вершинами хр х2, ..., хт+1; не трогая xm+v будем менять нумерацию дуг и остальных т вершин [что может изменить только знак Det(s^), так как такое изменение нумерации означает перестановку строк и столбцов в определителе]. В силу теоремы 2 дерево G имеет висячую вершину, отличную от xm+l't эту вершину обозначим через хр а инцидентное ей ребро —
172 ГЛ. 16. ДЕРЕВЬЯ И ПРАДЕРЕВЬЯ через Up удалив хт и ир опять найдем висячую вершину х2 и инци- дентное ей ребро и2, и т. д. ... в новой нумерации будем иметь ±1 0 0 . . . 0 ±1 0 . . . 0 Det(S$ = 51 оЗ 62 ±1 . . . 0 = ± 1. . . . ±1 ч.ит.д Теорема 6 (Доказательство Трента [8]). В графе G без петель число различных деревьев, представляющих собой частичные графы G, равно минору любого из элементов главной диагонали квадратной матрицы (bfy порядка п, где |Fxz| при i — j\ — 1 при [X,., xy]£U; О при I =# j, [xz, Xj\ £ U.
ПРАДЕРЕВЬЯ 173 Придадим ребрам G произвольную ориентацию и образуем матрицу инциденций S = sN для дуг. Общий элемент матрицы SS* равен (s', sj> = (s‘, = ... = ■ |Гх,.| при i — J; = { — 1 при /#=>, [х,, xy]£U; О при I ф j, [xz, Ху] £ U. Таким образом, (s', s*) = bh, если положить Д'— {1,2, k = n— 1), то минор элемента Ь″ в силу формулы Бинэ— Коши равен Л„ = Ое1(»й = Dei (»«,■»?) = 2,“W)'D»tW)=JjDel(sf)| Z|=/2-l |/|=Д- На основании теоремы 5 последняя сумма как раз выражает число деревьев с п вершинами, которые можно получить из G. Пример. Граф, изображенный на рис. 16— 2а, имеет 16 частичных деревьев; таково значение минора 3 — 1 — 1 3 — 1 — 1 3 = 16. Так как граф полный, то этот же результат можно было бы получить более прямым путем, замечая, что общее число различных деревьев с п— 4 вершинами равно пЛ~2 = 42 — 16. Все 16 частичных деревьев приведены на рис. 16— 2. Прадеревья Конечный граф (X, U) есть прадерево с корнем £ X, если 1° в каждую вершину заходит одна-единственная дуга; 2° в Xj не заходит ни одна дуга; 3° (X U) не содержит контуров. Теорема 7. Всякое прадерево является деревом. Пусть Н— прадерево с корнем в силу 3° оно имеет столько же дуг, сколько ребер. Если п— число вершин, т— число ребер, то tn — п — 1.
174 ГЛ. 16 ДЕРЕВЬЯ И ПРАДЕРЕВЬЯ Кроме того, Н не содержит циклов, ибо в нем нет контуров, а всякий цикл, не являющийся контуром, имеет вершину, в которую заходит не менее двух дуг. Поэтому Н— дерево. Внешний вид прадерева представить себе легко: это дерево, каждое ребро которого однозначно ориентировано и для любой вершины х которого существует путь от хг к х (поскольку путешественник, находящийся в х и желающий проходить дуги графа в направлении, противоположном ориентации, не будет вынужден остановиться ни в одной вершине, кроме jq). Рис. 16— 3. Теория скобок называют моноидом результат на рис. четырем 16— 3, праде- Пример 1 (планиметрия). Рассмотрим на плоскости п— 1 попарно непересекающихся окружностей. Каждый случай взаимного расположения этих окружностей можно представить прадеревом с п вершинами (имеющим в Пример 2. Лукасевича (J. Lukasiewicz). Рассмотрим множество А = = (а, Ь, с, . . .} и операцию • в нем, которая коммутативна, но не ассоциативна: например, а • (Ь • с)=/=(а - Ь) - с. В алгебре некоторого числа этих операций, например и = [(я • Ь) • с] • ([d • (е • /)] • g). Этому моноиду мы поставим в соответствие изображенное на рис. 16— 4 прадерево, являющееся „бифуркантом″: для каждой вершины х имеем |Гх | = 0 или 2. В случае некоммутативной операции • надо использовать топологический граф, то есть граф, эффективно представленный в ориентированной плоскости. Лукасевич предложил задавать моноид и качестве корня хт „окружность бесконечного радиуса″). При п=4 возможны четыре случая расположения, которые, как показано соответствуют ревьям.
ПРАДЕРЕВЬЯ 175 последовательностью abcdefg, за которой идет последовательность 1110001101000 (полученная заменой висячих вершин символом 0, невисячих — символом 1 и записью этих символов в порядке, который ясен из приведенного примера)!). Мы поставим для прадеревьев такие же задачи, как и для деревьев; в частности: сколько у данного (ориентированного) графа G имеется частичных графов, представляющих собой прадеревья? Пусть A = (aty— матрица смежности графа G; образуем диагональную матрицу D = ^d1^, где di _ ( 0 при I =£ /, 1 1|Г″Ч1 при i = j. Матрицу D— A = [dl. — можно записать в виде 2 — а2 •• • — а\ 5 «2 • • *¥=2 . — а1 п !) -Л~= -аз -йз .. . — я3 п Ее определитель равен 0 (так как сумма ее векторов-строк есть нуль-вектор). Минор этой матрицы, полученный вычеркиванием &-й строки и &-го столбца, обозначим через ДЛ = ДЛ(аР а2, .... а^); он не зависит от вектора aft. Замечание. ДА(аР а2 . aj есть линейная функция от векторов-столбцов а/; т. е. \(а1+≪> а2 . ал) = Ма1’ а2 . аЛ)+ДЛ« а2 . ал)’ Aft(Aar а2’ •••> a«) = ^ft(al> а2 . ая)‘ Доказывается непосредственно. Теорема 8. Пусть А — матрица смежности графа G без петель, имеющего т = п— 1 дугу, граф G является прадеревом с корнем х1 тогда и только тогда, когда Д1==1; во всех остальных случаях Дх = 0. ]) Из этого замечания легко вывести, что количество различных праде- ревьев-бифуркантов с п висячими вершинами равно 1 /2п + 1\ 2п+1 \ п Г
176 ГЛ. 16. ДЕРЕВЬЯ И ПРАДЕРЕВЬЯ 1° Если G — прадерево с корнем xv то элементы d\ равны |Г“ 1xJ = 1 (при Z = 2, 3, ...» и); перенумеруем вершины так, чтобы при следовании вдоль любого пути индексы шли в возрастающем порядке (это всегда возможно, поскольку G — прадерево); тогда 1 А. = 1 О О — О? 1 о — а4п — а4 •• -а\.. 1 . . 00 0 ... 1 2° Допустим, что Aj -=j= 0, и покажем, что G — прадерево с корнем хР В каждую вершину xk (при & #= 1) заходит по крайней мере одна дуга графа G (в противном случае (k— 1)-й столбец в Aj был бы нулевым и мы имели бы = 0). Так же, как в теореме 5, доказывается, что граф G — связный и антисимметрический (иначе имели бы А} = 0). Но связный граф сп— 1 ребрами есть дерево [свойство (3)]. Во всякую отличную от хг вершину заходит ровно одна дуга (ибо существует ровно п— 1 дуг); поэтому G — прадерево с корнем хР Теорема 9 (Татт, Ботт). Пусть А — матрица смежности графа G без петель] количество прадеревьев с корнем хр являющихся частичными графами G, равно Ар В самом деле, обозначим через ek = (0, 0, . . ., 1, 0, 0) n-мерный вектор, &-я координата которого равна 1, а остальные — нулю. Положим Ki={kl(xk, x}£U\. Имеем Д1 (а2> а3> ... , aj = ( 2 2 • • Л = \к&К, къ^Кг / = 2 Ai(^2, е1ч . ек ). к^Кг п Но, в силу теоремы, 8 минор А^е^, екз, • екп) равен 1, когда п— 1 дуг (х*2, х2), (х*3, х3), ... образуют прадерево с корнем хр и равен 0 во всех остальных случаях. Отсюда и следует сформулированный результат. Замечание 1. Проведенные выше рассуждения в действительности доказывают более сильный результат, который можно выразить следующим образом: рассмотрим сеть, образованную графом G без петель, с пропускными способностями с (и), и пусть С = (Д)— „обобщенная матрица смежности″, у которой с\ = с (xif хД Образуем
ПРАДЕРЕВЬЯ 177 диагональную матрицу D, где d'l = 2 c(xk> xi)> и составим опре- k -j-1 i делитель Д = Det (Z) — С); если 77 = (Х, Г) — прадерево с корнем хх то положим С (Н) = П с(х, у). Тогда минор определителя А равен сумме чисел с (//), где Н пробегает все прадеревья с корнем являющиеся частичными графами G. Этот результат был установлен Рис. 16— 5. Боттом и Мейберри [2] при вычислении определителей некоторых матриц, встречающихся в экономике.
178 ГЛ. 16. ДЕРЕВЬЯ И ПРАДЕРЕВЬЯ Ему соответствует матрица d} — 1 0 — 2 D — С = 4 — 1 — 2 — 4 — 1 3 — 1 — — 2 — 2 5 у которой только первый столбец произволен; отсюда получается сеть, изображенная на рис. 16— 5. Складывая все значения с (И), указанные в таблице на рис. 16— 6, получим 29; читатель может проверить, что этому числу как раз и равен определитель Замечание 2. Пусть А — матрица смежности симметрического графа G без петель; число симметрических деревьев, являющихся частичными графами G, равно числу прадеревьев с корнем xk или, в силу теоремы 9, равно д1 = д2=... =д„. Таким образом, мы снова получаем утверждение теоремы 6.
ГЛАВА 17 Задача Эйлера Эйлеровы циклы Одна из наиболее старых задач Геометрии Положения, поставленная Эйлером, может быть сформулирована следующим образом: назовем эйлеровой цепью (соответственно эйлеровым циклом) цепь (соответственно цикл), содержащую все ребра графа и притом только по одному разу; как узнать, обладает ли данный граф эйлеровой цепью или эйлеровым циклом? Пример 1. Рассмотрим граф, изображенный на рис. 17— 1; можно ли нарисовать этот граф, не отрывая пера от бумаги и не проходя по уже нарисованной линии вторично? Перепробовав множество комбинаций, читатель, даже неосве- Рис. 17— 1. Рис. 17— 2. домленный, в конце концов вынужден будет предположить, что эта задача неразрешима. Напротив, граф, изображенный на рис. 17— 2, можно нарисовать одним росчерком; почему? Пример 2 (Эйлер). Через город Кёнигсберг протекает река Прегель, омывающая остров Кнейпхоф; на реке имеется семь мостов, расположение которых показано на рис. 17 — 3. Может ли пешеход обойти все мосты, пройдя по каждому из них только один раз? Эта задача увлекала жителей Кёнигсберга в 1736 году, пока Эйлер не доказал ее неразрешимость. Рассматривая 2-граф G, изображенный на рис. 17— 4, вершины которого соответствуют районам a, b, с, d, а каждое ребро изображает мост, мы видим, что задача сводится к нахождению эйлеровой цепи.
180 ГЛ. 17. ЗАДАЧА ЭЙЛЕРА Теорема 1. Мулыпиграф G обладает эйлеровой цепью тогда и только тогда, когда он связен и число вершин нечетной степени J) равно 0 или 2. 1° Условие необходимо, ибо если эйлерова цепь [х существует, то граф G, очевидно, связен; далее, нечетной степенью могут обладать только начальная и конечная вершины jx (если они не совпадают), поэтому вершин нечетной степени может быть только 0 или 2. 2° Условие достаточно. Мы докажем более точное утверждение: Рис. 17— 3. рис. 17— 4. если имеются две вершины а и b нечетной степени, то существует эйлерова цепь, начинающаяся в а и оканчивающаяся в Ь\ если вершин нечетной степени нет, то существует эйлеров цикл. Допустим, что это утверждение справедливо для графов, имеющих менее т ребер, и докажем его справедливость для графа G с т ребрами. Для определенности предположим, что G имеет две вершины нечетной степени: а и Ь. Путешественник, который отправляется из а в любом направлении с намерением не проходить по одному и тому же ребру дважды, определит своим движением цепь [х. Если путешественник пришел в некоторую вершину х =£ Ь, то количество ребер, пройденных им и инцидентных х, нечетно при х Ф а и четно при х = а, и поэтому он может покинуть х по еще не пройденному ребру; если же путешественник не имеет возможности идти дальше, то это означает, что он находится в Ь. Однако при этом произвольном маршруте от а к b могли быть пройдены не все ребра; в частичном графе Gr, образованном оставшимися ребрами, все вершины имеют четную степень. Пусть Ср С2, ... , Ck — компоненты G', содержащие хотя бы по одному ребру; согласно предположению, все эти компоненты обладают эйлеровыми циклами [хр jx2, ... ; так как граф G связен, цепь (х 9 Степенью вершины называется число ребер, инцидентных этой вершине. — Прим. ред.
ЭЙЛЕРОВЫ ЦИКЛЫ 181 встречает все Cz; допустим, что первые встречи происходят в вершинах х2£С2, . .., xk£Ck (в указанном горядке). Рассмотрим теперь цепь xj +р≪1 [Хр х2] Н-|л2 + . . . + [1 [xk, &]. Это и есть эйлерова цепь графа G, идущая из а в Ь. Ч. И Т. Д. Читатель может теперь одним взглядом убедиться в неразрешимости задачи о кёнигсбергских мостах (пример 2). Замечание. Таким же способом доказывается, что если связный мультиграф имеет 4 вершины нечетной степени, то его можно нарисовать двумя росчерками, и вообще при наличии 2# вершин нечетной степени — q росчерками. Алгорифм для непосредственного выявления эйлерова цикла [Флёри (Fleury)]. Рассмотрим связный мультиграф G, все вершины которого имеют четную степень, и постараемся нарисовать его одним росчерком, не прибегая в процессе построения к исправлениям уже начерченной части траектории. Достаточно придерживаться следующего правила: 1° Выходим из произвольной вершины а; каждое пройденное ребро зачеркиваем. 2° Никогда не идем, по такому ребру и, которое в рассматриваемый момент является перешейком (т. е. при удалении которого граф, образованный незачеркнутыми ребрами, распадается на две компоненты связности, имеющие хотя бы по одному ребру!). Соблюдая это правило, мы всегда будем находиться в благоприятном положении, потому что когда мы находимся в х =£ а, граф (из незачеркнутых ребер) имеет две вершины нечетной степени: х и а; если отбросить изолированные вершины, то останется связный граф, который в силу теоремы 1 имеет эйлерову цепь, начинающуюся в х. Осталось доказать, что всегда возможно соблюдать это правило, то есть что путешественник, придя на перекресток х, наверняка имеет в своем распоряжении непройденное ребро, не являющееся (в данный момент) перешейком. Действительно, если бы все инцидентные х ребра были перешейками, то их было бы по меньшей мере два (так как в случае | LfJ = 1 ребро, инцидентное х, может быть только висячим); два перешейка вели бы в две не связанные друг с другом компоненты, каждая из которых содержит хотя бы одну вершину нечетной степени. Но это невозможно, так как а — единственная вершина нечетной степени (отличная от х). Э И, разумеется, не выбираем ребра, идущего в а, пока есть другие возможности.— Прим, перев.
182 ГЛ. 17. ЗАДАЧА ЭЙЛЕРА Эйлеровы контуры Рассмотренные выше понятия интересно распространить на ориентированные графы; эйлеров контур в ориентированном графе (X, U) — это контур, содержащий все дуги, и только по одному 777=77/7 Рис. 17— 5. разу. Каковы те графы, которые обладают эйлеровыми контурами? Граф называется псевдосимметри- ческим, если в каждой его вершине число исходящих дуг равно числу заходящих, т. е. = (х£Х). Эта терминология оправдывается тем, что всякий симметрический граф является в то же время псевдосимме- трическим; имеет место Теорема 2. Граф обладает эйлеровым контуром тогда и только тогда, когда он является связным и псевдосимметрическим. Доказательство точно такое же, как для теоремы 1. Пример [Постумус (Posthumus)]. Какова самая длинная круговая последовательность из цифр 0 и 1, в которой никакой отрезок из k цифр не повторяется? Так как различных строчек из 0 и 1 существует 2й, такая последовательность не может иметь более 2k цифр; покажем с помощью теоремы 2, что можно эффективно построить искомую круговую последовательность из 2k цифр. Рассмотрим граф G, вершинами которого служат всевозможные (k— 1)-строчки из 0 и 1, и соединим дугой каждую вершину (ар а2, ..., ай_1) с двумя вершинами (а2, а3, ..., ал_р 0) и (а2, а3, ..., 1). Граф G — псевдосимметрический, поэтому он имеет эйлеров контур. Если (ар а2, ..., ай-1) — первая вершина этого контура, (а2, а3, . . ., ak) — вторая, (а3, а4, . . ., ай+1)— третья и т. д., то искомая последовательность будет а1а2а3а4 . . При /г = 4 граф, изображенный на рис. 17— 5, дает нам несколько круговых последовательностей из 24 = 16 цифр, а именно abcde fghijklmnpq = 0000101001101111, abcdkijefghlmnpq = 0000101101001111, abcdkipghlmnjef g = 0000101100111101,
ЭЙЛЕРОВЫ КОНТУРЫ 183 abc fghi jedklmn pq = 0000100110101111, abhl jklmn pgcde fq = 0000110111100101, abhl jedklmn pgc fq = 0000110101111001, abhl je fgcdklmn pq = 0000110100101111, abhipgcdklmnjefq = 0000110010111101. (Мы опустили остальные круговые последовательности, которые получаются перестановкой I и 1тп.) Найдено 16 решений !). Некоторые авторы усиленно занимаются подсчетом различных эйлеровых контуров псевдосимметрического графа; эта задача тесно связана с задачей подсчета прадеревьев, решенной выше (гл. 16). Взаимосвязи между эйлеровыми контурами и прадеревьями являются весьма тесными, и мы прежде всего отметим следующий результат: Теорема 3. Пусть G — связный псевдосимметрический граф, Ху — одна из его вершину G допускает в качестве частичного графа некоторое прадерево Н с корнем х1г которое можно построить следующим образом', проходим все дуги G, отправившись из хр и составляем Н из всех тех дуг, которые привели нас в ту или иную вершину впервые. И действительно есть прадерево с корнем хр так как 1° всякая вершина #= хг является концом одной-единственной дуги; 2° Ху не является концом никакой дуги; 3° Н не содержит контуров (ибо если из х в у идет некоторый путь, образованный дугами И, то вершина х пройдена раньше у и в И не существует путей из у в х). Теорема 4 (Аарден-Эренфест, де Брёйн [1]). Пусть G — связный и псевдосимметрический граф, Aj— число прадеревьев с корнем хр являющихся частичными графами G, и rk— полустепень исхода {или захода) вершины xk. Тогда число различных эйлеровых контуров графа G равно А1 П - О !■ /?=1 где п — число вершин графа G, Заметим, что два эйлеровых контура не считаются различными, если один можно получить из другого круговой перестановкой. Заметим также, что число известно из теоремы 9 (гл. 16). !) Эта задача применяется в технике связи для отыскания положения барабана, градуированного двумя видами делений, с помощью читающей головки, способной за один раз прочесть k делений. Аналогичная задача встречается в криптографии в следующем виде: найти слово, в котором каждое размещение k букв из алфавита фигурирует один и только один раз.
184 ГЛ. 17. ЗАДАЧА ЭЙЛЕРА Рассмотрим прадерево Н с корнем являющееся частичным графом для G, и покажем, что существует ровно п k=l таких эйлеровых контуров, у которых каждая дуга, приводящая нас в любую вершину впервые, принадлежит И. Пронумеруем числами от 1 до rk дуги, заходящие в xk: u^k = {‘lkW’ ые . «л('•*)}; нумерацию произведем так, чтобы uk(r^ была дугой прадерева Н, заходящей в xk (если k 1). Предполагая дугу ^(1) раз навсегда фиксированной, будем иметь в точности П(^-1)1 k=l возможных нумераций. Каждой нумерации соответствует один и только один контур по следующему закону: начиная с их (1), обходим все дуги графа в направлении, противоположном их ориентации; всякий раз, находясь в хк, выбираем ту еще не пройденную дугу из £7^, которая обладает наименьшим номером. Таким способом будет определен контур, ибо процесс обхода может оборваться только в точке хх (во всякой другой вершине, в которую мы приходим, всегда остается ребро, по которому можно снова выйти, так как граф псевдосимметрический). Покажем, что полученный контур является эйлеровым. Действительно, если бы это было не так, то имелась бы не- пройденная дуга uk (/); поскольку rk у, дуга uk (г^) тоже не могла быть пройдена; в ее начало хр в свою очередь заходит некоторая непройденная дуга ир(Гр), и т. д. Все эти непройденные дуги принадлежат прадереву Н, поэтому мы в конце концов доберемся до корня хх; но это невозможно, ибо раз мы в свое время оказались в хх и не смогли оттуда выйти, то все дуги, инцидентные xv были уже пройдены. В итоге каждой нумерации отвечает свой эйлеров контур, оканчивающийся фиксированной дугой ^(1) и такой, что каждая его дуга, приводящая в свою конечную вершину впервые, принадлежит прадереву. Тем самым теорема доказана 2). 9 Когда число дуг графа /и>2и4-1, при исследовании эйлеровых контуров обнаруживается любопытное комбинаторное свойство, недавно сформулированное Шютценбергером (М. Р. Schiitzenberger). Именно, будем рассматривать эйлеров контур р. как подстановку дуг графа и говорить, что р — четный или нечетный, смотря по тому, четно или нечетно число беспорядков подстановки; тогда в графе G порядка п с числом дуг т 2п + 1
ЭЙЛЕРОВЫ КОНТУРЫ 185 Следствие. В псевдосимметрическом графе число прадеревьев с корнем xk, являющихся частичными графами, не зависит от выбора вершины xk. В самом деле, теорему 3 можно с таким же успехом сформулировать для вершины хк вместо так как число эйлеровых контуров от этого не изменится, то Д1=ДЛ. (Читатель может таким способом проверить, что число эйлеровых контуров графа, изображенного на рис. 17— 5, равно 16.) среди эйлеровых контуров, начинающихся с данной дуги, имеется столько же четных, сколько нечетных. Заметим, что при т = 2п это утверждение неверно, как показывает следующий пример: составим граф с дугами и2, ..., ип элементарного контура, проходящего через п вершин, и с петлями ип+х, ип+2. ..., и2п во всех этих вершинах; для каждой заданной дуги существует только один эйлеров контур, начинающийся этой дугой, и утверждение уже поэтому неверно. Можно показать, что упомянутое свойство графов порядка п равносильно одному свойству матриц п-го порядка, имеющему важное значение в алгебре (а именно теореме Амицура и Левицкого, см. [5]).
ГЛАВА 18 Паросочетание произвольного графа Теория чередующихся цепей Мы обозначаем здесь через G граф (неориентированный) с вершинами а, хр х2, . .., хп. В G будем различать две категории ребер: сильные ребра, обозначаемые жирными линиями, и слабые ребра, обозначаемые тонкими линиями. Наконец, мы предполагаем, что все ребра, инцидентные точке а, называемой началом графа G, — сильные. Чередующейся цепью называется такая цепь |x = (vP v2, . . ., v*) графа G, что 1° из двух последовательных ребер v;- и vy-+1 непременно одно сильное, а другое слабое; 2° цепь и— простая, т. е. никакое ребро не встречается в р- более одного раза. Если существует чередующаяся цепь [х, соединяющая вершину а с х, то последнее ребро этой цепи мы пометим стрелкой, направленной к х; таким образом, каждое ребро графа G может оказаться ориентированным в обоих направлениях, или только в одном направлении, или остаться неориентированным. Если в вершину х заходит хотя бы одно ориентированное сильное ребро, но не заходит ни одно ориентированное слабое ребро, то вершину х назовем сильной} множество всех сильных вершин графа G будем обозначать через Е. Если в вершину х заходит хотя бы одно слабое ребро, но не заходят сильные ребра, то вершину х назовем слабой} множество слабых вершин будем обозначать через Е. Если в вершину х заходят как сильные, так и слабые ребра, то назовем ее смешанной} множество смешанных вершин будем обозначать через 714. Наконец, если в вершину х вообще не заходит ни одно ориентированное ребро, то ее назовем недостижимой} множество недостижимых вершин будем обозначать через I. Несколько по-иному мы распространяем эту терминологию на вершину а, которую мы выделяем среди остальных как начало
ТЕОРИЯ ЧЕРЕДУЮЩИХСЯ ЦЕПЕЙ 187 графа G: мы считаем вершину а слабой, если не существует чередующейся цепи, идущей из а обратно в а, и смешанной в противном случае. Так как всякая вершина G является или слабой, или сильной, или смешанной, или недостижимой, то = непосредственно замечаем: Теорема 1. Две сильные вершины могут быть соединены только сильным ребром-, две слабые вершины могут соединяться только слабым ребром-, смешанная вершина не может соединяться с недостижимой никаким ребром-, сильная вершина может соединяться с недостижимой только сильным ребром-, слабая и недостижимая вершины могут быть соединены только слабым ребром. Подытожим сказанное при помощи таблицы: Е F М / Е сильное сильное F слабое слабое М 1 1 сильное 1 слабое Подграф графа G, порожденный множеством вершин М!), имеет компоненты связности, которые мы обозначим через Mv М2, будем говорить, что цепь р заходит в А41 по ребру [а, Ь}, если р имеет вид (х = [a, av а2, ak = а, ЬА = Ь, Ъ2, bt], где _ а, аг, а2, . . ak^Mx\ bv Ъ» Ъъ . b£Mv Лемма 1. Пусть a^Mr, х £ М,; если некоторая чередую- щаяся цепь р [а, х] заходит в по ребру [а, Ь] и оканчивается сильным (соответственно слабым) ребром, то существует также чередующаяся цепь р/ {а, х], заходящая в по ребру [а, Ь} и оканчивающаяся слабым (соответственно сильным) ребром. !) При этом предполагается М =/= 0.— Прим, перев.
188 ГЛ. 18. ПАРОСОЧЕТАНИЕ ПРОИЗВОЛЬНОГО ГРАФА В самом деле, поскольку х — смешанная вершина, существует чередующаяся цепь v [а, х], которая оканчивается слабым ребром. Так как a(^Mv x£Mv то в v [я, х] существуют ребра, у которых одна из граничных точек принадлежит ХХЖр а другая принадлежит Жр пусть [с, d]— последнее ребро этого типа. Пусть, наконец, у — первая точка цепи р, принадлежащая v [d, х] (такая точка всегда существует). Если р [Ь, у] и v {d, у] оканчиваются ребрами одной и той же категории, то теорема доказана, так как искомой чередующейся цепью будет р/= Ji, [a, y]-|_v[y, х]. Поэтому можно предполагать, что это не так; но тогда [а, Ь] = = [с, 6?], потому что в противном случае цепь р [а, у] -1- v [у, с] была бы простой чередующейся цепью, Mi значит точка с была бы смешанной и принадлежала ЖР Отсюда заключаем, \ что цепь ; У' 7 j pz = р [а, у[б?, х] N ! х/ является чередующейся и удовлетворяет с поставленным условиям. Рис. 18— 1. Лемма 2. Пусть a(£Mv x£Mv и [а, Ь] — ориентированное ребро, за- ходящее в Жр тогда существует чередующаяся цепь р [а, х] из а в х, заходящая в Ж} по ребру [а, Ь\. В самом деле, пусть Y — множество тех вершин из Жр которые достижимы с помощью чередующихся цепей, заходящих по [а, Ь], и пусть Z — множество остальных вершин ЖР Имеем Y =# 0 (ибо д£К), и если бы Z^=0, то существовало бы ребро [у, z], у которого y^Y, z£Z. Покажем, что это приводит к противоречию. В силу леммы 1 точка у достижима посредством двух чередующихся цепей piq [а, у] и р2 [а, у], заходящих в Ж2 по ребру [а, Ь], причем последние ребра этих цепей являются соответственно сильным и слабым; но тогда точка z достижима посредством чередующейся цепи, заходящей в Жх по [а, #], что невозможно, так как z£Z. Теорема Петерсе на— Г а л л а и ([6], [3]). Пусть Ж1— компонента подграфа, порожденного смешанными точками; если a(^Mv то существует одно и только одно ребро, заходящее в ЖР Если же a£Mv то не существует ребер, заходящих в Жр
ЧАСТИЧНЫЙ ГРАФ С ЗАДАННЫМИ СТЕПЕНЯМ 189 1° Если af£Mv то пусть р— чередующаяся цепь, идущая из а в ТИр и пусть b— первая ее вершина, принадлежащая Жр Чередующаяся цепь ji [я, Ь] заходит в Мг по ребру [а, д]. Пусть [с, d]— другое ребро, заходящее в Л11. В силу леммы 2, точка d £ достижима посредством чередующейся цепи, заходящей по [а, Ь], и в силу леммы 1 можно предполагать, что эта цепь оканчивается ребром не той категории, к которой принадлежит [с, d]\ но тогда точка с — смешанная, что невозможно, так как с^М1. Следовательно, [а, Ь] — единственное ребро, заходящее в Л11. 2° Случай а £ можно свести к предыдущему, добавляя вершины aQ и Ьц, сильное ребро [а0, #0] и слабое ребро [#0, а]. Если считать началом aQ, вместо а, то ребро [#0, а] окажется единственным заходящим в Л4р значит, у первоначального графа совсем нет ребер, заходящих в Ч. И Т. Д. Эта теорема, в частности, показывает, что чередующаяся цепь, которая пересекла А41 (и вышла из нее), не может вторично встретить эту компоненту; ниже мы познакомимся с применениями этого свойства. Нахождение частичного графа с заданными степенями вершин Пусть G = (X, U) — неориентированный граф, каждой вершине х которого отнесено целое число f (х), не превосходящее степени dx(U); поставим сейчас задачу о построении частичного графа (X W), у которого степень вершины х была бы dx (W) = f (х). Говорят, что множество ребер WczU совместимо с функцией /(х), если ^(wx/(x) (хех). Для заданного множества W ребра из W будем считать сильными, а остальные ребра U — слабыми', задача сводится к нахождению множества сильных ребер, совместимого с функцией /(х) и обладающего наибольшим числом элементов. Эта новая задача имеет некоторую аналогию со следующей задачей, уже рассмотренной в гл. И: для заданного ориентированного графа найти частичный граф с наперед заданными полустепенями вершин. Однако на этот раз мы не станем применять теорию наибольшего потока, а воспользуемся другим средством, каким является теория чередующихся цепей. Замечание. Задача, которой мы занимаемся, представляет собой линейную программу. В самом деле, положим bt = f (xz) и обозначим через (rfy матрицу инциденций для ребер. Ищутся такие целые
190 ГЛ. 18. ПАРОСОЧЕТАНИЕ ПРОИЗВОЛЬНОГО ГРАФА числа равные единице для сильных ребер и; и нулю для слабых ребер, что 0≪еу ≪ 1 (7 = 1, 2, . . . , т); т (z= 1, 2 . /г); т 2 Sz- принимает наибольшее значение. . /=1 Однако эта линейная программа требует решения в целых числах, а единственное средство, которым мы располагаем,— алгорифм Гомори (см. сноску в гл. 4) — едва ли можно считать удобным. Напротив, необычайно простой „графический″ алгорифм позволяет нам легко находить решения. Образуем мультиграф G (W), строя сперва G, добавляя затем начало а и соединяя его с каждой ненасыщенной точкой х, т. е. с такой вершиной х, для которой (W)≪/(x); при этом а с х соединяем сильными ребрами в количестве f (х)— ≪7 V(W) штук. Если построенный мультиграф G(W) содержит чередующуюся цепь, идущую из а обратно в а, то достаточно сделать слабые ребра этой цепи сильными, а сильные— слабыми, чтобы получить новое совместимое множество, более многочисленное, чем предыдущее. Ниже мы увидим, что совместимое множество W, которое нельзя более увеличить таким способом, является наибольшим. Лемма. Пусть W— семейство совместимых множеств, для которых не существует чередующихся цепей, идущих из а в а; если a — произвольное совместимое множество, такое, что W^W2, то WX = W2. Действительно, в случае W2=)=)W1 существовало бы ребро [х, ylCWgXWj и, очевидно, в G (Wx) вершины х и у были бы ненасыщенными, поэтому вершина а была бы достижима по чередующейся цепи [а, х] -|- [х, у] -|- [у, а], что невозможно, так как W2 £ (Отметим, что это рассуждение сохраняет силу и при х = у.) Теорема Бержа — Нормана — Рейбина. Совместимое множество Wo является наибольшим тогда и только тогда, когда не существует чередующейся цепи, идущей из а обратно в а т). 9 Приведенное здесь общее утверждение включает одновременно как теорему Бержа [1], так и теорему Нормана — Рэйбина [5]; идея настоящего доказательства принадлежит Рэйбину.
ЧАСТИЧНЫЙ ГРАФ С ЗАДАННЫМИ СТЕПЕНЯМИ 191 Достаточно доказать, что если совместимое множество Wo принадлежит определенному выше семейству то это множество — наибольшее. С этой целью рассмотрим наибольшее совместимое множество и выберем его таким, чтобы число IWqXW^I было как можно меньше; если |W0\ =0, то откуда, в силу леммы, W0 = WJW, и наша цель достигнута. Поэтому предположим |W0\ Wjjfl > 0 и покажем, что это предположение приводит к противоречию. 1° Среди ребер графа G, инцидентных данной вершине х, имеется не меньше принадлежащих WA1 \ Wo, чем принадлежащих Wo \ W^f. Действительно, в противном случае мы имели бы ^(W^)≪^(W0)≪/(x). Если и = [х, у] 6 Wo \ W^, то существует ребро v = [y, z] £ WAJ \ Wo (иначе у] было бы совместимым множеством, более многочисленным, чем W^f); множество Wz = (W^ \ {v}) U {и}— совместимое, ибо ^(W9 = ^(W^)+i≪/(x), ^(W/) = ^(WJ1X/(y), Поэтому оно является наибольшим совместимым множеством (так как |W'| = |WAr|); но это невозможно, поскольку |W0\W'| ≪ |W0\WjJ. 2° Не существует простых циклов четной длины, ребра которых попеременно принадлежали бы Wo \ и УЫМ \ Wo, ибо если [1 — такой цикл, то множество Wz — (WM U |х) \ (WM П рО совместимо и в силу равенства |W/| = |WAf| является наибольшим совместимым множеством, что невозможно, так как | Wo \ W'| ≪ | Wo\|. 3° Пусть = (up и2 . иЛ) — самая длинная простая цепь, ребра которой попеременно принадлежат Wo \ и \Мм \ Wo, и пусть х0 и xk — крайние точки этой цепи; допустим сначала, что х0=#Х£. Ввиду 1° оба крайних ребра 1^ и принадлежат \ Wo, откуда ^0(Wo)≪^0(W^)≪/(xo), ^(W0)≪^(Wn1)≪/(xft).
192 ГЛ. 18. ПАРОСОЧЕТАНИЕ ПРОИЗВОЛЬНОГО ГРАФА Следовательно, в G(W0) есть чередующаяся цепь [а, х0]-|- + |а[х0, xk\ Ч- \>xk> идущая из а обратно в а, вопреки предположению. 4°. В случае xQ = xk из 2° ясно, что крайние ребра ц не могут принадлежать к разным категориям, значит оба они входят в W^XWq1); следовательно, dXQ (Wo) ≪ dx, (WM) — 2 ≪ f (хо) — 2. Поэтому существует не менее двух сильных ребер, соединяющих а с х0, и, значит, имеется чередующаяся цепь, идущая из а обратно в я, вопреки предположению. Ч. И Т. Д. Алгорифм для нахождения наибольшего совместимого множества. Отнеся к числу сильных возможно больше ребер, строим некоторое совместимое множество W; для построения наибольшего совместимого множества выясняем, имеется ли в G (W) чередующаяся цепь, идущая из а в а\ процесс состоит в следующем: отправившись из а, идем по чередующейся цепи как можно дальше, отмечая стрелкой каждый шаг этого путешествия. Когда его невозможно более продолжать, возвращаемся (стирая стрелки) к ближайшему разветвлению и выходим в новом направлении. . . Пример 1. В тюрьме города N, план которой помещен ниже, каждый часовой, обходя коридор [х, у], должен все время иметь в поле _ _ зрения две камеры х и у, располо- женные в концах коридора; какое _ s' наименьшее количество часовых не- обходимо для того, чтобы каждая \ / s' камера находилась под наблюде- \ у, / X нием? \ I // Если, следуя Норману, назвать чг покрытием графа (X, U) такое мно- рис ig _ 2. жество ребер Vc:U, что каждая вершина х£Х инцидентна хотя бы одному ребру из V, то задача сведется к нахождению наименьшего покрытия. Множество V является покрытием тогда и только тогда, когда множество W = U \ V удовлетворяет условию dx(W)≪^(U)-l (x£X). Определяя указанным выше способом наибольшее множество W, совместимое с этим неравенством, мы найдем наименьшее покрытие Ч В противном случае, как легко показать, мы вернулись бы к случаю xo^xk‘— Прим, пере в.
ЧАСТИЧНЫЙ ГРАФ С ЗАДАННЫМИ СТЕПЕНЯМИ 193 V = u\ W; для графа, изображенного на рис. 18— 2, наименьшее покрытие содержит 5 ребер, т. е. достаточно пяти часовых. Пример 2 (Рот [7]). Задача о нахождении наименьшего покрытия возникает еще, когда для какой-нибудь релейной системы или контрольного устройства желательно составить наиболее простую эквивалентную схему. Более конкретно, рассмотрим электрическое реле, управляемое тремя кнопками А, В и С, причем положения реле описываются тремя переменными ел, sB, sc: полагаем ел=1, когда кнопка А нажата, и 8л = 0, когда она не нажата, и т. д. Каждому вектору е = (ел, ев, ес) с координатами 0,1 (то есть каждой вершине единичного куба в трехмерном пространстве R3) поставим в соответствие число ≪р(е) = ≪р(ел, е5, ес). равное 1, если реле пропускает ток, и равное 0 в противном случае. Ищется такая последовательно-параллельная схема вляемыми кнопками А, В и С, что с выключателями, упра- 1° схема эквивалентна данному реле, т. е. она проводит ток, когда ≪р(ел, ев, ес) = 1, и не проводит при ≪?(ел, ев, ес) = 0; 2° каждая ветвь содержит два выключателя; 3° число ветвей насколько возможно мало 1). Задача сводится к изучению графа G, образованного вершинами е, для которых ср(е)= 1, причем две такие точки соединены, когда они 9 Эту задачу можно поставить в гораздо более общем виде в терминах булевой алгебры; она известна под именем „задачи Куайна″ (см. [7]).
194 ГЛ 18 ПАРОСОЧЕТАНИЕ ПРОИЗВОЛЬНОГО ГРАФА являются соседними вершинами единичного куба; ищется наименьшее покрытие (рис. 18— 3). Допустим, что ток проходит при е = 000, 010, Oil, 111, 101, 100; граф G обладает наименьшим покрытием из ребер (.00), (1.1), (01.), откуда получается искомая схема (рис. 18— 4). (Читатель может проверить, что в шести данных положениях ток проходит, а в остальных не проходит.) Совершенное паросочетание Пусть G = (X U)— граф, в котором, как прежде, ребра делятся на сильные и слабые, причем множество сильных ребер обозначается через W. Говорят, что W есть паросочетание, если никакие два сильных ребра не смежны. Вершину х назовем ненасыщенной, если она не инцидентна никакому сильному ребру; в случае, когда ненасыщенных вершин нет, паросочетание называется совершенным. Первая задача, которую мы можем поставить, состоит в выяснении, для каких графов наибольшее паросочетание является совершенным. Пример 1. Задача об урезанной шахматной доске. Из шахмат- есть 31 кость домино, каждая из которых может покрыть ровно две клетки шахматной доски. Задача состоит в следующем: можно ли покрыть 31 костью все 62 клетки урезанной шахматной доски? Эта задача сводится к нахождению наибольшего паросочетания графа, вершинами которого служат клетки урезанной доски, причем соединены те пары вершин, которые отвечают соседним (по гори-
СОВЕРШЕННОЕ ПАРОСОЧЕТАНИЕ 195 зонтали или по вертикали) клеткам (рис. 18— 5 справа); легко видеть, что это паросочетание не является совершенным, поэтому покрыть урезанную доску невозможно. То же можно доказать простым и изящным рассуждением, вовсе не пользуясь теорией паросочетаний: окрасим клетки попеременно в белый и черный цвета (как у обычной шахматной доски) и заметим, что обе удаленные клетки имеют одинаковый цвет; каждая кость домино необходимо покрывает одну белую и одну черную клетку, поэтому 31 кость вместе должна покрыть 31 белую и 31 черную клетки, что противоречит нашему замечанию. Пример 2. Известную задачу, названную Люка (Е. Lucas) „прогулкой молодых девушек″, можно сформулировать так: если известны взаимные симпатии воспитанниц женского коллежа, то как организовать прогулку парами, чтобы каждая пара состояла из симпатизирующих друг другу девушек? В каких случаях задача разрешима? Если Х={х1, х2, .... хп} обозначает воспитанниц, a [xz, Xj] £ U тогда, когда девушки xt и xf испытывают взаимную симпатию, то задача сводится к выяснению вопроса о том, существует ли у графа (X, U) совершенное паросочетание. Пусть G— данный граф, W — наибольшее паросочетание, образованное сильными ребрами; определим, как в предыдущих параграфах, граф G (W), добавляя к G точку а и соединяя ее сильными ребрами со всеми ненасыщенными вершинами G. Как прежде, если существует чередующаяся цепь, идущая из а в данную вершину х, то на последнем ребре этой цепи рисуем стрелку, направленную к х. Вершину х, которая служит концом некоторого ориентированного сильного ребра, но не является концом никакого ориентированного слабого ребра, называем сильной и пишем х£Е; если х является концом ориентированного слабого ребра, но не является концом ориентированного сильного ребра, то называем х слабой и пишем х^Р\ если х служит концом как ориентированного сильного ребра, так и ориентированного слабого ребра, то называем х смешанной и пишем х£М; наконец, вершину х, не являющуюся концом никакого ориентированного ребра, называем недостижимой и пишем х£1. Таким образом, всякая ненасыщенная точка будет сильной или смешанной. В G (W) точку а следует рассматривать как слабую вершину: в самом деле, если W — наибольшее паросочетание, то из теоремы Бержа — Нормана — Рэйбина следует, что вершину а нельзя считать смешанной. Теорема 2. Паросочетание графа G является наибольшим тогда и только тогда, когда не существует чередующейся цепи, соединяющей две различные ненасыщенные вершины.
196 ГЛ. 18. ПАРОСОЧЕТАНИЕ ПРОИЗВОЛЬНОГО ГРАФА Это сразу следует из теоремы Бержа— Нормана — Рэйбина; указанное выше условие выражает, что в графе G (W) нет чередующихся цепей, идущих из а обратно в а. Теорема 3. Пусть W— наибольшее паросочетание, Мг— компонента подграфа, порожденного смешанными точками. 1° В графе G (W) имеется сильное ребро, заходящее в Л11 (и только заходящее); 2° все остальные ребра, инцидентные А41,— слабые и исходят из ЛЦ (и только исходят). Г Так как а— слабая вершина, то а и, в силу теоремы Петерсена— Галлаи, существует одно и только одно ребро, заходящее в Жр скажем [с, х0], где с (£ Жр х0£Жр Допустим, что [с, х0]— слабое ребро; так как х0 — смешанная вершина, то существует чередующаяся цепь рь, идущая из а в х0 и оканчивающаяся сильным ребром; эта цепь р, необходимо содержит ребро [с х0] (единственный вход в А^), за которым следует некоторое сильное ребро, инцидентное х0, причем оканчивается р другим сильным ребром, инцидентным х0. Но это невозможно, поскольку не существует более одного сильного ребра, инцидентного х0. Значит, ребро [с, х0] должно быть сильным. 2° Пусть [у, Ь]— другое ребро, инцидентное и такое, что #(£/Ир в силу теоремы Петерсена — Галлаи, оно необходимо является ориентированным и исходит из /Ир Далее, это исходящее ребро не может быть сильным, ибо иначе вершина у, будучи смешанной, достигалась бы по чередующейся цепи, оканчивающейся сильным ребром. Следствие 1. Если W — наибольшее паросочетание, а — компонента подграфа, порожденного множеством М смешанных вершин, то 12И11 3 и | М1 | нечетно. В самом деле, пусть [с, х0]— сильное ребро, инцидентное Жр где х0£Л4р Имеем | Alj | 3: иначе вершина х0 не была бы достижима по чередующейся цепи, оканчивающейся слабым ребром. Так как Ж1 состоит из точки х0 и таких пар, в которых обе точки соединены сильным ребром, то число [MJ нечетно. Следствие 2. Если W — наибольшее паросочетание, то каждая вершина, которая смежна с некоторой смешанной точкой, но сама не является смешанной, необходимо есть слабая вершина. Действительно, если [£, х0] — сильное ребро, инцидентное компоненте Жр причем c^fiMp х0^Жр то, очевидно, с(£/, с(£Е, с(£М, значит с £ Е.
СОВЕРШЕННОЕ ПАРОСОЧЕТАНИЕ 197 Точно так же если [х, — слабое ребро, инцидентное 714р причем у£ЛГр то х(£/, xf^E, х(^М и, следовательно, х £ F. Следствие 3. Если W — наибольшее паросочетание, то всякая вершина, смежная с сильной вершиной, является слабой. Если е^Е и если [х, е]— сильное ребро, то х(£/ (как граничная точка ориентированного ребра), х^Е (иначе вершина е была бы смешанной), х (£ М (в силу следствия 2), поэтому х £ F. Если же [х, е]— слабое ребро, то х (£/, х ^Е, х Л4 (в силу следствия 2), значит х £ F. Теорема 4. Пусть W — наибольшее паросочетание, а — компонента подграфа, порожденного недостижимыми точками. Тогда все ребра, инцидентные /р— слабые и неориентированные} всякая точка с^/г, смежная с некоторой точкой из /Р является слабой вершиной', J/J четно и |/J^2. 1° Если [с, х]— ребро, инцидентное /р причем х£/р то с(£М, с£/, е^Е (ввиду следствия 3), поэтому с £ Ли ребро [с, х]— слабое. 2° 1г не содержит ни а, ни ненасыщенных точек, значит это множество образовано парами, в которых обе вершины соединены сильным ребром; поэтому число |Z11 четно и не меньше 2. Теорема 5 (Татт [8] в общем виде, Берж [2]). Пусть даны связный граф G = (X, U) и некоторое множество S его вершин-, обозначим через pt (S) число компонент нечетного порядка у подграфа, порожденного множеством X\S', тогда количество ненасыщенных вершин при наибольшем паросочетании графа G равно max [p;(S)— |S|], sex 1° Рассмотрим множество SczX, и пусть Ср С2, ..., Ср — компоненты нечетного порядка у подграфа, порожденного множеством X\S. Если компонента Ck не содержит ненасыщенных вершин, то (так как |Ck | нечетно) существует сильное ребро, один конец которого находится в Ck, а другой — в некоторой точке s^^S; двум различным компонентам Ck соответствуют две разные вершины sk\ поэтому, обозначая через п0 число ненасыщенных вершин, будем иметь pt (S)— C (числу компонент Ck, не содержащих ненасыщенных точек) |S|. Отсюда Pi(S)— |S|Oo (ScX). 2° Покажем, что для надлежащим образом выбранного множества S имеет место равенство (S)— |S|=n0. Тем самым теорема будет доказана,
198 ГЛ. 18 ПАРОСОЧЕТАНИЕ ПРОИЗВОЛЬНОГО ГРАФА Пусть W — наибольшее паросочетание, F— множество слабых вершин графа G. В силу теоремы 3 и следствий 1, 2, 3 Pi (F) = (числу компонент Л4;) -|-1 Е |. Далее, сильные ребра графа G устанавливают взаимно-однозначное соответствие между множеством F, с одной стороны, и множеством компонент не содержащих ненасыщенных точек, и множеством насыщенных сильных точек — с другой; поэтому | F | = (числу компонент 7И;.) -|-1Е | — Отсюда = (Т7) — I Следствие 1. Число ребер наибольшего паросочетания в точности равно у (»-£). где £ = max [pt (S)— |S|]. SCLX (Непосредственно). Следствие 2 (теорема Татта). Для того чтобы граф допускал совершенное паросочетание, необ ходило и достаточно, чтобы (Непосредственно.) Пусть h — целое неотрицательное число; граф называется однородным графом степени h, если каждая его вершина имеет степень Л; в случае когда G — однородный граф, получаем гораздо более простые предложения. Теорема 6. Если связный однородный граф степени h не содержит такого множества SczaX, что | U51 ≪ h— 1, то существует совершенное паросочетаниет). Действительно, пусть S— подмножество X (в строгом смысле), и пусть компонента Сг подграфа, порожденного множеством X\S, обладает нечетным числом элементов. Согласно предположению, |UcJ^>/z— 1; но не может быть | Ucj | = й— 1, так как в противном случае число ребер в Сг было бы у [h IС1 I-(/г- 1)] = 1 [h (|Сг I - 1)4- 1], 9 Через U5 обозначается множество ребер, инцидентных S, у каждого из которых одна граничная точка не принадлежит S. — Прим. ред.
СОВЕРШЕННОЕ ПАРОСОЧЕТАНИЕ 199 т. е., поскольку |С} | нечетно, оно не было бы целым числом. Следовательно, откуда /z|S|>|Us|>2|UcJ>^z(S). Таким образом, pL (S) | S | для всех SczczX; это неравенство имеет место и при S = X, следовательно, в силу теоремы Татта, граф допускает совершенное паросочетание. Лемма [Эррера (А. Еггега)]. Если однородный граф нечетной степени h = 2k 1 не содержит множеств Scz.czX, для которых | U5 | ≪ 2&, и если W — наибольшее паросочетание, образованное сильными ребрами, то каждое ребро и0 принадлежит некоторому простому циклу, состоящему попеременно из сильных и слабых ребер. Вследствие теоремы 6 паросочетание W — совершенное; достаточно показать, что каждое слабое ребро принадлежит чередующемуся циклу (так как тогда сильное ребро будет принадлежать тому циклу; на котором лежит смежное с ним слабое ребро). Допустим, что слабое ребро и0 не принадлежит никакому чередующемуся циклу; если стянуть и0 в точку а, то в полученном графе G не будет чередующихся цепей, идущих из а обратно в а, и вершина а будет поэтому слабой. Далее, в силу теоремы 3, для компоненты М- подграфа, порожденного смешанными точками, имеются одно заходящее в нее сильное ребро и исходящие из нее слабые ребра, причем число последних четно (ибо после удаления сильных ребер каждая компонента связности нового графа будет обладать эйлеровым циклом); так как, согласно предположению, | | 2k, то можно также утверждать, что имеется по крайней мере 2k слабых ребер, исходящих из Mv Если каждую компоненту Mj стянуть в сильную вершину, то полученный граф уже не будет содержать ребер, ориентированных в двух направлениях; количество слабых ребер, исходящих из сильной вершины, будет 2k, а количество слабых ребер, заходящих в слабую вершину, будет 2k. Подсчитывая теперь число сильных ориентированных ребер полученного графа G в зависимости от числа |£| его сильных вершин, а затем от. числа | F | его слабых вершин, найдем | F | 1 = (числу ориентированных сильных ребер) = |£’|. Поступая точно так же с ориентированными слабыми ребрами, получим 2£(| F\— 1)^> (числу ориентированных слабых ребер) 2&|£|. ИтаК’ |F| + 1 = |E|, Но эти два неравенства несовместимы, поэтому лемма доказана.
200 ГЛ. 18. ПАРОСОЧЕТАНИЕ ПРОИЗВОЛЬНОГО ГРАФА Теорема 7. Если связный однородный граф нечетной степени h = 2k-\- 1 не обладает множеством SczaX, для которого |U5| ≪ 2k, то существует совершенное паросочетание, содержащее произвольное наперед заданное ребро и0. Действительно, в силу теоремы 6, существует совершенное паросочетание W; если ребро и0— сильное, то теорема доказана. Если и0 — слабое, то рассмотрим чередующийся цикл |1, проходящий через и0; наличие такого цикла обеспечивается предыдущей леммой. Заменив сильные ребра цикла pt слабыми, а слабые сильными, получим новое совершенное паросочетание, содержащее и0. Ч. И Т. Д. Приложение к числу внутренней устойчивости Теория паросочетания дает нам алгорифм для построения внутренне устойчивого множества S с наибольшим числом элементов J); для краткости вместо „внутренне устойчивое4' будем здесь говорить просто „устойчивое″. Лемма 1. Пусть G — граф, W — наибольшее паросочетание} если граф G не имеет других вершин, кроме сильных и слабых, то сильные вершины составляют его наибольшее устойчивое множество, Рассмотрим множество Е сильных вершин (оно содержит ненасыщенные вершины) и множество F слабых вершин. Множество СаХ служит опорой графа G, если каждое ребро имеет по крайней мере одну граничную точку в С; дополнение опоры есть устойчивое множество, и наоборот. Если W — некоторое паросочетание, С — некоторая опора, то всегда |W|≪|C|. Поэтому, если данное паросочетание W и данная опора С удовлетворяют условию |W| = |С|, то паросочетание — наибольшее, а опора — наименьшая. Так как в G две сильные вершины не могут быть смежны (следствие 3), то множество F служит опорой. Раз W — наибольшее паросочетание, то всякая точка из F является граничной для некоторого сильного ребра, идущего в Е; значит |F| = | W| и F — наименьшая опора. Следовательно, дополнение E = X\F представляет собой наибольшее устойчивое множество. Лемма 2. Пусть W— наибольшее паросочетание графа G, при котором нет других вершин, кроме сильных и слабых} в графе Gf, полученном из G удалением сильной вершины е вместе !) Для нахождения числа внутренней устойчивости и других связанных с ним характеристик графа существует еще рекуррентный способ (сн. [9]).— Прим, перев.
ЧИСЛО ВНУТРЕННЕЙ УСТОЙЧИВОСТИ 201 с инцидентными ей ребрами, множество Е \ {^} является наибольшим устойчивым множеством. В самом деле, F служит опорой подграфа G', полученного удалением сильной вершины е\ покажем, что это — наименьшая опора (тем самым будет доказано, что Е \ {^} = X' \ F является наибольшим устойчивым множеством графа G'). Допустим сперва, что точка е — насыщенная, и пусть [е, f] — сильное ребро, инцидентное е; тогда W \ [е, /] представляет собой паросочетание G', но уже не наибольшее, ввиду теоремы 2, так как имеется чередующаяся цепь, идущая из начала а в ненасыщенную точку /. Поэтому наибольшее паросочетание Wz графа G' удовлетворяет условию | Wz | = | W |. (Если точка е — ненасыщенная, то W — наибольшее паросочетание и снова |W'| = |W|). Рис. 18— 6. Так как для паросочетания Wz и опоры F имеет место равенство |WZ| = |F|, то F — наименьшая опора графа Gr. Ч.И Т.Д. Лемма 3. Пусть граф G' получен из G добавлением новых ребер; тогда числа внутренней устойчивости этих графов удовлетворяют условию a(Gz) ^a(G). В самом деле, пусть § — семейство устойчивых множеств графа G, а Sz — аналогичное семейство для G'. Так как §zс≪§, то a(Gz) = max|S| max|S| = a(G). Теорема 8 (Берж [1]). Пусть S(A} обозначает наибольшее устойчиво? множество подграфа, порожденного множеством ЛсХ; для наибольшего паросочетания W обозначим через Л4Р Л42, . . . компоненты подграфа, порожденного смешанными вершинами, а через /р /2, ...— компоненты подграфа, порожденного недостижимыми вершинами, и положим S = E\jS{M1)\}S{M2)\} ... и5(Л)и5(/2)и .... Если имеется не более одной компоненты подграфа, порожденного смешанными вершинами, то S — наибольшее устойчивое множество графа G = (X, U). В самом деле, каждая вершина, смежная с сильной вершиной, является слабой (следствие 3), как и любая вершина, смежная с возможной компонентой (следствие 2), и как всякая вершина, смежная с компонентой I& (теорема 4); поэтому S— устойчивое множество,
202 ГЛ. 18. ПАРОСОЧЕТАНИЕ ПРОИЗВОЛЬНОГО ГРАФА Далее, если удалить все ребра, соединяющие слабую вершину со смешанной или с недостижимой, то граф G распадается на компоненты Е U F, 7ИР /р /2 . Е представляет собой наибольшее устойчивое множество компоненты Е U Л, потому что если из G удалить все Ik и стянуть компоненту в одну точку ev то новый граф не будет иметь других точек, кроме слабых и сильных, и можно применить лемму 2. Таким образом, 5 является наибольшим устойчивым множеством несвязного графа. Восстанавливая теперь ребра, удаленные при преобразовании графа G, мы не увели- чим числа внутренней устойчивости ; (лемма 3); но так как S остается у устойчивым и в G, то оно — наи- Е г 1 а 7 большее устойчивое множество. /\ \ Замечание 1. Это утверждение г ' Ул \ сохраняет силу и при наличии не- w \ I ' скольких компонент подграфа, по- ' \ 1 ' рожденного смешанными точками, F у \ / если только никакая компонента \ \ ? / не ДОстижима по такой чередую- Т ' щейся цепи, которая предварительно Е уже пересекла некоторую компоненту Mk. В случае когда суще- Р и с. 18— 8. ствует чередующаяся цепь fi, покидающая Mk до вступления в Mj, надо посмотреть, может ли увеличиться устойчивое множество S от замены сильных точек р, слабыми. Например, в графе, изображенном на рис. 18 — 7, между компонентами и М2 имеется слабая точка, и, очевидно, можно путем добавления ее к S образовать большее устойчивое множество (вершины которого на рис 18 — 7 обведены кружками). Замечание 2. Для определения наибольшего устойчивого множества в компоненте Mj или Ik можно также с пользой применить теорему 8 и предшествующие леммы. Достаточно добавить ненасыщенную точку, целесообразно соединив ее, или разбить подходящим образом выбранное слабое ребро, как видно из следующего примера.
ЧИСЛО ВНУТРЕННЕЙ УСТОЙЧИВОСТИ 203 Пример. Рассмотрим граф G, изображенный на рис. 18 — 8, с наибольшим паросочетанием W. Замечаем, что этот граф не имеет ненасыщенных точек, поэтому все его вершины недостижимы. Тем не менее добавим точку е и ребро [е, а] и положим / = A'U {^}- Подграф, порожденный множеством Y \ не имеет других точек, кроме сильных и слабых, значит вершина е вместе с тремя вершинами „Е“ образует наибольшее устойчивое множество. В силу леммы 2 подграф, порожденный множеством JfXTWp имеет в качестве наибольшего устойчивого множества три вершины „Еи-, поэтому граф, состоящий из двух не связанных между собой компонент X \ и Мр имеет четыре обведенные вершины в качестве наибольшего устойчивого множества. В силу леммы 3 эти же вершины образуют наибольшее устойчивое множество графа G.
ГЛАВА 19 Фактороиды Гамильтоновы циклы и фактороиды В конечном графе G гамильтонова цепь — это цепь, проходящая через каждую его вершину один и только один раз; гамильтонов цикл — это цикл, проходящий через каждую вершину (за исключением начальной вершины, которая совпадает с конечной), один и только один раз. Заметим, что если каждое ребро графа ориентировать в двух направлениях, превратив тем самым G в симметрический граф, то каждая гамильтонова цепь будет определять гамильтонов путь, и наоборот, а каждый гамильтонов цикл — * - определит гамильтонов контур, и наоборот. Задача нахождения гамильтоновой цепи | / \ или гамильтонова цикла была изучена ра- '' 1 1 т нее (гл. 11), и мы можем к ней не возвра- / \ / щаться. Напротив, мы сталкиваемся с но- / \/ вой задачей, когда ищем в графе G = (X, U) некоторый фактороид, т. е. частичный Рис. 19— 1. граф (X, V), все вершины которого имеют степень 2 (и который, следовательно, состоит из одного или нескольких непересекающихся циклов). Симметрический граф, имеющий факторы, может в то же время не обладать фактороидами\ чтобы в этом убедиться, достаточно рассмотреть граф, изображенный на рис. 19— 1: дуги, проведенные жирными линиями, образуют фактор, а фактороидов у графа нет. Поиски фактороида ведутся, как указано в гл. 18, посредством рассмотрения чередующихся цепей из сильных и слабых ребер между двумя ненасыщенными вершинами; мы ограничимся установлением простых критериев для непосредственного выяснения существуют ли фактороиды. Займемся также определением наибольшего числа фактороидов без общих ребер, которые можно выявить в заданном графе. Сначала ограничимся однородными графами степени h. Пример 1 [Киркман (Kirkman)]. Одиннадцать министров ежедневно садятся за круглый стол; как их рассаживать, если желательно, чтобы каждый из них имел на каждом совещании новых соседей? Сколько дней может это продолжаться?
ГАМИЛЬТОНОВЫ циклы И ФАКТОРОИДЫ 205 Задача сводится к отысканию наибольшего числа гамильтоновых циклов без общих ребер в полном графе с одиннадцатью вершинами а, Ь, с, . . . , I, j, k. В данном случае, как легко видеть, существует только пять циклов без общих ребер, например abode f g h I j k a, a c e b g d I f k h j a , a e g c i b k d j f h a, a g i e k c j b h d fa, a i k g j e h c f b d a . Эти циклы получаются вращением линии, проведенной на рис. 19— 2, в направлении стрелок. В более общем случае 2/г -|- 1 вершин можно найти п гамильтоновых циклов без общих ребер. Пример 2 [Люка (Е. Lucas)]. Шесть юношей а, Ь, с, d, е, f и шесть девушек a, b, с, d, е, f водят хоровод, взявшись за руки. Сколькими способами могут они стать в круг, если каждый юноша хочет танцевать рядом с каждой из Рис. 19— 3. девушек только один раз и не хочет ни разу оказаться рядом с другим юношей? Задача сводится к нахождению наибольшего числа гамильтоновых циклов без общих ребер у некоторого бихроматического графа с двенадцатью вершинами. Имеется три цикла без общих ребер: aabbccddee f fa, а с b d с е d f е a f b а, а е b f с a d b е с f d а. Эти циклы получаются вращением линии, проведенной на рис. 19— 3, вместе с буквами внешней окружности; теория покажет нам, что ни гамильтоновых циклов без общих ребер, ни фактороидов без общих ребер больше найти нельзя.
206 ГЛ 19. ФАКТОРОИДЫ Пример 3 (Гильберт). Рассмотрим натуральные числа pt-j, где I j п, I ≪ у, и образуем функцию п комплексных переменных: f(zv z2 . z„) = П (2, — i≪j≪n В теории инвариантов Гильберту понадобилось разложить f в произведение примитивных сомножителей, каждый из которых можно представить в виде (*1 — Zt) (Z2 — Zi2) ... (Zn— Zin\ где (fp Z2, .... ZJ — некоторая перестановка чисел (1, 2, ri). Чтобы выяснить, возможно ли такое разложение, образуем мультиграф G с п вершинами xv х2, . .., хп, соединяя вершины х- и Xj (где I ≪ У) ребрами в количестве ptj штук; задача сводится теперь к разложению G на фактороиды без общих ребер. Теорема 1 [Петерсен (J. Petersen)]. Однородный граф четной степени h = 2k всегда можно разложить на k фактороидов без общих ребер. Действительно, мы можем считать граф связным (в противном случае нужно было бы рассмотреть каждую компоненту отдельно); в силу теоремы 1 (гл. 17), граф обладает эйлеровым циклом. Ориентируя каждое ребро в направлении обхода, мы получим псевдосимметрический граф G', у которого полустепени исхода и захода каждой вершины равны k. В силу следствия из теоремы 2 (гл. 11), G' можно разложить на k факторов, которые и будут фактороидами первоначального графа. Теорема 2 [Бэблер (Baebler)]. Однородный граф нечетной степени п = 2k 1 содержит k фактороидов без общих ребер, если min |US| 2k. s^x Это условие достаточно, но не необходимо1). В самом деле, в этом случае граф допускает полное паросочетание (теорема 6, гл. 18). Ребра, не участвующие в паросочетании, образуют однородный частичный граф степени 2k, который, в силу теоремы 1, может быть разложен на k фактороидов без общих ребер. Ч. И Т. Д. !) Обобщая этот результат, Бэблер доказал [1]: однородный граф нечетной степени h = 2k 4-1 содержит q фактороидов без общих ребер (где q k), если J™ О =7= А $¥=0
ГАМИЛЬТОНОВЫ циклы и фактороиды 207 Пример. Сколькими способами 2&-[-2 детей могут составить один или несколько хороводов так, чтобы никакие дети не были соседями более одного раза? Эта задача сводится к отысканию количества фактороидов без общих ребер у полного однородного графа степени 2£-|-1. Так как в данном случае |U5|i>2&, то имеется k возможных способов. Нас в особенности будут интересовать фактороиды однородных графов степени 3 (ввиду той исключительной роли, которую они играют в „задаче о четырех красках″). Прежде всего заметим, что однородный граф G степени 3 без петель является 4-хроматическим, потому что, будучи симметрическим графом, G допускает функцию Гранди g(x), причем max g(x) шах |Гх | =3. Теорема 4 (гл. 4) показывает тогда, что его хроматическое число у (G) 3 -1- 1 = 4. А что можно сказать о его хроматическом классе? Ответ существенно зависит от наличия фактороида. Всякий раз, когда G имеет фактороид V, он допускает также совершенное паросочетание W = U\V (и наоборот); будем считать ребра V слабыми, а ребра W — сильными. Назовем перешейком связного графа всякое такое ребро, удаление которого приводит к появлению двух компонент (каждая из которых содержит хотя бы одно ребро). Имеет место Теорема 3. Рассмотрим однородный граф G степени 3 без перешейков] 1° его ребра можно распределить по фактороиду V и совершенному паросочетанию W; 2° через каждое ребро и0 проходит некоторый чередующийся цикл четной длины (ребра которого принадлежат попеременно V и W). Первое утверждение сразу следует из теоремы 2, второе — из леммы Эррера (гл. 18). Прямое доказательство утверждения 2° (для памяти). Рассмотрим сначала слабое ребро и0 = [х0, у0] £ V и построим, отправляясь от G, новый граф G, поместив в середину ребра [х0, у0] новую вершину aQ и соединив ее сильным ребром с началом а. Если ориентировать ребра в направлении чередующихся цепей, исходящих из а, то около точки aQ граф G будет иметь вид, показанный на рис. 19— 4 (так как, по предположению, и0 не входит ни в какой четный чередующийся цикл). Каждая вершина графа G принадлежит к одному из 7 типов, изображенных на рис. 19 — 4; обозначим через nk число вершин типа k. В силу теоремы 3 (гл. 18) п7 равно числу компонент Mj смешанных точек; ввиду отсутствия перешейков каждая компонента Mj имеет хотя бы один выход. Число слабых ребер, инцидентных Мр четно (потому что, войдя по какому-нибудь из этих слабых ребер и не проходя других ребер, кроме еще не
208 ГЛ. 19. ФАКТОРОИДЫ пройденных слабых, мы наверняка „выскочим″ из Mj). Поэтому число п7 компонент удовлетворяет условию (1) 2лг7 /г5. Сосчитаем число слабых ребер G, ориентированных только в одном направлении: (2) п2 + 2zz3 = 2/г4 Ц- пБ 4~ 2. Сосчитаем число сильных ребер G, ориентированных только в одном направлении: (3) 1 4- 4~ пз= 1 Я- пт Если к (1) прибавить (2), умноженное на — 1, и (3), умноженное на 2, то получим п2 — 2, что невозможно. 2° Сильное ребро гц необходимо принадлежит некоторому чередующемуся циклу, ибо ввиду 1° через ребро, смежное с ир проходит чередующийся цикл (содержащий ребро uj. Следствие. Если G— однородный граф степени 3 и без перешейков, то: 1° существует совершенное паросочетание, содержащее произвольно выбранное ребро', 2° существует факто- роид, содержащий два произвольно выбранных ребра. 1° Если и0 — слабое ребро при некотором паросочетании W, то рассмотрим чередующийся цикл р», проходящий через и0; тогда wz = (W \ р) U (р- \ W) представляет собой совершенное паросочетание, содержащее ребро и0. 2° Рассмотрим два произвольно заданных ребра Uj и и2 и превратим граф G в Gf, добавляя вершину ах в середине иР вершину а2 в середине и2 и соединяя ах с а2 ребром и0. Тогда Gr — однородный граф степени 3, без перешейков, поэтому он обладает совер-
ГАМИЛЬТОНОВЫ циклы И ФАКТОРОИДЫ 209 шенным паросочетанием, содержащим и0. Слабые ребра образуют тогда фактороид, содержащий гц и и2. Теорема 4 (Петерсен — Эррера). Если в однородном графе G степени 3 все перешейки расположены на одной и той же элементарной цепи, то существует фактороид. Действительно, при удалении всех перешейков граф G распадается на непересекающиеся компоненты С, D и т. д; каждое из множеств Uc, UD, . . . состоит из одного или двух перешейков G. Допустим, что Uc состоит из двух перешейков v и w, и рассмотрим подграф, порожденный множеством С; оба ребра этого подграфа, смежные с v, соединим в одно, удалив при этом их общую вершину; то же проделаем с двумя ребрами, смежными с w. Новый граф будет однородным степени 3, и в силу предыдущего следствия можно построить его фактороид, содержащий составные ребра!). Таким способом мы образуем фактороиды всех компонент С, D, . . . и получим фактороид графа G. Теорема 5. Однородный граф степени 3 относится к хроматическому классу 5; этот класс 4, если не существует перешейков или если все перешейки принадлежат одной и той же элементарной цепи\ он 3, если существует гамильтонов цикл. В самом деле, рассмотрим однородный граф G степени 3 и наибольшее паросочетание, ребра которого окрасим в первый цвет. Если имеются ненасыщенные точки, то для каждой такой точки выберем некоторое инцидентное ей ребро и окрасим выбранные ребра во второй цвет. После этого останутся неокрашенными только ребра непересекающихся элементарных путей и циклов, для окраски которых, очевидно, достаточно трех цветов. Если все перешейки лежат на одной элементарной цепи, то, в силу предыдущего результата, не существует ненасыщенных точек, поэтому достаточно 4 цветов. Если имеется гамильтонов цикл, то он обладает четной длиной (потому что число ребер равно Злг/2, и поэтому число вершин п необходимо четно); таким образом, двух цветов достаточно для окраски ребер гамильтонова цикла, а трех — для окраски всех ребер графа. !) При соединении двух ребер в одно граф переходит, вообще говоря, в мультиграф (см. рисунок). Однако все утверждения, на которые опирается доказательство теоремы 4, справедливы и для мультиграфов. — Прим, перев.
210 ГЛ. 19. ФАКТОРОИДЫ Следует отметить, что произвольный однородный граф степени 3, даже если он не содержит перешейков, не всегда обладает гамильтоновым циклом: см., например, граф, изображенный на рис. 19 — 5 (который относится к хроматическому классу 3). Следствие. [Смит (С.А.В. Smith)]. В однородном графе степени 3 число гамильтоновых циклов, начинающихся произвольно выбранным ребром, четно, Если гамильтоновых циклов нет, то теорема доказана; если гамильтоновы циклы есть, то граф относится к хроматическому классу 3 и не имеет перешейков. Будем рассматривать, с одной сто- роны, множество всевозможных раскра- сок (т- е' Разбиений множества ребер U х. на ТРИ множества несмежных ребер) и, с ДрУг°й стороны, множество факторои- / дов [1, не имеющих циклов нечетной длины. \ Всякой раскраске и соответствуют три 1/ фактороида (тс), |х2(тс) и р.3(тс), окрасу шенных каждый двумя цветами, причем m Нч (к) + W С11) = 0 (mod 2). Наоборот, всякому фактороиду рь, имею- Р и с. 19— 5. щему k элементарных циклов четной i длины без общих ребер, можно отнести ровно 2 1Х различных раскрасок тс. Суммируя сравнения (1) по всем раскраскам -тс, получим 2 2^ ^ = 0 (mod 2). р- Следовательно, 2 (mod 2), {1/^=1 откуда и вытекает доказываемый результат. Необходимое и достаточное условие существования фактороида В предыдущем параграфе мы установили простые достаточные условия существования фактороида; теперь будем искать более сильные условия. Пусть G — граф, в котором требуется найти фактороид, a G — граф, полученный из G следующим образом: каждую вершину х из G, для которой, например, U4.= {u1, u2 . и*}, заменяем двумя
УСЛОВИЕ СУЩЕСТВОВАНИЯ ФАКТОРОИДА 211 множествами соответственно из k и k — 2 элементов: Х(х)={хр х2 . xk}, Y(x)={yv у2, yk_2}-, каждую вершину xt соединяем ребром с каждой вершиной у;., а каждому ребру и7- = [х, хг] ставим в соответствие ребро иу-, соединяющее х. £ Х(х) с некоторой вершиной xf £ А’(х') (см. рис. 19 — 6). Рис. 19— 6. Исключим случай, когда G имеет вершину степени 1, так как в этом случае, очевидно, фактороидов не существует; исключим также случай, когда Q имеет вершины степени 2, так как все такие вершины можно удалить (соединяя при этом соответственные пары смежных ребер в одно ребро). Иначе говоря, мы будем считать, что для любой вершины х £ X |W|=A0. Тогда каждое совершенное паросочетание графа Q определяет некоторый фактороид в G и, наоборот, каждый фактороид графа G определяет некоторое совершенное паросочетание в G. Мы приходим к известной задаче: охарактеризовать графы G, допускающие совершенное паросочетание. Лемма. Обозначим через X множество вершин графа G и через Pi(S) число компонент нечетного порядка у подграфа,
212 ГЛ. 19. ФАКТОРОИДЫ порожденного множеством X\S\ тогда существует множество S, удовлетворяющее условиям (0) Pi(S) — |S| = max_(p,(F) — |Ё|), ECZ X (1) X(a)ftS^0=$X(a)≪=S, (2) ^)n5>0=)K(J)cS, (3) {a/X(a) c Sj (1 W? (6) c S} = 0. Мы покажем, что среди множеств 5, удовлетворяющих условию (0), те, для которых число |5|— наименьшее, удовлетворяют также условиям (1), (2), (3). Имеет место (1): допустим, что Х(а)ф8, X (а) П 5 #= 0 для некоторой вершины а£Х, и рассмотрим какую-нибудь вершину xQ £ Х(а) П положим 50 = 5\{х0|. Если Y {a) с S, то А(5о)>Л(5). Если же Y (а) ф 5, то pi (So) = pL (S) — 1 или pt (So) = р,- (S), в зависимости от того, соединяются или не соединяются в точке х0 две непересекающиеся компоненты подграфа, порожденного множеством Х\3. Окончательно1): Pi (^о) Pi (*^) 1 ’ isoi = m-i, откуда Л(50)— |50| >Pi(S)— 1 — |S| + 1 = max(pz(£) — |£|). ECZX Но это противоречит тому, что |S0| ≪ |S|. Имеет место (2): допустим, что /(^)П^¥=0 и Y(b)(£S для некоторой вершины b £ X, и рассмотрим множество Т= 8 \ (Y (b) П S); очевидно, Й≪|$|. Если X(b)c:S, то а(П>а(5). !) Поскольку р. (S) и р. (S ) — числа не компонент вообще, а компонент нечетного порядка соответствующих подграфов, то при Y {a) cz S возможен и случай р. (So) = р. (S) — 1, а при Y (а) ф S — и случай р. (SQ) = pt (S) + 1. Но так или иначе, всегда выполняется неравенство pL (So) > pt (S) — 1.— Прим. ped.
УСЛОВИЕ СУЩЕСТВОВАНИЯ ФАКТОРОИДА 21 Если же Х(Ь)ф8, то1) а(Ъ = а(5). Поэтому во всех случаях p-fJS') и Pt(T) — IТ| — |S| + 1 > max (pt(E) — |Ё|), ЕС/ Но это невозможно. Имеет место (3): допустим, что X(#)czS, Y (а) а 8 для некоторой вершины а£Х\ пусть у0£К(я); положим T=S \ {у0}. Тогда Pt (Т) =Pi (S) Ч~ 1» |T| = |S|-1. Отсюда A(f)-|T|=pz(S)-|5|+2> max_(A(^-l^|). ECZX А это невозможно. Теорема Татта. Пусть А и В — два непересекающахся множества вершин графа G; т(А, В) — число ребер, соединяющих А с В\ q(A, В) — число тех компонент С подграфа, порожденного множеством Х\А, для которых т(С, В) нечетно. Необходимое и достаточное условие существования фактороида у G состоит в том, чтобы каждая вершина х имела степень с?(х)^2 и для любой пары непересекающахся множеств А и В выполнялось неравенство q(A≪ В)— S d(b) — 2 |Л| +2 |В| >0. Ъ£В В силу теоремы 5 (гл. 18) искомое условие равносильно тому, чтобы для определенного выше графа G было max_(pz (S) — |S|) = 0. sczx В силу леммы можно ограничиться рассмотрением множеств 5, удовлетворяющих условиям (1), (2), (3). Рассмотрим некоторое множество 5 такого типа и положим А = [а!Х(а) с S}, В= {b/Y (Ь) cS(. !) И здесь при X(b)(f.S возможен случай />. (7) = р. (S) — 1. Но этого достаточно, так как тогда Р^Т) — \Т\^> max (р. (Е)— | Е | ), что противо- _ _L ЕС.Х 1 речит неравенству | Т| ≪ ] S |. — Прим. ред.
214 ГЛ. 19. ФАКТОРОИДЫ Так как А и В не пересекаются, то |5| = 2 d(a) + 2 — 2) = 2 ≪*(«) + 2 d(b) — 2\B\. а£А b£B а£А b£B Подсчитаем теперь pL (S); компоненты С} пересекающиеся с Y (Л), имеют вид С=(у), где у £ К (я), а£А, и число таких компонент равно 2 — 2)= 2 ≪*(«) — 2 |А|. а£А а£А Если С — компонента, не пересекающаяся с К (Л), то положим C={x/X(x)QC^0}; имеем С (] А = 0, а числа т(С, В) и | С | обладают одинаковой четностью. Поэтому количество компонент С нечетного порядка, не пересекающих Y (Л), равно q(A, В), откуда окончательно Pl{S) = q(A, В)+ 2 d(a) — 2 |А|. а£А Искомое условие будет тогда О = max (pz (S)— |S |) = max \q (Л, В) — 2 | Л | -|- 2 | В |— 2 5 А в L ь^в J Отсюда и вытекает утверждение теоремы. Ясно, что совершенно аналогичным образом получается условие существования частичного графа с заданными степенями т). 9 Это условие, которым мы обязаны Татту, к сожалению, слишком сложно для того, чтобы его применять. Пусть f(x) — степень, которую надо получить для вершины х, a dA (х) — степень х в подграфе, порожденном множеством Х\Л; условие Татта есть (1) d(x)>f(x) (х£Х), (2) + 2 [/W-V-01 (АВМПВ = 0). x£A x^B Заметим, что таким же способом получается дефицит наибольшего множества W, совместимого с f(x). (См. также [6]. — Прим, перев.)
ГЛАВА 20 Связность графа Точки сочленения Говорят, что вершина х связного графа (X, U) является точкой сочленения, если подграф, получаемый удалением х, несвязен; если, кроме того, вершина х соединена с каждой из компонент этого подграфа только одним ребром, то х называют точкой простого сочленения. Пример 1. В дереве каждая неконцевая точка является точкой простого сочленения. В противоположность этому граф, обладающий гамильтоновым циклом, не имеет точек сочленения. Пример 2 (сеть коммуникаций). Пусть X— множество лиц, принадлежащих некоторой организации, и пусть [х, у] £ U, если лица х и у имеют возможность сообщаться. Точками сочленения служат связные; эти лица — особо уязвимое звено, так как их утрата нарушает единство и сплоченность организации. Теорема 1. Вершина х0 связного графа тогда и только тогда является точкой сочленения, когда существуют две такие вершины а и Ь, что каждая цепь, соединяющая а с Ь, проходит через Xq. 1° Если подграф, порожденный множеством Х\{х0}, несвязен, то он содержит по крайней мере две компоненты С и С'\ пусть а — некоторая вершина из С, а b — некоторая вершина из С'\ в первоначальном связном графе любая цепь, соединяющая а и Ь, необходимо должна пройти через х0. 2° Если любая цепь, соединяющая две вершины а и Ь, проходит через х0, то подграф, порожденный множеством Х\{х0), не может быть связным, и поэтому х^ является точкой сочленения. Понятие точки сочленения тесно связано с другими понятиями, аналогичными рассмотренным в гл. 12. В связном графе назовем расстоянием между двумя вершинами х и у длину d(x, у) самой короткой цепи, идущей из х в у, а удаленностью вершины х — число d (х) = max d (х, у).
216 ГЛ. 20. СВЯЗНОСТЬ ГРАФА Вершина наименьшей удаленности называется центроидом, а вершина наибольшей удаленности — перифероидной точкой. У симметрического графа эти понятия совпадают с понятиями центра и периферийной точки. Положим p = mind(x) {ненаправленный радиус, или „радиоид″). х£Х Если АаХ, то полагаем dA(x) = maxd(x, у) {удаленность х относительно Д). У^А Теорема 2 [Жордан (С. Jordan)]. Если в связном графе G точка простого сочленения xQ служит центроидом, то множество всех центроидов графа G сводится к единственной вершине или к двум смежным вершинам. Г В подграфе, порожденном множеством Х\ {х0}, имеется по крайней мере одна компонента А, для которой йа(хо) = Р- Кроме того, существует такая компонента В, что В^А', dB(x0) = p или р — 1. В самом деле, если бы для любой компоненты В^А было dB (х0) ≪ ≪р— 1, то вершина а, смежная с х0 и принадлежащая А, удовлетворяла бы условию d (а) = р — 1 ≪ р = min d (х); х£Х но это невозможно. 2° Пусть хг — центроид =# х0 (если таковой существует), и пусть — та компонента подграфа, порожденного множеством Х\{х0}, которая содержит хР Не существует компоненты С^СР для которой dc(x0) = p: если бы такая компонента имелась, то, обозначая через с вершину из С с наибольшим расстоянием от х0, мы получили бы d(x1)>d(xp c) = d(Xp x0) + d(x0, с)> 1 +р; но это невозможно, так как хг — центроид. 3° Итак, доказано, что С} = А и что компонента В, определенная в 1°, удовлетворяет условию dB(x0) = p— 1; но тогда х} есть не что иное, как вершина а, смежная с х0 и принадлежащая Д, так как в противном случае, обозначив через b вершину из В с наибольшим расстоянием от х0, мы получили бы d(xi)d(xi> ^) = d(xp x0)4-d(x0, d)^>2— |— (р— 1) = р4~1; а это невозможно, потому что х} — центроид.
ГРАФЫ БЕЗ СОЧЛЕНЕНИЙ 217 Следствие. Дерево всегда имеет либо один-единственный центроид, либо ровно два центроида, притом смежных между собой. В самом деле, каждый центроид дерева является в то же время точкой простого сочленения. Теорема 3. Перифероидная точка никогда не может быть точкой сочленения. Действительно, пусть zQ— перифероидная точка; рассмотрим такую точку z, что d (г0, z) = max -d (х, у). х, У^Х Если бы Zq была точкой сочленения, то подграф, порожденный множеством X\{^0), имел бы несколько компонент; беря точку х в компоненте, не содержащей z, мы получили бы d(x, z) = d(x, Zq) -р d (zQ, z)>maxd(x, у), x, у что невозможно. Графы без сочленений Граф G называется графом без сочленений, если он связен и не имеет точек сочленения. Основные свойства таких графов выражаются тонкими теоремами, и читатель может при первом чтении опустить доказательства. Теорема Менгера [4] (дополненная Дираком [1]). В графе G без сочленений для каждой элементарной цепи р = [а0, ах, . . ., ak\, соединяющей две различные вершины aQ и ak, существуют две такие элементарные цепи р' и pzz, что (1) крайними вершинами обеих цепей р' и pzz являются aQ (2) р/ и pzz не имеют общих вершин, кроме а0 и ak\ (3) при движении по р/ (или р″) от а0 к ak индексы встречающихся вершин цепи р идут в возрастающем порядке. Теорема справедлива для цепи р = [я0, длины 1, потому что если а0 не является точкой сочленения, то существует цепь р/, идущая из aQ в ах и не содержащая ребра [а0, ах\. Эта цепь, вместе с pzz = [#0, аг\, удовлетворяет поставленным условиям. Предположим, что теорема верна для элементарных цепей длины k, и докажем, что она верна для произвольной элементарной цепи длины k 1. р — [а0, аг . ak, ак+1]
218 ГЛ. 20. СВЯЗНОСТЬ ГРАФА Обозначим через р' и pzz две непересекающиеся цепи, соединяющие а0 с ак и удовлетворяющие условиям (1), (2), (3); требуется доказать, что между я0 и ak+x существуют две цепи pz и pzz с аналогичными свойствами. Существует элементарная цепь v = v [я0, яй+1], соединяющая aQ с ak+1 и не проходящая через ak (в противном случае ak в силу теоремы 1 была бы точкой сочленения). Обозначим через х последнюю вершину цепи у, принадлежащую р [я0, ak] U pz [я0, ak\ U U рЛ[я0, Uk\- Рассмотрим несколько случаев. (вЗ Первый случай', х = aQ. Искомыми цепями являются Ро = Р’ Ро =v- Второй случай'. x = ak+1. Так как х (£ р [я0, ak], то либо х£р', либо х£р″; если, например, x£pz, то полагаем Рю = Р/ *1’ P-о = РЛ 1^0’ ^+11- Третий случай', х (£р. В этом случае имеем или x£pz, или x£pzz; если, например, x£pz/, то полагаем pz = pz[£0, ak] -j- [ak> ak+x\, Pg = pZZ +v Iх’ aA-+il* Четвертый случай'. x£p, х±ам Можно написать x = aq, где q ≪ k\ пусть ap — вершина p c p^q, ближайшая к aq и принадлежащая также pz U pzz; если, например, ap£ pzz(cM. рис. 20 — 1), то положим Ро = Р/[^0’ ak\~\~lak^ ^/г + 11’ р-о = ^/zl^0’ ар}-\-уЛар, aQ]-[-v[aqt afe+1I.
ГРАФЫ БЕЗ СОЧЛЕНЕНИЙ 219 Поскольку эти четыре случая охватывают все возможности, теорема доказана. Лемма. В связном графе без петель для любых двух ребер и и N существует элементарная цепь, которая начинается Рис. 20— 2. элементарный цикл. В самом деле, пусть р.= [я0, av . .., ak\ — элементарная цепь, у которой [4Z0, «j] =u, ^^] = v; такая цепь существует в силу леммы. Рассмотрим две непересекающиеся элементарные цепи р/ и p/z, соединяющие а$ с ak, существование которых утверждается теоремой Менгера. Обозначим через х первую вершину цепи р- (после я0), принадлежащую р/ U p/z, а через у — последнюю вершину цепи рь (перед а^), принадлежащую р/ J рА Первый случай'. x = ak, y = aQ. В этом случае (рис. 20 — 2, наверху) искомым циклом является у.[а0> «о]- Второй случай'. x=£ak, y^=aQ, х£р/, у £ р/. В этом случае ≪^рис, 20 — 2, посредине) искомым циклом является Мйо> Ч + нЧ*. У1 + МУ> «oh ребром и и оканчивается ребром v. В самом деле, если и = [а, х] и v=[Z?, у], то ввиду связности графа вершины а и b можно соединить элементарной цепью р.= [a, av а2 . ак = 1>]. Если х(£р, yfjtp., то искомая цепь будет (10= [х, а] 4- (1 + [Ь, у]. Если x(£(i, у(£(1. то искомая цепь будет (10 = [х, а] +(![«, у] + [у. Ъ]. Если х £ (1, у [1, то искомая цепь будет ц0=[а, х]+(1[х, &] + 0. У]. Если х £ рь, у £ рь, то искомая цепь будет (i0=[a, х] + (1[х, у] 4- [у, &]. Теорема 4. В графе без сочленений и без петель через любые два ребра и и v проходит н
220 ГЛ. 20. СВЯЗНОСТЬ ГРАФА Третий случай'. x^ak, y^=aQ) х£р/', y£p/z. Этот случай аналогичен предыдущему. Четвертый случай'. x=^ak> у=^а0, х£у/, В этом случае (рис. 20 — 2, внизу) искомым циклом является х]4-^[х, ak\-\-^[ak, у]+рЛ[у, я0]. Пятый случай'. x^ak, y=£aQ, x£p/z, у£р/. Этот случай аналогичен предыдущему. Рассмотренными пятью случаями исчерпываются все возможности, и теорема доказана. Теорема 5. Для графа G без петель и изолированных вершин следующие условия равносильны'. (1) через два произвольных ребра всегда проходит элементарный цикл\ (2) через две произвольных вершины всегда проходит элементарный цикл', (3) граф не имеет сочленений. Покажем, что (1)=ф (2)=ф(3)=ф (1). (1) =^>(2), потому что две произвольные вершины х и у служат граничными точками двух ребер (граф G не имеет изолированных вершин), а через эти два ребра проходит элементарный цикл, которому и принадлежат вершины х и у. (2) =ф(3), потому что, в силу (2), граф связен; если бы он имел точку сочленения, то две вершины х и у, разделяемые этой точкой, не могли бы принадлежать одному элементарному циклу, вопреки (2). (3) =ф(1) в силу предыдущей теоремы. Рассмотрим теперь произвольный граф G\ если х — одна из его точек сочленения, а С — одна из компонент, отделяющихся после удаления х, то подграф G, порожденный множеством Cj {х}, представляет собой, по определению, кусок графа G. Кусок прикреплен к остальной части графа точкой сочленения. Каждый кусок может содержать другие, меньшие куски; кусок, не содержащий меньших кусков, называется минимальным куском. Это понятие позволяет установить простой критерий для выяснения того, проходит ли через две данные вершины какой-нибудь элементарный цикл. Именно, если а и b — две различные вершины элементарного цикла, то можно ощипать граф, последовательно отделяя от него куски, не содержащие одновременно а и Ь, и при этом всегда будет оставаться подграф более чем с одним ребром. Наоборот, если после ощипывания остается подграф более чем с одним ребром, то этот подграф не имеет сочленений и содержит обе вершины а и b*f следовательно, в силу теоремы 5 существует элементарный цикл, проходящий через а и Ь. Таким образом, необходимое и достаточное условие существования элементар-
Л-СВЯЗНЫЕ ГРАФЫ 221 ного цикла, проходящего через две данные вершины, состоит в том, чтобы после ощипывания получался подграф более чем с одним ребром. Пример. Задача о „Коне Аттилы11. На шахматной доске находятся белый конь („конь Аттилы″) и черный король, как показано на рис. 20 — 3 (слева); заштрихованные клетки считаются „горящими″. Требуется дойти конем до клетки с королем и вернуться в исходную клетку, перемещаясь обычными ходами шахматного коня; при этом нельзя становиться ни на горящую клетку, ни на клетку, уже пройденную (потому что, как хорошо известно, конь Аттилы поджигает все на своем пути). Эта задача сводится к определению в графе, изображенном на рис. 20 — 3 (справа), элементарного цикла, проходящего через две данные вершины а и Ь\ ощипывание удаляет некоторое количество кусков (обозначенных пунктиром), а остающийся граф (обозначенный сплошными линиями) имеет более одного ребра; поэтому задача разрешима. Zt-связные графы Рассмотрим связный граф G = (X, U) порядка п=\Х\\ непустое множество ЛсХ называется множеством сочленения, если подграф, порожденный множеством Х\Л, несвязен. В случае когда А сводится к единственной вершине, мы снова получаем точку сочленения. Если граф несвязен, то пустое множество 0 рассматривается тоже как множество сочленения. Наконец, назовем множеством изоляции графа порядка п любое множество из п— 1 его вершин. Число связности графа G определяется как наименьшее число элементов множества, являющегося множеством сочленения или
222 ГЛ. 20. СВЯЗНОСТЬ ГРАФА связности очень игроками, участ- изоляции для G, и обозначается через cd(G). Говорят, что граф G является h-связным, если a>(G)^ h, где h — данное Пример 1. Турнирная диаграмма. Понятие важно, когда надо организовать встречи между п вующими в турнире, ограничивая общее количество встреч числом т. Турнир будет справедливым, если небольшая группа игроков не может „изолировать″ одного или целое число >> 0. Рис. 20— 4, Рис. 20— 5. нескольких соперников, то есть если соответствующий граф с п вершинами и т ребрами обладает достаточно большим числом связности. Например, при 5 игроках и 9 встречах следует принять граф, изображенный на рис. 20— 4, который является 3-связным; множество сочленения состоит из трех игроков, отмеченных пунктирными кружками. При 9 игроках и 20 встречах следует принять граф, изображенный на рис. 20— 5 и являющийся 4-связным, и т. д. Пример 2. Бомбардировка путей сообщения. Обычно считается, что экономическая и военная мощь вражеской страны существенно парализована, если в результате бомбардировки коммуникаций удалось полностью изолировать один или несколько районов. Задача состоит в следующем: какое количество (наименьшее) путей сообщения надо разрушить для достижения этой цели? Построим граф (X, U), вершины которого изображают районы с богатыми и удачно расположенными внутренними коммуникациями, а ребра — уязвимые пути сообщения (например, мосты, тоннели, железные дороги и т. п.), связывающие эти районы между собой. Задача сводится к нахождению наименьшего числа ребер, удаление которых нарушает связность графа. Можно обратиться к теории связности, строя вспомогательный граф (U, А), вершинами которого служат ребра из U, причем u£Av, когда ребра и и v смежны. Если, например, ставится задача бомбардировки мостов, изображенных на рис. 20— 6 (слева), то получается граф, изображенный справа, который является 3-связным;
Л-СВЯЗНЫЕ ГРАФЫ 223 множеству сочленения [r, v, п] отвечают три моста, разрушения которых достаточно для достижения поставленной цели. В дальнейшем везде h будет обозначать натуральное число; говоря, что некоторый граф G порядка п является „/г-связным“, мы будем иметь в виду следующее: (1) G связен, (2) h ≪ п, (3) G не имеет множеств сочленения А с числом элементов |Л( ≪ h. Граф G является 2-связным тогда и только тогда, Рис. 20— 6. когда он не имеет точек сочленения; те свойства Л-связных графов, которые мы теперь будем рассматривать, представляют собой обобщения изложенных выше теорем о графах без сочленений. Теорема 6. В h-связном графе степень каждой вершины h. Действительно, пусть G — произвольный /z-связный граф, х0 — одна из его вершин. Допустим, что х0 является граничной точкой не более чем h— 1 ребер, и рассмотрим множество А, составленное вторыми граничными точками этих h— 1 ребер. Так как граф /z-связен, то h— 1 — 1)— 1 = п— 2. Поэтому в G найдется вершина, отличная от х0 и не принадлежащая А; значит, А есть множество сочленения. Ввиду того что
224 ГЛ. 20. СВЯЗНОСТЬ ГРАФА [А1=/г— 1 ≪ /г, граф не является Л-связным, вопреки условию теоремы. Теорема 7. Подграф G', полученный из h-связного графа G удалением одной вершины, является (Л— \)-связным. В самом деле, из h ≪ п вытекает h — 1 ≪ п — 1 = п'. Кроме того, для нарушения связности графа Gr необходимо удалить по меньшей мере h — 1 вершин; поэтому G' является (Л — 1)- связным. Теорема Уитни [5]. Для h-связности графа необходимо и достаточно, чтобы любые две его вершины aQ и z можно было соединить h различными элементарными цепями, не имеющими общих вершин, кроме aQ и z. Условие достаточно. В самом деле, если две произвольные вершины соединены h различными цепями, то граф G связен. Среди h цепей, соединяющих две вершины а^ и z, имеется не более одной длины 1, а остальные h— 1 цепей вместе содержат не менее h — 1 различных вершин (отличных от а0 и z), значит п>(Л— 1)4-2 > h. Наконец, у G нет множества сочленения А с числом элементов |Д|≪Л, потому что если бы такое А имелось, то, выбрав две точки aQ и z в двух различных компонентах подграфа, порожденного множеством ХХ^Д, мы не смогли бы провести h цепей без общих вершин так, чтобы эти цепи соединяли aQ с z и проходили через А. Условие необходимо. Надо показать, что если граф G является Л-связным, то любые две его вершины можно соединить h непере- секающимися элементарными цепями. При h = 2 утверждение уже доказано (теорема Менгера); допустим, что теорема справедлива для всех (h— 1)-связных графов, и докажем ее справедливость для произвольного Л-связного графа G. Иначе говоря, мы рассмотрим две вершины aQ и z графа G и покажем, что их можно соединить h элементарными цепями без общих вершин. Поскольку G не имеет точек сочленения (так как h 2), а§ и z можно соединить двумя непересекающимися цепями, из которых хотя бы одна, скажем [6ZO, ах, а2, . . ., aq, z], имеет длину ^2. Вершины aQ и а2 соединены h непересекающимися цепями; в самом деле, если разрушить цепь [я0, av а2\, удалив из графа вер-
ft-СВЯЗНЬТЕ ГРАФЫ 225 шину av то оставшийся граф будет (Л— 1)-связным (теорема 7) и в нем а0 будет соединена с а2 посредством h — 1 непересекаю- щихся цепей. Теперь надо показать, что если а0 и ak можно соединить h непересекающимися цепями, то можно также соединить а0 с ak+1 посредством h непересекающихся цепей. Обозначим цепи, соединяющие aQ с ak, через р.р |х2, ..., 1° Сначала предположим, что никакая из цепей рьр р2, • • • не содержит ak+1. Так как граф, полученный удалением ak, является (/г— 1)-связным, то вершины а$ и ak+1 соединены непересекающимися цепями vp v2, . . ., vA_p не проходящими через ak. Рис. 20— 7. При помощи рьр [i2, ... , vp v2, ..., мы будем составлять непересекающиеся цепи, соединяющие aQ и ak+v следующим процессом: 1) Идя по цепи от ak+1 к а0, обозначим через Ьг первую и. точку встречи с (J pz (отличную от ak+1)‘ допустим, например, что z = i и ПОЛОЖИМ = Н [ао- М +V1 Pl’ ak + x\ 2) Идя по цепи v2 от ak+1 к а$, обозначим через Ь2 первую /2 точку встречи с ji' (J (J pz (отличную от ak+1)\ рассмотрим два слу- 2=2 чая. Если b2 £ |iz, где Z > 1, то положим, как прежде, Iхz = Pi Ро’ ^]~l_V2p2’ + Если же #2£р.' (см. рис. 20 — 7), то аннулируем операцию 1) и положим P-i = h К’ Ч + v2 [62’ + при этом мы скажем, что цепь jxJ перевоплотилась, и в дальнейшем переставим индексы 1 и 2 у v1 и v2.
226 ГЛ. 20. СВЯЗНОСТЬ ГРАФА 3) Если перевоплощение не произошло, то идя по цепи v3 от ak+i к ао* мы обозначим через Ь3 первую точку встречи с К и Pz и U р-й; это приведет либо к определению некоторой Л=/=1, I цепи р,', либо к перевоплощению одной из цепей р.', р,'; и т. д. [Если в 2) произошло перевоплощение, то идем по новой цепи v2, еще не использованной.] Этот процесс повторяем, пока возможно. Так как каждое перевоплощение укорачивает одну из цепей р-р р-2, . . ., р-Л (длины которых конечны), то наступит момент, когда дальнейшее перевоплощение невозможно, и мы окончательно получим h— 1 цепей вида Р]— Р1[а0’ ^i1] + Vl р/,’ ай+1]’ р' = р2ро> ^ + 1]. Рл-1 “Рд-1 [а0’ Aa_j]+VA-1 PzA_f а* + 1]- Эти цепи попарно не имеют общих вершин, ибо если бы, например, р-1 [а0, #ц] и v2[^j2, ak+1] имели общую вершину (отличную от а0 и ай+1), то оставалось бы произвести перевоплощение. Кроме того, ни одна из цепей [Z?Z1, ak+1], v2 [^z2, a*+i], ..., \bifl_v не имеет вершины, принадлежащей цепи р-Л(за исключением вершины ak+1 и, быть может, вершины aQ, если с ней совпадут какие- либо из вершин btx . ^л-1)* так как каждая цепь p-z, которая была в некоторый момент изменена нашим процессом, в дальнейшем остается измененной. Следовательно, никакая из цепей р-', р-' . р*д_! не встречает цепь Рй = РЛро- + М Цепи р-', р-', .р^ образуют искомую систему h цепей. 2° Теперь допустим, что ak+1 принадлежит одной из цепей p-z; пусть, например, ak^_x^^h. Заменим тогда р-Л на р-Л[«0, ак+1] и будем действовать, как выше. Следствие 1. Граф G', полученный из h-связного графа Q удалением одного ребра, является (h — 1)-связным. В самом деле, две любые вершины в G можно соединить по крайней мере h непересекающимися цепями, поэтому в Gf их можно соединить h— 1 непересекающимися цепями. Следствие 2. Граф G', полученный из h-связного графа G удалением k ребер (&≪ Л), является (h— к)-связным. (Непосредственно.) В заключение следует отметить, что для того, чтобы не нарушить связность /z-связного графа, нужно удалить из него по меньшей мере h ребер.
ГЛАВА 21 Плоские графы Основные свойства Говорят, что граф (или мультиграф) G — плоский, если его можно изобразить на плоскости так, чтобы вершинам отвечали различные точки, ребрам — простые дуги и чтобы никакие два ребра не имели общих точек, отличных от их границ. Изображение G на плоскости, удовлетворяющее этим условиям, называется плоским топологическим графом, и мы будем обозначать его той же буквой G; плоские графы, которые можно преобразовать друг в друга непрерывной деформацией плоскости, не считаются различными. Пример. Задача о трех городах и трех источниках снабжения 2). Имеются три города а, Ь, с и три источника снабжения: водонапорная башня d, газовый завод е, электростанция / (см. рис. 21 — 1); каждый из городов связан с каждым источником снабжения соответственно водопроводом, газопроводом, линией электропередачи. Можно ли начертить (на плане) три города, три источника и все линии передачи таким образом, чтобы никакие две линии не пересекались между собой в неконцевых точках? Непосредственные попытки показывают, что всегда можно нарисовать 8 линий, а девятая обязательно пересечет хотя бы одну из этих восьми. Ниже мы познакомимся с объяснением этого факта. Пусть G — плоский топологический граф; его гранью называется область плоскости, ограниченная ребрами и не содержащая внутри себя ни вершин, ни ребер; будем обозначать грани буквами г, s, t, а множество граней— буквой R. Край грани г — это цикл, образованный граничными ребрами г. Две грани г и s называются смеж- *) Эта задача хорошо известна у нас как „задача о трех домах и трех колодцах″. — Прим, пере в,
228 ГЛ. 21 ПЛОСКИЕ ГРАФЫ ними, если их края имеют хотя бы одно общее ребро; грани, соприкасающиеся только в отдельных вершинах, смежными не считаются. Пример. Географическая карта (при условии, что нет островных стран) представляет собой плоский топологический граф; этот граф - - имеет ту особенность, что сте- пени всех его вершин 3. s' s' ] Грань может примыкать к ка- / I / с 7 кой-либо другой грани в не- / скольких местах. Заметим, что на Рис’ — 2 грани d и g не (J/п/' смежны, хотя имеют общую 1 I 7 d I вершину. Строго говоря, граф, \ I/ / е изображенный на рис. 21 — 2, * - является мультиграфом. Нако- \3/] нец, отметим, что у всякого \/7/ плоского графа имеется одна, рис 21 _ 2 притом единственная, неограниченная грань, называемая бесконечной гранью (на рис. 21 — 2 грань е)\ остальные грани (с, d, /, g, Zz, Z, у) — конечные. Теорема 1. В плоском топологическом графе G края различных конечных граней образуют базу независимых циклов. Теорема очевидна, когда G имеет 2 конечные грани; предположим ее справедливой для всех графов с числом конечных граней f— 1 и покажем, что она верна для произвольного плоского топологического графа G с f конечными гранями. В самом деле, удаляя из G некоторое ребро и, мы получим граф G', имеющий /— 1 конечных граней, края которых, согласно предположению, образуют базу независимых циклов. Восстановив ребро и, получим новую конечную грань, край которой является циклом, не зависимым от предыдущих (поскольку он содержит ребро, не принадлежащее ни одному из них). Так как добавление одного ребра не может увеличить цикломатическое число более чем на единицу, то конечные грани графа G определяют базу независимых циклов. Следствие 1. Если связный плоский топологический граф имеет п вершин, т ребер и f граней, то п — т-\-f =2 {формула Эйлера). Действительно, число конечных граней равно цикломатическому числу v, поэтому f = v — 1 ={т — n-|-l) + 1 = т— п-\-2. Отсюда и получается доказываемая формула.
ОСНОВНЫЕ СВОЙСТВА 229 Следствие 2. В любом плоском графе {не являющемся мулътиграфом) хотя бы одна вершина х имеет степень В самом деле, у соответствующего плоского топологического графа каждая грань окаймлена по меньшей мере тремя различными ребрами; если образовать простой граф инциденций грани — ребра !), то число его дуг будет 2/п, с одной стороны, и 3/, с другой, поэтому / . Если бы в исходном графе каждая вершина была О инцидентна не менее чем шести ребрам, то таким же образом 2) мы 2/77 получили бы значит, в силу формулы Эйлера, п | г / т . 2т р. 2 = п — m — m-f - = О, о о что невозможно. Следствие 3. Географическая карта обладает по крайней мере одной такой гранью, край которой содержит не более 5 ребер. Действительно, в географической карте каждая вершина является граничной точкой не менее чем трех ребер; образуя простой граф инциденций вершины — ребра, получим, что число ребер, с одной 2т стороны, ≪12т, а с другой стороны, Зп, откуда п . Если О допустить, что каждая грань обладает краем по меньшей мере с б ребрами, и образовать простой граф инциденций грани — ребра, то получим, что число его дуг 2т и в то же время ^>6/; зна чит, f . Отсюда о с» 1 -С у 2т, . т 2 = п — т + / -о - гп -h-о- = О, о о что невозможно. Формула Эйлера, доказанная в следствии 1, имеет многочисленные применения. Пример 1 (Эйлер). Рассмотрим в трехмерном пространстве связный многогранник с п вершинами, т ребрами, f гранями. Его, очевидно, можно изобразить на сфере таким образом, чтобы никакие два ребра не пересекались в точках, отличных от граничных; произведя затем стереографическое проектирование с центром внутри одной из граней, получим изображение на плоскости. Это изображение будет плоским графом, поэтому имеет место основное соотношение для связных многогранников: п — m-\-f = 2. ') Т. е. граф, состоящий из множества X точек, изображающих грани, множества Y точек, изображающих ребра, и из дуг, соединяющих х С X с y£Y всякий раз, когда грань х инцидентна ребру у. 2) Рассмотрев простой граф инциденций вершины — ребра. — Прим. ред.
230 ГЛ. 21 ПЛОСКИЕ ГРАФЫ Пример 2. С помощью формулы Эйлера покажем, что граф, рассматриваемый в задаче о трех городах и трех источниках снабжения (рис. 21— 2), не может быть плоским. Допустив, что он плоский, мы имели бы / = 2 — п-\-т = 2 — 6 Д-9 = 5. Край каждой грани содержит не менее 4 ребер (так как если бы край какой-либо грани имел только три ребра, то граничными точками этих ребер были бы три вершины, из которых две принадлежат к одной и той же категории: города или источники снабжения; но две вершины одной и той же категории не смежны). Образуя простой граф инциденций грани — ребра, мы получим, что число дуг 2т и в то же время 4/, следовательно, чю невозможно. 18 = 2т>4/ = 20, Пример 3. Таким же образом покажем, что полный граф с 5 вершинами не является плоским. Предполагая его плоским, мы получили бы f = 2 — п 4- т = 2 — 5 4- 10 = 7. Каждая грань имеет на своем крае не менее 3 ребер. Образуя простой граф инциденций грани — ребра, найдем, что число дуг = 2т и в то же время 3/, откуда 20 = 2т>3/ = 21, что невозможно. Граф, рассматриваемый в задаче о трех городах и трех источниках снабжения, а также полный граф с пятью вершинами позволяют определить целое семейство неплоских графов: как видно из (Тип /; Рис. рис. 21— 3, достаточно поместить на каждое ребро сколько угодно вершин и таким образом определить новый неплоский граф типа 1 или типа 2. Этот результат можно обратить, что даст нам трудную
ОСНОВНЫЕ СВОЙСТВА 231 теорему, принадлежащую Куратовскому ]), доказательство которой мы собираемся здесь привести. Предварительно договоримся в отношении языка: если jx— некоторый элементарный цикл (на котором мы произвольно задаем направлениё) и если а, #£[х, то через [а, Ь} будем обозначать последовательность вершин, встречающихся при движении от а к b в положительном направлении (включая а и Ь), а через pj а, £[— ту же последовательность, но без а и Ь. Далее, если G — граф с множеством сочленения А, то куском графа G (относительно Л) назовем всякую связную компоненту С подграфа, порожденного множеством к которой добавлены ребра, инцидентные С (вместе со своими граничными точками). Теорема Понтрягина — Куратовского. Необходимое и достаточное условие, при котором граф G является плоским, состоит в том, что граф не должен содержать частичных подграфов типа 1 и типа с2. Ясно, что граф, содержащий частичный подграф типа 1 или типа 2, не может быть плоским; покажем, что и наоборот, если граф не содержит частичных подграфов типа \ и 2, то он плоский. Утверждение тривиально для графов G с одним, двумя или тремя ребрами; далее будем рассуждать по индукции: допустим, что утверждение верно для всех графов, имеющих менее т ребер, и докажем его для произвольного графа G с т ребрами. Пусть G — граф с т ребрами, не имеющий частичных подграфов типа 1 или 2 и в то же время не плоский. Этот граф связен, ибо в противном случае все его компоненты были бы плоскими, а значит, и он сам был бы плоским. Далее, G — граф без сочленений, иначе его куски относительно точки сочленения а были бы плоскими, но эти куски можно изобразить на плоскости так, чтобы точка а оказалась на бесконечных гранях этих изображений (при помощи надлежащего стереографического проектирования); значит, граф G тоже был бы плоским. 1° Покажем, что после удаления из G произвольного ребра [а, Ь] сохранится некоторый элементарный цикл [х, проходящий через а и Ь. Действительно, в противном случае граф G', получаемый из G удалением ребра [а, #], имел бы точку сочленения (в силу теоремы Менгера, гл. 20); вершины а и b принадлежали бы двум различным кускам Са и Сь относительно точки сочленения с2). Граф Са, полученный из Са присоединением ребра [а, с],— плоский, так как он не содержит подграфов типа 1 и 2 (как граф, 1) Эта теорема была установлена (но не опубликована) в 1927 году Л. С. Понтрягиным, а в 1930 году, независимо от него, вторично доказана Куратовским [4]. В дальнейшем мы называем ее теоремой Понтрягина — Куратовского.— Прим, перев. 2) Иначе с была бы точкой сочленения исходного графа G. — Прим. перев.
232 ГЛ. 21. ПЛОСКИЕ ГРАФЫ образуемый из G посредством стягиваний). Поэтому можно при помощи стереографического проектирования изобразить Са на плоскости таким образом, чтобы ребро [а, с] оказалось на крае бесконечной грани. По той же причине граф Сь, полученный из Сь присоединением ребра [#, с], можно изобразить на плоскости так, чтобы [Ь, с] оказалось на крае бесконечной грани. Соединяя затем а с Ь, получим плоский топологический граф, содержащий G, что невозможно в силу предположения относительно G. 2° В плоском топологическом графе G', полученном в результате удаления ребра [а, Ь], рассмотрим элементарный цикл ji, проходящий через а и b и охватывающий наибольшее возможное количество граней. Придадим циклу р, произвольную ориентацию; р, разделяет плоскость на две области; всякий кусок относительно р. графа G', вершины которого лежат во внутренней (соответственно внешней) области, назовем внутренним куском (соответственно внешним куском) !). Никакой внешний кусок не может содержать более одной вершины последовательности р. [а, Ь] (иначе можно было бы построить цикл р., охватывающий большее число граней); так как то же самое справедливо и для р.[&, а], то внешний кусок может пересекать р, только в одной или в двух точках. Кроме того, существуют по крайней мере один внешний и один внутренний кусок, каждый из которых пересекает как pj а, Ь[, так и pj b, а [(ибо поместить на плоскости ребро [а, Ь] невозможно). 3° Покажем, что существуют внутренний кусок С и внешний кусок D, каждый из которых пересекает как pj а, b [, так и pH Ь, а[, причем эти куски таковы, что точки cud пересечения D с р, и точки е и f пересечения Сер расположены на р* в чередующемся порядке', с, е, d, f. В самом деле, допустим, что это не так: пусть — некоторый внутренний кусок, пересекающий р-] а, b [и pj а\, пусть ех и — соответственные точки пересечения на рь. Можно начертить непрерывную линию v, соединяющую и ev проходящую во внешней области по отношению к р- и не пересекающую никакого из наличных ребер (поскольку, согласно предположению, не существует внешних кусков, встречающих как р.] яр fx [, так и pj/р ех [). Всякий внутренний кусок, имеющий общие точки только с р4/Р можно переместить во внешнюю область, в грань, содержащую линию v; именно этот случай имеет место для куска СР Но обязательно останется хотя бы один внутренний кусок С2, который невозможно так переместить (иначе а и b можно было бы соединить в плоскости), и этот кусок имеет с р.[/Р еА\ две последовательные *) Кроме того, внутренним (соответственно внешним) куском следует называть всякое ребро, которое проходит во внутренней (соответственно внешней) области и обе граничные точки которого принадлежат р,. — Прим. персе.
ОСНОВНЫЕ СВОЙСТВА 233 точки пересечения е2 и /2, из которых хотя бы одна принадлежит р]/р ^ [. Проделаем с С2 то же, что мы проделали с Ср и т. д. . . . ; этот процесс никогда не окончится, вопреки конечности графа. Обозначим теперь через е, /, g, h такие точки пересечения С и р., что еСр.]с, d[, /ЕцМ, с[, £>[. /гСМ ь- а1- Очевидно, е =£ f и g^h, но может случиться, что e — g, e = h и т. п. 4° Если одна из вершин е и / расположена на у.] а, Ь[, а другая— на ji] Ь, а[, то можно положить, например, e = g, f = Л; непосредственно ясно (рис. 21— 4), что G содержит граф типа 1, вопреки предположению.' 5° Если обе вершины ей/ находятся на ри] а, #[, то можно предположить, что h = c (ибо при 1гфс, мы вернемся к фигуре, исключенной в п. 4°). Полученная фигура (рис. 21— 5) содержит граф типа 1, что невозможно. По той же причине отпадает случай, когда обе вершины ей/ принадлежат ≪л] Ь, а [.
234 ГЛ. 21. ПЛОСКИЕ ГРАФЫ 6° Если е = а, f фЬ (например, пусть f £ рь] а, #[), то получается граф, изображенный на рис. 21— 6 и содержащий граф типа 1, что невозможно. 7°. Если е = а, f = b, то можно предположить, что g = d и h = c (в противном случае мы возвращаемся к одной из фигур, исключенных в п. 4° и п. 6°). Мыслимы две ситуации: если цепи графа С, соединяющие cd и ef, имеют более одной общей вершины, то мы получаем граф, изображенный на рис. 21— 7, который содержит граф типа 1, что невозможно; если же цепи С, соединяющие cd и ef, не имеют двух общих вершин, то - мы получаем граф, изображенный на рис. 21— 8, который содержит граф типа 2, ^7/ \ \ что опять невозможно. I \ \ Поскольку все мыслимые случаи рас- а=е - @ положения е и / рассмотрены, то описан- \ / Т ный выше граф G существовать не может. \ у 7 Теорема доказана. Теорема 2. Всякий плоский граф Рис. 21— 8. является 5-хроматическим. Теорема заведомо справедлива для плоских графов с 1, 2, 3, 4, 5 вершинами; допустим, что она верна для плоских графов с п— 1 вершинами, и докажем ее для произвольного плоского графа G с п вершинами. Действительно, в силу следствия 2, в G имеется вершина х, смежная с 0, 1, 2, 3, 4 или 5 вершинами. Подграф, получаемый удалением х, является 5-хроматическим; раскрасим его вершины пятью цветами: а, р, у, В, е. Вершину х легко окрасить всегда, кроме случая, когда она смежна с пятью различно окрашенными вершинами. В этом случае пусть a, b, с, d, е — пять смежных с х вершин (в порядке обхода вокруг х) и пусть а, р, у, 5, е— их цвета. Обозначим через Ga> р подграф, порожденный множеством вершин цвета а или цвета (3, и т. п. 1° Если а и с принадлежат различным компонентам связности графа Gat т, то в компоненте, содержащей а, перекрасим вершины цвета а в цвет у, и наоборот. Новая окраска совместима с графом G, а вершину х, которая окружена теперь вершинами с окраской у, р, у, о, е, можно окрасить в цвет а. 2° Если а н с принадлежат одной и той же компоненте графа Gat т, то вершины b и d нельзя соединить в графе Переставляя цвета р и 8 в той компоненте графа которая содержит вершину Ь, мы получим возможность окрасить х в цвет ф. Этот результат, по-видимому, может быть улучшен; так называемая гипотеза четырех красок состоит в следующем не дока-
ОСНОВНЫЕ СВОЙСТВА 235 занном до сих пор утверждении: всякий плоский граф является 4-хроматическим х). Гипотезу четырех красок можно сформулировать иначе, обратившись к понятию двойственности. Рассмотрим связный плоский топологический граф G без изолированных вершин; ему можно поставить в соответствие плоский топологический граф G* следующим образом. Здесь индукция носит локальный характер: для получения раскраски графа G из раскраски G' не надо перекрашивать тех вершин, которые не затрагиваются преобразованием G -> G' В случае четырех красок, вместо пяти, конкретные примеры показывают, что для получения раскраски графа G из раскраски графа G't отличающегося от G только в одном месте, требуется, вообще говоря, тотальное перекрашивание. В этом, видимо, заключается причина неизмеримо большей трудности проблемы четырех красок по сравнению с задачей пяти красок. Доказательство теоремы 2 в книге без необходимости использует тотальную индукцию и поэтому не способствует выявлению глубокой принципиальной разницы между случаями 4 и 5 красок. — Прим, перев. *) При доказательстве теоремы 2 индукцию по числу вершин графа G можно провести еще и так. [См., например, Д ы н к и н Е. Б. и Успенский В. А., Математические беседы, ГТТИ, 1952]. Пусть х смежна с пятью вершинами a, b, с, d, е\ удаляя х и отождествляя а с с, как показано на рисунке, получим граф G' с меньшим числом вершин, допускающий (в силу предположения индукции) раскраску 5 цветами; при этом для четырех вершин а = с, b, d, е будет использовано не более 4 красок, и в исходном графе можно окрасить х пятой краской.
236 ГЛ. 21. ПЛОСКИЕ ГРАФЫ Внутри каждой грани 5 графа G поместим вершину х* графа G*; каждому ребру и графа G отнесем ребро и* графа G*, соединяющее те вершины х* и у*, которые соответствуют граням s и t по обе стороны от ребра и. Определенный таким образом топологический граф G* является плоским (см. рис. 21— 9), связным и не имеет изолированных вершин; он называется двойственным для G. Заметим, что 1° Граф, двойственный для G*, есть G; цикломатические числа обоих графов одинаковы. 2° Каждой петле графа G отвечает висячее ребро графа G*, и наоборот. 3° Если G имеет точку сочленения, то G* тоже имеет такую точку }). 4° Если G имеет пары вершин, соединенных несколькими ребрами, то G* имеет вершины степени два (антиузлы). Пример. Рассмотрим плоскую транспортную сеть (неориентированную) G, каждое ребро и которой обладает пропускной способностью с(и)^>0 и у которой вход х0 и выход z расположены на одной горизонтали. Образуем двойственный граф G*, причем бесконечной грани графа G отнесем две различные вершины: нижней полуплоскости — вершину xj, верхней полуплоскости — вершину z\ Ребру и* (отвечающему и) приписываем длину Z(u*) = c(u). Рассмотрим теперь следующие задачи. Задача 1. В G найти разрез V с наименьшей пропускной способностью, то есть минимизировать С (V) = 2 с (V). v£V Задача 2. В G* найти кратчайший путь V* из хо в z*\ то есть минимизировать /(v*)= 2 /(v*). v* £ V* Задача 1 равносильна задаче о наибольшем потоке, а задача 2 — задаче о кратчайшем пути, и ясно, что для плоского графа эти две задачи сводятся одна к другой. Гипотеза четырех красок в двойственной форме гласит: грана плоского графа G можно окрасить четырьмя цветами так, чтобы никакие две смежные грани не были окрашены в один и тот же цвет. Желая фактически окрасить граф G, мы можем ограничиться случаем связного графа (так как ничто не мешает нам окрашивать 4) Взаимоотношения между связностью G и связностью G* были изучены Уитни [9].
ОСНОВНЫЕ СВОЙСТВА 237 каждую компоненту отдельно), а также считать G графом без сочленений. Можно предположить, что у графа нет вершин степени 0,1 или 2. Можно ограничиться рассмотрением однородных графов степени 3, ибо каждую вершину х степени > 3 можно на время раскрашивания покрыть новой гранью, достаточно малой и имеющей общее ребро с каждой из граней, соприкасающихся в х. Полученный граф будет однородным степени 3, без перешейков (так как он не имеет точек сочленения) и, в силу теоремы 5 (гл. 19), принадлежать хроматическому классу 4. Лемма. В плоском графе каждому ребру и придадим некоторую ориентацию и поставим в соответствие натуральное число к (и); для любой цепи р. и любого ребра и£[х положим тс (и) = — |— 'гс(и), если при движении по [х ребро и проходится в направлении его ориентации, и =— тс (и) в противоположном случае. Если край [х каждой грани удовлетворяет условию (и)=0 (mod. 4), «Ср- то граф является ^-хроматическим. Всегда можно предполагать граф связным; каждую вершину х пометим некоторым коэффициентом р(х), определяя эти коэффициенты шаг за шагом: для некоторой произвольно выбранной вершины х0 положим р(хо) = О; для еще не помеченной вершины у, смежной с уже помеченной вершиной х, находим р(у), образуя р(х)-\-п(х, у) в случае, если ребро ориентировано от х к у, или р(х) — тс(х, у), если ребро ориентировано от у к х, и добавляя или вычитая число, кратное четырем, с тем чтобы оставшееся число было 0 и ≪^3. Таким образом, функция р(х) может принимать только значения 0, 4-1, 4“2, Ч~3 и будет определена для всего графа (так как он связен); значение р(х) для каждой вершины х определится однозначно, ибо если при определении р(х) взяты два различных пути jx1 = [x1[xO’ и ^2= Р-2 [х0’ х1’ то Цикл |хх — |х2 будет суммой краев некоторых граней (в силу теоремы 1); значит 2 %(u) = 0 (mod. 4), или 2 1^(11)= 2 тс1ъ(и) (mod. 4). Придадим вершине х цвет 1 = р(х)\ тогда все вершины окажутся окрашенными четырьмя различными цветами, причем никакие две смежные вершины не будут окрашены в один и тот же цвет. Ч. И Т. Д.
238 ГЛ 21 ПЛОСКИЕ ГРАФЫ Теорема 3 (Тэт[7]). Пусть G — плоский однородный граф степени 3 без перешейков\ необходимое и достаточное условие возможности такого раскрашивания граней графа 4 цветами, при котором никакие две смежные грани не окрашиваются в одинаковый цвет, состоит в том, чтобы G принадлежал к хроматическому классу 3. 1° Если грани G можно окрасить четырьмя цветами а, р, у, 8, то пометим цифрой 1 ребра, разделяющие грани а и р или грани у и 8; цифрой 2 — ребра, разделяющие грани а и у или грани р и 6; цифрой 3 — ребра, разделяющие грани а и 8 или грани р и у. Два смежных ребра никогда не могут оказаться помеченными одной и той же цифрой (иначе имелись бы две смежные одинаково окрашенные грани); следовательно, граф G принадлежит хроматическому классу 3. 2° Если граф G принадлежит к хроматическому классу 3, то каждому ребру и* двойственного графа G* отнесем коэффициент тс (и*), равный 1, 2 или 3, смотря по тому, имеет ли ребро и цвет 1, 2 или 3. Как показывает исследование однородных графов (гл. 19), всегда можно ориентировать ребра в соответствии с условиями леммы. Тогда, в силу леммы, граф G* будет 4-хроматическим, и теорема доказана. Обобщение Предыдущие понятия можно повторить и обобщить, обратившись к более продвинутым топологическим теориям, выходящим за рамки настоящей книги г). Мы ограничимся лишь кратким очерком. Любой граф G можно представить в трехмерном пространстве так, чтобы никакие два ребра не пересекались; такое представление будем называть топологическим графом и обозначать снова через G. Если S — некоторая поверхность в пространстве R3 и если существует взаимно-однозначное и непрерывное в обе стороны отображение ≪з графа б в S, то, как известно, никакие два ребра в gG не пересекаются; по определению, gG есть S-топологический граф. В случае, когда S — плоскость, мы возвращаемся к понятию плоского motzo логического графа. Чтобы не затруднять интуитивного понимания, ограничимся здесь конечными, замкнутыми и ориентируемыми поверхностями2); для та- !) См., например, Lefschetz S., Introduction to Topology, Princeton University Press, Princeton, 1949. 2) Напомним, что топологическое пространство S есть поверхность, если каждая точка х С 5 обладает окрестностью, гомеоморфной внутренности круга; если все эти окрестности могут быть ориентированы когерентно, то поверхность S называется ориентируемой. Наконец, если S — компактное пространство, то говорят, что поверхность S замкнута] так, сфера является замкнутой поверхностью, плоскость — незамкнутой. Результаты, аналогичные упоминаемым здесь, можно установить и для неориентируемых поверхностей (см. [5]).
ОБОБЩЕНИЕ 239 кой поверхности S можно определить ее род g как наибольшее количество замкнутых попарно непересекающихся кривых, начерченных на поверхности и не разбивающих ее. Так, сфера имеет род 0, тор (автомобильная камера) — род 1 и т. д. Из общих теорем (см. [1]), следует, что каждый конечный граф можно представить на поверхности S достаточно большого рода; далее, S-топологическому графу G можно поставить в соответствие S-топологический граф G* точно так же, как был определен двойственный граф в плоском случае. Если y(G) означает хроматическое число графа G, то положим y(S) = max {y(G)/G является S-топологическим}; /(S) = max {n/полный граф порядка п является S-топологическим}. Очевидно, y' (S) у (S)!). Для поверхности S рода g положим ng= целой части ^48g +1) • Тогда £ = 0 (сфера) =фпг=4, g = \ (тор) =М=7- g=2 (крендель) =»^ = 8. g- = 3 и т. д. ... Как показал Хедвуд2), для поверхности S рода g > 0 (т. е. отличной от сферы) i(S)^ng. !) Рингель показал [11], что для любой замкнутой поверхности S (ориентируемой или неориентируемой) рода g =£ 0 имеет место равенство / (S) = у (S). — Прим, перев. 2) Доказательство см., например, в книге Гильберт Д. и Кон- Фо с с е н С., Наглядная геометрия, ГТТИ, 1951.
240 ГЛ. 21 ПЛОСКИЕ ГРАФЫ Обратимся теперь к числу у' (S). Рингель показал [6], что на поверхности 5 рода g > 0 ^ — 2 ≪/(£)≪ V Хедвуд высказал предположение, что всегда Y(S) = ng; эта гипотеза была проверена Хефтером (Heffter) для g=l, 2, 7 и Рин- гелем для g = 8, 9, а также для весьма большого количества других значений. Для тора Т, например, где g=l, имеем у'(Т) = 7, и полный граф с 7 вершинами можно поместить на торе, как показывает рис. 21 — 10; кроме того, у(7,)-^7 (вследствие формулы Хедвуда) и Т (7″) т' (Т) = 7, откуда окончательно у (Г) = 7 }). 1) Подробную библиографию по вопросам раскрашивания карт (и графов) можно найти в статье Кокстера [10].— Прим, перев.
Добавления
1. Об общей теории игр В главе 6 мы дали общее определение игры с полной информацией; если не ограничиваться рассмотрением только той информации, которую дает игрокам положение игры, то определение игры усложнится, но граф, задаваемый правилом игры, может по-прежнему изучаться на основе тех же общих принципов. Для двух игроков (Л) и (В) определена игра, если заданы: 1° Абстрактное множество X, элементы которого представляют собой положения игры. 2° Отображение Г множества X в себя, называемое правилом игры. 3° Разбиение (Хо, ХА, Хв) множества X; при этом Хо= {х/Гх = 0}; говорят, что в любом положении из ХА ход (или право играть) принадлежит игроку (Л), а в любом положении из Хв ход принадлежит игроку (В). 4° Разбиение 2l=(Uv U2, ...) множества ХА и разбиение 7° = (Ур V2, ...) множества Хв, U называется схемой информации игрока (Л), U— множеством информации игрока (Л); предполагается, что мощности множеств Гх при всех положениях х из одного и того же множества информации одинаковы. 5° Для каждого множества информации U— семейство таких однозначных отображений U в X, что (1) =$vhx^vkx, (2) х £ U {^х//г £ Ни} = Гх; если у = vhx, то говорят, что h есть индекс положения у относительно х. 6° Для множества Z=[x/I> гх=0]— основной вероятностный закон 7г0 = {ic0 {z)fz £ Z}. 7° Две числовые функции /(х) и g(x\ определенные на X и называемые функциями предпочтения игроков (Л) и (В).
244 ДОБАВЛЕНИЯ Партия протекает следующим образом: начальное положение выбирается в Z наудачу, в соответствии с известным вероятностным законом тй0; если множество информации U, содержащее х0, принадлежит U, то игрок (Д) будет знать не положение х0, а только содержащее его множество информации U. Имеем Гх0 = {v/^o/h 6 Нц\ - Тогда игрок (Д) выбирает в Ни некоторый индекс Л, определяя тем самым положение игры x1 = v/zx0. Если хг£Хв, то игрок (В), не знающий всего происходившего до этого и информированный лишь о том, что положение игры принадлежит множеству V£ 7°, выбирает индекс k в Hv; это приводит к новому положению игры x2 = vftx1; и т. д. Игра окончена, если положение х таково, что Гх = 0. Стратегией а игрока (Д) называется однозначное отображение, относящее каждому множеству U из U такой индекс h — (jU, что множество этих индексов обозначим через говорят, что (Д) придерживается стратегии о, если каждый раз, когда положение игры принадлежит множеству U ^22, он обязательно выбирает индекс h = ≪5U. Если два игрока придерживаются соответственно стратегий а и т, то множество положений, получающихся из исходного х0, полностью определено, и это множество мы обозначим через (х0; о, т); выигрыш игрока (Д), по определению, есть /(х0; о. t) = sup {/(х)/х£(х0; а, т)}. Ожидание выигрыша игрока (Д) есть F(c, х) = 2 а, т). Точно так же ожидание выигрыша игрока (В) есть G(c, т)= 2 ^o{z)g{z-, а, х). zez Цель каждого игрока состоит в выборе такой стратегии, при которой ожидание его выигрыша будет наибольшим, с учетом возможностей выбора у противника. Как и в главе 6, назовем пару (о0, т0) точкой равновесия, если F ^о) ≪ F (°о> то) (° € 2д)> О (≪з0, т)≪ О (а0, т0) (т£ 2J- Если игроки придерживаются стратегий, представляемых парой (а0, т0), то ясно, что никому из них не выгодно независимо от другого менять стратегию.
ОБЩАЯ ТЕОРИЯ ИГР 245 Ситуация, в которой оба игрока (Л) и (В) выбирают одновременно точки о и т и в которой игроку (Л) приписывается выигрыш Г (о, т), а игроку (В) — выигрыш G(o, т), тоже есть игра, называемая нормальной формой первоначальной игры. Пример 1. Каждая игра с полной информацией есть игра, схемой информации которой служит дискретное разбиение U = {{x\lx^XA). Таковы, например, шашки, шахматы и др. Пример 2. Игра в бридж. Представим себе партию в бридж после объявления: „Юг* „раскрывает карты*. Если (Л) означает лагерь Север — Юг, (В)— лагерь Восток — Запад, то получается игра двух лиц; будучи рассматриваем как один игрок, (В) тем не менее состоит из двух агентов, не передающих друг другу сведений, но имеющих общую цель. Z есть множество различных возможных „данных*. Обозначим через С, Ю, В, 3 множества карт, находящихся в данный момент в соответственных руках, через R— множество карт, уже сброшенных, с указанием, кому они принадлежали и в какую взятку входили, через Т— множество карт, разложенных на столе во время очередной взятки, с указанием, кому они принадлежат (если это множество пусто, то Т указывает, чей ход). Положение игры х будет определяться множествами С, Ю, В, 3 и „направленными* множествами R и Т. Имеем / (х) = (R), g (х) = h2 (/?), где и h2 — возрастающие функции, зависящие от применяемой системы обозначений. Например, для игрока Запад множеством информации UQ, содержащим положение игры Xq = (Cq, Юо, Bq, 3q, Rq, Tq), будет множество положений (С, Ю, В, 3, R, Т), для которого 3 = 3., ю=ю0, ВцС = ВоцСо, т=т., R = R0. Пример 3. Игры с совершенной информацией об игроке (В) Говорят, что некоторый игрок имеет совершенную информацию об игроке (В), если в данный момент игры ему известны множества информации, с которыми сталкивался игрок (5) в прошлом, а также индексы, которые он выбирал.
246 ДОБАВЛЕНИЯ Говорят, что игра является напоминанием для (А), если игрок (А) имеет совершенную информацию о самом себе. Игра в бридж есть напоминание для Севера — Юга, но не для Востока — Запада. Комбинированные стратегии Чтобы исключить роль хитрости при принятии решения, Э. Борель ввел понятие комбинированной стратегии. Для определенности предположим, что стратегии игрока (А) образуют конечное множество 2д = {о1, о2, . .о″2}, и рассмотрим некоторое распределение вероятностей s={sk/k=l, 2, т\ в 2а; имеем: (&=1, 2, т), т 2 s^ = l; £ = 1 по определению, вектор s = (s1, s2, sm) есть комбинированная стратегия игрока (Д). Простая стратегия, такая, как ak, представляет собой комбинированную стратегию вида (0, 0 . О, 1, О, .... 0). Говорят, что игрок (Д) придерживается комбинированной стратегии s = (s1, s2, ..., sm), если он выбирает наудачу простую стратегию в 2а» приписывая стратегии ak вероятность sk. Теперь ясно, что такое поведение игрока (Д) полностью сводит на нет проницательность противника, ибо наилучшее средство помешать игроку (Д) состоит в том, чтобы самому не считаться с тем, что он собирался делать до принятия решения. Как мы увидим, имеются и другие, еще более важные преимущества. Если (Д) и (В) придерживаются соответственно комбинированных стратегий s и t, то ожидание выигрыша игрока (Д) будет F(s, t) = 2 sltjF(al, ту). Обозначая через S и Т множества комбинированных стратегий обоих игроков, можно доказать основные результаты: Теорема Фон Неймана — Нэша. В комбинированных стратегиях всегда существует, точка равновесия (s0, t0): F(s, toXF(so, t0) (s£S), G(s0, t)≪G(s0, t0) (t£T)- Теорема Куна — Бёрча. Если игрок (Д) располагает совершенной информацией о своем противнике, то существует точка равновесия вида (о0, t0), где о0 t0£ т.
ОБЩАЯ ТЕОРИЯ ИГР 247 Наибольшее ожидание выигрыша для игрока (Л), которое можно гарантировать при комбинированной стратегии, есть а0 = max min F (s, т). s т При простой же стратегии можно гарантировать aj = max min F (о, т). ст т Так как 2^==)‘^’ то ао^ар причем имеется много случаев, когда а0>а}; поэтому выбор комбинированной стратегии позволяет гарантировать больше, чем выбор простой стратегии. Более того, никакой способ игры не позволяет гарантировать больше, чем позволяет гарантировать комбинированная стратегия (как показывает теорема Фон Неймана — Нэша при G = — F). Пример (Кун). Рассмотрим игру, определяемую рис. 1: граф (X, Г) здесь представляет собой прадерево, /(х)=— g(x) и значе- ния функции /(х) в различных концевых вершинах равны 0, 1, — 1,2 и — 2, как показано на рисунке [значение /(х) в остальных вершинах можно считать равным — сю, и это не помешает, так как игра конечна]. Принимаем Л=1 или 2‘, смотря по тому, идем мы вправо или влево. Основной вероятностный закон есть rc0 = |-i, у|,а выбираемая наудачу с одной и той же вероятностью вершина есть zx или z2. Конкретно эта игра описывается следующим образом. Игрок (Д) состоит из двух агентов (Д') и (Д″), не имеющих права непосредственно сообщаться, а игрок (В) представляет собой одного-един- ственного агента. Две карты, на одной из которых написано „старшая″,
248 ДОБАВЛЕНИЯ а на другой— „младшая″, наудачу распределяются между агентом (А') и агентом (В); агент, обладающий старшей картой, получает один франк от обладателя младшей карты и может либо продолжить, либо прекратить игру. Если игра продолжается, то (А″), не зная данных, может либо взять карту у {А'), либо взять карту у (В), а ему отдать карту, принадлежавшую {А'). Снова владелец старшей карты получает один франк от обладателя младшей карты. Ожидание выигрыша игрока (Л) есть т)+4-/Г^2’ с’ Значения этой функции для различных возможных стратегий даны в следующей таблице: (В) Ф t1V=1 т2У=2 M)-> JU’ = 1; O‘t/″ = 1 0 1 2 JU' = 1; a2t/″ = 2 0 a3t/' = 2; JU″ - 1 1 ″2 0 a4£7/ = 2; JU″ = 2 1 2 0 Если игрок (Л) придерживается простой стратегии, то он должен выбирать о2 или о3, гарантирующие ему нулевой выигрыш ^в то время как а1 и а4 гарантируют только — у). Допустим теперь, что он придерживается комбинированной стратегии so = ^O, у, , о) , т. е. что он механически выбирает между о2 и а3 с одинаковыми вероят- 1 А х ностями; это гарантирует вместо 0, ибо F(SO, х1)=0 + 0+44+0=4’ F(s0. т2) = О+4-4 + ° + О = Т- Нельзя гарантировать больше, так как если (В) будет придерживаться стратегии t0 = , то ожидаемый выигрыш окажется
ОБЩАЯ ТЕОРИЯ ИГР 249 Замечание. Определение наилучшей стратегии (комбинированной) есть не что иное, как линейная программа. В самом деле, игрок (Д) может гарантировать по меньшей мере а тогда и только тогда, когда вектор s = (s1, s2, .... sm) таков, что ' sL О (/=1,2,..., т), т ■ ^Sl=\, I Z=1 | F(s, (J=l, 2, n). Если положить F(cj\ т7) = а*, ^- — х{ и допустить, что а > О, то получим ( (/ = 1, 2, . . ., ni), т 2 1 (j = l, 2, ..п). i = 1 J Ищется наибольшее число а, для которого эти соотношения совместны; задача сводится к нахождению таких xv что xt 0 (/=1,2,..., т), 2 ajxi > 1 (/ = 1, 2, .. ., /г), т 2 xi имеет наименьшее значение, /=1
II. О транспортных задачах „Транспортной задачей″ называют всякую задачу, которая аналитически выражается следующим образом: даны целые числа az, bp clj и d} (где i^m, j n); ищутся такие целые числа ё}, что ' т 1 = 1 j=i > 0 ≪ ≪ cj (z ≪ т, j ≪ га). т п (2) 2 2 dj^j имеет свое наибольшее значение. i=ij = i Задачи такого типа встречаются особенно часто при планировании поставок, распределении товаров между потребителями и т. д.» а также в вопросах, имеющих более теоретический интерес. Транспортную задачу приписывали последовательно Хичкоку [7], который сформулировал ее в 1941 году; Купмансу [9], независимо изучавшему ее несколькими годами позднее; Л. В. Канторовичу [8], который исследовал непрерывный случай. В действительности Монж [11] сформулировал ее еще в 1781 году, и его исследования, весьма гео- метричные, были продолжены в 1928 году Аппелем [1]. Замечание 1. Если система вида (1) и (2) имеет решение ё}, то, очевидно, (3) «/>0, ^>0, су>0. Кроме того, складывая все ё}, получаем п т (4) ]=1 1=1 Наконец, привлечем вспомогательную транспортную сеть с вершинами х2, ..., хт, ур у2, ..., ул, х0, г, у которой вход х0
ТРАНСПОРТНЫЕ ЗАДАЧИ 251 соединен с каждой точкой xt дугой пропускной способности ait каждая точка xt соединена с каждой точкой уу дугой способности cj9 а каждая точка уу соединена с выходом z дугой способности Если задача разрешима, то в силу теоремы Гейла (гл. 8) (5) У maxJa,, 2 (Уо:{1, 2 . п}). I Ш 7 J Ш 1 Условия (3), (4), (5), будучи необходимыми, в то же время достаточны для существования решения задачи. Замечание 2. Можно считать, что все действительно, в противном случае, полагая h = — min dlj > О, i, j е] = dj — |— /г > 0, будем иметь 2 2 V = 5 S dj + h 2 O'l- i j i j i Новая задача состоит в том, чтобы максимизировать Это замечание показывает, что замена требования максимизации требованием минимизации не меняет характера задачи. Пример 1 (Хичкок). Требуется назначить маршруты нефтеналивных судов, зная, что имеется т портов погрузки xv х2 . хт и п портов разгрузки ур у2, ..., уп; допустим, что стоимость рейса из xL в уу составляет d} и что порт погрузки xt располагает а^ судами, а порт разгрузки уу нуждается в судах. Если мы обозначим через В/ число судов, которое следует отправить из порта в порт уу, и будем стараться минимизировать полную стоимость 2^Л то получим аналитическое выражение, указан- I, У ное выше (где с* = -|- оо). Пример 2. Задача о котловане и насыпи (Монж). Даны две поверхности S и 7; на первой поверхности 5 распределены массы, которые нужно перенести на вторую поверхность Т таким образом, чтобы полная стоимость транспортировки была наименьшей. Полагая £у = 1, когда единица массы переносится из точки х, £ S в точку уу£7, и обозначая через dj расстояние от xf до yf, мы придем к задаче минимизации выражения i J
■252 ДОБАВЛЕНИЯ (В действительности, ввиду непрерывного характера задачи, суммирование надо заменить интегрированием.) Чисто геометрическими рассуждениями легко показать, что: 1° Оптимальная траектория единицы массы из x^S в у^Т есть отрезок прямой xty^ причем никакие два таких отрезка не пересекаются в точках, отличных от их концов. 2° Отрезки ху] образуют оптимальную систему, если существует выпуклая поверхность 7?, для которой все отрезки xty^ служат нормалями. Аналогичная задача возникает, когда некоторое количество вещества надо перенести „по чайной ложке″ из одного хранилища в другое. Пример 3. Оптимальное назначение лиц на должности (Вото и Орден [13]). Имеется п рабочих хг, х2, . .., хп, которых надо распределить по п машинам yv у2, • • • • Уп- Производительность рабочего xt на машине у. выражается числом dj, которое легко находится посредством испытаний. Положим Еу = 1, если предполагается прикрепить рабочего xL к машине у/, и £; = О в противном случае; задача состоит в максимизации полной производительности при условиях G У п п S^ = i. 2^ = 1. /=1 1=1 Значит, мы имеем здесь дело с транспортной задачей. Пример 4. Распределение товара по транспортной сети (Орден [12]). Рассмотрим граф (ориентированный) с п вершинами х2, . . ., Хп И пропускными способностями clj = c(x., Х^ его дуг, а также некоторое целое число р п\ допустим, что в каждой вершине х^ где i р, имеется в избытке некоторое количество at товара, а в каждой вершине xL, где Z > р, имеется потребность размера bi в этом товаре. Допустим еще, что 2 «/= 2 bj = h. Кр j >р Если (х-, Xj) — дуга графа, то можно перевезти из xt в х. некоторое количество товара, причем стоимость перевозки единицы товара равна dlj. Требуется удовлетворить все потребности, миними- п п зируя полную стоимость перевозок 2 2 t = i j=i
ТРАНСПОРТНЫЕ ЗАДАЧИ 253 Для приведения этой задачи такие числа чтобы к каноническому виду будем искать = при i^j, (xt. Xj)£U; = 0 при (xL, Xj)(£ U; = Й при I = j. 1 1 Эти числа rf. удовлетворяют условиям: (I) n 2 -- Z = 1 J = fi (./ = 1,2,... , /2), п j=l = h + a{ (i ≪ p), 7 = 1 7 = h^bt p), 0≪^. ≪ clj (i J), ≪ h (i = J). n n Требуется минимизировать 2 5 гДе 0 при i = j\ eiJ = при Z + j, (.Xi- xj)£ U; -1-00 1 при i j > (xt, Мы получили искомую каноническую форму. Пример 5. Задача о складе (Кан [2]). Рассмотрим наличные количества некоторого товара на складе в различные моменты времени 1, 2, . п и допустим, что известны: k — полная вместимость склада; Zo— начальное количество хранящегося товара; pt — стоимость продажи (за единицу) во время Z; qt — стоимость покупки (за единицу) во время Z; rL — стоимость хранения (за единицу) во время I. Будем в течение промежутка времени от 1 до п производить куплю и продажу товара так, чтобы в конце количество его оказалось равным первоначальному tQ. При этом ищутся (для каждого Z): az — количество товара, проданное во время Z; — количество товара, приобретенное во время Z;
254 ДОБАВЛЕНИЯ — количество хранящегося товара после продажи старого; 8Z — количество хранящегося товара после покупки нового. п Задача состоит в максимизации полной прибыли 2 (Д*а/— при условиях r=1 (I) a/+i Т/+1— 0 (г — 1» 2, .... п 1); ат Т1 — ^о» ъ-Н, — ^ = о ≪z = 1> 2 . О; 0 af сю; о р, сю; о≪С 7; о
ТРАНСПОРТНЫЕ ЗАДАЧИ 255 Эта задача сразу сводится к задаче распределения товара по транспортной сети (пример 4); при п = 4 соответствующая сеть и потоки по ее дугам показаны на рис. 1; если товар нормирован, то полное количество, которое можно купить во время п, есть данное число г0, и мы получаем граф, изображенный на рис. 2. Венгерский метод Как читатель смог уже увидеть из условий (1) и (2), транспортная задача является частным случаем „линейной программыкак таковую, ее можно решить при помощи симплекс-метода (Данциг [3]), а теория графов дает заметные упрощения обычного процесса (см. [6]). Мы изложим здесь вкратце совсем иной метод, непосредственно опирающийся на теорию транспортных сетей (гл. 8), который оказывается значительно эффективнее симплекс-метода. Этот метод, развитый вначале Куном [10], был затем обобщен Фордом и Фалкер- соном [5], Фладом [4] и др. § 1. Здесь нет необходимости обращаться к аналитическим методам, и мы, не уменьшая надежности, останемся на более интуитивной точке зрения теории графов. Рассмотрим некоторую транспортную сеть G с двумя непересекающимися множествами вершин Х= {хр х2, .... хт} и Y = у2, ... ..., уд}. Соединим вход х0 с каждой из вершин xt дугой пропускной способности с (x0, xf) = каждую вершину соединим с выходом z дугой пропускной способности с(ур z) = bp наконец, соединим каждую вершину хь с каждой вершиной дугой пропускной способности c(xz, = Ищется поток ср (и), насыщающий выходные дуги, т. е. такой, что 0 ≪ ср (zz) О (« Е ^)’ ≪Р(ХО. = (г≪т), ? (У/> z) = bj (j ≪ в). Работа этого потока, по определению, равна т п rf[≪p]=S S ≪*/?(*/> У;). i=lj=l Общая транспортная задача как она была определена выше, состоит в нахождении потопа ср, насыщающего выходные дуги и производящего наибольшую работу. Наряду с этой основной задачей мы рассмотрим двойственную задачу, которая ставится следующим образом: назовем бюджетом функцию у (zz) 0, заданную на дугах транспортной сети G и такую, что (2) 7(х0, + У/)-Ьт (У/. j ≪«)•
256 ДОБАВЛЕНИЯ у(д) можно толковать как денежную сумму, которую надо уплатить за все транспортные средства при перевозке по дуге и\ транспорт, курсирующий по пути [x0, xz, у7-, z], оценивается наибольшей полной стоимостью работы dlj, которая при этом будет совершена. Положим для краткости Т(ХО, xz) = az, т(уу. *) = ₽/. У (Хр уу) = у). Способность бюджета у определим как т т п п с [у] = 2 + 2 Д С; У; + Д bfij- Поставим задачу найти бюджет у с наименьшей способностью. Лемма. Для любого бюджета y и любого потока ср d 1≪р] ≪ с [у]. В самом деле, можно написать dty ≪ М/ + У/?} + Р/Р/, откуда т. п т п т п d [≪pi = 2 2 ≪ 2 ai2 +2 2 y)?j + i=lj=l J J i=l j = l J i=\j=\ J J n tn m m n n +2 P, 2 ≪ 2 aiai+22 cjj) + 2 bj$j=c [j. / = 1 /=1 1 i = 1 Mj-l 1 } y = l что и требовалось. В силу этой леммы, если существуют поток ср и бюджет y> УДО- влетворяющие условию d [ср] = с р[], то ср — искомый поток. § 2. Для упрощения выкладок допустим, что все с1, бесконечны; тогда все Yy равны нулю. Двойственная задача состоит теперь в нахождении таких чисел az^>0 и ру^О, что az + Py>rf/ (/=1, 2, . 7=1, 2, ..., п). Наряду с основной и двойственной задачами рассмотрим вспомогательную задачу, которая ставится следующим образом: каждому бюджету y отнесем вспомогательную транспортную сеть G.(, получаемую из G удалением тех дуг (xz, уу), для которых az ру > d j. Требуется теперь найти наибольший поток по транспортной сети G(.
ТРАНСПОРТНЫЕ ЗАДАЧИ 257 Теорема 1. Если при бюджете у граф G.( допускает поток ср, насыщающий выходные дуги, то у— бюджет с наименьшей способностью, а ср — поток по G, производящий наибольшую работу. Очевидно, ср есть поток по сети G, и он насыщает выходные дуги G. Его работа равна _ __ т п т п ^[?]= 2 ^;?/ = 2 2 (а/н-Ру) w = 2 ^а/+2 ^уРу =с [у]- Значит, в силу леммы ср является потоком по G, производящим наибольшую работу, а у— бюджетом с наименьшей способностью. Теорема 2. Если при бюджете у сеть G.{ не допускает потока, насыщающего ее выходные дуги, то можно найти новый бюджет у' со способностью с [у'] ≪ с [у]. Действительно, пусть ср — наибольший поток, не насыщающий выходных дуг сети в силу теоремы Форда и Фалкерсона значение этого потока равно пропускной способности того разреза t/д, который он насыщает. Пусть Д = {Хр Х2’ •••’ *г’ Ур 5^2’ •••’ %}• Поскольку Uа — разрез с наименьшей пропускной способностью, он не содержит дуг пропускной способности оо; значит, из I > г. j s следует, что (xz, уу-) не является дугой графа G^ т. е. что ai + P; > dlj. Далее, можно считать, что все az > 0 или все р;. > 0, ибо в противном случае для некоторой пары (Z, у) имело бы место равенство dlj = az + ₽; = 0. Пусть, например, > 0 (/==1,2,..., т). Положим [ az при / ≪; г, = I 1 [ — 1 при I > г; , / при J ≪ S, ~ I ₽/ + 1 При j > S. Покажем, что величины а' и р' образуют бюджет у'; если I > г, j $, то az -f- ру > djt значит, а* Н~ Ру
258 ДОБАВЛЕНИЯ Кроме того, если I > г, то а- > 0, поэтому а/ > 0. Способность нового бюджета равна с I/] = 2 + 2 = с [у] 2 ai~\~ i fy- / = 1 ; = 1 J J i = r+l j=s+l J Отсюда c hl — c [Tz] = 2 “t — ( 2 at + 2 M = 2 ai — ≪Рг > 0. Z = 1 \Z = 1 7=5+1 J 1 = 1 т. e. способность нового бюджета меньше, чем первоначального. Ч. И Т. Д Алгорифм для нахождения потока, производящего наибольшую работу, можно теперь описать так: отправляясь от бюджета у, определяемого условиями az = max dj, i = max (d) — az), Ту = 0, ищем наибольший поток по сети G . Если этот поток не насыщает выходных дуг, то определяем новый бюджет у' и повторяем все сначала; если же этот поток насыщает выходные дуги, то он и дает решение задачи. § 3. Если не предполагать более, что все с1. бесконечны, то надо будет учитывать числа yj. и всегда можно считать Ту = max {О, dlj — a; — fy}. Надо поэтому рассмотреть три случая: 1° т}=0. +=a(+p; (т. е. (I, 2° Ту = °> d'≪a. + py (яг. е. (I, J)£Q); 3° Ту > °- ^у=а;+₽у + Ту (т. е. (i, J)£R). Определим, как прежде, транспортную сеть О.( с теми же дугами, что и G, но обладающими теперь пропускными способностями: az = а,-— 2 О' (г=1, 2, .... m), bj = bi~ 2 Cj (y=l. 2 . n), ;/((,/) e# -/ = I cij ПРИ (z> ■/) € p> C] ( 0 при (/, y)C Q U R-
ТРАНСПОРТНЫЕ ЗАДАЧИ 259 Теорема 1'. Если при бюджете у сеть G.( допускает поток ср, насыщающий все выходные дуги, то у — бюджет с наименьшей способностью’, кроме того, для сети G поток ср, производящий наибольшую работу, определится следующим образом’. при ≪р = ) t [ Cj при (f, J)£R. В самом деле, . tn п d [?] = 2 dj -|- 2 djCj = 2 2 (ai Ру) ~Ь 2 dljClj =■ (Л/)ё^и≪3 (t.J)iR 1=1 j=i = 2«а+2₽Л+ 2 djCj=c[^]— 2 а;. 2 cj— 1 = 1 7=1 (!,/)€■'? ≪=1 — 2 P; 2 cj 2 T/C/ + 2 (az + P; +т;) с} = c [yl- 7=1 Значит, d [ср] = с [у], и в силу леммы ср — искомый поток. Теорема 2Z. Если при бюджете у сеть G^ не допускает потока ср, насыщающего выходные дуги, то можно найти новый бюджет со способностью с [yz] ≪ с [у]. Действительно, пусть ср — наибольший поток по G^\ согласно предположению, он не насыщает выходных дуг. Рассмотрим такое множество 4= {хР х2 . Хр Ур у2> . . Ур z}. что т c{Ua) = 4(z ≪ 2 «р Z = 1 Можно считать, как и в теореме 2, что все az > 0. Положим теперь при при при при I I j j > r\ S, > при I ≪ г, j > 5, (/, /)£ R, при i > г, y≪s, (Z, У)С^иЛ в остальных случаях. Сперва покажем, что новые числа опять определяют некоторый бюджет; имеем а,Д>0, Р; 0, yz) 0. Чтобы проверить, что значение az + Py + — d} остается 0, изучим с помощью таблицы 1 изменение А этой величины.
260 ДОБАВЛЕНИЯ Таблица 1 р i ≪г J ≪8 р i ≪ г / > 5 р 1 > г j ≪s р i > г -J > s Q 1 ≪ г j ≪ 5 Q 1 ≪ г j> S Q 1 > г j ≪s Q l > г i > 5 R I ≪ r j ≪ s R i^r i > s R I > r i ≪s R j > s Aotz- 0 0 — 1 — 1 0 0 — 1 — 1 0 0 — 1 — 1 0 +1 0 + 1 0 +1 0 + 1 0 + 1 0 + 1 0 0 +1 0 0 0 0 0 0 — 1 + 1 0 д = 0 +1 0 0 0 +1 — 1 0 0 0 0 0 Единственный случай, когда Д= — 1, нас не затруднит, ибо при (Z, J)£Q имеем ai + ₽; + lj — dj > °- Теперь убедимся, что способность бюджета уменьшилась; именно, с п'] = S «X + 5 bft'} + 2 cfa'J = i j ij =с [у] — 2 + 2 2 + 2 Ч- 2 с/» I > г j > s i ≪r J i >r i>r j>s j≪S j≪5 RPR или, окончательно, с [у'] — с [у] = — 2 ai + 2 + 2 cj — 2 ai + c (^л) ≪ 0. Z>r j>s 1>т i j≪s Теорема полностью доказана. Замечание. Если даны числа с″.1 с'* >-0, то можно обобщить задачу, налагая условия: c'j c″j & j /г). Мы приходим к классической транспортной задаче для вспомогательной сети О, определенной в главе 8 (стр. 93); во всех случаях процесс, который следует осуществлять, будет тем же, что и здесь (стр. 258).
III. Об использовании понятия потенциала в транспортных сетях Зададим связный граф G = (X, U) и для каждой вершины х£Х зададим целое число q(x) (оно может быть и отрицательным), которое назовем избытком в верщине х. Будем говорить, что функция ср(«), определенная на всех дугах u£U, представляет собой поток, совместимый с избытками q(x), если 1° ?(^)>0 (u£U), 2° 2 ?(«)— 2 ?(«)=?(*) (х£Х). и^и+ u£U~ (В транспортных сетях, рассмотренных в главе 8, избытки равны нулю везде, кроме входа х0 и выхода z, где они неизвестны.) Если |х = (и1, zz2, . . .) — некоторый цикл графа, то обозначим через У'([1) множество дуг ji, направленных в сторону обхода цикла, а через V/Z([i)— множество дуг р. противоположного направления. Функция тс(zz), определенная на всех дугах u^G, называется разностью потенциалов, если для любого цикла имеет место (1) 2 и(^)— 2 ≪гс(я) = 0. u£V″(u) Замечание 1. Если соотношение (1) выполнено для всех циклов некоторой фундаментальной базы, то оно выполняется и для любого цикла графа. Замечание 2. Если существует разность потенциалов тс(«), то на X можно определить такую функцию р(х), что для каждой дуги и = (х, у) будет (2) k(zz) = u(x, у) = р(х) — р(у). В самом деле, достаточно в произвольно выбранной вершине х^Х положить р(хо) = О, затем определить значение р(х) для всех вершин х, смежных с х$, потом для вершин, смежных с рассмотренными, и т. д. Так как граф связен, р(х) определится шаг за шагом для всего X. В силу (1) полученное значение в каждой вершине х будет единственным.
262 ДОБАВЛЕНИЯ Обратно, если р(х)— функция, определенная на X, то, очевидно, и(х, у) = р(х)— р(у) есть разность потенциалов. Функция р(х) называется потенциальной функцией графа. В большинстве задач, которых мы здесь коснемся, задается функция г (zz), определенная на каждой из дуг u^U и называемая сопротивлением этой дуги; функция с (и) = -- , по определению, есть проводимость дуги и. Задача Дирихле. В данном графе определить поток ср, совместимый с заданными избытками и такой, чтобы u(zz) = = г («) ср (rz) являлась разностью потенциалов. Задача Дирихле — Неймана. В данном графе определить поток ср, для которого к (и) = г (и) ср (zz) есть разность потенциалов, если в некоторых вершинах х заданы избытки q(x), а в остальных вершинах — потенциал р х). Эти задачи первоначально возникли при изучении электрических цепей, но их можно поставить также во многих областях чистой математики или в исследовании операций. Поэтому мы считаем нужным привести здесь несколько простых и легко приложимых результатов. Пример 1. Разбиение прямоугольника на квадраты. Данный прямоугольник требуется разбить на п квадратов, из которых никакие два не обладают одинаковым размером. Прямоугольник, допускающий такое разбиение, назовем совершенным прямоугольником порядка п. Долгое время считалось, что совершенных прямоугольников не существует; первый пример был построен в 1925 г. Мороном
ПОНЯТИЕ ПОТЕНЦИАЛА 263 (Moron), а общая теория намечена Спрагом [6] и далее Бруксом, Смитом, Стоуном и Таттом [2]. Заметим, что с каждым совершенным прямоугольником можно сопоставить, как показано на рис. 1 и 2, некоторый граф G (вершинами которого служат горизонтальные стороны квадратов). Этот граф обладает замечательными свойствами: он плоский, связный и не имеет точек сочленения; кроме того, на G существуют поток cp(zz) и разность потенциалов п (zz) = ср (zz), причем значения ср на разных дугах различны. Нахождение совершенного прямоугольника порядка п сводится к отысканию в полном графе с k вершинами такого частичного Рис. 2. графа, для которого задача Дирихле с сопротивлением r(zz)=l имеет решение с попарно различными значениями координат. При п ≪ 9 совершенных прямоугольников порядка п не существует; при п — 9 имеется ровно два таких прямоугольника; они изображены на рис. 1 и 2. Пример 2 (экономика). Рассмотрим следующую упрощенную экономическую модель: пусть точки изображают промышленные предприятия х2, . . ., xk и виды продукции ур у2, •••’ W если предприятие xz использует продукты и у2 для производства продуктов у3 и у4, то чертим дуги: (Уг (у2> хД (Хр Уз), (Хр у4). Если (у;., х() £ U, то проводимость этой дуги будет cj ≪ 0, где | с'. | — количество продукта уу, потребляемое предприятием xz, когда интенсивность работы последнего равна единице; если же (xz, уу)£ U, то проводимость будет > 0, где — количество продукта у;-, производимого предприятием xt при единичной интенсивности работы. Для каждого j исходный запас продукта уу равен ay, а количество этого продукта, которое требуется получить, равно
264 ДОБАВЛЕНИЯ с какой интенсивностью должны работать предприятия, чтобы добиться этого результата? Положим q (У/) = — ₽у> ^(у.) = о. Если существует поток ср, удовлетворяющий этим условиям при проводимостях с1., то p(xz) выражает искомую интенсивность для xt. Если u = (yj, x^^U, то количество продукта уу., потребляемого предприятием xL, будет ? (уг хд=р (х.) (- cj)=cij [р (ъ) ~ р (*≪)]• Если (xz, уу.)££/, то количество продукта уу., изготовляемого предприятием xt, будет ? Iхг Уй = р (хд cij = clj ИО - р (ОЬ Мы пришли, таким образом, к задаче Дирихле — Неймана. О, I — 1, Мы используем где с Поэтому (1) п = S*p, q = $?, ср = Сте* для дуг, где дуги Uj\ Р≪2 . РП)> • • • ’ Sn)- Задача Дирихле с сопротивлениями г(и)^0 Положим для простоты г(И]) = Гр c(Uj)=Cj, р{х^=рр q(xj) = qi, cp(rzp = сру, тс (zzy) = теу; рассмотрим векторы р = (рр q=(?i. ?2 . Ф = (?р ?2- •••> и Будем пользоваться матрицей инциденций S = (sj) если xL не является граничной точкой если xz есть начало дуги иу, если xz. есть конец дуги и^. также диагональную матрицу С = ( 0 при I Ф j, Су при I = j. Если Uj — (x}> х2) — дуга графа, то можно написать 1Ty = 1t(ZZ7) = p(Xi) — р(х2)= = Р)> qt = q (.xt) = S «j? («/) = ≪si’ ?)•
ПОНЯТИЕ ПОТЕНЦИАЛА 265 Теорема 1. Задача Дирихле с сопротивлениями г(и)^0 имеет решение ф, притом единственное. 1° Единственность. Пусть ср и у'— два потока, удовлетворяющие условиям задачи; потоку ср' соответствуют избыток qz, разность потенциалов я' и потенциальная функция pz; имеем qz = q, откуда 2 с. (к. -к;.)2= 2 (^. -*;.)=2 (?у -≪?;) [ 2 (л -/ц]= =2 (л - X) [2 4 (ъ - = 2 (л - Х-) («л — ^)=о. Так как с^ > 0 при всех /, то t: = tcz и, следовательно, ≪¥> = ¥z- 2° Существование. Задача состоит в следующем: дан вектор q = (^p q2> • qny, ищется такой вектор р = (рр р2, . . ., рп), чтобы q = Sep = SC it = SCS*p. Эта система п линейных уравнений с п неизвестными такова, что ее решение, если оно существует, единственно; значит, разрешимость имеет место тогда и только тогда, когда Det (SCS*) Д= 0. Последнее же соотношение непосредственно вытекает из теоремы Ольги Таусски об определителях [7]Д. В задаче Дирихле — Неймана с избытками q(x), заданными на множестве АсХ, и потенциалами р(х), заданными на Х\Л, единственность доказывается точно так же, как выше; что же касается существования, то оно было доказано Даффином [3] другими методами. Теорема 2. Пусть Ф — множество потоков ср, совместимых с избытками qv q2, ..., qn, и пусть гр г2, ...» поток для которого S'yCfy)2 достигает своего наименьшего значения,— единственный и представляет собой решение задачи Дирихле (о которой идет речь в теореме 1). Обозначим через ф решение задачи Дирихле, через cpz — произвольный поток из Ф и положим у' (zz) = ср (и) Д-е (и). Имеем 2 rj «)2 = 2 (rjrf + 2Wj + ГА) = 2 (≪?J + 2ey) + + 2 Г) (ey)2 = 2 + 2 2 TC7 (?; — ?7) + 2 ri ’) Эффективное решение системы является классическим в электротехнике, и здесь можно успешно применять теорию графов в сочетании с методом Крона (см., например, [8]). (Теорема Таусски имеется также в книге Пароди М., Локализация характеристических чисел матрицы и ее применения, ИЛ, Москва, 1960, гл. II, § 1. — Прим, перев.)
266 ДОБАВЛЕНИЯ Но 2 V/ = 2 ?;• (2 = 2 PiQl- Точно так же 2 =2 pflr Отсюда, окончательно, 2 ri (?j)2 = 2 Pflt + 2 г, Из этой формулы видно, что наименьшее значение достигается при е = 0, т. е. при у/ = ^р. Задача Купманса Рассмотрим множество портов х2, . . ., хп и множество линий морских перевозок uv и2, ит. Пусть dj = d(Uj)— время, затрачиваемое грузовым судном на холостой рейс по линии и-, и пусть q. = q(Xi) — средний избыток пустых судов в порту xz; dif qi>0, порт xL ввозит больше, чем вывозит, и излишек надо распределить по порожним кораблям, идущим в другие порты. Пусть ≪ру. = ср(zz;.) — количество пустых судов, которое предполагалось отправить по линии z/y. Задача состоит в определении потока ф, совместимого с избытками qt и минимизирующего полную стоимость перевозок, равную (с точностью до постоянного множителя) т 2//p≪wP = ≪d- ?>• Поставленная задача относится к общей категории транспортных задач, для которых выше был дан алгорифм (см. Добавление II, пример 4). Тем не менее применение потенциальной функции и аналогия с электрическими сетями позволяют получить несколько иную процедуру. Итак, пусть U — множество всех рассматриваемых линий морских перевозок (с указанием направлений), а (X, U) — соответствующий граф. Мы скажем, что частичный граф (X, V) является оптимальной опорой, если существует поток у, совместимый с избытками qlt минимизирующий (d, ф) и такой, что ф (и) > 0 при и £ V, ср (и) = 0 при и £ U \ И,
ПОНЯТИЯ ПОТЕНЦИАЛА 267 Теорема 3. Если (X, У)— оптимальная опора, то для каждой вершины х£Х существует такое число р{х), что f d (*. У) > I Р (У) — Р (х) | при (х, y)£U, \ d(x, у) = р (у) — р (х) при (х, у) £ V. Пусть (X, V) — оптимальная опора, ф — соответствующий оптимальный поток. Граф (X, V) можно считать связным (в противном случае мы рассмотрим каждую компоненту отдельно). Выберем в этой опоре произвольную вершину xQ и положим ^(хо) = О; при (х, Xq)^V положим р(х) = р(х0) — й(х, х0); при (х0, у) £ V положим P(y) = p(^o)+rf(^o- У)- Всякий раз, определив р в некоторой вершине графа, мы можем определить эту функцию во всех смежных вершинах, где она еще не определена, и, таким образом, шаг за шагом определить р на всем X. Допустим, что существует дуга и = (х, y)£U> Для которой d (х, у) ≪ р (у) — р (х), и покажем, что это допущение приводит к противоречию. Дуга (х, у) входит в состав некоторого проходящего через х0 цикла вида Iх — [*о> xi . xi-i— х> xi — У> •••» xk — ^оЬ где (xt> xt-i) или (xz_p x^V Обозначим через Vf (р) множество дуг р, ориентированных в направлении обхода, через У″(р) — множество дуг р, ориентированных в противоположном направлении, и определим поток ф следующим образом: ф (zz) = ср (zz) 4″ 1 при и £ V' (р), ф (zz) = ср (zz) — 1 при и £ V″ (р), ф (rz) = ср (zz) при u£v' (р), u£V″([l). Этот поток ф заведомо совместим с избытками и более выгоден, чем ср, ибо экономия стоимости составляет 2 d(u)— 2 d(u)= d(x, y)-\-p(xQ) — P(4i)4~ H-p(^i) — p(x2>+ ••• = — d(x, y) + p(y) — p(x)4-0 > 0. Но это противоречит оптимальности ср. Таким же способом доказывается, что не существует дуги ≪у = (х, y)£V, для которой d(x, У)> р(у) — Р (х). Следовательно, имеет место (1).
268 ДОБАВЛЕНИЯ Теорема 4. Если (XV)— опора1) некоторого потока ср, совместимого с заданными избытками, и если существуют числа р(х), удовлетворяющие условию (1), то поток ср — оптимальный. Имеем / п \ 2 d (к) ≪Р (и) = 2 d (Uj) ср (zzy) = — 2 ? («/) ( 2 sjPt) = u£U Uj^V J Uj^V \i=A J J n / m \ n = — 2 Pi (2! si^jj=— 2 PiQt- Для произвольного потока ф, совместимого с избытками, имеем т / п \ п / т \ п 22ф/( 2»)л)=— 2л( 2= — 2рм- u^U j = l J \7 = 1 J / 7 = 1 \7=1 J J J 7 = 1 Поэтому ср является оптимальным потоком, а (X V) — оптимальной опорой. На этих результатах основан весьма общий метод решения задач рассмотренного типа. Задавшись возможно более правдоподобной антисимметрической транспортной сетью (X V), выясняем, является ли тс(х, у) = — d(x, у) разностью потенциалов для этой сети. В произвольно выбранной вершине х0£Х полагаем р(хо) = О; с помощью итерационного процесса определяем значение р(х) в каждой вершине следующим образом: если в х1 значение р уже определено, то в вершине у (еще не имеющей значения) полагаем р(у) = р(Х1) + ≪/(Х1, у) при (Хр Р(У) = рС*1) — d(xv у) при (у, Xj)£V. Если существует такая дуга (х, y)£V, что р(у)— р(х) ≪ d(x, у), то удаляем ее из нашей транспортной сети. Если же имеется дуга (х, y)£U, для которой р(у)— p(x)>d(x, у), то улучшаем конфигурацию сети по способу „кругового потока″ (см. теорему 3). Таким образом рано или поздно получим Р(у) — p(x) = d(x, у) при (х, у) С К Р(У)~Р(х) ≪ d(х, у) при (х, у)С U \ V. Новая транспортная сеть (X V), как легко проверить, допускает поток, совместимый с избытками, а общий способ нахождения такого потока был дан выше (гл. 16, стр. 168). ’) Определение опоры естественным образом содержится в определении оптимальной опоры, данном выше. — Прим, перев.
ПОНЯТИЕ ПОТЕНЦИАЛА 269 Следуя Купмансу и Рейтеру [4], применим в качестве примера этот алгорифм к морским путям между портами, зарегистрированным в 1913 году. Получается схема, изображенная на рис. 3. Рис. 3. Граф оптимальных холостых рейсов судов в 1913 г. — на пунктирных линиях: продолжительности d (х, у) рейсов в десятых долях месяца; к (х, у) = — d (х, у) представляет собой разность потенциалов; — обведено кружком: значение р (х) для порта х\ — в скобках: ежемесячный избыток порожних транспортных средств q (х) в миллионах тонн. (Эта карта заимствована из [4] с разрешения авторов). Здесь транспортная сеть является деревом. Она содержит в силу теоремы 2 (гл. 16) висячую дугу, а так как поток по такой дуге определяется однозначно, то ее можно удалить (соответственно исправив избытки в ее граничных точках); то же самое проделаем с полученным деревом. Таким путем шаг за шагом находим: ср (Иокогама, Сидней) = 170 ср (Сан-Франциско, Сидней) = 20 ср (Дурбан, Сидней) = 50 ср (Дурбан, Ла-Плата) = 50 ср (Лагос, Ла-Плата) = 120 ср (Афины, Ла-Плата) = 130 ср (Афины, Одесса) = 960 ср (Афины, Бомбей) = 290 ср (Афины, Сингапур) = 20 ср (Афины, Нью-Йорк) = 150 ср (Сент-Томас, Нью-Йорк) = 350 ср (Лиссабон, Нью-Йорк) = 780 ср (Лиссабон, Роттердам) = 460 q q q q q q q q q q q q q (Сидней) = — 240 4- 170 = — 70 (Сидней) = — 70 + 20 = — 50 (Дурбан) = 100 — 50 = + 50 (Ла-Плата) = — 300 -f— 50 = — 250 (Ла-Плата) = — 250 4- 120 = — 130 (Афины) = 1550— 130 = + 1420 (Афины) = 1420 — 960 = 4* 460 (Афины) = 460 — 290 = 4- 170 (Афины) = 170 — 20 = 4- 160 (Нью-Йорк) = — 1280 4- 150 = — 1130 (Нью-Йорк) = 1130 — 350 = 4- 780 (Лиссабон) = 1240 — 780 = 4~ 460 (Роттердам) = 0. Следовательно, поток ср минимизирует стоимость порожнего транспорта; конечно, в задаче предполагается, что все суда имеют один и тот же тоннаж.
/V. Нерешенные задача и недоказанные предположения Нижеследующий список содержит нерешенные проблемы, которые представляются нам особо важными. 1. Глава 4. Задача о пятнадцати девушках (стр. 44) приводит к другой задаче, не решенной до сих пор, несмотря на усилия Сильвестра, Кэли и многих современных алгебраистов: замечая, что число троек равно 7 X 5 X 13, Сильвестр поставил вопрос, можно ли водить воспитанниц на прогулки в течение 13 недель таким образом, чтобы: 1° каждую неделю всякие две девушки оказывались вместе один и только один раз; 2° в течение 13 недель всякие три девушки оказывались вместе один и только один раз. Если рассмотреть граф О, вершинами которого служат 455 возможных троек и в котором ребро соединяет всякие две тройки, различающиеся не более чем одной девушкой, то задача сведется к доказательству того, что хроматическое число графа G равно в точности 13; оно никак не может быть больше 13: аналогичное утверждение было доказано в „задаче о 9 девушках*. С помощью алгорифма Гомори, нашего замечания на стр. 42 и современной вычислительной машины мы, без сомнения, можем подтвердить или опровергнуть предположение Сильвестра в том виде, как оно сформулировано выше. Укажем, что задача о тройках важна в теории „планирования опытов* и обобщается следующим образом: если p^k^m, то назовем системой [&, р, т] семейство § множеств, содержащихся в некотором множестве Е из т элементов, имеющих по k элементов и таких, что всякое Рс^Е, для которого |Р| = р, содержится точно в одном Известно (Штейнер), что системы [4, 3, т] существуют тогда и только тогда, когда т = 2 или 4 (mod 6). Известно также [Мур (Е. Н. Moore) и Рейсс (М. Reiss)], что системы [3, 2, т] существуют тогда и только тогда, когда т = 1 или 3 (mod 6).
ЗАДАЧИ И ПРЕДПОЛОЖЕНИЯ 271 Конструктивное доказательство без помощи индукции было недавно дано Ханани [1]. 2. Можно показать, что если G — конечный граф, то числа п _ ]/a(G,z) имеют конечную верхнюю грань; видимо, эта верхняя грань всегда получается предельным переходом, но предложение это не доказано. Также очень важно было бы показать, что если п+1 - п - 6(G) =£ a (G), то V a(Gn+1)— Иа(бл)>0 для бесконечного множества значений п. [Предположение, высказанное Шютценбергером (М. Р. Schtit- zenberger).] 3. Какова емкость 6(G) графа G, изученного Шенноном (см. рис. 4— 8)? 4. Глава 5. Обладает ли ядром сумма двух графов, каждый из которых имеет ядро'? Это было доказано только для случая, когда каждый из графов-слагаемых допускает функцию Гранди1). 5. Глава 6. Если игры Ним (Xv Г\), (Х2, Г2), . . ., (Хп, Гл) допускают функции Гранди, то их произведение не всегда допускает функцию Гранди; однако можно доказать существование такой функции в случае, когда rz=rf (при Z=l, 2, ..., п). Очень важно было бы улучшить это условие, мало пригодное для фактического использования. 6. Глава 10. Когда в простом графе задано наибольшее паросочетание W (образованное сильными ребрами), каждая чередующаяся цепь рь позволяет определить новое наибольшее паросочетание Wz = (W \ [i) U (^ \ W). То же имеет место, когда рь является чередующимся циклом четной длины, и такую операцию мы называем „перемещением″. Важная и не решенная еще задача состоит в следующем: даны два наибольших паросочетания W и W простого графа\ можно ли получить W из W конечным числом перемещений'? Если каждая вершина х £ X смежна с каждой вершиной у £ К, то справедлив более сильный результат, именно всегда можно получить W7 из W надлежащими перемещениями в циклах длины 4; см. теорему 2 (гл. 9). 1) Самые простые примеры показывают, что сумма двух графов, имеющих ядро, может ядра не иметь. Это будет, например, выполняться для графов Gi = (Xlf и G2 = (Х2, Г2), где Х\ = {a, b, с, d}, Х2 = {е, /}, Г^ = {^, d}> VP) = {c,d}, Yxc={a,d}, Г^ = 0, Г2е = ft — Прим, ped,
272 ДОБАВЛЕНИЯ 7. Глава 11. Задача о книгах (см. стр. 123) не решена для случая трех издательских операций вместо двух. 8. Удивительно, что до сих пор мы не располагаем систематическим графическим алгорифмом для нахождения гамильтоновых контуров графа; единственный известный алгорифм является аналитическим и, видимо, может быть улучшен. Его можно описать следующим образом: каждому фактору отнесем числа где В} = 1, если фактор содержит дугу (хр х.), и £} = О в противном случае. Имеем тогда систему соотношений (1) О), /г). Если решение системы (1), получаемое симплекс-методом, не образует гамильтонова контура, то оно содержит некоторый элементарный контур [х/р х^, ...], где Z2, ...)=/ — множество, состоящее менее чем из п индексов. Каждый гамильтонов контур удовлетворяет, кроме (I), условию (2) 1. Ищем затем с помощью симплекс-метода решение системы (1) и (2), которое, очевидно, будет отличаться от уже найденного. Если новое решение опять не образует гамильтонова контура, то выводим, как выше, некоторое неравенство (3) и ищем симплекс-методом решение системы (1), (2), (3) и т. д. Таким способом мы через конечное число шагов получим гамильтонов контур (если он существует). Можно ли провести эту идею в терминах транспортных сетейШ 9. Глава 13. Пока не доказано следующее предложение: если G — сильно связный граф с дипломатическим числом v(G)> 1, то существует такое множество трасс, что каждая вершина принадлежит по крайней мере двум из этих трасс. Это предложение, очевидное для розеток, тривиально в случае v(G)^n, так что можно ограничиться рассмотрением случая l≪v(G)≪/i. Его важность обусловлена тем, что можно доказать неравенство О fl
ЗАДАЧИ И ПРЕДПОЛОЖЕНИЯ 273 [Предположение Брэттона (D. Bratton).] 10. Глава 14. Метод Уэя— Кендалла (Wei, Kendall) (стр. 149) заключается в составлении регулярной матрицы D с нулями на главной диагонали и в нахождении ее собственного вектора у, отвечающего наибольшему характеристическому числу X; координаты у позволяют тогда квалифицировать п игроков. Рассмотрим теперь игру со стратегией (см. стр. 248), отвечающей матрице у I — D, между игроком, выбирающим строку, и игроком, выбирающим столбец; Томпсон показал [2], что искомый вектор у выражает также оптимальную стратегию (необходимо единственную) игрока, выбирающего столбцы; доказательства требует следующее предположение: оптимальная стратегия игрока, выбирающего столбцы, в игре I — ±-D выражается той же классификацией, которую дает вектор у. (Предположение Томпсона.) И. Глава 20. Какова наибольшая связность графа с п вершинами и т ребрами? Эта задача представляет такой же интерес, как и задача о нахождении наименьшего диаметра графа. 12. Глава 21. Теорема о четырех красках может оказаться следствием одного весьма общего предложения, которое удалось проверить для многочисленных семейств графов. Пусть X— множество вершин связного неориентированного графа. Я буду условно говорить, что некоторое разбиение X является „вполне связным″, если каждый класс или объединение классов порождает связный подграф. Далее, я обозначу через Щ множество разбиений X на k классов. Теорема, которую требуется доказать, формулируется следующим образом: если при каждом разбиении тс существуют две смежные вершины одного и того же класса, то в П/2+1 имеется вполне связное разбиение. Эта теорема очевидна при п = 1 и п = 2 и довольно просто доказывается при п = 3. Если бы удалось доказать ее при п = 4, то тем самым была бы доказана и теорема о четырех красках, поскольку у плоского графа не существует пяти попарно смежных вершин. [Предположение Креверас (G. Kreweras).] 13. Другое предположение, не доказанное и не опровергнутое, из которого вытекала бы теорема о четырех красках, состоит в следующем: всякий плоский однородный граф степени 3 без перешейков обладает фактороидом, все циклы которого — четной длины, [Предположение Тэта (Р. G. Tait).]
274 ДОБАВЛЕНИЯ 14. Наконец: Пусть S — поверхность, G — S-топологический граф с хроматическим числом k\ при помощи отождествления смежных вершин (т. е. стягивания ребер) можно получить полный граф с k вершинами. Это предположение доказано во многих частных случаях Дираком (G. Dirac); если доказать его для k = 5, то отсюда будет вытекать теорема о четырех красках. [Предположение Хадвигера (Hadwiger).]1) 9 Так как S-топологический граф после стягивания любого ребра остается S-топологическим, то из формулировки предположения Хадвигера можно вовсе исключить упоминание о поверхности. Получим высказывание: всякий граф с хроматическим числом k можно при помощи стягиваний ребер превратить в полный k-вершинный граф] из справедливости этого предположения при k = 5 по-прежнему вытекает теорема о четырех красках.— Прим, перев.
V. О некоторых основных принципах подсчета Риге (J. Riguet) Если для данного графа G нужно подсчитать число различных типов подграфов или частичных графов, удовлетворяющих определенным условиям, то задача требует алгебраического аппарата; мы ставим здесь целью изложить в весьма общей форме наиболее существенные принципы. Подстановки множества Пусть X— конечное множество; назовем подстановкой, множества X всякое взаимнооднозначное отображение X на X. Например, такое отображение е, что е(х) = х при любом х £ X является подстановкой, называемой единичной подстановкой. Если g— подстановка X, то обратное отображение g~l также есть подстановка X. Если g и h — две подстановки X, то результирующее отображение gh, определяемое как gh (х) = g [h (х)], является подстановкой X. Если g — подстановка X, а п — натуральное число, то отображение gn, по определению равное gn(x) = ggg . .. g(x), есть подстановка X, называемая n-й степенью подстановки g. Отображение g~~n, равное, по определению, g-«(x) = .g-ig-ig-i ... также представляет собой подстановку X, называемую минус я-й степенью подстановки g. Часто полагают g^ = e. Если для двух элементов х, у^Х существует такое целое число п, что y = gn(x), то мы напишем ут^х. Отношение есть эквивалентность, ибо x = gQ(x) (рефлексивность), У = gn(x) х = g~n (у) (симметрия), У = gn (*)> £ = gm (у) ==> z = gm+n (х) (транзитивность). Отношение называется транзитивной эквивалентностью для подстановки g. Как известно, каждое отношение эквивалентности
ДОБАВЛЕНИЯ 276 на множестве X определяет разбиение X на попарно непересекаю- щиеся классы эквивалентности; классы эквивалентности для g называются классами транзитивности подстановки g. Циклом подстановки g называется всякая подстановка, которая получится, если область действия g ограничить одним из ее классов транзитивности; сама подстановка g представляет собой произведение циклов, взятых в любом порядке. Пример. Пусть Х=[а, b, с, d, е], а подстановка g определена так: g(a) = d, g(b) = c, g(c) = b, g(d) = e, g(e) = a. Обычно пишут fa b с d е\ g = \d c b e a J Классами транзитивности g служат подмножества [a, d, e} и {&, c), а соответственные циклы суть подстановки / a d е b с\ fb с a d е\ \d е а Ь с J \с b a d е J обозначаемые также более просто через (ade) и (be). Таким образом, можно написать g = (ade)(bc). Если р — эквивалентность на множестве X, то множество классов эквивалентности называют фактор-множеством X по р и обозначают символом Х/р. Если все классы эквивалентности С£Х/р обладают одим и тем же числом элементов, то говорят, что отношение эквивалентности р регулярно. Подстановка g множества X называется регулярной, если т— регулярная эквивалентность; в этом случае из х = gn (х) для некоторого х £ X следует у = gn (у) для всех у£Х. Транзитивная эквивалентность группы подстановок Говорят, что множество G подстановок множества X образует группу, если 1° e£G} 2° g, h £ G => gh £ G\ 3° g^G^g-^O. Например, множество Sx всех подстановок X является группой, называемой симметрической группой множества X. Множество [е, g, g2, g3, g'1, g~2, ...},
ПРИНЦИПЫ ПОДСЧЕТА 277 составленное всеми целыми степенями одной и той же подстановки g, образует группу, называемую циклической группой, порожденной подстановкой g. Пусть G — некоторая группа подстановок множества если для двух элементов х,у£Х существует такая подстановка g£G, что y = g(x), то мы напишем ytQx. Отношение есть эквивалентность, ибо х = е(х~), е£О (рефлексивность); y = g(x), g(zG => х = g-1 С О (симметрия); у = g (х), g £ G I z = h{y) h^a\^ Z = hg hg£G (транзитивность). Отношение т0 называется транзитивной эквивалентностью группы G, а соответственные классы эквивалентности — классами транзитивности группы G. Если имеется только один класс транзитивности, то он совпадает со всем множеством X; в этом случае говорят, что группа G транзита в на. Если g— подстановка X, a G — циклическая группа, порожденная g, то, очевидно, транзитивная эквивалентность g совпадает с транзитивной эквивалентностью G; подстановка g состоит из одного- единственного цикла тогда и только тогда, когда циклическая группа, порожденная g, транзитивна. Подсчет числа классов транзитивности Пусть g — некоторая подстановка X; положим Xg— {x/x£X, g(x) = x}. Для произвольной группы G подстановок X и произвольного элемента х £ X положим Qx={glg£°> g(x) = x}. Непосредственно проверяется, что Gx образует подгруппу группы G. Поставим задачу о подсчете числа элементов фактор-множества Х[х0 в зависимости от различных |А^| при g^G. Лемма 1. Пусть G — некоторая группа подстановок множества X, Gx— подгруппа G, образованная теми подстановками G, которые оставляют неизменным некоторый элемент х £ X; тогда |t°(x)I==WT’ где tg(x) означает тот класс транзитивности группы G, который содержит элемент х.
278 ДОБАВЛЕНИЯ Определим однозначное отображение группы G в множество X следующим образом: 'b-Cg') = g ≪>') Имеем (G) = т0(х); кроме того, (£) = g (*) = h (х) ≪==> h € gGx. Иначе говоря, срх есть взаимнооднозначное соответствие между и °1°Х- Но, как известно, само находится во взаимнооднозначном соответствии с срх (О) = tg (х); тем самым лемма доказана. Лемма 2. Если х и у — два элемента одного и того же класса транзитивности группы G, то Действительно, для y = g(x), g£G можно написать Gy = Gg(x) = {h/h£G, hg(x) = g(x')} = {h/h£G, g~1hg(x) = x}. Далее, g^1Gxg = [h/h^G- существует такое k£Gx, что h — g~1kg] = = {h/h£G, g~rhg (x) = x]. Значит, имеем окончательно Gy = gG^-1', но, как известно, если А — любое подмножество группы G, a g, h£G, то |gAh| = (А|, ибо gaxh = ga2h агН = a2h ==> аТ = а2. Таким образом, лемма доказана. Основная теорема. Пусть G — группа подстановок множества Х\ тогда iw=™-Si-v g^G В самом деле, подсчитывая двумя способами такие пары (g, х) для которых g(x) — xt находим S|o,l=Sl^|. (1) *ех g^o Но S|OJ= 2 2|0с|. (2) х£Х C^X/tqc^C
ПРИНЦИПЫ ПОДСЧЕТА 279 Рассмотрим некоторый класс транзитивности C^X/'Zq и некоторый элемент х£С; в силу леммы 2 S|GJ = K(*)|-|GJ- В силу леммы 1 |х0(х) | = |О|/|ОХ|. Следовательно, 2 = |О|, с£С и равенство (2) можно записать так: S|OJ=l^o|-|O|. (2') х£Х Сравнивая (1) и (2')> получаем требуемую формулу. Разбиение, связанное с эквивалентностью Назовем разбиением (в смысле теории чисел) однозначное отображение а множества {Хр Х2, . .., XJ натуральных чисел в множество всех натуральных чисел; разбиение, относящее числам Хр Х2, . . ., Х^ соответственно числа ар а2, ..., ар удобно обозначать через » = «'■ Ц- . ед- Ясно, что это понятие нельзя смешивать с тем понятием разбиения (в смысле теории множеств), которое было определено в гл. I, но последнее нам здесь не понадобится. Будем называть весом разбиения а целое число ■w (а) = ajXj + а2Х2 4- ... 4- а^. Назовем размерностью разбиения число d (a) = 04 4- a2 4- ... 4- a5. Пример. Разбиение (I3, З2, 4) имеет вес 13 и размерность 6; ему отвечает следующее разложение числа 13 в сумму натуральных чисел: 13 = 44-34-14-34-14-1. Пусть р — отношение эквивалентности на множестве X, а ср — взаимнооднозначное отображение X на множество /; тогда многозначное отображение сррср”1 множества Y в себя определяет эквивалентность на К, классы которой сррср-1 (у) являются образами классов эквивалентности р. Два отношения эквивалентности р и о, определенные соответственно на множествах X и У, называются сопряженными, если существует такое взаимнооднозначное отображение ср, что a = сррср″1,
280 ДОБАВЛЕНИЯ Разбиение, связанное с отношением эквивалентности р,— это разбиение Нр] = (Х?. X?, ...), причем ровно 04 классов содержат по элементов, а2 классов — по Х2 элементов и т. д. Вес р [р] равен |X|, а размерность равна |А7р|. Легко доказывается Предложение 1. Отношения эквивалентности р и а, определенные соответственно на множествах X и Y, сопряжены тогда и только тогда, когда связанные с ними разбиения одинаковы. Пример. Х=[а, b, с, d, е, /, g], р определено классами эквивалентности: {а, Ь, с}, {d, е}, {f}, {g}. При подстановке ср = (adg) (be) (cf) эквивалентность а = сррср-1 имеет классы: {≪*> е, /}, {g, b}, {≪?}, {«}. Ясно поэтому, что )) [р] = р [о] = (I2, 2, 3). Циклический индекс Понятие разбиения, связанного с данной эквивалентностью, позволяет по-новому сформулировать основную теорему. Сначала введем понятие индекса, принадлежащее Пойа. Пусть G — группа подстановок множества X, а а — некоторое разбиение с весом w (а) = | AJ; обозначим через /г0(п) число таких подстановок g£G, что р[т^] = а. Назовем циклическим индексом группы G функцию qG, которая каждому разбиению а относит число Аг(а) ≪70«.)=^. Лемма. Если g£G, то где — число классов эквивалентности сводящихся к одному элементу, то есть таких классов, каждый из которых порожден некоторым элементом X, инвариантным относительно g. Новая формулировка основной теоремы. Если О — группа подстановок множества X, то |Л7то|= 2 о0(а)а(1). w(a) = |X| u
ПРИНЦИПЫ ПОДСЧЕТА 281 Действительно, |*ы=AS Ki=A S ’ м (»= g£G g£G = ТЗТ Л0(а)а(1)= ^о(а)а(1). w(a)=|X| w(a) = lXj Сопряженные однозначные отображения Пусть f — однозначное отображение множества X в некоторое множество Y; отображение У”1/ определяет отношение эквивалентности на X, причем класс У”1/ (х) представляет собой множество тех элементов X, которые имеют тот же образ, что и х; мы скажем, что У есть отображение типа а, если а = р[у~″1у]- Пусть У} — однозначное отображение некоторого множества Хх в некоторое а У2— однозначное отображение некоторого Х2 в некоторое К2; будем говорить, что fx и У2 сопряжены, если существуют такие взаимнооднозначное отображение ср множества Хх на Х2 и взаимнооднозначное отображение ф множества Yx на Y2, что Л?=ФЛ- Предложение 2. Два однозначных отображения fx и У2 сопряжены тогда и только тогда, когда р[У[’71] = Р [Л 7г]. Предложение 3. Для сопряженности двух однозначных отображений fx и f2 множеств Хх и Х2 в Y достаточно, чтобы существовало такое взаимнооднозначное отображение ср множества Хх на Х2, что ftf = fv Степень однозначного отображения Пусть У — однозначное отображение конечного множества X на множество Y; назовем степенью отображения f такое отображение ВУ, которое каждому у £ Y относит количество элементов множества У-1 (у). Предложение 4. Два отображения fx и f2 множеств Хх и Х2 в Y имеют одну и ту же степень тогда и только тогда, когда существует такое взаимнооднозначное отображение ср множества Хх на Х2, что f2y = fx. В частности, из §у1 = Ву2 следует, что fx и У2 имеют один и тот же образ и сопряжены.
282 ДОБАВЛЕНИЯ Отсюда, как и прежде, вытекает, что отображение / есть отображение типа а тогда и только тогда, когда 88/ = а, т. е. когда а есть разбиение, связанное с 8/. Предложение 5. Если отображение f — типа а, то отображение 8/— типа 8а. Действительно, из 88/ = а следует 888/ = 8а. Пусть v — однозначное отображение некоторого конечного множества X в множество натуральных чисел; назовем размерностью v число х^Х (в случае, когда v представляет собой разбиение, мы снова получаем понятие „размерности разбиения″). Предложение 6. Имеем*. = |Х| =rf(8v). Отсюда следует, что если / — однозначное отображение X в Y типа а, то |Х|=^(а), |/(Х)| =≪/(а). Слова и абелевы слова Будем называть словом всякую конечную последовательность элементов заданного множества X. Типом слова т назовем разбиение а = (Xi1. ^22’ • • •, которое указывает, что имеется а} элементов X, фигурирующих в т ровно раз, а2 элементов, фигурирующих Х2 раз, и т. д. Таким образом, число элементов X, фигурирующих в т, будет ^(а), в то время как длина слова равна w(a). Когда слово рассматривается независимо от порядка расположения в нем элементов X, говорят, что это абелево слово. Пример. Если Х=[а, с, р, q, г, Z), то слово trcpaccaqtr имеет тип (I2, 23, 3). Если это слово абелево, то оно тождественно, например, слову aacttrrpqcc\ весьма часто его отождествляют с отображением X в множество натуральных чисел, именно /а с р q г f \2 3 1 1 2 2 Если слово trcpaccaqtr не является абелевым, то его отождествляют с отображением интервала /п = {1, 2, 3, 4, ..., 11} на X, именно /1 2 3 4 5 6 7 8 9 10 11\ т = ( ) • \trcpaccaqt г j
ПРИНЦИПЫ ПОДСЧЕТА 283 Поэтому его степень представляет собой абелево слово а с 2 3 2 3 Его тип есть разбиение /1 ЪЪт = ( 2 р q г t\ 1122/’ 23, 3). 3\ 1W. В дальнейшем мы через М(Х) будем обозначать множество слов, содержащих каждый из элементов X хотя бы один раз; через ТИд (X) — множество слов М (X) типа а; через 2Щ(Х)— множество тех слов М (X), для которых абелево слово есть v; через Mt (X) — множество слов М (X) длины I. Через It обозначаем интервал {1,2, Наконец, пусть G — группа подстановок множества 1г и пусть g£O. Обозначим через g подстановку множества Л4г(Х), определяемую следующим образом: g (т) = mg (от £ (X)). Предложение 7. Множество G подстановок g образует группу, называемую продолжением G на Мг(Х). Действительно, если g и h — две любые подстановки множества /р то gh~l=g-lrl. Если а— заданное разбиение, то множество ЛД (X) слов типа а, образованных из X и содержащих все элементы X, является объединением попарно непересекающихся подмножеств, образованных из ЖДХ), где v — степень а: МЛ(Х) = []МЧ(Х). (1) ov = а Но существует и другой способ разложения ЛД (X). Именно, рассмотрим отношение эквивалентности р на множестве целых чисел {1, 2, ...» s— 1, $} и обозначим через М? (X) множество тех т^М(Х), для которых /п-1/п = р. Тогда (X) будет объединением попарно непересекающихся подмножеств, образованных из Мр (X), в которых р связано с разбиением а: МЛ(Х) = □ Mf(X). (2) Р [р] = а Из двух способов разложения (1) и (2) сразу получается более мелкое разложение: мЛ(Х) = и (3) Р [р!=а
284 ДОБАВЛЕНИЯ Обозначим через MVtg(X) множество таких слов т^МДХ), для которых Через Mg(X) обозначим объединение множеств Л4р(Х) для всех эквивалентностей р, удовлетворяющих условию рот^.. Имеем: Предложение 8. Если g— подстановка интервала 2 . I}. то множество слов т£ Мг(Х), инвариантных относительно подстановки g, есть Mg(X). В самом деле, g (т) = т ф==ф mg = т ≪====> mg (I) = т (7) для всех f£/z4==^> ≪===ф g (i)^m~1m(i) при всех f£/z4==^ 4==ф gn (i)£m~xm(i) при всех f£/z и всех целых 4-1-2> т^.(7) £ т^т (Z) при всех I £ 1г ф==> 4 - А это доказывает предложение. Следствие. Для заданной подстановки g интервала It множество слов из МДХ), инвариантных относительно g, есть M„g(X). Предложение 9. Пусть v — абелево слово из элементов X, имеющее длину d(y) = l, и пусть G — группа подстановок интервала It. Пусть G — продолжение G на (X). Тогда \мл*)Ы= |4|-S g£G В силу предложения 4 множество тех отображений f множества X в К, которые имеют одну и ту же степень и удовлетворяют условию /-1/:эр, где р— данная эквивалентность, получается умножением одного из таких отображений справа на подстановки ≪р, такие что сррср″1 = р. Это замечание показывает, что | MVt g (X) | зависит только от Sv и р [р]. Поэтому положим | (Л1,.г(Х)| =O(8v, Ир]),
ПРИНЦИПЫ ПОДСЧЕТА 285 Предложение 10. Пусть v— абелево слово над X длины, d(y) = l и пусть G — группа подстановок интервала It. Пусть, далее, G — продолжение G на 7ИДХ). Тогда = 5 ≪70(а)Ф(Ву, а). 1 1 w (a) = Z Действительно, |^^)Ло|=Т5т2Ф(8у’ h^i) = W 2 S ф^' ≪0 = g£G w (a) = Z £ [V] = Q = jg-j- 2 h°(rt) ф (8v’ «) = S 4q («)ф (8v> Ю- w(a) = i w(a) = Z Прежде чем показать, каким образом на этом предложении основываются процессы подсчета, рассмотрим несколько частных случаев. Назовем многочленным коэффициентом функцию с, относящую каждому разбиению а = (Х^1 . число с (а1М + • • • + аЛу)! (Ма* ...(Х^Л Легко видеть, что число тех отображений множества X на множество Y, которые имеют заданную степень v, равно с (Sv). Но это число совпадает с числом таких слов т степени v, для которых х£т~хт(х). Поэтому |Afv(X)| =f(8v), Ф(а, iw) = c(a). Так как MV(X) Q Л4р (X) = 0 при d (v) > d(p [р]), то матрица Ф(а, Ь)— треугольная (см. рис. 1). Введем функцию разбиения k(a), полагая k (а) = с (8а). Легко видеть, что £(а) выражает как раз число абелевых слов степени а. Введем также функцию разбиения 2(a), полагая / ч с (a) k (а) ___ + ■ • ■ + аЛ)! d(a)! n h«i п }>.as . . v 7 (М .. . (AJ) *«1! ... а?! Легко видеть, что е (а) выражает как раз число таких отношений эквивалентности р, для которых р [р] = а,
286 ДОБАВЛЕНИЯ 2 1 Р 6 3 1 Р 0 1 2 0 1 1 1,2 Р 2 \ b а 0 0 1 3 Р 1,2 3 \ Ь а \ 24 12 6 4 1 I4 120 60 30 20 10 5 1 Р 0 2 2 2 1 Р.2 0 6 6 6 4 3 1 Р,2 0 0 2 0 1 22 0 0 2 0 2 1 1 1,22 0 0 0 1 1 1,3 0 0 0 2 1 2 1 Р,3 0 0 0 0 1 4 0 0 0 0 1 0 1 2,3 Р Р,2 22 1,3 4 \ Ь а 0 0 0 0 0 1 1 1,4 0 0 0 0 0 0 1 5 р Р,2 1,22 Р,3 2,3 1,4 5 \ь а \ Рис 1. Пример Дано шесть шаров: 3 красных, 2 черных и 1 белый, причем шары одинакового цвета считаются неразличимыми; сколькими способами можно разместить эти шары по вершинам свободного октаэдра в пространстве? Допустим сначала, вопреки условию, что октаэдр фиксирован в пространстве. Пусть Х=\а, Ь, с], где а означает черный цвет, $— белый, с — красный. Тогда существует взаимнооднозначное
ПРИНЦИПЫ ПОДСЧЕТА 287 соответствие между различными размещениями шаров и словами сте- (а b с\ пени v, где v — абелево слово v = ( 1. Поэтому ответ на вопрос в случае, когда октаэдр фиксирован, будет |Л1,(Х)| =C(8v) = c(l. 2, 3)^-п4зГ=60. Рассмотрим теперь свободный октаэдр в пространстве. Здесь существует взаимнооднозначное соответствие между различными размещениями шаров и классами транзитивности слов степени v относительно группы G различных движений октаэдра. Ответом на вопрос на этот раз будет |М(Х)/^| = 2 ?0(а)Ф[(1, 2, 3), а]. w (а) = 6 Теперь надо найти циклический индекс qG для группы О октаэдра. Пронумеруем вершины октаэдра цифрами от 1 до 6, как показано на рисунке 2, и пересчитаем элементы G. ссдсаа Имеется одна подстановка g £ G, для которой р = (I6), — именно тождественная подстановка. Имеется 6 подстановок g^G, таких, что р [xg] =(12? 4); они образованы шестью вращениями на 90° вокруг диагонали,— именно (4516), (6154), (1243), (3421), (2536), (6352).
288 ДОБАВЛЕНИЯ Имеются 3 подстановки g^G, такие, что р [т^.] = (12, 22); они образованы тремя вращениями на 180° вокруг диагонали,— именно (41)(56), (14)(23), (23) (56). Имеется 6 подстановок g£G, таких, что р [т^.] = (23); они образованы шестью вращениями на 180° вокруг прямой, проходящей через середины противоположных ребер,— именно (12) (34) (56), (13)(24) (56), (14) (25) (36), (14) (35) (26), (15) (46) (23), (16) (45) (23). Имеется 8 подстановок g^G, для которых р[т^]=(32); они образованы восемью вращениями на 120° вокруг прямой, проходят- щей через центры противоположных граней. Эти 60 подстановок образуют группу октаэдра G. Следовательно, ≪7O(16) = i’ ≪7О(12, 4)=|р qQ(\\ 22) = А, 9о(23) = А, ?о(32) = ^-, остальные значения qG равны нулю. Кроме того, нам известно, что Ф[(1, 2, 3), (16Л = с(1, 2, 3) = 60; Ф[(1, 2, 3), (I2, 4)] = 0, так как абелево слово аРЬс^ не содержит ни одного элемента в четвертой степени; Ф[(1, 2, 3), (I2, 22)] = 4, так как абелево слово а2Ьс3 можно записать четырьмя различными способами: (W)(a2)(c2), (£)(с)(с2)(а2). (г) (Z>) (а2) (с2), (с)(7>)(с2)(а2); Ф[(1, 2, 3), (23)] — 0, поскольку абелево слово сРЬс2, не содержит никакой степени трижды; Ф[(1, 2, 3), (З2)] = 0, поскольку абелево слово а2Ьс3 не содержит трех квадратов в качестве сомножителей. Итак, «W/’»l = -| + l|--4 = 3- Следовательно, ответ на поставленную задачу такой: имеется только три различных способа размещения 3 красных, 2 черных и 1 белого шаров на свободном октаэдре в пространстве. На рис 2 эти три размещения показаны в одном горизонтальном ряду (крестиком помечены красные шары). Под октаэдром с размещением acbacc изображен октаэдр с размещением ccbcaa. Эти два размещения, очевидно, эквивалентны, ибо первое можно перевести во второе вращением октаэдра вокруг диагонали 2, 3, т. е. подстановкой (4516)»
VI. Дополнения к русскому переводу А. А. Зыков и Г. И. Кожухин Непосредственные следствия из теоремы Радо В ряде случаев теорема Радо (гл. 3) позволяет заключить о наличии у локально конечного графа Q некоторого свойства, если известно, что этим свойством обладает каждый конечный подграф G. На таком принципе построено обобщение 2 теоремы Ричардсона (гл. 5). Мы приведем еще два примера. 1. Пусть G — локально конечный симметрический граф и пусть каждый его конечный подграф является р-хроматическим\ тогда и сам граф G — р-хроматический. Для доказательства достаточно в теореме Радо положить £’о={1. 2 . р]. Е(Г) = Е0\1. 2. Пусть G — локально конечный граф и пусть каждый его конечный подграф допускает функцию Гранди, значения которой не превышают числа q\ тогда и весь граф G допускает функцию Гранди со значениями, не превосходящими q. Это следует из теоремы Радо, если положить 1. 2 . q], Е 10 при f=0; у ( {п}, где п = min {х/х £ Ео \ I], при / ¥= 0- Взвешенная окраска вершин графа1) Пусть G = (X, U) — конечный симметрический граф, \Х\ = п, \U\ = m. Как известно (гл. 4), проверка того, является ли данный граф р-хроматическим, сводится к проверке разрешимости в целых числах системы линейных неравенств 1°, 2°, 3° (стр. 41). Желая найти этим способом хроматическое число данного графа G, мы вынуждены последовательно задавать значения р и для каждого из них выяснять, разрешима ли система. Можно, однако, составить такую линейную программу, которая всегда разрешима в целых числах и решение которой дает одну из окрасок вершин графа G наименьшим количеством цветов. С этой Э Излагаемый здесь результат принадлежит Г. И. Кожухину.
290 ДОПОЛНЕНИЯ К РУССКОМУ ПЕРЕВОДУ целью каждому цвету q=l, 2, 3, . . . отнесем его „вес″ — натуральное число а{“\ причем веса подберем так, чтобы при всех 7=1, 2, ..., 11 выполнялось неравенство -]-•••+ ~\~(п — Я + 1) ≪ ≪ (« — Ч) + 4П) + ... + + af + т. е. > (» — 7)а(?л) — «(1Л); (*) это неравенство гарантирует, что „самая легкая″ окраска вершин графа с помощью 7+1 цветов все-таки „тяжелее″, чем „самая тяжелая″ окраска q цветами. Неравенство (*) наверняка выполняется, если 0^1 = (« — 9)— (n — q— \) а\п> + 1; полагая = 1, мы получаем 4+1=(«— ?) [Чя)— Ч+2> откуда находим последовательно: = 2, = п, = п2 — 4п-|- 5, .... Таблицу (с двойным входом) значений коэффициентов можно составить раз навсегда независимо от графа G. Задача раскраски вершин заданного графа G наименьшим числом цветов сводится теперь к нахождению „самой легкой″ раскраски, т. е. к решению в целых числах линейной программы (/= 1, 2, . . ., д; 7= 1, 2, . . ., п)\ п 2 У = 1 1. 2, .... /г); ≪7 = 1 q ★ п 2 (у = 1, 2, . . ., т; 7=1, 2, ..., /г); k = i q п п принимает наименьшее значение. /=14=1 q q После того как числа Ц найдены, хроматическое число графа G вычисляется без труда п ' п
ДОПОЛНЕНИЯ К РУССКОМУ ПЕРЕВОДУ 291 Обоснование алгорифма нахождения наибольшего потока по х^-плоской транспортной сети Пусть х0г-плоская транспортная сеть G расположена на плоскости в соответствии с 1° (стр. 85). Если [л — произвольный элементарный путь из х0 в z, то вместе с вспомогательной дугой (г, х0) он образует элементарный контур; область плоскости, ограниченную этим контуром (включая границу), будем обозначать через D([x). Из 1° ясно, что наивысший путь из xQ в z является элементарным и характеризуется следующим свойством: всякий элементарный путь из х0 в z целиком принадлежит D([i1). Поток по сети G (при конкретном расположении ее в плоскости), находимый описанным в 1°, 2°, 3° процессом, будем кратко называть FF-потоком. Докажем, что это наибольший поток. Доказательство будем вести индукцией по величине потока ср2. Утверждение тривиально при срг = О. Допустим, что оно справедливо для всех х0г-плоских сетей (при всевозможных расположениях), обладающих ДД-потоком величины п. Рассмотрим произвольную х0г-плоскую сеть О, для которой ДД-поток ср имеет величину ср2 = п-1- 1; надо доказать, что поток ср — наибольший. Предположим противное: что поток ср не является наибольшим и что, следовательно, возможен такой поток ср' по G, для которого ср' = /г-|-2. Можно считать, что G не содержит контуров с положительными значениями ср' на всех дугах, ибо иначе мы ликвидировали бы все контурные потоки, вычитая из значений ср' (zz) на дугах каждого такого контура наименьшее значение (для данного контура) — эта переделка потока ср' не меняет его величины ср'. Поэтому мы можем предполагать поток ср' таким, что всякая дуга и сети О, несущая положительный поток ср' (zz), принадлежит некоторому элементарному пути, который идет из х0 в z и на всех дугах которого ср' > 0. Рис. 1 Пусть — наивысший (элементарный) путь сети G. Не может быть ср'(zz) > 0 на всех дугах zz £ ибо иначе, уменьшив пропускные способности дуг этого пути на единицу (без изменения способностей остальных дуг сети), мы получили бы сеть О', которая, с одной стороны, допускает поток величины п-\-\ и для которой, с другой стороны, Л/^-поток имеет величину п (как следует из определения
292 ДОПОЛНЕНИЯ К РУССКОМУ ПЕРЕВОДУ Л/^-потока и из того, что для сети G он обладает величиной п -|- 1), а это противоречит предположению индукции. Пусть теперь v — наивысший из тех элементарных путей сети G, идущих из х0 в z, на всех дугах которых ср' > 0; так как ни одна дуга сети, несущая положительный поток ср', не может лежать вне области D(v) (иначе существовал бы элементарный путь, несущий положительный поток ср' из х0 в z и не лежащий целиком в D(v), т. е. v не был бы наивысшим), то путь v наверняка содержит все те дуги пути на которых ср' > 0 (см. рис. 1). Уменьшим на единицу поток по тем дугам пути у, которые не принадлежат [Лр а вместо этого пропустим единичный поток по дугам р-р не принадлежащим у. Полученный такой переделкой из ср' поток ср″ по сети G будет по-прежнему обладать величиной cpz/ = n-j- 2 и будет положительным на всех дугах пути [хр а это, как мы уже видели, невозможно. Ч. И Т. Д.
ЛИТЕРАТУРД1) Гл. 1. Основные определения [1] Berge С., Espaces topologiques et Fonctions multivoques, Paris, Dunod, 1959, XI, 272 p, ill2). [2] Berge C., Sur l’isovalence et la Régularité des Transformateurs, C. R. Acad. Sciences, 231 (I960), стр. 1404.— Sur une Théorie Ensembliste des Jeux Alternatifs, C. R. Acad. Sciences, 232 (1951), стр 294. [3] König D., Theorie der Endlichen und Unendlichen Graphen, Leipzig, 1936 (Akad. Verl. M. В. H.); New York, I960 (Chelsea). [4] Riguet F., Relations binaires, fermentures, correspondances de Galois, Bull. Soc. Math, de France, 76 (1948), стр. 114. [5] Sainte-Laguë A., Les Réseaux (on Graphen), Mém. de Sciences Math., 18 (1926), Paris. Гл. 2. Предварительное изучение квазиупорядоченности [1] Сгоisоt R., Dubгei1-Jасоtin M. L. et Lesieur L., Leçons sur la Théorie des Treillis (Gauthier — Villars, éd.), Paris, 1953. *[2] Биpкгоф Г„ Теория структур, ИЛ, M., 1952. [3] Richardson M., Relativization and Extension of Solutions of Reflexive Relations, Pacific J. of Math., 5 (1955), стр. 551. Гл. 3. Порядковая функция и функция Гранди для бесконечного графа [1] Berge С., La Fonction de Grundy d’un Graphe Infini, C. R. Acad. Sciences, 242 (1956), стр. 1404. [2] Berge C., A Problem on Infinite Graphs, Conférence au Colloquium Harvard — M. I. T., mai 1957. [3] De Bruijn N. G., Erdös P., A Colour Problem for Infinite Graphs and a Problemen the Theory of Relations, Proc, of the Nederl Ak. W., 54 (1951), стр. 371. [4] Gо11scha1k W. H , Choise Functions and Tychonoff’s Theorem, Proc, Amer. Math. Soc., 2 (1951), стр. 172. !) Работы, помеченные звездочкой, добавлены в русском переводе. 2) В тексте эта книга обозначается E. T. F. М.
294 ЛИТЕРАТУРА [5] Rado R., Axiomatic Treatment of Rank in infinite sets, Canad. J. of Math., 1 (1949), стр. 337. Гл. 4. Основные числа теории графов [1] Berge С., Two theorems in graph theory, Proc. Nat. Ac. Sc., 43 (1957), стр. 842. [2] Кraitchiк M., Le Problème des Reines, Bruxelles, 1926. [3] Кгeweгas G., Peut-on former un réseau donné avec des parties finies d’un ensemble dénombrable? C. R. Acad. Sciences, 222 (1946), стр. 1025. [4] Polyâ G, Sur le nombre des isomètres de certains composés chimiques, C. R. Acad. Sciences, 202 (1936), стр. 1554. [5] Shannon C. E., The zero-error capacity of a noisy channel, Composium on Information Theory, 1. R. E. Transactions, 3 (1956), стр. 3. *[6] Зыков А. А., О некоторых свойствах линейных комплексов, Матем. сб., 24 (66), 2 (1949), стр. 163. *[7] Зыков А. А., Функции от графов, определяемые линейными уравнениями, Сообщение 3, Изв. Сиб. отд. АН СССР, 12 (1960), стр. 13. *[8] Зыков А. А., Реберно-вершинные функции и распределительные свойства графов, ДАН СССР, 139, № 4 (1961), стр. 787. — Дипломатические и распределительные свойства мультиграфов (печатается в ДАН СССР). *[9] Gоmогу R. Е., Outline of an algorithm for integer solutions to linear programs, Bull. Am. Math. Soc., 64 (1958), № 5, стр. 275. Гл. 5. Ядра графа [1] Berge С., Théorie générale des jeux à n personnes, chap. 5: Coalitions, стр. 82, Mem. des Sciences Math., 138, Paris, 1957 (Gauthier — Villars, éd.). Есть русский перевод. Бер ж К., Общая теория игр нескольких лиц, Физматгиз, 1961. [2] Gui1baud G. T., La théorie des Jeux, Ëcon. Appl., 1949, стр. 18. [3] von Neumann F. and Morgenstern O., Theory of Games and Economic Behavior, Princeton, 1944, 1947 et 1953 (Princeton university Press). [4] Richardson M., Solutions of irreflexive relations, Annals of Math., 58 (1953), стр. 573.— On Weakly ordered systems, Bull, of the Amer. Math. Soc., 52 (1946), стр. 113. Extensions theorems for solutions of irreflexive relations, Proc, of the Nat. Acad, of Sciences, 39 (1953), стр. 649. Гл. 6. Игры на графе [1] Adams E. W., Вensоn D. С., Nim Type games, Carnegie Inst, of Technology, Techn. Report, 13 (1956). [2] Berge C., Topological games with Perfect Information (Contributions to the theory of Games 3), Annals of Math, studies, 39 (1957), стр. 165. — Берж K-, Общая теория игр нескольких лиц, Физматгиз, 1961,
ЛИТЕРАТУРА 295 [3] Berge С et Schützenberger M. P., Jeux de Nim et Solutions, C. R. Acad. Sciences, 242 (1956), стр. 1672. [4] Grundy P. M, Mathematics and Games, Eureka, 2 (1939), стр. 6 [5] Grundy P. M., Smith С. A. B., Disjunctive games with the last player loosing, Proc. Cambridge Phil. Soc., 52 (1956), стр. 527. [6] Holladay F. C. Cartesian Product of termination Games (Contributions to the theory of Games 3), Ann. of Math. St., 39 (1957), стр. 189. [7] Moore E. H., A generalization of the game called Nim, Ann. of Math, 11 (1909), стр. 93. [8] Sprague R., Bemerkungen über eine spezielle Abelsche Gruppe, Math. Z\, 51 (1947), стр. 82. — Über mathematische Kampfspiele, Tokohu J. of Math., 41 (1936), стр. 438. [9] Welter С. P., The theory of a class of games on a sequence of squires, in terms of the advancing operation in a special group, Proc. Ron. Nederl. Akad. N. (série A), 57 (1954), стр 194. Гл. 7. Задача о кратчайшем пути [1] Beckmann M., McGuire С. В., С. В. Winsten, Studies in the economics of transportation, New Haven, 1956 (Yale university press). [2] Веллман P., Динамическое программирование, ИЛ, M., 1959. [3] Ford L R., Network flow theory, Rand Corp, paper, P-923, 1956. [4] Lucas E., Récréations matcématiques, 1, Paris, 1921, стр. 47; есть русский перевод: см. Люкас Э., Математические развлечения, СПБ, 1883. [5] Tarry G., Le problème des Labyrinthes, Nouvelles Annales de Math , 14 (1895), стр. 187 Гл. 8. Транспортные сети [1] Berge С., Sur la déficience d’un réseau infini, C. R. Acad. Sciences, 245 (1957), стр. 1206. [2] Ford L. R., Fulkerson D. R., Maximal flow through a network, Canadian J. of Math., 8 (1956), стр. 399. [3] Ford L. R., Fulkerson D. R., Dynamic Network Flow, Rand Corp, paper, P-967, 1956. [4] Gale D., A theorem on flows in networks, Pacific J. of Math., 1 (1957), стр. 1073. [5] Hоffman A. J., Kuhn H. W., On systems of distinct representatives (Linear inequalities and related systems), Ann. of Math. Studies, 38 (1956), стр. 199; есть русский перевод: Гофман А. Дж., К У н Г. У., О системах различных представителей, сб. Линейные неравенства, ИЛ, М., 1959. [6] Кгeweras G., Extension d’un théorème sur les répartitions en classes, C. R. Acad. Sciences, 222 (1946), стр. 431. [7] Marczewski J., Guilbaud G. T, Essai d’analyse graphique d’une comptabilité nationale, Economie appliquée, 2 (1949), стр. 138.
296 ЛИТЕРАТУРА Гл. 9. Теорема о полустепенях [1] Gale D., A theorem on flows in network, Pacif. J. of Math., 7 (1957), стр. 1073. [2] Харди Г. Г., Литтльвуд Дж Е., Полна Г., Неравенства, ИЛ, М., 1948. [3] Мuiгhеad R. F., Some methods applicable to identities and inequalities of symmetric algebraic functions of n letters, Proc. Edinburgh Math. Soc., 21 (1903), стр. 144. *[4] Ryser H. J., Combinatorial properties of matrices of zeros and ones, Canad. J. Math., 9, № 3 (1957), стр. 371. Гл. 10. Паросочетание простого графа [1] Berge С., Sur la déficience d’un réseau infini, С. R. Acad. Sciences, 245 (1957), стр. 1206. [2] Birkhoff G., Très observaciones sobre el algebra lineal, Rev Univ. пас. Tucuman, Série А, 6 (1941), стр. 147. [3] Ergévary J., Matrixok kombinatorius tulajdonsagairol, Mat. Fix. Lapok, 1931, стр. 16. [4] Hall P., On representations of subsets, J. London Math. Soc., 10 (1934), стр. 26. [5] Ha1mоs P. R., Vaughan H. E., The marriage problem, Am. J. of Math., 72 (1950), стр. 26. [6] König D., Va1ко S , Über mehrdeutige Abbildungen von Mengen, Math. Ann., 95 (1926), стр. 135. [7] Kuhn H. W, The Hungarian Method for the assignement problem, Naval research Quaterly, 2 (1953), стр. 83. [8] Mann H. B , Ryser H. J., Systems of distinct representatives, Am. Math. Monthly, 60 (1953),- стр. 397. [9] Ore O, Graphs and matching theorems, Duke Math. J., 22 (1955), стр. 625. [10] Rado R., Factorization of even graphs, Quat. J. of Math., 20 (1949), стр. 95. Гл. 11. Факторы [1] Ahrens W., Mathematische Unterhaltungen und Spiele, Berlin 1910, стр 319. [2] Dirac G. A., The structure of ^-chromatic graphs, Fund. Math., 40 (1953), стр. 50. [3] Euler, Commentationes Arithmeticae Collectae, St. Peterburg, 1766, стр. 337. [4] Flye Sainte-Marie, Note sur un problème relatif à la marche du cavalier sur l’échiquier, Bull. Soc. Math, de France, & (1876), стр. 144. [5] Jоhnsоn S., Optimal 2 and 3-stage production schedules with set up times included, Naval' Res. Quaterly, 19’54. [6] Kraitchik M., La Mathématique des jeux, Bruxelles, 1930, стр. 357. [7] Ringe1 G , Über drei kombinatorische Probleme am n-dim. Würfel und Würfelgitter, Abh. Math. Sem. Univ. Hamburg, 20 (1955), стр. 10. [8] Sainte-Lagüe A, Avec des nombres et des lignes, Paris, 1943 (Vuibert, éd.), стр. 291.
ЛИТЕРАТУРА 297 Гл. 13. Диаметр сильно связного графа [1] Bratton D., Efficient communication Networks, Cowles Comm Disc. Paper, 2119 (1955). [2] Christie L. S, Luce R. D., Macy J, Communication and Learning in a taskoriented group, M. I. T. Res. Lab. of electr. technical Report, 231 (1952), стр. 238. [3] Radner R., Tritter A., Communication in Networks, Cowles Comm, paper, 2098 (1954). [4] Roy B., Sur quelques propriétés des graphes fortement connexes, C. R. Acad. Sciences, 247, № 4 (1958), стр. 399. Гл. 14. Матрица смежности графа [1] Katz L., An application of matrix algebra to the study of human relations, mim., Univ, of North Carolina, I960. [2] Kendall M. D., Rank Correlation methods, Londres 1948 (Griffin, éd.),— Further contributions to the theory of paired comparisons, Biometrics, 2 (1955), стр. 43. [3] Lévi-Strauss C., Les structures élémentaires de la parenté, Paris, 1949 (Presses universitaires) [4] Luce R. D., Perry A. D., A method of matrix analysis of group structure, Psychometrika, 14 (1949), стр. 95. [5] Luce R. D., A note on Boolean matrix theory, Proc. Am. Math. Soc., 3 (1952), стр. 382. [6] Mоrenо J. L., Fondaments de la Sociométrie (trad. Lesage-Maucorps), Paris, 1954 (Presses universitaires). [7] Rоss I. C., Harary F., On the determination of redundancies in sociometric chains, Psychometrika, 17 (1952), стр 195. [8] Wei T. H., The algebraic foundations of ranking theory, thèse, Cambridge, 1952. Гл. 15. Матрицы инциденций [1] Chuard J., Questions d’analysis situs, Rend. Circ. Palermo, 46 (1922), стр. 185. [2] Heller L, Tompkins С. B, An extension of a theorem of Dantzig’s, Ann. of math, studies, 38 (1956), стр. 247; Хеллер И., Томпкинс Ч. Б., Обобщение одной теории Данцига, сб. Линейные неравенства, ИЛ, М., 1949. [3] Ноffman A. J., Kruskal J. В., Integral boundary points of convex polyhedra, Ann. of Math. Studies, 38 (1956), стр. 223; есть русский перевод: Гофман А. Дж., Краскал Дж. Б., Целочисленные граничные точки выпуклых многогранников, сб. Линейные неравенства, ИЛ, М., 1959. [4] Kirchhoff G., Poggendorf Annalen, 72 (1847), стр. 497.
298 ЛИТЕРАТУРА [5] Okada S., Algebraic and topological foundations of network synthesis, Proc. Symp. on Modern Network synthesis, New York, 1955, стр. 283. [6] Poincaré H., Complément à l’analysis situs, Rend. Cire. Palermo, 13 (1899), стр. 285. [7] Veb1en O., Alexander J. W., Manifolds of n dimensions, Ann. of Math., 14 (1913), стр. 163. *[8] Кудрявцев Л. Д., О некоторых математических вопросах теории электрических цепей, Успехи матем. наук, 3, № 4 (1948), стр. 80. * Дополнительная литература к гл. 14 и 15 [1] Л ихтенбаум Л. М., Характеристические числа неособенного графа, Труды 3-го Всес. матем. съезда, том. 1, 1956, стр. 135. [2] Лихтенбаум Л. М., Теорема двойственности для неособенных графов, Усп. матем. наук, 13, № 5 (1958), стр. 185. [3] Лихтенбаум Л. М., Следы степеней матриц соседства вершин и ребер неособенного графа, Изв. высш, учебн заведений, математика, 5 (1959), стр. 154. [4] Лихтенбаум Л. М., Новые теоремы о графах (печатается в Сибирском математическом журнале). [5] Со11atz L., Sinоgоwitz U., Spektren endlicher Grafen, Abhandl. Math. Seminar Univ. Hamburg, 21, № 1— 2 ( 19*57), стр; 63. Гл. 16. Деревья и прадеревья [l] van Aardenne-Ehrenfest T, de Bruijn N. G., Circuits and trees in oriented linear graphs, Simon Stevin, 28 (1951), стр. 203. [2] Bott R., Mayberry J. P., Matrices and trees, Economie Activity analysis, New York 1954 (Wiley, ed.), стр. 391. [3] Cayley A., Collected mathematical papers, Cambridge, 3, стр. 242, 13, стр. 26, и т. д. [4] Jordan С., Sur les assemblages de lignes, J. für die reine und angew, Math., 70 (1869), стр. 185. [5] Kelly P. J., A congruence theorem for trees, Pacific J. of Math., 7 (1957), стр. 961. [6] Kruskal J. B., On the shortest spanning subtree of a graph, Proc. Am. Math. Soc., 7 (1956), стр. 48. [7] de Pо1ignaс C., Théorie des ramifications, Bull. Soc. Math. France, 8 (1880), стр. 120. [8] Trent H. M., A note on the enumeration and listing of all possible trees in a connected linear graph, Proc. Nat. Ac. Sciences, 40 (1954), 1004. *[9‘] Weinberg L., Number of trees in a graph, Proc. I. R. E., 46, № 12 (1958), стр. 1954. *[10] Tutte W. T., A contribution to the theory of chromatic polynominals, Canad. J. Math., 6, № 1 (1954), стр. 80.
ЛИТЕРАТУРА 299 Гл. 17. Задача Эйлера [1] van Aardenne-Ehrenfest T., de Bruijn N. G., Circuits and trees in oriented linear graphs, Simon Stevin 28 (1951), стр. 203. [2] de Bruijn N. G., A combinatorial problem, Proc. Nederl. Akad. Wetensch., 49 (1946), стр. 758. [3] Good I. J., Normal recurring decimals, Bull. Am. Math. Soc., 40 (1947), 859. [4] Martin M. H., A problem in arrangements, Bull. Am. Math. Soc., 40 (1934), стр. 859. [5] Amitsur A. S., Levitzki J., Proc Am. Math. Soc., 1 (1950), стр. 449. Гл. 18. Паросочетание произвольного графа [1] Berge С., Two theorems in graph theory, Proc. Nat. Ac. Sciences, 43 (1957), стр. 842. [2] Berge C., Sur le couplage maximum d’un graphe, C R. Acad Sciences, 247 (1958), стр. 258. [3] Ga11ai T., On factorisation of graphs, Acta Math. Hungaricae, 1 (1950), стр. 133. [4] Maunse11 F. G., A note on Tutte’s paper, J. London Math. Soc., 27 (1952), стр. 127. [5] Nоrman R. Z., Rabin M. O , An algorithme for a minimum cover of a graph (abstract), Noties of the Am. Math. Soc., 5, février (1958), стр. 36. [6] Petersen J., Die Theorie der regulären Graphen, Acta, Math., 15 (1891) стр. 193. [7] Rоth J. P., Combinatorial topological methods in the synthesis of switching circuits, I. В. M. Res. Report, RC-11, Poughkeepsie, 1957. [8] Tutte W. T., The factorisation of linear graphs, J. London Math. Soc., 22 (1947), стр 107. *[9] Зыков А. А., Функции от графов, определяемые линейными уравнениями, Изв. Сиб. отд. АН СССР, 5 (1959), стр. 3; 9 (1960), стр. 17; 12 (1960), стр. 13 Гл. 19. Фактороиды [1] Baebler F, Über die Zerlegung regulären Streckenkomplexe ungerader Ordnung, Comment. Math. Helvetici, 10 (1938), стр. 275. [2] Belck H. B., Reguläre Faktoren von Graphen, J. Reine Angew. Math, 188 (1950), стр. 228. [3] Sainte-Lagüe A., Les réseaux unicursaux et bicursaux, C. R. Acad. Sciences, 182 (1926), стр. 747. [4] Tutte W. T., The factors of graphs, Canad. J. of Math., 4 (1957), стр. 314. A short proof of the factor theorem for finite graphs, Canad. J. of Math., 6 (1954), стр. 347. [5] Tutte W. T., On hamiltonian circuits. London Math. Soc J., 21 (1946), стр. 99.
300 ЛИТЕРАТУРА *[6] Wagnег K-, Faktorklassen in Graphen, Math. Ann., 141, № 1 (1960), стр. 49. Гл. 20. Связность графа [1] Dirac G. A., The structure of ^-chromatic graphs, Fund. Math., 40 (1953), стр. 42. — Some theorems on abstract graphs, Proc. London Math. Soc., 2 (1952), стр. 69. [2] Hajos G., Zum mengerschen Graphensatz, Acta litt. ac. Sc. (Math.), 7 (1934), стр. 44. [3] Kelly J. B., Kelly L. M., Paths and circuits in critical graphs, Am J. of Math, 76 (1954), стр. 790. [4] Menger К., Zur allgemeinen Kurventheorie, Fund. Math, 10 (1926), стр. 96 [5] Whitney H., Non separable and planar graphs, Trans. Am. Math. Soc, 34 (1932), стр. 339. — Congruent graphs and the connectivity of graphs, Am. J. of Math., 54 (1932), стр. 150. Гл. 21. Плоские графы [1] Dirac G. A, Map colour theorems related to the Heawood colour formula, J. London Math. Soc., 31 (1956), стр. 460. [2] Diгac G. A., SchusterS., A theorem of Kuratowski, Proc, of the Nederl. Ak. W., 57 (1954), стр 343. [3] Errera J., Du coloriage des cartes, thèse, Bruxelles, 1921; Mathesis, 36 (1922), стр. 56. [4] Kuratowski G., Sur le problème des courbes gauches en topologie, Fund. Math., 15— 16 (1930), стр. 271. [5] Ringel G., Bestimmung der Maximalzahl der Nachbargebiete auf nichto- rientierbaren Flächen, Math. Ann, 127 (1954), стр. 181. [6] Ringel G., Farbensatz für orientierbare Flächen vom Geschlechte p > 0, J. Reine Angew Math., 193, № 1/2 (1954), стр. 11. [7] Tait P. G., Note on a theorem in geometry of position, Trans. Royal Soc. of Edinburgh, 29 (1880), стр. 657. [8] Whitney H., Planar graphs, Fund. Math., 21 (1933), стр 73. [9] Whitney H., Congruent graphs, and the connectivity of graphs, Am. J. of Math., 54 (1932), стр. 150. *[10] Coxeter H. S. M., Map-colouring problems, Scripta Math., 23, № 1— 4 (1958), стр. 11. *[11] Ringel G. Färbungsprobleme auf Flächen und Graphen, Berlin, V. E. B. Dtschl. Verl. Wiss., 1959, 132 S., ill. Добавление I. Об общей теории игр [1] Berge С., Théorie générale des jeux à n personnes, Mém. des Sc. Math., 138, Paris (1957). Есть русский перевод (см. стр. 295). [2] Kuhn H., Extensive games and the problem of information, Ann. of Math. St., 28, Princeton, 1953, стр. 193.
ЛИТЕРАТУРА 301 [3] Vi11е J., Traité du Calcul des Probabilités et de ses applications (E. Borel), 4, Paris, 1938, стр. 105. Добавление II. О транспортных задачах [1] Appell A., Le problème géométrique des déblais et remblais, Mém. des Sciences Math., 27, Paris, 1928 (Gauthier-Villars, éd.). [2] Cahn A. S., The Warehouse Problem, Bull A. M S . 54 (1948), стр 1073 [3] Dantzig G. B., Application of the simplex method to a transportation problem, Activity Analysis, Cowles Com. Monograph, 13, New York, 1951 (Wiley and Sons, ed.). [4] Flood M. M., On the Hitchcock distribution problem, Pacific J. of Math., 3 (1953), стр. 369. [5] Fоrd L. R., Fulkerson D. R., Solving the transportation problem, Management Sei., 3 (1956), стр. 24; A primal dual algorithm for the capacited Hitchcock problem, Rand Res. Mem , P-827, Santa-Monica. 1956. [6] Fulkerson D. R., Hitchcock transportation problem, Rand paper, P-890, Santa-Monica, 1956. [7] Hitchcock F. L., The distribution of a product from several sources to numerous localities, J. Math. Piys., 20 (1941), стр. 224. [8] Kahtоpович Л. В., О транслокации масс, ДАН СССР, 37 (1942), стр. 99. [9] Коорmапs Т. С., Reiter S., A model of transportation, Activity Analysis, Cowles Com. Monograph, 13, New York, 1951 (Wiley and Sons, ed.), стр. 222. [10] Kuhn H. W., The Hungarian method for the assignment problem, Naval Res. Quat., 2 (1955). [11] Monge, Déblai et remblai. Mémoires de l'Ac. des Sei., 1781. [12] Orden A, The transschipment problem, Management Sei, 2 (1956). [13] Votaw D. F., Orden A., The personnel assignment problem, Scoop Symposium on Linear Inequalities and Programming, Washington, 1952, стр. 155. Добавление III. Об использовании понятия потенциала в транспортных сетях [1] d’Auriас A., A propos de l’unicité de solution dans les problèmes de réseaux maillés, La Houille Blanche, 2 (1947), стр. 209. [2] Brooks R. L., Smith С. A. B., Stone A. H„ Tutte W. T., The dissection of rectangles into squares, Duke Math. J., 7 (1940), стр. 312. [3] Duffin R. J., Non liner networks II, Bull. A. M. S., 53 (1947) стр. 963. [4] Кооpmans T. C., Reiter S., A model of transportation, Activity Analysis of Production and Allocation, 2-d ed., стр. 222, New York. [5] Parоdi M., Sur l’existence des réseaux électriques, C. R. Acad. Sc., 223 (1946), стр. 23. [6] Sprague R., Zur Abschätzung der Mindestzahl inkongruenter quadrate, Math. Zeit., 46 (1940), стр. 460.
302 ЛИТЕРАТУРА [7] Taussку О., A recurring theorem on determinants, Am Math. Monthly, 56 (1949), стр. 672. [8] Le Соrbei1Ier P., Analyse matricielle des réseaux électriques (Dinod, éd), стр. 33. Добавление IV. Нерешенные задачи и недоказанные предположения [1] Напаni Н., On Steiner’s triples and quadruples, Abstr. Short communs. Intern. Congress Math, in Edinburgh, Edinburgh, Univ. Edinburgh, 1958, стр. 29— 30. [2] Thompson L. L., Lectures on Game Theory, Markov Chains and related Topics, Sandia Corp. Monograph, 1958. Добавление V. О некоторых основных принципах подсчета (Ж. Риге) Для справок [1] Davis, The number of structures of finite relations, Proc. A. M. S., 1953, стр. 486. [2] Fоrd G. W., Haгary F., Norman R. Z., Uhlenbeck G. E., Combinatorial problems in the theory of graphs, Proc. Nat. Ac. Sc., 42 (1956), стр. 122; 42 (1956), стр. 203; 42 (1956), стр. 529; 43 (1957), стр. 163. [3] Fоrstег R. M., The number of series-parallele networks, Proc. Int. Congres of Math., 1950, стр. 646. [4] Harary F., Note on the Polyà and Otter formulas for enumerating trees, Michigan Matn. J., 3 (1955), стр. 109; The number of dissimilar supergraphs of a linear graph, Pacific J of Math., 7 (1957), стр. 903; The number of linear directed rooted and connected graphs, Trans. A. M.S., 78 (1955), стр. 445. [5] Нагагу F., Norman R. Z., Theory of Graphs (à paraître); The dissimilarity characteristic of linear graphs, Proc. A. M. S., 5 (1954), стр. 131; The dissimilarity characteristic of Husimi trees, Ann. of Math., 58 (1953), стр. 134. [6] Otter R., The number of trees, Ann. of Math., 49 (1948), стр. 583. [7] Polya G., Kombinatorische Anzahlbestimmungen für Gruppen, Graphen und chemische Verbindungen, Acta Math., 68 (1937), стр. 145. Для дополнительных задач и справок [1] Izbicki Н., Reguläre Graphen 3, 4 und 5 Grades mit vorgegebenen abstrakten Automorphismengruppen, Farbenzahlen und Zusammenhängen, Monat, für Math., 61 (1957), стр 42 [2] Riordan J., Introduction to combinatorial analysis (Wiley), New York, 1958; русский перевод: Риордан Дж., Введение в комбинаторный анализ, ИЛ, М. (в печати). [3] Sabidussi G., Graphs with given group and given graph-theoretical properties, Canad. J., Math., 9 (1957), стр. 515.
ТЕОРИЯ ГРАФОВ И КНИГА К. БЕРЖА (ПОСЛЕСЛОВИЕ К РУССКОМУ ПЕРЕВОДУ) В самых различных областях человеческой деятельности нередко возникают математические задачи комбинаторного характера, приводящие к исследованию графов. Наиболее старые задачи на графы, насчитывающие столетнюю и даже двухсотлетнюю давность, обычно оформлялись как чисто развлекательные (кенигсбергские мосты, расстановка ферзей, ход коня, прогулки девушек и т. п.), но к началу XX века в этой области появилось немало задач, имеющих теоретический и практический интерес. Так, если знаменитая проблема четырех красок, предложенная Кэли членам Лондонского Географического Общества в 1879 году, едва ли актуальна для географии (да и сама математика от попыток решения этой проблемы обогащалась тогда гораздо меньше, чем, например, от попыток доказательства Великой Теоремы Ферма), то важность задачи о подсчете числа изомеров химических соединений или задачи о выделении наименьшей совокупности контуров электрической сети для составления полной системы уравнений Кирхгофа не вызывает сомнений. В XX веке вопросы, прямо или косвенно связанные с графами, стали возникать в большом количестве не только в химии, физике, электротехнике, биологии, социологии и т. д., но и в таких областях чистой математики, как алгебра, топология, теория множеств. Графы фигурировали в самых различных представлениях и под разными названиями: карта, лабиринт, схема, сеть, диаграмма, комплекс, дискретное пространство в смысле Линфилда и др. Термин „граф“ стал общепринятым после выхода в свет в 1936 г. монографии Кёнига (см. [3] к гл. I), где представлен значительный материал и где графы рассматриваются в абстрактной форме как самостоятельные математические объекты. В книге имеются наряду с тривиальными интересные и глубокие теоремы, изучаются не только конечные, но также и бесконечные графы, однако название „Теория графов“ было тогда, пожалуй, несколько преждевременным, ибо в этой области не существовало сколько-нибудь общих методов и для решения каждой задачи использовалось свое особое рассуждение, основанное либо на переборе случаев, в отдельности не интересных, либо на идее, заимствованной из других областей математики. Цельное и оригинальное направление в теории графов открывается в 1937 г. фундаментальной работой Пойа (см. [7] к Доба-
304 ПОСЛЕСЛОВИЕ К РУССКОМУ ПЕРЕВОДУ влению V). Основная теорема этой работы, опирающаяся на весьма простые понятия производящей функции, считающего ряда и циклического индекса группы подстановок, дает общий метод подсчета количеств различных графов с теми или иными свойствами. Во многих конкретных случаях этот метод весьма эффективен, и сам Пойа применил его для определения числа изомеров в химии, а впоследствии появились десятки работ Харари, Нормана, Уленбека, Риордана, Рида и других авторов, посвященных математическим и физическим приложениям. Другим важным общим методом в теории графов следует считать геометрическую теорию транспортных сетей, созданную в 1956— 1957 гг. Фордом, Фалкерсоном и Гейлом. Эта теория позволяет решать не только „собственно транспортные″, но и многие другие прикладные и даже чисто математические задачи, в том числе из самой теории графов. Простой и наглядный алгорифм нахождения наибольшего потока по сети с заданными пропускными способностями звеньев настолько эффективен, что для сетей с сотнями вершин и тысячами дуг легко осуществляется „вручную″, без обращения к быстродействующим вычислительным машинам. В то же время к задаче о наибольшем потоке сводятся многие (жаль, что не все!) линейные программы, причем не возникает никаких усложнений в тех случаях, когда искомое решение должно быть целочисленным. Еще одним общим методом, объединившим целый ряд разнородных задач и позволяющим эффективно решать многие из них, является теория чередующихся цепей с основанным на ней „венгерским алгорифмом″. Будучи заложен Эргевари еще в тридцатых годах, этот метод получил дальнейшее мощное развитие четверть века спустя в работах Галлаи, Куна, Бержа, Нормана и Рэйбина. С помощью метода чередующихся цепей можно, в частности, находить наибольшее внутренне устойчивое множество, а также наибольшее паросочетание в заданном графе; обе эти задачи играют важную роль в теории информации, теории автоматических устройств и при решении сугубо практической задачи о наилучшей раскраске проводников в сложных электрических схемах. Упомянем также о предпринятой переводчиком попытке систематического изучения рекуррентных свойств графов (см. [9] к гл. 18 и [8] к гл. 4). Речь идет о функциях Ф (G), определяемых уравнениями вида Ф(О) = /(Ф(О1), Ф(О2), ..., Ф(С„)), где Gv G2, ..., Gn — графы, получаемые из исходного графа G применением некоторой операции Г и в каком-то смысле более простые, чем G. Для некоторых типов операций Г удается исследовать соответствующие функции Ф единым методом. Таким путем выведено, в частности, несколько новых соотношений между различными числовыми характеристиками графов,
ПОСЛЕСЛОВИЕ К РУССКОМУ ПЕРЕВОДУ 305 Наряду с общими методами в теории графов имеются „очаги конденсации“ в виде отдельных трудных проблем. Очень много исследований посвящено классической проблеме четырех красок. Наиболее интересные результаты, относящиеся как к самой проблеме, так и к различным ее обобщениям, можно разделить на две группы. Первую группу составляют критерии и признаки, позволяющие по чисто комбинаторным свойствам абстрактного графа судить о возможности реализации его в виде плоского топологического комплекса (или, в более общем случае, о возможности вложения его в поверхность с заданными топологическими свойствами); сюда относится, например, теорема Понтрягина — Куратовского. Задачи этой группы в настоящее время важны в связи с техникой печатных электрических схем, но, к сожалению, удобных алгорифмов для их массового решения пока нет. Ко второй группе относятся исследования графов в связи с их хроматическими свойствами (хроматическое число; количество способов разбиения на заданное число внутренне устойчивых множеств). Во многих работах (Г. Дирак, Дж. Келли, Л. Келли и др.) изучается структура „критических″ графов, т. е. таких, что сами они не допускают разбиения на заданное число внутренне устойчивых множеств, но все графы, получаемые из них удалением любой вершины (или любого ребра), допускают такие разбиения. Наконец, в программировании сейчас остро стоит проблема построения удобного алгорифма (который был бы существенно проще перебора) для нахождения хроматического числа графа с большим количеством вершин и ребер; она возникла в связи с задачей наиболее экономного использования ячеек памяти машины. В случаях когда для нахождения и полного исследования той или иной числовой функции от графа нет удобных способов, на практике часто пользуются различными оценками и асимптотическими характеристиками этой функции. Вопросам такого рода посвящены работы Пойа, Шеннона, Джилберта, Г. Н. Поварова, О. Б. Лупанова, Р. Е. Кричевского, Ф. Я. Ветухновского, Б. А. Трахтенброта, А. П. Ершова, Г. И. Кожухина и других авторов. Знаменитая задача Эйлера о кенигсбергских мостах оказалась связанной с рядом интересных проблем (нахождение факторов, гамильтоновых путей и циклов и т. д., а в более общем случае — нахождение в заданном графе подграфов того или иного вида); эти проблемы имеют приложения в физике, химии, биологии, исследовании операций, теории игр и даже в некоторых вопросах теории чисел. Интересной характеристикой графа, обобщающей свойства симметрии в самых различных смыслах, является группа его автоморфизмов (взаимно однозначных преобразований множества вершин на себя, сохраняющих бинарное отношение этого графа); в частности, автоморфизмы графов тесно связаны с задачами подсчета, решаемыми на основе теоремы Пойа. И здесь получен ряд отдельных результатов (Сабидусси, Фрухт, Избицкий и др.). Вообще имеется очень
306 ПОСЛЕСЛОВИЕ К РУССКОМУ ПЕРЕВОДУ много самых различных характеристик графа, важных в том или ином отношении и изучаемых в литературе: радиус и диаметр, дипломатическое число, „сила“ связности (наименьшее число вершин, после удаления которых граф перестает быть связным) и др. Значительная литература посвящена графам того или иного специального вида. Так, систематическое изучение деревьев, начатое еще Кэли, продолжается и сейчас (Оттер, П. Келли, Андреоли, Краскал и др.); большой интерес проявляется к однородным графам и плоским графам (Уитни, Биркгоф, Льюс, Грецш). Проблема синтеза, т. е. построения графа с наперед заданными свойствами, является одной из центральных в теории графов, а ее прикладное значение, например, для синтеза автоматических устройств очевидно; к сожалению, никакого общего подхода к этой проблеме пока нет, а связанные с ней вопросы (теоремы существования и единственности, удобные алгорифмы построения и преобразования графов с заданными свойствами) решены лишь в некоторых весьма частных случаях. Отметим, наконец, что сам язык теории графов делает изложение ряда дисциплин, могущих развиваться и без нее, более удобным и наглядным. Таковы, например, теория игр, математическая лингвистика, некоторые разделы математической эконом! кл, теория алгорифмов (определение алгорифма по А. Н. Колмогорову и В. А. Успенскому, граф-схема Л. А. Калужнина), а в особенности теория электрических сетей (см., например, [8] к гл. 15), изложение которой без понятия ,,граф“ было бы противоестественным. Этот не претендующий на полноту перечень общих методов и отдельных проблем теории графов показывает, что теперь в ее лице мы действительно имеем дело с теорией, которая интересна сама по себе и имеет разнообразные и многочисленные приложения. Особенно велик к ней интерес у лиц, занимающихся кибернетикой и разработкой новых вычислительных устройств. Однако до 1958 г. в литературе не было сколько-нибудь полного и систематического изложения теории графов, если не считать ныне уже устаревшей книги Кёнига. Поэтому выход в свет монографии К. Бержа и перевод ее на русский язык имеет большое значение, несмотря на то что и в этой книге современная теория графов представлена далеко не полностью. Из общих методов теории графов в книге подробно излагаются и неоднократно используются два: теория транспортных сетей и теория чередующихся цепей. К сожалению, метод Пойа, который мог бы составить прекрасную главу, дан только в добавлении и без всяких приложений; этот пробел в нашей литературе будет восполнен готовящимся к печати переводом на русский язык монографии Риордана (Riordan J., An introduction to combinational analysis, New York — London, 1958). Из отдельных проблем, перечисленных нами, в книге затронуты в той или иной степени почти все; ничего не сказано лишь о группе
ПОСЛЕСЛОВИЕ к РУССКОМУ ПЕРЕВОДУ 307 автоморфизмов графа, об асимптотических характеристиках графов и о критических хроматических графах. Много внимания уделено понятиям, важным для теории игр (функция Гранди, ядро, сумма и произведение графов и др.), и изложению самой теории игр на основе теории графов. Остальные приложения даются в виде отдельных примеров, нередко забавного содержания, но таких, что вдумчивый читатель сумеет придать многим из них другое, отнюдь не развлекательное толкование. В подлиннике имелись опечатки, неточные формулировки и некорректные доказательства; внося при переводе исправления, мы, как правило, не снабжали их примечаниями. Значительную помощь при обнаружении неточностей оказали переводчику участники семинара по теории графов в Институте математики Сибирского отделения Академии наук СССР; среди них в первую очередь хочется поблагодарить Л. В. Канторовича, А. И. Фета, В. Г. Визинга, А. А. Берса, М. И. Кратко и Н. М. Сычеву. Ряд исправлений сделан редактором перевода И. А. Вайнштейном. А. А. Зыко#
УКАЗАТЕЛЬ СИМВОЛОВ (X, Y обозначают множества; А, В — подмножества X; х, у, z— элементы множества X; Г, Д — многозначные отображения; k — целое число > 0) а € X, х $ X 7 Ас В, А = В 7 АссВ 8 ЛИВ, лив, л ХВ, Л\В 8 IP* ГР* IP*8 срл 55 | Л | 23 R, R″ 9 0 7 ^=(4)170 W(2) 31 k 4- k' 3i W + k 27 ГЛ, f, Г-1, ГД 10 гл 12 и. = (х, у) 12 U 12 и+А, и-А> иА 13 (j+, U~ 82 (л = (ult u2, ...) = [х, у, г} 13 Z (р), р [х, г] 13 и = [х, у], U 15 Ux 165 р, — р, р/ р' 35 х-Х у, х ≪ у, х = у 1/ G (X, Г) = (X. U) 12 G = (X, Y, Г) 104 G(W) 190 G* 235 GxG', G + G' 30 р (G), v (G) 34 7(G) 38 d (G) 43 a(G) 47 ₽ (G) 49 © (G) 222 p(G) 132 8(G) 138 d (x, y), e (x) 131 d+ (x), d~ (x) 98 d (x, y), d (x) 215 dx(U) 189
ИМЕННОЙ УКАЗАТЕЛЬ Аарден-Эренфест (van Aardene-Eh- renfest Т.) 183 Адамар (Hadamard J.) 146 Адамс (Adams Е. W.) 67 Айзекс (Isaacs R.) 62 Александер (Alexander F. W.) 160 Амицур (Amitsur A. S.) 185 Аппель (Appel P.) 250 Беблер (Baebler F.) 206 Веллман (Bellman R.) 79 Бенсон (Benson D C.) 67 Берж (Berge C.) 53, 115, 190, 195— 197, 201 Бернштейн (Bernstein F.) 115, 117 Бёрч (Birch) 246 Бинэ (Binet) 170 Биркгоф (Birkhoff G.) 118, 119 Борель (Borel E.) 246 Ботт (Bott R.) 176, 177 де Брёйн (de Bruijn N. G.) 183 Брукс (Brooks R. L.) 263 Брэттон (Bratton P.) 137, 140, 141, 272 Вандермонд (Vandermonde) 122 Веблен (Veblen O.) 166 Boto (Votaw D. F.) 252 Галлаи (Gallai T.) 188, 196 Гамильтон (Hamilton W.) 120, 121 Гаусс (Gauss K. F.) 43 Гейл (Gale D.) 92, 100 Гильберт (Hilbert D.) 206 239 Гйльбо (Guilbaud G. T.) 53 Гомори (Gomory R. E.) 42, 190 Гофман (Hoffman A. F.) 89, 93, 159 Гранди (Grundy P. M.) 23, 29— 33 38, 40, 42, 59— 65, 207, 271 Данциг (Dantzig G. B.) 42, 255 Даффин (Duffin) 265 Джонсон (Johnson S.) 123 Дирак (Dirac G. A.) 217 Дирихле (Dirichlet L.) 262, 264, 265 Дынкин E. Б. 235 Жордан (Jordan C.) 216 Калмар (Kalmar F.) 70 Кан (Kahn A. S.) 253 Канторович Л. В 250 Кендалл (Kendall) 273 Кёниг (Konig D.) 24, 39, 104, 111, 112, 114, 115, 118, 123, 124 Киркман (Kirkman) 204 Коксетер (Coxeter H. S. M.) 240 Кон-Фоссен (Kon-Vossen S.) 239 Коши (Cauchy O.) 170 Краскал (Kruskal J. B.) 159, 167 Креверас (Kreweras G.) 273 Кристи (Christie L. S.) 135 Крон (Kron) 265 Куайн (Quine) 193 Кун (Kuhn W. H.) 70, 89, 112, 246, 247, 255 Купманс (Koopmans T. C.) 250, 266, 269 Куратовский (Kuratowski G.) 231 Кэли -(Cailey A.) 44 Лаплас (Laplace P.) 170 Левицкий (Levitzki I.) 185 Лефшец (Lefschetz S.) 238 Литтлвуд (Littlewood J. E.) 100 Лихтенбаум Л. M. 144 Лукасевич (Lukasiewicz J.) 174 Льюс (Luce R. D.) 135, 139 Люка (Lucas E.) 75, 195, 205 Мейберри (Mayberry J. P.) 177 Мейси (Macy J.) 135 Менгер (Menger K.) 217, 224
310 ИМЕННОЙ указатель Менделеев Д И. 34 Монж (Monge G.) 250, 251 Моргенштерн (Morgenstern О.) 53 Морено (Moreno J. L.) 147 Морон (Moron) 262 Муавр (de Moivres) 122 Мур (Moore Е. Н.) 64, 270 Нейман (Neumann) 262, 264, 265 фон Нейман (J. von Neumann) 53, 70, 119, 246, 247 Норман (Norman R. Z.) 190, 192, 195 196 Нэш ’(Nash) 246, 247 Окада (Okada S.) 162 Орден (Orden A.) 252 Ope (Ore O.) Ill Перрон (Perron O.) 150 Петерсен (Petersen J.) 188, 196, 206, 209 Пойа (Polia G.) 34, 100, 280 Понтрягин Л. C. 231 Постумус (Posthumus) 182 Пуанкаре (Poincare H.) 160 Радо (Rado O.) 25, 59, 290 Райзер (Ryser H. J.) 100 Рейсс (Reiss M.) 270 Рейтер (Reiter S.) 269 Риге (Riquet J.) 275 Рингель (Ringel G.) 105, 240 Ричардсон (Richardson M.) 56, 59 Pot (Roth J. P.) 193 Pya (Roy B.) 135 Рэйбин (Rabin M. O.) 190, 195, 196 Сильвестр (Silvestre) 270 Смит (Smith С. A. B.) 210, 263 Cnpar (Sprague R.) 263 Стоун (Stone A. H.) 263 Тарри (Tarry G.) 77 Татт (Tutte W. T.) 176, 197, 198, 213, 214, 263 Таусски (Taussky O.) 265 Томпсон (Thompson G. L.) 273 Трент (Trent H. M.) 172 Тэт (Tait P. G.) 238, 273 Уитни (Whitney H.) 224, 236 Успенский В. A. 235 Уэй (Wei T. H.) 149, 273 Фалкерсон (Fulkerson D. R.) 85— 87, 89, 105, 255, 257 Фишер (Fisher R. A.) 89 Флёри (Fleury) 181 Флад (Flood M. M.) 255 Форд (Ford L. R.) 79, 85, 86, 87, 89, 105, 255, 257 Фробениус (Frobenius) 150 Хадвигер (Hadviger) 274 Ханани (Hanani) 271 Харди (Hardy G. H.) 100 Хеллер (Heller J.) 156 Хедвуд (Headwood) 239, 240 Хефтер (Heffter) 240 Хичкок (Hitchcock F. L ) 250, 251 Холл (Hall P.) 104, 115, 118, 124 Цермело (Zermelo E.) 70 Цорн (Zorn) 20, 21 Шеннон (Shannon С. E.) 46— 48, 271 Штейнер (Steiner J.) 270 Шютценбергер (Schiitzenberger M. P.) 184, 271 Эйлер (Euler L.) 107, 122, 179, 228, 229 Эргевари (Ergevary J.) 112 Эррера (Errera J.) 199, 209
ПРЕДМЕТНЫЙ УКАЗАТЕЛЬ Абелево слово 282 Абсолютное равновесие 70 Активный игрок 67 Алгорифм 50 — нахождения кратчайшего дерева 167 - пути 78, 79 - наибольшего паросочетания (венгерский алгорифм) 112 - потока 85, 86, 292 - совместимого множества 192 - наименьшего внешне устойчивого множества 51 - потока 89 - потока, производящего наибольшую работу 258 - совместимого с интервалом значений 95 - пути выхода из лабиринта 76, 77 - базы независимых циклов 168 — непосредственного выявления эйлерова цикла 181 — построения наибольшего паросочетания 114 - наименьшей опоры 114 Антисимметрический граф 14 Антиузел 135 База векторного пространства 36 — графа 19 Бержа— Нормана— Рэйбина теорема 190 Бернштейна теорема 115 Бесконечная грань плоского графа 228 — транспортная сеть 96 Бесконечный граф 23, 24 Бинэ — Коши формула 170 Бистохастическая матрица 118 Бихроматический граф 39 Благоприятная (оптимальная) стратегия 72 Брэттона гипотеза 140 Булево сложение 152 — умножение 152 Бюджет транспортной сети 255 Вектор-цикл 35 Векторное подпространство 35 Величина потока 82 — рассечения 126 Венгерский алгорифм 112 Верхняя грань 19 — структура 19 Вершина (точка) графа 12 Вес разбиения 279 Ветвь 135 Вещественное трехмерное пространство 9 Висячая вершина 165 Внешне устойчивое множество 48 Внутренне устойчивое множество 43 Вполне индуктивный граф 20 — унимодулярная матрица 153 — упорядоченное множество 27 Вход 98 — транспортной сети 82 Выигрыш игрока 68, 244 Выход 98 — транспортной сети 82 Гамильтонов путь 120 — контур 120 — цикл 204 Гамильтонова цепь 204 Генеалогическое (родословное) дерево 11 Географическая карта 38 Гипотеза Брэттона 140 — четырех красок 234, 236 Гранди функция 29 Граничные вершины дуги 12 Грань 227 Граф (определение) 11, 12 — антисимметрический 14 — без контуров 18 - сочленений 217 — бесконечный 23 — бихроматический 39 — вполне индуктивный 20
312 ПРЕДМЕТНЫЙ УКАЗАТЕЛЬ Граф, двойственный данному 236, 239 — индуктивный 20 — конечный 23 — локально конечный 23 — минимально связный 135 — однородный 198 — плоский 38, 227, 238 — полный 14 — прогрессивно конечный 23 - ограниченный 23 — простой 51, 88, 104 — псевдосимметрический 182 — регрессивно конечный 24 - ограниченный 24 — связный 15 — сильно связный 14 — симметрический 14 — структурный 19 — топологический 227, 238 — тотальный 18 — транзитивный 18 — частичный 12 — ab-плоский 76 — Г -конечный 22 — Г-1-конечный 22 — Г -ограниченный 22 — А-связный 223 — р-хроматический 37 — S-топологический 238 Группа подстановок 276 Двоичная запись числа 31 Двойственная строчка 99 Двойственный граф 236, 239 Декартово произведение 8 Дерево 165 Дефицит простого графа 10§ Диаметр Графа 138 Динамические программы 79 — сети 83 Дирихле задача 262 Дирихле— Неймана задача 262 Длина дуги графа 78 — пути графа 13 — ребра графа 166 Дополнительная матрица 142 Дуга (графа) 12 Емкость графа 47 Задача Куайна 193 — Купманса 266 — о бомбардировке путей сообщения 222 Задача о волке, козе и капусте 76 - воспитанниках и воспитанницах 104 - восьми ферзях 43 - кёнигсбергских мостах 179 - книгах 123 - коне Аттилы 221 - котловане и насыпи 251 - лидере 147 - - назначении лиц на должности 104 - нахождении наименьшего покрытия 192, 193 - прогулке молодых девушек 195 - пяти ферзях 49 - пятнадцати девушках 44 - разбиении прямоугольника на квадраты 262 - распределении товара по транспортной сети 252 - складе 253 - трех городах и трех источниках снабжения 227, 230 - урезанной шахматной доске 194 - ходе шахматного коня 122 - часовых 49 - шести красных дисках 49 — об информационной емкости множества сигналов 46 ■ - оптимальном назначении лиц 252 - экскурсии 100 Замкнутая поверхность 238 Замкнутое кругосветное путешествие 120 Заходящая (в вершину, в множество) дуга 13 — (в множество вершин) цепь 187 Игра 61, 67, 243 — в бридж 245 — Ним 61, 68 — — порядка р 64 — с полной информацией 67, 245 - совершенной информацией 245 Игрок 67 Избыток 261 Изолированная вершина (точка) 98, 165 Индекс положения игры 243 Инцидентность 13 Исходящая (из вершины, из множества) дуга 13 Квазипорядок 17 — определенный графом 17
ПРЕДМЕТНЫЙ УКАЗАТЕЛЬ 313 Кёнига— Оре теорема 111 Кёнига теорема о бихроматических графах 39 Кёнига— Холла теорема 104, 108 Класс эквивалентности 9 Классы транзитивности 276, 277 Клика 44 Код 46 Комбинированная стратегия 246 Композиция отображений 10 Компонента (связности) 15 Конец дуги 12 Конечная грань плоского графа 228 Конечный граф 23 Контур 13 Край грани 227 Куна— Бёрча теорема 246 Кусок графа 220, 231 - внешний 232 - внутренний 232 Лабиринт 75 Лапласа формула 170 Латинские квадраты 107 Лемма Цорна 20 — Эррера 199 Линейная конфигурация 170 Линейно зависимые векторы 36 — независимые векторы 35 Линейные программы 41, 81, 84, 190, 249, 250 Мажоранта 17 Максимальный элемент 20 Матрица инциденций для дуг 153 - ребер 153 — смежности р-графа 142 Менгера теорема 217 Минимально связный граф 135 Минимальный кусок 220 — элемент 20 Миноранта 18 Многочленный коэффициент 285 Множество 7 — изоляции 221 — информации 243 — сочленения 221 Моноид 174 Мультиграф 34 Наибольший элемент множества 18 Наименьший элемент множества 18 Напоминание 246 Насыщенная дуга 86 Начало графа 186 — дуги 12 Недостижимая вершина 186, 195 Независимые циклы 35 Незамкнутное кругосветное путешествие 121 Ненасыщенная вершина 112, 190, 194 Неприводимая вершина 66 Несравнимые вершины 109 Нижняя грань 19 — структура 19 Нормальная форма игры 245 Обобщенная сумма матриц 150 Обобщенное произведение матриц 150 — сложение чисел 150 — умножение чисел 150 Образ 10 Обратное отображение 10 Объединение 8 Однородный граф 198 Ожидание выигрыша 244, 246 Опора 200, 268 — оптимальная 266 — простого графа 109 Ориентируемая поверхность 238 Основной вероятностный закон (в игре) 243 Отклонение 131 Отклоненность 131 Отношение порядка 18 Отображение многозначное 10 — однозначное 10 Ощипывание графа 220 Паросочетание произвольного графа 194 — простого графа 104 Пассивный игрок 67 Перемещение 101 Пересечение 8 Перешеек 207 Периферийная точка 131 Перифероидная точка 216 Петерсена— Галлаи теорема 188 Петерсена— Эррера теорема 209 Петля 13 Планирование неполных блоков 89 Плоский граф 38, 227 - топологический 227, 238 Поверхность. 238 Погоня 69 Подграф 12 Подигра 68 Подмножество 7 Подстановка 275 — единичная 275 Поединок 72
314 ПРЕДМЕТНЫЙ УКАЗАТЕЛЬ Покрытие графа 88, 192 Полное паросочетание 112 Полный граф 14 — поток 86 Положение игры 67, 243 Полустепень захода вершины 98 — исхода вершины 98 Понтрягина— Куратовского теорема 231 Порядковая функция графа 28 Порядковое (трансфинитное) число 27 Порядок 18 — вершины графа 28 Поток 82 — совместимый с избытками 261 - множеством значений 89 Потенциальная функция графа 262 Потребность вершины, множества 90 Правило Тарри 77 — игры 67, 243 Прадерево 19, 173 Предшествующая вершина 17 Проводимость дуги 262 Прогрессивно конечный граф 23 •— ограниченный граф 23 Произведение графов 30, 46 Пропускная способность дуги 82 - разреза 85 Простая цепь 15 Простой граф 51, 88, 104 — путь 13 — цикл 15 Псевдосимметрический граф 182 Пустое множество 7 Путь (в графе) 13 Работа потока 255 Равновесие (в игре) 70, 244 Радиус графа 132 - ненаправленный («радиоид») 216 Радо теорема 25 Разбиение (множества) 9 — в смысле теории чисел 279 Размерность отображения 282 — разбиения 279 Разность потенциалов 261 Разрез (транспортной сети) 85 Рассечение графа 126 Расстояние 131 — между вершинами 215 Ребро графа 14 — мультиграфа 34 Регрессивно-конечный граф 24 Регрессивно-ограниченный граф 24 Регулярность отношения 276 — подстановки 276 Результат игры 72 Рейни проблема 18 Ричардсона теорема 56 Розетка 135 Родословное (генеалогическое) дерево 11 Род поверхности 239 Связный граф 15 Сеть коммуникаций 215 Сигналы 46 Сила игрока 149 - итерированная порядка р 148 Сильно связный граф 14 Сильные вершины 186, 195 — дуги 112 — ребра 186, 189, 207 Симметрическая группа 277 Симметрический граф 14 Симплекс-метод 42, 85 Слабые вершины 186, 195 — дуги 112 — ребра 186, 189, 207 Следующая вершина 17 Слово 282 Смежные вершины 13 — грани 227, 228 — дуги 12 Смешанная вершина 186, 195 Совершенная информация 245 Совершенное паросочетание 194 Совершенный прямоугольник 262 Совместимость множества ребер с данной функцией 189 Сопротивление дуги 262 Сопряженная эквивалентность 279 Сопряженное отображение 281 Составная цепь 15 Составной путь 13 — цикл 15 Сохранное отображение 47 Социограммы 147 Способность бюджета 256 Старшинство 14 Степень вершины 180 — отображения 281 Стратегия 69, 244 Строго предшествующая вершина 17 — следующая вершина 17 Структурное отношение порядка 19 Структурный граф 19 Стягивание множества вершин 135 Сумма графов 30 — порядка р игр Ним 64 Схема информации 183 — коммуникаций 14 Татта теорема 213
ПРЕДМЕТНЫЙ УКАЗАТЕЛЬ 315 Теорема Аардена-Эренфеста — де Брёйна 183 — Амицура — Левицкого 185 Теорема Бержа— Нормана— Рэйбина 190 •— Бержа о бесконечных транспортных сетях 115 - наибольшем внутренне устойчивом множестве 201 — Бернштейна 115 — Биркгофа — фон Неймана 119 — Бэблера 206 — Гейла 92 — Гофмана 93 — Дирака 124 — Жордана (о центроидах графа) 216 — Кёнига 112 ■ - о бихроматических графах 39 — - гамильтоновом пути 123 - последовательностях 24 — Кёнига— Ope 111 — Кёнига— Холла 104, 108 — Куна— Бёрча 246 — Менгера 217 — фон Неймана— Нэша 246 — о полустепенях 98 — Перрона— Фробениуса 149, 150 — Петерсена 206 — Петерсена— Галлаи 188 — Петерсена— Эррера 209 — Понтрягина— Куратовского 231 — Пуанкаре— Веблена— Александера 160 — - Радо 25 — Ричардсона 56 — Руа 135 — Татта 213 - о совершенном паросочетании 198 — Татта— Бержа 197 — Татта— Ботта 176 — Таусски 265 — Тэта 238 — Уитни 224 — Форда— Фалкерсона 87 — Харди— Литтлвуда— Пойа 100 — Хеллера 156 — Хеллера— Томпкинса— Гейла 153 — Цермело— фон Неймана 70 Тип отображения 281 — слова 282 Топологический граф 227, 238 Тотальный граф 18 — квазипорядок 18 Точка 7 — (вершина) графа 12 Точка простого сочленения 215 — сочленения 215 — равновесия (в игре) 244 Транзитивная группа 277 — эквивалентность 275, 277 Транзитивное замыкание (отображения) 10 Транзитивность 17 Транзитивный граф 18 Транспонированная матрица 142 Транспортная задача 250 — сеть 82 Трасса 137 Турнирная диаграмма 222 Удаленность вершины 215 Узел 135 Уитни теорема 224 Фактор графа 124 Фактор-множество 276 Фактороид 204 Фан Тан (простая игра Ним) 63 Форда— Фалкерсона теорема 87 Функция предпочтения 67, 243 Характеристическая функция множества 55 Хассе диаграмма 18 Ход (в игре) 67, 243 Хроматический класс графа 38 Хроматическое число графа 38 Центр графа 131 Центроид 216 Цепь 15 Цермело— фон Неймана теорема 70 Цикл графа 15 — подстановки 276 Циклическая группа 277 Циклический индекс 280 Цикломатическая матрица (вторая матрица инциденций) 162 Цикломатическое число 34 Частичная игра 68 Частичный граф 12 — подграф 12 Чередующаяся цепь 186 Число внешней устойчивости 49 — внутренней устойчивости 43 — связности 221
316 ПРЕДМЕТНЫЙ УКАЗАТЕЛЬ Шахматы 68 Эйлера формула 228 Эйлерова цепь 179 Эйлеров цикл 179 — контур 182 Эквивалентность 9 Эквивалентные вершины 17 Элемент множества 7 Элементарное произведение матриц 146 Элементарный контур 13 — путь 13 — цикл 15 Эффективное предпочтение 53 Ядро графа 53 а&-плоский граф 76 Г-конечный граф 22 Г-1-конечный граф 22 Г-ограниченный граф 22 бЛсумма 31 — трансфинитных чисел 32 р-граф 98 р-хроматический граф 37 А-связный граф 223 S-топологический граф 238 2-граф, 3-граф 34
ОГЛАВЛЕНИЕ Введение . 5 Глава 1. Основные определения . 7 Множества и многозначные отображения . 7 Граф. Пути и контуры . 11 Цепи и циклы . 14 Глава 2. Предварительное изучение квазиупорядоченности ... 17 Квазипорядок, определяемый графом . 17 Индуктивный граф и базы . 19 Глава 3. Порядковая функция и функция Гранди для бесконечного графа . 23 Общие соображения относительно бесконечных графов . 23 Порядковая функция . 27 Функции Гранди . 29 Операции над графами . 30 Глава 4. Основные числа теории графов . 34 Цикломатическое число . 34 Хроматическое число . 37 Число внутренней устойчивости . 43 Число внешней устойчивости . 48 Глава 5. Ядра графа . 53 Теоремы существования и единственности . 53 Приложение к функциям Гранди . 59 Глава 6. Игры на графе . 61 Игра Ним . 61 Общее определение игры (с полной информацией) . 67 Стратегии . 69 Глава 7. Задача о кратчайшем пути . 75 Процессы по этапам . 75 Некоторые обобщения . 78 Глава 8. Транспортные сети . 82 Задача о наибольшем потоке . 82 Задача о наименьшем потоке . 88 Задача о потоке, совместимом с множеством значений . 89 Бесконечные транспортные сети . 96
318 ОГЛАВЛЕНИЕ Глава 9. Теорема о полустепенях . 98 Полустепени исхода и захода . 98 Глава 10. Паросочетание простого графа . 104 Задача о наибольшем паросочетании . 104 Дефицит простого графа . 108 Венгерский алгорифм . 112 Обобщение на бесконечный случай . 114 Приложение к теории матриц . 117 Глава 11. Факторы . 120 Гамильтоновы пути и гамильтоновы контуры . 120 Нахождение фактора . 124 Нахождение частичного графа с заданными полустепенями .... 128 Глава 12. Центры графа . 131 Центры . 131 Радиус . 132 Глава 13. Диаметр сильно связного графа . 135 Общие свойства сильно связных графов без петель . 135 Диаметр . 138 Глава 14. Матрица смежности графа . 142 Применение обычных матричных операций . 142 Задачи на подсчет . 144 Задача о лидере . 147 Применение булевых операций . 150 Глава 15. Матрицы инциденций . 153 Вполне унимодулярные матрицы . 153 Вполне унимодулярные системы . 158 Цикломатические матрицы . 161 Глава 16. Деревья и прадеревья . 165 Деревья . 165 Аналитическое исследование . 170 Прадеревья . 173 Глава 17. Задача Эйлера . 179 Эйлеровы циклы . 179 Эйлеровы контуры . 182 Глава 18. Паросочетание произвольного графа . 186 Теория чередующихся цепей . 186 Нахождение частичного графа с заданными степенями вершин . . 189 Совершенное паросочетание . 195 Приложение к числу внутренней устойчивости . 200 Глава 19. Фактороиды . 204 Гамильтоновы циклы и фактороиды . 204 Необходимое и достаточное условие существования фактороида . 211 Глава 20. Связность графа . 215 Точки сочленения . 215 Графы без сочленений . 217 Л-связные графы . ♦ 221
ОГЛАВЛЕНИЕ 319 Глава 21. Плоские графы . 227 Основные свойства . 227 Обобщение . 238 Добавления . 241 I. Об общей, теории игр . 243 II. О транспортных задачах . 250 III. Об использовании понятия потенциала в транспортных сетях . 261 IV. Нерешенные задачи и недоказанные предположения . . 270 V. О некоторых основных принципах подсчета (Ж. Риге) 275 VI. Дополнения к русскому переводу (А. А. Зыков и Г. И. Кожухин) . 289 Литература . 293 Теория графов и книга К. Бержа (послесловие к русскому переводу) . 303 Указатель символов . 308 Именной указатель . 309 Предметный указатель . 311
К. Б е р ж ТЕОРИЯ ГРАФОВ И ЕЕ ПРИМЕНЕНИЯ Художник В. П. Заикин Художественный редактор В. И. Шаповалов Технический редактор А. Г. Резоухова Сдано в производство 27/V1-1961 г. Подписано к печати 14/V-1962 г. Бумага 60x90J/1(i=10 бум. л. 20 печ. л. Уч.-изд. л. 18. Изд. № 1/0245 Цена 1 р. 46 к. Зак. 2638. ИЗДАТЕЛЬСТВО ИНОСТРАННОЙ ЛИТЕРАТУРЫ Москва, 1-й Рижский пер., 2 Типография № 2 им. Евг. Соколовой УПП Ленсовнархоза Ленинград, Измайловский пр., 29.