Rozdział 1.

Transkrypt

Rozdział 1.
TEORIA GRAFÓW I SIECI - ROZDZIAL I
Grafy i grafy skierowane. Izomor…zmy grafów
Rozwaz·my rysunki
1. Schemat mostów na rzece
Pregole w Królewcu
2. Drzewo prawdopodobie´nstwa
przy rzucie moneta¾
3. Schemat organizacyjny …rmy
4. Odleg÷o´sci drogowe miedzy
¾ miastami
Powyz·sze rysunki ilustruja¾ zwiazki
¾ miedzy
¾
pewnymi obiektami. Obiekty sa¾ w nich oznaczone (na ogó÷
) jako punkty, zaś fakt istnienia zwiazku
¾
jest zaznaczony istnieniem linii
÷
acz
¾ acej
¾ dane punkty. Dodatkowo, na rysunku 3, widać z·e zwiazki
¾ miedzy
¾
obiektami moga¾
mieć charakter jednostronny (skierowany), zaś na rysunku 4, zwiazki
¾ te sa¾opatrzone pewnymi
wartościami liczbowymi (wagami). Rozwaz·ane schematy sa¾ przyk÷
adami grafów.
Spróbujemy sformu÷
ować precyzyjna¾ de…nicje¾ grafu. Niewatpliwie
¾
graf powinien zawierać punkty, które bedziemy
¾
nazywać wierzcho÷kami. W sk÷
ad grafu powinny tez· wchodzić
po÷
aczenia
¾
wierzcho÷
ków, które nazwiemy krawedziami.
¾
De…nicja powinna być na tyle ogólna,
aby moz·na nia¾ objać
¾ jak najwieksz
¾ a¾ liczbe¾ sensownych przypadków. Nie powinniśmy wiec
¾
rozwaz·ać charakteru wierzcho÷
ków (ich budowy wewnetrznej),
¾
ale traktować jako elementy
abstrakcyjnego zbioru. Z kolei w kraw¾
edziach interesuje nas jedynie to jakie wierzcho÷
ki dana
kraw¾
edź ÷
aczy
¾ (i ewentualnie kierunek po÷
aczenia
¾
lub jego waga). W tej sytuacji najprostszym
rozwiazaniem
¾
wydaje sie¾ zde…niowanie kraw¾
edzi ÷
acz
¾ acej
¾ wierzcho÷
ki a; b jako:
zbioru fa; bg w przypadku "bez strza÷
ek",
pary (a; b) w przypadku "ze strza÷
kami".
1
TEORIA GRAFÓW I SIECI - ROZDZIAL I
2
Podane ujecie
¾ prowadzi do de…nicji
Grafu nieskierowanego jako pary G = (V; E), gdzie V 6= ; oraz E ffa; bg ; a; b 2 V g,
Grafu skierowanego jako pary G = (V; E), gdzie V 6= ; oraz E V V .
Takie de…nicje moz·na znaleźć w wielu ksia¾z·kach z teorii grafów. Zauwaz·my, z·e dla grafu
skierowanego podana de…nicja jest niemal identyczna z de…nica¾ relacji dwuargumentowej w
zbiorze V :
relacja = E = zbiór krawedzi,
¾
dziedzina relacji = V = zbiór wierzcho÷ków.
Podane de…nicje maja¾jednak wade.
¾ Nie obejmuja¾przypadku, w którym istnieja¾wierzcho÷
ki
po÷
aczone
¾
kilkoma róz·nymi kraw¾
edziami. Przyk÷
adowo, w gra…e mostów królewieckich jedna¾
z wysp ÷
acz
¾ a¾z brzegami po dwa mosty. Konieczność rozróz·nienia kraw¾
edzi ÷
acz
¾ acych
¾
te same
wierzcho÷
ki zmusza nas do zrezygnowania z wygodnego utoz·samienia kraw¾
edzi ze zbiorem (lub
para)
¾ jej końców i przyjecia,
¾
z·e kraw¾
edzie nalez·a¾ równiez· do abstrakcyjnego zbioru E. W tej
sytuacji musimy jednak określić zwiazek
¾
miedzy
¾
wierzcho÷
kami i kraw¾
edziami, czyli ustalić,
które wierzcho÷
ki sa¾ końcami danej kraw¾
edzi. Skoncentrujmy nasze rozwa·zania na grafach
nieskierowanych. Bedziemy
¾
potrzebować funkcji : E ! ffa; bg ; a; b 2 V g. Dla kraw¾
edzi k
wartość (k) bedzie
¾
zbiorem końców tej kraw¾
edzi. Moz·emy zatem podać formalna¾ de…nicje.
¾
Grafem lub grafem nieskierowanym nazywamy trójk¾
e G = (V; E; ), gdzie V = VG jest
zbiorem niepustym, E = EG dowolnym zbiorem, zaś funkcja¾ : E ! ffa; bg ; a; b 2 V g.
Elementy zbioru V nazywamy wierzcho÷
kami lub wez÷
¾ ami grafu, zaś elementy zbioru E
jego krawedziami.
¾
Jez·eli (k) = fa; bg, to wierzcho÷
ki a; b nazywamy końcami kraw¾
edzi k.
Mówimy wtedy, z·e kraw¾
edź k ÷
aczy
¾
te wierzcho÷
ki oraz z·e wierzcho÷
ki a; b sa¾incydentne z k.
Wierzcho÷
ki po÷
aczone
¾
kraw¾
edzia¾ nazywamy sasiednimi.
¾
Jez·eli wierzcho÷
ek nie jest końcem
z·adnej kraw¾
edzi, to mówimy, z·e jest izolowany. Jez·eli k i l sa¾ róz·nymi kraw¾
edziami ÷
acz
¾ a¾
cymi te same wierzcho÷
ki (tzn. (k) = (l)), to kraw¾
edzie te nazywamy wielokrotnymi.
Kraw¾
edź, która ma tylko jeden koniec ( (k) = fag) nazywamy petl
¾ a.
¾ Graf bez kraw¾
edzi
wielokrotnych i petli
¾ nazywamy grafem prostym.
Ćwiczenie 1. W poni·zszym gra…e wskaza´c krawedzie
¾
wielokrotne, petle
¾ i wierzcho÷ki izolowane.
Okre´sli´c jakie wierzcho÷ki sa¾ sasiednie
¾
z a, jakie sa¾ incydentne z k5 oraz znale´z´c krawedzie
¾
z
którymi incydentny jest wierzcho÷ek b.
Jeśli k jest kraw¾
edzia¾o końcach a i b, czyli taka,
¾ z·e (k) = fa; bg, to bedziemy
¾
pisać k = ab
lub k = fa; bg. Tak wiec
¾ symbolem ab (fa; bg) bedziemy
¾
oznaczać kaz·da¾ kraw¾
edź o końcach
a i b. W grafach bez kraw¾
edzi wielokrotnych, kraw¾
edź ab jest wyznaczona jednoznacznie.
Zwróćmy jeszcze uwage¾ na niejednoznaczność terminologii dotyczacej
¾ grafów. W niektórych
ksia¾z·kach termin graf oznacza graf bez krawedzi
¾ wielokrotnych lub graf prosty, natomiast to
co my nazywamy grafem, wystepuje
¾
jako jako multigraf.
TEORIA GRAFÓW I SIECI - ROZDZIAL I
3
Stopniem wierzcho÷
ka a w gra…e nazywamy liczbe¾ deg a równa¾ ilości kraw¾
edzi, których
końcem jest a powiekszon
¾
a¾o ilość petli,
¾ których końcem jest a (zliczamy ile kraw¾
edzi "wychodzi"
z a). Formalnie
deg a = jfk; a 2 (k)gj + jfk; fag = (k)gj :
Ćwiczenie 2. Obliczy´c stopnie wierzcho÷ków grafu z poprzedniego ´cwiczenia.
W de…nicji grafu nie ma z·adnych ograniczeń dotyczacych
¾
mocy zbiorów V i E (oprócz
V 6= ;). Niektóre wyniki da sie¾ udowodnić w tak ogólnym przypadku. Nas jednak bed
¾ a¾
interesować tylko grafy skończone.
Uwaga 1. Od tego momentu zak÷adamy, ·ze, wszystkie rozwa·
zane grafy sa¾ sko´nczone,
tzn. maja¾sko´nczona¾liczbe¾ wierzcho÷ków i krawedzi.
¾
Twierdzenie 1 (Lemat o uściskach d÷
oni). W dowolnym gra…e
X
deg a = 2 jEG j :
a2VG
Dowód. Obliczajac
¾ sum¾
e stopni wszystkich wierzcho÷
ków liczymy kraw¾
edzie wychodzace
¾ z
tych wierzcho÷
ków. Kraw¾
edź ÷
acz
¾ ac
¾ a¾ róz·ne wierzcho÷
ki liczymy dwukrotnie (przy obu końcach). P¾
etle¾ tez· liczymy dwa razy (przy jednym końcu). Wynika stad
¾ teza twierdzenia.
Wniosek 1. W dowolnym gra…e liczba wierzcho÷ków stopnia nieparzystego jest parzysta.
Ćwiczenie 3. Grupa studentów sk÷ada sie¾ z 25 osób. Czy jest mo·zliwe, aby ka·zda osoba
przyja´zni÷a sie¾ z dok÷adnie piecioma
¾
innymi?
Ćwiczenie 4. Udowodni´c, ·ze w grupie sze´sciu osób zawsze istnieja¾ trzy osoby znajace
¾ sie¾
nawzajem lub trzy osoby wzajemnie sobie nieznajome.
Ćwiczenie 5. Pokaza´c, ·ze w grupie n
2 osób istnieja¾ zawsze dwie majace
¾ tyle samo
znajomych. Sformu÷owa´c zadanie w jezyku
¾
teorii grafów.
Ćwiczenie 6. Sprawdzi´c czy poni·zsze ciagi
¾ sa¾ciagami
¾
liczb wierzcho÷ków kolejnych stopni w
gra…e (si oznacza ilo´s´c wierzcho÷ków stopnia i). Narysowa´c odpowiednie grafy.
(1) (s0 ; s1 ; s2 ; s3 ; s4 ; s5 ) = (0; 3; 2; 2; 2; 1)
(2) (s0 ; s1 ; s2 ; s3 ; s4 ; s5 ) = (0; 3; 2; 1; 2; 1)
Ćwiczenie 7. Niech (s0 ; s1 ; : : : ; sn ) bedzie
¾
ciagiem
¾
liczb ca÷kowitych nieujemnych. Udowodni´c, ·ze nastepuj
¾ ace
¾ warunki sa¾równowa·zne:
(1) (s0 ; s1 ; : : : ; sn ) jest ciagiem
¾
liczb wierzcho÷ków kolejnych stopni w pewnym gra…e.
n
P
(2)
isi jest liczba¾parzysta.¾
i=0P
(3)
isi jest liczba¾parzysta¾
isi - niep.
(4) jfi; isi jest nieparzystegj jest liczba¾parzysta.¾
Ćwiczenie 8 (Twierdzenie Turana). Pokaza´c, ·ze je·zeli G jest grafem prostym bez trójkatów
¾
2
takim, ·ze jVG j = 2n, to jEG j n .
TEORIA GRAFÓW I SIECI - ROZDZIAL I
4
Zgodnie z de…nicja,¾ poniz·sze rysunki przedstawiaja¾ ten sam graf
Jeśli natomiast przyjmiemy, z·e róz·ne litery oznaczaja¾ róz·ne wierzcho÷
ki, to grafy
sa¾róz·ne, bo maja¾róz·ne zbiory wierzcho÷
ków. W wielu sytuacjach wygodne jest utoz·samianie
tych grafów, bo maja¾ "taka¾ sama¾ strukture"
¾ - tyle samo wierzcho÷
ków po÷
aczonych
¾
w ten
sam sposób kraw¾
edziami. Sformu÷
ujemy kryterium pozwalajace
¾ rozstrzygać, czy grafy maja¾
"taka¾ sama¾ strukture".
¾
Izomor…zmem grafów G i H nazywamy pare¾ ( ; ) bijekcji
: VG ! VH , : EG ! EH
takich, z·e dla dowolnych wierzcho÷
ków a; b 2 VG i dowolnej kraw¾
edzi k 2 EG zachodzi
(IN)
k÷
aczy
¾ a i b ()
(k) ÷
aczy
¾
(a) i
(b) :
Mówimy wtedy, z·e G jest izomor…czny z H i piszemy G ' H.
W÷
asność 1. Dla dowolnych grafów G; H; K
(1) G ' G.
(2) Je·zeli G ' H, to H ' G.
(3) Je·zeli G ' H i H ' K, to G ' K.
Ćwiczenie 9. Udowodni´c w÷asno´s´c 1.
Z w÷
asności 1 wynika, z·e w dowolnej rodzinie grafów, relacja izomor…czności jest równowaz·nościa.¾ Pozwala to mówić, z·e grafy sa¾ izomor…czne, bez zaznaczania który jest izomor…czny z
którym.
Niech k i l bed
¾ a¾ róz·nymi kraw¾
edziami wielokrotnymi o tych samych końcach a i b. Wówczas (k) 6= (l) oraz końcami tych kraw¾
edzi sa¾ (a) i (b). Zatem (k) i (l) tez· sa¾
róz·nymi kraw¾
edziami wielokrotnymi. Oznacza to, z·e izomor…zm przekszta÷
ca graf z kraw¾
edziami wielokrotnymi na graf z kraw¾
edziami wielokrotnymi i w konsekwencji graf izomor…czny
do grafu bez kraw¾
edzi wielokrotnych, tez· nie ma kraw¾
edzi wielokrotnych.
Niech ( ; ) : G ! H bedzie
¾
izomor…zmem grafów bez kraw¾
edzi wielokrotnych. Weźmy
dowolna¾ kraw¾
edź k 2 EG i oznaczmy jej końce przez a i b. Wtedy (k) ÷
aczy
¾
wierzcho÷
ki
(a) i (b). Poniewaz· w gra…e bez kraw¾
edzi wielokrotnych istnieje co najwyz·ej jedna kraw¾
edź
÷
acz
¾ aca
¾ ustalone wierzcho÷
ki, wiec
¾ wartość (k) jest jednoznacznie wyznaczona przez (a) i
TEORIA GRAFÓW I SIECI - ROZDZIAL I
5
(b). Zatem funkcja wyznacza jednoznacznie funkcje¾ . Powyz·sza uwaga pozwala ÷
atwo
udowodnić nastepuj
¾ ac
¾ a¾ w÷
asność.
W÷
asność 2. Grafy bez krawedzi
¾ wielokrotnych G; H sa¾izomor…czne wtedy i tylko wtedy, gdy
istnieje bijekcja : VG ! VH taka, ·ze dla dowolnych wierzcho÷ków a; b 2 VG zachodzi
(IN’)
a i b sa¾sasiednie
¾
()
(a) i
(b) sa¾sasiednie.
¾
Korzystajac
¾ z w÷
asności 2 moz·na przyjać,
¾ z·e izomor…zmem miedzy
¾
grafami bez kraw¾
edzi
wielokrotnych jest bijekcja spe÷
niajaca
¾ (IN’). Oczywista jest równiez·
W÷
asność 3. Je·zeli G = (V; E; ) jest grafem bez krawedzi
¾ wielokrotnych oraz E0 =
to G0 = (V; E0 ; idE0 ) jest grafem izomor…cznym z G.
(E),
Teoria grafów zajmuje sie¾ na ogó÷badaniem struktury grafów. Pozwala to utoz·samiać grafy
izomor…czne (bo jez·eli rozwaz·ana w÷
asność zachodzi dla jednego grafu, to zachodzi tez· dla
grafów z nim izomor…cznych). Z w÷
asności 3 wynika, z·e graf G bez kraw¾
edzi wielokrotnych
moz·e być utoz·samiany (jest izomor…czny) z grafem G0 o tych samych wierzcho÷
kach i takim, z·e
E0 ffa; bg ; a; b 2 V0 g oraz 0 = idE0 . "Zapominajac"
¾ o funkcji identycznościowej, moz·emy
wiec
¾ de…niować taki graf jako pare¾ (V0 ; E0 ).
Ćwiczenie 10. Udowodni´c w÷asno´sci 2 i 3.
Ćwiczenie 11. Udowodni´c, ·ze poni·zsze grafy sa¾izomor…czne
Aby pokazać, z·e grafy sa¾izomor…czne wystarczy wskazać izomor…zm. Pokazanie "z de…nicji",
z·e grafy nie sa¾ izomor…czne jest bardziej k÷
opotliwe. Dlatego nieizomor…czności grafów
dowodzi sie,
¾ na ogó÷
, przez wskazanie, z·e jeden z nich ma w÷
asność, której nie ma drugi.
Rozwaz·ana w÷
asność musi być przy tym niezmiennikiem izomor…zmu, tzn. jeśli ma ja¾
pewien graf, to maja¾ ja¾ równiez· wszystkie grafy z nim izomor…czne.
Poniewaz· i sa¾ bijekcjami, wiec
¾ niezmiennikiem izomor…zmu jest liczba wierzcho÷
ków
grafu, a takz·e liczba kraw¾
edzi grafu. Aby uzyskać ciekawsze niezmienniki rozwaz·ymy zbiór
Eab z÷
oz·ony ze wszystkich kraw¾
edzi ÷
acz
¾ acych
¾
ustalone wierzcho÷
ki a; b grafu. Z de…nicji
stopnia wierzcho÷
ka wynika natychmiast
W÷
asność 4. Dla dowolnego wierzcho÷ka a grafu G zachodzi równo´s´c
deg a =
[
v2VG
Eav + jEaa j :
W÷
asność 5. Niech ( ; ) : G ! H bedzie
¾
izomor…zmem grafów. Dla dowolnych wierzcho÷ków a; b 2 VG zachodzi
TEORIA GRAFÓW I SIECI - ROZDZIAL I
6
(1) (Eab ) = E (a) (b) :
(2) jEab j = E (a) (b) :
(3) deg a = deg (a) :
Dowód. Weźmy dowolna¾ kraw¾
edź l 2 EH . Poniewaz·
k 2 EG taka, z·e (k) = l. Mamy przy tym
(IN)
ró z·now.
2
(k)
jest bijekcja,¾ wiec
¾ istnieje kraw¾
edź
(Eab ) () k 2 Eab () a; b - końce k ()
()
(a) ; (b) - końce
(k) ()
(k) 2 E
(a) (b)
Dowodzi to warunku (1). Poniewaz· jest bijekcja,¾ wiec
¾ (2) wynika z (1). Z kolei z równości
!
[
[
[
[
Eav =
(Eav ) =
E (a) (v) =
E (a)w
v2VG
v2VG
v2VG
w2VH
dostajemy, korzystajac
¾ z w÷
asności 4,
deg a =
[
v2VG
=
[
[
Eav + jEaa j =
E
(a)w
+ E
Eav
v2VG
(a) (a)
!
+ j (Eaa )j =
= deg (a) :
w2VH
Twierdzenie 2. Niech m 2 N [ f0g. Nastepuj
¾ ace
¾ w÷asno´sci sa¾niezmiennikami izomor…zmu
grafów.
(1)
(2)
(3)
(4)
(5)
Liczba
Liczba
Liczba
Liczba
Liczba
wierzcho÷ków.
krawedzi.
¾
wierzcho÷ków stopnia m.
par wierzcho÷ków po÷¾
aczonych m krawedziami.
¾
petli
¾ m-krotnych.
Dowód. Niech ( ; ) : G ! H bedzie
¾
izomor…zmem grafów. Poniewaz· ;
na
jVH j = j (VG )j
na
ró z·now.
jEH j = j (EG )j
=
ró z·now.
sa¾bijekcjami wiec
¾
jVG j ;
=
jEG j ;
czyli zachodza¾ warunki (1) i (2).
Oznaczmy przez A zbiór wszystkich wierzcho÷
ków stopnia m w G, zaś przez B zbiór wszystkich wierzcho÷
ków stopnia m w H. Z w÷
asności 5.3 wynika, z·e (A) B. Weźmy dowolny
wierzcho÷
ek b 2 B. Poniewaz· jest bijekcja,
¾ wiec
¾ b = (a), gdzie a 2 G. Stad
¾ na podstawie
w÷
asności 5.3
deg a = deg (a) = deg b = m:
Zatem a 2 A i w konsekwencji b =
B = (A), czyli
(a) 2
(A). Dowodzi to inkluzji B
jBj = j (A)j = jAj ;
(A). Ostatecznie
TEORIA GRAFÓW I SIECI - ROZDZIAL I
7
co kończy to dowód (3). Dowody w÷
asności (4) i (5) pozostawiamy jako ćwiczenie.
Ćwiczenie 12. Udowodni´c w÷asno´sci (4) i (5) z poprzedniego twierdzenia.
Moz·liwość utoz·samiania grafów izomor…cznych pozwala, w przypadku wiekszości
¾
rozwaz·ań,
pomijać nazwy wierzcho÷
ków, nazwy kraw¾
edzi, a nawet jedne i drugie. Graf moz·emy wiec,
¾ w
zalez·ności od potrzeb, zapisać w postaci
Ćwiczenie 13. Sprawdzi´c, które z poni·zszych grafów sa¾izomor…czne
Ćwiczenie 14. Narysowa´c wszystkie (z dok÷adno´scia¾do izomor…zmu)
(1) Grafy o 3 wierzcho÷kach i 3 krawedziach.
¾
(2) Grafy proste o 4 wierzcho÷kach i 4 krawedziach.
¾
Ćwiczenie 15. Znale´z´c wszystkie nieizomor…czne grafy, których ciag
¾ liczb wierzcho÷ków kolejnych stopni jest równy (0; 3) ; (0; 4) ; (0; 0; 3) ; (0; 0; 4).
TEORIA GRAFÓW I SIECI - ROZDZIAL I
8
Podamy teraz kilka przyk÷
adów. Grafem pustym nazywamy graf, który nie ma kraw¾
edzi.
Graf pusty o n wierzcho÷
kach oznaczamy Nn . Poniewaz· dowolne dwa grafy puste o n wierzcho÷
kach sa¾ izomor…czne, wiec
¾ oznaczenie to ma sens.
Grafem pe÷
nym lub klika¾ nazywamy graf prosty, którego dowolne, róz·ne wierzcho÷
ki sa¾
po÷
aczone
¾
kraw¾
edzia.
¾ Graf pe÷
ny o n wierzcho÷
kach oznaczamy Kn .
Ćwiczenie 16. Obliczy´c liczbe¾ krawedzi
¾ grafu Kn .
Grafami platońskimi nazywamy grafy wielościanów foremnych, tzn. 4; 6; 8; 12 i 20ścianu.
Graf czworościanu (K4 )
Graf sześcianu
Graf dwunastościanu
Graf ośmiościanu
Graf dwudziestościanu
TEORIA GRAFÓW I SIECI - ROZDZIAL I
9
Inne interesujace
¾ grafy
Graf Petersena
Graf Grötzscha
Grafem regularnym nazywamy graf, którego wszystkie wierzcho÷
ki maja¾ten sam stopień.
Jez·eli wszystkie wierzcho÷
ki maja¾ stopień r, to mówimy, z·e graf jest regularny stopnia r
lub r-regularny. Grafy regularne stopnia 3 nazywamy kubicznymi. Grafem kubicznym
jest np. graf Petersena oraz grafy czworścianu, sześcianu i dwunastościanu. Graf ośmiościanu
jest 4-regularny, a graf dwudziestościanu - 5-regularny. Grafy puste sa¾ 0-regularne, zaś graf
pe÷
ny Kn jest regularny stopnia n 1.
Mówimy, z·e G jest grafem dwudzielnym jez·eli istnieja¾ roz÷
aczne
¾
i niepuste zbiory wierzcho÷
ków A, B takie, z·e VG = A [ B oraz dowolna kraw¾
edź w gra…e ÷
aczy
¾
wierzcho÷
ek ze
zbioru A z wierzcho÷
kiem ze zbioru B. Pe÷
nym grafem dwudzielnym nazywamy taki graf
dwudzielny, w którym kaz·dy wierzcho÷
ek z A jest po÷
aczony
¾
dok÷
adnie jedna¾ kraw¾
edzia¾ z
kaz·dym wierzcho÷
kiem z B. Pe÷
ny graf dwudzielny taki, z·e jAj = n i jBj = m oznaczamy
Kn;m .
Graf dwudzielny
K1;3
K2;3
Grafy, które nie sa¾ dwudzielne
Podgrafem grafu G = (V; E; ) nazywamy dowolny graf G0 = (V0 ; E0 ; 0 ) taki, z·e V0
V; E0
E i 0 = jE0 . Oznacza to, z·e podgraf dostajemy z grafu usuwajac
¾ z niego pewna¾
TEORIA GRAFÓW I SIECI - ROZDZIAL I
10
liczbe¾ wierzcho÷
ków i kraw¾
edzi w ten sposób, z·eby by÷to nadal graf (nie moz·e zostać kraw¾
edź
bez końca). Szczególnie czesto
¾ w rozwaz·aniach pojawiaja¾ sie¾ dwa rodzaje podgrafów.
0
Jez·eli E
E, to symbolem GnE 0 oznaczamy graf powsta÷
y z G przez usuniecie
¾ wszystkich
kraw¾
edzi z E 0 (wierzcho÷
ki bez zmian), czyli
G n E 0 = (V; E n E 0 ; jE n E 0 ) :
Jez·eli V 0 $ V , to symbolem G n V 0 oznaczamy graf powsta÷
y z G przez usuniecie
¾ wszystkich
0
0
wierzcho÷
ków z V oraz wszystkich kraw¾
edzi majacych
¾
choć jeden koniec w V . Formalnie
G n V 0 = (V n V 0 ; E n E 0 ; jE n E 0 )
gdzie E 0 = fk 2 E; (k) \ V 0 6= ;g.
G
G n fk1 ; k2 ; k3 g
G n fbg
G n fcg
Zajmiemy sie¾ teraz grafami skierowanymi. Pominiemy pewne szczegó÷
y, gdyz· de…nicje i
w÷
asności sa¾ bardzo podobne do omawianych dla grafów nieskierowanych.
Grafem skierowanym lub digrafem (directed graph) nazywamy trójk¾
e G = (V; E; ),
gdzie V = VG jest zbiorem niepustym, E = EG dowolnym zbiorem, zaś funkcja¾ : E !
V V . Elementy zbioru V nazywamy wierzcho÷
kami digrafu, zaś elementy zbioru E jego
krawedziami.
¾
Kraw¾
edzie w gra…e skierowanym bywaja¾ tez· nazywane ÷
ukami.
Jez·eli (k) = (a; b), to mówimy, z·e a jest poczatkiem,
¾
zaś b końcem kraw¾
edzi k oraz z·e
kraw¾
edź k biegnie od a do b. Gra…cznie bedziemy
¾
to oznaczać strza÷
ka¾ w kierunku końca
kraw¾
edzi. Jez·eli wierzcho÷
ek nie jest poczatkiem
¾
ani końcem z·adnej kraw¾
edzi, to mówimy, z·e
jest izolowany. Kraw¾
edź, która ma taki sam poczatek
¾ i koniec ( (k) = (a; a)) nazywamy
petl
¾ a.
¾ Jez·eli k i l sa¾ róz·nymi kraw¾
edziami o tym samym poczatku
¾
i tym samym końcu (tzn.
(k) = (l)), to kraw¾
edzie te nazywamy wielokrotnymi. Zauwaz·my, z·e w gra…e
k1 i k2 sa¾kraw¾
edziami wielokrotnymi, zaś k3 nie jest. Graf skierowany bez kraw¾
edzi wielokrotnych i petli
¾ nazywamy digrafem prostym. Podobnie jak w przypadku grafów nieskierowanych,
kaz·da¾ kraw¾
edź k o poczatku
¾ a i końcu b (czyli taka,
¾ z·e (k) = (a; b)) bedziemy
¾
oznaczać jako
ab lub (a; b).
Stopniem wejściowym wierzcho÷
ka a nazywamy liczbe¾ indeg a równa¾ ilości wszystkich
kraw¾
edzi, których końcem jest a (wchodzacych
¾
do a), zaś stopniem wyjściowym liczbe¾
TEORIA GRAFÓW I SIECI - ROZDZIAL I
11
outdeg a równa¾ ilości wszystkich kraw¾
edzi, których poczatkiem
¾
jest a (wychodzacych
¾
z a).
Liczbe¾
deg a = indeg a + outdeg a
nazywamy stopniem wierzcho÷
ka a.
Ćwiczenie 17. Obliczy´c stopnie wej´sciowe i wyj´sciowe wierzcho÷ków grafu
Podgraf grafu skierowanego de…nujemy tak samo jak dla grafu nieskierowanego, tzn. podgrafem (skierowanym) digrafu G = (V; E; ) nazywamy dowolny digraf G0 = (V0 ; E0 ; 0 )
taki, z·e V0 V; E0 E i 0 = jE0 .
Uwaga 2. W dalszej cze¾´sci wyk÷adu termin graf bedzie
¾
u·zywany w dwojaki sposób. W
sensie we¾·zszym, czyli zgodnie z de…nicja¾ "graf"="graf nieskierowany". W sensie szerszym
"graf"="graf nieskerowany lub skierowany". Nie powinno to prowadzi´c do nieporozumie´n,
gdy·z z kontekstu bedzie
¾
wynika´c o co chodzi.
Powiemy jeszcze o przekszta÷
caniu grafu skierowanego w nieskierowany i na odwrót. Niech
G = (V; E; ) bedzie
¾
grafem skierowanym. Z digrafu G moz·na utworzyć graf nieskierowany
GN przez "usuniecie
¾ strza÷
ek z kraw¾
edzi"
Formalnie, GN = (V; E; N ), gdzie dla kraw¾
edzi k o poczatku
¾
a i końcu b, tj. takiej, z·e
(k) = (a; b) przyjmujemy
N (k) = fa; bg .
Graf GN nazywamy szkieletem lub wersja¾ nieskierowana¾ digrafu G.
Za÷
óz·my teraz, z·e G = (V; E; ) jest grafem nieskierowanym. Z grafu G tworzymy digraf
GS zostawiajac
¾ petle
¾ i zastepuj
¾ ac
¾ kaz·da¾z kraw¾
edzi ÷
acz
¾ acych
¾
róz·ne wierzcho÷
ki, para¾kraw¾
edzi
przeciwnie skierowanych.
TEORIA GRAFÓW I SIECI - ROZDZIAL I
12
Digraf GS nazywamy wersja¾ skierowana¾ grafu G.
Ćwiczenie 18.
(1) Sformu÷owa´c formalna¾de…nicje¾ skierowanej wersji grafu.
(2) Zbada´c zwiazek
¾ miedzy
¾ stopniem wierzcho÷ka w digra…e G i jego szkielecie GN .
(3) Zbada´c zwiazek
¾ miedzy
¾ stopniem wierzcho÷ka w gra…e G i jego wersji skierowanej GS .
(4) Zbada´c czy dla dowolnego digrafu G zachodzi G ' (GN )S .
(5) Zbada´c czy dla dowolnego grafu G zachodzi G ' (GS )N .
Podobnie jak w pzypadku grafów nieskierowanych bedziemy
¾
zajmować sie tylko digrafami skończonymi, czyli takimi, z·e jV j + jEj < 1.
Lemat o uściskach d÷
oni przyjmuje dla digrafów nastepuj
¾ ac
¾ a¾ postać
Twierdzenie 3 (Lemat o uściskach d÷
oni). W dowolnym gra…e skierowanym
X
X
indeg a =
outdeg a = jEG j :
a2VG
a2VG
Izomor…zmem grafów skierowanych G i H nazywamy pare¾ ( ; ) bijekcji
: VG ! VH ,
: EG ! EH takich, z·e dla dowolnych wierzcho÷
ków a; b 2 VG i dowolnej kraw¾
edzi k 2 EG
(IS)
k biegnie z a do b ,
(k) biegnie z
(a) do
(b) :
Mówimy wtedy, z·e G jest izomor…czny z H i piszemy G ' H. Izomor…zmy digrafów maja¾
podobne w÷
asności jak izomor…zmy grafów.
W÷
asność 6. Dla dowolnych grafów skierowanych G; H; K
(1) G ' G.
(2) Je·zeli G ' H, to H ' G.
(3) Je·zeli G ' H i H ' K, to G ' K.
W÷
asność 7. Digrafy bez krawedzi
¾ wielokrotnych G; H sa¾ izomor…czne wtedy i tylko wtedy,
gdy istnieje bijekcja : VG ! VH taka, ·ze dla dowolnych wierzcho÷ków a; b 2 VG
(IS’)
istnieje krawed
¾´z biegnaca
¾ z a do b , istnieje krawed
¾´z biegnaca
¾ z
(a) do
(b) .
W÷
asność 8. Je·zeli G = (V; E; ) jest digrafem bez krawedzi
¾ wielokrotnych oraz E0 =
to G0 = (V; E0 ; idE0 ) jest digrafem izomor…cznym z G.
(E),
W÷
asność 8 pokazuje, z·e digraf bez kraw¾
edzi wielokrotnych G jest izomor…czny z digrafem
G0 takim, z·e E0
V
V oraz 0 = idE0 . Utoz·samiajac
¾ G z izomor…cznym digrafem G0
oraz pomijajac
¾ funkcje¾ identycznościowa¾ stwierdzamy, z·e digraf bez kraw¾
edzi wielokrotnych
moz·na de…niować jako pare¾ (V; E0 ) taka,
¾ z·e E0 V V .
Ćwiczenie 19. Udowodni´c w÷asno´sci 6 - 8.
Przypomnijmy jeszcze wspomniane wcześniej podobieństwo de…nicji digrafu (bez kraw¾
edzi
wielokrotnych) i relacji dwuargumentowej.
Ćwiczenie 20. Niech V = f1; 2; 3; 4g. Narysowa´c grafy skierowane odpowiadajace
¾ relacji
równo´sci "=", mniejszo´sci "<" i podzielno´sci "j".
TEORIA GRAFÓW I SIECI - ROZDZIAL I
13
Uwaga 3. W dalszej cze¾´sci wyk÷adu bedziemy
¾
czasem podawa´c de…nicje i twierdzenia równolegle w dwóch wersjach (np. dla grafów i digrafów). W takiej sytuacji ró·znice bed
¾ a¾umieszczone
w nawiasach kwadratowych [ ].
Zrobimy teraz kilka uwag na temat zapisywania grafów w postaci analitycznej, dogodnej do
przetwarzania. Niech G bedzie
¾
grafem [grafem skierowanym]. Ustawmy wierzcho÷
ki G w ciag
¾
(a1 ; a2 ; : : : ; an ). Macierza¾ sasiedztwa
¾
grafu [digrafu] G nazywamy macierz M = [mij ]i;j n ,
gdzie mij jest ilościa¾ kraw¾
edzi ÷
acz
¾ acych
¾
ai z aj [o poczatku
¾
ai oraz końcu aj ].
Ćwiczenie 21. Znale´z´c macierze sasiedztwa
¾
grafów
Macierz sasiedztwa
¾
grafu nie jest wyznaczona jednoznacznie, bo zalez·y od sposobu ustawienia wierzcho÷
ków w ciag.
¾ Moz·na sprawdzić, z·e jeśli M jest macierza¾ sasiedztwa,
¾
to kaz·da¾
inna¾ macierz sasiedztwa
¾
da sie¾ uzyskać przez permutacje¾ wierszy macierzy M , a nastepnie
¾
taka¾ sama¾ permutacje¾ kolumn.
Jez·eli ( ; ) : G ! H jest izomor…zmem grafów (skierowanych lub nieskierowanych)
oraz VG = fa1 ; a2 ; : : : ; an g, to macierze sasiedztwa
¾
odpowiadajace
¾ ciagom
¾
(a1 ; a2 ; : : : ; an ) i
( (a1 ) ; (a2 ) ; : : : ; (an )) sa¾ równe. Oznacza to, z·e w grafach izomor…cznych moz·na tak
ponumerować wierzcho÷
ki, aby dostać równe macierze sasiedztwa.
¾
Oczywiście, równiez· na
odwrót, grafy o równych macierzach sasiedztwa
¾
sa¾ izomor…czne.
Ćwiczenie 22. Pokaza´c, ·ze grafy [digrafy] sa¾ izomor…czne wtedy i tylko wtedy, gdy mo·zna
tak ponumerowa´c ich wierzcho÷ki, by dosta´c równe macierze sasiedztwa.
¾
Z macierzy sasiedztwa
¾
÷
atwo odczytać podstawowe w÷
asności grafu. W szczególności mamy
W÷
asność 9. Niech G bedzie
¾
grafem lub digrafem oraz M = [mij ]i;j
n
jego macierza¾sasiedztwa.
¾
Je·zeli G jest grafem nieskierowanym, to macierz M jest symetryczna (M = M T ).
G nie ma krawedzi
¾ wielokrotnych , mij 1 dla wszystkich i; j.
G nie ma petli
¾ , mii = 0 dla wszystkich i.
P
P
Je·zeli G jest grafem skierowanym, to indeg ai = nj=1 mji oraz outdeg ai = nj=1 mij .
P
P
Je·zeli G jest grafem nieskierowanym, to deg ai = mii + nj=1 mij = mii + nj=1 mji .
3
2
1 2 3 1
62 0 1 27
6
7
Ćwiczenie 23. Niech G bedzie
¾
grafem o macierzy sasiedztwa
¾
6
7.
41 0 2 35
0 2 1 0
(1) Odpowiedzie´c na poni·zsze pytania bez rysowania grafu.
(1)
(2)
(3)
(4)
(5)
TEORIA GRAFÓW I SIECI - ROZDZIAL I
14
(a) Czy G jest grafem skierowanym, czy nieskierowanym?
(b) Ile wierzcho÷ków, krawedzi,
¾
krawedzi
¾ wielokrotnych oraz petli
¾ jest w G?
(c) Ile wynosi deg a1 (oraz ewentualnie indeg a1 i outdeg a1 )?
(2) Narysowa´c G.
Reprezentacja grafu przy pomocy macierzy sasiedztwa
¾
jest bardzo wygodna. Z punktu
widzenia programisty ma jednak powaz·na¾ wade.
¾ Zapisujac
¾ graf w ten sposób musimy zarez2
erwować w pamieci
¾ miejsce na tablice¾ rozmiaru jVG j . Jest to szczególnie niekorzystne gdy
graf jest rzadki, tzn. jEG j
jVG j2 (w macierzy sasiedztwa
¾
jest duz·o zer). W takiej sytuacji
zamiast macierzy sasiedztwa,
¾
czesto
¾ stosuje sie¾ listy sasiedztwa.
¾
Jest to tablica rozmiaru
jVG j, w której kaz·demu wierzcho÷
kowi odpowiada lista wierzcho÷
ków z nim sasiednich.
¾
Dla
grafu nieskierowanego z ćwiczenia 21 mamy
[[2] ; [1; 2; 4; 5] ; [ ] ; [2; 5; 5; 5] ; [2; 4; 4; 4]] :
W gra…e skierowanym zamiast listy sasiadów
¾
moz·na wziać
¾ liste¾ nastepników,
¾
czyli wierzcho÷
ków, do których biegna¾ kraw¾
edzie z danego wierzcho÷
ka. Dla grafu skierowanego z
ćwiczenia 21 bedzie
¾
to
[[2; 2; 3] ; [ ] ; [1; 2; 3; 3]] :
Jeszcze innym sposobem analitycznego przedstawienia grafu jest macierz incydencji. Ustawiamy wierzcho÷
ki i kraw¾
edzie grafu nieskierowanego w ciagi
¾ (a1 ; a2 ; : : : ; an ) i (k1 ; k2 ; : : : ; km ).
Macierza¾ incydencji grafu nazywamy macierz P = [pij ]i n;j m , gdzie
(
1; ai jest końcem kj ;
pij =
:
0; ai nie jest końcem kj :
2
3
1 1 1 0 0
6
7
P = 41 1 1 1 0 5
0 0 0 1 1
Dla grafu skierowanego moz·na wprowadzić dodatkowa¾ wartość (np.
poczatku
¾
i końca kraw¾
edzi.
1) dla rozróz·nienia
1. Cykle Eulera i Hamiltona
Na pierwszym wyk÷
adzie pojawi÷sie¾ schemat mostów na rzece Pregole w Królewcu.
TEORIA GRAFÓW I SIECI - ROZDZIAL I
15
W roku 1736 Leonard Euler rozwiaza÷problem
¾
dotyczacy
¾ moz·liwości odbycia wycieczki, w
której przechodzimy dok÷
adnie jeden raz przez kaz·dy most i wracamy do punktu wyjścia.
Wynik Eulera jest uwaz·any za poczatek
¾ teorii grafów.
Schemat mostów moz·na zapisać w postaci grafu. Zadanie sprowadza sie¾ do znalezienia
zamknietej
¾ ściez·ki prostej zawierajacej
¾ wszystkie kraw¾
edzie tego grafu.
Zamkniet
¾ aście
¾ z·k¾
e prosta¾zawierajac
¾ a¾wszystkie kraw¾
edzie grafu nazywamy cyklem Eulera
lub obwodem Eulera. Otwarta¾ ściez·k¾
e prosta¾ zawierajac
¾ a¾ wszystkie kraw¾
edzie grafu nazywamy ściez·ka¾ Eulera. Graf posiadajacy
¾ cykl Eulera nazywamy grafem eulerowskim, zaś
posiadajacy
¾ ściez·k¾
e Eulera - grafem pó÷
eulerowskim.
Uwaga 4. Nazwa cykl Eulera stanowi niekonsekwencje¾w stosunku do stosowanej na wyk÷adzie
terminologii, bo cykl Eulera nie musi by´c cyklem (wierzcho÷ki moga¾ sie¾ powtarza´c).
Bedziemy
¾
jednak u·zywa´c tego terminu, gdy·z jest powszechnie stosowany w literaturze.
Rozwaz·my cykl Eulera t w gra…e G. Interesuje nas stopień pewnego wierzcho÷
ka tego grafu.
Kaz·da kraw¾
edź pojawia sie¾ w t dok÷
adnie raz. Aby policzyć stopień wierzcho÷
ka, wystarczy
znaleźć wszystkie jego wystapienia
¾
wściez·ce t i sprawdzić ile kraw¾
edzi tam z nim sasiaduje
¾
(dopuszczamy liczenie tej samej kraw¾
edzi dwukrotnie w przypadku petli:
¾ : : : aka : : :). Poniewaz·
jednak ściez·ka t jest zamknieta,
¾ wiec
¾ kaz·dy wierzcho÷
ek sasiaduje
¾
z dwiema kraw¾
edziami
(petla
¾ dwa razy z ta¾ sama¾ kraw¾
edzia).
¾ Wynika stad,
¾ z·e stopień dowolnego wierzcho÷
ka jest
parzysty.
ak1 bk2 dk3 ek4 f k5 gk6 ek7 dk8 ck9 ck10 a
Udowodniliśmy
Twierdzenie 4. Wszystkie wierzcho÷ki grafu eulerowskiego maja¾stopie´n parzysty.
Twierdzenie 4 rozwiazuje
¾
problem mostów królewieckich. Poniewaz· wszystkie wierzcho÷
ki
w tym gra…e maja¾ stopień nieparzysty, wiec
¾ graf nie ma cyklu Eulera.
Udowodniliśmy, z·e parzystość stopni wierzcho÷
ków jest warunkiem koniecznym istnienia
cyklu Eulera. Leonard Euler pokaza÷
, z·e dla grafów spójnych jest to równiez· warunek dostateczny. Dowód tego twierdzenia przeprowadzimy wskazujac
¾ algorytm znajdujacy
¾ cykl Eulera
przy podanych wyz·ej za÷
oz·eniach. Bedzie
¾
to algorytm Fleury’ego. Jego dzia÷
anie polega
na tym, z·e startujac
¾ z dowolnego wierzcho÷
ka, idziemy dowolna¾ droga¾ dbajac
¾ jedynie by:
TEORIA GRAFÓW I SIECI - ROZDZIAL I
16
po drodze usuwać kraw¾
edzie, przez które przeszliśmy oraz wierzcho÷
ki izolowane,
przez mosty przechodzić tylko wtedy, gdy nie ma innej moz·liwości.
Dla grafu G oraz jego wierzcho÷
ka a zde…niujmy procedure:
¾
Fleury(G; a)
x := a
% wierzcho÷
ek, do którego doszliśmy budujac
¾ ściez·k¾
e
d0 := a
% ściez·ka, która¾ zbudowaliśmy
V0 := VG
% wierzcho÷
ki pozosta÷
e do odwiedzenia
E0 := EG
% kraw¾
edzie pozosta÷
e do odwiedzenia
while E0 6= ; do
znajdź kraw¾
edź k = xy 2 E0 taka,
¾ z·e G0 nfkg jest spójny lub x jest izolowany w G0 nfkg
d0 := d0 ky
E0 := E0 n fkg
if x jest izolowany w G0 then V0 := V0 n fxg
x := y
d := d0
Twierdzenie 5. Niech G bedzie
¾
grafem spójnym, w którym wszystkie wierzcho÷ki maja¾stopie´n
parzysty oraz a dowolnym wierzcho÷kiem G. Wynikiem dzia÷ania procedury Fleury(G; a) jest
cykl Eulera d.
Dowód. Zak÷
adamy, z·e G jest grafem spójnym, w którym wszystkie wierzcho÷
ki maja¾ stopień
parzysty. Udowodnimy kolejno kilka faktów. Jez·eli nie zaznaczymy inaczej, sformu÷
owania
bed
¾ a¾ dotyczyć poczatku
¾
i końca dowolnej iteracji.
(1) G0 = (V0 ; E0 ) jest grafem (końce kraw¾
edzi z E0 nalez·a¾ do V0 ).
TEORIA GRAFÓW I SIECI - ROZDZIAL I
(2)
(3)
(3’)
(4)
17
Na wejściu mamy G0 = G, czyli (1) zachodzi. Warunek jest niezmiennikiem petli,
¾
bo usuniecie
¾ z G0 kraw¾
edzi i wierzcho÷
ka izolowanego nie psuje warunku (1).
G0 jest spójny.
Na starcie mamy G0 = G, czyli spójność wynika z za÷
oz·enia. Warunek jest niezmiennikiem petli,
¾ bo z G0 usuwamy albo kraw¾
edź, która nie jest mostem, albo kraw¾
edź
wraz z końcem, który jest liściem (porównaj wniosek ??).
Jeśli x = a, to wszystkie wierzcho÷
ki w G0 maja¾ stopień parzysty.
Jeśli x 6= a, to x i a sa¾ jedynymi wierzcho÷
kami stopnia nieparzystego w G0 :
Na wejściu mamy x = a. Warunek (3) wynika z za÷
oz·enia o parzystości stopni
wszystkich wierzcho÷
ków, natomiast implikacja (3’) jest prawdziwa, bo ma fa÷
szywy
poprzednik. Udowodnimy teraz, z·e koniunkcja warunków (3) i (3’) jest niezmiennikiem
petli.
¾
W tym celu za÷
óz·my, z·e na poczatku
¾
petli
¾ oba warunki zachodza.
¾ Pokaz·emy,
z·e warunki zachodza¾ na końcu petli.
¾ Zauwaz·my, z·e jedynymi wierzcho÷
kami, których
stopień zmienia sie¾ w trakcie iteracji sa¾x i y oraz z·e x przyjmuje nowa¾wartość x
y.
Jeśli na poczatku
¾
x = a i usuwamy petl
¾ e¾ k = xx, to na końcu mamy x = a
(x
x) oraz deg x = deg a jest o 2 mniejszy niz· na poczatku,
¾
czyli parzysty.
Jeśli na poczatku
¾
x = a i usuwamy kraw¾
edź k = xy, dla y 6= x, to na końcu
mamy x 6= a (x
y). Stopień wierzcho÷
ka a jest o 1 mniejszy niz· na poczatku,
¾
czyli nieparzysty. Stopień wierzcho÷
ka x jest o 1 mniejszy niz· stopień wierzcho÷
ka
y na poczatku,
¾
czyli tez· nieparzysty.
Jeśli na poczatku
¾
x 6= a i usuwamy kraw¾
edź k = xa, to na końcu mamy x = a
(x
a) oraz stopień wierzcho÷
ka a jest o 1 mniejszy niz· na poczatku,
¾
czyli
parzysty. "Stary" wierzcho÷
ek x ma stopień o 1 mniejszy niz· na poczatku,
¾
czyli
równiez· parzysty. Zatem w G0 nie ma wierzcho÷
ków stopnia nieparzystego.
Jeśli na poczatku
¾ x 6= a i usuwamy petl
¾ e¾ k = xx, to na końcu mamy x 6= a (x
x). Stopień wierzchka a jest nieparzysty (nie zmieni÷sie).
¾ Stopień wierzcho÷
ka x
jest o 2 mniejszy niz· na poczatku,
¾
czyli tez· nieparzysty.
Jeśli na poczatku
¾
x 6= a i usuwamy kraw¾
edź k = xy, dla y 2
= fa; xg, to na końcu
mamy x 6= a (x
y). Stopień wierzcho÷
ka a jest nieparzysty (nie zmieni÷sie).
¾
Stopień wierzcho÷
ka x jest nieparzysty jako stopień wierzcho÷
ka y zmniejszony
o 1. Stopień "starego" wierzcho÷
ka x tez· zmniejszy÷sie¾ o 1, czyli jest parzysty.
Ostatecznie jedynymi wierzcho÷
kami stopnia nieparzystego sa¾ a i x.
Tak wiec
¾ koniunkcja warunków (3) i (3’) jest niezmiennikiem petli.
¾
Jeśli E0 6= ;, to moz·na znaleźć kraw¾
edź k = xy 2 E0 taka,
¾ z·e G0 n fkg jest spójny lub
x jest izolowany w G0 n fkg.
Poniewaz· G0 jest spójny i niepusty, wiec
¾ degG0 x > 0. Rozpatrzmy przypadki.
degG0 x = 1.
Niech k = xy bedzie
¾
jedyna¾ kraw¾
edzia¾ w G0 , której końcem jest x. Wtedy x jest
wierzcho÷
kiem izolowanym w G0 n fkg, czyli zachodzi (4).
degG0 x > 1.
Pokaz·emy, z·e istnieje kraw¾
edź k incydentna z x taka, z·e G0 n fkg jest spójny. W
TEORIA GRAFÓW I SIECI - ROZDZIAL I
18
tym celu wystarczy pokazać, z·e wśród kraw¾
edzi incydentnych z x, jest co najwyz·ej
jeden most. Przypuśćmy nie wprost, z·e istnieja¾ wierzcho÷
ki y 6= z, dla których
kraw¾
edzie k = xy i l = xz sa¾ mostami.
(5)
(6)
(7)
(8)
W gra…e H = G0 n fk; lg nie istnieje ściez·ka ÷
acz
¾ aca
¾ y i z (w przeciwnym razie k i
l nie by÷
yby mostami). Wierzcho÷
ek a nie moz·e zatem nalez·eć do obu sk÷
adowych
Hy i Hz jednocześnie. Przyjmijmy, z·e a 2
= Hy (jeśli a 2
= Hz , dowód jest podobny).
Z (3) i (3’) wynika, z·e jedynymi wierzcho÷
kami nieparzystego stopnia w G0 moga¾
być a, x i w konsekwencji jedynymi wierzcho÷
kami nieparzystego stopnia w H
moga¾ być a, x, y, z. Poniewaz· y 6= x i y 6= a wiec
¾ degG0 y jest liczba¾ parzysta,
¾
czyli degH y jest liczba¾nieparzysta.¾ Z drugiej strony a; x; z 2
= Hy i w konsekwencji
y jest jedynym wierzcho÷
kiem nieparzystego stopnia w Hy . Jest to sprzeczne z
Lematem o uściskach d÷
oni. Otrzymana sprzeczność dowodzi, z·e (4) zachodzi
równiez· w tym przypadku.
d0 jest poprawnie zde…niowana¾ ściez·ka¾ o końcu x.
Na wejściu mamy d0 = a = x, czyli d0 jest ściez·ka¾ trywialna¾ o końcu x. W petli
¾
do d0 dodajemy kraw¾
edź k = xy i wierzcho÷
ek y, czyli otrzymujemy ściez·k¾
e o końcu
y. Poniewaz· w ostatniej instrukcji petli
¾ w x wstawiamy y, wiec
¾ warunek (5) jest
niezmiennikiem petli.
¾
d0 jest ściez·ka¾ prosta.¾
Na wejściu, czyli dla d0 = a, warunek (6) jest oczywisty. Poniewaz· kraw¾
edź k
dodawana do d0 jest wybierana spośród tych, które nie nalez·a¾ do d0 , wiec
¾ (6) jest
niezmiennikiem petli.
¾
Procedura zatrzyma sie.
¾
W kaz·dej iteracji usuwamy z E0 jedna¾ kraw¾
edź. Teza wynika wiec
¾ ze skończoności
EG .
d jest cyklem Eulera.
Po wyjściu z petli
¾ mamy G0 = ;, czyli ściez·ka prosta d = d0 zawiera wszystkie
kraw¾
edzie grafu G. Ponadto mamy wtedy degG0 a = degG0 x = 0. Z (3) i (3’)
wnioskujemy wiec,
¾ z·e x = a, czyli ściez·ka d jest zamknieta.
¾
Kończy to dowód twierdzenia.
Natychmiastowym wnioskiem z udowodnionego twierdzenia oraz twierdzenia 4 jest zapowiedziana wcześniej charakteryzacja spójnych grafów eulerowskich.
Twierdzenie 6 (Eulera). Graf spójny posiada cykl Eulera wtedy i tylko wtedy, gdy wszystkie
jego wierzcho÷ki sa¾stopnia parzystego.
TEORIA GRAFÓW I SIECI - ROZDZIAL I
19
Uwaga 5. Spójno´s´c grafu nie jest warunkiem koniecznym istnienia cyklu Eulera. Graf mo·ze
mie´c wierzcho÷ki izolowane, np.
Konieczne jest jednak by wszystkie krawedzie
¾
nale·za÷y do jednej sk÷adowej.
Twierdzenie 7.
(1) Je·zeli w gra…e G istnieje´scie·zka Eulera ÷¾
aczaca
¾ wierzcho÷ki a i b, to
a, b sa¾jedynymi wierzcho÷kami stopnia nieparzystego.
(2) Je·zeli w gra…e spójnym G istnieja¾dok÷adnie dwa wierzcho÷ki stopnia nieparzystego, to
w G istnieje ´scie·zka Eulera ÷¾
aczaca
¾ te wierzcho÷ki.
Dowód.
(1) Niech d = a : : : b bedzie
¾
ściez·ka¾ Eulera. Dodajac
¾ do grafu G kraw¾
edź k = ab
0
dostajemy graf G = G [ fkg posiadajacy
¾ cykl Eulera a : : : bka. Z twierdzenia 4
0
wynika, z·e wszystkie wierzcho÷
ki grafu G maja¾ stopień parzysty. Zatem po usunieciu
¾
kraw¾
edzi k, jej końce a, b bed
¾ a¾ jedynymi wierzcho÷
kami stopnia nieparzystego w G.
(2) Za÷
óz·my, z·e a i b sa¾ jedynymi wierzcho÷
kami stopnia nieparzystego w gra…e spójnym
G. Dodajac
¾ do G kraw¾
edź k = ab dostajemy graf G0 = G[fkg o wierzcho÷
kach stopnia
0
parzystego. Z twierdenia Eulera wynika istnienie cyklu Eulera w G . Usuwajac
¾ z niego
kraw¾
edź k dostajemy ściez·k¾
e Eulera w G.
Stosujac
¾ chwyt z dodaniem kraw¾
edzi, moz·na pokazać, z·e algorytm Fleury’ego dzia÷
a równiez·
w grafach spójnych majacych
¾
dwa wierzcho÷
ki stopnia nieparzystego. Nalez·y jedynie jako
wierzcho÷
ek startowy wybrać jeden z tych wierzcho÷
ków.
Twierdzenie 8. Niech G bedzie
¾
grafem spójnym posiadajacym
¾
dwa wierzcho÷ki stopnia nieparzystego a i b. Wynikiem dzia÷ania procedury Fleury(G; a) jest ´scie·zka Eulera d ÷¾
aczaca
¾ a z b.
Ćwiczenie 24. Udowodni´c ostatnie twierdzenie.
Ćwiczenie 25. Sprawdzi´c czy poni·zsze …gury mo·zna narysowa´c bez odrywania pióra od kartki
i bez rysowania ·zadnej linii dwukrotnie. Je·zeli mo·zna, to zaznaczy´c poczatek
¾ i ponumerowa´c
linie w kolejno´sci rysowania.
1.
2.
3.
4.
5.
Ćwiczenie 26. Czy mrówka mo·ze przej´s´c wzd÷u·z wszystkich krawedzi
¾ bry÷y A i wróci´c do
punktu wyj´scia, nie przechodzac
¾ ·zadnej krawedzi
¾ dwa razy?
(1) A - czworo´scian,
(2) A - sze´scian,
TEORIA GRAFÓW I SIECI - ROZDZIAL I
20
(3) A - o´smio´scian,
(4) A - dwunasto´scian,
(5) A - dwudziesto´scian.
Ćwiczenie 27. Czy kostki domina mo·zna u÷o·zy´c w zamkniet
¾ a¾÷amana,¾ tak by sasiednie
¾
kostki
styka÷y sie¾ kwadratami o tych samych numerach?
Ćwiczenie 28. Sprawdzi´c dla jakich warto´sci n; m 2 N poni·zsze grafy sa¾ eulerowskie lub
pó÷eulerowskie.
(1) Graf pe÷ny Kn .
(2) Pe÷ny graf dwudzielny Knm .
Ćwiczenie 29. Sprawdzi´c czy poni·zsze grafy sa¾eulerowskie lub pó÷eulerowskie. Je·zeli sa,¾ to
znale´z´c cykl Eulera lub ´scie·zke¾ Eulera (wskaza´c poczatek
¾ i ponumerowa´c krawedzie).
¾
1.
4.
2.
3.
5.
Ćwiczenie 30. Czy mo·zna obej´s´c ca÷y dom przechodzac
¾ przez ka·zde drzwi dok÷adnie jeden
raz? Jaka bedzie
¾
odpowied´z, je´sli zamkniemy drzwi miedzy
¾ du·zymi pokojami?
Ćwiczenie 31.
(1) Czy mo·zliwe jest przej´scie szachownicy ruchem skoczka szachowego,
tak by ka·zdy z mo·zliwych ruchów by÷wykonany dok÷adnie raz (w jednym lub drugim
kierunku)?
TEORIA GRAFÓW I SIECI - ROZDZIAL I
(2) Rozwiaza´c
¾ zadanie zastepuj
¾ ac
¾ szachownice¾ rozmiaru 8
8, szachownica¾n
21
n, n 2 N.
Ćwiczenie 32. Niech G bedzie
¾
d-regularnym grafem o 2d + 1 wierzcho÷kach. Pokaza´c, ·ze
(1) je´sli G jest spójny, to jest eulerowski,
(2) je´sli G jest prosty, to jest eulerowski.
Zajmowaliśmy sie¾ ściez·kami prostymi zawierajacymi
¾
wszystkie kraw¾
edzie grafu. Rozwaz·my
teraz problem istnienia w gra…e zamknietej
¾ ściez·ki prostej przechodzacej
¾ dok÷
adnie jeden raz
przez kaz·dy wierzcho÷
ek grafu. Poczatki
¾ problemu pochodza¾ od "÷
amigówki Hamiltona", tzn.
od rozwaz·ań sir Williama Hamiltona dotyczacych
¾
istnienia takiej ściez·ki w gra…e dwunastościanu (1856).
Cyklem Hamiltona w gra…e nazywamy cykl zawierajacy
¾ wszystkie wierzcho÷
ki grafu.
Graf posiadajacy
¾ cykl Hamiltona nazywamy grafem hamiltonowskim. Ściez·ka¾ Hamiltona nazywamy ściez·k¾
e prosta¾ bez powtarzajacych
¾
sie¾ wierzcho÷
ków zawierajac
¾ a¾ wszystkie
wierzcho÷
ki grafu. Cykl Hamiltona jest, oczywiście, ściez·ka¾ Hamiltona. Zachodzi tez·
W÷
asność 10.
(1) Graf pe÷ny Kn jest hamiltonowski dla n 3.
(2) Dodanie krawedzi
¾ do grafu hamiltonowskiego daje graf hamiltonowski.
Rozstrzygniecie
¾ czy graf jest hamiltonowski jest o wiele trudniejsze niz· sprawdzenie czy
jest eulerowski. Nie znaleziono do tej pory sensownej charakteryzacji grafów hamiltonowskich. Musimy wiec
¾ korzystać z wyników cześciowych.
¾
Zaczniemy od warunków koniecznych,
które ze swojej istoty maja¾ "charakter negatywny", tzn. sa¾ na ogó÷wykorzystywane w rozumowaniach typu
"Jeśli graf nie spe÷
nia warunku, to nie jest hamiltonowski"
Jeśli d jest cyklem Hamiltona w gra…e G, to cykl ten ÷
aczy
¾ wszystkie wierzcho÷
ki grafu, czyli
graf jest spójny. Ponadto dowolny wierzcho÷
ek nalez·y do tego cyklu, czyli musi mieć stopień
2. Z kolei, jez·eli stopień wierzcho÷
ka wynosi dok÷
adnie 2, to obie incydentne z nim kraw¾
edzie
musza¾ nalez·eć do cyklu d. Zachodzi zatem
W÷
asność 11.
(1) Dowolny graf hamiltonowski jest spójny.
(2) W gra…e hamiltonowskim wszystkie wierzcho÷ki maja¾stopie´n 2.
(3) W gra…e hamiltonowskim wszystkie krawedzie
¾
wychodzace
¾ z wierzcho÷ków stopnia 2
nale·za¾do cyklu Hamiltona.
TEORIA GRAFÓW I SIECI - ROZDZIAL I
22
Poniz·szy graf
nie jest hamiltonowski, bo ma wierzcho÷
ek stopnia 1. Z kolei gdyby graf
posiada÷cykl Hamiltona, to cykl ten zawiera÷
by wszystkie kraw¾
edzie incydentne z wierzcho÷
kami stopnia 2, czyli mia÷
by 6 kraw¾
edzi. Jest to niemoz·liwe, bo cykl o 5 wierzcho÷
kach
ma 5 kraw¾
edzi. W konsekwencji graf nie jest hamiltonowski.
Za÷
óz·my, z·e graf ma n 3 wierzcho÷
ków. Wtedy z·adna petla
¾ nie nalez·y do cyklu Hamiltona. Ponadto, spośród kilku kraw¾
edzi ÷
acz
¾ acych
¾
te same wierzcho÷
ki, tylko jedna moz·e
nalez·eć do cyklu Hamiltona. Wynika stad,
¾ z·e w takim przypadku, usuniecie
¾ z grafu petli
¾
oraz kraw¾
edzi wielokrotnych (poza jedna¾ dla kaz·dej pary wierzcho÷
ków) nie wp÷
ywa na istnienie cyklu Hamiltona. Mamy zatem
W÷
asność 12. Niech G bedzie
¾
grafem o przynajmniej trzech wierzcho÷kach. Je·zeli graf G jest
hamiltonowski, to hamiltonowski jest te·z graf powsta÷y przez usuniecie
¾ z G wszystkich petli
¾
oraz wszystkich krawedzi
¾ poza jedna¾dla ka·zdej pary wierzcho÷ków sasiednich.
¾
Znalezienie cyklu Hamiltona grafu po lewej stronie sprowadza sie¾ do znalezienia cyklu
Hamiltona grafu po prawej stronie.
Ćwiczenie 33. Sprawdzi´c, czy powy·zsze grafy sa¾hamiltonowskie.
Kolejny warunek podamy w formie luźnej uwagi, a nie formalnej w÷
asności. Cykl Hamiltona
o n wierzcho÷
kach ma n kraw¾
edzi. Zauwaz·yliśmy jednak wyz·ej, z·e petle
¾ (gdy n > 1) i cześć
¾
kraw¾
edzi wielokrotnych nie wchodza¾ do cyklu Hamiltona, czyli nie sa¾ to kraw¾
edzie "istotne".
Podobnie wyglada
¾ sytucja w przypadku kraw¾
edzi incydentnych z wierzcho÷
kiem stopnia > 2.
Tylko dwie z tych kraw¾
edzi moga¾ sie¾ znaleźć w cyklu Hamiltona, czyli wszystkie pozosta÷
e
nie sa¾ "istotne". Tak wiec
¾
TEORIA GRAFÓW I SIECI - ROZDZIAL I
23
Graf hamiltonowski o n wierzcho÷
kach powinien mieć przynajmniej n kraw¾
edzi "istotnych".
Rozwaz·my prawy graf z ostatniego przyk÷
adu. Wierzcho÷
ki lez·ace
¾ na środkach boków
kwadratu maja¾ stopień 3. Zatem po jednej kraw¾
edzi incydentnej z kaz·dym z tych wierzcho÷
ków nie moz·e znaleźć sie¾ w cyklu Hamiltona. W gra…e jest zatem co najwyz·ej 8 "istotnych" kraw¾
edzi. Poniewaz· graf ma 9 wierzcho÷
ków, wiec
¾ nie moz·e być hamiltonowski.
Bardzo prosty warunek konieczny istnienia cyklu lub ściez·ki Hamiltona moz·na sformu÷
ować
dla grafów dwudzielnych.
Twierdzenie 9. Niech G bedzie
¾
grafem dwudzielnym oraz V = A [ B podzia÷em jego wierzcho÷ków.
(1) Je·zeli w G istnieje ´scie·zka Hamiltona, to liczby jAj i jBj ró·znia¾sie¾ co najwy·zej o 1.
(2) Je·zeli G ma cykl Hamiltona, to jAj = jBj.
Dowód. Za÷
óz·my, z·e d = a1 a2 : : : an jest ściez·ka¾ Hamiltona w G. Moz·emy przyjać,
¾ z·e a1 2 A
(jeśli a1 2 B, to dowód jest podobny). Wtedy a2 2 B, a3 2 A, itd. Ogólnie ai 2 A dla i
nieparzystych oraz ai 2 B dla i parzystych. Stad
¾
jAj
jBj =
(
1 gdy n jest nieparzyste,
0 gdy n jest parzyste.
Kończy to dowód (1). Za÷
óz·my teraz, z·e d jest cyklem Hamiltona, czyli an = a1 . Wtedy
A = fa1 ; a3 ; : : : ; an 2 g oraz B = fa2 ; a4 ; : : : ; an 1 g, czyli jAj = jBj.
Ćwiczenie 34. Sprawdzi´c czy poni·zsze grafy sa¾ hamiltonowskie [posiadaja¾´scie·zke¾ Hamiltona].
G1
G4
G2
G3
G5
G6
TEORIA GRAFÓW I SIECI - ROZDZIAL I
G7 (graf Petersena)
24
G8 (graf Grötzscha)
Ćwiczenie 35. Wiadomo, ·ze na szachownicy 8 8 mo·zna przej´s´c ruchem skoczka szachowego
wszystkie pola i wróci´c do punktu wyj´scia. Czy to samo mo·zna zrobi´c na szachownicy 9 9.
Sformu÷
ujemy teraz warunki dostateczne na to by graf prosty by÷hamiltonowski. Bed
¾ a¾one
mia÷
y postać:
"Jez·eli graf prosty ma duz·o kraw¾
edzi, to jest hamiltonowski"
Twierdzenie 10 (Orego). Niech G bedzie
¾
grafem prostym o n
(*)
deg a + deg b
3 wierzcho÷kach. Je·zeli
n dla dowolnych niesasiednich
¾
a, b,
to G jest hamiltonowski.
Dowód. Niech n = 3 oraz a, b bed
¾ a¾niesasiednimi
¾
wierzcho÷
kami. Wtedy deg a
czyli
deg a + deg b 2 < n.
1 i deg b
1,
Poprzednik implikacji jest zatem fa÷
szywy, czyli implikacja jest prawdziwa.
Przypuśćmy nie wprost, z·e twierdzenie jest fa÷
szywe. Oznacza to, z·e dla pewnej liczby
n
4 istnieje niehamiltonowski graf prosty o n wierzcho÷
kach spe÷
niajacy
¾ (*). Spośród
grafów o tej w÷
asności wybierzmy ten, który ma najwiecej
¾ kraw¾
edzi i nazwijmy go G. Dodajac
¾
do G kraw¾
edź k ÷
acz
¾ ac
¾ a¾ jakiekolwiek niesasiednie
¾
wierzcho÷
ki, dostajemy graf hamiltonowski.
Usuwajac
¾ z cyklu Hamiltona dodana¾wcześniej kraw¾
edź k otrzymujemy zatem otwarta¾ściez·k¾
e
Hamiltona a1 a2 : : : an w G. Poniewaz· G nie jest hamiltonowski, wiec
¾ wierzcho÷
ki a1 i an nie
sa¾ sasiednie
¾
i w konsekwencji
deg a1 + deg an n.
Pokaz·emy, z·e istnieje j 2 f3; : : : ; n
1g takie, z·e a1 aj , aj 1 an 2 EG .
Przyjmijmy
Widać, z·e A [ B
A = fi; a1 ai 2 EG g
oraz B = fi; ai 1 an 2 EG g .
f2; : : : ; ng, czyli jA [ Bj
jA \ Bj = jAj + jBj
n
1. Stad
¾
jA [ Bj = deg a1 + deg an
jA [ Bj
n
(n
1) = 1
TEORIA GRAFÓW I SIECI - ROZDZIAL I
25
i w konsekwencji istnieje j 2 A \ B. Poniewaz· a1 an 2
= EG , wiec
¾ n2
= A oraz 2 2
= B. Zatem
3 j n 1, co oznacza, z·e
a1 : : : aj 1 an : : : aj a1
jest cyklem Hamiltona wbrew za÷
oz·eniu. Otrzymana sprzeczność kończy dowód.
Natychmiastowa¾ konsekwencja¾ Twierdzenia Orego jest
Twierdzenie 11 (Diraca). Niech G bedzie
¾
grafem prostym o n 3 wierzcho÷kach. Je·zeli
n
dla dowolnego wierzcho÷ka a,
deg a
2
to G jest hamiltonowski.
Ćwiczenie 36. Udowodni´c Twierdzenie Diraca.
Twierdzenie 12. Je·zeli graf prosty o n wierzcho÷kach ma wiecej
¾ ni·z
krawedzi,
¾
to jest hamiltonowski.
1
2
(n
1) (n
2) + 1
Ćwiczenie 37.
(1) Udowodni´c poprzednie twierdzenie. Porówna´c je z ´cwiczeniem ??.
(2) Dla dowolnej liczby n
3 znale´z´c niehamiltonowski graf prosty o n wierzcho÷kach i
1
(n 1) (n 2) + 1 krawedziach.
¾
2
Warunki podane w trzech ostatnich twierdzeniach nie sa¾ warunkami koniecznymi. Graf
dwunastostościanu ma n = 20 wierzcho÷
ków, 30 kraw¾
edzi oraz wszystkie wierzcho÷
ki maja¾
stopień 3. Nie sa¾ wiec
¾ spe÷
nione za÷
oz·enia z·adnego z rozwaz·anych twierdzeń mimo, z·e graf
jest hamiltonowski. Podobnie graf cykliczny Cn jest hamiltonowski, a nie spe÷
nia za÷
oz·eń
z·adnego z twierdzeń dla n > 4.
Ćwiczenie 38. W grupie z÷o·zonej z 2n uczniów ka·zdy ma co najmniej n przyjació÷. Pokaza´c,
¾ a¾przyjaciela.
·ze mo·zna ich ustawi´c parami, tak by ka·zdy ucze´n trzyma÷za rek