Теорема Татта о существовании полного паросочетания — различия между версиями
(→Критерий Татта) |
|||
Строка 1: | Строка 1: | ||
{{Определение | {{Определение | ||
− | |definition = | + | |definition =<tex>o(\mathbb{G})</tex> {{---}} число нечетных компонент связности в графе <tex>\mathbb{G}</tex>, где '''нечетная компонента''' {{---}} это компонента связности, содержащая нечетное число вершин. |
− | |||
− | |||
− | |||
− | |||
}} | }} | ||
Строка 12: | Строка 8: | ||
==Критерий Татта== | ==Критерий Татта== | ||
− | + | Пусть <tex>\mathbb{G'}</tex> {{---}} граф, полученный из <tex>\mathbb{G}</tex>, добавлением ребер, при этом в <tex>\mathbb{G'}</tex> нет полного паросочетания, но оно появляется при добавлении любого нового ребра. | |
Пусть <tex> U = \{ v \in V: deg_{G'} (v) = n - 1 \}</tex>. | Пусть <tex> U = \{ v \in V: deg_{G'} (v) = n - 1 \}</tex>. | ||
Строка 25: | Строка 21: | ||
Возможны два случая: | Возможны два случая: | ||
− | * Вершины <tex>x,z</tex> и <tex>y,t</tex> лежат в разных полных подграфах графа <tex>\mathbb{G'} \setminus U</tex>, | + | * Вершины <tex>x,z</tex> и <tex>y,t</tex> лежат в разных полных подграфах графа <tex>\mathbb{G'} \setminus U</tex>, обозначим их <tex>H_1</tex> и <tex>H_2</tex>, соответственно. |
− | Покроем вершины подграфа <tex>H_1</tex> паросочетанием <tex>M_2</tex>, при этом заметим, что ребро <tex>xz</tex> не входит в это паросочетание. Аналогично покроем паросочетанием <tex>M_1</tex> вершины подрафа <tex>H_2</tex> и ребро <tex>yt</tex> не войдет в это паросочетание. Если остались | + | Покроем вершины подграфа <tex>H_1</tex> паросочетанием <tex>M_2</tex>, при этом заметим, что ребро <tex>xz</tex> не входит в это паросочетание. Аналогично покроем паросочетанием <tex>M_1</tex> вершины подрафа <tex>H_2</tex> и ребро <tex>yt</tex> не войдет в это паросочетание. Если остались непокрытые вершины, то покроем их ребрами из любого паросочетания <tex>M_1</tex> или <tex>M_2</tex>. Таким образом, мы получим полное паросочетание в графе <tex>\mathbb{G'}</tex>, что противоречит его построению. |
* Вершины <tex>x,y,z</tex> и <tex>t</tex> лежат в одном подграфе графа <tex>\mathbb{G'} \setminus U</tex>. | * Вершины <tex>x,y,z</tex> и <tex>t</tex> лежат в одном подграфе графа <tex>\mathbb{G'} \setminus U</tex>. | ||
− | Построим граф <tex>H</tex>, такой что <tex>\mathbb{V_\mathbb{H}}=\mathbb{V_\mathbb{G'}}</tex> и <tex>\mathbb{E_\mathbb{H}}=M_1 \oplus M_2</tex>. Получим, что вершины <tex>x,y,z</tex> и <tex>t</tex> лежат на каком-то чередующемся цикле. В силу симметричности <tex>x</tex> и <tex>z</tex> можно считать, что вершины расположены в порядке <tex>tzxy</tex>. Тогда существует путь <tex>P_1=t..zx..y</tex> и полное паросочетание в нем, | + | Построим граф <tex>H</tex>, такой что <tex>\mathbb{V_\mathbb{H}}=\mathbb{V_\mathbb{G'}}=\mathbb{V_\mathbb{G}}</tex> и <tex>\mathbb{E_\mathbb{H}}=M_1 \oplus M_2</tex>. Получим, что вершины <tex>x,y,z</tex> и <tex>t</tex> лежат на каком-то чередующемся цикле. В силу симметричности <tex>x</tex> и <tex>z</tex> можно считать, что вершины расположены в порядке <tex>tzxy</tex>. Тогда существует путь <tex>P_1=t..zx..y</tex> и полное паросочетание в нем, следовательно существует и путь <tex>P_2=t..zy..x</tex>, содержащий только ребра графа <tex>\mathbb{G'}</tex>. Тогда покроем путь <tex>x..yz</tex> ребрами паросочетания <tex>M_2</tex>, а путь <tex>t..z</tex> покрооем ребрами паросочетания <tex>M_1</tex>, при этом вершина z останется непокрытой. Получили полное паросочетание на вершинах выбранного подграфа. В остальных подграфах выберем ребра любого из паросочетаний <tex>M_1</tex> и <tex>M_2</tex>. Таким образом, получили полное паросочетание в графе <tex>\mathbb{G'}</tex>, противоречие. |
− | В каждом из возможных случаев получили | + | В каждом из возможных случаев получили противоречие, значит, наше начальное предположение тоже неверно и <tex>G' \setminus U</tex> {{---}} объединение несвязных полных графов, лемма доказана. |
}} | }} | ||
Строка 47: | Строка 43: | ||
<tex>\Leftarrow</tex> Пусть для графа <tex>\mathbb{G}</tex> выполнено, что <tex>o(\mathbb{G} \setminus S) \leqslant \left\vert S \right\vert</tex>, но полного паросочетания в этом графе не существует. | <tex>\Leftarrow</tex> Пусть для графа <tex>\mathbb{G}</tex> выполнено, что <tex>o(\mathbb{G} \setminus S) \leqslant \left\vert S \right\vert</tex>, но полного паросочетания в этом графе не существует. | ||
− | Рассмотрим граф <tex>\mathbb{G'}</tex> и множество вершин <tex>U</tex> (из леммы). Так как число нечетных компонент не увеличивается при добавлении новых ребер, то <tex>\forall S \subset \mathbb{V_\mathbb{G}}</tex> выполнено | + | Рассмотрим граф <tex>\mathbb{G'}</tex> и множество вершин <tex>U</tex> (из леммы). Так как число нечетных компонент не увеличивается при добавлении новых ребер, то <tex>\forall S \subset \mathbb{V_\mathbb{G}}</tex> выполнено <tex>o(\mathbb{G'} \setminus S) \leqslant o(\mathbb{G} \setminus S) \leqslant \left\vert S \right\vert</tex>. По лемме, доказанной выше: <tex>\mathbb{G'} \setminus U</tex> {{---}} объединение несвязных полных графов. |
Очевидно, что в каждой четной компоненте связности графа <tex>\mathbb{G'} \setminus U</tex> мы можем построить полное паросочетание. В каждой нечетной компоненте этого графа построим паросочетание, которое покрывает все вершины кроме одной, оставшуюся непокрытой вершину, соединим с какой-то вершиной множества <tex>U</tex>. При этом мы будем использовать различные вершины из <tex>U</tex>, это возможно, так как <tex>o(G' \setminus U) \leqslant \left\vert U \right\vert</tex>. Если все вершины множества <tex>U</tex> оказались покрытыми, то мы получили полное паросочетание в графе <tex>\mathbb{G'}</tex>. Противоречие, так как по построению в <tex>\mathbb{G'}</tex> нет полного паросочетания. | Очевидно, что в каждой четной компоненте связности графа <tex>\mathbb{G'} \setminus U</tex> мы можем построить полное паросочетание. В каждой нечетной компоненте этого графа построим паросочетание, которое покрывает все вершины кроме одной, оставшуюся непокрытой вершину, соединим с какой-то вершиной множества <tex>U</tex>. При этом мы будем использовать различные вершины из <tex>U</tex>, это возможно, так как <tex>o(G' \setminus U) \leqslant \left\vert U \right\vert</tex>. Если все вершины множества <tex>U</tex> оказались покрытыми, то мы получили полное паросочетание в графе <tex>\mathbb{G'}</tex>. Противоречие, так как по построению в <tex>\mathbb{G'}</tex> нет полного паросочетания. |
Версия 20:15, 17 декабря 2013
Определение: |
— число нечетных компонент связности в графе , где нечетная компонента — это компонента связности, содержащая нечетное число вершин. |
Определение: |
Множество Татта графа | — множество , для которого выполнено условие:
Критерий Татта
Пусть
— граф, полученный из , добавлением ребер, при этом в нет полного паросочетания, но оно появляется при добавлении любого нового ребра.Пусть
.Очевидно, что
, потому что — не полный граф.Лемма: |
— объединение несвязных полных графов. |
Доказательство: |
Пусть это не так, тогда существуют вершины , такие что , но . Так как , то .В графе существует полное паросочетание , так как граф максимальный по построению. Аналогично, в графе существует полное паросочетание . Так как в нет полного паросочетания, то и .Возможны два случая:
Покроем вершины подграфа паросочетанием , при этом заметим, что ребро не входит в это паросочетание. Аналогично покроем паросочетанием вершины подрафа и ребро не войдет в это паросочетание. Если остались непокрытые вершины, то покроем их ребрами из любого паросочетания или . Таким образом, мы получим полное паросочетание в графе , что противоречит его построению.
Построим граф В каждом из возможных случаев получили противоречие, значит, наше начальное предположение тоже неверно и , такой что и . Получим, что вершины и лежат на каком-то чередующемся цикле. В силу симметричности и можно считать, что вершины расположены в порядке . Тогда существует путь и полное паросочетание в нем, следовательно существует и путь , содержащий только ребра графа . Тогда покроем путь ребрами паросочетания , а путь покрооем ребрами паросочетания , при этом вершина z останется непокрытой. Получили полное паросочетание на вершинах выбранного подграфа. В остальных подграфах выберем ребра любого из паросочетаний и . Таким образом, получили полное паросочетание в графе , противоречие. — объединение несвязных полных графов, лемма доказана. |
Теорема Татта
Теорема: |
В графе существует полное паросочетание выполнено условие: |
Доказательство: |
Рассмотрим — полное паросочетание в графе и множество вершин . Одна из вершин каждой нечетной компоненты связности графа соединена ребром паросочетания с какой-то вершиной из . Иначе мы не сможем покрыть паросочетанием все вершины этой компоненты связности и получим противоречие с тем, что полное паросочетание существует по условию теоремы. Таким образом, получаем, что .Пусть для графа выполнено, что , но полного паросочетания в этом графе не существует. Рассмотрим граф и множество вершин (из леммы). Так как число нечетных компонент не увеличивается при добавлении новых ребер, то выполнено . По лемме, доказанной выше: — объединение несвязных полных графов.Очевидно, что в каждой четной компоненте связности графа мы можем построить полное паросочетание. В каждой нечетной компоненте этого графа построим паросочетание, которое покрывает все вершины кроме одной, оставшуюся непокрытой вершину, соединим с какой-то вершиной множества . При этом мы будем использовать различные вершины из , это возможно, так как . Если все вершины множества оказались покрытыми, то мы получили полное паросочетание в графе . Противоречие, так как по построению в нет полного паросочетания.Значит, в осталось какое-то количество непокрытых вершин, при этом их четное число, потому что число вершин в четно, так как и уже покрыто паросочетанием четное число вершин. Так как в множество входят вершины, которые в смежны со всеми остальными, то мы сможем разбить оставшиеся вершины на пары и покрыть их паросочетанием.Таким образом, получили в Значит, начальное предположение не верно, и в полное паросочетание, что противоречит тому, как мы задали этот граф изначально. существует полное паросочетание. |