Luentorunko Kevät Matti Peltola.

Samankaltaiset tiedostot
0 v i v j / E, M ij = 1 v i v j E.

Kysymys: Voidaanko graafi piirtää tasoon niin, että sen viivat eivät risteä muualla kuin pisteiden kohdalla?

6.4. Järjestyssuhteet

Johdatus graafiteoriaan

PARITUS KAKSIJAKOISESSA

Pisteet ja viivat. Multigraafi

verkkojen G ja H välinen isomorfismi. Nyt kuvaus f on bijektio, joka säilyttää kyseisissä verkoissa esiintyvät särmät, joten pari

Hamiltonin sykleistä graateoriassa

Graafin virittävä puu 1 / 20

Olkoon seuraavaksi G 2 sellainen tasan n solmua sisältävä suunnattu verkko,

isomeerejä yhteensä yhdeksän kappaletta.

Näin ollen saadaan tulos rad(g) diam(g). Toisaalta huomataan, että verkon G kaikilla solmuilla x ja y pätee kolmioepäyhtälön nojalla havainto

b) Olkoon G vähintään kaksi solmua sisältävä puu. Sallitaan verkon G olevan

Königsbergin sillat. Königsberg 1700-luvulla. Leonhard Euler ( )

Algoritmi on periaatteellisella tasolla seuraava:

Johdatus graafiteoriaan

= 5! 2 2!3! = = 10. Edelleen tästä joukosta voidaan valita kolme särmää yhteensä = 10! 3 3!7! = = 120

811312A Tietorakenteet ja algoritmit V Verkkojen algoritmeja Osa 2 : Kruskalin ja Dijkstran algoritmit

Puiden karakterisointi

Johdatus graafiteoriaan

V. V. Vazirani: Approximation Algorithms, luvut 3-4 Matti Kääriäinen

8.5. Järjestyssuhteet 1 / 19

A TIETORAKENTEET JA ALGORITMIT

10. Painotetut graafit

Algoritmit 1. Luento 13 Ma Timo Männikkö

Tehtävä 8 : 1. Tehtävä 8 : 2

Miten perustella, että joukossa A = {a, b, c} on yhtä monta alkiota kuin joukossa B = {d, e, f }?

Vastaus 1. Lasketaan joukkojen alkiot, ja todetaan, että niitä on 3 molemmissa.

Valitaan alkio x 1 A B ja merkitään A 1 = A { x 1 }. Perinnöllisyyden nojalla A 1 I.

Johdatus verkkoteoriaan 4. luento

1 Lineaariavaruus eli Vektoriavaruus

Tehtävä 4 : 2. b a+1 (mod 3)

Graafin 3-värittyvyyden tutkinta T Graafiteoria, projektityö (eksakti algoritmi), kevät 2005

Näytetään nyt relaatioon liittyvien ekvivalenssiluokkien olevan verkon G lohkojen särmäjoukkoja. Olkoon siis f verkon G jokin särmä.

802320A LINEAARIALGEBRA OSA I

7.4. Eulerin graafit 1 / 22

58131 Tietorakenteet ja algoritmit (syksy 2015) Toinen välikoe, malliratkaisut

58131 Tietorakenteet ja algoritmit (kevät 2014) Uusinta- ja erilliskoe, , vastauksia

Yhtenäisyydestä. Johdanto. Lähipisteavaruus. Tuomas Korppi

Johdatus matematiikkaan

10. Painotetut graafit

Tehtävä 10 : 1. Tehtävä 10 : 2

13 Lyhimmät painotetut polut

j(j 1) = n(n2 1) 3 + (k + 1)k = (k + 1)(k2 k + 3k) 3 = (k + 1)(k2 + 2k + 1 1)

Kaikki kurssin laskuharjoitukset pidetään Exactumin salissa C123. Malliratkaisut tulevat nettiin kurssisivulle.

Äärellisten mallien teoria

Valitsemalla sopivat alkiot joudutaan tämän määritelmän kanssa vaikeuksiin, jotka voidaan välttää rakentamalla joukko oppi aksiomaattisesti.

Esipuhe Tämä gradu on tehty Teknologian tutkimuskeskus VTT:llä tietoturvan tutkimustiimissä vuosien aikana. Opinnäytetyöni on osa Tekesin ja

Algoritmit 1. Luento 13 Ti Timo Männikkö

Johdatus lukuteoriaan Harjoitus 2 syksy 2008 Eemeli Blåsten. Ratkaisuehdotelma

MS-A0402 Diskreetin matematiikan perusteet

Todistusmenetelmiä Miksi pitää todistaa?

MS-A0402 Diskreetin matematiikan perusteet Esimerkkejä ym., osa I

Eulerin verkkojen karakterisointi

Tehtävä 5 : 1. Tehtävä 5 : 2

Diskreetin matematiikan perusteet Laskuharjoitus 2 / vko 9

MS-A0402 Diskreetin matematiikan perusteet Esimerkkejä ym., osa I

(iv) Ratkaisu 1. Sovelletaan Eukleideen algoritmia osoittajaan ja nimittäjään. (i) 7 = , 7 6 = = =

Luku 7. Verkkoalgoritmit. 7.1 Määritelmiä

Johdatus matemaattiseen päättelyyn

Äärellisten mallien teoria

Määritelmä Olkoon T i L (V i, W i ), 1 i m. Yksikäsitteisen lineaarikuvauksen h L (V 1 V 2 V m, W 1 W 2 W m )

Todistus (2.2) Todistus (2.2) jatkoa. (2.2): Oletetaan, että0 n 1,1 n 1 / P i (F) aina kuni = 1,2,...,n. Olkoonf F painoltaan pienin joukonf alkio.

keskenään isomorfiset? (Perustele!) Ratkaisu. Ovat. Tämän näkee indeksoimalla kärjet kuvan osoittamalla tavalla: a 1 b 3 a 5

MS-A0402 Diskreetin matematiikan perusteet

8 Joukoista. 8.1 Määritelmiä

811312A Tietorakenteet ja algoritmit Kertausta kurssin alkuosasta

Graateorian maksimivirtausalgoritmi

Matematiikan peruskurssi 2

AVL-puut. eräs tapa tasapainottaa binäärihakupuu siten, että korkeus on O(log n) kun puussa on n avainta

58131 Tietorakenteet ja algoritmit (kevät 2013) Kurssikoe 2, , vastauksia

Graafiteoria matematiikkaako?

MS-A0401 Diskreetin matematiikan perusteet

Tehtävä 1. Arvioi mitkä seuraavista väitteistä pitävät paikkansa. Vihje: voit aloittaa kokeilemalla sopivia lukuarvoja.

Matematiikassa väitelauseet ovat usein muotoa: jos P on totta, niin Q on totta.

Diskreetit rakenteet

Johdatus matemaattiseen päättelyyn

MS-A0402 Diskreetin matematiikan perusteet Esimerkkejä, todistuksia ym., osa I

MS-A0402 Diskreetin matematiikan perusteet Esimerkkejä, todistuksia ym., osa I

1 sup- ja inf-esimerkkejä

1 sup- ja inf-esimerkkejä

Matematiikan johdantokurssi, syksy 2016 Harjoitus 11, ratkaisuista

TAMPEREEN YLIOPISTO Pro gradu -tutkielma. Jenna Laine. Ramseyn teoria

on Abelin ryhmä kertolaskun suhteen. Tämän joukon alkioiden lukumäärää merkitään

Algoritmit 2. Luento 13 Ti Timo Männikkö

Liite: Verkot. TKK (c) Ilkka Mellin (2004) 1

811120P Diskreetit rakenteet

Kurssikoe on maanantaina Muista ilmoittautua kokeeseen viimeistään 10 päivää ennen koetta! Ilmoittautumisohjeet löytyvät kurssin kotisivuilla.

Kuvauksista ja relaatioista. Jonna Makkonen Ilari Vallivaara

Berge-perfektit graafit ja Shannonin kapasiteetti

Lineaarikombinaatio, lineaarinen riippuvuus/riippumattomuus

VERKKOTEORIAN ALKEITA. Martti E. Pesonen

Luonnollisen päättelyn luotettavuus

Algoritmit 1. Luento 9 Ti Timo Männikkö

Avaruuden R n aliavaruus

v 8 v 9 v 5 C v 3 v 4

Malliratkaisut Demot

Luonnollisten lukujen ja kokonaislukujen määritteleminen

Datatähti 2019 loppu

Pinot, jonot, yleisemmin sekvenssit: kokoelma peräkkäisiä alkioita (lineaarinen järjestys) Yleisempi tilanne: alkioiden hierarkia

Transkriptio:

GRAAFITEORIA 031029S Luentorunko Kevät 2009 Matti Peltola http://www.ee.oulu./mpa/graate.htm

Hyödyllistä tietoa Matematiikan jaoksen tuottamasta opetuksesta löytyy osoitteesta http://s-mat-pcs.oulu./opetus Kurssin kotisivun osoite on http://www.ee.oulu./mpa/graate.htm Tämä moniste on tarkoitettu luentorungoksi, johon luennoilla annetaan lisäyksiä, selvennyksiä ja esimerkkejä. Moniste yksin ei ole sovelias itseopiskeluun.

