Научная статья на тему 'Минимальные примитивные расширения ориентированных графов'

Минимальные примитивные расширения ориентированных графов Текст научной статьи по специальности «Математика»

CC BY
164
45
i Надоели баннеры? Вы всегда можете отключить рекламу.
Область наук
Ключевые слова
ПРИМИТИВНЫЙ ГРАФ / МИНИМАЛЬНОЕ ПРИМИТИВНОЕ РАСШИРЕНИЕ / ДЕРЕВО / ЛИНЕЙНЫЙ ГРАФ / МНОГОУГОЛЬНЫЙ ГРАФ

Аннотация научной статьи по математике, автор научной работы — Салий Вячеслав Николаевич

Получено решение задачи о построении минимальных примитивных расширений для некоторых типов ациклических графов (исходящие деревья, линейные и многоугольные графы).

i Надоели баннеры? Вы всегда можете отключить рекламу.
iНе можете найти то, что вам нужно? Попробуйте сервис подбора литературы.
i Надоели баннеры? Вы всегда можете отключить рекламу.

MINIMAL PRIMITIVE EXTENSIONS OF ORIENTED GRAPHS

(Oriented) graph G = (V, α) is called primitive if there exists an integer r ≥ 1 such that every two vertices can be connected by a route of length r. A graph G′ = (V, α) is said to be a primitive extension of G if G' is primitive and α ⊆ α′. Primitive extensions with a minimal possible number of additional arcs are constructed for some acyclic graphs (trees, linear and polygonal graphs)

Текст научной работы на тему «Минимальные примитивные расширения ориентированных графов»

ПРИКЛАДНАЯ ДИСКРЕТНАЯ МАТЕМАТИКА

2008 Прикладная теория графов № 1(1)

УДК 519.17

МИНИМАЛЬНЫЕ ПРИМИТИВНЫЕ РАСШИРЕНИЯ ОРИЕНТИРОВАННЫХ ГРАФОВ

В.Н. Салий

Саратовский государственный университет им. Н.Г. Чернышевского E-mail: [email protected]

Получено решение задачи о построении минимальных примитивных расширений для некоторых типов ациклических графов (исходящие деревья, линейные и многоугольные графы).

Ключевые слова: примитивный граф, минимальное примитивное расширение, дерево, линейный граф, многоугольный граф.

Под ориентированным графом (далее - граф) понимается пара G = (V, а), где V - конечное непустое множество и а с V2 - отношение на нем. Элементы множества V называются вершинами графа, а пары, входящие в отношение смежности а, - его дугами. Если (и, v)eа, то говорят, что вершина и является началом дуги (u, v), а вершина v - ее концом. При и = v получается петля (и, и). Считаем, что каждая вершина графа инцидентна некоторой дуге, т.е. является началом или концом некоторой дуги.

Вершина v по определению достижима из вершины и за k > 1 шагов, если существует последовательность примыкающих дуг (маршрут) (w0, w\), (wi, w2), ..., (wk-i, wk) (в краткой записи w0wiw2...wk_iwk), где w0 = и и wk = v. Если A - матрица смежности графа G, т.е. двоичная булева матрица, представляющая отношение а, то последнее определение означает, что на пересечении строки, соответствующей элементу и, и столбца, соответствующего элементу v, в матрице-степени Ak стоит 1.

Для дальнейшего выделим два типа маршрутов с неповторяющимися вершинами. Это n-элементная цепь Pn = viv2.vn и n-элементный контур Cn = viv2.v„vi (начало и конец совпадают).

Граф называется примитивным, если существует целое число r > 1 такое, что каждая вершина графа достижима из любой вершины за r шагов (иначе говоря, если в матрице Ar все элементы равны 1). Таким образом, каждый примитивный граф является сильно связным (любые две вершины взаимно достижимы), но обратное, конечно, неверно: например, никакой контур не является примитивным графом.

Пусть K - некоторый класс графов и G = (V, а) - произвольный граф. Граф G' = (V, а') с тем же множеством вершин называется K-расширением графа G, если а с а' и G'eK. Задача о минимальных K-расширениях данного графа G состоит в следующем: как добавить к G наименьшее возможное число дуг, чтобы получился K-граф? Можно интересоваться, например, минимальными сильно связными, или эйлеровыми, или гамильтоновыми и т.п. расширениями заданного графа. В [1] эта задача была решена для класса K идемпо-тентных графов, т.е. графов с идемпотентной (A2 = A) матрицей смежности: предложена процедура построения минимального идемпотентного расширения графа.

