• Nie Znaleziono Wyników

Grafy i grafy skierowane. Izomor…zmy grafów

N/A
N/A
Protected

Academic year: 2021

Share "Grafy i grafy skierowane. Izomor…zmy grafów"

Copied!
25
0
0

Pełen tekst

(1)

Grafy i grafy skierowane. Izomor…zmy grafów

Rozwa·zmy rysunki

1. Schemat mostów na rzece Pregole w Królewcu

2. Drzewo prawdopodobie´nstwa przy rzucie monet ¾a

3. Schemat organizacyjny …rmy 4. Odleg÷o´sci drogowe mi ¾edzy miastami Powy·zsze rysunki ilustruj ¾a zwi ¾azki mi ¾edzy pewnymi obiektami. Obiekty s ¾a w nich oz- naczone (na ogó÷) jako punkty, za´s fakt istnienia zwi ¾azku jest zaznaczony istnieniem linii

÷¾acz ¾acej dane punkty. Dodatkowo, na rysunku 3, wida´c ·ze zwi ¾azki mi ¾edzy obiektami mog ¾a mie´c charakter jednostronny (skierowany), za´s na rysunku 4, zwi ¾azki te s ¾a opatrzone pewnymi warto´sciami liczbowymi (wagami). Rozwa·zane schematy s ¾a przyk÷adami grafów.

Spróbujemy sformu÷owa´c precyzyjn ¾a de…nicj ¾e grafu. Niew ¾atpliwie graf powinien zaw- iera´c punkty, które b ¾edziemy nazywa´c wierzcho÷kami. W sk÷ad grafu powinny te·z wchodzi´c po÷¾aczenia wierzcho÷ków, które nazwiemy kraw ¾edziami. De…nicja powinna by´c na tyle ogólna, aby mo·zna ni ¾a obj ¾a´c jak najwi ¾eksz ¾a liczb ¾e sensownych przypadków. Nie powinni´smy wi ¾ec rozwa·za´c charakteru wierzcho÷ków (ich budowy wewn ¾etrznej), ale traktowa´c jako elementy abstrakcyjnego zbioru. Z kolei w kraw¾edziach interesuje nas jedynie to jakie wierzcho÷ki dana kraw¾ed´z ÷¾aczy (i ewentualnie kierunek po÷¾aczenia lub jego waga). W tej sytuacji najprostszym rozwi ¾azaniem wydaje si ¾e 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

(2)

Podane uj ¾ecie 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 mo·zna znale´z´c w wielu ksi ¾a·zkach z teorii grafów. Zauwa·zmy, ·ze dla grafu skierowanego podana de…nicja jest niemal identyczna z de…nic ¾a relacji dwuargumentowej w zbiorze V :

relacja = E = zbiór kraw ¾edzi, dziedzina relacji = V = zbiór wierzcho÷ków.

Podane de…nicje maj ¾a jednak wad ¾e. Nie obejmuj ¾a przypadku, w którym istniej ¾a wierzcho÷ki po÷¾aczone kilkoma ró·znymi kraw¾edziami. Przyk÷adowo, w gra…e mostów królewieckich jedn ¾a z wysp ÷¾acz ¾a z brzegami po dwa mosty. Konieczno´s´c rozró·znienia kraw¾edzi ÷¾acz ¾acych te same wierzcho÷ki zmusza nas do zrezygnowania z wygodnego uto·zsamienia kraw¾edzi ze zbiorem (lub par ¾a) jej ko´nców i przyj ¾ecia, ·ze kraw¾edzie nale·z ¾a równie·z do abstrakcyjnego zbioru E. W tej sytuacji musimy jednak okre´sli´c zwi ¾azek mi ¾edzy wierzcho÷kami i kraw¾edziami, czyli ustali´c, które wierzcho÷ki s ¾a ko´ncami danej kraw¾edzi. Skoncentrujmy nasze rozwa·zania na grafach nieskierowanych. B ¾edziemy potrzebowa´c funkcji : E ! ffa; bg ; a; b 2 V g. Dla kraw¾edzi k warto´s´c (k) b ¾edzie zbiorem ko´nców tej kraw¾edzi. Mo·zemy zatem poda´c formaln ¾a de…nicj ¾e.

Grafemlub grafem nieskierowanym nazywamy trójk¾e G = (V; E; ), gdzie V = VG jest zbiorem niepustym, E = EG dowolnym zbiorem, za´s funkcj ¾a : E ! ffa; bg ; a; b 2 V g.

Elementy zbioru V nazywamy wierzcho÷kami lub w ¾ez÷ami grafu, za´s elementy zbioru E jego kraw ¾edziami. Je·zeli (k) =fa; bg, to wierzcho÷ki a; b nazywamy ko´ncami kraw¾edzi k.

Mówimy wtedy, ·ze kraw¾ed´z k ÷¾aczyte wierzcho÷ki oraz ·ze wierzcho÷ki a; b s ¾a incydentne z k.

Wierzcho÷ki po÷¾aczone kraw¾edzi ¾a nazywamy s ¾asiednimi. Je·zeli wierzcho÷ek nie jest ko´ncem zadnej kraw¾· edzi, to mówimy, ·ze jest izolowany. Je·zeli k i l s ¾a ró·znymi kraw¾edziami ÷¾acz ¾a- cymi te same wierzcho÷ki (tzn. (k) = (l)), to kraw¾edzie te nazywamy wielokrotnymi.

Kraw¾ed´z, która ma tylko jeden koniec ( (k) = fag) nazywamy p ¾etl ¾a. Graf bez kraw¾edzi wielokrotnych i p ¾etli nazywamy grafem prostym.

Cwiczenie 1.´ W poni·zszym gra…e wskaza´c kraw ¾edzie wielokrotne, p ¾etle i wierzcho÷ki izolowane.

Okre´sli´c jakie wierzcho÷ki s ¾a s ¾asiednie z a, jakie s ¾a incydentne z k5 oraz znale´z´c kraw ¾edzie z którymi incydentny jest wierzcho÷ek b.

Je´sli k jest kraw¾edzi ¾a o ko´ncach a i b, czyli tak ¾a, ·ze (k) =fa; bg, to b ¾edziemy pisa´c k = ab lub k = fa; bg. Tak wi¾ec symbolem ab (fa; bg) b ¾edziemy oznacza´c ka·zd ¾a kraw¾ed´z o ko´ncach a i b. W grafach bez kraw¾edzi wielokrotnych, kraw¾ed´z ab jest wyznaczona jednoznacznie.

Zwró´cmy jeszcze uwag ¾e na niejednoznaczno´s´c terminologii dotycz ¾acej grafów. W niektórych ksi ¾a·zkach termin graf oznacza graf bez kraw ¾edzi wielokrotnych lub graf prosty, natomiast to co my nazywamy grafem, wyst ¾epuje jako jako multigraf.

(3)

Stopniem wierzcho÷kaa w gra…e nazywamy liczb ¾e deg a równ ¾a ilo´sci kraw¾edzi, których ko´ncem jest a powi ¾ekszon ¾a o ilo´s´c p ¾etli, których ko´ncem jest a (zliczamy ile kraw¾edzi "wychodzi"

z a). Formalnie

deg a =jfk; a 2 (k)gj + jfk; fag = (k)gj :

Cwiczenie 2.´ Obliczy´c stopnie wierzcho÷ków grafu z poprzedniego ´cwiczenia.

W de…nicji grafu nie ma ·zadnych ogranicze´n dotycz ¾acych mocy zbiorów V i E (oprócz V 6= ;). Niektóre wyniki da si¾e udowodni´c w tak ogólnym przypadku. Nas jednak b ¾ed ¾a interesowa´c tylko grafy sko´nczone.

Uwaga 1. Od tego momentu zak÷adamy, ·ze, wszystkie rozwa·zane grafy s ¾a sko´nczone, tzn. maj ¾a sko´nczon ¾a liczb ¾e wierzcho÷ków i kraw ¾edzi.

Twierdzenie 1 (Lemat o u´sciskach d÷oni). W dowolnym gra…e X

a2VG

deg a = 2jEGj :

Dowód. Obliczaj ¾ac sum ¾e stopni wszystkich wierzcho÷ków liczymy kraw¾edzie wychodz ¾ace z tych wierzcho÷ków. Kraw¾ed´z ÷¾acz ¾ac ¾a ró·zne wierzcho÷ki liczymy dwukrotnie (przy obu ko´n- cach). P¾etl ¾e te·z liczymy dwa razy (przy jednym ko´ncu). Wynika st ¾ad teza twierdzenia.