i Sisältö 1 Johdanto 1 2 Merkintöjä ja peruskäsitteitä 1 2.1 Merkintöjä..................................... 1 2.2 Graan määritelmä................................ 1 2.3 Graaen yleistyksiä................................ 2 2.4 Graaen isomora................................. 2 2.5 Graaen esitysmuotoja.............................. 2 2.6 Graan aste.................................... 3 2.7 Graatyyppejä.................................. 4 2.8 Aligraat..................................... 5 2.9 Polut ja piirit. Graan yhtenäisyys....................... 5 2.10 Keveimmät polut. Dijkstran algoritmi...................... 7 2.11 Graaen operaatioita............................... 8 3 Puut 10 3.1 Puun määritelmä ja puiden perusominaisuuksia................ 10 3.2 Puun lehtien lukumäärä............................. 11 3.3 Graan virittävä puu............................... 12 4 Kaksijakoiset graat ja sovitukset 14 4.1 Kaksijakoisten graaen ominaisuuksia...................... 14 4.2 Sovitukset..................................... 15 4.3 Sovitukset kaksijakoisissa graafeissa....................... 16 5 Etäisyys 19 5.1 Määritelmiä.................................... 19 5.2 Puut ja etäisyys.................................. 20 5.3 Keskus graafeissa................................. 22 6 Graan yhtenäisyys 23 6.1 Graan yhtenäisyyttä kuvaavat luvut...................... 23 6.2 Mengerin teoreema................................ 25 6.3 Siirtoverkon luotettavuus............................. 28 7 Eulerin ja Hamiltonin graat 29 7.1 Eulerin graat................................... 29 7.2 Postimies ongelma................................ 30

ii 7.3 Hamiltonin graa................................. 31 7.4 Kauppamatkustaja ongelma........................... 34 8 Graaen väritykset 35 8.1 Pisteiden väritykset................................ 35 8.2 Viivojen väritykset................................ 37 9 Graat pinnoilla 41 9.1 Tasograat..................................... 41 9.2 Tasograan karakterisointi............................ 43 9.3 Tasograan väritykset.............................. 46 9.4 Upotukset muissa pinnoissa........................... 48 10 Suunnatut graat 50 10.1 Määritelmiä ja perustuloksia........................... 50 10.2 Virtaukset siirtoverkoissa............................. 55

1 Graateoria 1 Johdanto 2 Merkintöjä ja peruskäsitteitä 2.1 Merkintöjä Reaaliluvulle x on suurin kokonaislukualaraja ja pienin kokonaislukuyläraja x = max{k Z k x} x = min{k Z x k} Äärelliselle joukolle X on X joukon alkioiden lukumäärä. Jos X i X, i = 1, 2,... n ovat X:n osajoukkoja, joille n i=1 X i = X ja X i X j = aina kun i j, niin {X 1, X 2,..., X n } on joukon X ositus (partition). Kahden joukon X ja Y karteesinen tulo on joukko erotus ja symmetrinen erotus. X Y = {(x, y) x X ja y Y }, X \ Y = {x x X ja x / Y }, X Y = (X \ Y ) (Y \ X) Algoritmien aikakompleksisuusluokka P (deterministisesti polynomiaikaiset tehtävät)koostuu niistä tehtävistä, joissa N:n pituisen ongelman ratkaisemiseen deterministisellä algoritmilla kuluu enintään p(n) askelta, missä p on jokin tehtävästä riippuva N:n polynomi. Algoritmien aikakompleksisuusluokka NP (epädeterministisesti polynomiaikaiset tehtävät) koostuu niistä tehtävistä joissa N:n pituisen ongelman ratkaisemiseen epädeterministisellä algoritmilla kuluu enintään p(n) askelta, missä p on jokin tehtävästä riippuva N:n polynomi. 2.2 Graan määritelmä Olkoon V äärellinen joukko ja joukko E(V ) = {{u, v} u, v V, u v} V :n kaksialkioisten (eri alkiot) osajoukkojen joukko. Määritelmä 2.2.1 Graa on järjestetty pari G = (V G, E G ), missä V G on äärellinen joukko (pisteet)ja E G E(V ) (viivat).

2 Pistettä kutsutaan myös solmuksi (vertex, point, node), viivaa linkiksi ja särmäksi (edge, line, link) ja graaa verkoksi (graph, simple graph, network). Graan pisteiden joukkoa V G merkitään myös V :llä ja viivojen joukkoa E G E:llä. Viivaa {u, v} merkitään usein uv. Huomaa, että uv = vu. Usein merkitään myös u G, kun u V G. Määritelmä 2.2.2 Graalle G = (V G, E G ) on γ G = V G G:n pisteiden lukumäärä (order of G), ja ɛ G = E G G:n viivojen lukumäärä (size of G). Pisteet u ja v ovat viivan uv päätepisteet (endpoints). Pisteet u ja v ovat vierekkäisiä eli vieruspisteitä (neighbours, adjacent points), jos uv on G:n viiva. Piste on irtopiste (isolated point) jos sillä ei ole vieruspisteitä. Viivat e 1 ja e 2 ovat vierekkäiset, jos niillä on yhteinen päätepiste. 2.3 Graaen yleistyksiä Määritelmä 2.3.1 Multigraa on järjestetty kolmikko G = (V, E, ψ), missä E = {e 1, e 2,..., e n } on joukko symboleja ja ψ : E E(V ) {vv v V G } on funktio, joka liittää jokaiseen alkioon e E kaksi V :n alkiota. Määritelmä 2.3.2 Suunnattu graa (Directed graph, Digraph) D = (V, E) on järjestetty pari, missä V on äärellinen joukko ja E V V. Lisäksi aina kun (u, v) E, on u v. Suunnatussa graassa on viiva uv vu, kun u ja v ovat eri pisteet. Funktio α : V G K on pisteiden väritys (vertex colouring)joukon K väreillä. Funktio α : E G K on viivojen väritys (edge colouring) joukon K väreillä. Yleensä K = {1, 2,..., k}. Jos K R, niin α:aa kutsutaan myös paino- tai etäisyysfunktioksi. Määritelmä 2.3.3 Hypergraa (Hypergraph) on järjestetty pari G = (V, E), missä E:n alkiot ovat V :n ei-tyhjiä osajoukkoja. 2.4 Graaen isomora Määritelmä 2.4.1 Kaksi graaa G ja H ovat isomorset, merkitään G = H, jos on olemassa bijektio α : V G V H, jolle uv E G jos ja vain jos α(u)α(v) E H aina kun u, v V G. Isomorset graat usein samaistetaan. Graa-isomorsmi ongelma: Onko olemassa tehokas algoritmi joka tarkistaa onko kaksi graaa isomorsia? Kuvaus ψ on graa invariantti(graph invariant), jos sen arvo on aina sama isomorsille graafeille. 2.5 Graaen esitysmuotoja Graa esitetään tietokoneessa yleensä matriisin avulla.

