Cykle Eulera i Hamiltona
Na pierwszym wyk÷adzie pojawi÷si ¾e schemat mostów na rzece Pregole w Królewcu.
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 1. 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
1
parzysty.
ak1bk2dk3ek4f k5gk6ek7dk8ck9ck10a
Udowodnili´smy
Twierdzenie 1. Wszystkie wierzcho÷ki grafu eulerowskiego maj ¾a stopie´n parzysty.
Twierdzenie 1 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:
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 2. 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).
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).
degG
0x > 1.
Poka·zemy, ·ze istnieje kraw¾ed´z k incydentna z x taka, ·ze G0n fkg jest spójny. W 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 1 jest za- powiedziana wcze´sniej charakteryzacja spójnych grafów eulerowskich.
Twierdzenie 3 (Eulera). Graf spójny posiada cykl Eulera wtedy i tylko wtedy, gdy wszystkie jego wierzcho÷ki s ¾a stopnia parzystego.
Uwaga 2. 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 4. (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 1 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 5. 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 1.´ Udowodni´c ostatnie twierdzenie.
Cwiczenie 2.´ 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 3.´ 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, (3) A - o´smio´scian, (4) A - dwunasto´scian, (5) A - dwudziesto´scian.
Cwiczenie 4.´ 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 5.´ 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 6.´ 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 7.´ 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 8.´ (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)?
(2) Rozwi ¾aza´c zadanie zast ¾epuj ¾ac szachownic ¾e rozmiaru 8 8, szachownic ¾a n n, n 2 N.
Cwiczenie 9.´ 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 1. (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 2. (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.
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 3. 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 10.´ 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
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 6. 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 11.´ Sprawdzi´c czy poni·zsze grafy s ¾a hamiltonowskie [posiadaj ¾a ´scie·zk ¾e Hamil- tona].
G1 G2 G3
G4 G5 G6
G7 (graf Petersena) G8 (graf Grötzscha)
Cwiczenie 12.´ 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 7 (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
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 8 (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 13.´ Udowodni´c Twierdzenie Diraca.
Twierdzenie 9. 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 14.´ (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 15.´ 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.