Grafy i Rekurencje

download Grafy i Rekurencje

of 100

Transcript of Grafy i Rekurencje

- Grafy i rekurencje - 1 Grafy i Rekurencje Janusz Marecki- Grafy i rekurencje - 2 Spis treci Rozdzia I Koncepcja grafu ___________________________________________________ 7 I. 1 Czym jest graf ______________________________________________________________ 7 I. 2 Relacje zwizane z grafem ____________________________________________________ 8 I. 3 Wierzchoki grafu ___________________________________________________________ 9 I. 4 Pod-grafy _________________________________________________________________ 10 I. 5 Orientacja grafu ___________________________________________________________ 11 I. 6 Szczeglne przypadki grafw_________________________________________________ 13 I. 7 Izomorfizm grafw _________________________________________________________ 15 Rozdzia II Spjno grafu___________________________________________________ 16 II. 1 acuchy w grafie _________________________________________________________ 16 II. 2 Grafy spjne______________________________________________________________ 17 II. 3 Drzewa __________________________________________________________________ 21 II. 4 Drzewa waciwe __________________________________________________________ 25 II. 5 Grafy silnie spjne_________________________________________________________ 26 II. 6 Porzdek grafu____________________________________________________________ 28 II. 7 Rozkad grafu_____________________________________________________________ 29 Rozdzia III Algorytmy grafowe_______________________________________________ 31 III. 1 Przeszukiwanie grafu______________________________________________________ 31 III. 2 Klasy silnie spjne ________________________________________________________ 33 III. 3 Maksymalne skojarzenia___________________________________________________ 36 III. 4 Najkrtsze cieki z jednym rdem_________________________________________ 39 III. 5 Najkrtsze cieki z wieloma rdami _______________________________________ 44 III. 6 Drzewa rozpinajce _______________________________________________________ 47 Rozdzia IV Algorytmy numeracji _____________________________________________ 50 IV. 1 Sowa ___________________________________________________________________ 50 IV. 2 Permutacje ______________________________________________________________ 51 IV. 3 Kod Graya ______________________________________________________________ 54 Rozdzia V Funkcje rekursywne______________________________________________ 58 V. 1 Funkcje rekursywnie prymitywne ____________________________________________ 58 V. 2 Konstrukcja funkcji rekursywnie prymitywnych________________________________ 60 V. 3 Kodowanie cigw_________________________________________________________ 63 V. 4 Rekurencja nie prymitywna _________________________________________________ 66 V. 5 Rodzaje funkcje rekursywnych ______________________________________________ 67 V. 6 Teza Churcha ____________________________________________________________ 68 Rozdzia VI Rekursywno i obliczalno _______________________________________ 69 - Grafy i rekurencje - 3VI. 1 Funkcje rekursywne i Turing obliczalne_____________________________________ 69 VI. 2 Rekursywno funkcji Turing obliczalnych __________________________________ 70 VI. 3 Abstrakcja funkcjonalna ___________________________________________________ 73 VI. 4 Jzyk term____________________________________________________________ 76 VI. 5 Obliczenia na termach _________________________________________________ 77 Rozdzia VII Rwnania rekurencyjne __________________________________________ 81 VII. 1 Zastosowanie rwna rekurencyjnych_______________________________________ 81 VII. 2 Rwnania rekurencyjne liniowe ____________________________________________ 82 VII. 3 Rekurencyjne przepoowienie ______________________________________________ 84 VII. 4 Rwnania rekurencyjne liniowe dowolnego stopnia ____________________________ 86 Rozdzia VIII Przykadowe procesy rekurencyjne________________________________ 90 VIII. 1 Stan rejestru przesuwajcego _____________________________________________ 90 VIII. 2 Stan procesu montau____________________________________________________ 92 VIII. 3 Fundusz emerytalny _____________________________________________________ 95 VIII. 4 Fundusz amortyzacji_____________________________________________________ 96 VIII. 5 Kredyty ratalne _________________________________________________________ 97 - Grafy i rekurencje - 4 Spis rysunkw Rysunek 1 Przykadowy graf ________________________________________________________________ 7 Rysunek 2 Grafy kompletne stopnia 1, 2, 3, 4__________________________________________________ 10 Rysunek 3 Grafy wygenerowane przez zbir wierzchokw i krawdzi ______________________________ 11 Rysunek 4 Przykadowy graf zorientowany____________________________________________________ 12 Rysunek 5 Grafy: planarny i nieplanarny_____________________________________________________ 14 Rysunek 6 Graf dwuczciowy przedstawiony na dwa rne sposoby _______________________________ 14 Rysunek 7 Graf K 3,3 nie bdcy grafem planarnym ____________________________________________ 15 Rysunek 8 Dwa grafy izomorficzne__________________________________________________________ 15 Rysunek 9 Graf nieskierowany posiadajcy acuch ____________________________________________ 16 Rysunek 10 Punkt artykulacji w grafie _______________________________________________________ 18 Rysunek 11 Graf podatny na lemat o grafach spjnych __________________________________________ 18 Rysunek 12 Cykl i acuch w grafie _________________________________________________________ 20 Rysunek 13 Graf, las, drzewa ______________________________________________________________ 21 Rysunek 14 Drzewo rozpinajce graf ________________________________________________________ 23 Rysunek 15 Przodkowie, potomkowie, koa i korzenie ___________________________________________ 24 Rysunek 16 Graf podstawowy i graf zredukowany ______________________________________________ 27 Rysunek 17 Graf i jego domknicie przechodnie _______________________________________________ 27 Rysunek 18 Rozkad grafu_________________________________________________________________ 30 Rysunek 19 Las oparty na grafie G__________________________________________________________ 33 Rysunek 20 Proces wyznaczania komponentw silnie spjnych ____________________________________ 36 Rysunek 21 Graf dwudzielny i graf skojarze__________________________________________________ 37 Rysunek 22 Graf przepyww i cieka powikszajca___________________________________________ 39 Rysunek 23 Rezultat dziaania algorytmu Forda Fulkersona ____________________________________ 39 Rysunek 24 Znajdowanie wierzchoka minimalnego_____________________________________________ 40 Rysunek 25 Dziaanie algorytmu Dijkstry_____________________________________________________ 41 Rysunek 26 Niewykonalno algorytmu Dijkstry _______________________________________________ 42 Rysunek 27 Graf dla algorytmu Floyda - Warshalla ____________________________________________ 45 Rysunek 28 Podzia cieki dla algorytmu Floyda Warshalla ____________________________________ 47 Rysunek 29 Numerowanie permutacji________________________________________________________ 53 Rysunek 30 Drzewo wywoa rekurencyjnych przy generowaniu permutacji__________________________ 53 Rysunek 31 Kod Gray'a i cykl Hamiltona _____________________________________________________ 54 Rysunek 32 Uporzdkowane drzewo podzbiorw_______________________________________________ 55 Rysunek 33 Podzbiory i cykl Hamiltona ______________________________________________________ 56 Rysunek 34 Pokrycie paszczyzny kolejnymi liczbami naturalnymi _________________________________ 64 Rysunek 35 Kodowanie maszyny Turinga_____________________________________________________ 71 Rysunek 36 Proces arytmetyzacji ___________________________________________________________ 73 Rysunek 37 Drzewa reprezentujce termy ____________________________________________________ 78 Rysunek 38 Zmienne wolne i poczone ______________________________________________________ 79 Rysunek 39 Zmiana nazw zmiennych w drzewie ________________________________________________ 79 Rysunek 40 Przerzutnik danych ____________________________________________________________ 90 Rysunek 41 Rejestr przesuwajcy ___________________________________________________________ 90 Rysunek 42 Przykadowa modyfikacja rejestru przesuwajcego ___________________________________ 91 Rysunek 43 Linia montaowa ______________________________________________________________ 92 - Grafy i rekurencje - 5Sowo wstpne Napocztkuchciabympodzikowawszystkimczytelnikom, ktrzy zdecydowali si poszerza swoj wiedz w dziedzinie grafw i rekurencji przywykorzystaniutegowanieskryptu.Narynkujestwieledoskonaych pozycji,ktreporuszajprzedstawiontematyk,jednaksoneczstobardzo obszerne i rzadko ograniczone tylko do grafw i rekurencji. Zawarta w tym skrypcie teoria grafw jak rwnie wnikliwe wyjanienie istotyrekurencjipozwalanazrozumieniecaocimateriaubezkoniecznoci korzystania z innych pozycji ksikowych z dziedziny informatyki. Czym s Grafy i rekurencje? wiat,wktrymsiznajdujemy,pomimoswojejzoonocii niezwykocidasijednakprzedstawinawieleinteresujcychsposobw. Wprowadzajc bardzo oglny podzia mona doszuka si w nim: Obiektw Wasnoci Relacji Tenpowyszypodziamoebyzpowodzeniemreprezentowanyprzez odpowiedniegrafy,stdtakwielkieznaczenietejstrukturydanychw informatyce. Kady wiat nieustannie si jednak zmienia, std by by on dobrze reprezentowanyprzezgrafy,onesamemuszpodlegazmianom.Czsto zmiany te s wynikiem dziaania algorytmw. Zaalgorytmwduymuproszczeniumoemyuwaaprzepis informatyczny,ktrynapodstawiedanychwejciowychzwracanamdane wyjciowe bdce rezultatami oblicze. Moemy sobie wyobrazi graf, ktrego wierzchokibdzbioramidanych,natomiastczcejekrawdzie algorytmami.Takigrafbdziewycinkiemrzeczywistocimwicymnam,e grafy i algorytmy s ze sob cile powizane. Gdy grafy zawieraj ptle, zaczynamy mwi o rekurencji. Algorytmyrekurencyjneczstonajlepiejodzwierciedlajtrudnedo analizyproblemy,stdichpopularnowrodowiskuprogramistw.Mimoi napierwszyrzutokatrudnooszacowaichefektywnoipoprawno,istniej odpowiednie metody, ktre pozwalaj nam to zrobi. - Grafy i rekurencje - 6 Dla kogo jest ten skrypt? Skrypt Grafy i rekurencje jest przeznaczony dla studentw informatyki, ktrzyzaczynajpoznawaalgorytmykomputeroweisposobyich zastosowania.Stanowiondoskonaepodoeprzygotowawczedoinnych przedmiotwtakichjakbadaniaoperacyjne,bazydanych,siecikomputerowe, analiza algorytmw, zagadnienia sztucznej inteligencji itp.Czytelnik pracujcy z tym skryptem powinien jednak posiada znajomo przynajmniejjednegojzykaprogramowania,wceluzrozumieniadziaania algorytmwiumiejtnociprzetwarzaniajegorezultatw.Algorytmy przedstawionesnajczciejwpseudojzykuinformatycznym,ktrybazuje niekiedynabardziejskomplikowanychstrukturachdanych,stdwskazanejest posiadanieprzezczytelnikagotowychbibliotekzzaimplementowanymi podstawowymi strukturami danych. Jak czyta ten skrypt? Takjakwspomnianonapocztku,byzrozumieprzedstawionew skrypciezagadnienia,niemakoniecznocikorzystaniazinnychksiek informatycznych.WartojednakzapoznasizrozdziaemI,ktrystanowi wprowadzenie do tematyki grafw. CzytanierozdziauIII,wktrymzaprezentowanezostaypodstawowe algorytmy operujce na grafach powinno by poprzedzone zaznajomieniem si z rozdziaem II, ktry omawia spjno grafw. RozdziaIVmoebyczytanyoddzielnie,podwarunkiem,eczytelnik potrafibudowaianalizowapodstawowealgorytmyrekurencyjne.W przeciwnym wypadku zaleca si zapoznanie z rozdziaem V.W rozdziale V powiconym funkcjom rekursywnym znajdujemy genez dzisiejszychalgorytmw,czylinajbardziejprymitywnefunkcjeinformatyczne, ktreswykonywanebezporednioprzezprocesor.Rozdziatenmoeby czytany oddzielnie. RozdziaVIskierowanyjestgwniedoczytelnikw,ktrzydobrze opanowalijusztukbudowaniaalgorytmwrekurencyjnychizaleyimna pogbieniu teoretycznej wiedzy z tej dziedziny. RozdziaVII,powiconyrwnaniomrekurencyjnymmoebyczytany oddzielnie,jednakzalecanajestpodstawowaznajomoaparatu matematycznego pod ktem wielomianw i szeregw potgowych. W rozdziale VIII przedstawione zostay problemy rekurencyjne, z ktrymi moemy si spotka na co dzie, dlatego moe od by czytany oddzielnie. - Grafy i rekurencje - 7 Rozdzia I Koncepcja grafu I. 1Czym jest graf Jelimamydoczynieniazeschematamiobrazujcymirnorodne zjawiskaiposzukujemymetodyprezentacjitychschematw,wykorzystanie grafwokazujesiniezastpione.Otaczajcynaswiatczstodasipodzieli na obiekty i na zachodzce pomidzy nimi zalenoci, co dokadnie odpowiada wierzchokom grafu, oraz poczeniom midzy wierzchokami. KadygrafGjestpar(X,E)dwchrozcznychzbiorwskoczonych: X={x1, x2, ..., xn} gdzie n > 0 oraz E={e1, e2, ..., em} gdzie m > 0, przy czym dla kadegoieijestparelementwzezbioruX.ZbirXnazywamyzbiorem wierzchokw,natomiastEzbioremkrawdzi.StopiegrafuGjestilocijego wierzchokw.Aby unikn nieporozumie, bdziemy uywali oznacze X(G)oraz E(X), by oznaczy odpowiednio zbir wierzchokw oraz zbir wierzchokw grafu G. W niektrych publikacjach mona te spotka oznaczenia n(G) i m(G). Przykad 1 RozpatrzmyzbirX={1,2,3,4}orazE={a,b,c,d}gdzie:a={1,2}, b={2,3}, c={3,1}, d={1,3}, e={1,4}, f={4,4}. Kada krawd (tutaj maa litera alfabetu} jest par dwch wierzchokw. Tak zdefiniowany graf obrazuje rysunek 1. 1234abcdef Rysunek 1 Przykadowy graf - Grafy i rekurencje - 8 Gdy mamy dan krawd e={x, y} lub stosujc inn notacj: e=xy, mwi si,exiyskracamie.Ponadtostosujesioznaczenie:eczyxiy,lube jest krawdzi o kracach x i y. Wtedy, gdy x=y mwi si, e e jest ptl. Dwie krawdzie s zwane podobnymi, gdy maj takie same krace. Zbir krawdzipodobnychnazywanyjestkrawdzipowtrzon.Wpowyszym przykadzie f jest cyklem, natomiast d i c s krawdziami podobnymi. DEFINICJAGrafnazywamyprostym,gdynieposiadaptliorazzbioru krawdzi powtrzonych. W informatyce najwiksze zastosowanie ma analiza grafw prostych.