3 Määritelmä 2.5.1 Graan G = (V, E), V = {v 1, v 2,..., v n } vieruspistematriisi (adjacency matrix)on n n matriisi M = (M ij ), missä n on G:n pisteiden lukumäärä ja M ij = { 0 v i v j / E, 1 v i v j E. Selvästi vieruspistematriisi M on aina symmetrinen, eli M T = M. Suoraan yo. määritelmistä seuraa tulos. Lause 2.5.1 Kaksi graaa ovat isomorsia täsmälleen silloin kun niillä on yhteinen vieruspistematriisi. Kahdella isomorsella graalla on täsmälleen samat vieruspistematriisit. Graa voidaan määritellä myös joukkojen avulla. Määritelmä 2.5.2 Olkoon X joukko ja χ = {X 1, X 2,..., X n } jokin X:n osajoukkojen joukko. Joukon χ leikkausgraa (intersection graph) G χ = (χ, E χ ), missä E χ = {X i X j i j ja X i X j }. Lause 2.5.2 Jokainen graa on jonkin osajoukkojen joukon leikkausgraa. Graat voidaan esittää myös luonnollisten lukujen avulla. Olkoon A N äärellinen ja G A = (A, E) graa, jonka pisteet muodostuvat A:n luvuista ja rs E jos ja vain jos luvuilla r ja s on yhteinen tekijä > 1. Lause 2.5.3 Jos G = (V G, E G ) on graa, niin on olemassa sellainen äärellinen luonnollisten lukujen joukko A, että graat G ja G A ovat isomorset. 2.6 Graan aste Määritelmä 2.6.1 Graan G = (V, E) pisteen v naapurusto (neighbourhood) on joukko N G (v) = {u V vu E} ja aste (degree) deg G (v) (tai lyhyemmin deg(v)) on v:n naapuruston pisteiden lukumäärä, eli deg G (v) = N G (v). Jos deg G (v) = 0, niin v on irtopiste. Jos deg G (v) = 1, niin v on G:n lehti tai loppupiste (leaf, endpoint). Graan G pienin aste (minimum degree) on ja suurin aste (maximum degree) on δ(g) = min{deg G (v) v G} (G) = max{deg G (v) v G} Apulause 2.6.1 (Euler 1736, Handshaking lemma)jokaiselle graalle G = (V, E) on deg G (v) = 2 E v G eli G:n pisteiden asteiden summa on kaksi kertaa G:n viivojen lukumäärä. Lisäksi parittoman asteen omaavien pisteiden lukumäärä on aina parillinen.

4 Graan G = (V, E) 2-vaihto (2-switch) (u, v : x, y), missä u, v, x, y V uv, xy E ja ux, vy / E, poistaa G:stä viivat uv ja xy ja lisää viivat ux ja vy. Lause 2.6.1 (Berge 1973)Kahdelle saman pistejoukon V omaavalle graalle G ja H on deg G (v) = deg H (v) kaikilla v V jos ja vain jos H saadaan G:stä äärellisellä määrällä 2 vaihtoja. Määritelmä 2.6.2 Olkoon d 1, d 2,..., d n laskeva äärellinen jono ei-negatiivisia kokonaislukuja, eli d 1 d 2 d n. Jono on esitettävissä graalla (graphical), jos on olemassa sellainen graa G = (V, E), missä V = {v 1, v 2,... v n } ja deg G (v i ) = d i, aina kun i = 1, 2,..., n. Jono d 1, d 2,..., d n on silloin G:n astejono (degree sequence). Lause 2.6.2 Lukujono d 1, d 2,..., d n, (d 1 1 ja n 2) on esitettävissä graalla jos ja vain jos jono d 2 1, d 3 1,..., d d1 +1 1, d d1 +2, d d1 +3,..., d n on esitettävissä graalla (kun jono järjestetään laskevaan järjestykseen). 2.7 Graatyyppejä Graa on triviaali (trivial), jos se sisältää vain yhden pisteen. Graa G = K V on täydellinen graa pistejoukossa V, jos se sisältää kaikki mahdolliset viivat eli jokainen piste on kaikkien muiden pisteiden vieruspiste. Kaikki täydelliset n pistettä sisältävät graat ovat isomorsia. Niitä merkitään K n :llä. Graan G komplementti (complement)on graa G, missä V G = V G ja E G = {e E(V ) e / E G }. Täydellisten graaen komplementteja K n kutsutaan erillisiksi graafeiksi (discrete graphs). Graa on säännöllinen (regular), jos jokaisella graan pisteellä on sama aste. Jos tämä aste on r, niin graaa kutsutaan r-säännölliseksi (r-regular). Graa G = (V, E) on kaksijakoinen (bipartite) jos pistejoukolla V on sellainen ositus X, Y, että jokaisen viivan uv E toinen päätepiste on joukon X ja toinen päätepiste joukon Y piste. Silloin (X, Y ) on graan G kaksijako (bipartition of G) ja G on (X, Y )-kaksijakoinen ((X, Y )-bipartite). Kaksijakoinen graa G = (V, E) on täydellinen (m, k)-kaksijakoinen graa (complete (m, k)-bipartite graph), jos X = m, Y = k ja uv E aina kun u X ja v Y. Kaikki täydelliset (m, k)-kaksijakoiset graat ovat isomorsia keskenään. Merkitään niitä K m,k :lla. Graa on täydellinen kaksijakoinen graa, jos se on täydellinen (m, k)-kaksijakoinen graa jollain luvuilla m, k. Graa K 1,n on tähti (star). Se on täydellinen kaksijakoinen graa, jossa yhden pisteen aste on n ja muut pisteet ovat lehtiä.

5 2.8 Aligraat Määritelmä 2.8.1 Graa H = (V H, E H ) on graan G = (V G, E G ) aligraa (subgraph), jos V H V G ja E H E G. Silloin merkitään H G. Jos H G ja V H = V G, niin H on G:n virittävä aligraa (spanning subgraph). Jos H G ja E H = E G E(V H ) (eli H sisältää kaikki G:n viivat, joiden molemmat päätepisteet ovat V H :n pisteitä), niin H on pistejoukon V H indusoima G:n aligraa (induced subgraph). Jos H on G:stä indusoitu aligraa, niin sen viivojen joukko E H sisältää kaikki G:n viivat, joissa molemmat päätepisteet ovat H:n pisteitä. Silloin jokaisella pistejoukolla A V G on olemassa yksikäsitteinen G:stä indusoitu aligraa G[A] = (A, E G E(A)). Joukko A V G on vakaa (stable), jos G[A] on erillinen graa. Vastaavasti jokaisella G:n viivojen osajoukolle F E G on olemassa yksikäsitteinen G:n virittävä aligraa G[F ] = (V G, F ). 2.9 Polut ja piirit. Graan yhtenäisyys Määritelmä 2.9.1 Olkoot e i = u i u i+1 E G graan G viivoja aina kun i = 1, 2,..., k. Viivat e i ja e i+1 ovat vierekkäisiä, sillä niillä on yhteinen päätepiste u i+1. Jono W = e 1 e 2 e k on k:n pituinen kulku (walk) pisteestä u 1 pisteeseen u k+1 Kulusta käytetään myös merkintöjä W : u 1 u 2 u k u k+1, ja W : u 1 u 2 u k+1 sekä W : u k 1 u k+1. Merkintä u 1 u k+1 tarkoittaa, että on olemassa kulku pisteestä u 1 pisteeseen u k+1. Merkintä W : u 1 u k+1 tarkoittaa aina tiettyä kulkua W = e 1 e 2 e k. Kulun W pituutta merkitään W :llä. Määritelmä 2.9.2 Kulku W = e 1 e 2 e k (e i = u i u i+1 ) on a)suljettu (closed), jos u 1 = u k+1, b)polku (path), jos u i u j aina kun i j, c) reitti (trail),jos e i e j aina kun i j, d) piiri (cycle), jos u 1 = u k+1 ja muulloin u i u j aina kun i j, e)triviaali polku (trivial path), jos W = 0. Kulun W : u = u 1 u 2 u k+1 = v käänteiskulku (inverse of W) on kulku. W 1 : v = u k+1 u k u 1 = u Piste u on polun P päätepiste (end of P ), jos P alkaa tai päättyy pisteeseen u. Kahden kulun W 1 : u v ja W 2 : v w yhdiste (join) on kulku W 1 W 2 : u w Polut P ja Q ovat erilliset (disjoint), jos niillä ei ole yhteisiä pisteitä (eikä siis myöskään yhteisiä viivoja) ja riippumattomat (independent), jos vain niiden päätepisteet ovat samat.

6 Selvästi polun P käänteispolku P 1 on myös polku. Kahden polun yhdiste ei välttämättä ole polku. Graa (tai aligraa) P k on graa joka muodostuu k 1:sen pituisesta polusta (k 1 viivaa, k pistettä). Graa (tai aligraa) C k on k:n pituinen piiri. Jos k on parillinen, niin polkua P k (piiriä C k ) kutsutaan parilliseksi poluksi (parilliseksi piiriksi). Jos k on pariton, niin P k (vastaavasti C k ) on pariton polku (piiri). Apulause 2.9.1 Aina kun W : u v on kulku ja u v, niin on olemassa polku P : u v, joka on saatu W :stä poistamalla siitä pisteitä ja viivoja. Määritelmä 2.9.3 Jos graassa G esiintyy kulku (eli myös polku) pisteestä u pisteeseen v, niin pisteen u etäisyys (distance) pisteestä v on Jos kulkua ei ole, niin d G (u, v) =. d G (u, v) = min{k u k v} Graa G on yhtenäinen (connected), jos d G (u, v) < aina kun u, v V G, muulloin G on epäyhtenäinen (disconnected). Jos graasta ei ole epäselvyyttä, pudotetaan merkinnästä d G (u, v) alaindeksi pois. Määritelmä 2.9.4 Aligraa H G on G:n komponentti (connected component), jos H on yhtenäinen ja aina kun piste v / H, niin aligraa G[V H {v}] on epäyhtenäinen. Graan G komponenttien lukumäärää merkitään c(g):llä. Määritelmä 2.9.5 Piste v on graan G irrotuspiste (cut point vertex), jos graa, joka saadaan G:stä poistamalla piste v ja kaikki siihen liittyvät viivat, sisältää enemmän komponentteja kuin G. Viiva e on irrotusviiva eli silta (bridge), jos graa, joka saadaan G:stä poistamalla viiva e, sisältää enemmän komponentteja kuin G. Lause 2.9.1 Viiva e E G on silta jos ja vain jos e ei esiinny missään G:n piirissä. Määritelmä 2.9.6 Graa on separoitumaton (non-separable), jos se on yhtenäinen, eitriviaali ja se ei sisällä irrotuspisteitä. Graan G blokki (block) on G:n maksimaalinen separoitumaton aligraa. Lause 2.9.2 Olkoon G = (V, E) yhtenäinen graa ja V 3. Seuraavat ehdot ovat yhtäpitäviä. (1) Graa G on blokki (2) Jos v, v V, niin on olemassa molemmat pisteet sisältävä G:n piiri. (3) Jos v V ja e E, niin on olemassa v:n ja e:n sisältävä G:n piiri. (4) Jos e, e E, niin on olemassa e:n ja e :n sisältävä G:n piiri. (5) Aina kun v, v V ja e E, niin on olemassa sellainen polku P : v v, että e P. (6)Aina kun v, v, v V, niin on olemassa sellainen polku P : v v, että v P. (7)Aina kun v, v, v V, niin on olemassa sellainen polku P : v v, että v / P.