В настоящей заметке в качестве целевого класса K выбран класс примитивных графов. Основным инструментом в доказательствах является следующий критерий примитивности (см., например, [2]): сильно связный граф примитивен тогда и только тогда, когда наибольший общий делитель длин всех его контуров равен 1. В частности, если в сильно связном графе имеется хотя бы одна петля, граф будет примитивным. Отбрасывая этот тривиальный случай, будем рассматривать только беспетельные графы. Далее, ни один из двухвершинных беспетельных графов (цепь Р2 и контур C2) не имеет примитивных расширений, так что все рассматриваемые графы будут иметь число вершин n > 3.

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

Теорема 1. Если сильно связный граф не является примитивным, то его минимальное примитивное расширение получается добавлением одной дуги.

Доказательство. Пусть G - сильно связный не примитивный граф. Вследствие сильной связности каждая его дуга содержится в некотором контуре (см. [3, теорема 8.1.5]). Предположим, что в G имеется контур Ck = viv2...vkvi длины k> 3. Присоединив к графу G дугу viv3, обнаруживаем контур viv3...vkvi, длина которого k - 1 взаимно проста с k, - полученный граф примитивен.

Допустим теперь, что в графе G все контуры имеют длину 2 и C2 = viv2vi - один из них. Так как G имеет не менее трех вершин, в нем существует вершина v3, смежная с vi или с v2. Пусть дугой в G будет v2v3. Вер-

шина у2 достижима из у3. Значит, в О есть контур, содержащий дугу у2у3. По условию, им может быть только контур У2У3У2 . Присоединив к графу О дугу у3уь получаем контур у1у2у3у1 длины 3 - полученный граф примитивен. ■

Пусть р(О) обозначает количество добавочных дуг в минимальном сильно связном расширении

О' = (V, а') графа О = (V, а), т.е. р = |а'| - |а|, и пусть аналогично v(О) - количество добавочных дуг в минимальном примитивном расширении этого графа. Из теоремы 1 вытекает

Следствие. Для любого графа О имеет место неравенство V < р + 1. ■

Турниром называется беспетельный граф, в котором любые две различные вершины соединены в точности одной дугой. Единственный двухвершинный турнир - это цепь Р2, и она не имеет примитивных расширений. К числу сильно связных турниров относится контур С3 = у:у2у3уь Сам он не является примитивным графом, и, присоединив к нему, как в доказательстве теоремы 1, дугу у^3, получим его минимальное примитивное расширение, т.е. в этом случае V = р + 1.

Теорема 2. Каждый сильно связный турнир с п > 4 вершинами примитивен. Если Т - не сильно связный турнир с п > 3 вершинами, то для него V = р + 1.

Доказательство. Пусть Т - сильно связный турнир с п > 4 вершинами. По теореме Мозера (см. [4, теорема 3.43]) в нем имеются контуры всех длин 3 < к <п, откуда и следует его примитивность. Пусть Т - не сильно связный турнир с п > 3 вершинами. По теореме Редеи (см. [4, теорема 3.42]) в нем существует гамильтонова (т.е. проходящая через все вершины) цепь Р = у1у2...у„. Добавим к ней дугу упу1. Полученный граф Т является минимальным сильно связным расширением турнира Т. Будет ли он примитивным? Если из Т удалить дугу у1уп (она есть в Т), то получится сильно связный и, значит, примитивный турнир. Возвращаясь к Т восстановлением дуги у^, мы, конечно, не утратим свойство примитивности. ■

Далее будем рассматривать только бесконтурные графы.

Вершина графа называется источником, если в нее не входит ни одна дуга, и называется стоком, если из нее не исходит ни одна дуга. Как известно, в бесконтурном графе любая вершина достижима из подходящего источника и из любой вершины достижим подходящий сток. Обозначив через / количество источников, а через т - количество стоков в графе О, получаем, что р(О) > шах(/, т) (в минимальном сильно связном расширении графа О в каждый О-источник должна войти дуга и из каждого О-стока должна выйти дуга).

