Редактирование: Рёберная раскраска двудольного графа

Перейти к: навигация, поиск

Внимание! Вы не авторизовались на сайте. Ваш IP-адрес будет публично видимым, если вы будете вносить любые правки. Если вы войдёте или создадите учётную запись, правки вместо этого будут связаны с вашим именем пользователя, а также у вас появятся другие преимущества.

Правка может быть отменена. Пожалуйста, просмотрите сравнение версий, чтобы убедиться, что это именно те изменения, которые вас интересуют, и нажмите «Записать страницу», чтобы изменения вступили в силу.
Текущая версия Ваш текст
Строка 4: Строка 4:
 
{{Определение
 
{{Определение
 
|id = edge_colouring
 
|id = edge_colouring
|definition = '''Рёберной раскраской''' (англ. ''Edge colouring'') графа <tex>G(V, E)</tex> называется отображение <tex>\varphi</tex> из множества рёбер <tex>E</tex> во множество красок <tex>\{c_{1} \ldots c_{t}\}</tex>, что для для любых двух различных рёбер <tex>e_{i}, e_{j}</tex>, инцидентных одной вершине, верно <tex> \varphi (e_{i}) \neq \varphi (e_{j})</tex>.  
+
|definition = '''Рёберной раскраской''' (англ. ''Edge colouring'') графа <tex>G(V, E)</tex> называется отображение <tex>\varphi:E \rightarrow \{c_{1} \ldots c_{t}\}</tex> {{---}} ''множество красок'' такое, что для для любых двух различных рёбер <tex>e_{i}, e_{j}</tex> инцидентных одной вершине верно, что <tex> \varphi (e_{i}) \neq \varphi (e_{j})</tex>.  
 
}}
 
}}
  
Строка 17: Строка 17:
 
|about = о нижней оценке хроматического индекса
 
|about = о нижней оценке хроматического индекса
 
|statement= <tex>\forall\ G(V, E) : \Delta (G) \leqslant \chi '(G)</tex>, где <tex>\Delta (G)</tex> {{---}} максимальная степень вершины в графе
 
|statement= <tex>\forall\ G(V, E) : \Delta (G) \leqslant \chi '(G)</tex>, где <tex>\Delta (G)</tex> {{---}} максимальная степень вершины в графе
|proof= Действительно, давайте рассмотрим вершину максимальной степени в графе. Ей инцидентно ровно <tex>\Delta(G)</tex> рёбер. При этом, чтобы все они имели попарно различные цвета, они все должны иметь различные цвета, иначе найдётся пара различных рёбер, инцидентных одной вершине и имеющих одинаковый цвет.
+
|proof= Действительно, давайте рассмотрим вершину максимальной степени в графе. Ей инцидентно ровно <tex>\Delta(G)</tex> рёбер. При этом, чтобы все они имели попарно различные цвета, они все должны иметь различные цвета, иначе найдётся пара рёбер инцидентных одной вершине имеющих одинаковый цвет.
 
}}
 
}}
  
Заметим, что в теории графов доказывается более строгое неравенство<ref>http://math.uchicago.edu/~may/REU2015/REUPapers/Green.pdf</ref>, ограничивающее <tex>\chi '(G)</tex>. А именно то, что <tex>\forall\ G(V, E) : \Delta (G) \leqslant \chi '(G) \leqslant \Delta (G) + 1</tex>.
+
Заметим, что в теории графов доказывается более строгое неравенство<ref>http://math.uchicago.edu/~may/REU2015/REUPapers/Green.pdf</ref>, ограничивающее <tex>\chi '(G)</tex>. А именно что, <tex>\forall\ G(V, E) : \Delta (G) \leqslant \chi '(G) \leqslant \Delta (G) + 1</tex>. Однако доказательство этого факта очень громоздко и достойно отдельной статьи.  
  
 +
В данной же статье мы оценим хроматический индекс двудольных графов и предъявим алгоритм их раскраски.
  
 
== Рёберная раскраска двудольного графа ==
 
== Рёберная раскраска двудольного графа ==
Строка 27: Строка 28:
 
|id = lem2
 