7 Todistus.... (3) (4): Olkoot uv, u v E. Silloin (3):n perusteella on olemassa piiri Kaksi tapausta: C : u v v u. (i) Jos u esiintyy piirissä C, niin samoin kuin kohdan (2) (3) todistuksessa voidaan osoittaa, että on olemassa piiri C : u v u v u. (ii) Jos u / C, niin koska (3):sen perusteella on olemassa uv:n ja u :n sisältävä piiri, niin on olemassa polku P : u u, joka ei sisällä pistettä v. Olkoon u lähinnä pistettä u oleva piste, joka esiintyy sekä piirissä C, että polussa P. Silloin on olemassa piiri C : u v v u u u. (4) (5): Koska G on yhtenäinen, niin jokainen sen piste on silloin ainakin yhden viivan päätepiste. Koska (4):n perusteella jokaista viivaparia kohti on olemassa molemmat viivat sisältävä piiri, niin silloin myös jokaista pisteparia kohti on olemassa ne sisältävä piiri. Siis (2) ja silloin myös (3) on voimassa. Olkoot u ja v kaksi G:n eri pistettä ja e G:n viiva. Tuloksen (3) perusteella on olemassa sellaiset piirit C 1 : u u ja C 2 : v v, että u, e C 1 ja v, e C 2. Jos nyt v C 1 tai u C 2, niin on olemassa kyseisen piirin osapolku P : u v, jossa viiva e esiintyy. Voidaan olettaa, että v / C 1 ja u / C 2. Koska viiva e esiintyy molemmissa piireissä, niin on olemassa sellainen piste w joka esiintyy molemmissa piireissä. Valitaan w lisäksi niiin, että piirin C 2 osapolku v w ei sisällä muita piirin C 1 pisteitä kuin w:n. Silloin pisteet u, v ja viivan e sisältävä polku P = P 1 P 2, missä P 1 on piirin C 1 osapolku u w ja P 2 on piirin C 2 osapolku w v. (5) (6): Jos u, v, w ovat G:n eri pisteitä, niin koska G on yhtenäinen, on olemassa viiva e, jonka eräs päätepiste on w. Kohdan (5) perusteella on olemassa sellainen polku P : u v, joka sisältää viivan e. Silloin polku sisältää myös pisteen w. 2.10 Keveimmät polut. Dijkstran algoritmi Olkoon G α painotettu graa. Toisin sanoen G α sisältää graan G ja painofunktion α : E G R (paino viivoilla). Jos H G, niin H:n paino α(h) = Polun P = e 1 e 2 e k paino on α(p ) = α(e i ). e E H α(e). Pienin painotettu etäisyys pisteiden u ja v välillä on d α G(u, v) = min{α(p ) P : u v} Ääriarvo-ongelmissa etsitään usein joidenkin ehtojen mukaan optimaalista aligraaa H G. Tällaisia ongelmia ovat esimerkiksi:

8 (1) Jakelu- tai kuljetus verkko, jossa viivojen painot ovat etäisyyksiä tai kuljetuskustannuksia. (2) Tietoliikenne- tai tietokoneverkko, jossa viivojen painot kuvaavat yhteyden vikaantumistodennäköisyyttä. (3) Kemiallisten sidosten mallit, joissa viivojen paino mittaa molekyylien vetovoimaa. Edelläolevissa esimerkeissä etsitään pienimmän painon omaavaa aligraaa, joka yhdistää pisteitä. Jos graa mallintaa esimerkiksi siirtoverkkoa, voi viivan paino kuvata myös yhteyden kapasiteettia. Silloin etsitään usein suurimman painon omaavaa aligraaa. Seuraavassa tarkastellaan minimointiongelmaa. Maksimointiongelma voidaan aina muuntaa minimointiongelmaksi määrittelemällä graalle uusi painofunktio α esimerkiksi seuraavasti: α (e) = k + 1 α(e) missä k = max{α(e ) e E G }. Seuraavassa painofunktion arvoa α(uv) kutsutaan viivan uv pituudeksi. Lyhimmän polun ongelma: Löydettävä kevein (lyhyin) polku pisteestä u pisteeseen v painofunktiolle α. Toisin sanoen on määrättävä d α G (u, v). Dijkstran algoritmi: Input: Painotettu graa G α, lähtöpiste u ja päätepiste v (1) Olkoon (2) Aina kun i = 0, 1,..., V G 1. Jokaiselle v / {u 0, u 1,..., u i } u 0 = u, t(u 0 ) = 0 ja t(w) = kaikilla w u 0 t(v) min{t(v), t(u i ) + α(u i v)} Valitaan pisteeksi u i+1 / {u 0, u 1,..., u i } jokin pisteistä w, jolle arvo t(w) on pienin. Seuraava i (3) Output d α G (u, v) = t(v). 2.11 Graaen operaatioita Usein graa saadaan yhdistämällä eri tavoin yksinkertaisempia graafeja. Seuraavassa määritellään keskeisimmät graaen yhdistämisoperaatiot ja esitellään eräitä operaatioilla saatavia graatyyppejä. Määritelmä 2.11.1 Olkoot G = (V G, E G ) ja H = (V H, E H ) kaksi erillistä graaa (V G V H = ). Graaen unioni on graa ja graaen summa (join)on graa missä E = {uv u V G ja v V H }. G H = (V G V H, E G E H ) G + H = (V G V H, E G E H E),

9 Pyörä (wheel) W 1,n = K 1 + C n. Määritelmä 2.11.2 Olkoon G = (V, E) graa ja A V. Graa G A on joukon V \ A indusoima G:n aligraa G A = G[V \A]. Erityisesti G v on graa,joka saadaan poistamalla G:stä piste v ja kaikki ne viivat joiden päätepisteenä on v, ja graa G e = (V, E \ {e}). Määritelmä 2.11.3 Olkoot G = (V G, E G ) ja H = (V H, E H ) kaksi erillistä graaa, missä V G = {u 1, u 2,..., u m }, V H = {v 1, v 2,..., v n } ja V G V H =. Graaen G ja H karteesinen tulo (cartesian product) on graa G H = (V G V H, E), missä (u, v)(u, v ) E täsmälleen silloin kun u = u ja vv E H, tai uu E G ja v = v Määritelmä 2.11.4 Hyperkuutio Q 1 = K 2 ja Q n = K 2 Q n 1 aina kun n = 1, 2,.... Lause 2.11.1 Hyperkuutiolle Q n, n = 1, 2,... on voimassa (i) Q n on n-säännöllinen. (ii) Q n :ssä on 2 n pistettä. (iii) Q n :n pisteet voidaan nimetä n:n pituisella bittijonolla niin, että jokainen bittijono on täsmälleen yhden pisteen nimi ja kaksi pistettä ovat vieruspisteitä täsmälleen silloin kun niiden nimet eroavat täsmälleen yhden bitin verran. Todistus. (i) Q 1 = K 2 on 1-säännöllinen. Induktio-oletus: Q k on k-säännöllinen. Graa Q k+1 = K 2 Q k, joten Q k+1 käsittää kaksi Q K :n kopiota, joiden vastinpisteet on yhdistetty viivalla. Siis Q k+1 on k + 1-säännöllinen. (ii) Koska V Q1 = K 2 ja Q n+1 = K 2 Q n, niin V Qn+1 = 2 V Qn, mistä väite seuraa. (iii) Matemaattinen induktio n:n suhteen. Nyt Q 1 = K 2, joten vaadittu pisteiden nimitys saadaan, kun toinen merkitään 0:lla ja toinen 1:llä. Induktio-oletus: Q k toteuttaa ehdon. Olkoon pistettä u vastaava bittijono u k. Graassa Q k+1 esiintyy kaksi Q k :n kopiota Q 0 K ja Q 1 K. Nimetään pisteet seuraavasti: Q k :ssa u merkitään bittijonolla 0u k ja graassa Qk 1 u merkitään bittijonolla 1u k. Saadaan ehdot täyttävät Q k+1 :n pisteiden nimeäminen. Hilat (meshes, grid, lattice) ovat toinen graatyyppi, joka määritellään graatulon avulla. 2-hila M(m, n) on P m :n ja P n :n tulograa, eli M(m, n) = P m P n. Vastaavasti 3-hila M(a, b, c) = (P a P b ) P c ja n-hila M(a 1, a 2,..., a n ) = P a1 P a2 P an. Määritelmä 2.11.5 Graan G = (V, E) viivagraa (line graph) L(G) = (E, E L ), missä L(G):n pisteet ovat E:n viivat ja e 1 e 2 E L jos ja vain jos G:n viivoilla e 1 ja e 2 on yhteinen päätepiste graassa G.

10 3 Puut Puut ovat tärkeä graaluokka. Ne esiintyvät käytännön sovellutuksissa, kuten tarkasteltaessa organisaatiokaavioita tai minimoitaessa siirtoverkkoa. Ne ovat myös perusmalli erilaisille tietorakenteille. Puita käytetään myös etsintä- ja lajittelualgoritmeissa. Graateorian kannalta puut ovat monesti se ensimmäinen graaluokka, jolla tutkittavaa otaksumaa voidaan testata. Seuraavassa määritellään puut, todistetaan puiden perusominaisuuksia ja selvitetään, miten graasta määritetään graan rakenteesta oleellista tietoa sisältävä, graan virittävä puu. 3.1 Puun määritelmä ja puiden perusominaisuuksia Määritelmä 3.1.1 Graa joka ei sisällä yhtään piiriä on asyklinen (acyclic) eli metsä. Puu (tree) on yhtenäinen asyklinen graa Lause 3.1.1 Olkoon G = (V G, E G ) graa. Seuraavat ehdot ovat yhtäpitäviä: (1) G on puu (2) Jokaisen G:n pisteparin yhdistää yksikäsitteinen polku. (3) G on asyklinen ja E G = V G 1. Edellisen lauseen ja Lauseen 2.9.1 perusteella saadaan Seuraus 3.1.1 Yhtenäinen graa on puu jos ja vain jos kaikki sen viivat ovat siltoja. Puiden astejonot Edellisessä luvussa tarkasteltiin graaen astejonoja. Seuraavan tuloksen avulla voidaan päätellä onko äärellinen lukujono puun astejono. Lause 3.1.2 Olkoon d 1, d 2,... d n laskeva äärellinen jono positiivisia kokonaislukuja. Jono d 1, d 2,..., d n on puun astejono jos ja vain jos d 1 + d 2 + + d n = 2(n 1). Todistus " "Jos d 1, d 2,..., d n on puun T astejono, niin silloin T :ssä on n pistettä. Edellisen lauseen perusteella on puussa T silloin n 1 viivaa ja koska jokainen viivoista tulee huomioitua kahden pisteen asteessa, niin d 1 + d 2 + + d n = 2(n 1). " "Todistetaan väite matemaattisella induktiolla puun pisteiden lukumäärän n suhteen. Jos n = 1 tai n = 2, niin väite on voimassa. Induktio-oletus: Aina kun α 1 α 2 α k on äärellinen jono positiivisia kokonaislukuja, joille α 1 + α 2 + + α k = 2(k 1) niin on olemassa puu, jonka astejono on α 1, α 2,..., α k. Olkoon d 1, d 2,... d k+1 jono jolle d 1 d 2... d k d k+1 > 0, jolle d 1 + d 2 + + d k+1 = 2(k + 1 1) = 2k. Osoitetaan, että on olemassa puu T jonka astejono on d 1, d 2,..., d k+1.