Wniosek 1. W dowolnym gra…e liczba wierzcho÷ków stopnia nieparzystego jest parzysta.

Cwiczenie 3.´ Grupa studentów sk÷ada si ¾e z 25 osób. Czy jest mo·zliwe, aby ka·zda osoba przyja´zni÷a si ¾e z dok÷adnie pi ¾ecioma innymi?

Cwiczenie 4.´ Udowodni´c, ·ze w grupie sze´sciu osób zawsze istniej ¾a trzy osoby znaj ¾ace si ¾e nawzajem lub trzy osoby wzajemnie sobie nieznajome.

Cwiczenie 5.´ Pokaza´c, ·ze w grupie n 2 osób istniej ¾a zawsze dwie maj ¾ace tyle samo znajomych. Sformu÷owa´c zadanie w j ¾ezyku teorii grafów.

Cwiczenie 6.´ Sprawdzi´c czy poni·zsze ci ¾agi s ¾a ci ¾agami 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)

Cwiczenie 7.´ Niech (s0; s1; : : : ; sn) b ¾edzie ci ¾agiem liczb ca÷kowitych nieujemnych. Udowod- ni´c, ·ze nast ¾epuj ¾ace warunki s ¾a równowa·zne:

(1) (s0; s1; : : : ; sn) jest ci ¾agiem liczb wierzcho÷ków kolejnych stopni w pewnym gra…e.

(2) Pn i=0

isi jest liczb ¾a parzyst ¾a.

(3) P

isi - niep.

isi jest liczb ¾a parzyst ¾a

(4) jfi; isi jest nieparzystegj jest liczb ¾a parzyst ¾a.

Cwiczenie 8´ (Twierdzenie Turana). Pokaza´c, ·ze je·zeli G jest grafem prostym bez trójk ¾atów takim, ·ze jVGj = 2n, to jEGj n2.

(4)

Zgodnie z de…nicj ¾a, poni·zsze rysunki przedstawiaj ¾a ten sam graf

Je´sli natomiast przyjmiemy, ·ze ró·zne litery oznaczaj ¾a ró·zne wierzcho÷ki, to grafy

s ¾a ró·zne, bo maj ¾a ró·zne zbiory wierzcho÷ków. W wielu sytuacjach wygodne jest uto·zsamianie tych grafów, bo maj ¾a "tak ¾a sam ¾a struktur ¾e" - tyle samo wierzcho÷ków po÷¾aczonych w ten sam sposób kraw¾edziami. Sformu÷ujemy kryterium pozwalaj ¾ace rozstrzyga´c, czy grafy maj ¾a

"tak ¾a sam ¾a struktur ¾e".

Izomor…zmem grafów G i H nazywamy par ¾e ( ; ) bijekcji : VG! VH, : EG! EH takich, ·ze 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, ·ze G jest izomor…czny z H i piszemy G ' H.

W÷asno´s´c 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.

Cwiczenie 9.´ Udowodni´c w÷asno´s´c 1.

Z w÷asno´sci 1 wynika, ·ze w dowolnej rodzinie grafów, relacja izomor…czno´sci jest równowa·zno´s- ci ¾a. Pozwala to mówi´c, ·ze grafy s ¾a izomor…czne, bez zaznaczania który jest izomor…czny z którym.

Niech k i l b ¾ed ¾a ró·znymi kraw¾edziami wielokrotnymi o tych samych ko´ncach a i b. Wów- czas (k) 6= (l) oraz ko´ncami tych kraw¾edzi s ¾a (a) i (b). Zatem (k) i (l) te·z s ¾a ró·znymi kraw¾edziami wielokrotnymi. Oznacza to, ·ze izomor…zm przekszta÷ca graf z kraw¾edzi- ami wielokrotnymi na graf z kraw¾edziami wielokrotnymi i w konsekwencji graf izomor…czny do grafu bez kraw¾edzi wielokrotnych, te·z nie ma kraw¾edzi wielokrotnych.

Niech ( ; ) : G ! H b ¾edzie izomor…zmem grafów bez kraw¾edzi wielokrotnych. We´zmy dowoln ¾a kraw¾ed´z k 2 EG i oznaczmy jej ko´nce przez a i b. Wtedy (k) ÷¾aczy wierzcho÷ki (a)i (b). Poniewa·z w gra…e bez kraw¾edzi wielokrotnych istnieje co najwy·zej jedna kraw¾ed´z

÷¾acz ¾aca ustalone wierzcho÷ki, wi ¾ec warto´s´c (k) jest jednoznacznie wyznaczona przez (a) i

(5)

(b). Zatem funkcja wyznacza jednoznacznie funkcj ¾e . Powy·zsza uwaga pozwala ÷atwo udowodni´c nast ¾epuj ¾ac ¾a w÷asno´s´c.

W÷asno´s´c 2. Grafy bez kraw ¾edzi wielokrotnych G; H s ¾a 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 s ¾a s ¾asiednie () (a) i (b) s ¾a s ¾asiednie.

Korzystaj ¾ac z w÷asno´sci 2 mo·zna przyj ¾a´c, ·ze izomor…zmem mi ¾edzy grafami bez kraw¾edzi wielokrotnych jest bijekcja spe÷niaj ¾aca (IN’). Oczywista jest równie·z

W÷asno´s´c 3. Je·zeli G = (V; E; ) jest grafem bez kraw ¾edzi wielokrotnych oraz E0 = (E), to G0 = (V; E0; idE0) jest grafem izomor…cznym z G.

Teoria grafów zajmuje si ¾e na ogó÷badaniem struktury grafów. Pozwala to uto·zsamia´c grafy izomor…czne (bo je·zeli rozwa·zana w÷asno´s´c zachodzi dla jednego grafu, to zachodzi te·z dla grafów z nim izomor…cznych). Z w÷asno´sci 3 wynika, ·ze graf G bez kraw¾edzi wielokrotnych mo·ze by´c uto·zsamiany (jest izomor…czny) z grafem G0o tych samych wierzcho÷kach i takim, ·ze E0 ffa; bg ; a; b 2 V0g oraz 0 = idE0. "Zapominaj ¾ac" o funkcji identyczno´sciowej, mo·zemy wi ¾ec de…niowa´c taki graf jako par ¾e (V0; E0).

Cwiczenie 10.´ Udowodni´c w÷asno´sci 2 i 3.

Cwiczenie 11.´ Udowodni´c, ·ze poni·zsze grafy s ¾a izomor…czne

Aby pokaza´c, ·ze grafy s ¾a izomor…czne wystarczy wskaza´c izomor…zm. Pokazanie "z de…nicji", ze grafy nie s ¾· a izomor…czne jest bardziej k÷opotliwe. Dlatego nieizomor…czno´sci grafów dowodzi si ¾e, na ogó÷, przez wskazanie, ·ze jeden z nich ma w÷asno´s´c, której nie ma drugi.

Rozwa·zana w÷asno´s´c musi by´c przy tym niezmiennikiem izomor…zmu, tzn. je´sli ma j ¾a pewien graf, to maj ¾a j ¾a równie·z wszystkie grafy z nim izomor…czne.

Poniewa·z i s ¾a bijekcjami, wi ¾ec niezmiennikiem izomor…zmu jest liczba wierzcho÷ków grafu, a tak·ze liczba kraw¾edzi grafu. Aby uzyska´c ciekawsze niezmienniki rozwa·zymy zbiór Eab z÷o·zony ze wszystkich kraw¾edzi ÷¾acz ¾acych ustalone wierzcho÷ki a; b grafu. Z de…nicji stopnia wierzcho÷ka wynika natychmiast