Теорема 3. Для цепи Р„, п > 3, имеем V = р + 1 = 2.

Доказательство. Присоединяя к цепи Рп = у^2.. .уп, п > 3, дугу упу1, получаем контур Сп. Далее, как в доказательстве теоремы 1, добавляем к Сп дугу у^3. ■

Граф Тг называется выходящим деревом, если в нем существует точно один источник, а в любую другую вершину входит точно одна дуга. Стоки выходящего дерева называются его листьями.

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

Теорема 4. Для выходящего дерева с т > 2 листьями V = р = т.

Доказательство. Пусть Тгт - выходящее дерево с корнем у0 и листьями у!, у2,..., ут. Пусть И1 - высота листа у1, т.е. длина цепи, соединяющей у0 с у1, а Нт- высота листа ут. Среди И1 + 1 последовательных чисел (Ит+ 1) + 1, (Ит+ 1) + 2, ..., (И т+ 1) + (И1+ 1) выберем наименьшее, взаимно простое с И1+ 1. Пусть это будет (Ит+ 1) + г (заметим, что г < И1+ 1). Проведем дугу из каждого листа у1, у2, ., ут-1 в корень у0 и из листа ут в вершину с номером (И1+ 1) - г, входящую в состав цепи м0м1.м^1_1ма1, соединяющей у0 с у1 (в ней и0 = у0 и т = у1). Получается сильно связный граф с числом добавочных дуг, равным числу стоков (листьев), он

будет минимальным сильно связным расширением для Тгт. При этом в полученном графе есть контур и0и1...ик1и0 длины И1+1 и есть контур длины (Ит+1) + г, составленный из цепи, соединяющей у0 с ут, дуги из ут в и(^1+1)-г, цепи из ^^+1)-, в у1 и дуги у^0. ■

Линейный граф с п вершинами - это граф, полученный из цепи Рп переориентацией некоторых ее дуг. Если под степенью вершины понимать количество дуг, которым она инцидентна, то в линейном графе каждая вершина, кроме двух, называемых крайними, имеет степень 2, а крайние вершины имеют степень 1.

Линейный граф по определению относится к типу I, если его крайние вершины обе являются источниками или обе являются стоками, и относится к типу II, если одна из его крайних вершин - источник, а другая -сток. Для линейных графов типа I решение задачи о минимальных примитивных расширениях дает

Теорема 5. Для линейного графа типа I V = р = шах(/, т), где / и т - соответственно количество источников и стоков.

Доказательство. Пусть щР^^щР^.. ^кик+1 - линейный граф типа I с источниками и,, 1 < г < к + 1, стоками уу, 1 < у < к, и цепями Ру, Qj, ведущими из источников в стоки. Сильно связное расширение данного графа имеет не менее чем / = к + 1 добавочных дуг. Покажем, что среди его минимальных сильно связных расширений имеются примитивные. Проведем дугу из каждого стока у, в источник и,, 1 < г < к. Пусть в по-

118

В.Н. Салий

лученном графе О длина контура С = и1Р1у1и1 равна я. Положим г = к + = ^,1, где |Qг•| - длина цепи Qi,

1 < г < к. Пусть С = НОД(я, г).

1) С = 1. К графу О присоединим дугу у1ик+1. В полученном сильно связном графе О+у1ик+1 есть контур С длины я и контур С' = у^+^у^.длины г, откуда следует примитивность этого графа. Итак, в этом случае V = р = к + 1.

2) ¡СФ 1. Запишем цепь Р1 в виде Р1 = и' 1и '2. ..и ' р-1и'р, где и' 1 = и1, и'р = у1. Средир — 1 последовательных чисел г + 1, г + 2, ..., г + (р — 1) выберем наименьшее взаимно простое с р. Пусть это будет, например, г + г. К графу О присоединим дугу и'¡ик+1. В полученном сильно связном графе есть контур С длины я и контур С, = и'¡ик+^кукик.. ^^^и ', длины г + г, откуда следует примитивность этого графа. И в этом случае V = р = = к + 1.

Аналогично добавлением к + 1 дуг получается примитивное расширение для линейного графа типа I, крайние вершины которого являются стоками. ■

Для линейных графов типа II полное решение задачи о минимальных примитивных расширениях пока не получено.