11 Isomorset puut Luvussa 2.4 käsiteltiin graaen välistä isomoraa. Selvästi eräs graa-invariantti on pisteiden asteet. On voimassa Apulause 3.1.1 Jos G = H ja α on bijektio graaen välillä, niin deg G (u) = deg H (α(u)) aina kun u V G. Tehokkaimpia menetelmiä kahden puun isomoraa selvitettäessä on verrata astejonoja, tarkastella puiden pisimpiä polkuja ja tarkastella lyhimpiä polkuja joissa päätepisteinä olevien pisteiden asteet eivät esiinny muiden pisteiden asteina. 3.2 Puun lehtien lukumäärä Seuraavassa tarkastellaan miten puun pisteiden asteet määräävät puun lehtien lukumäärän. Aluksi tarkastellaan puun piirtämistä. Puu T on esitetty juurrettuna puuna (rooted tree), juurena piste u V T, jos puu on piirretty seuraavasti: -Juuri on piirretty ylimmälle riville (tai tasolle 0). -Juuren naapurit (eli juuren lapset) on piirretty yhden tason verran juuren alapuolelle. -Kaikki juuren lapsien lapset on piirretty seuraavalle tasolle jne. -Prosessi päättyy, kun kaikki T :n pisteet on käyty läpi. Puun korkeus (height) on juuren alla olevien tasojen lukumäärä. Jokaisesta puusta voidaan tuottaa juurrettu puu seuraavalla menettelyllä, joka yhdistää myös puun pisteiden asteet ja lehtien lukumäärän. -Valitaan juureksi jokin puun lehti. - Piirretään aluksi juurrettuna puuna jokin T :n polku P juuresta lehteen. -Jos tämä on T, niin T:ssä on lehtiä 2, jos V T 2 ja lehtiä on 1, jos V T = 1. -Jos T ei ole polku, niin silloin on olemassa P :n piste u, jonka aste on 2. Piirretään u:sta alkavat polut aina lehteen asti aloittamalla jokaisesta viivasta joka ei esiinny P :ssä. -Jokainen u:sta lähtevä polku päättyy lehteen, joten näin saaduissa poluissa on deg T (u) 2 lehteä. -Toteutetaan edelläkuvattu prosessi jokaiselle P :n pisteelle v i, jolla deg T (v i ) > 2. Lehtiä löytyy deg T (v i ) 2 kappaletta. i -Tehdään edelläkuvattu prosessi jokaisen T:n polun pisteelle w, jonka aste on > 2. Jokaista w:n viivaa, joka ei ole jo aikaisemmin käsitellyissä poluissa, kohti löytyy polku uuteen lehteen. Koska T on äärellinen, niin edelläkuvattu prosessi päättyy, ja koska T on yhtenäinen, niin prosessi tuottaa koko puun (eli myös kaikki lehdet). Silloin jokaista T:n pistettä w vastaa deg T (w) 2 lehteä. On todistettu

12 Lause 3.2.1 Olkoon n i puun T asteen i omaavien pisteiden lukumäärä ja V T 2 (eitriviaali puu). Silloin puun lehtien lukumäärä n 1 = 2 + (i 2)n i = 2 + n 3 + 2n 4 + 3n 5 +. i=3 3.3 Graan virittävä puu Graan virittävä puu on G:n virittävä aligraa, joka on puu. Lause 3.3.1 Yhtenäisellä graalla on virittävä puu. Todistus. Poistetaan yhtenäisestä graasta G = (V, E) ei-sillat seuraavasti: Olkoon H 0 = G. Olkoon H i+1 = H i e i, missä e i ei ole graan H i silta, i = 1, 2, 3,... ja H i+1 = H i, jos jokainen H i :n viiva on H i :n silta. Koska e i ei ole H I :n silta, niin H i+1 on H I :n eli myös graan H 0 = G yhtenäinen virittävä aligraa. Koska G on äärellinen, niin on olemassa sellainen H k, että kaikki sen viivat ovat siltoja. Seurauksen 3.1.1 perusteella H k on puu. Seuraus 3.3.1 Jokaiselle yhtenäiselle graalle G on E G V G 1. Rakennettaessa verkkoa, jossa on yhdistettävä n solmua (kaupunkeja, tietokoneita, komponentteja, jne) on usein toivottavaa pienentää rakentamisen kustannukset ja/tai linkkien määrä minimiin. Tätä kutsutaan yhdistämisongelmaksi (connector problem). Graateoreettisesti tarkoituksena on löytää painotetun graan kevyin yhtenäinen virittävä aligraa. Tällainen graa on selvästi puu, koska ei-siltojen poistaminen keventää graaa. Etsitään siis kevyintä graan virittävää puuta, kun puun paino on sen viivojen painojen summa. Olkoon G α painotettu graa, missä α : E G R + painofunktio. Kruskalin algoritmi antaa ratkaisun yhdistämisongelmaan. Kruskalin algoritmi Olkoon G α = (V, E) painotettu yhtenäinen graa ja V = n. (i) Olkoon e 1 E viiva, jonka paino α(e 1 ) on pienin viivojen painoista. Olkoon E 1 = {e 1 }. (ii) Aina kun i = 1, 2,..., n 1 (tässä järjestyksessä) valitaan sellainen viiva e i / E i 1, että paino α(e i ) on pienin ja graa G[E i 1 {e i }] ei sisällä piiriä. Kun prosessi pysähtyy, on saatu graa T = (V, E n 1 ). Koska T ei sisällä piiriä ja V = E n 1 + 1, niin Lauseen 3.1.1 perusteella T on puu, joten T on G α :n virittävä puu. Lause 3.3.2 Kruskalin algoritmi tuottaa painotetun graan G α painoltaan keveimmän virittävän puun. Graan kevein virittävä puu voidaan etsiä myös Primin algoritmilla (Jarnikin algoritmi), jossa algoritmin jokaisessa vaiheessa saatu graa on alipuu keveimmästä virittävästä puusta. Primin algoritmi Olkoon G α = (V, E) painotettu graa ja V = n. (i) Olkoon u 1 V eräs piste, V 1 = {u 1 } ja E 1 =.

13 (ii)aina kun i = 2, 3,..., n (tässä järjestyksessä) olkoon e i = uv kevein sellainen viiva, että u V i 1 ja v / V i 1. Olkoon E i = E i 1 {e i }, V i = V i 1 {v}. Lopulta saadaan yhtenäinen graa T = (V n, E n ). Selvästi T ei sisällä piiriä, koska uv E i jos ja vain jos v / V i 1, u V i 1. Koska E n = n 1 ja V n = n, niin T on G α :n virittävä puu lauseen 3.1.1 perusteella. Lause 3.3.3 Koko Primin algoritmin suorituksen ajan puu T i = (V i, E i ) on jonkin G α :n virittävän keveimmän puun alipuu. Todistus. Matemaattinen induktio V i :n suhteen. Tapaus V 1 = {u 1 }, E 1 = selvä. Induktio-oletus:Puu T k = (V k, E k ) on jonkin G α :n virittävän keveimmän puun T min = (V min, E min ) alipuu. Induktioväite:Puu T k+1 = (V k+1, E k+1 ) on jonkin G α :n virittävän keveimmän puun alipuu. Koska Primmin algoritmi tuottaa prosessin päätyttyä G α :n virittävän puun, niin edellisen lauseen perusteella saadaan. Seuraus 3.3.2 Primmin algoritmi tuottaa painotetun graan G α puun. keveimmän virittävän

