GRAFŲ TEORIJA Pasirenkamasis kursas, Magistrantūra, 3 sem. 2018 m. rudens semestras Parengė: Eugenijus Manstavičius Įvadas Pirmoji kurso dalis skirta grafų algoritmams, tačiau apibrėžus gretimumo matricą pravartu pajusti jos teorinę svarbą. Todėl pirmose paskaitose paliečiama grafo spektrinė analizė. Vėliau pereinama prie pačių algoritmų. Tada per visą semetrą neskubėdami studentai turėtų parengti po tris veikiančias įskaitines programas. Antroji dalis - žinių, gautų bakalauro studijose, pagilinimas. 1. Grafų spektrinė analizė Tegul G = (V, E), V = {1, 2,..., n}, yra (paprastasis) grafas, o A = ((a ij )), a ij = 1{ij E} - jo gretimumo matrica. Tai simetrinė matrica; ji yra diagonalizuojama, turi realias tikrines reikšmes. Pastarųjų aibė yra vadinama spektru, netgi grafo spektru. Aišku, kad A įstrižainėje yra esantys a jj = 0, jei 1 j n. Briaunas sunumeravę, galime apibrėžti grafo incidentumo matricą B = ((b ik )), 1 i n, 1 k m = E ; čia b ik = 1{i inc. e k }, o e k yra k-oji briauna. 1 teorema. Teisingas sąryšis BB t = D + A, čia D - diagonali matrica, kurios įstrižainėje iš eilės išdėstyti viršūnių laipsniai. Įrodymas. Pritaikyti apibrėžimus. Pastaba. Ne bet kokia 0-1 matrica yra gretimumo matrica. Ką slepia matrica A k = ((a (k) ij )), k N? Atsakymas: 2 teorema. Elementas a (k) ij lygus k ilgio (i j) kelių skaičiui. Įrodymas. Pasinaudokime indukcija pagal k. Jei k = 1, akivaidu. Jei jau žinome, kad a (k 1) ij lygus k 1 ilgio (i j) kelių skaičiui, tai sudauginę matricas, gauname a (k) ij = Tai jau k ilgio (i j) kelių skaičius. n r=1 a (k 1) ir a (1) rj. Toliau visada I m - vienetinė matrica, o J m = ((1)) ir m m matmenų, o I n =: I ir J n =: J. 1
2 3 teorema. Grafas G yra jungus tada ir tik tada, jei matrica (A + I) n 1 neturi nulinių elementų. Įrodymas. Pritaikę Niutono binomo formulę, turime ( ) ( ) n 1 ((q ij )) := (A + I) n 1 n 1 n 1 = A k I n k n 1 = A k. k k Todėl q ij = k=0 n 1 k=0 ( ) n 1 k a (k) ij. Suma skaičiuoja visų ilgių (i j) kelius, net su svoriu. Suma teigiama, jei bent vienas iš dėmenų yra teigiamas. 4 teorema. Jei grafai G ir G yra izomorfiniai, tai jų gretimumo matricas A ir A sieja lygybė A = P A P 1, čia P - keitinio matrica. Įrodymas. Pritaikyti apibrėžimus. Išvada. Izomorfiniai grafai turi tą patį gretimo matricų charakteristinį polinomą, t.y., p G (λ) = det(λi A) = p G (λ) = det(λi A ). 5 teorema. Pilnojo dvidalio grafo K r,s = G charakteristinis polinomas lygus p G (λ) = λ n 2 (λ 2 rs), čia n = r + s. Įrodymas. Atitinkamai sunumeravę viršūnes, matome, kad gretimumu matrica yra blokinė ( ) 0 Jr A =. J s 0 Čia 0 atitinkami nulių blokai. Matricos A rangas yra 2, tai kartu yra ir nenulinių tikrinių reikšmių skaičius. Vadinasi, charakteristinio polinomo pavidalas p G (λ) = λ n 2 (λ b 1 )(λ b 2 ), Simetrinės matricos tikrinės reikšmės yra realios, ir jų suma yra matricos A pėdsakas tr(a) = 0 = b 1 + b 2. p G (λ) = λ n 2 (λ 2 a 2 ), a := b 1. Lieka rasti a. Prisimename A 2 elementų prasmę. Įstrižainėje - ilgio 2 uždarų kelių (i j i) ir (j i j) skaičiai. Pilname dvidaliame grafe juos galime suskaičiuoti. Iš viso jų yra 2rs. Bet tr(a 2 ) = 2a 2. Vadinasi, Iš čia išplaukia teoremos teiginys. 2a 2 = 2rs k=0
Pastaba. Ar charakteristinis polinomas apibrėžia grafą izomorfizmo tikslumu? NE! Pavyzdys. Jei G = C 4 x, x V, tai p G (λ) = λp C4 (λ) = λ 3 (λ 2 4). Imkime K 1,4 = G G. Pagal 5 teoremą, jam irgi p G (λ) = λ 3 (λ 2 4). Koks dvidalio, nebūtinai pilnojo, grafo spektras - tikrinių matricos A reikšmių rinkinys? 6 teorema. Jei G yra dvidalis grafas, o λ R jo charakteristinio polinomo k-ojo kartotinumo šaknis, tai λ irgi. Įrodymas. Atitinkamai sunumeravę viršūnes, matome, kad gretimumo matrica yra blokinė ( ) 0 B A =. B t 0 Čia 0 žymi atitinkamus nulių blokus, B yra (0-1) matrica ir B t - transponuotoji matrica. Tikrinis reikšmės λ nenulinis vektorius X 0 irgi turi pavidalą ( ) x X =, y čia x, y atitinkamų dimensijų vektoriai, nes ( ) ( ) By x λx = AX = = λ. B t x y Taigi By = λx, B t x = λy. Jei vektorius y nenulinis, imkime vektorių ( ) x X :=, y tada ( ) ( ) ( ) By λx x AX = = = λ = λx. B t x λy y Matome, kad X yra tikrinės reikšmės λ tikrinis vektorius. Kai tikrinės reikšmės λ kartotinumas yra k, tai jai atitinka k tiesiškai nepriklausomų tikrinių vektorių. Pakartoję argumentus, kiekvienam iš jų rastume reikšmės λ tikrinius vektorius ir jie būtų nepriklausomi. Vadinasi, ir pastarosios tikrinės reikšmės kartotinumas yra k. Įrodyta. 7 teorema. Šie teiginiai yra ekvivalentūs: (1) G yra dvidalis grafas; 3
4 (2) bet kokiam k N tikrinių reikšmių laipsnių suma n λi 2k 1 = 0. i=1 Įrodymas. Užrašytoji suma - matricos A 2k 1 pėdsakas. Taigi, nelyginio ilgio uždarų kelių grafe G nėra. Jame nėra ir nelyginio ilgio ciklo. Iš čia išplaukia, kad G yra dvidalis. Iš tiesų, jei G 0 G yra bet kokia jungi komponentė ir u V (G 0 ) = V 0, o f(v) = min{(u v) tako ilgis} Tada apibrėžę skaidinį V 0 = U 1 U 2 dalis pagal f(v) lyginumą: ir U 1 = {v : f(v) yra nelyginis} U 2 = {v : f(v) yra lyginis}, matytume, kad U 1 U 2 =. Briauna tarp bet kokių dviejų viršūnių iš U 1 arba U 2 sukurtų nelyginio ilgio ciklą. To būti negali. Taip išskaidę kiekvieną komponentę, gauname dvidalį grafą. Vadinasi, (2) (1). Teiginys (1) (2) išplaukia iš pereitos teoremos, nes nenulinės tikrinės reikšmės įeina poromis. Jau 6 teoremos įrodyme, ieškodami tikrinių reikšmių, pradėjome nuo tikrinių vektorių, kurių tiesiškai nepriklausomų turi būti lygiai n, nes matrica A yra simetrinė. Verta įsidėmėti, kad tikrinis vektorius X = (x 1,..., x i,..., x n ), atitinkantis reikšmę λ, svorį" λx i išskirsto i-os viršūnės kaimynėms. Šia savybe galima pasinaudoti ieškant jų. Suradę n tiesiškai nepriklausomų vektorių ir jų atitinkančių tikrinių reikšmių, įskaitant kartotinumus, turime visą informaciją. Pavyzdys. Pilnajame grafe priskyrę viršūnėms po 1-etą galime imti λ = n 1. Vadinasi, vektorius X 1 = (1,..., 1) yra tikrinis ir atitinka reikšmę λ = n 1. Tiesiškai nepriklausomi vektoriai X i = (1,..., 0, 1, 0,..., 0) su ( 1) irgi turi skirstytojo savybę" savybę, jei paimtume λ = 1. Iš viso turime n t.n. vektorių, atitinkančių reikšmes n 1 ir 1 su kartotinumu (n 1)-as. Užduotis. Ką tik aptartu būdu raskite žvaigždinio grafo spektrą. Namų darbas. Raskite ciklinio grafo C n spektrą. 8 teorema. Jei G = (V, E) yra d reguliarus grafas ir poromis ortogonalūs vektoriai X 1 = (1,..., 1), X 2,... X n yra jo tikrinių vektorių, atitinkančių reikšmes λ 1 = d, λ 2,..., λ n šeima, tada papildinio G tikriniai vektoriai yra tie patys, bet atitinka reikšmes (n 1 d), 1 λ 2,..., 1 λ n
5 Įrodymas. Pasinaudosime lygybe Vadinasi, A G = J I A G. A G X = JX IX A G X. Jei X = X i, 2 i n, yra tikrinis matricos A vektorius, tai A G X i = JX i X i λ i X i = (1 + λ i )X i, nes JX i, sudarytas iš stulpeliu surašytų skaliarinių sandaugų < X 1, X i >= 0. Pastaroji lygybė yra teisinga dėl vektorių ortogonalumo. Dėl X 1 = (1,..., 1) lygybė A G X 1 = (n 1 d)x 1 yra akivaizdi, nes G yra (n 1 d) reguliarus. Įrodyta. Įdomūs spektro ir grafo skersmens sąryšiai. Pagal apibrėžimą, jeigu d(u, v) yra atstumas tarp viršūnių u ir v (minimalus briaunų skaičius (u v) take), tai grafo skersmuo yra Jungiame grafe diam(g) <. diam(g) = max{d(u, v) : u, v V }. 9 teorema. Jei G = (V, E) yra jungus grafas, o jo spektras turi k skirtingų tikrinių reikšmių, tai diam(g) < k. Įrodymas. Žiupsnis algebros faktų, pritaikytų gretimumo matricai A: (Keilio-Hamiltono t.) matrica A yra savo charakteristinio polinomo šaknis, t.y., p G (A) = 0 - nulinė matrica. jei λ 1 < λ 2 < < λ k yra visos skirtingos spektro reikšmės, tai matrica A yra polinomo k g(λ) := (λ λ j ) j=1 šaknis, t.y., g(a) = 0; be to, tai mažiausio laipsnio polinomas, kurio šaknimi yra A. Polinomas g(λ) vadinamas minimaliuoju matricai A. Grįžtame prie grafo. Jei matricos (1.1) I = A 0, A, A 2,..., A r tiesiškai priklausomos virš R, tai A yra r-ojo laipsnio polinomo šaknis ir atvirkščiai.
6 Vadinasi, kai r < k, išvardinti matricos laipsniai (1.1) yra tiesiškai nepriklausomi. Teoremos teiginys išplauks iš fakto, kad su r = diam(g) sistema (1.1) yra tiesiškai nepriklausoma. Sudarykime tiesinę kombinaciją ir prilyginkime ją nulinei matricai (1.2) c 0 A 0 + c 1 A 1 + + c r A r = 0 Įsitikiname, kad c 0 = c 1 = = c r = 0. Nenulinę pagrindinę įstrižainę turi tik I, todėl c 0 = 0. Tegul u = u i, u j V, i j, realizuojančios d(u i, u j ) = diam(g) = r. Matricos A r elementas, esantis (i, j) pozicijoje, lygus kelių (u i u j ) skaičiui, todėl nelygus nuliui. Bet toje pačioje pozicijoje esantys matricų A 0, A, A 2,..., A r 1 elementai lygūs nuliui, nes nėra trumpesnio (u i u j ) kelio nei iš r briaunų. Vadinasi, iš (1.2) išplaukia c r = 0. Toliau taikome matematinę indukciją. Tegul gavome, kad c r = c r 1 = c l+1 = 0 ir (1.2) virto Nagrinėjame sluoksnį c 1 A + + c l A l = O. V l := {v V : d(u, v) = l}. Jis netuščias, nes grafe buvo net r ilgio takai iš u. Jei v = u j V l, tai dabar matricos A l elementas pozicijoje (i, j) yra nenulinis, o žemesnio laipsnio matricose A i jis nulinis. Todėl ir c l = 0. Pagal indukcijos principą, visi c l = 0. Teorema įrodyta. Teorema bendru atveju nepagerinama: Pilnojo grafo diam(k n ) = 1 ir jis turi 2 skirtingas tikrines reikšmes. Dvidaliam grafui diam(k r,s ) = 2 ir jo spektras turi 3 skirtingas reikšmes: 0, ± rs. Raskite dar bent vieną klasę grafų G, turinčių 1 + diam(g) skirtingų tikrinių reikšmių. Užduotis. Tegul t 3 yra trikampių skaičius grafe G(V, E), V = n ir E = m. Įrodyti, kad Atlikite savarankiškai. tr(a 2 ) = 2m, tr(a 3 ) = 6t 3.
7 2. Kitos spektro savybės Neneigiamų elementų simetrinės nenulinės matricos maksimali tikrinė reikšmė yra teigiama, visos jos realios, tad galime išrikiuoti λ 1 λ 2 λ n. Dar žinoma: λ 1 yra paprastoji tikrinė reikšmė ir vienintelė turinti neneigiamų koordinačių tikrinį vektorių; Jei µ 1 µ 2 µ k, 1 k < n, yra pagrindinės dalinės matricos M, gautos iš A parinkus {1 i 1 < < i k n stulpelius ir eilutes, tai (2.1) λ n k+j µ j λ j, 1 j k. Jei k = n 1, tai λ n µ n 1 µ 2 λ 2 µ 1 λ 1. Simetrinei neneigiamai matricai A turime n n (2.2) min a ij λ 1 max a ij. i i Be to, j=1 (2.3) λ n Xt AX X t X λ 1. Nelygybes galima naudoti tik su vienetinio ilgio vektoriais X R n. Išvada. Indukuotojo grafo G pografio H, kurio eilė yra k tikrinės reikšmės µ j turi persipynimo savybę (2.1). 1 užduotis. Įrodyti, kad grafo maksimali tikrinė reikšmė λ 1 (G). Sprendimas. Tegul u yra ta viršūnė su δ(u) = (G) = k. Imkime žvaigždę, sudarytą iš jos ir gretimųjų viršūnių v i, 1 i k, bei briaunų. Tai indukuotasis pografis. Žvaigždė yra pilnasis dvidalis grafas K 1,k, todėl jos spektras 1 k, 0,..., 0, k. Vadinasi, 1 k λ 1. 2 užduotis. Įrodyti, kad lygybė λ 1 = 0 yra teisinga tada ir tik tada, jei G = K 1. Įrodymas. Netriviali tik viena dalis. Jei grafe G būtų briauna, tai ji sudarytų indukuotąjį pografį K 2, kurio spektras {1, 0}. Vadinasi, tokiu atveju λ 1 1. j=1
8 3 užduotis. Įrodyti nelygybes δ(g) = min u Įrodymas. Pritaikyti (2.2). δ(u) λ 1 (G) = max δ(u). u Kaip jau matėme, kairįjį įvertį galima pakeisti 4 užduotis. Įrodyti nelygybę 1 n δ(u) λ 1. u V Įrodymas. Pritaikyti (2.3) su X = (1,..., 1). (G), bet ir patisklinti. Pritaikykime tas žinias vertindami kitus grafo parammetrus. Primename, kad grafo nepriklausomumo skaičius α(g) yra maksimalus negretimų viršūnių kiekis. Tegul n+, n 0, ir n yra teigiamų, nulinių ir neigiamų tikrinių reikšmių skaičiai. 1 teorema. α(g) min{n n, n n + }. Įrodymas. Nepriklausomos viršūnės sudaro indukuotąjį tuščiąjį pografį iš k := α(g) viršūnių. Pastarojo matrica yra matmenų k k nulinė matrica su nulinėmis tikrinėmis reikšmėmis. Jos atskiria G tikrines reikšmes: λ n k+j µ j = 0 λ j, 1 j k. Taigi λ n λ n k+1 0 ir šių reikšmių yra n (n k + 1) = k. Vadinasi, n n + k. Panašiai, λ 1 λ k 0 ir šių reikšmių yra k. Vadinasi, n n k. Įrodyta. Teorema nepagerinama, nes dėl K n, n = n 1, o α(k n ) = 1. Vertinant grafo chromatųjį skaičių χ(g), pasinaudosime Lema. Jei p := max { δ(h) : H yra indukuotas pografis }, tai χ(g) 1 + p. Įrodymas. Lemos sąlyga leidžia sunumeruoti grafo viršūnes taip, kad taikant godųjį" algoritmą, pakanka 1 + p spalvų. Algoritmas spalvina viršūnes iš eilės pagal numeraciją, kai nebeturi galimybės panaudoti anksčiau naudotą spalvą ima naują iš spalvų sąrašo. Imkime seką H k, 1 k n, indukuotųjų pografių pradėdami nuo didžiausiojo H n = G. Egzistuoja viršūnė x n, kurios laipsnis δ(x n ) p. Apibrėžkime H n 1 ir raskime x n 1 su δ(x n 1 ) p.
Tęsdami pagal indukciją sudarėme seką H n H n 1 H 1 = {x 1 }. Naudodami godųjį" algoritmą spalviname iš eilės x 1, x 2,..., x n. Visada kaimyninių viršūnių bus ne daugiau kaip p, atsiras atliekama spalva ir jai taisyklingai nuspalvinti. Vadinasi, χ(g) 1 + p. Įrodyta 2 teorema. Teisinga nelygybė χ(g) 1 + λ 1. Įrodymas. Visų indukuotųjų pografių H, minimų lemoje, maksimalios tikrinės reikšmės λ 1 (H) λ 1 = λ 1 (G). Teiginys išplaukia iš lemos. 9 3. Tiesinis grafas Apibrėžimas. Grafo G = (V, E) tiesiniu grafu vadinsime grafą L(G) = (E, Ẽ), jei ẽ = e ie j Ẽ tada ir tik tada, kad briaunos e i ir e j yra neprilausomos grafe G. Pavyzdžiai.:... Grafų G ir L(G) spektrai susiję. Lema. Tegul P ir Q yra matricos matmenų n m ir m n atitinkamai ir m n, tai det(xi n P Q) = x n m det(xi m QP ). Čia I m vienetinė m-os eilės matrica. Be įrodymo. Išvada. Jei {λ 1,..., λ n } yra matricos P Q spektras, tai {λ 1,..., λ n, 0,..., 0} yra QP spektras su m n nulių. Teorema. Tegul G = (V, E) yra d reguliarus grafas, m n ir G := L(G) jo tiesinis grafas, tai pastarojo tikrinės reikšmės yra 2 kartotinumo m n ir d 2 + λ kiekvienai λ iš G spektro su tuo pačiu kartotinumu. Įrodymas. Žinoma, kad d reguliaraus grafo G gretimumo matrica A ir incidentumo matrica B susijusios lygybe A = BB t di n, Ar tiesinio grafo L(G) = G matrica à = ((ã ij)) turi panašią išraišką? Pagal apibrėžimą ã ij = 1, kai e i ir e j yra grafo G priklausomos briaunos, ir lygus nuliui priešingu atveju. Skaičiuojame B t B = ((c kl )), 1 k, l m.
10 Turime n c kl = b rk b rl. r=1 Jei k = l, matricos B k-ajame stulpelyje yra lygiai du 1-ai, pažymintys briaunos e k E galus, todėl c kk = 2. Jei k l, iš visų sumos c kl dėmėnų tik vienas yra nenulinis, o pastarasis lygus 1-am. Tai nurodo situaciją, kai e k ir e l turi bendrą galą - k-ąją viršūnę. Reziumuodami matome, kad à = ((ã ij )) = B t B 2I m. Dabar skaičiuodami tikrines reikšmes, galime pritaikyti lemą. Gauname pã(λ) = det ( λi m Ã) = det ( λi m B t B + 2I m ) = det ( (λ + 2)I m B t B ) = (λ + 2) m n det ( (λ + 2)I n BB t) = (λ + 2) m n det ( (λ + 2 d)i n A ) = (λ + 2) m n p A (λ + 2 d). Iš čia išplaukia teoremos teiginys. Nepamirškime, kad viena d reguliaraus grafo tikrinė reikšmė yra d, ji atitinka vienetinių koordinačių vektorių. Užduotis. Rasti Peterseno grafo spektrą. Sprendimas. Žinome grafo K 5 spektrą: {4, 1, 1, 1, 1}. Vadinasi, L(K 5 ) spektras yra { 4 2 + 4 = 6, 4 2 1 = 1, 1, 1, 1, 2, 2, 2, 2, 2 }. Pateikta aritmetika nurodo atitinkamas tikrinių reikšmių skaičiavimo taisykles. Didžiausia reikšmė 6 yra L(K 5 ) reguliarumo eilė. Jo papildinio L(K 5 ) spektrą irgi jau mokame skaičiuoti. Gauname { 10 1 6 = 3, 1 1 = 2, 2, 2, 2, 1 ( 2) = 1, 1, 1, 1, 1 }. O dabar atradimas: L(K 5 ) yra Peterseno grafas! Įsitikinkite nubrėždami visus čia nagrinėtus grafus. NAUDOTA LITERATŪRA 1. S.M. Cioabă, M.R. Murty, A First Course in Graph Theory and Combinatorics, Hindustan Book Agency, 2009.