Математика
Вестник Нижегородского университета им. Н.И. Лобачевского, 2010,Кв 6, с. 143-147
УДК 519.17
О СЛОЖНОСТИ ЗАДАЧИ О ДОМИНИРУЮЩЕМ МНОЖЕСТВЕ В ПОДКЛАССАХ КЛАССА РАСЩЕПЛЯЕМЫХ ГРАФОВ
© 2010 г. Д.С. Малышев 1,2, В.А. Замараев 1, Д.Б. Мокеев 1
1 Нижегородский госуниверситет им. Н.И. Лобачевского 2 Нижегородский филиал Государственного университета — Высшей школы экономики
dsmalyshev@rambler.ru
Поступила в редакцию 20.05.2010
Известно, что задача о доминирующем множестве в классе расщепляемых графов NP-полна. Изучается влияние степеней некоторых вершин таких графов на вычислительную сложность этой задачи.
Ключевые слова: задача о доминирующем множестве, расщепляемый граф, вычислительная сложность.
Введение
Доминирующим множеством в обыкновенном графе О = (V, Е) называется такое множество Xс V, что любая вершина множества У-Х смежна хотя бы с одной вершиной множества Х. Задача о доминирующем множестве для данного графа состоит в нахождении доминирующего множества наименьшей мощности. Количество вершин в решении этой задачи будем обозначать (1(О). Для краткости задачу о доминирующем множестве будем называть задачей ДМ.
Класс графов X называется наследственным, если он замкнут относительно изоморфизма и удаления вершин. Любой наследственный класс (и только наследственный класс) графов X может быть задан множеством запрещенных порожденных подграфов S, это означает, что X состоит из тех и только тех графов, которые не имеют порожденных подграфов из S. В этом случае принята запись X=Free(S).
Наследственный класс графов К называется ДМ-простым, если существует алгоритм, решающий эту задачу для любого графа Ое K за полиномиальное время, и ДМ-сложным в противном случае. На протяжении всей публикации предполагаем, что Р Ф КР, и это условие явно не включаем явно в формулировки полученных утверждений.
Рассматривается задача о доминирующем множестве для расщепляемых графов. Граф О называется расщепляемым, если можно разбить на два подмножества Х(О) и У(О) так, что граф, порожденный множеством вершин Х(О), является полным, а граф, порожденный множеством вершин У(О), является пустым. Множество
расщепляемых графов обозначим через Split. Хорошо известно, что SpUt=Free({2K2,C4,C5}) и что этот класс является ДМ-сложным. Более того, класс Split О Free({K2,3+e,K5-e}) является ДМ-сложным, где K2,3+e - граф, получаемый добавлением к графу K2,3 ребра, инцидентного его вершинам степени три, a K5-e - граф, получаемый удалением произвольного ребра из графа K5 [1].
Идея доказательства ДМ-сложности класса Split О Free({K2,3+e,K5-e}) (сведение задачи о независимом множестве в классе всех графов к задаче о доминирующем множестве для расщепляемых графов) из работы [1] наталкивает на мысль рассмотреть соответствующее «двойственное» преобразование. Оказывается, что при таком преобразовании снова возникает сведение к задаче ДМ, которое позволяет изучить влияние степеней некоторых вершин расщепляемых графов на сложность решения задачи о доминирующем множестве. Будем обозначать через degc(x) количество вершин в расщепляемом графе G, смежных с вершиной хє X(G). Пусть Split(i)={Gє Split: VхєX(G) degc(x)<i}. В данной работе доказывается, что для любого i > 3 класс Split(i) является ДМ-сложным, а класс Split(2) - ДМ-простым. Тем самым дается полная классификация классов графов указанного вида по сложности решения задачи о доминирующем множестве.
Определения и вспомогательные результаты
Предположим, что имеется обыкновенный граф G=(V,E). Через G будем обозначать расщепляемый граф, где V(G ) = V(G) U E(G), а
И«
E(G )={(vbv2): vbv2e V(G)} U {(x,e): xe V(G),
shsn
eeE(G), x в G инцидентна e}. Через G будем обозначать расщепляемый граф, где V(G ) = = V(G **) U E(G **), а E(G* )={(e1(e2): e^ e
e E(G)} U {(x,e): xe V(G), ee E(G), x в G инцидентна e}. Для заданного класса X через X обозначим множество графов {H: 3 GeX, H=G },
** ____________________i **
а через X - множество {H: 3 Ge X, H=G }.
Пусть K - некоторый класс графов, тогда через [K] обозначим наследственное замыкание класса K, т.е. множество графов, являющихся порожденными подграфами для графов класса K. Множество всех графов будем обозначать через U, а через U(k) обозначим множество всех графов со степенями вершин, не превосходящими k.
Напомним, что независимым множеством в обыкновенном графе называется множество из попарно несмежных вершин. Задача о независимом множестве для данного графа состоит в нахождении независимого множества наибольшей мощности. В [1] было доказано следующее сведение, являющееся основным инструментом установления сложностного статуса задачи ДМ в классе Split О Free(K2,3+e,K5-e).
Лемма 1 [1]. Задача о независимом множестве для любого наследственного класса X полиномиально эквивалентна задаче ДМ для клас*
са X .
Используя утверждение леммы 1, несложно установить справедливость следующей теоремы.
Теорема 1. Для любого фиксированного i > 3 класс Split(i) является ДМ -сложным.
Доказательство. Известно, что задача о независимом множестве NP-полна в классе U(3) [2]. Отсюда и из леммы 1 следует, что класс [U(3) ] является ДМ-сложным. Ясно, что при
i > 3 справедливо неравенство [U(3) ] ç ç Split(3) ç Split(i), из которого следует справедливость утверждения теоремы 1. Теорема 1 доказана.
Итак, использование преобразования X ^ X позволяет сделать вывод о том, что класс Split(i) является ДМ-сложным при любом i. Вместе с тем, при помощи сведения X ^X можно доказать, что класс Split(2) является ДМ-простым. Доказательству этого факта посвящена остальная часть работы.
Лемма 2. Для любого расщепляемого графа G без изолированных вершин существует решение задачи ДМ, состоящее только из вершин множества X(G).
Доказательство. Рассмотрим произвольное ДМ графа О. Если ему принадлежит хотя бы одна вершина множества Д(О), то ее можно заменить на любую вершину из Х(О), причем полученное множество вершин снова будет доминирующим. Лемма 2 доказана.
Реберным покрытием графа называется такое множество ребер, что любая вершина графа инцидентна хотя бы одному ребру из этого множества. Задача о реберном покрытии для данного графа О без изолированных вершин (в дальнейшем, просто задача РП) состоит в нахождении реберного покрытия с минимальным числом ребер. Количество ребер в решении задачи РП для О будем обозначать через р (О).
Лемма 3. Для любого графа О без изолированных вершин справедливо равенство р (О)=4О**).
Доказательство. Пусть е1,е2,., вр^) - множество ребер, являющихся решением задачи РП для графа О. Тогда в графе О это множество будет образовывать некоторое доминирующее множество, поэтому р (О) > ¿(О ). Ясно, что **
О не содержит изолированных вершин. По лемме 1, существует решение задачи ДМ для графа О , состоящее только из вершин множества Х(О ). Таким образом, можно считать, что в графе О некоторое подмножество вершин из Х(О ) (являющихся в О ребрами) доминирует (в графе О покрывает) все вершины из Д(О ) (являющихся в О вершинами). Поэтому р (О) < (1(О ). Из обоих неравенств получаем, * *
что р (О)=(1(О ). Лемма 3 доказана.
Лемма 4. Задача РП для графов из и полиномиально эквивалентна задаче ДМ для класса
и**.
Доказательство. Пусть Оє и. Тогда если О содержит изолированные вершины, то решения задачи РП для О не существует. Если О не содержит изолированных вершин, то по предыдущей лемме р (О)=<і(О ), т.е. задача РП для графов класса и полиномиально сводима к задаче ДМ для графов класса и . С другой стороны, если некоторый граф О'є и не содержит изолированных вершин, то и его прообраз (т.е. граф О, для которого О'=О ) также содержать их не будет. Поэтому, по предыдущей лемме, р (О)=^(О'). Если О'содержит изолированные вершины v1,...,vs, то они обязательно входят в решение задачи ДМ для этого графа. Рассмотрим граф О'', порожденный множеством вершин У(О )-^і^2,...,^}. Ясно, что граф Н
такой, что G'' =Н не содержит изолированных вершин. Поэтому р (G'' )=d(H ), т.е. задача ДМ
**
для графов класса U полиномиально сводима к задаче РП для графов класса U. Таким образом, задачи РП для графов класса U и задача
. АА
ДМ для графов класса U полиномиально эквивалентны. Лемма 4 доказана.
Из леммы 4 следует, что задача ДМ является полиномиально разрешимой в классе U , поскольку задача РП для графов класса U может быть решена за полиномиальное время.
Ясно, что класс [U ] состоит из тех расщепляемых графов G, что для любой вершины xe X(G) выполняется неравенство degc(x)<3. Обратное, к сожалению, неверно. Действительно, граф K23+e принадлежит классу Split(2), но не принадлежит классу [U ]. Вместе с тем, хотелось бы оценить близость этих классов. С этой целью приведем их характеризации в терминах запрещенных порожденных подграфов. Обозначим через A, B, C графы, изображенные на рисунке.
Лемма 5. Справедливо равенство Split(2)=Split П Free({K1A ,A,B,C}).
Доказательство. Включение Split(2) с с Split П Free({K14,A,B,C}) следует из того, что Split(2) с Split и что ни один из графов множества {K14,A,B,C} не принадлежит классу Split(2). Покажем, что выполняется включение Split(2) 3 Split П Free({K14,A,B,C}). Рассмотрим произвольный граф Ge Split П
П Free({K14,A,B,C}). Покажем, что Ge Split(2). Если некоторая вершина y e Y(G) такова, что degc(y)=\X(G)\, то рассматривается новый расщепляемый граф G1 такой, что X(G1)=X(G) U U {y}, Y(G1)= Y(G) -{y}. Таким образом, можно считать, что имеется некоторый граф G' такой, что для любой его вершины y e Y(G') degc(y)<\X(G')\. Для того чтобы показать, что G e Split(2), достаточно показать, что для любой вершины xe X(G') degc(x)<3. Предположим противное, что в G' существует такая вершина x ', что degc(x') > 3. Среди вершин множества Y(G'), смежных с x', произвольным образом выберем три вершины y1, y2, y3. Легко проверить,
что если \Х(О' )|<4, то граф, порожденный множеством Х(О') и {х', уь, у2, у3}, среди своих порожденных подграфов содержит либо К14, либо А, либо В. Поэтому будем считать, что \Х(О')| > 4. Пусть хь, х2, х3 - такие вершины множества Х(О'), что (хг, уг) £ Е(0). Рассмотрим возможные случаи.
1. Для некоторой пары (г, у), г Фу, выполнены условия (х,, у)£ Е(О), (хг, у,)£ Е(О). Тогда если для к Ф 1,] справедливо (хг, ук)£ Е(О'), то О' содержит порожденный подграф К14 (порожден вершинами х',у, у,, ук, хг), а если (х,, ук)£ Е(О'), то О' также содержит порожденный подграф К14 (порожден вершинами х ', уг, у,, ук х,). Таким образом, можно считать, что (хг, ук) е Е(О'), (х,, ук)е Е(О'). Если (хк, у)е Е(О') или (хк, у,) е е Е(О'), то О' содержит либо порожденный подграф А, либо порожденный подграф В (порождены либо вершинами х', уг, у,, ук, хг, хк, либо вершинами х' у, у,, ук, х,, хк). Таким образом, можно считать, что (хк, уг) £ Е(О') и (хк, у) £ Е(О'). Но тогда О' содержит порожденный подграф К14, образованный вершинами х', у1, у2, у3, хк.
2. Для некоторой пары (г, у), г Ф у, имеют место условия (х,, уг) £ Е(О'), (хг, у,) е Е(О'). Для к Ф г, у (х,, ук)е Е(О') (т.к. в противном случае в О' содержится порожденный вершинами х', уг-, у,, у к, х, подграф Км). Также (х„ ук) е Е(О') (т.к. в противном случае в О' содержится порожденный вершинами х', уг, у,, ук, х,, х, подграф А). Если (хк, уг)е Е(О') или (хк, у,)е Е(О'), то О' содержит либо порожденный подграф А, либо порожденный подграф В (порождены либо вершинами х', уг, у, у к, хь хк, либо вершинами х', уг-, у,, у к, х,, хк). Таким образом, можно считать, что (хк, у) £ Е(О') и (хк, у) £ Е(О'). Но тогда граф О' содержит порожденный подграф К14, образованный вершинами х ', уь, у2, у3, хк.
3. Для любой пары (г, у), г Ф у, выполнены условия (х,, уг)е Е(О'), (хг, у,) е Е(О'). Но тогда граф О'содержит граф С, порожденный вершинами х', у, у, у к, х„ х,, хк.
Из обоих включений получаем, что Split(2)=Split О ^гее({К14,А,В,С}). Лемма 5 доказана.
А
B
C
Лемма 6. Справедливо равенство [U ]= =Split П Free({A,KM, K2 3+e, P4 © P2}).
Доказательство. Включение [U ] с
с Split П Free({A,K14,K2 3+e, P4 ® P2 }) очевидно, поскольку ни один из графов A,K14,K23+ +e, P4 ® P2 не принадлежит классу [U ]. Пусть G - произвольный граф множества Split П П Free({A,K14,K23+e, P4 ® P2 }). Покажем, что
Ge [U ]. Рассмотрим полный подграф графа G с наибольшим количеством вершин. Рассмотрим следующее расщепление графа G - вершины множества X(G) соответствуют вершинам этого полного подграфа, а Y(G)=V(G)-X(G). Понятно, что ни одна из вершин множества Y(G) не может быть смежна со всеми вершинами из X(G) (по построению X(G)). Докажем, что нет такой вершины xe X(G), для которой degc(x)>2, и что нет таких двух вершин из X(G) и двух таких вершин из Y(G), что порождаемый ими подграф изоморфен K4-e. Этих двух условий достаточно, чтобы существовал такой граф Н, для которого G является порожденным подграфом графа Н , т.е. Ge [U ]. Поскольку G является расщепляемым и G не содержит порожденных
подграфов K14,K23+e, P4 © P2, то Ge Split П
П Free({K14,A,B,C}) = Split(2). Таким образом, первое из указанных условий выполняется. Докажем выполнение второго. Данное условие легко проверяется непосредственно, если |X(G)| < 3. Теперь будем считать, что |X(G)| > 3. Предположим, что во множестве Y(G) есть две вершины y1, y2, которые одновременно смежны с двумя вершинами x1, x2e X(G). Рассмотрим окрестности вершин y1, y2. Если существует такая вершина z e X(G), что (x1, z) £ E(G) и (x2, z) £ £ E(G), то порожденный вершинами z, y1, y2, x1, x2 подграф изоморфен K2 3+e. В противном случае существуют такие вершины z1, z2 e X(G), что (zb y1)e E(G), (z2, y2)e E(G), (z1, y2)£ E(G), (z2, y1)£ E(G). Тогда граф, порожденный вершинами x1, x2, y1, y2, z1, z2, изоморфен P4 © P2.
Тем самым сделанное предположение о существовании вершин x1, x2 и y1, y2, обладающих указанным свойством, неверно. Лемма 6 доказана.
Теорема 2. Класс Split(2) является ДМ-простым.
Доказательство. Покажем, что задача ДМ для графов класса Split(2) полиномиально сво-
дима к той же задаче для графов из U . Пусть Ge Split(2). Можно считать, что G не содержит изолированных вершин, т.к. в противном случае эти вершины обязательно входят в доминирующее множество и их можно не рассматривать. Пусть X1(G) - множество таких вершин xe X(G), что degc(x)=2; Y1(G) - множество вершин из Y(G), смежных хотя бы с одной вершиной из X1(G); X2(G) - множество вершин из X(G), смежных ровно с одной вершиной из Y1(G). Можно считать, что в решение задачи ДМ ни одна из вершин множества X2(G) не входит. (Если это не так, т.е. некоторая вершина xe X2(G) вошла в наименьшее ДМ, тогда существуют такие вершины ye Y1(G), zeX1(G), что (x,y) e E(G), (y,z) e E(G). Ясно, что вершина z не входит в решение задачи ДМ, т.к. в противном случае x можно удалить и получить доминирующее множество меньшей мощности. Тогда удаляем вершину x из решения задачи ДМ и в решение вводим вершину z. Полученное множество вершин снова будет доминирующим.) Удалим множество вершин X2(G) из графа G. В результате граф G распадается на два графа G1 (порожден множеством вершин X1(G) U Y1(G)) и G2 (порожден множеством вершин V(G) -- {X1(G) UX2(G) U Y1(G)}). Так как для любой вершины xe X(G1) справедливо равенство
т / \
degc(x) = 2, то G1 e U . C другой стороны, в графе G2 любая вершина из Y(G2) доминирует не более одной вершины из X(G2), т.е. мощность наименьшего доминирующего множества графа G2 равна |Y(G2)|. Тогда d(G) = d(G1) + + d(G2) = d(G1) + |Y(G2)|. Таким образом, задача ДМ для графов из Split(2) полиномиально сводится к той же задаче для графов из U . Из замечания к лемме 4 следует, что задача ДМ для * *
графов класса U полиномиально разрешима. Отсюда следует утверждение теоремы. Теорема
2 доказана.
Работа выполнена при поддержке ФЦП «Научные и научно-педагогические кадры инновационной России» на 2009-2012 гг., шифр заявки 20101.3.1-111-017-012.
Список литературы
1. Alekseev V.E., Korobitsyn D.V., Lozin V.V. Boundary classes of graphs for the dominating set problem // Rutcor Research Report. 2002. № 25. P. 1-10.
2. Alekseev V.E., Boliac R., Korobitsyn D.V., Lozin V.V. NP-hard graph problems and boundary classes of graphs // Theoretical Computer Science. 2007. V. 389. P. 219-236.
ON THE COMPLEXITY OF DOMINATING SET PROBLEM FOR SUBCLASSES
OF SPLIT GRAPH CLASS
D.S. Malyshev, V.A. Zamaraev, D.B. Mokeev
The dominating set problem is known to be NP-complete in the split graph class. The influence of degrees of some vertices of such graphs on the computational complexity of the problem is studied.
Keywords: dominating set problem, split graph, computational complexity.