14 4 Kaksijakoiset graat ja sovitukset Sovitusongelmissa on yleensä annettu joukko alkioita ja relaatioita alkioiden välillä. Tehtävänä on löytää sellaiset alkioparit, että jokaiselle alkiolle löytyy yksikäsitteinen sopiva pari. Eräs tällainen ongelma on ns. Henkilökunnan sijoitteluongelma (job assignment problem): Yrityksessä on p työntekijää ja q työtehtävää. Kukin työntekijä osaa tehdä ainakin yhtä työtehtävää. Onko mahdollista sijoittaa kukin työntekijä hänen osaamaansa työtehtävään? Seuraavassa tarkastellaan aluksi kaksijakoisten graaen ominaisuuksia, määritellään erilaisia sovituksia ja lopuksi tarkastellaan sovituksia kaksijakoisissa graafeissa. 4.1 Kaksijakoisten graaen ominaisuuksia Seuraava algoritmi tarkistaa onko graa G = (V, E) kaksijakoinen. Input: Graa G = (V, E) (1) Valitaan jokin G:n piste u ja väritetään se värillä 1. (2) Väritetään kaikki u:n vieruspisteet värillä 2. (3) Väritetään kaikki värillä 2 väritettyjen pisteiden vieruspisteet värillä 1 ja värillä 1 väritettyjen pisteiden vieruspisteet värillä 2. (4) Jos kaikki G:n pisteet saadaan yksikäsitteisesti väritettyä, niin G on kaksijakoinen eli (X 1, X 2 )-kaksijakoinen, missä X i on värillä i väritettyjen pisteiden joukko. Lause 4.1.1 Graa G on kaksijakoinen jos ja vain jos G ei sisällä paritonta piiriä. Todistus " "Olkoon G (X, Y )-kaksijakoinen graa ja C : v 1 v 2 v k+1 = v 1 sen k:n pituinen piiri. Jos v 1 X (tapaus v 1 Y on vastaava), niin v 2 Y, v 3 X,.... Siis v 2i Y ja v 2i+1 X. Välttämättä on sillloin k + 1 = 2m + 1 eli C = k = 2m. " ". Oletetaan, että kaikki G:n piirit ovat parillisisia. Voidaan olettaa, että G yhtenäinen. Olkoon v G piste, X = {x d G (v, x) on parillinen} ja Y = {y d G (v, y) on pariton}. Koska G on yhtenäinen, niin V G = X Y ja lisäksi X Y =. Olkoot u, w X (tapaus u, w Y on vastaava) ja olkoot P : v u ja Q : v w lyhyimmät polut v:stä u:hun ja v:stä w:hen. Osoitetaan, että uw / E G. Olkoot x piste, joka esiintyy sekä P :ssä, että Q:ssa ja on tällaisista pisteistä kauimmaisena v:stä. Silloin P = P 1 P 2 ja Q = Q 1 Q 2, missä... Koska puu ei sisällä yhtään piiriä, on voimassa. Seuraus 4.1.1 Jokainen puu on 2-jakoinen graa. Edellisen lauseen perusteella saadaan myös

15 Seuraus 4.1.2 Jokaisen 2-jakoisen graan aligraa on 2-jakoinen. Erdös (1965) osoitti seuraavan tuloksen. Lause 4.1.2 Jokaisella graalla G on olemassa 2-jakoinen aligraa H G, jolle E H 1 2 E G. Todistus. Olkoon V G = X Y sellainen V G :n ositus, että viivojen uv, u X, v Y määrä on mahdollisimman suuri. Olkoon F = E G {uv u X, v Y } ja H = G[F ] (viivojen joukon F indusoima aligraa). Selvästi H on G:n virittävä aligraa. Lisäksi H on kaksijakoinen.... 4.2 Sovitukset Määritelmä 4.2.1 Graalle G on viivojen joukko M E G G:n sovitus (matching), jos M ei sisällä vierekkäisiä viivoja. Sovitus M on maksimisovitus (maximum matching), jos kaikille G:n sovituksille M on M M. Sovitus M on maksimaalinen sovitus (maximal matching),jos viivajoukko M {e} ei ole G:n sovitus millään viivalla e E G \ M. Ero maksimisovituksen ja maksimaalisen sovituksen välillä: Maksimaalista sovitusta ei voi enää suurentaa, niin että se pysyy sovituksena. Sen ei kuitenkaan tarvitse olla viivojen lukumäärältään suurin, eli maksimisovitus. Määritelmä 4.2.2 Graan G sovitus M sovittaa (saturates) pisteen v, jos v on jonkin M:n viivan päätepiste. Sovitus M sovittaa joukon A V G jos M sovittaa jokaisen A:n pisteen. Sovitus M on täydellinen sovitus (perfect matching), jos se sovittaa V G :n. Selvästi jokainen täydellinen sovitus on maksisovitus ja siis myös maksimaalinen sovitus. Etsittäessä graan maksimisovitusta, on eräs tehokas menetelmä tarkastella ns. vuorottelevia polkuja. Määritelmä 4.2.3 Olkoon M graan G = (V, E) sovitus. Graan G polku P : e 1 e 2 e n on M- vuorotteleva (M-alternating) G:ssä, jos polun ensimmäinen piste ei ole M-sovitettu, e 2i+1 / M ja e 2i M. M-vuorotteleva polku P on sovituksen M M-lisäyspolku (M-augmented), jos myöskään polun viimeinen piste ei ole M-sovitettu. Selvästi jokainen M-lisäys polku on pituudeltaan pariton. Seuraavassa yhdistetään edellämääritetyt polut ja sovitukset toisiinsa. Apulause 4.2.1 Jokainen yhtenäinen graa G, jonka suurin aste (G) 2 on polku tai piiri.

16 Lisäyspolkujen ja maksimisovitusten olemassaolo liittyy toisiinsa. Olkoon G = (V G, E G ) graa,m G:n sovitus ja P : u v sovituksen M lisäyspolku. Olkoon viivajoukko M p = {e i e i P ja e i M} ja viivajoukko M p = {e i e i P ja e i / M}. Koska P on pariton ja pisteet u ja v eivät ole M-sovitettuja, niin M p = M p + 1. Silloin M = (M \ M p ) M P on G:n sovitus ja M > M + 1. Siis M ei ole G:n maksimisovitus. Berge (1957) on osoittanut seuraavan tuloksen Lause 4.2.1 Sovitus M on graan G maksimisovitus jos ja vain jos G ei sisällä M:n lisäyspolkua. Todistus" "on todistettu edellä. " "Oletetaan, että G ei sisällä M:n lisäyspolkua. Vastaoletus: M ei ole G:n maksimisovitus. On siis olemassa G:n sovitus M, jolle M > M. Olkoon M = (M \ M ) (M \ M) ja olkoon H = G[M ] viivojen virittämä aligraa. Selvästi deg H (v) 2 aina kun v H, sillä v on päätepiste korkeintaan yhdessä sovituksen M ja yhdessä sovituksen M viivassa. Edellisen lemman perusteella jokainen H:n komponentti A on polku tai piiri. Koska mikään joukon A piste ei voi olla kahden M:n tai M :n viivan päätepiste, niin A:n viivat vuorottelevat M:n ja M :n viivoilla. Jos A on piiri, niin silloin A on parillinen. Vastaoletuksen perusteella on M > M, joten on olemassa sellainen H:n komponentti A, että A:ssa on enemmän M :n kuin M:n viivoja. Silloin välttämättä A on polku u v.... Huomio: Edelläolevan tuloksen alkuosaa voidaan käyttää maksimisovituksen muodostamiseen, kun lähtökohtana on mikä tahansa graan G sovitus M ja G:n M-lisäyspolku. 4.3 Sovitukset kaksijakoisissa graafeissa Vaikka sovitukset voidaan määritellä kaikille ei-triviaaleille graafeille, useimmat sovitusongelmat koskevat kaksijakoisia graafeja. Esimerkki 4.3.1 Projektiin osallistuu 5 työntekijää T 1, T 2,..., T 5 ja projektissa on 5 tehtävää t 1, t 2,..., t 5. Työntekijöiden taidot eri tehtävissä on esitetty graan avulla seuraavasti... Tehtävänä on sijoittaa työntekijät eri tehtäviin niin, että jokaiseen tehtävään tulee siihen kykenevä henkilö.