Пусть Р - линейный граф типа II и ¡С обозначает наибольший общий делитель всех увеличенных на единицу длин его цепей.

Теорема 6. Если у линейного графа Р типа II С Ф 1, то для этого графа V = р + 1 = / + 1, где / - количество источников (и стоков) в Р.

Доказательство. Пусть Р = щР^^щР^. . .Р/у/. Так как Р имеет / источников и / стоков, то р > /. На самом деле, у графа Р существует минимальное сильно связное расширение с / добавочными дугами: оно получается присоединением к Р всех дуг вида угиу, где г + у = / + 1. Пусть Р' - некоторое минимальное сильно связное расширение графа Р. Рассмотрим в нем произвольный контур С. Так как в С из каждого стока графа Р идет дуга в подходящий источник, то С = у' 1и' 1Я1у'2и'2Я2...и'Лу' 1, где Л;, 1 < г < к, - цепи из Р. Длина контура С равна к + £кг=1|Лг| = 2кг=1(1 + |Лг|) и, следовательно, делится на С. Таким образом, минимальное сильно связное расширение Р графа Р не будет примитивным.

Согласно теореме 1, существует минимальное примитивное расширение графа Р с / + 1 добавочными дугами. Построим его следующим образом. Из каждого стока у, графа Р проведем дугу в источник и;+1,

1 < г < / — 1, и проведем две дуги из у/: в источник и1 и в вершину и' - следующую за и1 в цепи Р1 (возможно, окажется, что и' = у1). В полученном сильно связном графе Р' имеем контур С = и1Р1у1и2Р2...Р/у/и1 длины / + Е/г=1|Рг| и контур С' = и'Су/и' длины на единицу меньше. Значит, Р' - примитивный граф.

Аналогично добавлением / + 1 дуг получается примитивное расширение для линейного графа типа II у^и^у^и^.^и, в котором С Ф 1. ■

Среди линейных графов типа II с С = 1 существуют такие, у которых есть минимальные сильно связные расширения, являющиеся примитивными, и существуют такие, у которых все минимальные сильно связные расширения не примитивны. Два простейших примера: у графа Р1 = u1^у1^u2^w^у2 единственное минимальное сильно связное расширение (оно получается добавлением дуг у1и2 и у2и1) примитивно, а у графа

Р2 = и1^у1^и2^у2 единственное минимальное сильно связное расширение (и оно получается добавлением одноименных дуг) не примитивно.

Многоугольный граф с п > 3 вершинами - это граф, полученный из контура Сп переориентацией некоторых его дуг. В многоугольном графе каждая вершина имеет степень 2. Количество источников в многоугольном графе равно количеству стоков. Пусть ф - некоторая биекция между множеством стоков и множеством источников данного многоугольного графа С. Если к С присоединить все дуги вида уф(у), где у - сток, получится расширение графа С, назовем его ф-расширением. В отличие от линейных графов типа II (у них тоже одинаковое число источников и стоков), имеет место следующий факт.

Теорема 7. Для любой биекции ф между множеством стоков и множеством источников многоугольного графа соответствующее его ф-расширение является минимальным сильно связным расширением.

Доказательство. Пусть С = и1Р1у^1и2Р2...уф/и/ - многоугольный граф, где и,, у,, 1 < г < /, соответственно источники и стоки, Р,, Qi, 1 < г < / - цепи, ведущие из источников в стоки. Пусть, далее, ф - произвольная биекция между множеством стоков и множеством источников графа С. Покажем, что, добавив к С всевозможные дуги вида уф(у), где у - сток в С, получим сильно связный граф С'. Он и будет минимальным сильно связным расширением, так как количество добавляемых к С дуг равно / - количеству источников (и стоков) в С.

Для нашей цели достаточно установить, что в С из каждого стока у графа С достижим любой источник этого графа.

Пусть у' 1 - произвольный сток в С. Будем строить цепь Я1 = у' 1ф(у' 1)Р' 1у' 2ф(у' 2)Р' 2..., где Р'у - соответствующие цепи Р, в графе С. Цепь Я1 закончится фрагментом Р'/-1у'/ф(у'/), где источник ф(у'/) таков, что цепь

P'l имеет своим концом один из стоков, уже встретившихся в Rj. Обозначим через У1 множество источников и стоков графа C, входящих в состав Rj. Ясно, что все источники из У1 достижимы в C из стока V j.

