Теорема Брукса — различия между версиями
Danek g30 (обсуждение | вклад) |
Danek g30 (обсуждение | вклад) |
||
Строка 24: | Строка 24: | ||
#Если <tex>G</tex> не является вершинно двусвязным графом, тогда в графе <tex> G</tex> <tex> \exists</tex> <tex> v \in V</tex>, где v {{---}} точка сочленения. Пусть <tex>G_1,G_2</tex> две компоненты связности полученный при удалении вершины <tex>v</tex>.Тогда, по выше доказанной лемме <tex>G_1,G_2</tex> можно правильно раскрасить в не более чем <tex>\Delta</tex> цветов.Поскольку количество соседей вершины <tex> v </tex> в каждой из компонент не более <tex> \Delta - 1</tex>, то <tex>G</tex> можно правильно раскрасить в не более чем <tex>\Delta</tex> цветов. | #Если <tex>G</tex> не является вершинно двусвязным графом, тогда в графе <tex> G</tex> <tex> \exists</tex> <tex> v \in V</tex>, где v {{---}} точка сочленения. Пусть <tex>G_1,G_2</tex> две компоненты связности полученный при удалении вершины <tex>v</tex>.Тогда, по выше доказанной лемме <tex>G_1,G_2</tex> можно правильно раскрасить в не более чем <tex>\Delta</tex> цветов.Поскольку количество соседей вершины <tex> v </tex> в каждой из компонент не более <tex> \Delta - 1</tex>, то <tex>G</tex> можно правильно раскрасить в не более чем <tex>\Delta</tex> цветов. | ||
− | #Если в графе <tex> G</tex> <tex> \exists</tex> <tex> v,u \in V :(u,v) \notin E</tex> и при удалении вершин <tex>v,u</tex> граф теряет связность .Пусть <tex>G_1,G_2</tex> два подграфа <tex> G:G_1 \cap G_2 = \{v,u\} \land G_1 \cup G_2 = G</tex>. Рассмотрим два случая: | + | #Если в графе <tex> G</tex> <tex> \exists</tex> <tex> v,u \in V :(u,v) \notin E</tex> и при удалении вершин <tex>v,u</tex> граф теряет связность .Пусть <tex>G_1,G_2</tex> два подграфа <tex> G:(G_1 \cap G_2 = \{v,u\}) \land (G_1 \cup G_2 = G)</tex>. Рассмотрим два случая: |
## Если в одном из подграфов <tex> G_1,G_2</tex> <tex> deg\ u \le \Delta - 2 </tex> или <tex> deg\ v \le \Delta - 2 </tex> то, подграфы <tex>G_1,G_2</tex> можно правильно раскрасить в не более чем <tex>\Delta</tex> цветов так, чтобы вершины <tex> u,v </tex> были бы разных цветов.А из этого следует что, граф <tex>G</tex> тоже можно правильно раскрасить в не более чем <tex>\Delta</tex> цветов. | ## Если в одном из подграфов <tex> G_1,G_2</tex> <tex> deg\ u \le \Delta - 2 </tex> или <tex> deg\ v \le \Delta - 2 </tex> то, подграфы <tex>G_1,G_2</tex> можно правильно раскрасить в не более чем <tex>\Delta</tex> цветов так, чтобы вершины <tex> u,v </tex> были бы разных цветов.А из этого следует что, граф <tex>G</tex> тоже можно правильно раскрасить в не более чем <tex>\Delta</tex> цветов. | ||
## Если степени обоих вершин в одном из подграфов равны <tex> \Delta - 1</tex> например в подграфе <tex>G_1</tex>: | ## Если степени обоих вершин в одном из подграфов равны <tex> \Delta - 1</tex> например в подграфе <tex>G_1</tex>: | ||
##* <tex> G_1,G_2 </tex> можно правильно раскрасить в не более чем <tex>\Delta</tex> цветов так, чтобы вершины <tex> u,v </tex> были бы разных цветов.Тогда очевидно, что оценка теоремы выполнена. | ##* <tex> G_1,G_2 </tex> можно правильно раскрасить в не более чем <tex>\Delta</tex> цветов так, чтобы вершины <tex> u,v </tex> были бы разных цветов.Тогда очевидно, что оценка теоремы выполнена. | ||
− | ##* <tex>\exists p \in G_2: pu \in E \land pv \in E </tex>, тогда мы можем правильно раскрасить <tex>G_2</tex>, где <tex>deg\ u = deg\ v = 1</tex>, в не более чем <tex> \Delta </tex> цветов так, чтобы вершины <tex>u,v</tex> были одного цвета.Следовательно,можно покрасить граф <tex>G</tex> в не более чем <tex>\Delta</tex> цветов. | + | ##* <tex>\exists p \in G_2: (pu \in E) \land (pv \in E) </tex>, тогда мы можем правильно раскрасить <tex>G_2</tex>, где <tex>deg\ u = deg\ v = 1</tex>, в не более чем <tex> \Delta </tex> цветов так, чтобы вершины <tex>u,v</tex> были одного цвета.Следовательно,можно покрасить граф <tex>G</tex> в не более чем <tex>\Delta</tex> цветов. |
− | ##*<tex>\exists u_1,v_1 \in G_2: uu_1 \in E \land vv_1 \in E \land u_1 \neq v_1 </tex>, тогда вместо вершин <tex>\{u,v\}</tex> рассмотрим вершины <tex>\{u,v_1\}</tex>.Заметим, что при удалении этих вершин граф потеряет связность и между ними нет ребра,то есть для этой пары вершин можно провести рассуждения аналогичные тем которые проводились для вершин <tex> v,u</tex>.Из чего, прямым образом вытекает, что граф <tex> G</tex> можно правильно раскрасить в не более чем не более чем <tex>\Delta </tex> цветов. | + | ##*<tex>\exists u_1,v_1 \in G_2: (uu_1 \in E) \land (vv_1 \in E) \land (u_1 \neq v_1) </tex>, тогда вместо вершин <tex>\{u,v\}</tex> рассмотрим вершины <tex>\{u,v_1\}</tex>.Заметим, что при удалении этих вершин граф потеряет связность и между ними нет ребра,то есть для этой пары вершин можно провести рассуждения аналогичные тем которые проводились для вершин <tex> v,u</tex>.Из чего, прямым образом вытекает, что граф <tex> G</tex> можно правильно раскрасить в не более чем не более чем <tex>\Delta </tex> цветов. |
− | #[[Файл:Brooks_2.png|400px|thumb|Алгоритм расскраски для 3ого случая на 5ом шаге]]Если вышеописанные случаи не подходят, тогда рассмотрим <tex>w \in V : deg\ w = \Delta</tex>. У вершины <tex>w</tex> должны существовать две соседние вершины <tex>u,v : uv \notin E </tex>, в противном случаи <tex>G = K_n</tex>.Пусть <tex>G_- = G - u - v </tex>. Заметим, что <tex>G_-</tex> связный граф, запустим для <tex>G_-</tex> алгоритм обхода в ширину из вершины <tex>w</tex>. Пронумеруем вершины <tex>v_1,...,v_{n-2},</tex> где <tex>v_i</tex> вершина рассмотренная на <tex>i</tex>ом шаге алгоритма bfs.Теперь пусть <tex> v_{n-1} = v</tex>,и <tex>v_n = u</tex>. Покрасим <tex>v_n,v_{n-1}</tex> в один цвет, далее начнем красить вершины в обратном порядке начиная с <tex>v_{n-2}</tex> | + | #[[Файл:Brooks_2.png|400px|thumb|Алгоритм расскраски для 3ого случая на 5ом шаге]]Если вышеописанные случаи не подходят, тогда рассмотрим <tex>w \in V : deg\ w = \Delta</tex>. У вершины <tex>w</tex> должны существовать две соседние вершины <tex>u,v : uv \notin E </tex>, в противном случаи <tex>G = K_n</tex>.Пусть <tex>G_- = G - u - v </tex>. Заметим, что <tex>G_-</tex> связный граф, запустим для <tex>G_-</tex> алгоритм обхода в ширину из вершины <tex>w</tex>. Пронумеруем вершины <tex>v_1,...,v_{n-2},</tex> где <tex>v_i</tex> вершина рассмотренная на <tex>i</tex>ом шаге алгоритма bfs.Теперь пусть <tex> v_{n-1} = v</tex>,и <tex>v_n = u</tex>. Покрасим <tex>v_n,v_{n-1}</tex> в один цвет, далее начнем красить вершины в обратном порядке начиная с <tex>v_{n-2}</tex> в один из <tex>\Delta</tex> цветов так, чтобы никакое ребро графа не соединяло вершины одного цвета.Заметим, что так всегда можно сделать, поскольку на <tex> i</tex>ом шаге покраски,где <tex>i \neq n</tex>, для вершины <tex> v_{n - i+1}</tex> есть не более <tex>\Delta(G) - 1</tex> уже покрашенных соседей, следовательно вершину <tex> v_{n-i+1}</tex> можно покрасить по крайней мере в один из свободных цветов.Вершину <tex>w</tex>,мы тоже сможем правильно раскрасить в не более чем один из <tex>\Delta</tex> цветов потому, что ее <tex>\Delta</tex> соседей покрашено в не более чем <tex>\Delta - 1</tex> цветов. Таким образом граф <tex> G</tex> можно правильно раскрасить в не более чем не более чем <tex>\Delta</tex> цветов. |
}} | }} | ||
Версия 22:02, 17 января 2013
Вспомогательная Лемма
Лемма: |
Пусть - произвольный связный неориентированный граф и - максимальная степень вершин . Если в таком графе существует вершина степени , то . |
Доказательство: |
Запустим алгоритм обхода в ширину из вершины . Пронумеруем вершины где вершина рассмотренная на ом шаге алгоритма bfs. Далее начнем красить вершины в обратном порядке в один из цветов так, чтобы никакое ребро графа не соединяло вершины одного цвета. На ом шаге покраски, для вершины есть не более уже покрашенных соседей (т.к и предок данной вершины в дереве bfs еще не покрашен, а если предка нет, то это вершина и есть ), следовательно вершину можно покрасить по крайней мере в один из свободных цветов. Поскольку на каждом шаге алгоритм отработает корректно, следовательно граф можно правильно раскрасить в не более чем цветов, то есть . |
Теорема
Теорема (Брукса): |
Пусть — связный неориентированный граф и не является или , ни для кого , тогда , где - максимальная степень вершин |
Доказательство: |
Поэтому мы будем считать до конца доказательства, что . Если в существует вершина степени , то по выше доказанной лемме . То есть осталось рассмотреть случай, когда — регулярный граф степени .
|