17 Selvästi täydellisen sovituksen omaavassa graassa on oltava parillinen määrä pisteitä. Jos lisäksi G on (X, Y )-kaksijakoinen graa, niin sillä on täydellinen sovitus vain jos X = Y. Toisinpäin tulos ei ole voimassa. Seuraava tulos antaa välttämättömän ja riittävän ehdon sille, milloin kaksijakoinen graa sisältää täydellisen sovituksen. (X, Y ) kaksijakoinen graa G toteuttaa naapuruusehdon (Hall's condition), jos N G (S) S aina kun S X. Lause 4.3.1 (Hall's Matching Theorem)Olkoon G (X, Y )-kaksijakoinen graa. Graalla G on joukon X sovittava sovitus M jos ja vain jos G toteuttaa naapuruusehdon. Todistus. " "Jos M on G:n joukon X sovittava sovitus, niin aina kun u X, on olemassa v Y, jolle uv M. Koska M on sovitus, niin aina kun x X ja x u on voimassa xv / M. Silloin jokaista joukon S X pistettä vastaa ainakin yksi joukon N G (S) piste. Siis aina kun S X, on N G (S) S. " "Olkoon G (X, Y ) kaksijakoinen naapuruusehdon toteuttava graa. Todistetaan tulos matemaattisella induktiolla X :n suhteen. Jos X = 1, niin tarvittava sovitus löytyy. Induktio-oletus: Jos X k, niin G:llä on joukon X sovittava sovitus. Olkoon X = k + 1. Kaksi mahdollisuutta... Eellisen lauseen perusteella on voimassa Seuraus 4.3.1 (X, Y )-kaksijakoisella graalla G, missä X = Y, on täydellinen sovitus jos ja vain jos N G (S) S aina kun S X. Todistus. Tulos seuraa edellisestä lauseesta, sillä jos sovitus M sovittaa joukon X, niin koska X = Y ja jokainen X:n piste on täsmälleen yhden sovituksen M viivan päätepiste, on myös jokainen Y :n piste täsmälleen yhden M:n viivan päätepiste. Siis M on täydellinen. Edelläolevaa muotoilua kutsutaan myös Hallin naittamisteoreemaksi (Hall's Marriage Theorem), sillä se voidaan muotoilla myös seuraavasti: Jos X on joukko miehiä ja Y on yhtäsuuri joukko naisia, niin aina kun mitä tahansa n:n miehen joukkoa vastaa ainakin n:n sopivan naisen joukko, voidaan kaikista miehistä ja naisista muodostaa sopivat parit. Seuraavassa tarkastellaan säännöllisen kaksijakoisen graan sovituksia. Aluksi todistetaan Apulause 4.3.1 Jos säännöllinen graa on (X, Y )-kaksijakoinen, niin X = Y. Todistus. Olkoon X = k ja G r-säännöllinen. Silloin E G = kr. Koska jokaisen viivan toinen päätepiste on Y :n piste ja koska G on r-säännöllinen, niin r Y = rk, siis Y = k. Lause 4.3.2 Jokaisella säännöllisellä 2-jakoisella graalla G on täydellinen sovitus. Todistus. Olkoon G (X, Y )-kaksijakoinen r-säännöllinen graa. Edellisen apulauseen perusteella on X = Y. Olkoon S X mielivaltainen. Koska G on r-säännöllinen, niin S:n pisteet ovat r S :n viivan päätepisteitä. Näiden viivojen toinen päätepiste on aina Y :n piste. Koska myös jokaisen Y :n

18 pisteen aste on r, niin näillä r S :llä viivalla on ainakin S eri pistettä päätepisteinä Y :ssä. Siis N G (S) S ja väite seuraa Lauseesta 4.3.1. Erilliset edustajat Hallin teoreemaa voidaan soveltaa myös tilanteessa, jossa on tietystä joukosta erilliset edustajat. Esimerkiksi poliitikoilla voi olla useita eri intressiryhmiä. Oletetaan, että poliitikoista olisi kerättävä toimikunta, jossa jokainen poliitikko edustaa yhtä intressiryhmää. Kysymys onko toimikunnan perustaminen mahdollista ratkeaa Hallin teoreeman avulla. Yleisesti: Määritelmä 4.3.1 Olkoon J S = {S 1, S 2,..., S n } äärellisten ei-tyhjien joukon S osajoukkojen joukko (S i :t eivät välttämättä ole erillisiä). Joukkojen joukon J S erilliset edustajat (transversals tai system of distinct representatives)ovat joukko T S,missä T = n ja T sisältää yhden alkion jokaisesta joukosta S i. Erilliset edustaja liittyvät Hallin teoreemaan seuraavasti. Olkoon J S = Y ja ja X = {1, 2,..., n}. Määritellään (X, Y )-kaksijakoinen graa G seuraavasti: Viiva (i, s) E G jos ja vain jos s S i. Jos G:llä on sovitus M, joka sovittaa X:n, niin erillisten edustajien joukko saadaan valitsemalla edustajiksi sovituksen M viivojen ne päätepisteet, jotka ovat Y :n pisteitä. Seuraus 4.3.2 Olkoon J S äärellinen äärellisten ei-tyhjien joukkojen joukko (eli joukkoperhe). Perheellä J S on erillisten edustajien joukko jos ja vain jos jokainen perheen J S k:n joukon unioni sisältää ainakin k alkiota. Todistus. Olkoon S joukoissa S i esiintyvien alkioiden joukko, S = {a 1, a 2,..., a n } ja olkoon graa G = (V G, E G ), missä ja V G = {a 1, a 2,..., a n } X, X = {1, 2, 3,..., m} Selvästi G on (X, S)-kaksijakoinen graa.... E G = {(i, a j ) a j S i } Myös painotettujen graaen sovituksilla on sovelluksia. Aikaisemmin sijoiteltiin työntekijöitä eri tehtäviin. Soveltuvuutta voidaan myös kuvata painotetulla graalla G α, missä viivan T i t j paino α(t i t j ) kuvaa työntekijän T i soveltuvuutta tehtävään t j. Tyypillisesti tarkoituksena on maksimoida sovituksen viivojen painojen summa. Edelläkuvattu M-lisäyspolku tekniikka soveltuu myös muille kuin kaksijakoisille graafeille. Kurssin lopussa tarkastellaan siirtoverkon vuota, jota voidaan myös käyttää maksimisovituksen etsimisessä.

19 5 Etäisyys Etäisyyden käsite esiintyy graaen yhteydessä mm. tutkittaessa graaen isomoraa (graa invariantit) ja graaen operaatioita. Etäisyyden avulla määritellään graan keskeisimpiin osiin liittyviä käsitteitä ja tarkastellaan esimerkiksi palveluiden sijoittamisongelmaa. Useat graaalgoritmit tutkivat tietynpituisia polkuja graafeissa. Seuraavassa määritellään etäisyyteen liittyviä keskeisiä käsitteitä graafeissa, tarkastellaan etäisyyttä puissa ja tarkastellaan miten voidaan määritellä puun ja yleisemmin graan keskeiset osat. 5.1 Määritelmiä Aikaisemmin määriteltiin, että kahden pisteen u ja v etäisyys graassa G, d G (u, v) on lyhyimmän u v polun viivojen lukumäärä. Tämä etäisyysfunktio toteuttaa samat aksiomit kuin etäisyysfunktiot (metriikat) muussa matematiikassa, eli (1) d G (u, v) 0 ja d G (u, v) = 0 jos ja vain jos u = v. (2) d G (u, v) = d G (v, u) kaikilla u, v V G. (3) d G (u, v) d G (u, w) + d G (w, v) aina kun u, v, w V G. Vastaavat aksiomit ovat voimassa myös silloin kun etäisyyttä kuvataan viivapainoilla. Määritelmä 5.1.1 Graan G = (V, E) pisteen u eksentrisyys (eccentricity) e G (u) = max d G(u, v). v V Piste v on u:n eksentrinen piste (eccentric vertex), jos Esimerkki 5.1.1 d G (u, v) = e G (u) Huomio. Jos e G (u) = k jollakin u V G, niin pisteen u etäisyys mistä tahansa pisteestä on k ja on olemassa ainakin yksi piste v, jolle d G (u, v) = k. Määritelmä 5.1.2 Graan G = (V, E) säde (radius) on rad(g) = min{e G (u) u V }. Säde on siis G:n pisteiden pienin eksentrisyys. Graan G keskus (center) C(G) = {u e G (u) = rad(g)}

20 Graan keskus esiintyy mm. palvelun sijoittamisongelmassa (facility location problem) Tässä ongelmassa graalla mallinnetaan kaupungin katuverkostoa. Viivat ovat teitä ja pisteet esimerkiksi kaupunginosia. Silloin keskus sisältää ideaaliset sijainnit esimerkiksi poliisi- ja paloasemalle, sairaalalle jne. Pisteen v eksentrisyys kuvaa vasteaikaa v:stä kauimmaiseen pisteeseen. Edellämainittujen palveluiden sijoittelussa pyritään maksimivasteaika eli siis eksentrisyys, minimoimaan. Määritelmä 5.1.3 Graan G = (V, E) halkaisija (diameter) on diam(g) = max{e G (u) u V }, jos G on yhtenäinen ja diam(g) =, jos G on epäyhtenäinen. Graan G periferia (periphery) P (G) = {u e G (u) = diam(g)} Määritelmä 5.1.4 Graan G = (V, E) pistepari u, v on antipodaalinen (antipodal), jos d G (u, v) = diam(g). Lyhin polku u (radial path). v, missä u C(G) ja v on u:n eksentrinen piste on radiaalinen polku Seuraavassa kaksi perustulosta graan eksentrisyydestä, säteestä ja halkaisijasta. Lause 5.1.1 Jos u ja v ovat yhtenäisen graan G vieruspisteitä, niin Todistus.... e G (u) e G (v) 1 Lause 5.1.2 Aina kun G on yhtenäinen graa, niin rad(g) diam(g) 2rad(G) Todistus. Selvästi on voimassa rad(g) diam(g), joten riittää osoittaa, että diam(g) 2rad(G).... 5.2 Puut ja etäisyys Tarkastellaan etäisyyden käsitettä puissa. Seuraavassa on joukko puun ominaisuuksia. Lause 5.2.1 Puulle T = (V T, E T ) on voimassa: (i) Aina kun u ja v ovat vieruspisteitä ja w V T piste, niin d T (u, w) d T (v, w) = 1. (ii)kaikki T :n eksentriset pisteet ovat lehtiä. (iii)kaikki antipodaalisissa pareissa esiintyvät pisteet ovat lehtiä. (iv) P (T ) sisältää vain T :n lehtiä. (v)jos polku P : u v on T:n lyhimmistä poluista pisin, niin kaikki keskuksen C(T ) pisteet esiintyvät polussa P.

21 Todistus.(i) Koska T on puu, niin on olemassa vain yksi polku P u : u w ja vain yksi polku P v : v w. Silloin joko u P V tai v P u. (ii) Vastaoletus: On olemassa v joka ei ole lehti ja e T (u) = d T (u, v). Koska v ei ole lehti, niin sillä on ainakin 2 vieruspistettä. Olkoon v se vieruspiste, joka ei esiinny polussa P : u v. Silloin u v v on T:n polku ja koska T on puu, on se ainoa ploku pisteestä u pisteeseen v. Silloin on d T (u, v ) = d T (u, v) + 1 = e T (u) + 1, mikä on ristiriita. (iii)vastaoletus: Pistepari u, v on antipodaalinen pari ja v ei ole lehti. Jos pisteellä v on vieruspiste v, joka ei esiinny polussa P : u v, niin vastaavasti kuin kohdassa (ii) voidaan osoittaa, että polku P vv : u v v on pidempi kuin polku P. (iv) seuraa kohdasta (ii) (v)vastaoletus: On olemassa sellainen piste w C(T ) ja sellainen polku P : u v, P = diam(t ), että w ei esiinny polussa P. Koska T ei sisällä piiriä ja T on yhtenäinen, niin joko u esiintyy polussa w v tai v esiintyy polussa w u. Silloin on mikä on ristiriita. rad(t ) = e T (w) max{d T (u, w), d T (v, w)} > d T (u, v) = diam(t ), Puun keskuksen muoto on yksinkertainen. Lause 5.2.2 Puun keskuksen muodostaa joko yksi piste tai kaksi vieruspistettä. Todistus. Osoitetaan tulos matemaattisella induktiolla V T :n suhteen. Jos n 2, niin lause on voimassa. Olkoon n 3ja olkoon L = {v v V T ja v on lehti }. Induktio-oletus: Aina kun V T k, niin T:n keskuksen muodostaa yksi piste, tai kaksi vierekkäistä pistettä. Olkoon V T = k + 1 ja olkoon L puun T lehtien joukko.... Edellisen lauseen todistus antaa myös menetelmän puun keskuksen etsimiseen. Poistetaan puusta aina lehdet. Viimeiseksi jäävä piste tai pistepari on alkuperäisen puun keskus. Puun keskeisimpiä osia voidaan arvioida myös muulla kuin keskuksella. Määritelmä 5.2.1 Puun T = (V T, E T ) pisteeseen v liittyvä oksa (branch) on sellainen T :n indusoima alipuu, jossa v on lehti. Pisteen v oksapaino (branch weight) b W (v) = max{ E T puu T on pisteeseen v liittyvä oksa} eli b W (v) on v viivojen määrältään suurimman oksan viivojen lukumäärä. Määritelmä 5.2.2 Puun sentroidin (centroid) muodostavat ne pisteet, joiden oksapaino on pienin. Lause 5.2.3 Puun sentroidi käsittää yhden pisteen tai kaksi vierekkäistä pistettä.

22 Todistus.Vastaoletus: On olemassa kaksi puun T sentroidin pistettä u ja v, jotka eivät ole vieruspisteitä.... Vaikka keskus ja sentroidi molemmat "mittaavat"puun keskeisiä osia, niin silti ne voivat olla erillisiä toisistaan. Lause 5.2.4 Olkoon T puu. Silloin on voimassa: (i) Jos T :n keskus käsittää yhden pisteen, niin diam(t ) = 2rad(T ). (ii)jos T :n keskuksen muodostaa 2 pistettä, niin diam(t ) = 2rad(T ) 1. Todistus. (i) Olkoon C(T ) = {v}. Jos T käsittää vain yhden pisteen, niin silloin T = K 1 ja rad(t ) = 0 = 2 0 = 2 diam(t ). Oletetaan, että T on ei-triviaali puu. Silloin on V T 3. (ii) Olkoon C(T ) = {u, v}, V u = {x V T d T (u, x) < d T (v, x)} ja... V v = {x V T d T (v, x) < d T (u, x)}. 5.3 Keskus graafeissa Puille keskuksen muoto on yksinkertainen. Muille graafeille tilanne on ongelmallisempi. Lause 5.3.1 Yhtenäisen graan G keskus sisältyy yhteen G:n blokkiin. Todistus. Jos G on yhtenäinen graa ilman irrotuspisteitä, niin G koostuu yhdestä blokista. Voidaan siis olettaa, että on olemassa G:n irrotuspiste v. Silloin graalla G v on ainakin kaksi komponenttia. Vastaoletus: On olemassa pisteet x, y C(G), missä x V H ja y V J ja H ja J ovat G v:n eri komponentteja.... Keskuksen sisältävää blokkia kutsutaan keskusblokiksi (central block).

23 6 Graan yhtenäisyys Esimerkki Tarkastellaan allaolevia graafeja.... Kaikki graat ovat yhtenäisiä, mutta yhtenäisyys on "erilaista". Graa G 1 on puu. Minkä tahansa viivan poistaminen muuntaa G 1 :sen epäyhtenäiseksi. Graaa G 2 ei viivan poistaminen tee epäyhtenäiseksi, mutta keskimmäisen pisteen poistaminen kyllä. Graaa G 3 ei saa epäyhtenäiseksi yhden viivan tai pisteen poistolla, mutta silti se on vähemmän yhtenäinen kuin täydellinen graa G 4. Graaen yhtenäisyyteen liittyvillä käsitteillä ja tuloksilla on sovellutuksia mm. tietoliikenneja tietokoneverkkoja tarkasteltaessa. Seuraavassa määritellään graan yhtenäisyyttä kuvaavia tunnuslukuja ja niiden välisiä suhteita ja tarkastellaan miten erillisten polkujen lukumäärä kuvaa graan yhtenäisyyttä. 6.1 Graan yhtenäisyyttä kuvaavat luvut Graan virittävä puu on yleensä optimaalinen ratkaisu, kun verkon rakentamisen rakennuskulut ovat tärkein kriteeri. Muita kriteereitä voi olla esimerkiksi verkon viansieto. Voidaan esimerkiksi haluta varmistaa että kaksi verkon solmua (tietokonetta, komponenttia jne.) on liitetty toisiinsa niin, että yhden solmun ja/tai linkin (esim. kaapelin) vikaantuminen ei poista kaikkia yhteyksiä solmujen välillä. Aikaisemmin määriteltiin, että graa G on separoitumaton, jos G v on yhtenäinen aina kun v V G. Separoitumattomasta graastakin saadaan epäyhtenäinen poistamalla tarpeeksi pisteitä. Määritelmä 6.1.1 Graan G pisteiden joukko A V G on separoiva joukko (separating set), jos graa G A on epäyhtenäinen. Apulause 6.1.1 Jos yhtenäisellä graalla G = (V, E) ei ole separoivaa joukkoa, niin se on täydellinen graa. Todistus. Jos V 2, niin G on täydellinen. Oletetaan, että V 3. Jos u, v V ovat eri pisteet ja uv / E, niin silloin graa G[{u, v}] on epäyhtenäinen, eli V \ {u, v} on G:n separoiva joukko. Jos siis G:llä ei ole separoivaa joukkoa, niin on oltava, että uv E aina kun u, v V ja u v. Silloin G on täydellinen graa. Määritelmä 6.1.2 Graan G (piste) yhtenäisyysluku (connectivity number) κ(g) = min{ A A V G ja G A on epäyhtenäinen tai triviaali}. Graa G on k-yhtenäinen (k-connected), jos κ(g) k. Vastaavasti voidaan määritellä Määritelmä 6.1.3 Graan G viivojen joukko F E G on viivairrotusjoukko (edge cut), jos graa G F on epäyhtenäinen. Jos lisäksi viivajoukko F \ {e} ei ole viivairrotusjoukko millään e F, niin F on side (bond). Graan G viivayhtenäisyysluku (edge connectivity number) λ(g) = min{ F F E G ja G F on epäyhtenäinen }.

24 Triviaaleille graafeille λ(g) = 0. Graa G on k-viivayhtenäinen (k-edge connected), jos λ(g) k. Seuraavassa muutamia edellä määriteltyihin lukuihin liittyviä ominaisuuksia. Apulause 6.1.2 Olkoon e yhtenäisen graan G silta. Silloin (i) c(g e) = 2. (ii)jos H on graan G e komponetti ja e E H on H:n silta, niin e on myös G:n silta. Todistus. (i) Olkoon e = uv G:n silta. Silloin on c(g e) 2 ja graa G e ei sisällä polkua u v. Jos w on G:n piste, niin on olemassa G:n polku P : w u. Jos e / P, niin P on myös graan G e polku. Jos e P, niin on olemassa graan G e polku w u. Siis jokaisella pisteellä w G e sisältää joko polun w u tai polun w v. Eli c(g e) 2. (ii)... Apulause 6.1.3 Jos e = uv on yhtenäisen graan G silta, niin joko G = K 2 tai ainakin yksi pisteistä u, v on irrotuspiste. Edellä olevien tulosten avulla voidaan osoittaa: Apulause 6.1.4 Jos F on yhtenäisen graan G side, niin Lause 6.1.1 Kaikille graafeille G on c(g F ) = 2. κ(g) λ(g) δ(g). Todistus. Voidaan olettaa, että G on ei-triviaali. Jos v V G, niin kaikkien viivojen, joissa v on toisena päätepisteenä, poistaminen tekee graasta epäyhtenäisen. Siis λ(g) δ(g). Riittää osoittaa, että κ(g) λ(g). Jos λ(g) = 0, niin G on epäyhtenäinen, joten myös κ(g) = 0. Jos λ(g) = 1, niin G on yhtenäinen ja G sisältää sillan. Lemman 6.1.3. perusteella G = K 2 tai G sisältää irrotuspisteen. Molemmissa tapauksissa κ(g) = 1. Voidaan olettaa, että λ(g) 2. Olkoon F sellainen G:n viivairrotusjoukko, että F = λ(g) ja olkoon e = uv F. Silloin F on side ja lemman 6.1.4 perusteella c(g F ) = 2. Olkoon H = G (F \ {e}) = (G F ) + e. Koska λ(g) = F, niin H on yhtenäinen G:n aligraa. Koska c(g F ) = 2, niin e on graan H silta. Aina kun viiva f F \ {e}, niin ainakin toiselle sen päätepisteelle w on voimassa w u ja w v. Valitaan jokaiselle joukon F \ {e} viivalle yo. ehdon täyttävä piste(valinnan eri viivoille ei tarvitse olla eri piste) ja olkoon S näin valittujen pisteiden joukko. Silloin on S F 1 = λ(g) 1 ja graa G S ei sisällä joukon F \ {e} viivoja. Jos G S on epäyhtenäinen, niin silloin S on G:n separoiva joukko ja κ(g) S F 1 λ(g). Oletetaan lopuksi, että graa G S on yhtenäinen. Koska u, v / S, niin S:n määritelmän perusteella on H S = G F + uv S = G S ja silloin G S on graan H indusoitu aligraa. Koska viiva uv G S ja uv on H:n silta, niin uv on myös graan G S silta.