Предположим, что некоторый источник и не входит в У1. Если все цепи графа C, исходящие из источников, отмеченных в составе У1, имеют своими концами стоки из У1, то, имея 21 таких цепей и l стоков в V\, получаем, что в каждый такой сток входят точно две цепи из указанных источников. Это означает, что множество вершин У1 и его дополнение (в C) не соединяет ни одна дуга графа C. Другими словами, C оказывается несвязным графом, что невозможно. Значит, в У1 существует по крайней мере один источник, из которого в графе C исходит цепь Q' 1, имеющая концом некоторый сток V' 1, не принадлежащий У1. Но тогда и источник ф(у'' 1) не входит в У1. По образцу цепи Rj строим цепь R2 = V' 1ф(у' ^)P' \V' 2ф(у'' 2)P'' 2— Пусть множество вершин У2 состоит из источников и стоков графа C, входящих в цепи Rj и R2. Очевидно, что все источники, попавшие в У2, достижимы в C' из стока V1. Если иг У2, продолжим процесс и построим цепь R3 и множество вершин У3 и т.д. При этом количество использованных источников на каждом шаге увеличивается по крайней мере на единицу. Рано или поздно в их числе окажется и данный источник и.

Таким образом, в графе C' из любого стока графа C можно пройти по дугам в любой источник графа C. Так как C - бесконтурный граф, то в нем из каждой вершины достижим некоторый сток и каждая вершина достижима из подходящего источника. Присоединяя к C все дуги вида уф(у) и ссылаясь на доказанное свойство, получаем сильную связность графа C'. ■

Для многоугольных графов полное решение задачи о минимальных примитивных расширениях пока не получено.

Пусть d обозначает наибольший общий делитель всех увеличенных на единицу длин цепей многоугольного графа C.

Теорема 8. Если у многоугольного графа d Ф 1, то для него v = р + 1.

Доказательство. Пусть C' - произвольное минимальное сильно связное расширение многоугольного графа C = uJPJvJQJu2P2...vQui, имеющего d # 1. Граф C' получается из C добавлением р = 1 дуг. Любой контур в C' имеет вид и' JRJVj и'2 R2...Rkv'ku'j, где и'¡, v'¡, 1 < i < k, - источники и стоки в C, а R¡ - какие-то цепи графа C. Длина этого контура равна k + Zk;=J|R;| = Zk;=J(|R;| + 1). Это число делится на d. Следовательно, никакое минимальное сильно связное расширение графа C не может быть примитивным. Но тогда, согласно теореме 1, существует его примитивное расширение, имеющее v = 1 + 1 = р + 1. ■

Среди многоугольных графов с d = 1 существуют такие, у которых есть минимальные сильно связные расширения, являющиеся примитивными, и существуют такие, у которых все минимальные сильно связные расширения не примитивны. Примером многоугольного графа первого вида служит граф C = ujPjvjQju2P2v2Q2uj, где |PJ| = |P2| = 1, |QJ| = |Q2| = 2. Если к графу C присоединить дуги vju2 и v2uj, получается его минимальное сильно связное расширение, которое оказывается примитивным (есть контуры длин 3 и 4). Примером многоугольного графа второго вида служит граф того же вида, где |PJ| = 1, |QJ| = |Q2| = 2, |P3| = 3. У него два минимальных сильно связных расширения, и оба они не примитивны: если к C добавить дуги vjuj и v2u2, в полученном графе C' контуры имеют длины 2, 4 и 6, а если к C добавить дуги vju2 и v2vj, в полученном графе C' контуры имеют длины 3, 3 и 6.

ЛИТЕРАТУРА

1. Салий В.Н. Функциональная отказоустойчивость и оптимальные реконструкции графовых систем по заданным параметрам // Вестник ТГУ. Приложение. 2007. № 23. С. 253 - 256.

2. Beasley Le Roy B., Kirkland S. A note on k-primitive directed graphs // Linear Algebra and Appl. 2003. V. 373. P. 67 - 74.

3. Оре О. Теория графов. М.: Наука, 1968.

4. Богомолов А.М., Салий В.Н. Алгебраические основы теории дискретных систем. М.: Наука, 1997.

i Надоели баннеры? Вы всегда можете отключить рекламу.