|id = lem2
 
|about = о совершенном паросочетании
 
|about = о совершенном паросочетании
|statement= В [[Основные определения теории графов#defBiparateGraph | двудольном]] <tex>k</tex>-[[Основные определения теории графов#defRegularGraph |регулярном]] графе с одинаковыми по размеру долями существует совершенное паросочетание.
+
|statement= В [[Основные определения теории графов#defBiparateGraph | двудольном]] <tex>k</tex>-[[Основные определения теории графов#defRegularGraph |регулярном]] с одинаковыми по размеру долями графе существует совершенное паросочетание.
 
|proof=  
 
|proof=  
Возьмём <tex>L</tex> {{---}} произвольное подмножество левой доли. Рассмотрим подграф образованный <tex>L</tex> и множеством всех их соседей из правой доли <tex>R</tex>. Все вершины левой доли нашего подграфа будут иметь степень <tex>k</tex>, а степени вершин правой доли '''не превосходят''' <tex>k</tex>.
+
Возьмём <tex>L</tex> {{---}} произвольное подмножество левой доли. Рассмотрим подграф образованный <tex>L</tex> и множеством всех их соседей из правой доли <tex>R</tex>. Все вершины левой доли нашего подграфа будут иметь степень <tex>k</tex>, а степени вершин правой доли '''не превосходит''' <tex>k</tex>.
  
Посчитаем количество рёбер <tex>m_{L}</tex>  в данном подграфе. В силу его двудольности, это число будет равняться сумме степеней вершин одной из долей. <tex>m_{L} = \underset{{v\in L}}{\sum} deg(v) = |L|\cdot k = \underset{{u\in R}}{\sum} deg(u) \leqslant |R|\cdot k</tex>. Из этого мы получаем, что <tex>|L|\leqslant |R|</tex>.
+
Посчитаем количество рёбер <tex>m_{L}</tex>  в данном подграфе. В силу его двудольности это число будет равняться сумме степеней вершин одной из долей. <tex>m_{L} = \underset{{v\in L}}{\sum} deg(v) = |L|\cdot k = \underset{{u\in R}}{\sum} deg(u) \leqslant |R|\cdot k</tex>. Из этого мы получаем, что <tex>|L|\leqslant |R|</tex>.
  
 
Значит в данном графе выполняется [[Теорема Холла | Теорема Холла]]. Из чего следует, что в нём есть совершенное паросочетание.
 
Значит в данном графе выполняется [[Теорема Холла | Теорема Холла]]. Из чего следует, что в нём есть совершенное паросочетание.
Строка 37: Строка 38:
  
 
{{Теорема
 
{{Теорема
|statement= Существует рёберная раскраска двудольного графа <tex>G</tex> в <tex>\Delta(G)</tex> цветов. Иными словами, для двудольного графа <tex>\chi '(G) = \Delta(G)</tex>
+
|statement= Существует рёберная раскраска двудольного графа <tex>G</tex> в <tex>\Delta(G)</tex> цветов. Иными слова для двудольного графа <tex>\chi '(G) = \Delta(G)</tex>
 
|proof=  
 
|proof=  
 
В доказательство рассмотрим следующий алгоритм поиска такой раскраски:
 
В доказательство рассмотрим следующий алгоритм поиска такой раскраски:
  
# Для начала сделаем доли графа одинаковыми по размеру, дополнив меньшую из долей необходимым количеством [[Основные определения теории графов#isolated_vertex | изолированных вершин]];
+
# Для начала сделаем доли графа одинаковыми по размеру, дополнив меньшую из долей необходимым количеством [[Основные определения теории графов#isolated_vertex | изолированных вершин]]
# Следующим жадным алгоритмом сделаем его <tex>\Delta(G)</tex>-регулярным: пока граф не регулярный возьмём вершину левой доли степени меньше <tex>\Delta(G)</tex> и аналогичную вершину правой доли. Соединим их ребром;
+
# Следующим жадным алгоритмом сделаем его <tex>\Delta(G)</tex>-регулярным: пока граф не регулярный возьмём вершину левой доли степени меньше <tex>\Delta(G)</tex> и аналогичную вершину правой доли. Соединим их ребром
# Мы получили регулярный двудольный граф с равными долями. По лемме о совершенном паросочетании в таком графе есть совершенное паросочетание. Найдём его, например [[Алгоритм Куна для поиска максимального паросочетания | алгоритмом Куна]], и удалим из графа;
+
# Мы получили регулярный двудольный граф с равными доля. По лемме о совершенном паросочетании в таком графе есть совершенное паросочетание. Найдём его, например [[Алгоритм Куна для поиска максимального паросочетания | алгоритмом Куна]], и удалим из графа.
# Заметим, что граф всё ещё остался регулярным, так как степень каждой вершины уменьшилась на <tex>1</tex>. Будем повторять процесс, пока в графе есть рёбра;
+
# Заметим что граф всё ещё остался регулярным, так как степень каждой вершины уменьшилась на <tex>1</tex>. Будем повторять процесс, пока в графе есть рёбра.
# В итоге мы разобьём рёбра графа на <tex>\Delta(G)</tex> совершенных паросочетаний;
+
# По итогу мы разобьём рёбра графа на <tex>\Delta(G)</tex> совершенных паросочетаний.
# В конце нам остаётся каждое паросочетание покрасить в свой цвет и удалить рёбра, которых не было в изначальном графе;
+
# В конце нам остаётся каждое паросочетание покрасить в свой цвет и удалить рёбра, которых не было в изначальном графе
  
  
Докажем, что жадный алгоритм из пункта <tex>2</tex> всегда выполняет поставленную задачу.
+
Докажем, что такой жадный алгоритм из пункта 2 всегда выполняет поставленную задачу.
  
Предположим, что это не так, и, не нарушая общности, у нас остались вершины в правой доле степени меньше <tex>\Delta(G)</tex>, а в левой таких вершин нет. Давайте посчитаем количество рёбер <tex>m</tex> в графе. Из левой доли исходит <tex>|L| \cdot \Delta(G)</tex> рёбер. В правую же приходит не более <tex>|R| \cdot \Delta(G)</tex> рёбер, но так как существует вершина степени меньше <tex>\Delta(G)</tex>, то неравенство строгое. Получается <tex>|L| \cdot \Delta(G) = m < |R| \cdot \Delta(G)</tex>. Но в нашем графе  <tex>|L| = |R|</tex>. Следовательно  <tex>\Delta(G) < \Delta(G)</tex>, что приводит нас к противоречию.
+
Предположим, что это не так, и, не нарушая общности, у нас остались вершины в правой доле степени меньше <tex>\Delta(G)</tex>, а в левой таких вершин нет. Давайте посчитаем количество рёбер <tex>m</tex> в графе. Из левой доли исходит <tex>|L| \cdot \Delta(G)</tex> рёбер. В правую же приходит не более <tex>|R| \cdot \Delta(G)</tex> рёбер, но так как существует вершина степени меньше <tex>\Delta(G)</tex>. То неравенство строгое. Получается <tex>|L| \cdot \Delta(G) = m < |R| \cdot \Delta(G)</tex>. Но в нашем графе  <tex>|L| = |R|</tex>. Следовательно  <tex>\Delta(G) < \Delta(G)</tex>, что приводит нас к противоречию
  
  

Пожалуйста, учтите, что любой ваш вклад в проект «Викиконспекты» может быть отредактирован или удалён другими участниками. Если вы не хотите, чтобы кто-либо изменял ваши тексты, не помещайте их сюда.
Вы также подтверждаете, что являетесь автором вносимых дополнений, или скопировали их из источника, допускающего свободное распространение и изменение своего содержимого (см. Викиконспекты:Авторские права). НЕ РАЗМЕЩАЙТЕ БЕЗ РАЗРЕШЕНИЯ ОХРАНЯЕМЫЕ АВТОРСКИМ ПРАВОМ МАТЕРИАЛЫ!

Чтобы изменить эту страницу, пожалуйста, ответьте на приведённый ниже вопрос (подробнее):

Отменить | Справка по редактированию (в новом окне)