Matematyka dyskretna 1/Wykład 14: Grafy III: Różnice pomiędzy wersjami

Z Studia Informatyczne
Przejdź do nawigacjiPrzejdź do wyszukiwania
Arek (dyskusja | edycje)
m Zastępowanie tekstu – „.↵</math>” na „</math>”
 
(Nie pokazano 95 wersji utworzonych przez 6 użytkowników)
Linia 1: Linia 1:
==Grafy planarne==
==Grafy planarne==
 
[[File:Grafy planarne.mp4|250x250px|thumb|left|Graf nieplanarny (a) oraz graf planarny (b) wraz z jego prezentacją w postaci grafu płaskiego (c)]]


'''Graf płaski''' to para:  
[[File:Grafy k33.svg|200x200px|thumb|right|Grafy k33]]
<math>\mathbf{\overline{G}}=\left( \overline{V},\overline{E} \right)</math>, gdzie
 
[[File:Grafy k332.svg|200x200px|thumb|right|Grafy k332]]
 
'''Graf płaski''' to para: <math>\mathbf{\overline{G}}=\left( \overline{V},\overline{E} \right)</math>, gdzie
* <math>\overline{V}</math> jest  jakimś zbiorem punktów płaszczyzny <math>\mathbb{R}^2</math>,
* <math>\overline{V}</math> jest  jakimś zbiorem punktów płaszczyzny <math>\mathbb{R}^2</math>,
* <math>\overline{E}</math> jest zbiorem nie przecinających się odcinków lub łuków w <math>R^2</math> o końcach ze zbiorze <math>\overline{V}</math>.
* <math>\overline{E}</math> jest zbiorem nie przecinających się odcinków lub łuków w <math>R^2</math> o końcach w zbiorze <math>\overline{V}</math>.


'''Graf planarny''' to graf, który jest prezentowalny jako graf płaski.
'''Graf planarny''' to graf, który jest prezentowalny jako graf płaski.


{grafy_planarne}
{{obserwacja|14.1|obs 14.1|
{Graf nieplanarny(a) oraz graf planarny (b) wraz z jego prezentacją w postaci grafu płaskiego (c) '''[Rysunek z pliku:''' <tt>grafyplanarne.eps</tt>''']'''}
 
{{obserwacje|1||
 
Grafy <math>\mathcal{K}_{5}</math> i <math>\mathcal{K}_{3,3}</math> nie są planarne.  
Grafy <math>\mathcal{K}_{5}</math> i <math>\mathcal{K}_{3,3}</math> nie są planarne.  
}}
}}


