Теорема Татта о существовании полного паросочетания — различия между версиями

Материал из Викиконспекты
Перейти к: навигация, поиск
Строка 56: Строка 56:
 
    
 
    
 
}}
 
}}
 +
 +
==См. также==
 +
* [[Матрица Татта и связь с размером максимального паросочетания в двудольном графе]]
 +
* [[Паросочетания: основные определения, теорема о максимальном паросочетании и дополняющих цепях]]
 +
* [[Декомпозиция Эдмондса-Галлаи]]
  
 
==Примечания==
 
==Примечания==

Версия 22:33, 22 ноября 2018

Определение:
odd(G) — число нечетных компонент связности в графе G, где нечетная компонента (англ. odd component) — это компонента связности, содержащая нечетное число вершин.


Определение:
Множество Татта графа G — множество SVG, для которого выполнено условие: odd(GS)>|S|


Критерий Татта

Пусть G — граф, полученный из G=V,E добавлением ребер, при этом в G нет полного паросочетания, но оно появляется при добавлении любого нового ребра.

Так как новых вершин не добавлялось, то G=V,E

Пусть U={vV:degG(v)=n1}.

Очевидно, что |U|n, потому что G — не полный граф.

Лемма:
GU — объединение несвязных полных графов.
Доказательство:

Пусть это не так, тогда существуют вершины x,y,zVU, такие что xy,yzE, но xzE. Так как yU, то tU:ytE.

По построению G в графе G+xz существует полное паросочетание M1. Аналогично, в графе G+yt существует полное паросочетание M2. Так как в G нет полного паросочетания, то xzM1 и ytM2.

Возможны два случая:

  1. Вершины x,z и y,t лежат в разных полных подграфах графа GU, обозначим их H1 и H2, соответственно.
    Покроем вершины подграфа H1 паросочетанием M2, при этом заметим, что ребро xz не входит в это паросочетание. Аналогично покроем паросочетанием M1 вершины подрафа H2 и ребро yt не войдет в это паросочетание. Если остались непокрытые вершины, то покроем их ребрами из любого паросочетания M1 или M2. Таким образом, мы получим полное паросочетание в графе G, что противоречит его построению.
    К доказательству 2-ого пункта леммы.
  2. Вершины x,y,z и t лежат в одном подграфе графа GU.
    Построим граф H, такой что VH=V и EH=M1M2[1]. Получим, что вершины x,y,z и t лежат на каком-то чередующемся цикле из ребер M1 и M2. Рассмотрим подробнее, почему это будет именно так. Ребро xz принадлежит паросочетанию M1, значит вершина y и какая-то произвольная вершина v будут покрыты ребром паросочетания M1, при этом эти ребра не принадлежат паросочетанию M2, но ребра yt и vu, где u — произвольная вершина, принадлежат M2 и не принадлежат M1 и так далее. Таким образом и получается чередующийся цикл в графе H. В силу симметричности x и z можно считать, что вершины расположены в порядке tzxy. Тогда существует путь P1=t..zx..y и полное паросочетание в нем, следовательно существует и путь P2=t..zy..x, содержащий только ребра графа G. Тогда на пути x..y возьмем ребра из паросочетания M2, а на пути t..z - ребра из паросочетания M1. Непокрытыми остались вершины z и y, которые мы покроем ребром yz. Вершины, не принадлежащие рассматриваемому циклу, покроем ребрами любого из паросочетаний M1,M2 (выберем ребра одного из них). Таким образом, получили полное паросочетание в графе G, противоречие.
В каждом из возможных случаев получили противоречие, значит, наше начальное предположение тоже неверно и GU — объединение несвязных полных графов, лемма доказана.

Теорема Татта

Теорема:
В графе G существует полное паросочетание
SV выполнено условие: odd(GS)|S| (то есть в графе G нет ни одного множества Татта)
Доказательство:


Рассмотрим M — полное паросочетание в графе G и множество вершин SV.

Одна из вершин каждой нечетной компоненты связности графа GS соединена ребром паросочетания M с какой-то вершиной из S. Иначе мы не сможем покрыть паросочетанием все вершины этой компоненты связности и получим противоречие с тем, что полное паросочетание существует по условию теоремы. Таким образом, получаем, что odd(GS)|S|.


Пусть для графа G выполнено, что odd(GS)|S|, но полного паросочетания в этом графе не существует.

Рассмотрим граф G и множество вершин U (из леммы). Так как число нечетных компонент не увеличивается при добавлении новых ребер, то SV выполнено odd(GS)odd(GS)|S|. По лемме, доказанной выше: GU — объединение несвязных полных графов.

Очевидно, что в каждой четной компоненте связности графа GU мы можем построить полное паросочетание. В каждой нечетной компоненте этого графа построим паросочетание, которое покрывает все вершины кроме одной, оставшуюся непокрытой вершину, соединим с какой-то вершиной множества U. При этом мы будем использовать различные вершины из U, это возможно, так как odd(GU)|U|. Если все вершины множества U оказались покрытыми, то мы получили полное паросочетание в графе G. Противоречие, так как по построению в G нет полного паросочетания.

Значит, в U осталось какое-то количество непокрытых вершин, при этом их четное число, потому что число вершин в G четно, так как odd(G)||=0 и уже покрыто паросочетанием четное число вершин. Так как в множество U входят вершины, которые в G смежны со всеми остальными, то мы сможем разбить оставшиеся вершины на пары и покрыть их паросочетанием.

Таким образом, получили в G полное паросочетание, что противоречит тому, как мы задали этот граф изначально. Значит, начальное предположение не верно, и в G существует полное паросочетание.

См. также

Примечания

Источники информации