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