{{dowod|||
{{dowod|||
Graf <math>\mathcal{K}_{3,3}</math> ma sześcio-elementowy cykl Hamiltona <math>H</math>.  
Graf <math>\mathcal{K}_{3,3}</math> ma sześcio-elementowy cykl Hamiltona <math>H</math>.  
Musi on być narysowany w dowolnej płaskiej prezentacji.
Musi on być narysowany w dowolnej płaskiej prezentacji.
Przykładowe umiejscowienie tego cyklu prezentuje rys. [[##pict k33|Uzupelnic pict k33|]].
Przykładowe umiejscowienie tego cyklu prezentuje rysunek[[#Grafy k33|Grafy k33]].
 
{grafy_k33}
{ '''[Rysunek z pliku:''' <tt>grafyk33.eps</tt>''']'''}


Spośród krawędzi <math>v_1 v_4</math> i <math>v_2 v_5</math> jedna musi  leżeć wewnątrz cyklu  
Spośród krawędzi <math>v_1 v_4</math> i <math>v_2 v_5</math> jedna musi  leżeć wewnątrz cyklu  
Linia 29: Linia 26:
W konsekwencji nie da się narysować krawędzi <math>v_3 v_0</math> nie przecinając krawędzi  
W konsekwencji nie da się narysować krawędzi <math>v_3 v_0</math> nie przecinając krawędzi  
<math>v_1 v_4</math> lub <math>v_2 v_5</math>.
<math>v_1 v_4</math> lub <math>v_2 v_5</math>.
{grafy_k332}
{ '''[Rysunek z pliku:''' <tt>grafyk332.eps</tt>''']'''}


Dowód dla <math>\mathcal{K}_{5}</math> jest analogiczny,  
Dowód dla <math>\mathcal{K}_{5}</math> jest analogiczny,  
Linia 37: Linia 31:
}}
}}


Z Obserwacji [[##th k5 i k33 nieplanarne|Uzupelnic th k5 i k33 nieplanarne|]] natychmiast wynika,  
Z [[#obs_14.1|Obserwacji 14.1]] natychmiast wynika,  
że żaden graf zawierający <math>\mathcal{K}_{5}</math> lub <math>\mathcal{K}_{3,3}</math> nie jest planarny.
że żaden graf zawierający <math>\mathcal{K}_{5}</math> lub <math>\mathcal{K}_{3,3}</math> nie jest planarny.
Ale również graf powstały np. z <math>\mathcal{K}_{5}</math> poprzez umieszczenie na jednej krawędzi  
Ale również graf powstały np. z <math>\mathcal{K}_{5}</math> poprzez umieszczenie na jednej krawędzi  
Linia 45: Linia 39:
Graf <math>\mathbf{G}_1</math> jest ''homeomorficzny'' z grafem <math>\mathbf{G}_2</math>,
Graf <math>\mathbf{G}_1</math> jest ''homeomorficzny'' z grafem <math>\mathbf{G}_2</math>,
jeśli jeden otrzymamy z drugiego poprzez wykonanie skończenie wielu poniższych operacji:  
jeśli jeden otrzymamy z drugiego poprzez wykonanie skończenie wielu poniższych operacji:  
* Dodawanie wierzchołków stopnia dwa na krawędzi.<br> Jeśli <math>uw\in{\sf E}\!\left(\mathbf{G}_1\right)</math> oraz <math>x\not\in{\sf V}\!\left(\mathbf{G}_1\right)</math>, to operacja ta zastępuje graf <math>\left( {\sf V}\!\left(\mathbf{G}_1\right),{\sf E}\!\left(\mathbf{G}_1\right) \right)</math> grafem <math>\left( {\sf V}\!\left(\mathbf{G}_1\right)\cup\left\lbrace x \right\rbrace,{\sf E}\!\left(\mathbf{G}_1\right)\cup\left\lbrace ux,xw \right\rbrace-\left\lbrace uw \right\rbrace \right)</math>.
* Dodawanie wierzchołków stopnia dwa na krawędzi.<br> Jeśli <math>uw\in\mathsf{ E}\!\left(\mathbf{G}_1\right)</math> oraz <math>x\not\in\mathsf{ V}\!\left(\mathbf{G}_1\right)</math>, to operacja ta zastępuje graf <math>\left( \mathsf{ V}\!\left(\mathbf{G}_1\right),\mathsf{ E}\!\left(\mathbf{G}_1\right) \right)</math> grafem <math>\left( \mathsf{ V}\!\left(\mathbf{G}_1\right)\cup\left\lbrace x \right\rbrace,\mathsf{ E}\!\left(\mathbf{G}_1\right)\cup\left\lbrace ux,xw \right\rbrace-\left\lbrace uw \right\rbrace \right)</math>.
* Usuwanie wierzchołków stopnia dwa.<br>Jeśli <math>x\in{\sf V}\!\left(\mathbf{G}_1\right)</math> ma jedynie dwóch sąsiadów <math>u,w</math>, to operacja ta zastępuje graf <math>\left( {\sf V}\!\left(\mathbf{G}_1\right),{\sf E}\!\left(\mathbf{G}_1\right) \right)</math> grafem <math>\left( {\sf V}\!\left(\mathbf{G}_1\right)-\left\lbrace x \right\rbrace,{\sf E}\!\left(\mathbf{G}_1\right)\cup\left\lbrace uw \right\rbrace-\left\lbrace ux,xw \right\rbrace \right)</math>.
* Usuwanie wierzchołków stopnia dwa.<br>Jeśli <math>x\in\mathsf{ V}\!\left(\mathbf{G}_1\right)</math> ma jedynie dwóch sąsiadów <math>u,w</math>, to operacja ta zastępuje graf <math>\left( \mathsf{ V}\!\left(\mathbf{G}_1\right),\mathsf{ E}\!\left(\mathbf{G}_1\right) \right)</math> grafem <math>\left( \mathsf{ V}\!\left(\mathbf{G}_1\right)-\left\lbrace x \right\rbrace,\mathsf{ E}\!\left(\mathbf{G}_1\right)\cup\left\lbrace uw \right\rbrace-\left\lbrace ux,xw \right\rbrace \right)</math>.
 
{{kotwica|Grafy homeomorficzne||}}
[[File:Grafy homeomorficzne.svg|250x100px|thumb|left|Grafy homeomorficzne]]


{{przyklad|||
{{przyklad|||
 
Grafy <math>\mathbf{G},\mathbf{G}'</math> przedstawione na rysunku [[#Grafy homeomorficzne|Grafy homeomorficzne]]  
Grafy <math>\mathbf{G},\mathbf{G}'</math> przedstawione na rysunku [[##pict homeomorficzne|Uzupelnic pict homeomorficzne|]]  
są ze sobą homeomorficzne,  
są ze sobą homeomorficzne,  
zaś <math>\mathbf{G}''</math> nie jest homeomorficzny  
zaś <math>\mathbf{G}''</math> nie jest homeomorficzny  
ani z <math>\mathbf{G}</math> ani z <math>\mathbf{G}'</math>.  
ani z <math>\mathbf{G}</math> ani z <math>\mathbf{G}'</math>.  
{grafy_homeomorficzne}
{ '''[Rysunek z pliku:''' <tt>grafyhomeomorficzne.eps</tt>''']'''}


}}
}}
Linia 63: Linia 56:
Niestety dowód tego twierdzenia nie jest prosty i go pominiemy.
Niestety dowód tego twierdzenia nie jest prosty i go pominiemy.


{{twierdzenie|2 [Kuratowski 1930]||
{{twierdzenie|14.2 [Kuratowski 1930]|tw 14.2|
 
Graf jest planarny wtedy i tylko wtedy,  
Graf jest planarny wtedy i tylko wtedy,  
gdy żaden jego podgraf nie jest homeomorficzny z <math>\mathcal{K}_{5}</math> ani z <math>\mathcal{K}_{3,3}</math>.  
gdy żaden jego podgraf nie jest homeomorficzny z <math>\mathcal{K}_{5}</math> ani z <math>\mathcal{K}_{3,3}</math>.  
Linia 72: Linia 64:
pojęcia sciągalności, lub grafu ilorazowego.
pojęcia sciągalności, lub grafu ilorazowego.
Przypomnijmy, że
Przypomnijmy, że
*  '''iloraz''' grafu <math>\mathbf{G}</math> przez relację równoważności <math>\theta\subseteq V\times V</math> na zbiorze jego wierzchołków to graf postaci <center><math>\mathbf{G}/\theta=\left( V/\theta,\left\lbrace \left\lbrace v/\theta,w/\theta \right\rbrace:\left\lbrace v,w \right\rbrace\in E \right\rbrace \right), </math></center>
*  '''iloraz''' grafu <math>\mathbf{G}</math> przez relację równoważności <math>\theta\subseteq V\times V</math> na zbiorze jego wierzchołków to graf postaci
 
<center><math>\mathbf{G}/\theta=\left( V/\theta,\left\lbrace \left\lbrace v/\theta,w/\theta \right\rbrace:\left\lbrace v,w \right\rbrace\in E \right\rbrace \right)</math></center>
 
*  '''ściągnięcie''' zbioru wierzchołków <math>X\subseteq V</math> w grafie <math>\mathbf{G}</math> to szczególny przypadek ilorazu <math>\mathbf{G}/\theta</math>, w którym  klasy równoważności wszystkich wierzchołków spoza <math>X</math> są jednoelementowe, a <math>X</math> stanowi dodatkową klasę, tzn. <math>V/\theta=\left\lbrace \left\lbrace v \right\rbrace:v\in V- X \right\rbrace\cup\left\lbrace X \right\rbrace</math>. W ten sposób zbiór <math>X</math> został ściągnięty do punktu, którego sąsiadami są sąsiedzi jakiegokolwiek wierzchołka z <math>X</math>. Z drugiej strony, jeśli <math>\theta\subseteq V\times V</math> jest relacją równoważności o klasach <math>X_1,\ldots,X_k</math>, to ściągając w grafie <math>\mathbf{G}</math> kolejno zbiory <math>X_1,\ldots,X_k</math> otrzymamy graf ilorazowy <math>\mathbf{G}/\theta</math>.
*  '''ściągnięcie''' zbioru wierzchołków <math>X\subseteq V</math> w grafie <math>\mathbf{G}</math> to szczególny przypadek ilorazu <math>\mathbf{G}/\theta</math>, w którym  klasy równoważności wszystkich wierzchołków spoza <math>X</math> są jednoelementowe, a <math>X</math> stanowi dodatkową klasę, tzn. <math>V/\theta=\left\lbrace \left\lbrace v \right\rbrace:v\in V- X \right\rbrace\cup\left\lbrace X \right\rbrace</math>. W ten sposób zbiór <math>X</math> został ściągnięty do punktu, którego sąsiadami są sąsiedzi jakiegokolwiek wierzchołka z <math>X</math>. Z drugiej strony, jeśli <math>\theta\subseteq V\times V</math> jest relacją równoważności o klasach <math>X_1,\ldots,X_k</math>, to ściągając w grafie <math>\mathbf{G}</math> kolejno zbiory <math>X_1,\ldots,X_k</math> otrzymamy graf ilorazowy <math>\mathbf{G}/\theta</math>.


Dowód charakteryzacji grafów planarnych w terminach ściągalności również pomijamy.
Dowód charakteryzacji grafów planarnych w terminach ściągalności również pomijamy.
{{kotwica||Grafy sciagalne k33||}}
<div class="thumb tleft"><div style="width:250px;"> 
<flashwrap>file=Grafy sciagalne k33.swf|size=small</flashwrap> 
<div.thumbcaption>Graf posiadający podgraf ściągalny do <math>\mathcal{K}_{3,3}</math></div></div> 
</div>
{{kotwica|Grafy sciany||}}
[[File:Grafy sciany.svg|250x250px|thumb|right|Graf posiadający cztery ściany: <math>f_0, f_1,f_2,f_3</math>]]


{{twierdzenie|3||
{{twierdzenie|14.3|tw_14.3|
 
Graf jest planarny wtedy i tylko wtedy,  
Graf jest planarny wtedy i tylko wtedy,  
gdy nie zawiera podgrafu ściągalnego do <math>\mathcal{K}_{5}</math> lub <math>\mathcal{K}_{3,3}</math>.
gdy nie zawiera podgrafu ściągalnego do <math>\mathcal{K}_{5}</math> lub <math>\mathcal{K}_{3,3}</math>.
Linia 84: Linia 85:


{{przyklad|||
{{przyklad|||
 
W grafie przedstawionym na rysunku [[#Grafy sciagalne k33|Grafy ściagalne k33]] ściągnięcie  
W grafie przedstawionym na rysunku [[##pict sciagalny k33|Uzupelnic pict sciagalny k33|]] ściągnięcie  
zbiorów wierzchołków otoczonych przerywaną linią prowadzi do  
zbiorów wierzchołków otoczonych przerywaną linią prowadzi do  
grafu zawierającego <math>\mathcal{K}_{3,3}</math>.  
grafu zawierającego <math>\mathcal{K}_{3,3}</math>.  
A więc, na mocy Twierdzenia [[##th ściągalny k5k33|Uzupelnic th ściągalny k5k33|]],  
A więc, na mocy [[#tw_14.3| Twierdzenia 14.3]],  
graf ten nie jest planarny.  
graf ten nie jest planarny.  
{grafy_sciagalny_k33}
{Graf posiadający podgraf ściągalny do <math>\mathcal{K}_{3,3}</math>. '''[Rysunek z pliku:''' <tt>grafysciagalnyk33.eps</tt>''']'''}


}}
}}
Linia 101: Linia 98:
'''Ściana''' w grafie płaskim <math>\mathbf{G}</math> to spójny obszar  
'''Ściana''' w grafie płaskim <math>\mathbf{G}</math> to spójny obszar  
płaszczyzny po usunięciu linii reprezentujących krawędzie, tzn.  
płaszczyzny po usunięciu linii reprezentujących krawędzie, tzn.  
<math>R^2-\bigcup{\sf E}\!\left(\mathbf{G}\right)</math>.
<math>R^2-\bigcup\mathsf{ E}\!\left(\mathbf{G}\right)</math>.
Innym słowy ściana to zbiór punktów płaszczyzny,  
Innym słowy ściana to zbiór punktów płaszczyzny,  
które da się połączyć krzywą nieprzecinającą żadnej krawędzi.
które da się połączyć krzywą nieprzecinającą żadnej krawędzi.


{grafy_sciany}
Ściana <math>f_0</math> w grafie z rysunku [[#Grafy sciany|Graf o czterech ścianach]] jest ścianą nieograniczoną,  
{Graf posiadający cztery ściany: <math>f_0, f_1,f_2,f_3</math>. '''[Rysunek z pliku:''' <tt>grafysciany.eps</tt>''']'''}
 
Ściana <math>f_0</math> w grafie z rysunku [[##pict ściana|Uzupelnic pict ściana|]] jest ścianą nieograniczoną,  
która nazywana jest też ''ścianą nieskończoną''.  
która nazywana jest też ''ścianą nieskończoną''.  
Nie tylko ten graf, ale wszystkie grafy płaskie  
Nie tylko ten graf, ale wszystkie grafy płaskie  
Linia 119: Linia 113:
(tzn. spójnych składowych) w lesie.
(tzn. spójnych składowych) w lesie.


{{twierdzenie|4 [Euler 1750]||
{{twierdzenie|14.4 [Euler 1750]|tw 14.4|
W grafie płaskim <math>\mathbf{G}=\left( V,E \right)</math>
o <math>f</math> ścianach i <math>k\geq 1</math> składowych spójnych zachodzi
 
 
<center>
<math>\left\vert V \right\vert-\left\vert E \right\vert+f=k+1</math>
</center>


W grafie płaskim <math>\mathbf{G}=\left( V,E \right)</math>
o <math>f</math> ścianach i <math>k\geq 1</math> składowych spójnych zachodzi
<center><math>\left\vert V \right\vert-\left\vert E \right\vert+f=k+1.
</math></center>


}}
}}


{{dowod|||
{{dowod|||
Dowód poprowadzimy indukcją ze względu na liczbę krawędzi.  
Dowód poprowadzimy indukcją ze względu na liczbę krawędzi.  
Jeżeli graf <math>\mathbf{G}</math> jest pusty to <math>\left\vert E \right\vert=0,k=\left\vert V \right\vert,\ f=1</math>,  
Jeżeli graf <math>\mathbf{G}</math> jest pusty to <math>\left\vert E \right\vert=0,k=\left\vert V \right\vert,\ f=1</math>,  
Linia 150: Linia 146:


{{uwaga|||
{{uwaga|||
 
Ważną konsekwencją [[#tw_14.4|Twierdzenia 14.4]] jest to,  
Ważną konsekwencją Twierdzenia [[##th ilość krawędzi|Uzupelnic th ilość krawędzi|]] jest to,  
że liczba ścian zależy jedynie od liczby wierzchołków, krawędzi,  
że liczba ścian zależy jedynie od liczby wierzchołków, krawędzi,  
oraz spójnych składowych.   
oraz spójnych składowych.   
Linia 157: Linia 152:
}}
}}


Uzasadnienie dwu kolejnych wniosków z Twierdzenia [[##th ilość krawędzi|Uzupelnic th ilość krawędzi|]]  
Uzasadnienie dwu kolejnych wniosków z [[#tw_14.4|Twierdzenia 14.4]]  
pozostawiamy jako ćwiczenie.
pozostawiamy jako ćwiczenie.


{{wniosek|5||
{{wniosek|14.5|wn 14.5|
Jeśli <math>\mathbf{G}=\left( V,E \right)</math> jest spójnym grafem planarnym o co najmniej <math>3</math> wierzchołkach, to
 
 
<center><math>\left\vert E \right\vert\leq 3\left\vert V \right\vert-6</math></center>


Jeśli <math>\mathbf{G}=\left( V,E \right)</math> jest spójnym grafem planarnym o co najmniej <math>3</math> wierzchołkach, to
<center><math>\left\vert E \right\vert\leq 3\left\vert V \right\vert-6.
</math></center>


}}
}}


{{wniosek|6||
{{wniosek|14.6|wn 14.6|
Spójny graf planarny o <math>\left\vert V \right\vert\geq1</math> posiada wierzchołek o stopniu nie większym niż <math>5</math>.
Spójny graf planarny o <math>\left\vert V \right\vert\geq1</math> posiada wierzchołek o stopniu nie większym niż <math>5</math>.
}}
}}
{{kotwica|Grafy dualny||}}
[[File:Grafy dualny.svg|250x250px|thumb|right|Graf (w kolorze czerwono-niebieskim) oraz graf do niego dualny geometrycznie (w kolorze żółto-szarym)]]


'''Graf dualny geometrycznie''' do grafu płaskiego <math>\mathbf{G}=\left( V,E \right)</math> to graf płaski <math>\mathbf{G}^*=\left( V^*,E^* \right)</math> skonstruowany w następujący sposób:
'''Graf dualny geometrycznie''' do grafu płaskiego <math>\mathbf{G}=\left( V,E \right)</math> to graf płaski <math>\mathbf{G}^*=\left( V^*,E^* \right)</math> skonstruowany w następujący sposób:
Linia 176: Linia 174:
* Jeśli krawędź po jednej stronie sąsiadowała ze ścianą <math>f_1</math>, a po drugiej z <math>f_2</math> to w grafie <math>\mathbf{G}^*</math> odpowiadające ścianom <math>f_1,f_2</math> wierzchołki <math>v_1^*,v_2^*</math> łączymy krawędzią <math>v_1^*v_2^*</math>. Tak wybrane krawędzie tworzą zbiór <math>E^*</math>.
* Jeśli krawędź po jednej stronie sąsiadowała ze ścianą <math>f_1</math>, a po drugiej z <math>f_2</math> to w grafie <math>\mathbf{G}^*</math> odpowiadające ścianom <math>f_1,f_2</math> wierzchołki <math>v_1^*,v_2^*</math> łączymy krawędzią <math>v_1^*v_2^*</math>. Tak wybrane krawędzie tworzą zbiór <math>E^*</math>.


{grafy_dualny}
{{twierdzenie|14.7|tw 14.7|
{Graf (w kolorze czarnym) oraz graf do niego dualny geometrycznie (w kolorze turkusowym). '''[Rysunek z pliku:''' <tt>grafydualny.eps</tt>''']'''}
 
{{twierdzenie|7||
 
Jeśli <math>\mathbf{G}</math> jest spójnym grafem płaskim,  
Jeśli <math>\mathbf{G}</math> jest spójnym grafem płaskim,  
to <math>\mathbf{G}^{**}</math> jest izomorficzny z <math>\mathbf{G}</math>.
to <math>\mathbf{G}^{**}</math> jest izomorficzny z <math>\mathbf{G}</math>.
Linia 186: Linia 180:


{{dowod|||
{{dowod|||
Każda ściana grafu <math>\mathbf{G}^{*}</math> reprezentowana jest  
Każda ściana grafu <math>\mathbf{G}^{*}</math> reprezentowana jest  
jednym wierzchołkiem <math>\mathbf{G}^{**}</math>.
jednym wierzchołkiem <math>\mathbf{G}^{**}</math>.
Linia 202: Linia 195:
}}
}}


{{twierdzenie|8||
{{twierdzenie|14.8|tw 14.8|
 
Niech <math>\mathbf{G}^*</math> będzie grafem geometrycznie dualnym do  
Niech <math>\mathbf{G}^*</math> będzie grafem geometrycznie dualnym do  
grafu płaskiego <math>\mathbf{G}</math>.
grafu płaskiego <math>\mathbf{G}</math>.
Linia 210: Linia 202:
jest rozcięciem grafu <math>\mathbf{G}^*</math>.
jest rozcięciem grafu <math>\mathbf{G}^*</math>.
}}
}}
{{kotwica|Grafy cykl rozC||}}
[[File:Grafy cykl rozC.svg|250x250px|thumb|right|Grafy cykl rozC]]


{{dowod|||
{{dowod|||
Niech <math>C</math> będzie cyklem w grafie <math>\mathbf{G}</math>.
Niech <math>C</math> będzie cyklem w grafie <math>\mathbf{G}</math>.
W grafie płaskim cykl dzieli płaszczyznę <math>\mathbb{R}^2</math>  
W grafie płaskim cykl dzieli płaszczyznę <math>\mathbb{R}^2</math>  
Linia 231: Linia 224:
Tak więc, zbiór <math>C^*</math> krawędzi dualnych do krawędzi z cyklu <math>C</math>  
Tak więc, zbiór <math>C^*</math> krawędzi dualnych do krawędzi z cyklu <math>C</math>  
tworzy zbiór rozspajający wierzchołki <math>v_1^*,v_0^*</math>.  
tworzy zbiór rozspajający wierzchołki <math>v_1^*,v_0^*</math>.  
{grafy_cykl_rozc}
{ '''[Rysunek z pliku:''' <tt>grafycyklrozc.eps</tt>''']'''}


Pokażemy, że zbiór <math>C^*</math> jest rozcięciem, czyli minimalnym zbiorem rozspajającym.
Pokażemy, że zbiór <math>C^*</math> jest rozcięciem, czyli minimalnym zbiorem rozspajającym.
Linia 247: Linia 237:
}}
}}


==Kolorowanie grafów.==
==Kolorowanie grafów==


W tej części wykładu zajmiemy się problemami związanymi z kolorowaniem grafów.
W tej części wykładu zajmiemy się problemami związanymi z kolorowaniem grafów.
Intuicyjnie kolorowanie to przypisanie wierzchołkom grafu kolorów w taki sposób, by  
Intuicyjnie kolorowanie to przypisanie wierzchołkom grafu kolorów w taki sposób, by  
każde dwa sąsiednie wierzchołki miały różne kolory
każde dwa sąsiednie wierzchołki miały różne kolory.


'''Kolorowanie''' grafu <math>\mathbf{G}=\left( V,E \right)</math>  
'''Kolorowanie''' grafu <math>\mathbf{G}=\left( V,E \right)</math>  
Linia 263: Linia 253:
Na odwrót, rozbicie <math>V = V_0\cup V_1\cup\ldots\cup V_{k-1}</math>  
Na odwrót, rozbicie <math>V = V_0\cup V_1\cup\ldots\cup V_{k-1}</math>  
pozwala na pokolorowanie grafu <math>\mathbf{G}</math> na <math>k</math> kolorów.
pozwala na pokolorowanie grafu <math>\mathbf{G}</math> na <math>k</math> kolorów.
{{kotwica|Kolorowanie grafu||}}
[[File:Grafy kolorowanie.svg|350x250px|thumb|right|Kolorowanie grafu nieoptymalne (a), optymalne (b) oraz niepoprawne (c)]]


'''Graf <math>k</math>-kolorowalny''' (<math>k</math>-barwny)  
'''Graf <math>k</math>-kolorowalny''' (<math>k</math>-barwny)  
Linia 273: Linia 265:
dokładnie <math>\chi\!\left( \mathbf{G} \right)</math> kolorów.  
dokładnie <math>\chi\!\left( \mathbf{G} \right)</math> kolorów.  


{grafy_kolorowanie}
{{twierdzenie|14.9|tw_14.9|
{Kolorowanie grafu nieoptymalne (a), optymalne (b) oraz niepoprawne (c) '''[Rysunek z pliku:''' <tt>grafykolorowanie.eps</tt>''']'''}
 
{{twierdzenie|9||
 
Graf, którego wszystkie wierzchołki mają stopień nie większy niż <math>k</math>
Graf, którego wszystkie wierzchołki mają stopień nie większy niż <math>k</math>
jest <math>(k+1)</math>-kolorowalny.
jest <math>(k+1)</math>-kolorowalny.
Linia 283: Linia 271:


{{dowod|||
{{dowod|||
 
Dowód poprowadzimy indukcyjnie ze względu na liczbę wierzchołków w grafie  
Dowód poprowadzimy indykcyjnie ze względu na liczbę wierzchołków w grafie  
<math>\mathbf{G}=\left( V,E \right)</math>.  
<math>\mathbf{G}=\left( V,E \right)</math>.  
Jeśli graf ma jeden wierzchołek, to oczywiście wystarcza jeden kolor.
Jeśli graf ma jeden wierzchołek, to oczywiście wystarcza jeden kolor.
Linia 298: Linia 285:


Ograniczenia górnego, na liczbę chromatyczną grafu,  
Ograniczenia górnego, na liczbę chromatyczną grafu,  
podanego w Twierdzeniu [[##th rho plus 1|Uzupelnic th rho plus 1|]] nie można w ogólności wzmocnić.
podanego w [[#tw_14.9|Twierdzeniu 14.9]] nie można w ogólności wzmocnić.
Istotnie, każde kolorowanie kliki <math>\mathcal{K}_{k+1}</math> wymaga dokładnie <math>k+1</math> kolorów,  
Istotnie, każde kolorowanie kliki <math>\mathcal{K}_{k+1}</math> wymaga dokładnie <math>k+1</math> kolorów,  
mimo iż stopień każdego wierzchołka to <math>k</math>.
mimo iż stopień każdego wierzchołka to <math>k</math>.
Następne twierdzenie wzmacnia jednak znacznie twierdzenia [[##th rho plus 1|Uzupelnic th rho plus 1|]],  
Następne twierdzenie wzmacnia jednak znacznie [[#tw_14.9|Twierdzenia 14.9]],  
ale podajemy je bez dowodu.
ale podajemy je bez dowodu.


{{twierdzenie|10 [Brooks 1941]||
{{twierdzenie|14.10 [Brooks 1941]|tw 14.10|
Niech <math>\mathbf{G}</math> będzie spójnym grafem prostym, który nie jest kliką.  
Niech <math>\mathbf{G}</math> będzie spójnym grafem prostym, który nie jest kliką.  
Jeśli wszystkie wierzchołki grafu <math>\mathbf{G}</math> mają stopień nie większy niż <math>k</math>  
Jeśli wszystkie wierzchołki grafu <math>\mathbf{G}</math> mają stopień nie większy niż <math>k</math>  
Linia 313: Linia 300:
powiedzieć więcej o ich liczbie chromatycznej.
powiedzieć więcej o ich liczbie chromatycznej.


{{obserwacje|11||
{{obserwacja|14.11|obs 14.11|
 
Graf jest dwudzielny wtedy i tylko wtedy, gdy jest <math>2</math>-kolorowalny.  
Graf jest dwudzielny wtedy i tylko wtedy, gdy jest <math>2</math>-kolorowalny.  
}}
}}


{{dowod|||
{{dowod|||
Zauważmy najpierw, że w grafie dwudzielnym <math>\mathbf{G}=\left( V_1\cup V_2,E \right)</math>,   
Zauważmy najpierw, że w grafie dwudzielnym <math>\mathbf{G}=\left( V_1\cup V_2,E \right)</math>,   
podgrafy indukowane <math>\mathbf{G}|_{V_1}</math> oraz <math>\mathbf{G}|_{V_2}</math> są antyklikami.
podgrafy indukowane <math>\mathbf{G}|_{V_1}</math> oraz <math>\mathbf{G}|_{V_2}</math> są antyklikami.
Linia 328: Linia 313:
}}
}}


{{twierdzenie|12||
{{twierdzenie|14.12|tw 14.12|
 
Każdy graf planarny jest <math>5</math>-kolorowalny.
Każdy graf planarny jest <math>5</math>-kolorowalny.
}}
}}
{{kotwica|Grafy 5barw planar||}}
[[File:Grafy 5barw planar.svg|250x250px|thumb|left|Grafy 5barw planar]]
{{kotwica|Grafy 5barw planar2||}}
[[File:Grafy 5barw planar2.svg|250x250px|thumb|right|Grafy 5barw planar2]]


{{dowod|||
{{dowod|||
Linia 339: Linia 329:
Dla <math>\left\vert V \right\vert=1</math> teza jest oczywista.  
Dla <math>\left\vert V \right\vert=1</math> teza jest oczywista.  
Niech więc <math>\left\vert V \right\vert\geq2</math>.  
Niech więc <math>\left\vert V \right\vert\geq2</math>.  
Z wniosku [[##cn deg v<<nowiki>=</nowiki>5 dla plan|Uzupelnic cn deg v<<nowiki>=</nowiki>5 dla plan|]] wiemy,  
Z [[#wn_14.6|Wniosku 14.6]] wiemy,  
że <math>\mathbf{G}</math> ma jakiś wierzchołek <math>v</math> o stopniu niewiększym niż <math>5</math>.  
że <math>\mathbf{G}</math> ma jakiś wierzchołek <math>v</math> o stopniu niewiększym niż <math>5</math>.  
Na mocy założenia indukcyjnego wiemy,  
Na mocy założenia indukcyjnego wiemy,  
Linia 353: Linia 343:
odpowiednio o kolorach: <math>1,2,3,4,5</math>.  
odpowiednio o kolorach: <math>1,2,3,4,5</math>.  
Bez straty ogólności ich ułożenie może wyglądać  
Bez straty ogólności ich ułożenie może wyglądać  
jak na rysunku [[##pict grafy 5barw planar|Uzupelnic pict grafy 5barw planar|]].
jak na rysunku [[#Grafy 5barw planar|Grafy 5barw planar]].
 
{grafy_5barw_planar}
{ '''[Rysunek z pliku:''' <tt>grafy5barwplanar.eps</tt>''']'''}


Niech <math>\mathbf{P}_{i,j}</math> będzie restrykcją grafu <math>\mathbf{G}</math>  
Niech <math>\mathbf{P}_{i,j}</math> będzie restrykcją grafu <math>\mathbf{G}</math>  
Linia 371: Linia 358:
W efekcie otrzymujemy cykl <math>v\to v_1\to R\to v_3\to v</math>,  
W efekcie otrzymujemy cykl <math>v\to v_1\to R\to v_3\to v</math>,  
który ogranicza obszar zawierający wierzchołek <math>v_2</math> i nie zawierający <math>v_4</math>.
który ogranicza obszar zawierający wierzchołek <math>v_2</math> i nie zawierający <math>v_4</math>.
{grafy_5barw_planar2}
{ '''[Rysunek z pliku:''' <tt>grafy5barwplanar2.eps</tt>''']'''}


Z planarności dostajemy więc, że wierzchołki <math>v_2</math> oraz <math>v_4</math>
Z planarności dostajemy więc, że wierzchołki <math>v_2</math> oraz <math>v_4</math>
Linia 387: Linia 371:
Dowód ten pomijamy.
Dowód ten pomijamy.


{{twierdzenie|13||
{{twierdzenie|14.13|tw 14.13|
 
Każdy graf planarny jest <math>4</math>-kolorowalny.
Każdy graf planarny jest <math>4</math>-kolorowalny.
}}
}}
Linia 402: Linia 385:
jeśli jej geometrycznie dualny graf <math>\mathbf{M}^*</math> jest <math>k</math> kolorowalny.
jeśli jej geometrycznie dualny graf <math>\mathbf{M}^*</math> jest <math>k</math> kolorowalny.


{{twierdzenie|14||
{{twierdzenie|14.14|tw 14.14|
 
Mapa <math>\mathbf{M}</math> ma <math>2</math>-kolorowalne ściany
Mapa <math>\mathbf{M}</math> ma <math>2</math>-kolorowalne ściany
wtedy i tylko wtedy, gdy graf <math>\mathbf{M}</math> jest eulerowski.  
wtedy i tylko wtedy, gdy graf <math>\mathbf{M}</math> jest eulerowski.  
Linia 409: Linia 391:


{{dowod|||
{{dowod|||
Załóżmy najpierw, że ściany są pomalowane dwoma kolorami.
Załóżmy najpierw, że ściany są pomalowane dwoma kolorami.
Wtedy każdy wierzchołek <math>v</math> musi być incydentny z parzystą liczbą ścian,  
Wtedy każdy wierzchołek <math>v</math> musi być incydentny z parzystą liczbą ścian,  
Linia 433: Linia 414:
}}
}}


Z Twierdzenia [[##th 4barw planar|Uzupelnic th 4barw planar|]],
Z [[#tw_14.13 |Twierdzenia 14.13]],
poprzez przejście od mapy <math>\mathbf{M}</math> do grafu geometrycznie dualnego <math>\mathbf{M}^*</math>
poprzez przejście od mapy <math>\mathbf{M}</math> do grafu geometrycznie dualnego <math>\mathbf{M}^*</math>
dostajemy natychmiast następujący wniosek.
dostajemy natychmiast następujący wniosek.


{{wniosek|15||
{{wniosek|14.15|wn 14.15|
 
Każda mapa ma  <math>4</math>-kolorowalne ściany.
Każda mapa ma  <math>4</math>-kolorowalne ściany.
}}
}}
Linia 451: Linia 431:
<math>n_{\rho\left( i \right)}^{\rho}</math> w zbiorze wierzchołków o indeksie mniejszym niż <math>\rho\left( i \right)</math>.  
<math>n_{\rho\left( i \right)}^{\rho}</math> w zbiorze wierzchołków o indeksie mniejszym niż <math>\rho\left( i \right)</math>.  
Liczba stopniowa jest równa
Liczba stopniowa jest równa
<center><math>\chi_s\!\left( \mathbf{G} \right)= \min_{\rho}\max_{i=1,\ldots, n}{n_i^{\rho}}.
 
</math></center>
 
<center><math>\chi_s\!\left( \mathbf{G} \right)= \min_{\rho}\max_{i=1,\ldots, n}{n_i^{\rho}}</math></center>
 
[[File:Grafy liczba stopniowa 1.svg|250x200px|thumb|left|Grafy liczba stopniowa 1]]
 
[[File:Grafy liczba stopniowa 2.svg|250x150px|thumb|right|Graf <math>\mathbf{G}_1</math> z wierzchołkami w porządku wyznaczonym przez <math>\rho</math>]]
 
[[File:Grafy liczba stopniowa 3.svg|250x150px|thumb|right|Kolorowanie grafu <math>\mathbf{G}_1</math>]]
 
[[File:Grafy liczba stopniowa animacja.mp4|250x250px|thumb|right|Animacja]]


{{przyklad|||
{{przyklad|||
Rozważmy graf <math>\mathbf{G}_1=\left( \left\lbrace v_1,v_2,v_3,v_4,v_5 \right\rbrace,E \right)</math>  
Rozważmy graf <math>\mathbf{G}_1=\left( \left\lbrace v_1,v_2,v_3,v_4,v_5 \right\rbrace,E \right)</math>  
przedstawiony na rysunku [[##grafy liczba stopniowa 1|Uzupelnic grafy liczba stopniowa 1|]].
przedstawiony na rysunku [[#Grafy liczba stopniowa 1|Grafy liczba stopniowa 1]].


{grafy_liczba_stopniowa_1}
Dla permutacji <math>\rho</math> zadanej przez
{Graf <math>\mathbf{G}_1</math>. '''[Rysunek z pliku:''' <tt>grafyliczbastopniowa1.eps</tt>''']'''}


Dla permutacji <math>\rho</math> zadanej przez


<center><math>\begin{array} {|c||c|c|c|c|c|}
<center>
<math>\begin{array} {|c||c|c|c|c|c|}
\hline
\hline
n&1&2&3&4&5\\
n&1&2&3&4&5\\
Linia 471: Linia 458:
\hline
\hline
\end{array}  
\end{array}  
</math></center>
</math>
</center>
 


mamy <math>\max_{i=1,\ldots, n}{n_i^{\rho}}=2</math>  
mamy <math>\max_{i=1,\ldots, n}{n_i^{\rho}}=2</math>  
i wartość ta jest realizowana przez wierzchołki <math>v_3</math> i <math>v_1</math>.  
i wartość ta jest realizowana przez wierzchołki <math>v_3</math> i <math>v_1</math>.  
Wierzchołki ułożone w porządku <math>v_{\rho\left( 1 \right)},\ldots,v_{\rho\left( 5 \right)}</math>  
Wierzchołki ułożone w porządku <math>v_{\rho\left( 1 \right)},\ldots,v_{\rho\left( 5 \right)}</math>  
przedstawione są  na rysunku [[##grafy liczba stopniowa 2|Uzupelnic grafy liczba stopniowa 2|]].
przedstawione są  na rysunku [[#Graf z wierzcholkami|Graf G_1 z wierzchołkami...]].


Przeglądając z kolei wszystkie możliwe permutacje możemy stwierdzić,  
Przeglądając z kolei wszystkie możliwe permutacje możemy stwierdzić,  
że nasza permutacja <math>\rho</math> realizuje minimum   
że nasza permutacja <math>\rho</math> realizuje minimum   
<math>\displaystyle{\min_{\rho}\max_{i=1,\ldots, n}{n_i^{\rho}}}</math>,  
<math>{\min_{\rho}\max_{i=1,\ldots, n}{n_i^{\rho}}}</math>,  
a zatem <math>\chi_s\!\left( \mathbf{G} \right)=2</math>.
a zatem <math>\chi_s\!\left( \mathbf{G} \right)=2</math>.
{grafy_liczba_stopniowa_2}
{Graf <math>\mathbf{G}_1</math> z wierzhołkami w porządku wyznaczonym przez <math>\rho</math>. '''[Rysunek z pliku:''' <tt>grafyliczbastopniowa2.eps</tt>''']'''}


Graf <math>\mathbf{G}_1</math> można teraz pokolorować następującą procedurą.  
Graf <math>\mathbf{G}_1</math> można teraz pokolorować następującą procedurą.  
Linia 490: Linia 476:
<math>v_{\rho\left( 1 \right)},v_{\rho\left( 2 \right)},\ldots,v_{\rho\left( 5 \right)}</math>  
<math>v_{\rho\left( 1 \right)},v_{\rho\left( 2 \right)},\ldots,v_{\rho\left( 5 \right)}</math>  
nadajemy im kolor niewykorzystany dla żadnego dotąd rozpatrywanego sąsiada.  
nadajemy im kolor niewykorzystany dla żadnego dotąd rozpatrywanego sąsiada.  
Otrzymujemy wtedy kolorowanie przedstawione na rysunku [[##grafy liczba stopniowa 3|Uzupelnic grafy liczba stopniowa 3|]].
Otrzymujemy wtedy kolorowanie przedstawione na rysunku [[#Kolorowanie grafu G1|Kolorowanie grafu]].
 
{grafy_liczba_stopniowa_3}
{Kolorowanie grafu <math>\mathbf{G}_1</math>. '''[Rysunek z pliku:''' <tt>grafyliczbastopniowa3.eps</tt>''']'''}


}}
}}
Linia 499: Linia 482:
Waga wprowadzonej liczby stopniowej wynika z poniższej obserwacji.  
Waga wprowadzonej liczby stopniowej wynika z poniższej obserwacji.  


{{obserwacje|16||
{{obserwacja|14.16|obs 14.16|
Jeżeli <math>\mathbf{G}</math> jest grafem prostym, to
 
 
<center>
<math>\chi\!\left( \mathbf{G} \right)\leq\chi_s\!\left( \mathbf{G} \right)+1</math>
</center>


Jeżeli <math>\mathbf{G}</math> jest grafem prostym, to
<center><math>\chi\!\left( \mathbf{G} \right)\leq\chi_s\!\left( \mathbf{G} \right)+1.
</math></center>


}}
}}


{{dowod|||
{{dowod|||
Niech <math>v_1,\ldots,v_n</math> będzie ciągiem wierzchołków grafu <math>\mathbf{G}</math>  
Niech <math>v_1,\ldots,v_n</math> będzie ciągiem wierzchołków grafu <math>\mathbf{G}</math>  
w porządku realizującym wartość <math>\chi_s\!\left( \mathbf{G} \right)</math>.  
w porządku realizującym wartość <math>\chi_s\!\left( \mathbf{G} \right)</math>.  
Linia 520: Linia 505:
Przydzielamy go więc wierzchołkowi <math>v_i</math>.  
Przydzielamy go więc wierzchołkowi <math>v_i</math>.  
Czynność ta jest powtarzana, aż do momentu pokolorowania wszystkich wierzchołków  
Czynność ta jest powtarzana, aż do momentu pokolorowania wszystkich wierzchołków  
w <math>{\sf V}\!\left(\mathbf{G}\right)</math>.
w <math>\mathsf{ V}\!\left(\mathbf{G}\right)</math>.
}}
}}

Aktualna wersja na dzień 21:31, 11 wrz 2023

Grafy planarne

Graf nieplanarny (a) oraz graf planarny (b) wraz z jego prezentacją w postaci grafu płaskiego (c)
Grafy k33
Grafy k332

Graf płaski to para: G=(V,E), gdzie

  • V jest jakimś zbiorem punktów płaszczyzny 2,
  • E jest zbiorem nie przecinających się odcinków lub łuków w R2 o końcach w zbiorze V.

Graf planarny to graf, który jest prezentowalny jako graf płaski.

Obserwacja 14.1

Grafy 𝒦5 i 𝒦3,3 nie są planarne.

Dowód

Graf 𝒦3,3 ma sześcio-elementowy cykl Hamiltona H. Musi on być narysowany w dowolnej płaskiej prezentacji. Przykładowe umiejscowienie tego cyklu prezentuje rysunekGrafy k33.

Spośród krawędzi v1v4 i v2v5 jedna musi leżeć wewnątrz cyklu a druga musi leżeć na zewnątrz. W konsekwencji nie da się narysować krawędzi v3v0 nie przecinając krawędzi v1v4 lub v2v5.

Dowód dla 𝒦5 jest analogiczny, rozpoczynając od pięcio-elementowego cyklu Hamiltona.

Z Obserwacji 14.1 natychmiast wynika, że żaden graf zawierający 𝒦5 lub 𝒦3,3 nie jest planarny. Ale również graf powstały np. z 𝒦5 poprzez umieszczenie na jednej krawędzi dodatkowego wierzchołka nie jest planarny mimo, że nie zawiera podgrafu 𝒦5 ani 𝒦3,3. Dla scharakteryzowania grafów planarnych potrzebne nam będzie następujące pojęcie homeomorficzności grafów.

Graf 𝐆1 jest homeomorficzny z grafem 𝐆2, jeśli jeden otrzymamy z drugiego poprzez wykonanie skończenie wielu poniższych operacji:

  • Dodawanie wierzchołków stopnia dwa na krawędzi.
    Jeśli uwE(𝐆1) oraz x∉V(𝐆1), to operacja ta zastępuje graf (V(𝐆1),E(𝐆1)) grafem (V(𝐆1){x},E(𝐆1){ux,xw}{uw}).
  • Usuwanie wierzchołków stopnia dwa.
    Jeśli xV(𝐆1) ma jedynie dwóch sąsiadów u,w, to operacja ta zastępuje graf (V(𝐆1),E(𝐆1)) grafem (V(𝐆1){x},E(𝐆1){uw}{ux,xw}).

Grafy homeomorficzne

Przykład

Grafy 𝐆,𝐆 przedstawione na rysunku Grafy homeomorficzne są ze sobą homeomorficzne, zaś 𝐆 nie jest homeomorficzny ani z 𝐆 ani z 𝐆.

Następne twierdzenie podaje prostą charakteryzację grafów planarnych. Niestety dowód tego twierdzenia nie jest prosty i go pominiemy.

Twierdzenie 14.2 [Kuratowski 1930]

Graf jest planarny wtedy i tylko wtedy, gdy żaden jego podgraf nie jest homeomorficzny z 𝒦5 ani z 𝒦3,3.

Kolejne charakterystyka grafów planarnych odwołuje się do znanego nam już pojęcia sciągalności, lub grafu ilorazowego. Przypomnijmy, że

  • iloraz grafu 𝐆 przez relację równoważności θV×V na zbiorze jego wierzchołków to graf postaci
𝐆/θ=(V/θ,{{v/θ,w/θ}:{v,w}E})
  • ściągnięcie zbioru wierzchołków XV w grafie 𝐆 to szczególny przypadek ilorazu 𝐆/θ, w którym klasy równoważności wszystkich wierzchołków spoza X są jednoelementowe, a X stanowi dodatkową klasę, tzn. V/θ={{v}:vVX}{X}. W ten sposób zbiór X został ściągnięty do punktu, którego sąsiadami są sąsiedzi jakiegokolwiek wierzchołka z X. Z drugiej strony, jeśli θV×V jest relacją równoważności o klasach X1,,Xk, to ściągając w grafie 𝐆 kolejno zbiory X1,,Xk otrzymamy graf ilorazowy 𝐆/θ.

Dowód charakteryzacji grafów planarnych w terminach ściągalności również pomijamy. Grafy sciagalne k33

<flashwrap>file=Grafy sciagalne k33.swf|size=small</flashwrap>

<div.thumbcaption>Graf posiadający podgraf ściągalny do 𝒦3,3

Graf posiadający cztery ściany: f0,f1,f2,f3

Twierdzenie 14.3

Graf jest planarny wtedy i tylko wtedy, gdy nie zawiera podgrafu ściągalnego do 𝒦5 lub 𝒦3,3.

Przykład

W grafie przedstawionym na rysunku Grafy ściagalne k33 ściągnięcie zbiorów wierzchołków otoczonych przerywaną linią prowadzi do grafu zawierającego 𝒦3,3. A więc, na mocy Twierdzenia 14.3, graf ten nie jest planarny.

W grafach płaskich poza wierzchołkami oraz krawędziami można rozważać również ściany, czyli obszary płaszczyzny otoczone krawędziami.

Ściana w grafie płaskim 𝐆 to spójny obszar płaszczyzny po usunięciu linii reprezentujących krawędzie, tzn. R2E(𝐆). Innym słowy ściana to zbiór punktów płaszczyzny, które da się połączyć krzywą nieprzecinającą żadnej krawędzi.

Ściana f0 w grafie z rysunku Graf o czterech ścianach jest ścianą nieograniczoną, która nazywana jest też ścianą nieskończoną. Nie tylko ten graf, ale wszystkie grafy płaskie mają dokładnie jedną ścianę nieskończoną. Zauważmy, że las jest grafem planarnym, ale w żadnej reprezentacji płaskiej nie posiada ścian ograniczonych. Tak więc posiada w ogóle tylko jedną ścianę. Tym samym, następne twierdzenie jest uogólnieniem związku |E|=|V|k między liczbą wierzchołków, krawędzi i drzew (tzn. spójnych składowych) w lesie.

Twierdzenie 14.4 [Euler 1750]

W grafie płaskim 𝐆=(V,E) o f ścianach i k1 składowych spójnych zachodzi


|V||E|+f=k+1


Dowód

Dowód poprowadzimy indukcją ze względu na liczbę krawędzi. Jeżeli graf 𝐆 jest pusty to |E|=0,k=|V|, f=1, które to wartości spełniają podaną równość. Załóżmy, że |E|>1. Wybierzmy dowolną krawędź uvE. Jeżeli uv nie leży na żadnym cyklu grafu 𝐆, to usunięcie uv zwiększy o 1 liczbę składowych ale nie zmieni liczby ścian. Tak więc, na mocy założenia indukcyjnego, |V|(|E|1)+f=(k+1)+1, co daje żądaną równość. Załóżmy więc, że uv leży na jakimś cyklu C. Tym samym uv jest granicą pomiędzy dwoma różnymi ścianami, jako że dowolna krzywa przechodząca z jednej strony na drugą stronę granicy wyznaczonej przez krawędź uv musi przecinać jakąś krawędź z cyklu C. Tak więc usunięcie krawędzi uv zmniejszy liczbę ścian o jeden. Ale teraz usunięcie krawędzi uv nie zmienia liczby składowych. Założenie indukcyjne daje nam więc |V|(|E|1)+(f1)=k+1, czyli żądaną równość dla grafu 𝐆.

Uwaga

Ważną konsekwencją Twierdzenia 14.4 jest to, że liczba ścian zależy jedynie od liczby wierzchołków, krawędzi, oraz spójnych składowych. Tak więc w każdej reprezentacji płaskiej musi być taka sama.

Uzasadnienie dwu kolejnych wniosków z Twierdzenia 14.4 pozostawiamy jako ćwiczenie.

Wniosek 14.5

Jeśli 𝐆=(V,E) jest spójnym grafem planarnym o co najmniej 3 wierzchołkach, to


|E|3|V|6


Wniosek 14.6

Spójny graf planarny o |V|1 posiada wierzchołek o stopniu nie większym niż 5.

Graf (w kolorze czerwono-niebieskim) oraz graf do niego dualny geometrycznie (w kolorze żółto-szarym)

Graf dualny geometrycznie do grafu płaskiego 𝐆=(V,E) to graf płaski 𝐆*=(V*,E*) skonstruowany w następujący sposób:

  • Z każdej ściany grafu 𝐆 wybieramy po jednym punkcie. Tak wybrane punkty tworzą zbiór wierzchołków V*.
  • Jeśli krawędź po jednej stronie sąsiadowała ze ścianą f1, a po drugiej z f2 to w grafie 𝐆* odpowiadające ścianom f1,f2 wierzchołki v1*,v2* łączymy krawędzią v1*v2*. Tak wybrane krawędzie tworzą zbiór E*.

Twierdzenie 14.7

Jeśli 𝐆 jest spójnym grafem płaskim, to 𝐆** jest izomorficzny z 𝐆.

Dowód

Każda ściana grafu 𝐆* reprezentowana jest jednym wierzchołkiem 𝐆**. Z drugiej strony, w każdej ścianie grafu 𝐆* znajduje się dokładnie jeden wierzchołek grafu 𝐆. Ponadto, jeśli wierzchołki v1,v2 grafu 𝐆 są sąsiednie, to ściany f1*,f2* grafu 𝐆* zawierające odpowiednio v1 i v2 graniczą ze sobą. To kolei oznacza, że wierzchołki v1**,v2** grafu 𝐆** odpowiadające ścianom f1* oraz f2* są sąsiednie. Oczywiście, przy przejściu z 𝐆 do 𝐆* i potem do 𝐆** wierzchołki v1 i v2 przechodzą w v1**,v2**. Analogicznie jeżeli v1** jest połączony krawędzią z v2** w 𝐆**, to i również v1 z v2 w 𝐆.

Twierdzenie 14.8

Niech 𝐆* będzie grafem geometrycznie dualnym do grafu płaskiego 𝐆. Wtedy podzbiór C krawędzi grafu 𝐆 jest cyklem w grafie 𝐆 wtedy i tylko wtedy, gdy zbiór krawędzi dualnych do krawędzi zbioru C jest rozcięciem grafu 𝐆*.

Grafy cykl rozC

Dowód

Niech C będzie cyklem w grafie 𝐆. W grafie płaskim cykl dzieli płaszczyznę 2 na dwie spójne części A1 oraz A0, przy czym załóżmy, że A1 jest ograniczona przez C, a A0 jest nieograniczona. Niech f1 będzie dowolną ścianą we wnętrzu A1, zaś f0 ścianą nieskończoną, czyli zawartą w A0 a v1*,v0* niech będą odpowiadającymi tym ścianom punktami grafu dualnego 𝐆*. Tak więc, v1*A1, a v0*A0. A zatem dowolnie wybrana droga P z v1* do v0* musi przeciąć cykl C co najmniej raz. Przecinające się krawędzie, jedna z drogi P i druga z cyklu C, są wzajemnie dualne (przy przejściu z 𝐆 do 𝐆* i z powrotem do 𝐆**𝐆). Tak więc, zbiór C* krawędzi dualnych do krawędzi z cyklu C tworzy zbiór rozspajający wierzchołki v1*,v0*.

Pokażemy, że zbiór C* jest rozcięciem, czyli minimalnym zbiorem rozspajającym. Zmniejszenie C* powstaje oczywiście poprzez zmniejszenie zbioru C. Usunięcie jednakże krawędzi e z C, powoduje połączenie obszaru A1 z obszarem A0. Pozwala to tworzyć krzywe łączące dowolne dwa punkty A0A1 i nie przecinające krawędzi ze zbioru C{e}. W konsekwencji pozwala to na tworzenie ścieżek między dowolnymi wierzchołkami grafu 𝐆* omijając krawędzie z C{e}.

Dowód implikacji w drugą stronę jest analogiczny.

Kolorowanie grafów

W tej części wykładu zajmiemy się problemami związanymi z kolorowaniem grafów. Intuicyjnie kolorowanie to przypisanie wierzchołkom grafu kolorów w taki sposób, by każde dwa sąsiednie wierzchołki miały różne kolory.

Kolorowanie grafu 𝐆=(V,E) to funkcja c:V taka, że c(v)c(w) ilekroć vw jest krawędzią grafu 𝐆.

Kolorowanie grafu 𝐆 na k kolorów wyznacza rozbicie zbioru V na sumę rozłączną V=V0V1Vk1 jednobarwnych zbiorów Vi, przy czym każdy graf indukowany postaci 𝐆|Vi jest antykliką. Na odwrót, rozbicie V=V0V1Vk1 pozwala na pokolorowanie grafu 𝐆 na k kolorów.

Kolorowanie grafu nieoptymalne (a), optymalne (b) oraz niepoprawne (c)

Graf k-kolorowalny (k-barwny) to graf dający się pokolorować k barwami.

Liczba chromatyczna grafu, χ(𝐆), to najmniejsza liczba barw, którymi można pokolorować graf 𝐆.

Optymalne kolorowanie grafu 𝐆 to kolorowanie używające dokładnie χ(𝐆) kolorów.

Twierdzenie 14.9

Graf, którego wszystkie wierzchołki mają stopień nie większy niż k jest (k+1)-kolorowalny.

Dowód

Dowód poprowadzimy indukcyjnie ze względu na liczbę wierzchołków w grafie 𝐆=(V,E). Jeśli graf ma jeden wierzchołek, to oczywiście wystarcza jeden kolor. Załóżmy więc, że |V|2. Wybierzmy dowolny wierzchołek vV i rozważmy graf 𝐆|V{v}. Na mocy założenia indukcyjnego da się go pokolorować k+1 barwami. Zauważmy, że v ma co najwyżej k sąsiadów. Wśród k+1 kolorów użytych w kolorowaniu grafu 𝐆|V{x} jest więc kolor nie przypisany żadnemu sąsiadowi wierzchołka v. Wybieramy więc ten kolor jako barwę dla v. Udało się pokolorować graf 𝐆 zbiorem k+1 kolorów, co kończy dowód.

Ograniczenia górnego, na liczbę chromatyczną grafu, podanego w Twierdzeniu 14.9 nie można w ogólności wzmocnić. Istotnie, każde kolorowanie kliki 𝒦k+1 wymaga dokładnie k+1 kolorów, mimo iż stopień każdego wierzchołka to k. Następne twierdzenie wzmacnia jednak znacznie Twierdzenia 14.9, ale podajemy je bez dowodu.

Twierdzenie 14.10 [Brooks 1941]

Niech 𝐆 będzie spójnym grafem prostym, który nie jest kliką. Jeśli wszystkie wierzchołki grafu 𝐆 mają stopień nie większy niż k i k3, to 𝐆 jest ρ-kolorowalny.

Oczywiście nie powinno dziwić nas, że dla grafów specjalnego typu można na ogół powiedzieć więcej o ich liczbie chromatycznej.

Obserwacja 14.11

Graf jest dwudzielny wtedy i tylko wtedy, gdy jest 2-kolorowalny.

Dowód

Zauważmy najpierw, że w grafie dwudzielnym 𝐆=(V1V2,E), podgrafy indukowane 𝐆|V1 oraz 𝐆|V2 są antyklikami. Wystarczy więc pokolorować wierzchołki z V1 jednym kolorem, a wierzchołki z V2 drugim. Z drugiej strony wierzchołki grafu 2-kolorowalnego daje się oczywiście rozbić na dw zbiory indukujące antykliki, jak tego wymaga dwudzielność.

Twierdzenie 14.12

Każdy graf planarny jest 5-kolorowalny.

Grafy 5barw planar

Grafy 5barw planar2

Dowód

Dowód przeprowadzimy indukcyjnie ze względu na liczbę wierzchołków w grafie 𝐆=(V,E). Dla |V|=1 teza jest oczywista. Niech więc |V|2. Z Wniosku 14.6 wiemy, że 𝐆 ma jakiś wierzchołek v o stopniu niewiększym niż 5. Na mocy założenia indukcyjnego wiemy, że graf 𝐆|V{v} jest 5-kolorowalny. Jeżeli v ma mniej niż 5-ciu sąsiadów, to można go pokolorować kolorem niewystępującym u żadnego sąsiada, co kończyłoby dowód. Podobnie, gdyby jakiś kolor występował u co najmniej dwóch sąsiadów wierzchołka v, to także można byłoby zakończyć dowód, gdyż Wśród 5-ciu kolorów dostępnych do kolorowania grafu 𝐆 jest kolor nie przypisany żadnemu sąsiadowi wierzchołka v i może być wobec tego użyty dla v. Możemy więc założyć, że v ma 5 sąsiadów v1,v2,v3,v4,v5 odpowiednio o kolorach: 1,2,3,4,5. Bez straty ogólności ich ułożenie może wyglądać jak na rysunku Grafy 5barw planar.

Niech 𝐏i,j będzie restrykcją grafu 𝐆 do zbioru wszystkich jego wierzchołków o barwach i oraz j. Jeśli v1 i v3 nie są w tej samej spójnej składowej grafu 𝐏1,3, to można zamienić kolory 1 i 3 w spójnej składowej wierzchołka v1. Tak więc, z racji, że teraz v1 otrzymał kolor 3, koloru 1 można użyć do pokolorowania wierzchołka v. Pozostał przypadek, gdy v1 oraz v3 są w tej samej spójnej składowej grafu 𝐏1,3. Oznaczy to, że istnieje ścieżka R zawarta w 𝐏1,3 i łącząca v1 z v3. W efekcie otrzymujemy cykl vv1Rv3v, który ogranicza obszar zawierający wierzchołek v2 i nie zawierający v4.

Z planarności dostajemy więc, że wierzchołki v2 oraz v4 nie mogą być w tej samej spójnej składowej grafu 𝐏2,4. W takim razie podobnie, jak powyżej możemy podmienić kolory w spójnej składowej wierzchołka v2 tak, że v2 otrzyma kolor 4. Ale teraz możemy pokolorować wierzchołek v na kolor 2, co kończy dowód.

Okazuje się że prawdziwe jest mocniejsze i słynne twierdzenie o czterech barwach. Jego długi i skomplikowany dowód został otrzymany przy użyciu specjalnie napisanego programu do rozważenia bardzo wielu przypadków. Dowód ten pomijamy.

Twierdzenie 14.13

Każdy graf planarny jest 4-kolorowalny.

Mapa to graf płaski nie zawierający mostów.

W mapach rozważa się kolorowanie ścian.

Mapa ma k-kolorowalne ściany jeśli jej ściany można pokolorować k kolorami w ten sposób, by żadne dwie graniczące ze sobą ściany nie miały tego samego koloru. Innymi słowy, mapa 𝐌 ma k-kolorowalne ściany, jeśli jej geometrycznie dualny graf 𝐌* jest k kolorowalny.

Twierdzenie 14.14

Mapa 𝐌 ma 2-kolorowalne ściany wtedy i tylko wtedy, gdy graf 𝐌 jest eulerowski.

Dowód

Załóżmy najpierw, że ściany są pomalowane dwoma kolorami. Wtedy każdy wierzchołek v musi być incydentny z parzystą liczbą ścian, a zatem musi mieć parzysty stopień. Na mocy Twierdzenia Eulera otrzymujemy więc, że 𝐌 jest eulerowski.

Niech teraz 𝐌 będzie grafem eulerowskim. Wtedy, na mocy wniosku z Twierdzenia Eulera, jego krawędzie można podzielić na rozłączne krawędziowo cykle C1,,Ck. Kolorowanie ścian mapy 𝐌 zdefiniujmy poprzez przypisanie ścianie pierwszego koloru, jeśli jest otoczona nieparzystą liczbą cykli spośród C1,,Ck, albo poprzez przypisanie drugiego koloru, jeśli jest otoczona parzystą liczbą cykli. Kolorowanie to jest poprawne, gdyż jeśli dwie ściany graniczą ze sobą poprzez krawędź jakiegoś cyklu Ci, to jedna z tych ścian leży wewnątrz cyklu Ci, a druga na zewnątrz Ci. W stosunku do pozostałych cykli spośród C1,,Ck, albo obie ściany są wewnątrz, albo obie na zewnątrz. Tak więc różni je parzystość liczby cykli, we wnętrzu których leżą. Tym samym, w zdefiniowanym kolorowaniu, otrzymają różne kolory.

Z Twierdzenia 14.13, poprzez przejście od mapy 𝐌 do grafu geometrycznie dualnego 𝐌* dostajemy natychmiast następujący wniosek.

Wniosek 14.15

Każda mapa ma 4-kolorowalne ściany.

Z powodu dużego znaczenia kolorowania tak w samej teorii grafów, jak i w algorytmice, problemy kolorowania doczekały się bardzo rozbudowanych pojęć i narzędzi. Poznamy teraz jeszcze jedno z nich.

Liczba stopniowa grafu. Niech 𝐆=({v1,,vn},E) będzie grafem prostym. Przy każdej permutacji ρ:{1,,n}{1,,n} każdemu wierzchołkowi vρ(i) przypisana jest liczba sąsiadów nρ(i)ρ w zbiorze wierzchołków o indeksie mniejszym niż ρ(i). Liczba stopniowa jest równa


χs(𝐆)=minρmaxi=1,,nniρ
Grafy liczba stopniowa 1
Graf 𝐆1 z wierzchołkami w porządku wyznaczonym przez ρ
Kolorowanie grafu 𝐆1
Animacja

Przykład

Rozważmy graf 𝐆1=({v1,v2,v3,v4,v5},E) przedstawiony na rysunku Grafy liczba stopniowa 1.

Dla permutacji ρ zadanej przez


n12345ρ(n)52314


mamy maxi=1,,nniρ=2 i wartość ta jest realizowana przez wierzchołki v3 i v1. Wierzchołki ułożone w porządku vρ(1),,vρ(5) przedstawione są na rysunku Graf G_1 z wierzchołkami....

Przeglądając z kolei wszystkie możliwe permutacje możemy stwierdzić, że nasza permutacja ρ realizuje minimum minρmaxi=1,,nniρ, a zatem χs(𝐆)=2.

Graf 𝐆1 można teraz pokolorować następującą procedurą. Wybierając kolejno wierzchołki vρ(1),vρ(2),,vρ(5) nadajemy im kolor niewykorzystany dla żadnego dotąd rozpatrywanego sąsiada. Otrzymujemy wtedy kolorowanie przedstawione na rysunku Kolorowanie grafu.

Waga wprowadzonej liczby stopniowej wynika z poniższej obserwacji.

Obserwacja 14.16

Jeżeli 𝐆 jest grafem prostym, to


χ(𝐆)χs(𝐆)+1


Dowód

Niech v1,,vn będzie ciągiem wierzchołków grafu 𝐆 w porządku realizującym wartość χs(𝐆). Wskażemy kolorowanie za pomocą χs(𝐆)+1 barw. Wierzchołki kolorowane są kolejno zgodnie z ich numeracją. Załóżmy, że pokolorowane zostały już wierzchołki v1,,vi1. Wierzchołek vi ma co najwyżej χs(𝐆) sąsiadów w zbiorze {v1,,vi1}, tak więc w zbiorze χs(𝐆)+1 kolorów jest jeszcze co najmniej jeden kolor nie wykorzystany dla tych wcześniejszych sąsiadów vi. Przydzielamy go więc wierzchołkowi vi. Czynność ta jest powtarzana, aż do momentu pokolorowania wszystkich wierzchołków w V(𝐆).