I. 2Relacje zwizane z grafem WierzchoekxXorazkrawdeEsnazywaneincydentnymijelix jestkraceme,moemyzatemzdefiniowarelacjXnadE,nazywanrelacj incydencji. Mona rwnie zamieni kolejno i rozwaa relacj E nad X. Dwawierzchokinazywamyssiadujcymi,gdysincydentneztsam krawdzi.WtensposbdefiniujesirelacjnazbiorzeX2 nazywanrelacj ssiedztwa.Zbir wierzchokw ssiadujcych z x jest nazywany zbiorem ssiadw x i oznaczany przez N(x). Wprowadzenierelacjiincydencjiorazrelacjissiedztwasugerujesposb przedstawieniagrafu.Wrzeczywistociprbynarysowanianakartcepapieru grafu duych rozmiarw mogyby zakoczy si niepowodzeniem. Gdy graf jest zdefiniowanyprzyuyciujednejzprzedstawionychrelacjimoemygo reprezentowa przez macierz odpowiadajc wybranej relacji. Macierz ssiedztwa ZkadymgrafemGstopnianutosamiasimacierznxn,A(G)=[aij], ktrej wiersze i kolumny s indeksowane przez kolejne wierzchoki. aij = ilo krawdzi o kracach xi i xj. Zauwaamyatwo,etakzdefiniowanamacierzjestsymetryczna,ponadtogdy grafjestprosty,wwczasnadiagonalimacierzyznajdujsi0,apozostae elementy nale do zbioru {0,1}. - Grafy i rekurencje - 9Macierz incydencji ZkadymgrafemGposiadajcymnwierzchokwimkrawdzi utosamiamy macierz n x m, B(G) = [bij] , gdzie wiersze indeksowane s przez kolejne wierzchoki ze zbioru X, natomiast kolumny, krawdziami ze zbioru E. bij = ilo przypadkw, gdy xi jest incydentny z bj. Widzimy, e bij{0, 1, 2} i e suma elementw w jednej kolumnie wynosi 2. Przykad 2 Z grafem z przykadu 1 utosamiamy nastpujce tabele: 1234aBcdef 101211101110 210102110000 321003011100 410014000012 A(G)B(G) Wformiemacierzowej,indeksujcwporzdkunaturalnymwierszeprzez 1,2,3,4 oraz kolumny przez a, b, c, d, e, f otrzymujemy: |||||.|