W÷asno´s´c 4. Dla dowolnego wierzcho÷ka a grafu G zachodzi równo´s´c deg a = [

v2VG

Eav +jEaaj :

W÷asno´s´c 5. Niech ( ; ) : G ! H b ¾edzie izomor…zmem grafów. Dla dowolnych wierz- cho÷ków a; b 2 VG zachodzi

(6)

(1) (Eab) = E (a) (b): (2) jEabj = E (a) (b) : (3) deg a = deg (a) :

Dowód. We´zmy dowoln ¾a kraw¾ed´z l 2 EH. Poniewa·z jest bijekcj ¾a, wi ¾ec istnieje kraw¾ed´z k 2 EG taka, ·ze (k) = l. Mamy przy tym

(k) 2 (Eab)ró ·() k 2 Eznow. ab () a; b - ko´nce k ()(IN) () (a) ; (b) - ko´nce (k)() (k) 2 E (a) (b)

Dowodzi to warunku (1). Poniewa·z jest bijekcj ¾a, wi ¾ec (2) wynika z (1). Z kolei z równo´sci [

v2VG

Eav

!

= [

v2VG

(Eav) = [

v2VG

E (a) (v) = [

w2VH

E (a)w dostajemy, korzystaj ¾ac z w÷asno´sci 4,

deg a = [

v2VG

Eav +jEaaj = [

v2VG

Eav

!

+j (Eaa)j =

= [

w2VH

E (a)w + E (a) (a) = deg (a) :

Twierdzenie 2. Niech m 2 N [ f0g. Nast ¾epuj ¾ace w÷asno´sci s ¾a niezmiennikami izomor…zmu grafów.

(1) Liczba wierzcho÷ków.

(2) Liczba kraw ¾edzi.

(3) Liczba wierzcho÷ków stopnia m.

(4) Liczba par wierzcho÷ków po÷¾aczonych m kraw ¾edziami.

(5) Liczba p ¾etli m-krotnych.

Dowód. Niech ( ; ) : G ! H b ¾edzie izomor…zmem grafów. Poniewa·z ; s ¾a bijekcjami wi ¾ec jVHjna=j (VG)jró ·znow.= jVGj ;

jEHj=naj (EG)jró ·znow.= jEGj ; czyli zachodz ¾a warunki (1) i (2).

Oznaczmy przez A zbiór wszystkich wierzcho÷ków stopnia m w G, za´s przez B zbiór wszys- tkich wierzcho÷ków stopnia m w H. Z w÷asno´sci 5.3 wynika, ·ze (A) B. We´zmy dowolny wierzcho÷ek b 2 B. Poniewa·z jest bijekcj ¾a, wi ¾ec b = (a), gdzie a 2 G. St ¾ad na podstawie w÷asno´sci 5.3

deg a = deg (a) = deg b = m:

Zatem a 2 A i w konsekwencji b = (a) 2 (A). Dowodzi to inkluzji B (A). Ostatecznie B = (A), czyli

jBj = j (A)j = jAj ;

(7)

co ko´nczy to dowód (3). Dowody w÷asno´sci (4) i (5) pozostawiamy jako ´cwiczenie.

Cwiczenie 12.´ Udowodni´c w÷asno´sci (4) i (5) z poprzedniego twierdzenia.

Mo·zliwo´s´c uto·zsamiania grafów izomor…cznych pozwala, w przypadku wi ¾ekszo´sci rozwa·za´n, pomija´c nazwy wierzcho÷ków, nazwy kraw¾edzi, a nawet jedne i drugie. Graf mo·zemy wi ¾ec, w zale·zno´sci od potrzeb, zapisa´c w postaci

Cwiczenie 13.´ Sprawdzi´c, które z poni·zszych grafów s ¾a izomor…czne

Cwiczenie 14.´ Narysowa´c wszystkie (z dok÷adno´sci ¾a do izomor…zmu) (1) Grafy o 3 wierzcho÷kach i 3 kraw ¾edziach.

(2) Grafy proste o 4 wierzcho÷kach i 4 kraw ¾edziach.

Cwiczenie 15.´ Znale´z´c wszystkie nieizomor…czne grafy, których ci ¾ag liczb wierzcho÷ków kole- jnych stopni jest równy (0; 3) ; (0; 4) ; (0; 0; 3) ; (0; 0; 4).

(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. Poniewa·z dowolne dwa grafy puste o n wierz- cho÷kach s ¾a izomor…czne, wi ¾ec oznaczenie to ma sens.

Grafem pe÷nym lub klik ¾a nazywamy graf prosty, którego dowolne, ró·zne wierzcho÷ki s ¾a po÷¾aczone kraw¾edzi ¾a. Graf pe÷ny o n wierzcho÷kach oznaczamy Kn.

Cwiczenie 16.´ Obliczy´c liczb ¾e kraw ¾edzi grafu Kn.

Grafami plato´nskimi nazywamy grafy wielo´scianów foremnych, tzn. 4; 6; 8; 12 i 20-

´scianu.

Graf czworo´scianu (K4) Graf sze´scianu Graf o´smio´scianu

Graf dwunasto´scianu Graf dwudziesto´scianu

(9)

Inne interesuj ¾ace grafy

Graf Petersena Graf Grötzscha

Grafem regularnymnazywamy graf, którego wszystkie wierzcho÷ki maj ¾a ten sam stopie´n.

Je·zeli wszystkie wierzcho÷ki maj ¾a stopie´n r, to mówimy, ·ze graf jest regularny stopnia r lub r-regularny. Grafy regularne stopnia 3 nazywamy kubicznymi. Grafem kubicznym jest np. graf Petersena oraz grafy czwor´scianu, sze´scianu i dwunasto´scianu. Graf o´smio´scianu jest 4-regularny, a graf dwudziesto´scianu - 5-regularny. Grafy puste s ¾a 0-regularne, za´s graf pe÷ny Kn jest regularny stopnia n 1.

Mówimy, ·ze G jest grafem dwudzielnym je·zeli istniej ¾a roz÷¾aczne i niepuste zbiory wierz- cho÷ków A, B takie, ·ze VG = A[ B oraz dowolna kraw¾ed´z w gra…e ÷¾aczy wierzcho÷ek ze zbioru A z wierzcho÷kiem ze zbioru B. Pe÷nym grafem dwudzielnymnazywamy taki graf dwudzielny, w którym ka·zdy wierzcho÷ek z A jest po÷¾aczony dok÷adnie jedn ¾a kraw¾edzi ¾a z ka·zdym wierzcho÷kiem z B. Pe÷ny graf dwudzielny taki, ·ze jAj = n i jBj = m oznaczamy Kn;m.

Graf dwudzielny

K1;3 K2;3

Grafy, które nie s ¾a dwudzielne

Podgrafem grafu G = (V; E; ) nazywamy dowolny graf G0 = (V0; E0; 0) taki, ·ze V0

V; E0 E i 0 = jE0. Oznacza to, ·ze podgraf dostajemy z grafu usuwaj ¾ac z niego pewn ¾a

(10)

liczb ¾e wierzcho÷ków i kraw¾edzi w ten sposób, ·zeby by÷to nadal graf (nie mo·ze zosta´c kraw¾ed´z bez ko´nca). Szczególnie cz ¾esto w rozwa·zaniach pojawiaj ¾a si ¾e dwa rodzaje podgrafów.

Je·zeli E0 E, to symbolem G nE0 oznaczamy graf powsta÷y z G przez usuni ¾ecie wszystkich kraw¾edzi z E0 (wierzcho÷ki bez zmian), czyli

Gn E0 = (V; En E0; jE n E0) :

Je·zeli V0 $ V , to symbolem G n V0 oznaczamy graf powsta÷y z G przez usuni ¾ecie wszystkich wierzcho÷ków z V0 oraz wszystkich kraw¾edzi maj ¾acych cho´c jeden koniec w V0. Formalnie

Gn V0 = (V n V0; En E0; jE n E0) gdzie E0 =fk 2 E; (k) \ V0 6= ;g.

G Gn fk1; k2; k3g Gn fbg Gn fcg

Zajmiemy si ¾e teraz grafami skierowanymi. Pominiemy pewne szczegó÷y, gdy·z de…nicje i w÷asno´sci s ¾a 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´s funkcj ¾a : E ! V V . Elementy zbioru V nazywamy wierzcho÷kamidigrafu, za´s elementy zbioru E jego kraw ¾edziami. Kraw¾edzie w gra…e skierowanym bywaj ¾a te·z nazywane ÷ukami.

Je·zeli (k) = (a; b), to mówimy, ·ze a jest pocz ¾atkiem, za´s b ko´ncem kraw¾edzi k oraz ·ze kraw¾ed´z k biegnie od a do b. Gra…cznie b ¾edziemy to oznacza´c strza÷k ¾a w kierunku ko´nca kraw¾edzi. Je·zeli wierzcho÷ek nie jest pocz ¾atkiem ani ko´ncem ·zadnej kraw¾edzi, to mówimy, ·ze jest izolowany. Kraw¾ed´z, która ma taki sam pocz ¾atek i koniec ( (k) = (a; a)) nazywamy p ¾etl ¾a. Je·zeli k i l s ¾a ró·znymi kraw¾edziami o tym samym pocz ¾atku i tym samym ko´ncu (tzn.

(k) = (l)), to kraw¾edzie te nazywamy wielokrotnymi. Zauwa·zmy, ·ze w gra…e

k1i k2 s ¾a kraw¾edziami wielokrotnymi, za´s k3nie jest. Graf skierowany bez kraw¾edzi wielokrot- nych i p ¾etli nazywamy digrafem prostym. Podobnie jak w przypadku grafów nieskierowanych, ka·zd ¾a kraw¾ed´z k o pocz ¾atku a i ko´ncu b (czyli tak ¾a, ·ze (k) = (a; b)) b ¾edziemy oznacza´c jako ab lub (a; b).

Stopniem wej´sciowym wierzcho÷ka a nazywamy liczb ¾e indeg a równ ¾a ilo´sci wszystkich kraw¾edzi, których ko´ncem jest a (wchodz ¾acych do a), za´s stopniem wyj´sciowym liczb ¾e

(11)

outdeg a równ ¾a ilo´sci wszystkich kraw¾edzi, których pocz ¾atkiem jest a (wychodz ¾acych z a).

Liczb ¾e

deg a = indeg a + outdeg a nazywamy stopniem wierzcho÷kaa.

Cwiczenie 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. pod- grafem (skierowanym) digrafu G = (V; E; ) nazywamy dowolny digraf G0 = (V0; E0; 0) taki, ·ze V0 V; E0 E i 0 = jE0.

Uwaga 2. W dalszej cz ¾e´sci wyk÷adu termin graf b ¾edzie u·zywany w dwojaki sposób. W sensie w ¾e·zszym, czyli zgodnie z de…nicj ¾a "graf"="graf nieskierowany". W sensie szerszym

"graf"="graf nieskerowany lub skierowany". Nie powinno to prowadzi´c do nieporozumie´n, gdy·z z kontekstu b ¾edzie wynika´c o co chodzi.

Powiemy jeszcze o przekszta÷caniu grafu skierowanego w nieskierowany i na odwrót. Niech G = (V; E; ) b ¾edzie grafem skierowanym. Z digrafu G mo·zna utworzy´c graf nieskierowany GN przez "usuni ¾ecie strza÷ek z kraw¾edzi"

Formalnie, GN = (V; E; N), gdzie dla kraw¾edzi k o pocz ¾atku a i ko´ncu b, tj. takiej, ·ze (k) = (a; b) przyjmujemy

N(k) =fa; bg .

Graf GN nazywamy szkieletem lub wersj ¾a nieskierowan ¾a digrafu G.

Za÷ó·zmy teraz, ·ze G = (V; E; ) jest grafem nieskierowanym. Z grafu G tworzymy digraf GS zostawiaj ¾ac p ¾etle i zast ¾epuj ¾ac ka·zd ¾a z kraw¾edzi ÷¾acz ¾acych ró·zne wierzcho÷ki, par ¾a kraw¾edzi przeciwnie skierowanych.

(12)

Digraf GS nazywamy wersj ¾a skierowan ¾a grafu G.

Cwiczenie 18.´ (1) Sformu÷owa´c formaln ¾a de…nicj ¾e skierowanej wersji grafu.

(2) Zbada´c zwi ¾azek mi ¾edzy stopniem wierzcho÷ka w digra…e G i jego szkielecie GN. (3) Zbada´c zwi ¾azek mi ¾edzy 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 b ¾edziemy zajmowa´c sie tylko di- grafami sko´nczonymi,czyli takimi, ·ze jV j + jEj < 1.

Lemat o u´sciskach d÷oni przyjmuje dla digrafów nast ¾epuj ¾ac ¾a posta´c

Twierdzenie 3 (Lemat o u´sciskach d÷oni). W dowolnym gra…e skierowanym X

a2VG

indeg a = X

a2VG

outdeg a =jEGj :

Izomor…zmem grafów skierowanych G i H nazywamy par ¾e ( ; ) bijekcji : VG! VH, : EG ! EH takich, ·ze 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, ·ze G jest izomor…czny z H i piszemy G ' H. Izomor…zmy digrafów maj ¾a podobne w÷asno´sci jak izomor…zmy grafów.

W÷asno´s´c 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´s´c 7. Digrafy bez kraw ¾edzi wielokrotnych G; H s ¾a izomor…czne wtedy i tylko wtedy, gdy istnieje bijekcja : VG! VH taka, ·ze dla dowolnych wierzcho÷ków a; b 2 VG

(IS’) istnieje kraw ¾ed´z biegn ¾aca z a do b , istnieje kraw ¾ed´z biegn ¾aca z (a) do (b) . W÷asno´s´c 8. Je·zeli G = (V; E; ) jest digrafem bez kraw ¾edzi wielokrotnych oraz E0 = (E), to G0 = (V; E0; idE0) jest digrafem izomor…cznym z G.

W÷asno´s´c 8 pokazuje, ·ze digraf bez kraw¾edzi wielokrotnych G jest izomor…czny z digrafem G0 takim, ·ze E0 V V oraz 0 = idE0. Uto·zsamiaj ¾ac G z izomor…cznym digrafem G0

oraz pomijaj ¾ac funkcj ¾e identyczno´sciow ¾a stwierdzamy, ·ze digraf bez kraw¾edzi wielokrotnych mo·zna de…niowa´c jako par ¾e (V; E0) tak ¾a, ·ze E0 V V.

Cwiczenie 19.´ Udowodni´c w÷asno´sci 6 - 8.

Przypomnijmy jeszcze wspomniane wcze´sniej podobie´nstwo de…nicji digrafu (bez kraw¾edzi wielokrotnych) i relacji dwuargumentowej.

Cwiczenie 20.´ Niech V = f1; 2; 3; 4g. Narysowa´c grafy skierowane odpowiadaj ¾ace relacji równo´sci "=", mniejszo´sci "<" i podzielno´sci "j".

(13)

Uwaga 3. W dalszej cz ¾e´sci wyk÷adu b ¾edziemy czasem podawa´c de…nicje i twierdzenia równole- gle w dwóch wersjach (np. dla grafów i digrafów). W takiej sytuacji ró·znice b ¾ed ¾a umieszczone w nawiasach kwadratowych [ ].

Zrobimy teraz kilka uwag na temat zapisywania grafów w postaci analitycznej, dogodnej do przetwarzania. Niech G b ¾edzie grafem [grafem skierowanym]. Ustawmy wierzcho÷ki G w ci ¾ag (a1; a2; : : : ; an). Macierz ¾a s ¾asiedztwagrafu [digrafu] G nazywamy macierz M = [mij]i;j n, gdzie mij jest ilo´sci ¾a kraw¾edzi ÷¾acz ¾acych ai z aj [o pocz ¾atku ai oraz ko´ncu aj].

Cwiczenie 21.´ Znale´z´c macierze s ¾asiedztwa grafów

Macierz s ¾asiedztwa grafu nie jest wyznaczona jednoznacznie, bo zale·zy od sposobu ustaw- ienia wierzcho÷ków w ci ¾ag. Mo·zna sprawdzi´c, ·ze je´sli M jest macierz ¾a s ¾asiedztwa, to ka·zd ¾a inn ¾a macierz s ¾asiedztwa da si ¾e uzyska´c przez permutacj ¾e wierszy macierzy M , a nast ¾epnie tak ¾a sam ¾a permutacj ¾e kolumn.

Je·zeli ( ; ) : G ! H jest izomor…zmem grafów (skierowanych lub nieskierowanych) oraz VG = fa1; a2; : : : ; ang, to macierze s ¾asiedztwa odpowiadaj ¾ace ci ¾agom (a1; a2; : : : ; an) i ( (a1) ; (a2) ; : : : ; (an)) s ¾a równe. Oznacza to, ·ze w grafach izomor…cznych mo·zna tak ponumerowa´c wierzcho÷ki, aby dosta´c równe macierze s ¾asiedztwa. Oczywi´scie, równie·z na odwrót, grafy o równych macierzach s ¾asiedztwa s ¾a izomor…czne.

Cwiczenie 22.´ Pokaza´c, ·ze grafy [digrafy] s ¾a izomor…czne wtedy i tylko wtedy, gdy mo·zna tak ponumerowa´c ich wierzcho÷ki, by dosta´c równe macierze s ¾asiedztwa.

Z macierzy s ¾asiedztwa ÷atwo odczyta´c podstawowe w÷asno´sci grafu. W szczególno´sci mamy W÷asno´s´c 9. Niech G b ¾edzie grafem lub digrafem oraz M = [mij]i;j njego macierz ¾a s ¾asiedztwa.

(1) Je·zeli G jest grafem nieskierowanym, to macierz M jest symetryczna (M = MT).

(2) G nie ma kraw ¾edzi wielokrotnych , mij 1 dla wszystkich i; j.

(3) G nie ma p ¾etli , mii= 0 dla wszystkich i.

(4) Je·zeli G jest grafem skierowanym, to indeg ai =Pn

j=1mji oraz outdeg ai =Pn j=1mij. (5) Je·zeli G jest grafem nieskierowanym, to deg ai = mii+Pn

j=1mij = mii+Pn j=1mji.

Cwiczenie 23.´ Niech G b ¾edzie grafem o macierzy s ¾asiedztwa 2 66 64

1 2 3 1 2 0 1 2 1 0 2 3 0 2 1 0 3 77 75.

(1) Odpowiedzie´c na poni·zsze pytania bez rysowania grafu.

(14)

(a) Czy G jest grafem skierowanym, czy nieskierowanym?

(b) Ile wierzcho÷ków, kraw ¾edzi, kraw ¾edzi wielokrotnych oraz p ¾etli jest w G?

(c) Ile wynosi deg a1 (oraz ewentualnie indeg a1 i outdeg a1)?

(2) Narysowa´c G.

Reprezentacja grafu przy pomocy macierzy s ¾asiedztwa jest bardzo wygodna. Z punktu widzenia programisty ma jednak powa·zn ¾a wad ¾e. Zapisuj ¾ac graf w ten sposób musimy zarez- erwowa´c w pami ¾eci miejsce na tablic ¾e rozmiaru jVGj2. Jest to szczególnie niekorzystne gdy graf jest rzadki, tzn. jEGj jVGj2 (w macierzy s ¾asiedztwa jest du·zo zer). W takiej sytuacji zamiast macierzy s ¾asiedztwa, cz ¾esto stosuje si ¾e listy s ¾asiedztwa. Jest to tablica rozmiaru jVGj, w której ka·zdemu wierzcho÷kowi odpowiada lista wierzcho÷ków z nim s ¾asiednich. Dla grafu nieskierowanego z ´cwiczenia 21 mamy

[[2] ; [1; 2; 4; 5] ; [ ] ; [2; 5; 5; 5] ; [2; 4; 4; 4]] :

W gra…e skierowanym zamiast listy s ¾asiadów mo·zna wzi ¾a´c list ¾e nast ¾epników, czyli wierz- cho÷ków, do których biegn ¾a kraw¾edzie z danego wierzcho÷ka. Dla grafu skierowanego z

´cwiczenia 21 b ¾edzie to

[[2; 2; 3] ; [ ] ; [1; 2; 3; 3]] :

Jeszcze innym sposobem analitycznego przedstawienia grafu jest macierz incydencji. Ustaw- iamy wierzcho÷ki i kraw¾edzie grafu nieskierowanego w ci ¾agi (a1; a2; : : : ; an) i (k1; k2; : : : ; km).

Macierz ¾a incydencji grafu nazywamy macierz P = [pij]i n;j m, gdzie

pij =

( 1; ai jest ko´ncem kj; 0; ai nie jest ko´ncem kj: :

P = 2 64

1 1 1 0 0 1 1 1 1 0 0 0 0 1 1 3 75

Dla grafu skierowanego mo·zna wprowadzi´c dodatkow ¾a warto´s´c (np. 1) dla rozró·znienia pocz ¾atku i ko´nca kraw¾edzi.

1.

Cykle Eulera i Hamiltona

Na pierwszym wyk÷adzie pojawi÷si ¾e schemat mostów na rzece Pregole w Królewcu.

(15)

W roku 1736 Leonard Euler rozwi ¾aza÷problem dotycz ¾acy mo·zliwo´sci odbycia wycieczki, w której przechodzimy dok÷adnie jeden raz przez ka·zdy most i wracamy do punktu wyj´scia.

Wynik Eulera jest uwa·zany za pocz ¾atek teorii grafów.

Schemat mostów mo·zna zapisa´c w postaci grafu. Zadanie sprowadza si ¾e do znalezienia zamkni ¾etej ´scie·zki prostej zawieraj ¾acej wszystkie kraw¾edzie tego grafu.

Zamkni ¾et ¾a´scie·zk¾e prost ¾a zawieraj ¾ac ¾a wszystkie kraw¾edzie grafu nazywamy cyklem Eulera lub obwodem Eulera. Otwart ¾a ´scie·zk¾e prost ¾a zawieraj ¾ac ¾a wszystkie kraw¾edzie grafu nazy- wamy ´scie·zk ¾a Eulera. Graf posiadaj ¾acy cykl Eulera nazywamy grafem eulerowskim, za´s posiadaj ¾acy ´scie·zk¾e Eulera - grafem pó÷eulerowskim.

Uwaga 4. Nazwa cykl Eulera stanowi niekonsekwencj ¾e w stosunku do stosowanej na wyk÷adzie terminologii, bo cykl Eulera nie musi by´c cyklem (wierzcho÷ki mog ¾a si ¾e powtarza´c).

B ¾edziemy jednak u·zywa´c tego terminu, gdy·z jest powszechnie stosowany w literaturze.

Rozwa·zmy cykl Eulera t w gra…e G. Interesuje nas stopie´n pewnego wierzcho÷ka tego grafu.

Ka·zda kraw¾ed´z pojawia si ¾e w t dok÷adnie raz. Aby policzy´c stopie´n wierzcho÷ka, wystarczy znale´z´c wszystkie jego wyst ¾apienia w´scie·zce t i sprawdzi´c ile kraw¾edzi tam z nim s ¾asiaduje (do- puszczamy liczenie tej samej kraw¾edzi dwukrotnie w przypadku p ¾etli: : : : aka : : :). Poniewa·z jednak ´scie·zka t jest zamkni ¾eta, wi ¾ec ka·zdy wierzcho÷ek s ¾asiaduje z dwiema kraw¾edziami (p ¾etla dwa razy z t ¾a sam ¾a kraw¾edzi ¾a). Wynika st ¾ad, ·ze stopie´n dowolnego wierzcho÷ka jest parzysty.

ak1bk2dk3ek4f k5gk6ek7dk8ck9ck10a Udowodnili´smy

Twierdzenie 4. Wszystkie wierzcho÷ki grafu eulerowskiego maj ¾a stopie´n parzysty.

Twierdzenie 4 rozwi ¾azuje problem mostów królewieckich. Poniewa·z wszystkie wierzcho÷ki w tym gra…e maj ¾a stopie´n nieparzysty, wi ¾ec graf nie ma cyklu Eulera.

Udowodnili´smy, ·ze parzysto´s´c stopni wierzcho÷ków jest warunkiem koniecznym istnienia cyklu Eulera. Leonard Euler pokaza÷, ·ze dla grafów spójnych jest to równie·z warunek dostate- czny. Dowód tego twierdzenia przeprowadzimy wskazuj ¾ac algorytm znajduj ¾acy cykl Eulera przy podanych wy·zej za÷o·zeniach. B ¾edzie to algorytm Fleury’ego. Jego dzia÷anie polega na tym, ·ze startuj ¾ac z dowolnego wierzcho÷ka, idziemy dowoln ¾a drog ¾a dbaj ¾ac jedynie by:

(16)

po drodze usuwa´c kraw¾edzie, przez które przeszli´smy oraz wierzcho÷ki izolowane, przez mosty przechodzi´c tylko wtedy, gdy nie ma innej mo·zliwo´sci.

Dla grafu G oraz jego wierzcho÷ka a zde…niujmy procedur ¾e:

Fleury(G; a)

x := a % wierzcho÷ek, do którego doszli´smy buduj ¾ac ´scie·zk¾e d0 := a % ´scie·zka, któr ¾a zbudowali´smy

V0 := VG % wierzcho÷ki pozosta÷e do odwiedzenia E0 := EG % kraw¾edzie pozosta÷e do odwiedzenia while E0 6= ; do

znajd´z kraw¾ed´z k = xy 2 E0tak ¾a, ·ze G0nfkg jest spójny lub x jest izolowany w G0nfkg d0 := d0ky

E0 := E0n fkg

if x jest izolowany w G0 thenV0 := V0n fxg x := y

d := d0

Twierdzenie 5. Niech G b ¾edzie grafem spójnym, w którym wszystkie wierzcho÷ki maj ¾a stopie´n parzysty oraz a dowolnym wierzcho÷kiem G. Wynikiem dzia÷ania procedury Fleury(G; a) jest cykl Eulera d.

Dowód. Zak÷adamy, ·ze G jest grafem spójnym, w którym wszystkie wierzcho÷ki maj ¾a stopie´n parzysty. Udowodnimy kolejno kilka faktów. Je·zeli nie zaznaczymy inaczej, sformu÷owania b ¾ed ¾a dotyczy´c pocz ¾atku i ko´nca dowolnej iteracji.

(1) G0 = (V0; E0)jest grafem (ko´nce kraw¾edzi z E0 nale·z ¾a do V0).

(17)

Na wej´sciu mamy G0 = G, czyli (1) zachodzi. Warunek jest niezmiennikiem p ¾etli, bo usuni ¾ecie z G0 kraw¾edzi i wierzcho÷ka izolowanego nie psuje warunku (1).

(2) G0 jest spójny.

Na starcie mamy G0 = G, czyli spójno´s´c wynika z za÷o·zenia. Warunek jest niezmi- ennikiem p ¾etli, bo z G0 usuwamy albo kraw¾ed´z, która nie jest mostem, albo kraw¾ed´z wraz z ko´ncem, który jest li´sciem (porównaj wniosek ??).

(3) Je´sli x = a, to wszystkie wierzcho÷ki w G0 maj ¾a stopie´n parzysty.

(3’) Je´sli x 6= a, to x i a s ¾a jedynymi wierzcho÷kami stopnia nieparzystego w G0:

Na wej´sciu mamy x = a. Warunek (3) wynika z za÷o·zenia o parzysto´sci stopni wszystkich wierzcho÷ków, natomiast implikacja (3’) jest prawdziwa, bo ma fa÷szywy poprzednik. Udowodnimy teraz, ·ze koniunkcja warunków (3) i (3’) jest niezmiennikiem p ¾etli. W tym celu za÷ó·zmy, ·ze na pocz ¾atku p ¾etli oba warunki zachodz ¾a. Poka·zemy, ze warunki zachodz ¾· a na ko´ncu p ¾etli. Zauwa·zmy, ·ze jedynymi wierzcho÷kami, których stopie´n zmienia si ¾e w trakcie iteracji s ¾a x i y oraz ·ze x przyjmuje now ¾a warto´s´c x y.

Je´sli na pocz ¾atku x = a i usuwamy p ¾etl ¾e k = xx, to na ko´ncu mamy x = a (x x) oraz deg x = deg a jest o 2 mniejszy ni·z na pocz ¾atku, czyli parzysty.

Je´sli na pocz ¾atku x = a i usuwamy kraw¾ed´z k = xy, dla y 6= x, to na ko´ncu mamy x 6= a (x y). Stopie´n wierzcho÷ka a jest o 1 mniejszy ni·z na pocz ¾atku, czyli nieparzysty. Stopie´n wierzcho÷ka x jest o 1 mniejszy ni·z stopie´n wierzcho÷ka y na pocz ¾atku, czyli te·z nieparzysty.

Je´sli na pocz ¾atku x 6= a i usuwamy kraw¾ed´z k = xa, to na ko´ncu mamy x = a (x a) oraz stopie´n wierzcho÷ka a jest o 1 mniejszy ni·z na pocz ¾atku, czyli parzysty. "Stary" wierzcho÷ek x ma stopie´n o 1 mniejszy ni·z na pocz ¾atku, czyli równie·z parzysty. Zatem w G0 nie ma wierzcho÷ków stopnia nieparzystego.

Je´sli na pocz ¾atku x 6= a i usuwamy p ¾etl ¾e k = xx, to na ko´ncu mamy x 6= a (x x). Stopie´n wierzchka a jest nieparzysty (nie zmieni÷si ¾e). Stopie´n wierzcho÷ka x jest o 2 mniejszy ni·z na pocz ¾atku, czyli te·z nieparzysty.

Je´sli na pocz ¾atku x 6= a i usuwamy kraw¾ed´z k = xy, dla y =2 fa; xg, to na ko´ncu mamy x 6= a (x y). Stopie´n wierzcho÷ka a jest nieparzysty (nie zmieni÷si ¾e).

Stopie´n wierzcho÷ka x jest nieparzysty jako stopie´n wierzcho÷ka y zmniejszony o 1. Stopie´n "starego" wierzcho÷ka x te·z zmniejszy÷si ¾e o 1, czyli jest parzysty.

Ostatecznie jedynymi wierzcho÷kami stopnia nieparzystego s ¾a a i x.

Tak wi ¾ec koniunkcja warunków (3) i (3’) jest niezmiennikiem p ¾etli.

(4) Je´sli E0 6= ;, to mo·zna znale´z´c kraw¾ed´z k = xy 2 E0 tak ¾a, ·ze G0n fkg jest spójny lub x jest izolowany w G0n fkg.

Poniewa·z G0 jest spójny i niepusty, wi ¾ec degG0x > 0. Rozpatrzmy przypadki.

degG0x = 1.

Niech k = xy b ¾edzie jedyn ¾a kraw¾edzi ¾a w G0, której ko´ncem jest x. Wtedy x jest wierzcho÷kiem izolowanym w G0n fkg, czyli zachodzi (4).

degG0x > 1.

Poka·zemy, ·ze istnieje kraw¾ed´z k incydentna z x taka, ·ze G0n fkg jest spójny. W

(18)

tym celu wystarczy pokaza´c, ·ze w´sród kraw¾edzi incydentnych z x, jest co najwy·zej jeden most. Przypu´s´cmy nie wprost, ·ze istniej ¾a wierzcho÷ki y 6= z, dla których kraw¾edzie k = xy i l = xz s ¾a mostami.

W gra…e H = G0n fk; lg nie istnieje ´scie·zka ÷¾acz ¾aca y i z (w przeciwnym razie k i lnie by÷yby mostami). Wierzcho÷ek a nie mo·ze zatem nale·ze´c do obu sk÷adowych Hy i Hz jednocze´snie. Przyjmijmy, ·ze a =2 Hy (je´sli a =2 Hz, dowód jest podobny).

Z (3) i (3’) wynika, ·ze jedynymi wierzcho÷kami nieparzystego stopnia w G0 mog ¾a by´c a, x i w konsekwencji jedynymi wierzcho÷kami nieparzystego stopnia w H mog ¾a by´c a, x, y, z. Poniewa·z y 6= x i y 6= a wi¾ec degG0y jest liczb ¾a parzyst ¾a, czyli degHyjest liczb ¾a nieparzyst ¾a. 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´sciskach d÷oni. Otrzymana sprzeczno´s´c dowodzi, ·ze (4) zachodzi równie·z w tym przypadku.

(5) d0 jest poprawnie zde…niowan ¾a ´scie·zk ¾a o ko´ncu x.

Na wej´sciu mamy d0 = a = x, czyli d0 jest ´scie·zk ¾a trywialn ¾a o ko´ncu x. W p ¾etli do d0 dodajemy kraw¾ed´z k = xy i wierzcho÷ek y, czyli otrzymujemy ´scie·zk¾e o ko´ncu y. Poniewa·z w ostatniej instrukcji p ¾etli w x wstawiamy y, wi ¾ec warunek (5) jest niezmiennikiem p ¾etli.

(6) d0 jest ´scie·zk ¾a prost ¾a.

Na wej´sciu, czyli dla d0 = a, warunek (6) jest oczywisty. Poniewa·z kraw¾ed´z k dodawana do d0 jest wybierana spo´sród tych, które nie nale·z ¾a do d0, wi ¾ec (6) jest niezmiennikiem p ¾etli.

(7) Procedura zatrzyma si ¾e.

W ka·zdej iteracji usuwamy z E0 jedn ¾a kraw¾ed´z. Teza wynika wi ¾ec ze sko´nczono´sci EG.

(8) d jest cyklem Eulera.

Po wyj´sciu z p ¾etli mamy G0 = ;, czyli ´scie·zka prosta d = d0 zawiera wszystkie kraw¾edzie grafu G. Ponadto mamy wtedy degG0a = degG0x = 0. Z (3) i (3’) wnioskujemy wi ¾ec, ·ze x = a, czyli ´scie·zka d jest zamkni ¾eta.

Ko´nczy to dowód twierdzenia.

Natychmiastowym wnioskiem z udowodnionego twierdzenia oraz twierdzenia 4 jest za- powiedziana wcze´sniej charakteryzacja spójnych grafów eulerowskich.

Twierdzenie 6 (Eulera). Graf spójny posiada cykl Eulera wtedy i tylko wtedy, gdy wszystkie jego wierzcho÷ki s ¾a stopnia parzystego.

(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 kraw ¾edzie nale·za÷y do jednej sk÷adowej.

Twierdzenie 7. (1) Je·zeli w gra…e G istnieje´scie·zka Eulera ÷¾acz ¾aca wierzcho÷ki a i b, to a, b s ¾a jedynymi wierzcho÷kami stopnia nieparzystego.

(2) Je·zeli w gra…e spójnym G istniej ¾a dok÷adnie dwa wierzcho÷ki stopnia nieparzystego, to w G istnieje ´scie·zka Eulera ÷¾acz ¾aca te wierzcho÷ki.

Dowód. (1) Niech d = a : : : b b ¾edzie ´scie·zk ¾a Eulera. Dodaj ¾ac do grafu G kraw¾ed´z k = ab dostajemy graf G0 = G[ fkg posiadaj ¾acy cykl Eulera a : : : bka. Z twierdzenia 4 wynika, ·ze wszystkie wierzcho÷ki grafu G0 maj ¾a stopie´n parzysty. Zatem po usuni ¾eciu kraw¾edzi k, jej ko´nce a, b b ¾ed ¾a jedynymi wierzcho÷kami stopnia nieparzystego w G.

(2) Za÷ó·zmy, ·ze a i b s ¾a jedynymi wierzcho÷kami stopnia nieparzystego w gra…e spójnym G. Dodaj ¾ac do G kraw¾ed´z k = ab dostajemy graf G0 = G[fkg o wierzcho÷kach stopnia parzystego. Z twierdenia Eulera wynika istnienie cyklu Eulera w G0. Usuwaj ¾ac z niego kraw¾ed´z k dostajemy ´scie·zk¾e Eulera w G.

Stosuj ¾ac chwyt z dodaniem kraw¾edzi, mo·zna pokaza´c, ·ze algorytm Fleury’ego dzia÷a równie·z w grafach spójnych maj ¾acych dwa wierzcho÷ki stopnia nieparzystego. Nale·zy jedynie jako wierzcho÷ek startowy wybra´c jeden z tych wierzcho÷ków.

Twierdzenie 8. Niech G b ¾edzie grafem spójnym posiadaj ¾acym dwa wierzcho÷ki stopnia nieparzys- tego a i b. Wynikiem dzia÷ania procedury Fleury(G; a) jest ´scie·zka Eulera d ÷¾acz ¾aca a z b.

Cwiczenie 24.´ Udowodni´c ostatnie twierdzenie.

Cwiczenie 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 pocz ¾atek i ponumerowa´c linie w kolejno´sci rysowania.

1. 2. 3. 4. 5.

Cwiczenie 26.´ Czy mrówka mo·ze przej´s´c wzd÷u·z wszystkich kraw ¾edzi bry÷y A i wróci´c do punktu wyj´scia, nie przechodz ¾ac ·zadnej kraw ¾edzi dwa razy?

(1) A - czworo´scian, (2) A - sze´scian,

(20)

(3) A - o´smio´scian, (4) A - dwunasto´scian, (5) A - dwudziesto´scian.

Cwiczenie 27.´ Czy kostki domina mo·zna u÷o·zy´c w zamkni ¾et ¾a ÷aman ¾a, tak by s ¾asiednie kostki styka÷y si ¾e kwadratami o tych samych numerach?

Cwiczenie 28.´ Sprawdzi´c dla jakich warto´sci n; m 2 N poni·zsze grafy s ¾a eulerowskie lub pó÷eulerowskie.

(1) Graf pe÷ny Kn.

(2) Pe÷ny graf dwudzielny Knm.

Cwiczenie 29.´ Sprawdzi´c czy poni·zsze grafy s ¾a eulerowskie lub pó÷eulerowskie. Je·zeli s ¾a, to znale´z´c cykl Eulera lub ´scie·zk ¾e Eulera (wskaza´c pocz ¾atek i ponumerowa´c kraw ¾edzie).

1. 2. 3.

4. 5.

Cwiczenie 30.´ Czy mo·zna obej´s´c ca÷y dom przechodz ¾ac przez ka·zde drzwi dok÷adnie jeden raz? Jaka b ¾edzie odpowied´z, je´sli zamkniemy drzwi mi ¾edzy du·zymi pokojami?

Cwiczenie 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)?

(21)

(2) Rozwi ¾aza´c zadanie zast ¾epuj ¾ac szachownic ¾e rozmiaru 8 8, szachownic ¾a n n, n 2 N.

Cwiczenie 32.´ Niech G b ¾edzie 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´smy si ¾e ´scie·zkami prostymi zawieraj ¾acymi wszystkie kraw¾edzie grafu. Rozwa·zmy teraz problem istnienia w gra…e zamkni ¾etej ´scie·zki prostej przechodz ¾acej dok÷adnie jeden raz przez ka·zdy wierzcho÷ek grafu. Pocz ¾atki problemu pochodz ¾a od "÷amigówki Hamiltona", tzn.

od rozwa·za´n sir Williama Hamiltona dotycz ¾acych istnienia takiej ´scie·zki w gra…e dwunasto´s- cianu (1856).

Cyklem Hamiltona w gra…e nazywamy cykl zawieraj ¾acy wszystkie wierzcho÷ki grafu.

Graf posiadaj ¾acy cykl Hamiltona nazywamy grafem hamiltonowskim. ´Scie·zk ¾a Hamil- tona nazywamy ´scie·zk¾e prost ¾a bez powtarzaj ¾acych si ¾e wierzcho÷ków zawieraj ¾ac ¾a wszystkie wierzcho÷ki grafu. Cykl Hamiltona jest, oczywi´scie, ´scie·zk ¾a Hamiltona. Zachodzi te·z

W÷asno´s´c 10. (1) Graf pe÷ny Kn jest hamiltonowski dla n 3.

(2) Dodanie kraw ¾edzi do grafu hamiltonowskiego daje graf hamiltonowski.

Rozstrzygni ¾ecie czy graf jest hamiltonowski jest o wiele trudniejsze ni·z sprawdzenie czy jest eulerowski. Nie znaleziono do tej pory sensownej charakteryzacji grafów hamiltonows- kich. Musimy wi ¾ec korzysta´c z wyników cz ¾e´sciowych. Zaczniemy od warunków koniecznych, które ze swojej istoty maj ¾a "charakter negatywny", tzn. s ¾a na ogó÷wykorzystywane w rozu- mowaniach typu

"Je´sli graf nie spe÷nia warunku, to nie jest hamiltonowski"

Je´sli 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 nale·zy do tego cyklu, czyli musi mie´c stopie´n 2. Z kolei, je·zeli stopie´n wierzcho÷ka wynosi dok÷adnie 2, to obie incydentne z nim kraw¾edzie musz ¾a nale·ze´c do cyklu d. Zachodzi zatem

W÷asno´s´c 11. (1) Dowolny graf hamiltonowski jest spójny.

(2) W gra…e hamiltonowskim wszystkie wierzcho÷ki maj ¾a stopie´n 2.

(3) W gra…e hamiltonowskim wszystkie kraw ¾edzie wychodz ¾ace z wierzcho÷ków stopnia 2 nale·z ¾a do cyklu Hamiltona.

(22)

Poni·zszy 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 wierz- cho÷kami stopnia 2, czyli mia÷by 6 kraw¾edzi. Jest to niemo·zliwe, bo cykl o 5 wierzcho÷kach ma 5 kraw¾edzi. W konsekwencji graf nie jest hamiltonowski.

Za÷ó·zmy, ·ze graf ma n 3 wierzcho÷ków. Wtedy ·zadna p ¾etla nie nale·zy do cyklu Hamil- tona. Ponadto, spo´sród kilku kraw¾edzi ÷¾acz ¾acych te same wierzcho÷ki, tylko jedna mo·ze nale·ze´c do cyklu Hamiltona. Wynika st ¾ad, ·ze w takim przypadku, usuni ¾ecie z grafu p ¾etli oraz kraw¾edzi wielokrotnych (poza jedn ¾a dla ka·zdej pary wierzcho÷ków) nie wp÷ywa na ist- nienie cyklu Hamiltona. Mamy zatem

W÷asno´s´c 12. Niech G b ¾edzie grafem o przynajmniej trzech wierzcho÷kach. Je·zeli graf G jest hamiltonowski, to hamiltonowski jest te·z graf powsta÷y przez usuni ¾ecie z G wszystkich p ¾etli oraz wszystkich kraw ¾edzi poza jedn ¾a dla ka·zdej pary wierzcho÷ków s ¾asiednich.

Znalezienie cyklu Hamiltona grafu po lewej stronie sprowadza si ¾e do znalezienia cyklu Hamiltona grafu po prawej stronie.

Cwiczenie 33.´ Sprawdzi´c, czy powy·zsze grafy s ¾a hamiltonowskie.

Kolejny warunek podamy w formie lu´znej uwagi, a nie formalnej w÷asno´sci. Cykl Hamiltona o n wierzcho÷kach ma n kraw¾edzi. Zauwa·zyli´smy jednak wy·zej, ·ze p ¾etle (gdy n > 1) i cz ¾e´s´c kraw¾edzi wielokrotnych nie wchodz ¾a do cyklu Hamiltona, czyli nie s ¾a to kraw¾edzie "istotne".

Podobnie wygl ¾ada sytucja w przypadku kraw¾edzi incydentnych z wierzcho÷kiem stopnia > 2.

Tylko dwie z tych kraw¾edzi mog ¾a si ¾e znale´z´c w cyklu Hamiltona, czyli wszystkie pozosta÷e nie s ¾a "istotne". Tak wi ¾ec

(23)

Graf hamiltonowski o n wierzcho÷kach powinien mie´c przynajmniej n kraw¾edzi "istot- nych".

Rozwa·zmy prawy graf z ostatniego przyk÷adu. Wierzcho÷ki le·z ¾ace na ´srodkach boków kwadratu maj ¾a stopie´n 3. Zatem po jednej kraw¾edzi incydentnej z ka·zdym z tych wierz- cho÷ków nie mo·ze znale´z´c si ¾e w cyklu Hamiltona. W gra…e jest zatem co najwy·zej 8 "istot- nych" kraw¾edzi. Poniewa·z graf ma 9 wierzcho÷ków, wi ¾ec nie mo·ze by´c hamiltonowski.

Bardzo prosty warunek konieczny istnienia cyklu lub ´scie·zki Hamiltona mo·zna sformu÷owa´c dla grafów dwudzielnych.

Twierdzenie 9. Niech G b ¾edzie grafem dwudzielnym oraz V = A [ B podzia÷em jego wierz- cho÷ków.

(1) Je·zeli w G istnieje ´scie·zka Hamiltona, to liczby jAj i jBj ró·zni ¾a si ¾e co najwy·zej o 1.

(2) Je·zeli G ma cykl Hamiltona, to jAj = jBj.

Dowód. Za÷ó·zmy, ·ze d = a1a2: : : an jest ´scie·zk ¾a Hamiltona w G. Mo·zemy przyj ¾a´c, ·ze a1 2 A (je´sli 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. St ¾ad

jAj jBj =

( 1 gdy n jest nieparzyste, 0 gdy n jest parzyste.

Ko´nczy to dowód (1). Za÷ó·zmy teraz, ·ze d jest cyklem Hamiltona, czyli an = a1. Wtedy A =fa1; a3; : : : ; an 2g oraz B = fa2; a4; : : : ; an 1g, czyli jAj = jBj.

Cwiczenie 34.´ Sprawdzi´c czy poni·zsze grafy s ¾a hamiltonowskie [posiadaj ¾a ´scie·zk ¾e Hamil- tona].

G1 G2 G3

G4 G5 G6

(24)

G7 (graf Petersena) G8 (graf Grötzscha)

Cwiczenie 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. B ¾ed ¾a one mia÷y posta´c:

"Je·zeli graf prosty ma du·zo kraw¾edzi, to jest hamiltonowski"

Twierdzenie 10 (Orego). Niech G b ¾edzie grafem prostym o n 3 wierzcho÷kach. Je·zeli (*) deg a + deg b n dla dowolnych nies ¾asiednich a, b,

to G jest hamiltonowski.

Dowód. Niech n = 3 oraz a, b b ¾ed ¾a nies ¾asiednimi wierzcho÷kami. Wtedy deg a 1i deg b 1, czyli

deg a + deg b 2 < n.

Poprzednik implikacji jest zatem fa÷szywy, czyli implikacja jest prawdziwa.

Przypu´s´cmy nie wprost, ·ze twierdzenie jest fa÷szywe. Oznacza to, ·ze dla pewnej liczby n 4 istnieje niehamiltonowski graf prosty o n wierzcho÷kach spe÷niaj ¾acy (*). Spo´sród grafów o tej w÷asno´sci wybierzmy ten, który ma najwi ¾ecej kraw¾edzi i nazwijmy go G. Dodaj ¾ac do G kraw¾ed´z k ÷¾acz ¾ac ¾a jakiekolwiek nies ¾asiednie wierzcho÷ki, dostajemy graf hamiltonowski.

Usuwaj ¾ac z cyklu Hamiltona dodan ¾a wcze´sniej kraw¾ed´z k otrzymujemy zatem otwart ¾a ´scie·zk¾e Hamiltona a1a2: : : an w G. Poniewa·z G nie jest hamiltonowski, wi ¾ec wierzcho÷ki a1 i an nie s ¾a s ¾asiednie i w konsekwencji

deg a1+ deg an n.

Poka·zemy, ·ze istnieje j 2 f3; : : : ; n 1g takie, ·ze a1aj, aj 1an2 EG.

Przyjmijmy

A =fi; a1ai 2 EGg oraz B =fi; ai 1an2 EGg . Wida´c, ·ze A [ B f2; : : : ; ng, czyli jA [ Bj n 1. St ¾ad

jA \ Bj = jAj + jBj jA [ Bj = deg a1+ deg an jA [ Bj n (n 1) = 1

(25)

i w konsekwencji istnieje j 2 A \ B. Poniewa·z a1an 2 E= G, wi ¾ec n =2 A oraz 2 =2 B. Zatem 3 j n 1, co oznacza, ·ze

a1: : : aj 1an: : : aja1

jest cyklem Hamiltona wbrew za÷o·zeniu. Otrzymana sprzeczno´s´c ko´nczy dowód.

Natychmiastow ¾a konsekwencj ¾a Twierdzenia Orego jest

Twierdzenie 11 (Diraca). Niech G b ¾edzie grafem prostym o n 3 wierzcho÷kach. Je·zeli deg a n

2 dla dowolnego wierzcho÷ka a, to G jest hamiltonowski.

Cwiczenie 36.´ Udowodni´c Twierdzenie Diraca.

Twierdzenie 12. Je·zeli graf prosty o n wierzcho÷kach ma wi ¾ecej ni·z 12(n 1) (n 2) + 1 kraw ¾edzi, to jest hamiltonowski.

Cwiczenie 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

2(n 1) (n 2) + 1 kraw ¾edziach.

Warunki podane w trzech ostatnich twierdzeniach nie s ¾a warunkami koniecznymi. Graf dwunastosto´scianu ma n = 20 wierzcho÷ków, 30 kraw¾edzi oraz wszystkie wierzcho÷ki maj ¾a stopie´n 3. Nie s ¾a wi ¾ec spe÷nione za÷o·zenia ·zadnego z rozwa·zanych twierdze´n mimo, ·ze graf jest hamiltonowski. Podobnie graf cykliczny Cn jest hamiltonowski, a nie spe÷nia za÷o·ze´n zadnego z twierdze´n dla n > 4.·

Cwiczenie 38.´ W grupie z÷o·zonej z 2n uczniów ka·zdy ma co najmniej n przyjació÷. Pokaza´c,

·ze mo·zna ich ustawi´c parami, tak by ka·zdy ucze´n trzyma÷za r ¾ek ¾a przyjaciela.

Cytaty

Powiązane dokumenty

Je´sli 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 nale· zy do tego cyklu, czyli

Graf dwudzielny to taki, którego wierzchołki da si e podzielić na dwa zbiory A i B takie, że , pomi edzy dwoma wierzchołkami z tego samego zbioru nie ma kraw , edzi.. Jeśli graf G

10. Ile wynosi liczba chromatyczna grafu otrzymanego z K n przez a) usuni¸ecie jednej kraw¸edzi, b) usuni¸ecie dw´ och s¸ asiednich kraw¸edzi, c) usuni¸ecie dw´ och nies¸

• Pami¦tajmy, dªugo±¢ stringu to jest ilo±¢ jego znaków, a rozmiar stringu (jako tablicy) jest zawsze o 1 wi¦kszy.... • Je»eli string inicjalizujemy od razu w momencie

Kodowanie wielomianowe jest

Wykaza´ c, ˙ze je´ sli endomorfizm samosprze , ˙zony przestrzeni C n jest nilpotentny, to jest zerowy.... Wielomian ten ma ca

W grafie podanym na rysunku zaznaczono jego

[r]