\|=1 0 0 10 0 1 20 1 0 11 2 1 0) (G A|||||.|

\|=200010010 0 0 01 1 1 00 0 1 11 1 0 1) (G B I. 3Wierzchoki grafu DEFINICJAStopniemwierzchokax,d(x)nazywamyilokrawdzi incydentnych z x.Ptla wystpujca w wierzchoku liczona podwjnie Ponadto oznaczamy: (G) = min {d(x) | xX} (G) = Max {d(x) | xX} - Grafy i rekurencje - 10 Wprzypadku,gdy(G)=(G)=k,grafjestnazywanyk-regularnym. Zauwamy,egdyGjestgrafemprostym,wwczas(G)n-1orazdla kadego x, |N(x)| = d(x). Grafprosty,ktregowszystkiewierzchokisstopnian-1jestnazywany kompletnym.NazywamygoKn.WkonsekwencjikadedwawierzchokiKns ssiadujce.Mamywic:Kn=(X,P2(X))gdzie|X|=n.K3jestnazywany trjktem. Na rysunku nr 2 przedstawione s grafy kompletne stopnia 4: K K K K12 3 4 Rysunek 2 Grafy kompletne stopnia 1, 2, 3, 4 Wierzchoekx,takied(x)=0nazywamywolnym.Wierzchoekxjest doczepiony,gdyd(x)=1.Krawdzidoczepionnazywamykrawd incydentn z wierzchokiem kracowym. DEFINICJA Dopenieniem grafu G = (X, E) nazywamy graf G = (X, P2(X) E). I. 4Pod-grafy WgrafieG=(X,E)wyrnimydwapodzbiory:YXorazFE. Mwimy,e H = (Y, F) jest pod-grafem G, gdy eF krace e s w Y. Gdy F jest utworzony z wszystkich krawdzi ze zbioru E, ktrych krace swY,otrzymanygrafjestnazywanypod-grafemwygenerowanymprzezY. Nazywamy go Gy, gdy jest on jednoznacznie zdefiniowany przez Y.Wpodobnysposbpod-grafemwygenerowanymprzezF,oznaczanym G[F],nazywamypod-grafG,ktregozbioremkrawdzijestF,aktregozbir wierzchokw jest utworzony z kracw krawdzi nalecych do F. - Grafy i rekurencje - 11Przykad 3 Rozpatrzmygrafpokazanynaprzykadzie1.Narysunku3przedstawione zostay pod-grafy wygenerowane przez S={1,3,4} oraz F={a, b, c}: 1 3 4132fecdcabsG[F] G Rysunek 3 Grafy wygenerowane przez zbir wierzchokw i krawdzi DEFINICJAKlik nazywamy graf posiadajcy taki zbir wierzchokw, z ktrych kade dwa ze sob ssiaduj. W grafie prostym, klika generuje zawsze graf kompletny. Graf przeciwny do kliki definiuje si nastpujco: DEFINICJA Klatk nazywamy Graf, ktrego adne dwa wierzchoki nie s ze sob poczone: Inaczejmwic, klatka jest generowanaprzez pod-graf ktry nie posiada krawdzi. W szczeglnoci kady wierzchoek klatki nie posiada ptli. I. 5Orientacja grafu GrafG=(X,E)jestzorientowany,gdykadakrawdeEjest uporzdkowanym zbiorem dwch wierzchokw. Monarwniepowiedzie,eorientacjagrafuzamieniakadkrawd wuk,ktryjestparwierzchokw.Pierwszymelementemtejparyjest wierzchoek pocztkowy, a drugim wierzchoek kocowy. Kady uk oznacza si przez (x, y) lub xy. Przykad 4 Dodajmyorientacjdografuzprzykadu1.Przypomnijmy,e X={1,2,3,4},E={a,b,c,d,e,f},gdzie:a=(1,2),b=(2,3),c=(3,1),d=(1,3), e=(1,4), f= (4,4). Ten zorientowany graf pokazany jest na rysunku nr 4. - Grafy i rekurencje - 12 1 234abcdef Rysunek 4 Przykadowy graf zorientowany Grafzorientowanybezcyklunazywamyprostym,gdypomidzydwoma dowolnymi wierzchokami wystpuje co najwyej jeden uk. Niechbdziedanywierzchoekx.Mwimy,eyjestnastpnikiem (poprzednikiem)x,gdyxy(yx)jestukiem.Zbiory:nastpnikworaz poprzednikw x s odpowiednio zapisywane: N+(x) i N-(x). Oczywistym jest, e N(x) = N+(x) N-(x). Relacja incydencji oraz ssiedztwa jest tutaj zdefiniowana tak samo jak w przypadkugrafwniezorientowanych.Jedynarnicawystpujewmacierzy incydencji, ktre elementy przyjmuj wartoci: =h przypadkac innych wa koncowym iem wierzcholk jest x gdya m poczatkowy iem wierzcholk jest x gdybj ij iij011 Tabelassiedztwaiincydencjigrafuzorientowanegozrysunkunr4 przedstawia si nastpujco: 1234abcdEf 10111110-1110 200102-110000 3100030-11-100 4000140000-10 A(G)B(G) - Grafy i rekurencje - 13I. 6Szczeglne przypadki grafw Wwielualgorytmachopartychnagrafachwykorzystujesiich szczeglne przypadki, ktre s zawsze zaweniem klasy wszystkich grafw do pewnego niekoniecznie skoczonego podzbioru. S to np.: I. 6. 1Grafy bez ptli StografyG=(E,V),dlaktrychprawdziwajestregua:xE(x,x)V. W reprezentacji macierzowej, grafy te bd miay na diagonali zera. Przykadgrafuzptlprzedstawiarysuneknr1,natomiastnarysunkunr 2 przedstawione zostay grafy bez ptli. I. 6. 2Grafy kompletne Stotakiegrafy,wktrychdlakadegowierzchokaistniejekrawd (bdukwgrafachskierowanych)czcagozwszystkimipozostaymi wierzchokami. Przykady tych grafw przedstawia rysunek nr 2. I. 6. 3Grafy planarne Grafemplanarnymnazywasigraf,ktrymoebynarysowanyna paszczyniedwuwymiarowejwtakisposb,bydwiedowolnekrawdzienie przecinaysizesob.atwozobaczy,egrafK4jestgrafemplanarnym, natomiastgrafdlagrafuK5niedasitakrozmiecikrawdzi,byunikn choby jednego ich przecicia. Sytuacj t przedstawia rysunek nr 5. - Grafy i rekurencje - 14 K4adna krawdsi nie przecinaAB5KKrawd AB jestincydentna Rysunek 5 Grafy: planarny i nieplanarny I. 6. 4Grafy dwuczciowe Grafemdwuczciowym(bipart)G=(E,V)nazywanytakigraf,ktrego zbirwierzchokwEdasipodzielinadwarozcznepodzbioryX1,X2,tak byX1X2 =Eorazbyistniaytylkokrawdzieczce1wierzchoekzX1z jednymwierzchokiemzX2.Ponadtomusizostazachowanapoprzednia struktura grafu, tzn. jeli istniaa krawd (x,y) to graf dwuczciowy take musi jposiada.Rysuneknr6przedstawiatensamgrafdwuczciowy, przedstawiony na dwa rne sposoby: 112233445566778899XX12 Rysunek 6 Graf dwuczciowy przedstawiony na dwa rne sposoby - Grafy i rekurencje - 15czc zesob grafy kompletne i dwuczciowe, otrzymujemy graf Kp,q, w ktrym |X1| = p,|X2| = q. Na rysunku nr 7 przedstawiony jest graf K3,3 , ktry zarazem nie moe by grafem planarnym. Rysunek 7 Graf K 3,3 nie bdcy grafem planarnym I. 7Izomorfizm grafw DwagrafyG=(X,V)orazH=(Y,W)sizomorficznejeliistniejefunkcja wzajemniejednoznacznaf,ktrejdziedzinjestzbirX,aprzeciwdziedzin zbirY,takae:(x,y)V(x,y)W.Dwagrafyizomorficzne przedstawione s na rysunku nr 9. Funkcja f ma posta: X1 2 3 4 5 F(X) e b d c a 12345a bcd e Rysunek 8 Dwa grafy izomorficzne - Grafy i rekurencje - 16 Rozdzia II Spjno grafu II. 1acuchy w grafie DEFINICJA acuch w grafie G=(X,V) jest cigiem c=(x0, x1, ..., xn) wierzchokw grafu G, dla ktrych zachodzi zaleno: i(1 i n) [ (xi-1xi)V lub (xixi-1)V) ] gdzie x0, xn s kracami acucha, a n jego dugoci. Nie naley myli ze sob poj: droga acuch, gdy w acuchu mog wystpiukiwdwchrnychkierunkach,natomiastwdrodzeposzczeglne uki maj jeden kierunek. Na rysunku nr 9 przedstawiony jest przykadowy graf i wystpujcy w nim acuch c=(4,3,5,4,1). 123457 Rysunek 9 Graf nieskierowany posiadajcy acuch DEFINICJA acuch nazywamy elementarnym, jeli kady wierzchoek wchodzcy w jego skad jest inny. acuch zoony z jednego wierzchoka ma dugo 0. Patrzc na rysunek nr 9 moemy wskaza acuch elementarnym np. c=(1,4,5). Wasno 1 Zkadegoacuchaxymonawyodrbniacuch,ktryjest elementarny. Dowd: Indukcyjny ze wzgldu na ilo powtrze w acuchu: 0 powtrze, wwczas badany acuch jest elementarny. Zaoenie: Wasno prawdziwa dla n powtrze - Grafy i rekurencje - 17Teza:Wasnoprawdziwadlan+1powtrze.Wemydowolny acuchc.Podajcpokolejnychwierzchokachtegoacuchanapotykamy powtarzajcesiwierzchoki.Gdynapotkamyjunpowtrze(wcaym acuchujestichn+1),wwczaszzaoeniaindukcyjnegodasiwyodrbni podacuch.Bdzietozarazempodacuchacuchawyjciowegoon+1 powtrzeniach. Wasno 2 Najkrtszy acuch grafu G jest elementarny Dowd:Zamy,exyjestnajkrtszymacuchemgrafuGi posiada powtarzajcy si element v.Wtedy acuch ten bdzie posiada posta: (x,.....,v,.....,v,....t).Usuwajczaciemnionczotrzymamykrtszyacuch sprzeczno. II. 2Grafy spjne Mamy dany graf G=(E,V). Zdefiniujmy relacj Rc (E x E) ,ktra bdzie relacj spjnoci w grafie.x Rc y w grafie G istnieje acuch xy. Relacja Rcjest relacj rwnowanoci, gdy: Zwrotno - x E (x) jest acuchem o dugoci 0 Symetria - x,y E xy jest acuchem na mocy faktu, e orientacja ukw w acuchu nie gra roli, wnioskujemy e yx te jest acuchem Przechodnio-x,y,zEjelixzizysacuchami,wwczasc=(x,...,z,z,.....y) rwnie jest acuchem. KlasyrwnowanocirelacjiRcnazywamykomponentami spjnymi grafu G. DEFINICJA Graf nazywamy spjnym, jeli posiada tylko jeden komponent spjny.Grafprzedstawionynarysunkunr9jestspjny,gdyposiadajeden komponentspjny,a{1,2,3,4,5,6,7}[1]Rc,czyliistniejejednaklasa abstrakcji, w skad ktrej wchodz wszystkie wierzchoki grafu G. DEFINICJA Punkt artykulacji a w grafie G=(E,V) jest takim wierzchokiem zezbioruE,egrafG=(E-{a},V1)niejestspjny.(V1powstajezVprzez usunicie wszystkich ukw, ktrych jednym z kocw jest wierzchoek a) - Grafy i rekurencje - 18 Uwaga: Nie w kadym grafie da si znale punkt artykulacji. Powysz definicj ilustruje rysunek nr. 10, w ktrym punkt a czy ze sob spjne komponenty grafu G. akomponent 1komponent 2komponent 3 Rysunek 10 Punkt artykulacji w grafie atwo udowodni, e a jest poczony zkadym z komponentw grafu G.Zamy,eistniejekomponent,ktryniejestpoczonyza,wwczas wyjciowygrafG(zawierajcya)posiadabywicejnijedenkomponent spjny, czyli G nie byby spjny sprzeczno. Lemat dotyczcy grafw spjnych: Kadygrafspjnystopnia2posiadaconajmniej2wierzchokinie bdce punktami artykulacji. Dowd:W grafie G (rysunek nr 11) wemy najduszy acuch c=(x0, x1, ..., xn).Zamy,ex0jestpunktemartykulacji.Wwczasodrzucajcwierzchoek x0otrzymamygrafniespjny,zatemwgrafieGmusiistniedrugikomponent spjny,wktrymistniejetakipunkty,exRcy.Wtedyjednakacuchc1=(y, x0, x1, ..., xn) jest duszy od acucha c sprzeczno. Stosujc podobne rozumowanie dla wierzchoka xn otrzymujemy dowd lematu. x0x1x2 x3x4ykomponentspjnykomponentspjny Rysunek 11 Graf podatny na lemat o grafach spjnych - Grafy i rekurencje - 19Klasa GS grafw spjnych jest generowana przez poniszy schemat indukcji: Baza: {K1} Zasada indukcji: Jeli GGS, wwczas Graf G + {x} GS, dla d(x) 1. Wasno 1 Kady graf spjny jest generowany przez powyszy schemat. Dowd:Wjednstrondowdjestnatychmiastowy.Kadygraf wygenerowanyprzezpowyszyschematjestspjny,bowiemK1jestspjny,a gdy do grafu spjnego G dodamy wierzchoek x, ktry czy si przynajmniej jednym ukiem z grafem G, wwczas otrzymamy graf spjny. Wdrugstronstosujemydowdindukcyjnyzewzgldunastopie grafu. stopie = 1, schemat generuje {K1} graf o stopniu 1 Zaoenie schemat potrafi wygenerowa grafy spjne stopnia n Teza schemat potrafi wygenerowa grafy spjne stopnia n+1.WemyG=(E,V),grafspjnystopnian+1.NamocyxE,eG-{x} jestspjny,ponadtoG-{x}jeststopnianczylispeniazaoenieindukcyjne, zatemG-{x}jestspjny.TerazdodajemydoG-{x}wierzchoek{x},ktryna mocyfaktu,eGjestspjny,jestpoczonyzG-{x},czylid(x)1.W konsekwencji schemat pozwoli nam wygenerowa graf G, co koczy dowd. DEFINICJACyklemc=(x0,x1,...,xn,x0)nazywamyacuch,ktrego krace s takie same. W grafie z rysunku nr 9 moemy atwo znale cykl: c=(1,4,3,5,4,1) i cykl elementarnyce(1,4,1),speniajcyzaleno:#Ce=1+#Wierzch(C2),gdzie Wierzch(C2) jest zbiorem rnych wierzchokw cyklu Ce.CyklelementarnywgrafieGjestpod-grafemspjnymG,ktrego wszystkie wierzchoki s stopnia = 2. Wasno 2 Z kadego cyklu c, przechodzcego przez uk e mona wyodrbni cykl elementarny, ktry przechodzi przez uk e. Dowd: Analogiczny jak przy acuchach. Wasno 3 KadygrafG=(X,E),takie(G)k2dopuszczacyklelementarny dugoci k+1 oraz acuch elementarny o dugoci k. - Grafy i rekurencje - 20 Dowd: Na rysunku nr 12 przedstawiona zostaa sytuacja, ktra pozwala na atwe zrozumienie dowodu. x1x2 x3xnW Rysunek 12 Cykl i acuch w grafie NapocztkuwybieramymaksymalnyacuchwgrafieG=(X,E), oznaczajc go c=(x1, ..., xn). Korzystajc z zaoenia, e xi1 i nk(xi)) wnioskujemy, e k n, bowiemkady wierzchoek acucha c jest poczony z conajmniejkinnymiwierzchokami,czyliistniejeposzukiwanyacucho dugoci k. Wceluznalezieniacykluodugocik+1spjrzmynawierzchoekx1 narysunkunr12.Zauwaamy,ewzbiorzewierzchokwW,ktres bezporedniopoczonezx1 wystpujtylkowierzchokix3,...,xn,bowiem gdybybyywWinnewierzchokinp.s{x2,..,xn},wwczasacuch(s, x1, x2, ..., xn) byby duszy od acucha c. Ponadto w W nie wystpuje x2, bo cjestacuchemelementarnym.Zdrugiejstronyx1posiadaconajmniejk ssiadw,zczegowniosek,exnW,czyliistniejecyklelementarny(xn, x1 ,x2 ,..., xn) o dugoci n+1. Korzystajc z wczeniej udowodnionego faktu, eistniejeacuchelementarnyodugocikwnioskujemyistnieniecyklu elementarnego o dugoci k+1. Wasno 4 Mamy G=(X,E)#X = n oraz #E = m. Jeli m n, wwczas G nie posiada cyklu. Dowd: Wemy graf G i wyodrbnijmy z niego pod-graf H=(Y,V) taki, eYX, przy czym w zbiorze Y znajdujsi takie wierzchoki z X, exXd(x) 2. Zbir krawdzi V E, przy czym w zbiorze V znajduj si tylko te krawdzie, ktrych krace nale do X. Niemoliwe jest, by #Y = 0, bo wwczas w grafie wyjciowymG,m